@intlayer/docs 8.12.5-canary.0 → 9.0.0-canary.2
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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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
|
@@ -83,7 +83,10 @@ export default carEnumeration;
|
|
|
83
83
|
|
|
84
84
|
## Використання перерахувань з React Intlayer
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
<Tabs group="framework">
|
|
87
|
+
<Tab label="React" value="react">
|
|
88
|
+
|
|
89
|
+
To use enumeration in a React component, you can leverage the `useIntlayer` hook from the `react-intlayer` package. This hook retrieves the correct content based on the specified ID. Here's an example of how to use it:
|
|
87
90
|
|
|
88
91
|
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
89
92
|
import type { FC } from "react";
|
|
@@ -96,22 +99,22 @@ const CarComponent: FC = () => {
|
|
|
96
99
|
<div>
|
|
97
100
|
<p>
|
|
98
101
|
{
|
|
99
|
-
numberOfCar(0) //
|
|
102
|
+
numberOfCar(0) // Output: No cars
|
|
100
103
|
}
|
|
101
104
|
</p>
|
|
102
105
|
<p>
|
|
103
106
|
{
|
|
104
|
-
numberOfCar(6) //
|
|
107
|
+
numberOfCar(6) // Output: Some cars
|
|
105
108
|
}
|
|
106
109
|
</p>
|
|
107
110
|
<p>
|
|
108
111
|
{
|
|
109
|
-
numberOfCar(20) //
|
|
112
|
+
numberOfCar(20) // Output: Many cars
|
|
110
113
|
}
|
|
111
114
|
</p>
|
|
112
115
|
<p>
|
|
113
116
|
{
|
|
114
|
-
numberOfCar(0.01) //
|
|
117
|
+
numberOfCar(0.01) // Output: Fallback value
|
|
115
118
|
}
|
|
116
119
|
</p>
|
|
117
120
|
</div>
|
|
@@ -119,7 +122,152 @@ const CarComponent: FC = () => {
|
|
|
119
122
|
};
|
|
120
123
|
```
|
|
121
124
|
|
|
122
|
-
|
|
125
|
+
</Tab>
|
|
126
|
+
<Tab label="Next.js" value="nextjs">
|
|
127
|
+
|
|
128
|
+
To use enumeration in Next.js Client Components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
129
|
+
|
|
130
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
131
|
+
"use client";
|
|
132
|
+
|
|
133
|
+
import type { FC } from "react";
|
|
134
|
+
import { useIntlayer } from "next-intlayer";
|
|
135
|
+
|
|
136
|
+
const CarComponent: FC = () => {
|
|
137
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
138
|
+
|
|
139
|
+
return (
|
|
140
|
+
<div>
|
|
141
|
+
<p>{numberOfCar(6)}</p>
|
|
142
|
+
</div>
|
|
143
|
+
);
|
|
144
|
+
};
|
|
145
|
+
|
|
146
|
+
export default CarComponent;
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
</Tab>
|
|
150
|
+
<Tab label="Vue" value="vue">
|
|
151
|
+
|
|
152
|
+
To use enumeration in Vue components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
153
|
+
|
|
154
|
+
```vue fileName="**/*.vue"
|
|
155
|
+
<script setup lang="ts">
|
|
156
|
+
import { useIntlayer } from "vue-intlayer";
|
|
157
|
+
|
|
158
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
159
|
+
</script>
|
|
160
|
+
|
|
161
|
+
<template>
|
|
162
|
+
<div>
|
|
163
|
+
<p>{{ numberOfCar(6) }}</p>
|
|
164
|
+
</div>
|
|
165
|
+
</template>
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
</Tab>
|
|
169
|
+
<Tab label="Svelte" value="svelte">
|
|
170
|
+
|
|
171
|
+
To use enumeration in Svelte components, retrieve it via the `useIntlayer` hook. The store is accessed with `$`. Here's an example:
|
|
172
|
+
|
|
173
|
+
```svelte fileName="**/*.svelte"
|
|
174
|
+
<script lang="ts">
|
|
175
|
+
import { useIntlayer } from "svelte-intlayer";
|
|
176
|
+
|
|
177
|
+
const content = useIntlayer("car_count");
|
|
178
|
+
</script>
|
|
179
|
+
|
|
180
|
+
<div>
|
|
181
|
+
<p>{$content.numberOfCar(6)}</p>
|
|
182
|
+
</div>
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
</Tab>
|
|
186
|
+
<Tab label="Preact" value="preact">
|
|
187
|
+
|
|
188
|
+
To use enumeration in Preact components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
189
|
+
|
|
190
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
191
|
+
import type { FC } from "preact";
|
|
192
|
+
import { useIntlayer } from "preact-intlayer";
|
|
193
|
+
|
|
194
|
+
const CarComponent: FC = () => {
|
|
195
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
196
|
+
|
|
197
|
+
return (
|
|
198
|
+
<div>
|
|
199
|
+
<p>{numberOfCar(6)}</p>
|
|
200
|
+
</div>
|
|
201
|
+
);
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
export default CarComponent;
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
</Tab>
|
|
208
|
+
<Tab label="Solid" value="solid">
|
|
209
|
+
|
|
210
|
+
To use enumeration in SolidJS components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
211
|
+
|
|
212
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
213
|
+
import type { Component } from "solid-js";
|
|
214
|
+
import { useIntlayer } from "solid-intlayer";
|
|
215
|
+
|
|
216
|
+
const CarComponent: Component = () => {
|
|
217
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
218
|
+
|
|
219
|
+
return (
|
|
220
|
+
<div>
|
|
221
|
+
<p>{numberOfCar(6)}</p>
|
|
222
|
+
</div>
|
|
223
|
+
);
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
export default CarComponent;
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
</Tab>
|
|
230
|
+
<Tab label="Angular" value="angular">
|
|
231
|
+
|
|
232
|
+
To use enumeration in Angular components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
233
|
+
|
|
234
|
+
```typescript fileName="app.component.ts" codeFormat="typescript"
|
|
235
|
+
import { Component } from "@angular/core";
|
|
236
|
+
import { useIntlayer } from "angular-intlayer";
|
|
237
|
+
|
|
238
|
+
@Component({
|
|
239
|
+
selector: "app-car",
|
|
240
|
+
template: `
|
|
241
|
+
<div>
|
|
242
|
+
<p>{{ content().numberOfCar(6) }}</p>
|
|
243
|
+
</div>
|
|
244
|
+
`,
|
|
245
|
+
})
|
|
246
|
+
export class CarComponent {
|
|
247
|
+
content = useIntlayer("car_count");
|
|
248
|
+
}
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
</Tab>
|
|
252
|
+
<Tab label="Vanilla JS" value="vanilla">
|
|
253
|
+
|
|
254
|
+
To use enumeration with `vanilla-intlayer`, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
255
|
+
|
|
256
|
+
```typescript fileName="**/*.ts" codeFormat={["typescript", "esm"]}
|
|
257
|
+
import { installIntlayer, useIntlayer } from "vanilla-intlayer";
|
|
258
|
+
|
|
259
|
+
installIntlayer();
|
|
260
|
+
|
|
261
|
+
const content = useIntlayer("car_count").onChange((newContent) => {
|
|
262
|
+
document.getElementById("cars")!.textContent = newContent.numberOfCar(6);
|
|
263
|
+
});
|
|
264
|
+
|
|
265
|
+
// Initial render
|
|
266
|
+
document.getElementById("cars")!.textContent = content.numberOfCar(6);
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
</Tab>
|
|
270
|
+
</Tabs>
|
|
123
271
|
|
|
124
272
|
## Додаткові ресурси
|
|
125
273
|
|
|
@@ -130,3 +278,389 @@ const CarComponent: FC = () => {
|
|
|
130
278
|
- [Документація Intlayer для Next.js](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_with_nextjs_15.md)
|
|
131
279
|
|
|
132
280
|
Ці ресурси надають додаткову інформацію про налаштування та використання Intlayer в різних середовищах і з різними фреймворками.
|
|
281
|
+
|
|
282
|
+
### Using Ordinal Enumeration
|
|
283
|
+
|
|
284
|
+
<Tabs group="framework">
|
|
285
|
+
<Tab label="React" value="react">
|
|
286
|
+
|
|
287
|
+
To use this in a React component, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
288
|
+
|
|
289
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
290
|
+
import type { FC } from "react";
|
|
291
|
+
import { useIntlayer } from "react-intlayer";
|
|
292
|
+
|
|
293
|
+
const RankingComponent: FC<{ count: number }> = ({ count }) => {
|
|
294
|
+
const { ordinal } = useIntlayer("ranking_component");
|
|
295
|
+
|
|
296
|
+
// Get the last digit to determine the correct suffix
|
|
297
|
+
const lastDigit = Math.abs(count) % 10;
|
|
298
|
+
|
|
299
|
+
return (
|
|
300
|
+
<div>
|
|
301
|
+
<p>
|
|
302
|
+
{
|
|
303
|
+
ordinal(lastDigit)({ count }) // e.g., "5th place" for count=5
|
|
304
|
+
}
|
|
305
|
+
</p>
|
|
306
|
+
</div>
|
|
307
|
+
);
|
|
308
|
+
};
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
</Tab>
|
|
312
|
+
<Tab label="Next.js" value="nextjs">
|
|
313
|
+
|
|
314
|
+
To use this in Next.js Client Components, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
315
|
+
|
|
316
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
317
|
+
"use client";
|
|
318
|
+
|
|
319
|
+
import type { FC } from "react";
|
|
320
|
+
import { useIntlayer } from "next-intlayer";
|
|
321
|
+
|
|
322
|
+
const RankingComponent: FC<{ count: number }> = ({ count }) => {
|
|
323
|
+
const { ordinal } = useIntlayer("ranking_component");
|
|
324
|
+
const lastDigit = Math.abs(count) % 10;
|
|
325
|
+
|
|
326
|
+
return (
|
|
327
|
+
<div>
|
|
328
|
+
<p>{ordinal(lastDigit)({ count })}</p>
|
|
329
|
+
</div>
|
|
330
|
+
);
|
|
331
|
+
};
|
|
332
|
+
|
|
333
|
+
export default RankingComponent;
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
</Tab>
|
|
337
|
+
<Tab label="Vue" value="vue">
|
|
338
|
+
|
|
339
|
+
To use this in Vue components, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
340
|
+
|
|
341
|
+
```vue fileName="**/*.vue"
|
|
342
|
+
<script setup lang="ts">
|
|
343
|
+
import { useIntlayer } from "vue-intlayer";
|
|
344
|
+
|
|
345
|
+
defineProps<{ count: number }>();
|
|
346
|
+
|
|
347
|
+
const { ordinal } = useIntlayer("ranking_component");
|
|
348
|
+
</script>
|
|
349
|
+
|
|
350
|
+
<template>
|
|
351
|
+
<div>
|
|
352
|
+
<p>{{ ordinal(Math.abs(count) % 10)({ count }) }}</p>
|
|
353
|
+
</div>
|
|
354
|
+
</template>
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
</Tab>
|
|
358
|
+
<Tab label="Svelte" value="svelte">
|
|
359
|
+
|
|
360
|
+
To use this in Svelte components, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
361
|
+
|
|
362
|
+
```svelte fileName="**/*.svelte"
|
|
363
|
+
<script lang="ts">
|
|
364
|
+
import { useIntlayer } from "svelte-intlayer";
|
|
365
|
+
|
|
366
|
+
export let count: number;
|
|
367
|
+
|
|
368
|
+
const content = useIntlayer("ranking_component");
|
|
369
|
+
$: lastDigit = Math.abs(count) % 10;
|
|
370
|
+
</script>
|
|
371
|
+
|
|
372
|
+
<div>
|
|
373
|
+
<p>{$content.ordinal(lastDigit)({ count })}</p>
|
|
374
|
+
</div>
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
</Tab>
|
|
378
|
+
<Tab label="Preact" value="preact">
|
|
379
|
+
|
|
380
|
+
To use this in Preact components, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
381
|
+
|
|
382
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
383
|
+
import type { FC } from "preact";
|
|
384
|
+
import { useIntlayer } from "preact-intlayer";
|
|
385
|
+
|
|
386
|
+
const RankingComponent: FC<{ count: number }> = ({ count }) => {
|
|
387
|
+
const { ordinal } = useIntlayer("ranking_component");
|
|
388
|
+
const lastDigit = Math.abs(count) % 10;
|
|
389
|
+
|
|
390
|
+
return (
|
|
391
|
+
<div>
|
|
392
|
+
<p>{ordinal(lastDigit)({ count })}</p>
|
|
393
|
+
</div>
|
|
394
|
+
);
|
|
395
|
+
};
|
|
396
|
+
|
|
397
|
+
export default RankingComponent;
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
</Tab>
|
|
401
|
+
<Tab label="Solid" value="solid">
|
|
402
|
+
|
|
403
|
+
To use this in SolidJS components, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
404
|
+
|
|
405
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
406
|
+
import type { Component } from "solid-js";
|
|
407
|
+
import { useIntlayer } from "solid-intlayer";
|
|
408
|
+
|
|
409
|
+
const RankingComponent: Component<{ count: number }> = (props) => {
|
|
410
|
+
const { ordinal } = useIntlayer("ranking_component");
|
|
411
|
+
|
|
412
|
+
return (
|
|
413
|
+
<div>
|
|
414
|
+
<p>{ordinal(Math.abs(props.count) % 10)({ count: props.count })}</p>
|
|
415
|
+
</div>
|
|
416
|
+
);
|
|
417
|
+
};
|
|
418
|
+
|
|
419
|
+
export default RankingComponent;
|
|
420
|
+
```
|
|
421
|
+
|
|
422
|
+
</Tab>
|
|
423
|
+
<Tab label="Angular" value="angular">
|
|
424
|
+
|
|
425
|
+
To use this in Angular components, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
426
|
+
|
|
427
|
+
```typescript fileName="app.component.ts" codeFormat="typescript"
|
|
428
|
+
import { Component, Input } from "@angular/core";
|
|
429
|
+
import { useIntlayer } from "angular-intlayer";
|
|
430
|
+
|
|
431
|
+
@Component({
|
|
432
|
+
selector: "app-ranking",
|
|
433
|
+
template: `
|
|
434
|
+
<div>
|
|
435
|
+
<p>{{ content().ordinal(lastDigit())({ count }) }}</p>
|
|
436
|
+
</div>
|
|
437
|
+
`,
|
|
438
|
+
})
|
|
439
|
+
export class RankingComponent {
|
|
440
|
+
@Input() count!: number;
|
|
441
|
+
|
|
442
|
+
content = useIntlayer("ranking_component");
|
|
443
|
+
|
|
444
|
+
lastDigit() {
|
|
445
|
+
return Math.abs(this.count) % 10;
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
```
|
|
449
|
+
|
|
450
|
+
</Tab>
|
|
451
|
+
<Tab label="Vanilla JS" value="vanilla">
|
|
452
|
+
|
|
453
|
+
To use this with `vanilla-intlayer`, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:
|
|
454
|
+
|
|
455
|
+
```typescript fileName="**/*.ts" codeFormat={["typescript", "esm"]}
|
|
456
|
+
import { installIntlayer, useIntlayer } from "vanilla-intlayer";
|
|
457
|
+
|
|
458
|
+
installIntlayer();
|
|
459
|
+
|
|
460
|
+
const content = useIntlayer("ranking_component");
|
|
461
|
+
const lastDigit = Math.abs(5) % 10;
|
|
462
|
+
|
|
463
|
+
document.getElementById("ranking")!.textContent = content.ordinal(lastDigit)({
|
|
464
|
+
count: 5,
|
|
465
|
+
});
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
</Tab>
|
|
469
|
+
</Tabs>
|
|
470
|
+
|
|
471
|
+
## Combining Enumeration with Insert for Ordinal Numbers
|
|
472
|
+
|
|
473
|
+
<Tabs group="framework">
|
|
474
|
+
<Tab label="React" value="react">
|
|
475
|
+
|
|
476
|
+
To use enumeration in a React component, you can leverage the `useIntlayer` hook from the `react-intlayer` package. This hook retrieves the correct content based on the specified ID. Here's an example of how to use it:
|
|
477
|
+
|
|
478
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
479
|
+
import type { FC } from "react";
|
|
480
|
+
import { useIntlayer } from "react-intlayer";
|
|
481
|
+
|
|
482
|
+
const CarComponent: FC = () => {
|
|
483
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
484
|
+
|
|
485
|
+
return (
|
|
486
|
+
<div>
|
|
487
|
+
<p>
|
|
488
|
+
{
|
|
489
|
+
numberOfCar(0) // Output: No cars
|
|
490
|
+
}
|
|
491
|
+
</p>
|
|
492
|
+
<p>
|
|
493
|
+
{
|
|
494
|
+
numberOfCar(6) // Output: Some cars
|
|
495
|
+
}
|
|
496
|
+
</p>
|
|
497
|
+
<p>
|
|
498
|
+
{
|
|
499
|
+
numberOfCar(20) // Output: Many cars
|
|
500
|
+
}
|
|
501
|
+
</p>
|
|
502
|
+
<p>
|
|
503
|
+
{
|
|
504
|
+
numberOfCar(0.01) // Output: Fallback value
|
|
505
|
+
}
|
|
506
|
+
</p>
|
|
507
|
+
</div>
|
|
508
|
+
);
|
|
509
|
+
};
|
|
510
|
+
```
|
|
511
|
+
|
|
512
|
+
</Tab>
|
|
513
|
+
<Tab label="Next.js" value="nextjs">
|
|
514
|
+
|
|
515
|
+
To use enumeration in Next.js Client Components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
516
|
+
|
|
517
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
518
|
+
"use client";
|
|
519
|
+
|
|
520
|
+
import type { FC } from "react";
|
|
521
|
+
import { useIntlayer } from "next-intlayer";
|
|
522
|
+
|
|
523
|
+
const CarComponent: FC = () => {
|
|
524
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
525
|
+
|
|
526
|
+
return (
|
|
527
|
+
<div>
|
|
528
|
+
<p>{numberOfCar(6)}</p>
|
|
529
|
+
</div>
|
|
530
|
+
);
|
|
531
|
+
};
|
|
532
|
+
|
|
533
|
+
export default CarComponent;
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
</Tab>
|
|
537
|
+
<Tab label="Vue" value="vue">
|
|
538
|
+
|
|
539
|
+
To use enumeration in Vue components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
540
|
+
|
|
541
|
+
```vue fileName="**/*.vue"
|
|
542
|
+
<script setup lang="ts">
|
|
543
|
+
import { useIntlayer } from "vue-intlayer";
|
|
544
|
+
|
|
545
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
546
|
+
</script>
|
|
547
|
+
|
|
548
|
+
<template>
|
|
549
|
+
<div>
|
|
550
|
+
<p>{{ numberOfCar(6) }}</p>
|
|
551
|
+
</div>
|
|
552
|
+
</template>
|
|
553
|
+
```
|
|
554
|
+
|
|
555
|
+
</Tab>
|
|
556
|
+
<Tab label="Svelte" value="svelte">
|
|
557
|
+
|
|
558
|
+
To use enumeration in Svelte components, retrieve it via the `useIntlayer` hook. The store is accessed with `$`. Here's an example:
|
|
559
|
+
|
|
560
|
+
```svelte fileName="**/*.svelte"
|
|
561
|
+
<script lang="ts">
|
|
562
|
+
import { useIntlayer } from "svelte-intlayer";
|
|
563
|
+
|
|
564
|
+
const content = useIntlayer("car_count");
|
|
565
|
+
</script>
|
|
566
|
+
|
|
567
|
+
<div>
|
|
568
|
+
<p>{$content.numberOfCar(6)}</p>
|
|
569
|
+
</div>
|
|
570
|
+
```
|
|
571
|
+
|
|
572
|
+
</Tab>
|
|
573
|
+
<Tab label="Preact" value="preact">
|
|
574
|
+
|
|
575
|
+
To use enumeration in Preact components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
576
|
+
|
|
577
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
578
|
+
import type { FC } from "preact";
|
|
579
|
+
import { useIntlayer } from "preact-intlayer";
|
|
580
|
+
|
|
581
|
+
const CarComponent: FC = () => {
|
|
582
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
583
|
+
|
|
584
|
+
return (
|
|
585
|
+
<div>
|
|
586
|
+
<p>{numberOfCar(6)}</p>
|
|
587
|
+
</div>
|
|
588
|
+
);
|
|
589
|
+
};
|
|
590
|
+
|
|
591
|
+
export default CarComponent;
|
|
592
|
+
```
|
|
593
|
+
|
|
594
|
+
</Tab>
|
|
595
|
+
<Tab label="Solid" value="solid">
|
|
596
|
+
|
|
597
|
+
To use enumeration in SolidJS components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
598
|
+
|
|
599
|
+
```tsx fileName="**/*.tsx" codeFormat={["typescript", "esm"]}
|
|
600
|
+
import type { Component } from "solid-js";
|
|
601
|
+
import { useIntlayer } from "solid-intlayer";
|
|
602
|
+
|
|
603
|
+
const CarComponent: Component = () => {
|
|
604
|
+
const { numberOfCar } = useIntlayer("car_count");
|
|
605
|
+
|
|
606
|
+
return (
|
|
607
|
+
<div>
|
|
608
|
+
<p>{numberOfCar(6)}</p>
|
|
609
|
+
</div>
|
|
610
|
+
);
|
|
611
|
+
};
|
|
612
|
+
|
|
613
|
+
export default CarComponent;
|
|
614
|
+
```
|
|
615
|
+
|
|
616
|
+
</Tab>
|
|
617
|
+
<Tab label="Angular" value="angular">
|
|
618
|
+
|
|
619
|
+
To use enumeration in Angular components, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
620
|
+
|
|
621
|
+
```typescript fileName="app.component.ts" codeFormat="typescript"
|
|
622
|
+
import { Component } from "@angular/core";
|
|
623
|
+
import { useIntlayer } from "angular-intlayer";
|
|
624
|
+
|
|
625
|
+
@Component({
|
|
626
|
+
selector: "app-car",
|
|
627
|
+
template: `
|
|
628
|
+
<div>
|
|
629
|
+
<p>{{ content().numberOfCar(6) }}</p>
|
|
630
|
+
</div>
|
|
631
|
+
`,
|
|
632
|
+
})
|
|
633
|
+
export class CarComponent {
|
|
634
|
+
content = useIntlayer("car_count");
|
|
635
|
+
}
|
|
636
|
+
```
|
|
637
|
+
|
|
638
|
+
</Tab>
|
|
639
|
+
<Tab label="Vanilla JS" value="vanilla">
|
|
640
|
+
|
|
641
|
+
To use enumeration with `vanilla-intlayer`, retrieve it via the `useIntlayer` hook. Here's an example:
|
|
642
|
+
|
|
643
|
+
```typescript fileName="**/*.ts" codeFormat={["typescript", "esm"]}
|
|
644
|
+
import { installIntlayer, useIntlayer } from "vanilla-intlayer";
|
|
645
|
+
|
|
646
|
+
installIntlayer();
|
|
647
|
+
|
|
648
|
+
const content = useIntlayer("car_count").onChange((newContent) => {
|
|
649
|
+
document.getElementById("cars")!.textContent = newContent.numberOfCar(6);
|
|
650
|
+
});
|
|
651
|
+
|
|
652
|
+
// Initial render
|
|
653
|
+
document.getElementById("cars")!.textContent = content.numberOfCar(6);
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
</Tab>
|
|
657
|
+
</Tabs>
|
|
658
|
+
## Additional Resources
|
|
659
|
+
|
|
660
|
+
For more detailed information on configuration and usage, refer to the following resources:
|
|
661
|
+
|
|
662
|
+
- [Intlayer CLI Documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/index.md)
|
|
663
|
+
- [React Intlayer Documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_create_react_app.md)
|
|
664
|
+
- [Next Intlayer Documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_15.md)
|
|
665
|
+
|
|
666
|
+
These resources provide further insights into the setup and usage of Intlayer in different environments and with various frameworks.
|