@intlayer/docs 8.12.5-canary.0 → 9.0.0-canary.3
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/dist/cjs/generated/docs.entry.cjs +320 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +320 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +16 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/cli/doc-review.md +110 -4
- package/docs/ar/cli/index.md +1 -1
- package/docs/ar/cli/scan.md +1 -1
- package/docs/ar/configuration.md +36 -3
- package/docs/ar/dictionary/condition.md +167 -5
- package/docs/ar/dictionary/enumeration.md +540 -6
- package/docs/ar/dictionary/file.md +151 -1
- package/docs/ar/dictionary/gender.md +168 -7
- package/docs/ar/dictionary/nesting.md +173 -65
- package/docs/ar/dictionary/plurial.md +174 -5
- package/docs/ar/dictionary/translation.md +156 -2
- package/docs/ar/dynamic_dictionaries/collections.md +1 -1
- package/docs/ar/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/ar/dynamic_dictionaries/index.md +1 -1
- package/docs/ar/dynamic_dictionaries/variants.md +1 -1
- package/docs/ar/intlayer_with_vite+react.md +31 -31
- package/docs/ar/plugins/sync-json.md +222 -49
- package/docs/ar/releases/v8.md +187 -1
- package/docs/ar/releases/v9.md +232 -0
- package/docs/bn/cli/index.md +1 -1
- package/docs/bn/cli/scan.md +1 -1
- package/docs/bn/configuration.md +36 -3
- package/docs/cs/cli/index.md +1 -1
- package/docs/cs/cli/scan.md +1 -1
- package/docs/cs/configuration.md +35 -2
- package/docs/de/cli/doc-review.md +110 -4
- package/docs/de/cli/index.md +1 -1
- package/docs/de/cli/scan.md +1 -1
- package/docs/de/configuration.md +35 -2
- package/docs/de/dictionary/condition.md +167 -5
- package/docs/de/dictionary/enumeration.md +777 -7
- package/docs/de/dictionary/file.md +151 -1
- package/docs/de/dictionary/gender.md +168 -7
- package/docs/de/dictionary/nesting.md +173 -65
- package/docs/de/dictionary/plurial.md +347 -7
- package/docs/de/dictionary/translation.md +156 -2
- package/docs/de/dynamic_dictionaries/collections.md +1 -1
- package/docs/de/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/de/dynamic_dictionaries/index.md +1 -1
- package/docs/de/dynamic_dictionaries/variants.md +1 -1
- package/docs/de/intlayer_with_vite+react.md +48 -48
- package/docs/de/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/de/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/de/plugins/sync-json.md +222 -49
- package/docs/de/releases/v8.md +197 -1
- package/docs/de/releases/v9.md +232 -0
- package/docs/en/CI_CD.md +7 -7
- package/docs/en/cli/ci.md +62 -8
- package/docs/en/cli/doc-review.md +110 -4
- package/docs/en/cli/index.md +1 -1
- package/docs/en/cli/scan.md +1 -1
- package/docs/en/compat/i18n-js.md +44 -0
- package/docs/en/compat/i18next.md +59 -0
- package/docs/en/compat/index.md +51 -0
- package/docs/en/compat/lingui.md +44 -0
- package/docs/en/compat/next-i18next.md +57 -0
- package/docs/en/compat/next-intl.md +59 -0
- package/docs/en/compat/next-translate.md +45 -0
- package/docs/en/compat/ngx-translate.md +45 -0
- package/docs/en/compat/nuxtjs-i18n.md +46 -0
- package/docs/en/compat/polyglot.md +45 -0
- package/docs/en/compat/react-i18next.md +58 -0
- package/docs/en/compat/react-intl.md +55 -0
- package/docs/en/compat/svelte-i18n.md +47 -0
- package/docs/en/compat/transloco.md +45 -0
- package/docs/en/compat/vue-i18n.md +58 -0
- package/docs/en/configuration.md +35 -2
- package/docs/en/dictionary/condition.md +163 -1
- package/docs/en/dictionary/enumeration.md +309 -7
- package/docs/en/dictionary/file.md +151 -1
- package/docs/en/dictionary/gender.md +162 -1
- package/docs/en/dictionary/nesting.md +173 -9
- package/docs/en/dictionary/plurial.md +155 -10
- package/docs/en/dictionary/translation.md +145 -52
- package/docs/en/dynamic_dictionaries/collections.md +1 -1
- package/docs/en/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/en/dynamic_dictionaries/index.md +1 -1
- package/docs/en/dynamic_dictionaries/variants.md +1 -1
- package/docs/en/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/en/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/en/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/en/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/en/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/en/plugins/sync-json.md +56 -2
- package/docs/en/releases/v8.md +187 -1
- package/docs/en/releases/v9.md +220 -0
- package/docs/en-GB/cli/doc-review.md +110 -4
- package/docs/en-GB/cli/index.md +1 -1
- package/docs/en-GB/cli/scan.md +1 -1
- package/docs/en-GB/configuration.md +35 -2
- package/docs/en-GB/dictionary/condition.md +364 -1
- package/docs/en-GB/dictionary/enumeration.md +577 -5
- package/docs/en-GB/dictionary/file.md +317 -1
- package/docs/en-GB/dictionary/gender.md +375 -2
- package/docs/en-GB/dictionary/nesting.md +368 -71
- package/docs/en-GB/dictionary/plurial.md +347 -7
- package/docs/en-GB/dictionary/translation.md +320 -32
- package/docs/en-GB/dynamic_dictionaries/collections.md +1 -1
- package/docs/en-GB/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/en-GB/dynamic_dictionaries/index.md +1 -1
- package/docs/en-GB/dynamic_dictionaries/variants.md +1 -1
- package/docs/en-GB/plugins/sync-json.md +245 -13
- package/docs/en-GB/releases/v8.md +1 -1
- package/docs/en-GB/releases/v9.md +220 -0
- package/docs/es/cli/doc-review.md +110 -4
- package/docs/es/cli/index.md +1 -1
- package/docs/es/cli/scan.md +1 -1
- package/docs/es/configuration.md +36 -3
- package/docs/es/dictionary/condition.md +167 -5
- package/docs/es/dictionary/enumeration.md +537 -12
- package/docs/es/dictionary/file.md +151 -1
- package/docs/es/dictionary/gender.md +168 -7
- package/docs/es/dictionary/nesting.md +173 -65
- package/docs/es/dictionary/plurial.md +347 -7
- package/docs/es/dictionary/translation.md +156 -2
- package/docs/es/dynamic_dictionaries/collections.md +1 -1
- package/docs/es/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/es/dynamic_dictionaries/index.md +1 -1
- package/docs/es/dynamic_dictionaries/variants.md +1 -1
- package/docs/es/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/es/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/es/plugins/sync-json.md +222 -49
- package/docs/es/releases/v8.md +187 -1
- package/docs/es/releases/v9.md +228 -0
- package/docs/fr/cli/doc-review.md +110 -4
- package/docs/fr/cli/index.md +1 -1
- package/docs/fr/cli/scan.md +1 -1
- package/docs/fr/configuration.md +49 -16
- package/docs/fr/dictionary/condition.md +369 -6
- package/docs/fr/dictionary/enumeration.md +540 -6
- package/docs/fr/dictionary/file.md +151 -1
- package/docs/fr/dictionary/gender.md +168 -7
- package/docs/fr/dictionary/nesting.md +357 -86
- package/docs/fr/dictionary/plurial.md +174 -5
- package/docs/fr/dictionary/translation.md +156 -2
- package/docs/fr/dynamic_dictionaries/collections.md +1 -1
- package/docs/fr/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/fr/dynamic_dictionaries/index.md +1 -1
- package/docs/fr/dynamic_dictionaries/variants.md +1 -1
- package/docs/fr/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/fr/plugins/sync-json.md +244 -12
- package/docs/fr/releases/v8.md +187 -1
- package/docs/fr/releases/v9.md +220 -0
- package/docs/hi/cli/doc-review.md +110 -4
- package/docs/hi/cli/index.md +1 -1
- package/docs/hi/cli/scan.md +1 -1
- package/docs/hi/configuration.md +49 -16
- package/docs/hi/dictionary/condition.md +167 -5
- package/docs/hi/dictionary/enumeration.md +540 -6
- package/docs/hi/dictionary/file.md +151 -1
- package/docs/hi/dictionary/gender.md +168 -7
- package/docs/hi/dictionary/nesting.md +173 -65
- package/docs/hi/dictionary/plurial.md +174 -5
- package/docs/hi/dictionary/translation.md +155 -5
- package/docs/hi/dynamic_dictionaries/collections.md +1 -1
- package/docs/hi/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/hi/dynamic_dictionaries/index.md +1 -1
- package/docs/hi/dynamic_dictionaries/variants.md +1 -1
- package/docs/hi/plugins/sync-json.md +221 -48
- package/docs/hi/releases/v8.md +188 -2
- package/docs/hi/releases/v9.md +232 -0
- package/docs/id/cli/doc-review.md +110 -4
- package/docs/id/cli/index.md +1 -1
- package/docs/id/cli/scan.md +1 -1
- package/docs/id/configuration.md +35 -2
- package/docs/id/dictionary/condition.md +167 -5
- package/docs/id/dictionary/enumeration.md +540 -6
- package/docs/id/dictionary/file.md +318 -2
- package/docs/id/dictionary/gender.md +381 -8
- package/docs/id/dictionary/nesting.md +357 -86
- package/docs/id/dictionary/plurial.md +174 -5
- package/docs/id/dictionary/translation.md +156 -2
- package/docs/id/dynamic_dictionaries/collections.md +1 -1
- package/docs/id/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/id/dynamic_dictionaries/index.md +1 -1
- package/docs/id/dynamic_dictionaries/variants.md +1 -1
- package/docs/id/plugins/sync-json.md +222 -49
- package/docs/id/releases/v8.md +191 -2
- package/docs/id/releases/v9.md +232 -0
- package/docs/it/cli/doc-review.md +110 -4
- package/docs/it/cli/index.md +1 -1
- package/docs/it/cli/scan.md +1 -1
- package/docs/it/configuration.md +49 -16
- package/docs/it/dictionary/condition.md +167 -5
- package/docs/it/dictionary/enumeration.md +540 -6
- package/docs/it/dictionary/file.md +318 -2
- package/docs/it/dictionary/gender.md +168 -7
- package/docs/it/dictionary/nesting.md +173 -65
- package/docs/it/dictionary/plurial.md +347 -7
- package/docs/it/dictionary/translation.md +156 -2
- package/docs/it/dynamic_dictionaries/collections.md +1 -1
- package/docs/it/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/it/dynamic_dictionaries/index.md +1 -1
- package/docs/it/dynamic_dictionaries/variants.md +1 -1
- package/docs/it/intlayer_with_vite+react.md +0 -48
- package/docs/it/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/it/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/it/plugins/sync-json.md +224 -51
- package/docs/it/releases/v8.md +200 -2
- package/docs/it/releases/v9.md +232 -0
- package/docs/ja/cli/doc-review.md +110 -4
- package/docs/ja/cli/index.md +1 -1
- package/docs/ja/cli/scan.md +1 -1
- package/docs/ja/configuration.md +50 -17
- package/docs/ja/dictionary/condition.md +167 -5
- package/docs/ja/dictionary/enumeration.md +540 -6
- package/docs/ja/dictionary/file.md +151 -1
- package/docs/ja/dictionary/gender.md +168 -7
- package/docs/ja/dictionary/nesting.md +173 -65
- package/docs/ja/dictionary/plurial.md +174 -5
- package/docs/ja/dictionary/translation.md +169 -8
- package/docs/ja/dynamic_dictionaries/collections.md +1 -1
- package/docs/ja/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/ja/dynamic_dictionaries/index.md +1 -1
- package/docs/ja/dynamic_dictionaries/variants.md +1 -1
- package/docs/ja/intlayer_with_vite+react.md +290 -0
- package/docs/ja/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ja/plugins/sync-json.md +222 -49
- package/docs/ja/releases/v8.md +193 -4
- package/docs/ja/releases/v9.md +232 -0
- package/docs/ko/cli/doc-review.md +110 -4
- package/docs/ko/cli/index.md +1 -1
- package/docs/ko/cli/scan.md +1 -1
- package/docs/ko/configuration.md +49 -16
- package/docs/ko/dictionary/condition.md +167 -5
- package/docs/ko/dictionary/enumeration.md +540 -6
- package/docs/ko/dictionary/file.md +151 -1
- package/docs/ko/dictionary/gender.md +168 -7
- package/docs/ko/dictionary/nesting.md +173 -65
- package/docs/ko/dictionary/plurial.md +174 -5
- package/docs/ko/dictionary/translation.md +169 -8
- package/docs/ko/dynamic_dictionaries/collections.md +1 -1
- package/docs/ko/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/ko/dynamic_dictionaries/index.md +1 -1
- package/docs/ko/dynamic_dictionaries/variants.md +1 -1
- package/docs/ko/intlayer_with_vite+react.md +48 -490
- package/docs/ko/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ko/plugins/sync-json.md +223 -50
- package/docs/ko/releases/v8.md +192 -1
- package/docs/ko/releases/v9.md +232 -0
- package/docs/nl/cli/index.md +1 -1
- package/docs/nl/cli/scan.md +1 -1
- package/docs/nl/configuration.md +36 -3
- package/docs/pl/cli/doc-review.md +110 -4
- package/docs/pl/cli/index.md +1 -1
- package/docs/pl/cli/scan.md +1 -1
- package/docs/pl/configuration.md +35 -2
- package/docs/pl/dictionary/condition.md +167 -5
- package/docs/pl/dictionary/enumeration.md +540 -6
- package/docs/pl/dictionary/file.md +318 -2
- package/docs/pl/dictionary/gender.md +168 -7
- package/docs/pl/dictionary/nesting.md +173 -65
- package/docs/pl/dictionary/plurial.md +174 -5
- package/docs/pl/dictionary/translation.md +156 -2
- package/docs/pl/dynamic_dictionaries/collections.md +1 -1
- package/docs/pl/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/pl/dynamic_dictionaries/index.md +1 -1
- package/docs/pl/dynamic_dictionaries/variants.md +1 -1
- package/docs/pl/plugins/sync-json.md +246 -14
- package/docs/pl/releases/v8.md +188 -2
- package/docs/pl/releases/v9.md +232 -0
- package/docs/pt/cli/doc-review.md +110 -4
- package/docs/pt/cli/index.md +1 -1
- package/docs/pt/cli/scan.md +1 -1
- package/docs/pt/configuration.md +49 -16
- package/docs/pt/dictionary/condition.md +167 -5
- package/docs/pt/dictionary/enumeration.md +540 -6
- package/docs/pt/dictionary/file.md +151 -1
- package/docs/pt/dictionary/gender.md +168 -7
- package/docs/pt/dictionary/nesting.md +173 -65
- package/docs/pt/dictionary/plurial.md +347 -7
- package/docs/pt/dictionary/translation.md +156 -2
- package/docs/pt/dynamic_dictionaries/collections.md +1 -1
- package/docs/pt/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/pt/dynamic_dictionaries/index.md +1 -1
- package/docs/pt/dynamic_dictionaries/variants.md +1 -1
- package/docs/pt/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/pt/plugins/sync-json.md +222 -49
- package/docs/pt/releases/v8.md +187 -1
- package/docs/pt/releases/v9.md +232 -0
- package/docs/ru/cli/doc-review.md +110 -4
- package/docs/ru/cli/index.md +1 -1
- package/docs/ru/cli/scan.md +1 -1
- package/docs/ru/configuration.md +35 -2
- package/docs/ru/dictionary/condition.md +366 -39
- package/docs/ru/dictionary/enumeration.md +777 -7
- package/docs/ru/dictionary/file.md +318 -2
- package/docs/ru/dictionary/gender.md +168 -7
- package/docs/ru/dictionary/nesting.md +368 -71
- package/docs/ru/dictionary/plurial.md +347 -7
- package/docs/ru/dictionary/translation.md +321 -33
- package/docs/ru/dynamic_dictionaries/collections.md +1 -1
- package/docs/ru/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/ru/dynamic_dictionaries/index.md +1 -1
- package/docs/ru/dynamic_dictionaries/variants.md +1 -1
- package/docs/ru/intlayer_with_vite+react.md +48 -47
- package/docs/ru/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ru/plugins/sync-json.md +269 -95
- package/docs/ru/releases/v8.md +194 -2
- package/docs/ru/releases/v9.md +232 -0
- package/docs/tr/cli/doc-review.md +110 -4
- package/docs/tr/cli/index.md +1 -1
- package/docs/tr/cli/scan.md +1 -1
- package/docs/tr/configuration.md +35 -2
- package/docs/tr/dictionary/condition.md +167 -5
- package/docs/tr/dictionary/enumeration.md +540 -6
- package/docs/tr/dictionary/file.md +151 -1
- package/docs/tr/dictionary/gender.md +168 -7
- package/docs/tr/dictionary/nesting.md +173 -65
- package/docs/tr/dictionary/plurial.md +174 -5
- package/docs/tr/dictionary/translation.md +156 -2
- package/docs/tr/dynamic_dictionaries/collections.md +1 -1
- package/docs/tr/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/tr/dynamic_dictionaries/index.md +1 -1
- package/docs/tr/dynamic_dictionaries/variants.md +1 -1
- package/docs/tr/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/tr/plugins/sync-json.md +222 -50
- package/docs/tr/releases/v8.md +187 -1
- package/docs/tr/releases/v9.md +232 -0
- package/docs/uk/cli/doc-review.md +110 -4
- package/docs/uk/cli/index.md +1 -1
- package/docs/uk/cli/scan.md +1 -1
- package/docs/uk/configuration.md +35 -2
- package/docs/uk/dictionary/condition.md +167 -5
- package/docs/uk/dictionary/enumeration.md +540 -6
- package/docs/uk/dictionary/file.md +318 -2
- package/docs/uk/dictionary/gender.md +381 -8
- package/docs/uk/dictionary/nesting.md +173 -65
- package/docs/uk/dictionary/plurial.md +174 -5
- package/docs/uk/dictionary/translation.md +156 -2
- package/docs/uk/dynamic_dictionaries/collections.md +1 -1
- package/docs/uk/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/uk/dynamic_dictionaries/index.md +1 -1
- package/docs/uk/dynamic_dictionaries/variants.md +1 -1
- package/docs/uk/plugins/sync-json.md +56 -2
- package/docs/uk/releases/v8.md +191 -3
- package/docs/uk/releases/v9.md +232 -0
- package/docs/ur/cli/index.md +1 -1
- package/docs/ur/cli/scan.md +1 -1
- package/docs/ur/configuration.md +36 -3
- package/docs/vi/cli/doc-review.md +110 -4
- package/docs/vi/cli/index.md +1 -1
- package/docs/vi/cli/scan.md +1 -1
- package/docs/vi/configuration.md +50 -17
- package/docs/vi/dictionary/condition.md +167 -5
- package/docs/vi/dictionary/enumeration.md +591 -14
- package/docs/vi/dictionary/file.md +318 -2
- package/docs/vi/dictionary/gender.md +168 -7
- package/docs/vi/dictionary/nesting.md +357 -86
- package/docs/vi/dictionary/plurial.md +174 -5
- package/docs/vi/dictionary/translation.md +156 -2
- package/docs/vi/dynamic_dictionaries/collections.md +1 -1
- package/docs/vi/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/vi/dynamic_dictionaries/index.md +1 -1
- package/docs/vi/dynamic_dictionaries/variants.md +1 -1
- package/docs/vi/plugins/sync-json.md +230 -57
- package/docs/vi/releases/v8.md +190 -1
- package/docs/vi/releases/v9.md +232 -0
- package/docs/zh/cli/doc-review.md +110 -4
- package/docs/zh/cli/index.md +1 -1
- package/docs/zh/cli/scan.md +1 -1
- package/docs/zh/configuration.md +49 -16
- package/docs/zh/dictionary/condition.md +167 -5
- package/docs/zh/dictionary/enumeration.md +540 -6
- package/docs/zh/dictionary/file.md +151 -1
- package/docs/zh/dictionary/gender.md +168 -7
- package/docs/zh/dictionary/nesting.md +173 -65
- package/docs/zh/dictionary/plurial.md +174 -5
- package/docs/zh/dictionary/translation.md +169 -8
- package/docs/zh/dynamic_dictionaries/collections.md +1 -1
- package/docs/zh/dynamic_dictionaries/dynamic_content.md +1 -1
- package/docs/zh/dynamic_dictionaries/index.md +1 -1
- package/docs/zh/dynamic_dictionaries/variants.md +1 -1
- package/docs/zh/intlayer_with_vite+react.md +48 -288
- package/docs/zh/plugins/sync-json.md +223 -50
- package/docs/zh/releases/v8.md +1 -1
- package/docs/zh/releases/v9.md +220 -0
- package/package.json +7 -7
- package/src/generated/docs.entry.ts +320 -0
- package/dist/esm/_virtual/_rolldown/runtime.mjs +0 -8
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-14
|
|
3
|
+
updatedAt: 2026-06-14
|
|
4
|
+
title: Intlayer v9 الجديد - ما الجديد؟
|
|
5
|
+
description: اكتشف ما هو جديد في Intlayer v9. نقدم حزم توافق جاهزة للاستخدام لمكتبات i18n الشهيرة ودعمًا للمجموعات (Collections) والمتغيرات (Variants) والسجلات الديناميكية (Dynamic Records).
|
|
6
|
+
keywords:
|
|
7
|
+
- Intlayer
|
|
8
|
+
- التوافق
|
|
9
|
+
- الترحيل
|
|
10
|
+
- المجموعات
|
|
11
|
+
- المتغيرات
|
|
12
|
+
- السجلات الديناميكية
|
|
13
|
+
- i18next
|
|
14
|
+
- next-intl
|
|
15
|
+
- vue-i18n
|
|
16
|
+
slugs:
|
|
17
|
+
- doc
|
|
18
|
+
- releases
|
|
19
|
+
- v9
|
|
20
|
+
author: aymericzip
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# Intlayer v9 الجديد - ما الجديد؟
|
|
24
|
+
|
|
25
|
+
مرحبًا بكم في Intlayer v9! يمثل هذا الإصدار الرئيسي علامة فارقة ضخمة في تبسيط مسار الترحيل إلى Intlayer من خلال **حزم محولات التوافق (Compat Adapter Packages)** لمكتبات i18n الرئيسية (`react-i18next`, `next-intl`, `vue-i18n`, إلخ) ويضيف دعمًا لهياكل المحتوى الغنية: **المجموعات (Collections)**، **المتغيرات (Variants)**، و**السجلات الديناميكية (Dynamic Records)**.
|
|
26
|
+
|
|
27
|
+
## جدول المحتويات
|
|
28
|
+
|
|
29
|
+
<TOC levels={[2]} maxDepth={1} />
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## حزم محولات التوافق (Compat Adapter Packages)
|
|
34
|
+
|
|
35
|
+
أصبح الترحيل إلى Intlayer من مكتبات i18n الشهيرة أسهل من أي وقت مضى. لقد أنشأنا خمس حزم توافق تعرض **نفس واجهات برمجة التطبيقات العامة (public APIs) تمامًا** مثل مكتبات i18n القياسية ولكنها تفوض جميع أعمال الترجمة إلى Intlayer في وقت التشغيل (runtime).
|
|
36
|
+
|
|
37
|
+
### عرض نفس واجهة برمجة التطبيقات العامة (Public API) مع كتابة صارمة (Strict Typing)
|
|
38
|
+
|
|
39
|
+
باستبدال عمليات الاستيراد (imports)، تحصل على جميع مزايا Intlayer (بما في ذلك أمان النوع في وقت التجميع (compile-time type safety) مقابل قواميسك الفعلية) بأقل تغييرات في الكود:
|
|
40
|
+
|
|
41
|
+
- `@intlayer/i18next`
|
|
42
|
+
- `@intlayer/react-i18next`
|
|
43
|
+
- `@intlayer/next-intl`
|
|
44
|
+
- `@intlayer/next-i18next`
|
|
45
|
+
- `@intlayer/vue-i18n`
|
|
46
|
+
|
|
47
|
+
على سبيل المثال، قم ببساطة بتغيير:
|
|
48
|
+
|
|
49
|
+
```ts
|
|
50
|
+
import { useTranslation } from "react-i18next";
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
إلى:
|
|
54
|
+
|
|
55
|
+
```ts
|
|
56
|
+
import { useTranslation } from "@intlayer/react-i18next";
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
ستكون مفاتيحك الآن **مكتوبة بشكل صارم (strictly typed)** مقابل قواميس Intlayer الخاصة بك، مما يوفر إكمالًا تلقائيًا كاملاً للمسار النقطي (dot-path auto-completion) في بيئة التطوير المتكاملة (IDE) الخاصة بك!
|
|
60
|
+
|
|
61
|
+
### إضافات اسم مستعار للمجمّع (Bundler Alias Plugins) (Vite, Next.js, Turbopack)
|
|
62
|
+
|
|
63
|
+
للسماح بالترحيل دون إعادة كتابة جميع عبارات الاستيراد (import statements) يدويًا، تتضمن كل حزمة محول توافق (compat adapter package) **إضافة مجمّع مخصصة (custom bundler plugin)** (Vite أو Next.js) ضمن المسار الفرعي `/plugin`.
|
|
64
|
+
|
|
65
|
+
تعيد هذه الإضافات تلقائيًا كتابة عمليات الاستيراد الموجودة (مثل `react-i18next` أو `next-intl`) إلى مكافئاتها `@intlayer/*` في وقت البناء (build time).
|
|
66
|
+
|
|
67
|
+
#### مثال Next.js (Webpack / Turbopack)
|
|
68
|
+
|
|
69
|
+
بدلاً من `withIntlayer`، قم بتغليف إعدادات Next.js الخاصة بك باستخدام إضافة التوافق (compat plugin):
|
|
70
|
+
|
|
71
|
+
```ts fileName="next.config.ts"
|
|
72
|
+
import { createNextI18nPlugin } from "@intlayer/next-i18next/plugin";
|
|
73
|
+
import type { NextConfig } from "next";
|
|
74
|
+
|
|
75
|
+
const withIntlayer = createNextI18nPlugin();
|
|
76
|
+
const nextConfig: NextConfig = {};
|
|
77
|
+
|
|
78
|
+
export default withIntlayer(nextConfig);
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
#### مثال Vite (React, Vue, Solid, Svelte)
|
|
82
|
+
|
|
83
|
+
```ts fileName="vite.config.ts"
|
|
84
|
+
import vueI18nVitePlugin from "@intlayer/vue-i18n/plugin";
|
|
85
|
+
|
|
86
|
+
export default defineConfig({
|
|
87
|
+
plugins: [vueI18nVitePlugin()],
|
|
88
|
+
});
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## محلل وقت التشغيل المشترك (Mutualized Runtime Resolver)
|
|
94
|
+
|
|
95
|
+
توجه جميع محولات التوافق (compat adapters) الآن حل الترجمة من خلال محلل وقت تشغيل واحد ومحسن للغاية: `@intlayer/core/messageFormat`.
|
|
96
|
+
|
|
97
|
+
- **رسالة الاستيفاء (Interpolate Message)**: تحل `{{var}}` القياسية (مسافات بيضاء ومسارات نقطية)، وسيطات ICU المنسقة (`{v, number, percent}` إلخ)، وقوالب `{var}` المجردة.
|
|
98
|
+
- **محلل عقدة الرسالة (Message Node Resolver)**: يحل العقد المتداخلة: `insert()`، `plural()` (قواعد الجمع CLDR)، `enu()` (التعداد)، `gender()`، علامات HTML، المصفوفات، وعقد الوظائف القابلة للاستدعاء.
|
|
99
|
+
- **محلل العلامات المرمزة (Tokenized Tag Parser)**: يدعم علامات XML/HTML المضمنة والعلامات المرقمة (مثل `<1>children</1>`) لتشغيل عرض النص الغني (rich-text rendering) بشكل جاهز.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## مواصفات الميزة: المجموعات (Collections)، المتغيرات (Variants) والسجلات الديناميكية (Dynamic Records)
|
|
104
|
+
|
|
105
|
+
يتوسع Intlayer v9 إلى ما هو أبعد من كائنات المفتاح-القيمة الثابتة، مما يسمح للقواميس بالإعلان عن هياكل تخطيط ديناميكية مكتوبة بالكامل من البداية إلى النهاية.
|
|
106
|
+
|
|
107
|
+
### 1. المجموعات (Collections)
|
|
108
|
+
|
|
109
|
+
حدد قائمة من العناصر المرتبة التي يديرها نظام إدارة المحتوى (CMS) (مثل الأسئلة الشائعة، المنتجات، أو قوائم المدونات):
|
|
110
|
+
|
|
111
|
+
```ts fileName="faq.content.ts"
|
|
112
|
+
import { t, type Dictionary } from "intlayer";
|
|
113
|
+
|
|
114
|
+
export default {
|
|
115
|
+
key: "faq",
|
|
116
|
+
content: [
|
|
117
|
+
{
|
|
118
|
+
question: t({
|
|
119
|
+
ar: "ما هو Intlayer؟",
|
|
120
|
+
en: "What is Intlayer?",
|
|
121
|
+
fr: "Qu'est-ce qu'Intlayer ?",
|
|
122
|
+
}),
|
|
123
|
+
answer: t({
|
|
124
|
+
ar: "مجموعة أدوات i18n.",
|
|
125
|
+
en: "An i18n toolkit.",
|
|
126
|
+
fr: "Une boîte أدوات i18n.",
|
|
127
|
+
}),
|
|
128
|
+
},
|
|
129
|
+
],
|
|
130
|
+
} satisfies Dictionary;
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
#### الاستخدام:
|
|
134
|
+
|
|
135
|
+
```ts
|
|
136
|
+
// جلب جميع العناصر
|
|
137
|
+
const allFaqs = useIntlayer("faq"); // -> { question: string, answer: string }[]
|
|
138
|
+
|
|
139
|
+
// جلب عنصر واحد حسب الفهرس
|
|
140
|
+
const faq = useIntlayer("faq", { item: 1 }); // -> { question: string, answer: string }
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### 2. المتغيرات (Variants)
|
|
144
|
+
|
|
145
|
+
قدم اختبارات A/B، رؤوس صفحات موسمية، علامات ميزات (feature flags)، أو صفحات هبوط مخصصة:
|
|
146
|
+
|
|
147
|
+
```ts fileName="hero.content.ts"
|
|
148
|
+
import { t, type Dictionary } from "intlayer";
|
|
149
|
+
|
|
150
|
+
export default {
|
|
151
|
+
key: "hero-banner",
|
|
152
|
+
variant: "default",
|
|
153
|
+
content: {
|
|
154
|
+
control: t({ ar: "مرحباً", en: "Welcome", fr: "Bienvenue" }),
|
|
155
|
+
black_friday: t({
|
|
156
|
+
ar: "تسوق الآن",
|
|
157
|
+
en: "Shop now",
|
|
158
|
+
fr: "Acheter maintenant",
|
|
159
|
+
}),
|
|
160
|
+
},
|
|
161
|
+
} satisfies Dictionary;
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
#### الاستخدام:
|
|
165
|
+
|
|
166
|
+
```ts
|
|
167
|
+
const banner = useIntlayer("hero-banner", { variant: "black_friday" });
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### 3. السجلات الديناميكية (Dynamic Records)
|
|
171
|
+
|
|
172
|
+
حدد القواميس التي يتم تحميل إدخالاتها ديناميكيًا في وقت التشغيل (runtime) عبر معرفات الاستعلام (query IDs):
|
|
173
|
+
|
|
174
|
+
```ts fileName="product.content.ts"
|
|
175
|
+
import { t, type Dictionary } from "intlayer";
|
|
176
|
+
|
|
177
|
+
export default {
|
|
178
|
+
key: "product-copy",
|
|
179
|
+
meta: {
|
|
180
|
+
id: "prod_123",
|
|
181
|
+
category: "books",
|
|
182
|
+
},
|
|
183
|
+
content: {
|
|
184
|
+
title: t({ ar: "كود نظيف", en: "Clean Code", fr: "Code Propre" }),
|
|
185
|
+
},
|
|
186
|
+
} satisfies Dictionary;
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
#### الاستخدام:
|
|
190
|
+
|
|
191
|
+
```ts
|
|
192
|
+
// يجلب العنصر المطلوب فقط ديناميكيًا (يتطلب Suspense)
|
|
193
|
+
const product = useIntlayer("product-copy", {
|
|
194
|
+
id: "prod_123",
|
|
195
|
+
category: "books",
|
|
196
|
+
});
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## التحميل الديناميكي وتحسينات حجم الحزمة (Bundle Size Optimizations)
|
|
202
|
+
|
|
203
|
+
للحفاظ على أحجام الحزم (bundles) صغيرة للغاية، يدعم Intlayer v9 التحميل الكسول الديناميكي (dynamic lazy loading).
|
|
204
|
+
|
|
205
|
+
في إعداداتك، اضبط `importMode` على `'dynamic'` أو `'fetch'`:
|
|
206
|
+
|
|
207
|
+
```ts fileName="intlayer.config.ts"
|
|
208
|
+
export default {
|
|
209
|
+
dictionary: {
|
|
210
|
+
importMode: "dynamic", // "static" | "dynamic" | "fetch"
|
|
211
|
+
},
|
|
212
|
+
};
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
في وقت البناء (build time)، يقوم `@intlayer/swc` و`@intlayer/babel` بمسح ملفاتك واستبدال استدعاءات `useIntlayer` / `getIntlayer` بـ wrappers قابلة للإزالة (tree-shakeable wrappers) (`useDictionary` / `useDictionaryDynamic`). يتم تحميل المحتوى المطلوب فقط للعنصر المحدد في المجموعة (collection item)، أو المتغير (variant)، أو اللغة (locale)، مما يمنع حزمة الإنتاج (production bundle) الخاصة بك من احتواء ترجمات غير مستخدمة.
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## ملاحظات الترحيل من الإصدار 8
|
|
220
|
+
|
|
221
|
+
إذا كنت تقوم بالترقية من الإصدار 8، لاحظ أن الإصدار 9 لا يتضمن تغييرات جذرية (breaking changes). ولكن إليك التغييرات الرئيسية:
|
|
222
|
+
|
|
223
|
+
- **اللغات واللهجات (Locales & Dialects)**: إذا كنت تستخدم تبعيات i18n خارجية، أضف إضافات محول التوافق (compat adapter plugins) الخاصة بها في إعداداتك أو إعداد المجمّع (bundler setup) لإعادة كتابة عمليات الاستيراد (imports) تلقائيًا.
|
|
224
|
+
- **المحددات المخصصة (Custom Selectors)**: عند استدعاء `useIntlayer`، تم حجز المعامل الثاني الآن لكائن خيارات يحتوي على `{ locale, item, variant, id }`. إذا كنت قد مررت سابقًا سلسلة لغة (locale string) مباشرة، فلا يزال بإمكانك القيام بذلك، ولكن يوصى باستخدام كائن الخيارات للاختيارات المتقدمة.
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## روابط مفيدة
|
|
229
|
+
|
|
230
|
+
- [دليل حزم محولات التوافق (Compat Adapter Packages Guide)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/compat/index.md)
|
|
231
|
+
- [القواميس الديناميكية - المجموعات (Collections)، المتغيرات (Variants) والسجلات الديناميكية (Dynamic Records)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dynamic_dictionaries/index.md)
|
|
232
|
+
- [مرجع الإعدادات (Configuration Reference)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/configuration.md)
|
package/docs/bn/cli/index.md
CHANGED
package/docs/bn/cli/scan.md
CHANGED
package/docs/bn/configuration.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-13
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-06-17
|
|
4
4
|
title: কনফিগারেশন (Configuration)
|
|
5
5
|
description: আপনার অ্যাপ্লিকেশনের জন্য Intlayer কীভাবে কনফিগার করবেন তা শিখুন। আপনার প্রয়োজন অনুযায়ী Intlayer কাস্টমাইজ করতে উপলব্ধ বিভিন্ন সেটিংস এবং বিকল্পগুলি বুঝুন।
|
|
6
6
|
keywords:
|
|
@@ -14,6 +14,9 @@ slugs:
|
|
|
14
14
|
- concept
|
|
15
15
|
- configuration
|
|
16
16
|
history:
|
|
17
|
+
- version: 8.10.0
|
|
18
|
+
date: 2026-06-17
|
|
19
|
+
changes: "ডিকশনারি কনফিগারেশনে `format` অপশন যোগ করা হয়েছে"
|
|
17
20
|
- version: 8.9.4
|
|
18
21
|
date: 2026-05-12
|
|
19
22
|
changes: "LM Studio প্রদানকারীর জন্য সমর্থন যোগ করুন"
|
|
@@ -135,6 +138,7 @@ Intlayer JSON, JS, MJS এবং TS কনফিগারেশন ফাইল
|
|
|
135
138
|
````typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
136
139
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
137
140
|
import { nextjsRewrite } from "intlayer/routing";
|
|
141
|
+
import { syncJSON } from "@intlayer/sync-json-plugin";
|
|
138
142
|
import { z } from "zod";
|
|
139
143
|
|
|
140
144
|
/**
|
|
@@ -576,9 +580,37 @@ const config: IntlayerConfig = {
|
|
|
576
580
|
},
|
|
577
581
|
|
|
578
582
|
/**
|
|
579
|
-
*
|
|
583
|
+
* ডিকশনারি কনফিগারেশন।
|
|
580
584
|
*/
|
|
581
|
-
|
|
585
|
+
dictionary: {
|
|
586
|
+
/**
|
|
587
|
+
* ডিকশনারি কিভাবে ইম্পোর্ট করা হবে তা নিয়ন্ত্রণ করে。
|
|
588
|
+
* - "static": বিল্ড টাইমে স্ট্যাটিকভাবে ইম্পোর্ট করা হয়。
|
|
589
|
+
* - "dynamic": Suspense ব্যবহার করে ডাইনামিকভাবে ইম্পোর্ট করা হয়。
|
|
590
|
+
* - "fetch": লাইভ সিঙ্ক API এর মাধ্যমে ডাইনামিকভাবে ফেচ করা হয়।
|
|
591
|
+
*/
|
|
592
|
+
importMode: "static",
|
|
593
|
+
|
|
594
|
+
/**
|
|
595
|
+
* প্রজেক্টের সমস্ত ডিকশনারির জন্য ডিফল্ট মেসেজ ফরম্যাট。
|
|
596
|
+
* - 'intlayer': নেটিভ intlayer ফরম্যাট (ডিফল্ট)।
|
|
597
|
+
* - 'icu': ICU মেসেজ ফরম্যাট。
|
|
598
|
+
* - 'i18next': i18next ফরম্যাট。
|
|
599
|
+
* - 'vue-i18n': Vue I18n ফরম্যাট。
|
|
600
|
+
* - 'po': GNU Gettext PO ফরম্যাট।
|
|
601
|
+
*/
|
|
602
|
+
format: "icu",
|
|
603
|
+
},
|
|
604
|
+
|
|
605
|
+
/**
|
|
606
|
+
* প্লাগিন কনফিগারেশন।
|
|
607
|
+
*/
|
|
608
|
+
plugins: [
|
|
609
|
+
syncJSON({
|
|
610
|
+
format: "icu",
|
|
611
|
+
source: ({ locale }) => `./messages/${locale}.json`,
|
|
612
|
+
}),
|
|
613
|
+
],
|
|
582
614
|
};
|
|
583
615
|
|
|
584
616
|
export default config;
|
|
@@ -855,6 +887,7 @@ export default config;
|
|
|
855
887
|
| `contentAutoTransformation` | কন্টেন্ট স্ট্রিংগুলোকে স্বয়ংক্রিয়ভাবে টাইপ করা নোডে রূপান্তর করে (মার্কডাউন, HTML অথবা ইনসারশন)। | `boolean` | <br/> `{ markdown?: boolean; html?: boolean; insertion?: boolean }` | `false` | `true` | • মার্কডাউন : `### Title` → `md('### Title')` ।<br/>• HTML : `<div>Title</div>` → `html('<div>Title</div>')` ।<br/>• ইনসারশন : `Hello {{name}}` → `insert('Hello {{name}}')` । |
|
|
856
888
|
| `location` | ডিকশনারি ফাইলগুলো কোথায় সংরক্ষিত এবং সেগুলো CMS এর সাথে কীভাবে সিঙ্ক করা হয় তা নির্দেশ করে। | `'local'` | <br/> `'remote'` | <br/> `'hybrid'` | <br/> `'plugin'` | <br/> `string` | `'local'` | `'hybrid'` | • `'local'`: কেবল স্থানীয় ম্যানেজমেন্ট।<br/>• `'remote'`: কেবল দূরবর্তী ম্যানেজমেন্ট (CMS)।<br/>• `'hybrid'`: স্থানীয় এবং দূরবর্তী উভয় ম্যানেজমেন্ট।<br/>• `'plugin'` বা কাস্টম স্ট্রিং: প্লাগইন বা কাস্টম সোর্স দ্বারা ম্যানেজমেন্ট। |
|
|
857
889
|
| `importMode` | ডিকশনারি কীভাবে ইম্পোর্ট করা হয় তা নিয়ন্ত্রণ করে। | `'static'` | <br/> `'dynamic'` | <br/> `'fetch'` | `'static'` | `'dynamic'` | • `'static'`: স্ট্যাটিক ইম্পোর্ট।<br/>• `'dynamic'`: Suspense এর মাধ্যমে ডাইনামিক ইম্পোর্ট।<br/>• `'fetch'`: লাইভ সিঙ্ক API এর মাধ্যমে ফেচ; ব্যর্থ হলে `'dynamic'` এ ফলব্যাক।<br/>• `@intlayer/babel` এবং `@intlayer/swc` প্লাগইন প্রয়োজন।<br/>• কি (keys) গুলো স্ট্যাটিক্যালি ঘোষিত হতে হবে।<br/>• `optimize` বন্ধ থাকলে এটি উপেক্ষা করা হয়।<br/>• `getIntlayer`, `getDictionary` ইত্যাদিকে প্রভাবিত করে না। |
|
|
890
|
+
| `format` | প্রজেক্টের সমস্ত ডিকশনারির জন্য ডিফল্ট মেসেজ ফরম্যাট। | `'intlayer'` | <br/> `'icu'` | <br/> `'i18next'` | <br/> `'vue-i18n'` | <br/> `'po'` | `'intlayer'` | `'icu'` | • `'intlayer'`: নেটিভ intlayer ফরম্যাট।<br/>• `'icu'`: ICU মেসেজ ফরম্যাট।<br/>• `'i18next'`: i18next ফরম্যাট।<br/>• `'vue-i18n'`: Vue I18n ফরম্যাট।<br/>• `'po'`: GNU Gettext PO ফরম্যাট。 |
|
|
858
891
|
| `priority` | ডিকশনারি অগ্রাধিকার। ডিকশনারিগুলোর মধ্যে সংঘর্ষ সমাধানের সময় উচ্চতর মান নিম্নতর মানের ওপর বিজয়ী হয়। | `number` | `undefined` | `1` | |
|
|
859
892
|
| `live` | অপ্রচলিত - `importMode: 'fetch'` ব্যবহার করুন। ডিকশনারি কন্টেন্ট লাইভ সিঙ্ক API এর মাধ্যমে ডাইনামিকভাবে ফেচ করা হবে কি না তা নির্দেশ করা হতো। | `boolean` | `undefined` | | v8.0.0-এ এর নাম পরিবর্তন করে `importMode: 'fetch'` করা হয়েছে। |
|
|
860
893
|
| `schema` | JSON স্কিমা ভ্যালিডেশনের জন্য Intlayer দ্বারা স্বয়ংক্রিয়ভাবে জেনারেট করা। | `'https://intlayer.org/schema.json'` | অটো-জেনারেশন | | ম্যানুয়ালি এডিট করবেন না। |
|
package/docs/cs/cli/index.md
CHANGED
package/docs/cs/cli/scan.md
CHANGED
package/docs/cs/configuration.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-13
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-06-17
|
|
4
4
|
title: Konfigurace (Configuration)
|
|
5
5
|
description: Naučte se, jak nakonfigurovat Intlayer pro vaši aplikaci. Porozumějte různým nastavením a možnostem dostupným pro přizpůsobení Intlayer vašim potřebám.
|
|
6
6
|
keywords:
|
|
@@ -14,6 +14,9 @@ slugs:
|
|
|
14
14
|
- concept
|
|
15
15
|
- configuration
|
|
16
16
|
history:
|
|
17
|
+
- version: 8.10.0
|
|
18
|
+
date: 2026-06-17
|
|
19
|
+
changes: "Přidání možnosti `format` do konfigurace slovníku"
|
|
17
20
|
- version: 8.9.4
|
|
18
21
|
date: 2026-05-12
|
|
19
22
|
changes: "Přidána podpora pro poskytovatele LM Studio"
|
|
@@ -135,6 +138,7 @@ Intlayer přijímá formáty konfiguračních souborů JSON, JS, MJS a TS:
|
|
|
135
138
|
````typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
136
139
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
137
140
|
import { nextjsRewrite } from "intlayer/routing";
|
|
141
|
+
import { syncJSON } from "@intlayer/sync-json-plugin";
|
|
138
142
|
import { z } from "zod";
|
|
139
143
|
|
|
140
144
|
/**
|
|
@@ -582,10 +586,38 @@ const config: IntlayerConfig = {
|
|
|
582
586
|
}),
|
|
583
587
|
},
|
|
584
588
|
|
|
589
|
+
/**
|
|
590
|
+
* Konfigurace slovníku.
|
|
591
|
+
*/
|
|
592
|
+
dictionary: {
|
|
593
|
+
/**
|
|
594
|
+
* Řídí, jak se slovníky importují.
|
|
595
|
+
* - "static": Staticky importováno v době sestavení.
|
|
596
|
+
* - "dynamic": Dynamicky importováno pomocí Suspense.
|
|
597
|
+
* - "fetch": Dynamicky načteno přes API pro živou synchronizaci.
|
|
598
|
+
*/
|
|
599
|
+
importMode: "static",
|
|
600
|
+
|
|
601
|
+
/**
|
|
602
|
+
* Výchozí formát zpráv pro všechny slovníky v projektu.
|
|
603
|
+
* - 'intlayer': Nativní formát intlayer (výchozí).
|
|
604
|
+
* - 'icu': Formát zpráv ICU.
|
|
605
|
+
* - 'i18next': Formát i18next.
|
|
606
|
+
* - 'vue-i18n': Formát Vue I18n.
|
|
607
|
+
* - 'po': Formát GNU Gettext PO.
|
|
608
|
+
*/
|
|
609
|
+
format: "icu",
|
|
610
|
+
},
|
|
611
|
+
|
|
585
612
|
/**
|
|
586
613
|
* Konfigurace pluginů.
|
|
587
614
|
*/
|
|
588
|
-
plugins: [
|
|
615
|
+
plugins: [
|
|
616
|
+
syncJSON({
|
|
617
|
+
format: "icu",
|
|
618
|
+
source: ({ locale }) => `./messages/${locale}.json`,
|
|
619
|
+
}),
|
|
620
|
+
],
|
|
589
621
|
};
|
|
590
622
|
|
|
591
623
|
export default config;
|
|
@@ -862,6 +894,7 @@ Parametry ovládající operace se slovníky, včetně chování automatického
|
|
|
862
894
|
| `contentAutoTransformation` | Automaticky transformuje řetězce obsahu do typovaných uzlů (markdown, HTML nebo vložení). | `boolean` | <br/> `{ markdown?: boolean; html?: boolean; insertion?: boolean }` | `false` | `true` | • Markdown : `### Title` → `md('### Title')`.<br/>• HTML : `<div>Title</div>` → `html('<div>Title</div>')`.<br/>• Vložení : `Hello {{name}}` → `insert('Hello {{name}}')`. |
|
|
863
895
|
| `location` | Udává, kde jsou uloženy soubory slovníků a jak jsou synchronizovány s CMS. | `'local'` | <br/> `'remote'` | <br/> `'hybrid'` | <br/> `'plugin'` | <br/> `string` | `'local'` | `'hybrid'` | • `'local'`: správa pouze lokálně.<br/>• `'remote'`: správa pouze vzdáleně (CMS).<br/>• `'hybrid'`: správa lokálně i vzdáleně.<br/>• `'plugin'` nebo vlastní řetězec: správa pluginem nebo vlastním zdrojem. |
|
|
864
896
|
| `importMode` | Ovládá způsob importu slovníků. | `'static'` | <br/> `'dynamic'` | <br/> `'fetch'` | `'static'` | `'dynamic'` | • `'static'`: statický import.<br/>• `'dynamic'`: dynamický import přes Suspense.<br/>• `'fetch'`: načtení přes Live Sync API; odklad na `'dynamic'` při neúspěchu.<br/>• Vyžaduje pluginy `@intlayer/babel` a `@intlayer/swc`.<br/>• Klíče musí být deklarovány staticky.<br/>• Ignorováno, pokud je `optimize` vypnuto.<br/>• Neovlivňuje `getIntlayer`, `getDictionary` atd. |
|
|
897
|
+
| `format` | Výchozí formát zpráv pro všechny slovníky v projektu. | `'intlayer'` | <br/> `'icu'` | <br/> `'i18next'` | <br/> `'vue-i18n'` | <br/> `'po'` | `'intlayer'` | `'icu'` | • `'intlayer'`: Nativní formát intlayer.<br/>• `'icu'`: Formát zpráv ICU.<br/>• `'i18next'`: Formát i18next.<br/>• `'vue-i18n'`: Formát Vue I18n.<br/>• `'po'`: Formát GNU Gettext PO. |
|
|
865
898
|
| `priority` | Priorita slovníku. Vyšší hodnoty vítězí nad nižšími při řešení konfliktů mezi slovníky. | `number` | `undefined` | `1` | |
|
|
866
899
|
| `live` | Zastaralé - použijte `importMode: 'fetch'`. Udávalo, zda se má obsah slovníku načítat dynamicky přes Live Sync API. | `boolean` | `undefined` | | Přejmenováno na `importMode: 'fetch'` ve v8.0.0. |
|
|
867
900
|
| `schema` | Generováno automaticky Intlayerem pro validaci JSON schématu. | `'https://intlayer.org/schema.json'` | auto-generace | | Neupravujte ručně. |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-11
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-06-17
|
|
4
4
|
title: Dokument überprüfen
|
|
5
5
|
description: Erfahren Sie, wie Sie Dokumentationsdateien auf Qualität, Konsistenz und Vollständigkeit in verschiedenen Sprachversionen überprüfen.
|
|
6
6
|
keywords:
|
|
@@ -15,6 +15,10 @@ slugs:
|
|
|
15
15
|
- concept
|
|
16
16
|
- cli
|
|
17
17
|
- doc-review
|
|
18
|
+
history:
|
|
19
|
+
- version: 9.0.0
|
|
20
|
+
date: 2026-06-17
|
|
21
|
+
changes: "Option --log hinzufügen"
|
|
18
22
|
author: aymericzip
|
|
19
23
|
---
|
|
20
24
|
|
|
@@ -55,8 +59,110 @@ Für die meisten Anwendungsfälle,
|
|
|
55
59
|
|
|
56
60
|
## Argumente:
|
|
57
61
|
|
|
58
|
-
|
|
62
|
+
**Optionen für die Dateiliste:**
|
|
59
63
|
|
|
60
|
-
|
|
64
|
+
- **`--doc-pattern [docPattern...]`**: Glob-Muster, um Dokumentationsdateien zur Überprüfung auszuwählen.
|
|
61
65
|
|
|
62
|
-
|
|
66
|
+
> Beispiel: `npx intlayer doc review --doc-pattern "docs/**/*.md" "src/**/*.mdx"`
|
|
67
|
+
|
|
68
|
+
- **`--excluded-glob-pattern [excludedGlobPattern...]`**: Glob-Muster, die von der Überprüfung ausgeschlossen werden sollen.
|
|
69
|
+
|
|
70
|
+
> Beispiel: `npx intlayer doc review --excluded-glob-pattern "docs/internal/**"`
|
|
71
|
+
|
|
72
|
+
- **`--skip-if-modified-before [skipIfModifiedBefore]`**: Überspringe die Datei, wenn sie vor dem angegebenen Zeitpunkt geändert wurde.
|
|
73
|
+
- Kann eine absolute Zeit wie "2025-12-05" sein (String oder Date)
|
|
74
|
+
- Kann eine relative Zeit in ms sein `1 * 60 * 60 * 1000` (1 Stunde)
|
|
75
|
+
- Diese Option prüft die Aktualisierungszeit der Datei mit der Methode `fs.stat`. Daher kann sie durch Git oder andere Tools, die die Datei ändern, beeinflusst werden.
|
|
76
|
+
|
|
77
|
+
> Beispiel: `npx intlayer doc review --skip-if-modified-before "2025-12-05"`
|
|
78
|
+
|
|
79
|
+
- **`--skip-if-modified-after [skipIfModifiedAfter]`**: Überspringe die Datei, wenn sie innerhalb des angegebenen Zeitraums geändert wurde.
|
|
80
|
+
- Kann eine absolute Zeit wie "2025-12-05" sein (String oder Date)
|
|
81
|
+
- Kann eine relative Zeit in ms sein `1 * 60 * 60 * 1000` (1 Stunde)
|
|
82
|
+
- Diese Option prüft die Aktualisierungszeit der Datei mit der Methode `fs.stat`. Daher kann sie durch Git oder andere Tools, die die Datei ändern, beeinflusst werden.
|
|
83
|
+
|
|
84
|
+
> Beispiel: `npx intlayer doc review --skip-if-modified-after "2025-12-05"`
|
|
85
|
+
|
|
86
|
+
- **`--skip-if-exists`**: Überspringe die Datei, wenn sie bereits existiert.
|
|
87
|
+
|
|
88
|
+
> Beispiel: `npx intlayer doc review --skip-if-exists`
|
|
89
|
+
|
|
90
|
+
**Überprüfungsmodus-Optionen:**
|
|
91
|
+
|
|
92
|
+
- **`--log`**: Nur-Protokollierungsmodus. Nicht mit KI übersetzen; stattdessen die Blöcke, die Aufmerksamkeit erfordern (mit Zeilennummern und Inhalt), für die Basis- und Ziel-Locales protokollieren, um einem anderen Agenten bei der Generierung der Übersetzungen zu helfen.
|
|
93
|
+
|
|
94
|
+
> Beispiel: `npx intlayer doc review --log`
|
|
95
|
+
|
|
96
|
+
**Optionen für die Ausgabe der Einträge:**
|
|
97
|
+
|
|
98
|
+
- **`--locales [locales...]`**: Ziel-Lokalisierungen, für die die Dokumentation überprüft werden soll.
|
|
99
|
+
|
|
100
|
+
> Beispiel: `npx intlayer doc review --locales fr es de`
|
|
101
|
+
|
|
102
|
+
- **`--base-locale [baseLocale]`**: Quell-Lokalisierung (Basisdokument), mit der verglichen werden soll.
|
|
103
|
+
|
|
104
|
+
> Beispiel: `npx intlayer doc review --base-locale en`
|
|
105
|
+
|
|
106
|
+
**Optionen zur Dateiverarbeitung:**
|
|
107
|
+
|
|
108
|
+
- **`--nb-simultaneous-file-processed [nbSimultaneousFileProcessed]`**: Anzahl der Dateien, die gleichzeitig für die Überprüfung verarbeitet werden.
|
|
109
|
+
|
|
110
|
+
> Beispiel: `npx intlayer doc review --nb-simultaneous-file-processed 5`
|
|
111
|
+
|
|
112
|
+
**KI-Optionen:**
|
|
113
|
+
|
|
114
|
+
- **`--model [model]`**: Das für die Überprüfung zu verwendende KI-Modell (z. B. `gpt-3.5-turbo`).
|
|
115
|
+
- **`--provider [provider]`**: Der für die Überprüfung zu verwendende KI-Anbieter.
|
|
116
|
+
- **`--temperature [temperature]`**: Temperatureinstellung für das KI-Modell.
|
|
117
|
+
- **`--api-key [apiKey]`**: Eigener API-Schlüssel für den KI-Dienst.
|
|
118
|
+
- **`--application-context [applicationContext]`**: Zusätzlicher Kontext für die KI-Überprüfung.
|
|
119
|
+
- **`--data-serialization [dataSerialization]`**: Das Datenserialisierungsformat für die KI-Funktionen von Intlayer. Optionen: `json` (Standard, zuverlässig), `toon` (weniger Token, weniger konsistent).
|
|
120
|
+
- **`--custom-prompt [prompt]`**: Passen Sie den Basis-Prompt an, der für die Überprüfung verwendet wird. (Hinweis: Für die meisten Anwendungsfälle wird stattdessen die Option `--custom-instructions` empfohlen, da sie eine bessere Kontrolle bietet.)
|
|
121
|
+
|
|
122
|
+
> Beispiel: `npx intlayer doc review --model deepseek-chat --provider deepseek --temperature 0.5 --api-key sk-1234567890 --application-context "Meine Anwendung ist ein Katzenladen"`
|
|
123
|
+
|
|
124
|
+
**Optionen für Umgebungsvariablen:**
|
|
125
|
+
|
|
126
|
+
- **`--env`**: Geben Sie die Umgebung an (z. B. `development`, `production`).
|
|
127
|
+
- **`--env-file [envFile]`**: Geben Sie eine benutzerdefinierte Umgebungsdatei an, aus der Variablen geladen werden.
|
|
128
|
+
- **`--base-dir`**: Geben Sie das Basisverzeichnis für das Projekt an.
|
|
129
|
+
- **`--no-cache`**: Deaktivieren Sie den Cache.
|
|
130
|
+
|
|
131
|
+
> Beispiel: `npx intlayer doc review --base-dir ./docs --env-file .env.production.local`
|
|
132
|
+
|
|
133
|
+
**Protokollierungsoptionen:**
|
|
134
|
+
|
|
135
|
+
- **`--verbose`**: Aktiviert ausführliche Protokollierung zur Fehlerbehebung. (Standardmäßig über CLI auf true gesetzt)
|
|
136
|
+
|
|
137
|
+
> Beispiel: `npx intlayer doc review --verbose`
|
|
138
|
+
|
|
139
|
+
**Optionen für benutzerdefinierte Anweisungen:**
|
|
140
|
+
|
|
141
|
+
- **`--custom-instructions [customInstructions]`**: Benutzerdefinierte Anweisungen, die dem Prompt hinzugefügt werden. Nützlich, um spezifische Regeln bezüglich Formatierung, URL-Übersetzung usw. anzuwenden.
|
|
142
|
+
|
|
143
|
+
> Beispiel: `npx intlayer doc review --custom-instructions "URLs nicht übersetzen und das Markdown-Format beibehalten"`
|
|
144
|
+
|
|
145
|
+
> Beispiel: `npx intlayer doc review --custom-instructions "$(cat ./instructions.md)"`
|
|
146
|
+
|
|
147
|
+
**Git-Optionen:**
|
|
148
|
+
|
|
149
|
+
- **`--git-diff`**: Nur auf Dateien anwenden, die Änderungen vom Basis-Branch (Standard `origin/main`) zum aktuellen Branch (Standard: `HEAD`) enthalten.
|
|
150
|
+
- **`--git-diff-base`**: Basis-Referenz für den Git-Diff angeben (Standard `origin/main`).
|
|
151
|
+
- **`--git-diff-current`**: Aktuelle Referenz für den Git-Diff angeben (Standard: `HEAD`).
|
|
152
|
+
- **`--uncommitted`**: Uncommittete Änderungen einbeziehen.
|
|
153
|
+
- **`--unpushed`**: Nicht gepushte Änderungen einbeziehen.
|
|
154
|
+
- **`--untracked`**: Nicht verfolgte Dateien einbeziehen.
|
|
155
|
+
|
|
156
|
+
> Beispiel: `npx intlayer doc review --git-diff --git-diff-base origin/main --git-diff-current HEAD`
|
|
157
|
+
|
|
158
|
+
> Beispiel: `npx intlayer doc review --uncommitted --unpushed --untracked`
|
|
159
|
+
|
|
160
|
+
> Beachten Sie, dass der Ausgabepfad der Datei durch Ersetzen der folgenden Muster bestimmt wird:
|
|
161
|
+
>
|
|
162
|
+
> - `/{{baseLocale}}/` durch `/{{locale}}/` (Unix)
|
|
163
|
+
> - `\{{baseLocale}}\` durch `\{{locale}}\` (Windows)
|
|
164
|
+
> - `_{{baseLocale}}.` durch `_{{locale}}.`
|
|
165
|
+
> - `{{baseLocale}}_` durch `{{locale}}_`
|
|
166
|
+
> - `.{{baseLocaleName}}.` durch `.{{localeName}}.`
|
|
167
|
+
>
|
|
168
|
+
> Wenn das Muster nicht gefunden wird, wird die Ausgabedatei die Endung `.{{locale}}` erhalten. `./my/file.md` wird überprüft und für die französische Locale zu `./my/file.fr.md` aktualisiert.
|
package/docs/de/cli/index.md
CHANGED