@intlayer/docs 7.5.10 → 7.5.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/intlayer_with_i18next.md +0 -2
- package/blog/ar/intlayer_with_next-i18next.md +0 -2
- package/blog/ar/intlayer_with_react-i18next.md +0 -2
- package/blog/de/intlayer_with_i18next.md +0 -45
- package/blog/de/intlayer_with_next-i18next.md +0 -46
- package/blog/de/intlayer_with_react-i18next.md +0 -2
- package/blog/en/intlayer_with_i18next.md +0 -46
- package/blog/en/intlayer_with_next-i18next.md +0 -48
- package/blog/en/intlayer_with_next-intl.md +0 -44
- package/blog/en/intlayer_with_react-i18next.md +0 -44
- package/blog/en/intlayer_with_react-intl.md +0 -42
- package/blog/en/intlayer_with_vue-i18n.md +0 -44
- package/blog/en-GB/intlayer_with_i18next.md +0 -45
- package/blog/en-GB/intlayer_with_next-i18next.md +0 -47
- package/blog/en-GB/intlayer_with_next-intl.md +0 -42
- package/blog/en-GB/intlayer_with_react-i18next.md +0 -43
- package/blog/en-GB/intlayer_with_react-intl.md +0 -42
- package/blog/en-GB/intlayer_with_vue-i18n.md +0 -46
- package/blog/es/intlayer_with_i18next.md +0 -45
- package/blog/es/intlayer_with_next-i18next.md +0 -47
- package/blog/es/intlayer_with_next-intl.md +0 -42
- package/blog/es/intlayer_with_react-i18next.md +0 -43
- package/blog/es/intlayer_with_react-intl.md +0 -42
- package/blog/es/intlayer_with_vue-i18n.md +0 -46
- package/blog/fr/intlayer_with_i18next.md +0 -45
- package/blog/fr/intlayer_with_next-i18next.md +0 -47
- package/blog/fr/intlayer_with_next-intl.md +0 -42
- package/blog/fr/intlayer_with_react-i18next.md +0 -43
- package/blog/fr/intlayer_with_react-intl.md +0 -42
- package/blog/fr/intlayer_with_vue-i18n.md +0 -46
- package/blog/hi/intlayer_with_i18next.md +0 -2
- package/blog/hi/intlayer_with_next-i18next.md +0 -2
- package/blog/hi/intlayer_with_react-i18next.md +0 -2
- package/blog/id/intlayer_with_i18next.md +0 -2
- package/blog/id/intlayer_with_next-i18next.md +0 -2
- package/blog/id/intlayer_with_react-i18next.md +0 -2
- package/blog/it/intlayer_with_i18next.md +0 -2
- package/blog/it/intlayer_with_next-i18next.md +0 -2
- package/blog/it/intlayer_with_react-i18next.md +0 -2
- package/blog/ja/intlayer_with_i18next.md +0 -45
- package/blog/ja/intlayer_with_next-i18next.md +0 -46
- package/blog/ja/intlayer_with_next-intl.md +0 -42
- package/blog/ja/intlayer_with_react-i18next.md +0 -42
- package/blog/ja/intlayer_with_react-intl.md +0 -42
- package/blog/ja/intlayer_with_vue-i18n.md +0 -46
- package/blog/ko/intlayer_with_i18next.md +0 -2
- package/blog/ko/intlayer_with_next-i18next.md +0 -2
- package/blog/ko/intlayer_with_react-i18next.md +0 -1
- package/blog/pl/intlayer_with_i18next.md +0 -45
- package/blog/pl/intlayer_with_next-i18next.md +0 -46
- package/blog/pl/intlayer_with_next-intl.md +0 -42
- package/blog/pl/intlayer_with_react-i18next.md +0 -43
- package/blog/pl/intlayer_with_react-intl.md +0 -42
- package/blog/pl/intlayer_with_vue-i18n.md +0 -46
- package/blog/pt/intlayer_with_i18next.md +0 -2
- package/blog/pt/intlayer_with_next-i18next.md +0 -2
- package/blog/pt/intlayer_with_react-i18next.md +0 -2
- package/blog/ru/intlayer_with_i18next.md +0 -45
- package/blog/ru/intlayer_with_next-i18next.md +0 -47
- package/blog/ru/intlayer_with_next-intl.md +0 -42
- package/blog/ru/intlayer_with_react-i18next.md +0 -43
- package/blog/ru/intlayer_with_react-intl.md +0 -42
- package/blog/ru/intlayer_with_vue-i18n.md +0 -46
- package/blog/tr/intlayer_with_i18next.md +0 -2
- package/blog/tr/intlayer_with_next-i18next.md +0 -1
- package/blog/tr/intlayer_with_react-i18next.md +0 -2
- package/blog/vi/intlayer_with_i18next.md +0 -2
- package/blog/vi/intlayer_with_next-i18next.md +0 -2
- package/blog/vi/intlayer_with_react-i18next.md +0 -2
- package/blog/zh/intlayer_with_i18next.md +0 -2
- package/blog/zh/intlayer_with_next-i18next.md +0 -2
- package/blog/zh/intlayer_with_react-i18next.md +0 -2
- package/blog/zh/intlayer_with_vue-i18n.md +0 -46
- package/dist/cjs/generated/blog.entry.cjs +58 -29
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +254 -97
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +30 -15
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +4 -2
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +58 -29
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +254 -97
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +30 -15
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +4 -2
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +3 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/cli/ci.md +137 -0
- package/docs/ar/cli/index.md +7 -1
- package/docs/ar/cli/list.md +39 -2
- package/docs/ar/cli/list_projects.md +131 -0
- package/docs/ar/intlayer_CMS.md +20 -0
- package/docs/ar/intlayer_with_next-i18next.md +0 -1
- package/docs/ar/intlayer_with_nextjs_14.md +28 -0
- package/docs/ar/intlayer_with_nextjs_15.md +28 -0
- package/docs/ar/intlayer_with_nextjs_16.md +28 -0
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1159 -0
- package/docs/ar/plugins/sync-json.md +6 -2
- package/docs/de/cli/ci.md +137 -0
- package/docs/de/cli/index.md +7 -1
- package/docs/de/cli/list.md +39 -2
- package/docs/de/cli/list_projects.md +130 -0
- package/docs/de/intlayer_CMS.md +20 -0
- package/docs/de/intlayer_with_next-i18next.md +0 -1
- package/docs/de/intlayer_with_nextjs_14.md +28 -0
- package/docs/de/intlayer_with_nextjs_15.md +28 -0
- package/docs/de/intlayer_with_nextjs_16.md +28 -0
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +1152 -0
- package/docs/de/plugins/sync-json.md +6 -2
- package/docs/en/cli/ci.md +137 -0
- package/docs/en/cli/index.md +14 -1
- package/docs/en/cli/list.md +39 -2
- package/docs/en/cli/list_projects.md +128 -0
- package/docs/en/interest_of_intlayer.md +1 -1
- package/docs/en/intlayer_CMS.md +20 -0
- package/docs/en/intlayer_with_next-i18next.md +0 -1
- package/docs/en/intlayer_with_nextjs_14.md +28 -0
- package/docs/en/intlayer_with_nextjs_15.md +28 -0
- package/docs/en/intlayer_with_nextjs_16.md +31 -1
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +1132 -0
- package/docs/en/plugins/sync-json.md +6 -2
- package/docs/en-GB/cli/ci.md +137 -0
- package/docs/en-GB/cli/index.md +7 -1
- package/docs/en-GB/cli/list.md +39 -2
- package/docs/en-GB/cli/list_projects.md +130 -0
- package/docs/en-GB/intlayer_CMS.md +20 -0
- package/docs/en-GB/intlayer_with_next-i18next.md +0 -1
- package/docs/en-GB/intlayer_with_nextjs_14.md +28 -0
- package/docs/en-GB/intlayer_with_nextjs_15.md +28 -0
- package/docs/en-GB/intlayer_with_nextjs_16.md +28 -0
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1154 -0
- package/docs/en-GB/plugins/sync-json.md +6 -2
- package/docs/es/cli/ci.md +137 -0
- package/docs/es/cli/index.md +7 -1
- package/docs/es/cli/list.md +39 -2
- package/docs/es/cli/list_projects.md +130 -0
- package/docs/es/intlayer_CMS.md +20 -0
- package/docs/es/intlayer_with_next-i18next.md +0 -1
- package/docs/es/intlayer_with_nextjs_14.md +28 -0
- package/docs/es/intlayer_with_nextjs_15.md +28 -0
- package/docs/es/intlayer_with_nextjs_16.md +28 -0
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +1143 -0
- package/docs/es/plugins/sync-json.md +6 -2
- package/docs/fr/cli/ci.md +137 -0
- package/docs/fr/cli/index.md +7 -1
- package/docs/fr/cli/list.md +39 -2
- package/docs/fr/cli/list_projects.md +131 -0
- package/docs/fr/intlayer_CMS.md +20 -0
- package/docs/fr/intlayer_with_next-i18next.md +0 -1
- package/docs/fr/intlayer_with_nextjs_14.md +28 -0
- package/docs/fr/intlayer_with_nextjs_15.md +28 -0
- package/docs/fr/intlayer_with_nextjs_16.md +28 -0
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1174 -0
- package/docs/fr/plugins/sync-json.md +9 -5
- package/docs/hi/cli/ci.md +137 -0
- package/docs/hi/cli/index.md +7 -1
- package/docs/hi/cli/list.md +38 -1
- package/docs/hi/cli/list_projects.md +130 -0
- package/docs/hi/intlayer_CMS.md +20 -0
- package/docs/hi/intlayer_with_next-i18next.md +0 -1
- package/docs/hi/intlayer_with_nextjs_14.md +28 -0
- package/docs/hi/intlayer_with_nextjs_15.md +28 -0
- package/docs/hi/intlayer_with_nextjs_16.md +28 -0
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1151 -0
- package/docs/hi/plugins/sync-json.md +6 -2
- package/docs/id/cli/ci.md +137 -0
- package/docs/id/cli/index.md +7 -1
- package/docs/id/cli/list.md +38 -1
- package/docs/id/cli/list_projects.md +128 -0
- package/docs/id/intlayer_CMS.md +20 -0
- package/docs/id/intlayer_with_next-i18next.md +0 -1
- package/docs/id/intlayer_with_nextjs_14.md +28 -0
- package/docs/id/intlayer_with_nextjs_15.md +28 -0
- package/docs/id/intlayer_with_nextjs_16.md +28 -0
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +1154 -0
- package/docs/id/plugins/sync-json.md +6 -2
- package/docs/it/cli/ci.md +137 -0
- package/docs/it/cli/index.md +7 -1
- package/docs/it/cli/list.md +39 -2
- package/docs/it/cli/list_projects.md +130 -0
- package/docs/it/intlayer_CMS.md +20 -0
- package/docs/it/intlayer_with_next-i18next.md +0 -1
- package/docs/it/intlayer_with_nextjs_14.md +28 -0
- package/docs/it/intlayer_with_nextjs_15.md +28 -0
- package/docs/it/intlayer_with_nextjs_16.md +28 -0
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +1148 -0
- package/docs/it/plugins/sync-json.md +6 -2
- package/docs/ja/cli/ci.md +137 -0
- package/docs/ja/cli/index.md +7 -1
- package/docs/ja/cli/list.md +38 -1
- package/docs/ja/cli/list_projects.md +136 -0
- package/docs/ja/intlayer_CMS.md +20 -0
- package/docs/ja/intlayer_with_next-i18next.md +0 -1
- package/docs/ja/intlayer_with_nextjs_14.md +28 -0
- package/docs/ja/intlayer_with_nextjs_15.md +28 -0
- package/docs/ja/intlayer_with_nextjs_16.md +28 -0
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1222 -0
- package/docs/ja/plugins/sync-json.md +6 -2
- package/docs/ko/cli/ci.md +137 -0
- package/docs/ko/cli/index.md +7 -1
- package/docs/ko/cli/list.md +38 -1
- package/docs/ko/cli/list_projects.md +128 -0
- package/docs/ko/intlayer_CMS.md +20 -0
- package/docs/ko/intlayer_with_next-i18next.md +0 -1
- package/docs/ko/intlayer_with_nextjs_14.md +28 -0
- package/docs/ko/intlayer_with_nextjs_15.md +28 -0
- package/docs/ko/intlayer_with_nextjs_16.md +28 -0
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1205 -0
- package/docs/ko/plugins/sync-json.md +6 -2
- package/docs/pl/cli/ci.md +137 -0
- package/docs/pl/cli/index.md +7 -1
- package/docs/pl/cli/list.md +39 -2
- package/docs/pl/cli/list_projects.md +130 -0
- package/docs/pl/intlayer_CMS.md +20 -0
- package/docs/pl/intlayer_with_next-i18next.md +0 -1
- package/docs/pl/intlayer_with_nextjs_14.md +28 -0
- package/docs/pl/intlayer_with_nextjs_15.md +28 -0
- package/docs/pl/intlayer_with_nextjs_16.md +28 -0
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1149 -0
- package/docs/pl/plugins/sync-json.md +6 -2
- package/docs/pt/cli/ci.md +137 -0
- package/docs/pt/cli/index.md +7 -1
- package/docs/pt/cli/list.md +39 -2
- package/docs/pt/cli/list_projects.md +134 -0
- package/docs/pt/intlayer_CMS.md +20 -0
- package/docs/pt/intlayer_with_next-i18next.md +0 -1
- package/docs/pt/intlayer_with_nextjs_14.md +28 -0
- package/docs/pt/intlayer_with_nextjs_15.md +28 -0
- package/docs/pt/intlayer_with_nextjs_16.md +28 -0
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1152 -0
- package/docs/pt/plugins/sync-json.md +6 -2
- package/docs/ru/cli/ci.md +137 -0
- package/docs/ru/cli/index.md +7 -1
- package/docs/ru/cli/list.md +39 -2
- package/docs/ru/cli/list_projects.md +130 -0
- package/docs/ru/intlayer_CMS.md +20 -0
- package/docs/ru/intlayer_with_next-i18next.md +0 -1
- package/docs/ru/intlayer_with_nextjs_14.md +28 -0
- package/docs/ru/intlayer_with_nextjs_15.md +28 -0
- package/docs/ru/intlayer_with_nextjs_16.md +28 -0
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1204 -0
- package/docs/ru/plugins/sync-json.md +6 -2
- package/docs/tr/cli/ci.md +137 -0
- package/docs/tr/cli/index.md +7 -1
- package/docs/tr/cli/list.md +39 -2
- package/docs/tr/cli/list_projects.md +134 -0
- package/docs/tr/intlayer_CMS.md +20 -0
- package/docs/tr/intlayer_with_next-i18next.md +0 -1
- package/docs/tr/intlayer_with_nextjs_14.md +28 -0
- package/docs/tr/intlayer_with_nextjs_15.md +28 -0
- package/docs/tr/intlayer_with_nextjs_16.md +28 -0
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1159 -0
- package/docs/tr/plugins/sync-json.md +6 -2
- package/docs/uk/compiler.md +133 -0
- package/docs/uk/component_i18n.md +194 -0
- package/docs/uk/intlayer_with_nextjs_14.md +1646 -0
- package/docs/uk/intlayer_with_nextjs_15.md +1910 -0
- package/docs/uk/intlayer_with_nextjs_16.md +1763 -0
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1159 -0
- package/docs/uk/intlayer_with_react_native+expo.md +715 -0
- package/docs/uk/packages/intlayer/getConfiguration.md +145 -0
- package/docs/uk/vs_code_extension.md +133 -0
- package/docs/vi/cli/ci.md +137 -0
- package/docs/vi/cli/index.md +7 -1
- package/docs/vi/cli/list.md +38 -1
- package/docs/vi/cli/list_projects.md +130 -0
- package/docs/vi/intlayer_CMS.md +20 -0
- package/docs/vi/intlayer_with_next-i18next.md +0 -1
- package/docs/vi/intlayer_with_nextjs_14.md +28 -0
- package/docs/vi/intlayer_with_nextjs_15.md +28 -0
- package/docs/vi/intlayer_with_nextjs_16.md +28 -0
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1151 -0
- package/docs/vi/plugins/sync-json.md +6 -2
- package/docs/zh/cli/ci.md +137 -0
- package/docs/zh/cli/index.md +7 -1
- package/docs/zh/cli/list.md +38 -1
- package/docs/zh/cli/list_projects.md +130 -0
- package/docs/zh/intlayer_CMS.md +20 -0
- package/docs/zh/intlayer_with_next-i18next.md +0 -1
- package/docs/zh/intlayer_with_nextjs_14.md +28 -0
- package/docs/zh/intlayer_with_nextjs_15.md +28 -0
- package/docs/zh/intlayer_with_nextjs_16.md +28 -0
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1206 -0
- package/docs/zh/plugins/sync-json.md +9 -5
- package/frequent_questions/ar/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/de/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/en/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/en-GB/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/es/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/fr/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/hi/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/id/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/it/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/ja/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/ko/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/pl/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/pt/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/ru/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/tr/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/vi/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/zh/SSR_Next_no_[locale].md +1 -1
- package/package.json +6 -6
- package/src/generated/blog.entry.ts +29 -0
- package/src/generated/docs.entry.ts +157 -0
- package/src/generated/frequentQuestions.entry.ts +15 -0
- package/src/generated/legal.entry.ts +2 -0
|
@@ -108,18 +108,22 @@ syncJSON({
|
|
|
108
108
|
source: ({ key, locale }) => string, // wajib
|
|
109
109
|
location?: string, // label opsional, default: "plugin"
|
|
110
110
|
priority?: number, // prioritas opsional untuk resolusi konflik, default: 0
|
|
111
|
-
format?: 'intlayer' | 'icu' | 'i18next', // formatter opsional,
|
|
111
|
+
format?: 'intlayer' | 'icu' | 'i18next', // formatter opsional, digunakan untuk kompatibilitas runtime Intlayer
|
|
112
112
|
});
|
|
113
113
|
```
|
|
114
114
|
|
|
115
115
|
#### `format` ('intlayer' | 'icu' | 'i18next')
|
|
116
116
|
|
|
117
|
-
Menentukan formatter yang akan digunakan untuk konten kamus saat menyinkronkan file JSON. Ini memungkinkan penggunaan berbagai sintaks pemformatan pesan yang kompatibel dengan
|
|
117
|
+
Menentukan formatter yang akan digunakan untuk konten kamus saat menyinkronkan file JSON. Ini memungkinkan penggunaan berbagai sintaks pemformatan pesan yang kompatibel dengan runtime Intlayer.
|
|
118
118
|
|
|
119
|
+
- `undefined`: Tidak ada formatter yang akan digunakan, konten JSON akan digunakan apa adanya.
|
|
119
120
|
- `'intlayer'`: Formatter Intlayer default (default).
|
|
120
121
|
- `'icu'`: Menggunakan pemformatan pesan ICU (kompatibel dengan pustaka seperti react-intl, vue-i18n).
|
|
121
122
|
- `'i18next'`: Menggunakan pemformatan pesan i18next (kompatibel dengan i18next, next-i18next, Solid-i18next).
|
|
122
123
|
|
|
124
|
+
> Perhatikan bahwa menggunakan formatter akan mengubah konten JSON Anda pada input dan output. Untuk aturan JSON yang kompleks seperti pluralisasi ICU, parsing mungkin tidak menjamin pemetaan 1 ke 1 antara input dan output.
|
|
125
|
+
> Jika Anda tidak menggunakan runtime Intlayer, Anda mungkin lebih memilih untuk tidak mengatur formatter.
|
|
126
|
+
|
|
123
127
|
**Contoh:**
|
|
124
128
|
|
|
125
129
|
```ts
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-01-06
|
|
3
|
+
updatedAt: 2026-01-06
|
|
4
|
+
title: Comando CI
|
|
5
|
+
description: Impara come usare il comando Intlayer CI per eseguire comandi Intlayer con credenziali auto-iniettate nelle pipeline CI/CD e nei monorepo.
|
|
6
|
+
keywords:
|
|
7
|
+
- CI
|
|
8
|
+
- CI/CD
|
|
9
|
+
- Automatizzazione
|
|
10
|
+
- Monorepo
|
|
11
|
+
- Credenziali
|
|
12
|
+
- CLI
|
|
13
|
+
- Intlayer
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- concept
|
|
17
|
+
- cli
|
|
18
|
+
- ci
|
|
19
|
+
history:
|
|
20
|
+
- version: 7.5.11
|
|
21
|
+
date: 2026-01-06
|
|
22
|
+
changes: Aggiungere comando CI
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# Comando CI
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npx intlayer ci <command...>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Il comando CI è progettato per l'automazione e le pipeline CI/CD. Inietta automaticamente le credenziali dalla variabile d'ambiente `INTLAYER_PROJECT_CREDENTIALS` e può eseguire comandi Intlayer su più progetti in un monorepo.
|
|
32
|
+
|
|
33
|
+
## Come funziona
|
|
34
|
+
|
|
35
|
+
Il comando CI opera in due modalità:
|
|
36
|
+
|
|
37
|
+
1. **Modalità progetto singolo**: Se la directory di lavoro corrente corrisponde a uno dei percorsi del progetto in `INTLAYER_PROJECT_CREDENTIALS`, esegue il comando solo per quel progetto specifico.
|
|
38
|
+
|
|
39
|
+
2. **Modalità iterazione**: Se non viene rilevato un contesto di progetto specifico, itera su tutti i progetti configurati ed esegue il comando per ciascuno.
|
|
40
|
+
|
|
41
|
+
## Variabile d'ambiente
|
|
42
|
+
|
|
43
|
+
Il comando richiede che la variabile d'ambiente `INTLAYER_PROJECT_CREDENTIALS` sia impostata. Questa variabile deve contenere un oggetto JSON che mappa i percorsi del progetto alle loro credenziali:
|
|
44
|
+
|
|
45
|
+
```json
|
|
46
|
+
{
|
|
47
|
+
"packages/app": {
|
|
48
|
+
"clientId": "your-client-id-1",
|
|
49
|
+
"clientSecret": "your-client-secret-1"
|
|
50
|
+
},
|
|
51
|
+
"packages/admin": {
|
|
52
|
+
"clientId": "your-client-id-2",
|
|
53
|
+
"clientSecret": "your-client-secret-2"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Rilevamento del gestore di pacchetti
|
|
59
|
+
|
|
60
|
+
Il comando CI rileva automaticamente quale gestore di pacchetti viene utilizzato (npm, yarn, pnpm o bun) in base alla variabile d'ambiente `npm_config_user_agent` e utilizza il comando appropriato per eseguire Intlayer.
|
|
61
|
+
|
|
62
|
+
## Argomenti
|
|
63
|
+
|
|
64
|
+
- **`<command...>`**: Il comando Intlayer da eseguire (ad esempio, `fill`, `push`, `build`). Puoi passare qualsiasi comando Intlayer e i suoi argomenti.
|
|
65
|
+
|
|
66
|
+
> Esempio: `npx intlayer ci fill --verbose`
|
|
67
|
+
>
|
|
68
|
+
> Esempio: `npx intlayer ci push`
|
|
69
|
+
>
|
|
70
|
+
> Esempio: `npx intlayer ci build`
|
|
71
|
+
|
|
72
|
+
## Esempi
|
|
73
|
+
|
|
74
|
+
### Eseguire un comando in modalità progetto singolo
|
|
75
|
+
|
|
76
|
+
Se ti trovi in una directory di progetto che corrisponde a uno dei percorsi in `INTLAYER_PROJECT_CREDENTIALS`:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
cd packages/app
|
|
80
|
+
npx intlayer ci fill
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Questo eseguirà il comando `fill` con le credenziali iniettate automaticamente per il progetto `packages/app`.
|
|
84
|
+
|
|
85
|
+
### Eseguire un comando su tutti i progetti
|
|
86
|
+
|
|
87
|
+
Se ti trovi in una directory che non corrisponde a nessun percorso di progetto, il comando itererà su tutti i progetti configurati:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
cd /path/to/monorepo
|
|
91
|
+
npx intlayer ci push
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Questo eseguirà il comando `push` per ogni progetto configurato in `INTLAYER_PROJECT_CREDENTIALS`.
|
|
95
|
+
|
|
96
|
+
### Passare flag aggiuntivi
|
|
97
|
+
|
|
98
|
+
Puoi passare qualsiasi flag al comando Intlayer sottostante:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
npx intlayer ci fill --verbose --mode complete
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Utilizzare nelle pipeline CI/CD
|
|
105
|
+
|
|
106
|
+
Nella tua configurazione CI/CD (ad esempio, GitHub Actions, GitLab CI), imposta `INTLAYER_PROJECT_CREDENTIALS` come segreto:
|
|
107
|
+
|
|
108
|
+
```yaml
|
|
109
|
+
# Esempio GitHub Actions
|
|
110
|
+
env:
|
|
111
|
+
INTLAYER_PROJECT_CREDENTIALS: ${{ secrets.INTLAYER_PROJECT_CREDENTIALS }}
|
|
112
|
+
|
|
113
|
+
steps:
|
|
114
|
+
- name: Riempire dizionari
|
|
115
|
+
run: npx intlayer ci fill
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Gestione degli errori
|
|
119
|
+
|
|
120
|
+
- Se `INTLAYER_PROJECT_CREDENTIALS` non è impostata, il comando terminerà con un errore.
|
|
121
|
+
- Se `INTLAYER_PROJECT_CREDENTIALS` non è un JSON valido, il comando terminerà con un errore.
|
|
122
|
+
- Se un percorso di progetto non esiste, verrà saltato con un avviso.
|
|
123
|
+
- Se un progetto fallisce, il comando terminerà con un codice di stato diverso da zero.
|
|
124
|
+
|
|
125
|
+
## Casi d'uso
|
|
126
|
+
|
|
127
|
+
- **Automatizzazione monorepo**: Eseguire comandi Intlayer su più progetti in un monorepo
|
|
128
|
+
- **Pipeline CI/CD**: Automatizzare la gestione dei dizionari nei flussi di lavoro di integrazione continua
|
|
129
|
+
- **Operazioni in batch**: Eseguire la stessa operazione su più progetti Intlayer contemporaneamente
|
|
130
|
+
- **Gestione dei segreti**: Gestire in modo sicuro le credenziali per più progetti utilizzando variabili d'ambiente
|
|
131
|
+
|
|
132
|
+
## Best practice di sicurezza
|
|
133
|
+
|
|
134
|
+
- Archivia `INTLAYER_PROJECT_CREDENTIALS` come segreti crittografati nella tua piattaforma CI/CD
|
|
135
|
+
- Non committare mai le credenziali nel controllo versione
|
|
136
|
+
- Usa credenziali specifiche dell'ambiente per diversi ambienti di distribuzione
|
|
137
|
+
- Ruota le credenziali regolarmente
|
package/docs/it/cli/index.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-11
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-01-06
|
|
4
4
|
title: CLI
|
|
5
5
|
description: Scopri come utilizzare la CLI di Intlayer per gestire il tuo sito web multilingue. Segui i passaggi in questa documentazione online per configurare il tuo progetto in pochi minuti.
|
|
6
6
|
keywords:
|
|
@@ -17,6 +17,9 @@ slugs:
|
|
|
17
17
|
- concept
|
|
18
18
|
- cli
|
|
19
19
|
history:
|
|
20
|
+
- version: 7.5.11
|
|
21
|
+
date: 2026-01-06
|
|
22
|
+
changes: Aggiunto comando projects list
|
|
20
23
|
- version: 7.5.9
|
|
21
24
|
date: 2025-12-30
|
|
22
25
|
changes: Aggiunto comando init
|
|
@@ -119,6 +122,7 @@ Per vedere come configurare le localizzazioni disponibili o altri parametri, con
|
|
|
119
122
|
- **[Build Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/cli/build.md)** - Costruisci i tuoi dizionari dai file di dichiarazione dei contenuti
|
|
120
123
|
- **[Watch Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/cli/watch.md)** - Monitora le modifiche e costruisci automaticamente i dizionari
|
|
121
124
|
- **[Check CLI Version](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/cli/version.md)** - Controlla la versione installata della CLI di Intlayer
|
|
125
|
+
- **[Elenca Progetti](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/cli/list_projects.md)** - Elenca tutti i progetti Intlayer in una directory o repository git
|
|
122
126
|
|
|
123
127
|
### Gestione dei Dizionari
|
|
124
128
|
|
|
@@ -161,6 +165,7 @@ Per vedere come configurare le localizzazioni disponibili o altri parametri, con
|
|
|
161
165
|
"intlayer:list": "npx intlayer content list",
|
|
162
166
|
"intlayer:test": "npx intlayer content test",
|
|
163
167
|
"intlayer:transform": "npx intlayer transform",
|
|
168
|
+
"intlayer:projects": "npx intlayer projects list",
|
|
164
169
|
"intlayer:doc:translate": "npx intlayer doc translate",
|
|
165
170
|
"intlayer:doc:review": "npx intlayer doc review"
|
|
166
171
|
}
|
|
@@ -170,3 +175,4 @@ Per vedere come configurare le localizzazioni disponibili o altri parametri, con
|
|
|
170
175
|
>
|
|
171
176
|
> - `npx intlayer list` invece di `npx intlayer content list`
|
|
172
177
|
> - `npx intlayer test` invece di `npx intlayer content test`
|
|
178
|
+
> - `npx intlayer projects-list` o `npx intlayer pl` invece di `npx intlayer projects list`
|
package/docs/it/cli/list.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-11
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-01-06
|
|
4
4
|
title: Elencare i file di dichiarazione del contenuto
|
|
5
5
|
description: Scopri come elencare tutti i file di dichiarazione del contenuto nel tuo progetto.
|
|
6
6
|
keywords:
|
|
@@ -13,6 +13,13 @@ slugs:
|
|
|
13
13
|
- concept
|
|
14
14
|
- cli
|
|
15
15
|
- list
|
|
16
|
+
history:
|
|
17
|
+
- version: 7.5.12
|
|
18
|
+
date: 2026-01-06
|
|
19
|
+
changes: Aggiunta opzione di output assoluto al comando list
|
|
20
|
+
- version: 7.5.11
|
|
21
|
+
date: 2026-01-06
|
|
22
|
+
changes: Aggiunta opzione di output JSON al comando list
|
|
16
23
|
---
|
|
17
24
|
|
|
18
25
|
# Elencare i file di dichiarazione del contenuto
|
|
@@ -27,14 +34,36 @@ npx intlayer content list
|
|
|
27
34
|
|
|
28
35
|
Questo comando mostra tutti i file di dichiarazione del contenuto nel tuo progetto, visualizzando le loro chiavi nel dizionario e i percorsi dei file. È utile per avere una panoramica di tutti i tuoi file di contenuto e verificare che siano correttamente rilevati da Intlayer.
|
|
29
36
|
|
|
30
|
-
##
|
|
37
|
+
## Argomenti:
|
|
38
|
+
|
|
39
|
+
- **`--json`**: Mostra i risultati come JSON invece di testo formattato. Utile per scripting e accesso programmatico.
|
|
40
|
+
|
|
41
|
+
> Esempio: `npx intlayer content list --json`
|
|
42
|
+
|
|
43
|
+
## Esempi:
|
|
44
|
+
|
|
45
|
+
### Elencare i file di dichiarazione del contenuto:
|
|
31
46
|
|
|
32
47
|
```bash
|
|
33
48
|
npx intlayer content list
|
|
34
49
|
```
|
|
35
50
|
|
|
51
|
+
### Output come JSON:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npx intlayer content list --json
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Output come percorsi assoluti:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
npx intlayer content list --absolute
|
|
61
|
+
```
|
|
62
|
+
|
|
36
63
|
## Output di esempio:
|
|
37
64
|
|
|
65
|
+
### Output formattato:
|
|
66
|
+
|
|
38
67
|
```bash
|
|
39
68
|
npx intlayer content list
|
|
40
69
|
Content declaration files:
|
|
@@ -45,6 +74,14 @@ Content declaration files:
|
|
|
45
74
|
Totale file di dichiarazione del contenuto: 3
|
|
46
75
|
```
|
|
47
76
|
|
|
77
|
+
### Output JSON:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
$ npx intlayer content list --json
|
|
81
|
+
|
|
82
|
+
[{"key":"home-page","path":"src/components/HomePage/homePage.content.ts"},{"key":"server-component","path":"src/components/ServerComponent/serverComponent.content.ts"},{"key":"client-component","path":"src/components/ClientComponent/clientComponent.content.ts"}]
|
|
83
|
+
```
|
|
84
|
+
|
|
48
85
|
Questo comando mostrerà:
|
|
49
86
|
|
|
50
87
|
- Un elenco formattato di tutti i file di dichiarazione del contenuto con le loro chiavi e i percorsi relativi dei file
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2025-12-30
|
|
3
|
+
updatedAt: 2026-01-06
|
|
4
|
+
title: Elencare i progetti Intlayer
|
|
5
|
+
description: Scopri come elencare tutti i progetti Intlayer in una directory o in un repository git.
|
|
6
|
+
keywords:
|
|
7
|
+
- Elenco
|
|
8
|
+
- Progetti
|
|
9
|
+
- CLI
|
|
10
|
+
- Intlayer
|
|
11
|
+
- Git
|
|
12
|
+
slugs:
|
|
13
|
+
- doc
|
|
14
|
+
- concept
|
|
15
|
+
- cli
|
|
16
|
+
- list-projects
|
|
17
|
+
history:
|
|
18
|
+
- version: 7.5.12
|
|
19
|
+
date: 2026-01-06
|
|
20
|
+
changes: Aggiungere opzione di output assoluto al comando list projects
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# Elencare i progetti Intlayer
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npx intlayer projects list
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Questo comando cerca ed elenca tutti i progetti Intlayer trovando le directory che contengono file di configurazione di Intlayer. È utile per scoprire tutti i progetti Intlayer in un monorepo, workspace o repository git.
|
|
30
|
+
|
|
31
|
+
## Alias:
|
|
32
|
+
|
|
33
|
+
- `npx intlayer projects-list`
|
|
34
|
+
- `npx intlayer pl`
|
|
35
|
+
|
|
36
|
+
## Argomenti:
|
|
37
|
+
|
|
38
|
+
- **`--base-dir [path]`**: Specifica la directory base da cui avviare la ricerca. Predefinita è la directory di lavoro corrente.
|
|
39
|
+
|
|
40
|
+
> Esempio: `npx intlayer projects list --base-dir /path/to/workspace`
|
|
41
|
+
|
|
42
|
+
> Esempio: `npx intlayer projects list --base-dir /path/to/workspace`
|
|
43
|
+
|
|
44
|
+
- **`--git-root`**: Effettua la ricerca dalla root del repository git invece che dalla directory base. Questo è utile per trovare tutti i progetti Intlayer in un monorepo o in un repository git.
|
|
45
|
+
|
|
46
|
+
> Esempio: `npx intlayer projects list --git-root`
|
|
47
|
+
|
|
48
|
+
- **`--json`**: Mostra i risultati come JSON invece di testo formattato. Utile per scripting e accesso programmatico.
|
|
49
|
+
|
|
50
|
+
> Esempio: `npx intlayer projects list --json`
|
|
51
|
+
|
|
52
|
+
- **`--absolute`**: Mostra i risultati come percorsi assoluti invece di percorsi relativi.
|
|
53
|
+
|
|
54
|
+
> Esempio: `npx intlayer projects list --absolute`
|
|
55
|
+
|
|
56
|
+
## Come funziona:
|
|
57
|
+
|
|
58
|
+
Il comando cerca i file di configurazione di Intlayer nella directory specificata (o nella root git se viene usato `--git-root`). Cerca i seguenti pattern di file di configurazione:
|
|
59
|
+
|
|
60
|
+
- `intlayer.config.ts`
|
|
61
|
+
- `intlayer.config.js`
|
|
62
|
+
- `intlayer.config.json`
|
|
63
|
+
- `intlayer.config.cjs`
|
|
64
|
+
- `intlayer.config.mjs`
|
|
65
|
+
- `.intlayerrc`
|
|
66
|
+
|
|
67
|
+
Ogni directory che contiene uno di questi file è considerata un progetto Intlayer e verrà elencata nell'output.
|
|
68
|
+
|
|
69
|
+
## Esempi:
|
|
70
|
+
|
|
71
|
+
### Elencare i progetti nella directory corrente:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
npx intlayer projects list
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Elencare i progetti in una directory specifica:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
npx intlayer projects list --base-dir ./packages
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Elencare tutti i progetti nel repository git:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
npx intlayer projects list --git-root
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Utilizzo dell'alias rapido:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
npx intlayer pl --git-root
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Output come JSON:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
npx intlayer projects list --json
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Esempio di output:
|
|
102
|
+
|
|
103
|
+
### Output formattato:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
$ npx intlayer projects list --git-root
|
|
107
|
+
|
|
108
|
+
Trovati 3 progetti Intlayer:
|
|
109
|
+
|
|
110
|
+
- /Users/user/workspace/packages/app
|
|
111
|
+
- /Users/user/workspace/packages/admin
|
|
112
|
+
- /Users/user/workspace/packages/shared
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Output JSON:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
$ npx intlayer projects list --json
|
|
119
|
+
|
|
120
|
+
["/Users/user/workspace/packages/app","/Users/user/workspace/packages/admin","/Users/user/workspace/packages/shared"]
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## Casi d'uso:
|
|
124
|
+
|
|
125
|
+
- **Monorepo management**: Scoprire tutti i progetti Intlayer in una struttura monorepo
|
|
126
|
+
- **Project discovery**: Trovare tutti i progetti abilitati a Intlayer in uno workspace
|
|
127
|
+
- **CI/CD**: Verificare i progetti Intlayer nei workflow automatizzati
|
|
128
|
+
- **Documentazione**: Generare documentazione che elenchi tutti i progetti che utilizzano Intlayer
|
|
129
|
+
|
|
130
|
+
L'output fornisce i percorsi assoluti di ogni directory di progetto, rendendo semplice navigare verso di essi o scrivere script per operazioni su più progetti Intlayer.
|
package/docs/it/intlayer_CMS.md
CHANGED
|
@@ -71,6 +71,26 @@ Per l'integrazione con Vite + React, consulta la [guida all'installazione](https
|
|
|
71
71
|
|
|
72
72
|
## Configurazione
|
|
73
73
|
|
|
74
|
+
Esegui il seguente comando per accedere all'Intlayer CMS:
|
|
75
|
+
|
|
76
|
+
```bash packageManager="npm"
|
|
77
|
+
npx intlayer login
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
```bash packageManager="yarn"
|
|
81
|
+
yarn intlayer login
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
```bash packageManager="pnpm"
|
|
85
|
+
pnpm intlayer login
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
```bash packageManager="bun"
|
|
89
|
+
bunx intlayer login
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Questo aprirà il tuo browser predefinito per completare il processo di autenticazione e ricevere le credenziali necessarie (Client ID e Client Secret) per utilizzare i servizi Intlayer.
|
|
93
|
+
|
|
74
94
|
Nel file di configurazione di Intlayer, puoi personalizzare le impostazioni del CMS:
|
|
75
95
|
|
|
76
96
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
@@ -74,6 +74,34 @@ bunx intlayer init
|
|
|
74
74
|
|
|
75
75
|
### Passo 2: Configura il tuo progetto
|
|
76
76
|
|
|
77
|
+
Here is the final structure that we will make:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
.
|
|
81
|
+
├── src
|
|
82
|
+
│ ├── app
|
|
83
|
+
│ │ ├── [locale]
|
|
84
|
+
│ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
|
|
85
|
+
│ │ │ ├── page.content.ts
|
|
86
|
+
│ │ │ └── page.tsx
|
|
87
|
+
│ │ └── layout.tsx # Root layout for style and global providers
|
|
88
|
+
│ ├── components
|
|
89
|
+
│ │ ├── client-component-example.content.ts
|
|
90
|
+
│ │ ├── ClientComponentExample.tsx
|
|
91
|
+
│ │ ├── LocaleSwitcher
|
|
92
|
+
│ │ │ ├── localeSwitcher.content.ts
|
|
93
|
+
│ │ │ └── LocaleSwitcher.tsx
|
|
94
|
+
│ │ ├── server-component-example.content.ts
|
|
95
|
+
│ │ └── ServerComponentExample.tsx
|
|
96
|
+
│ └── middleware.ts
|
|
97
|
+
├── intlayer.config.ts
|
|
98
|
+
├── next.config.ts
|
|
99
|
+
├── package.json
|
|
100
|
+
└── tsconfig.json
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
> If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
|
|
104
|
+
|
|
77
105
|
Crea un file di configurazione per configurare le lingue della tua applicazione:
|
|
78
106
|
|
|
79
107
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
@@ -84,6 +84,34 @@ Il pacchetto che integra Intlayer con Next.js. Fornisce provider di contesto e h
|
|
|
84
84
|
|
|
85
85
|
### Passo 2: Configura il tuo progetto
|
|
86
86
|
|
|
87
|
+
Here is the final structure that we will make:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
.
|
|
91
|
+
├── src
|
|
92
|
+
│ ├── app
|
|
93
|
+
│ │ ├── [locale]
|
|
94
|
+
│ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
|
|
95
|
+
│ │ │ ├── page.content.ts
|
|
96
|
+
│ │ │ └── page.tsx
|
|
97
|
+
│ │ └── layout.tsx # Root layout for style and global providers
|
|
98
|
+
│ ├── components
|
|
99
|
+
│ │ ├── client-component-example.content.ts
|
|
100
|
+
│ │ ├── ClientComponentExample.tsx
|
|
101
|
+
│ │ ├── LocaleSwitcher
|
|
102
|
+
│ │ │ ├── localeSwitcher.content.ts
|
|
103
|
+
│ │ │ └── LocaleSwitcher.tsx
|
|
104
|
+
│ │ ├── server-component-example.content.ts
|
|
105
|
+
│ │ └── ServerComponentExample.tsx
|
|
106
|
+
│ └── middleware.ts
|
|
107
|
+
├── intlayer.config.ts
|
|
108
|
+
├── next.config.ts
|
|
109
|
+
├── package.json
|
|
110
|
+
└── tsconfig.json
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
> If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
|
|
114
|
+
|
|
87
115
|
Crea un file di configurazione per configurare le lingue della tua applicazione:
|
|
88
116
|
|
|
89
117
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
@@ -104,6 +104,34 @@ bunx intlayer init
|
|
|
104
104
|
|
|
105
105
|
### Passo 2: Configura il tuo progetto
|
|
106
106
|
|
|
107
|
+
Here is the final structure that we will make:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
.
|
|
111
|
+
├── src
|
|
112
|
+
│ ├── app
|
|
113
|
+
│ │ ├── [locale]
|
|
114
|
+
│ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
|
|
115
|
+
│ │ │ ├── page.content.ts
|
|
116
|
+
│ │ │ └── page.tsx
|
|
117
|
+
│ │ └── layout.tsx # Root layout for style and global providers
|
|
118
|
+
│ ├── components
|
|
119
|
+
│ │ ├── client-component-example.content.ts
|
|
120
|
+
│ │ ├── ClientComponentExample.tsx
|
|
121
|
+
│ │ ├── LocaleSwitcher
|
|
122
|
+
│ │ │ ├── localeSwitcher.content.ts
|
|
123
|
+
│ │ │ └── LocaleSwitcher.tsx
|
|
124
|
+
│ │ ├── server-component-example.content.ts
|
|
125
|
+
│ │ └── ServerComponentExample.tsx
|
|
126
|
+
│ └── proxy.ts
|
|
127
|
+
├── intlayer.config.ts
|
|
128
|
+
├── next.config.ts
|
|
129
|
+
├── package.json
|
|
130
|
+
└── tsconfig.json
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
> If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
|
|
134
|
+
|
|
107
135
|
Crea un file di configurazione per configurare le lingue della tua applicazione:
|
|
108
136
|
|
|
109
137
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|