@intlayer/docs 8.12.5-canary.0 → 9.0.0-canary.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/intlayer_with_i18next.md +24 -4
- package/blog/ar/intlayer_with_next-i18next.md +20 -15
- package/blog/ar/intlayer_with_next-intl.md +24 -4
- package/blog/ar/intlayer_with_react-i18next.md +20 -4
- package/blog/ar/intlayer_with_react-intl.md +20 -4
- package/blog/ar/intlayer_with_vue-i18n.md +20 -4
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +35 -28
- package/blog/ar/rag_powered_documentation_assistant.md +13 -0
- package/blog/ar/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/ar/vue-i18n_vs_intlayer.md +8 -0
- package/blog/de/intlayer_with_i18next.md +34 -6
- package/blog/de/intlayer_with_next-i18next.md +30 -17
- package/blog/de/intlayer_with_next-intl.md +37 -7
- package/blog/de/intlayer_with_react-i18next.md +33 -7
- package/blog/de/intlayer_with_react-intl.md +33 -7
- package/blog/de/intlayer_with_vue-i18n.md +33 -7
- package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
- package/blog/de/rag_powered_documentation_assistant.md +0 -193
- package/blog/de/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/de/vue-i18n_vs_intlayer.md +8 -0
- package/blog/en/intlayer_with_i18next.md +20 -4
- package/blog/en/intlayer_with_next-i18next.md +20 -4
- package/blog/en/intlayer_with_next-intl.md +20 -4
- package/blog/en/intlayer_with_react-i18next.md +20 -4
- package/blog/en/intlayer_with_react-intl.md +20 -4
- package/blog/en/intlayer_with_vue-i18n.md +20 -4
- package/blog/en-GB/intlayer_with_i18next.md +24 -4
- package/blog/en-GB/intlayer_with_next-i18next.md +20 -15
- package/blog/en-GB/intlayer_with_next-intl.md +24 -4
- package/blog/en-GB/intlayer_with_react-i18next.md +20 -4
- package/blog/en-GB/intlayer_with_react-intl.md +20 -4
- package/blog/en-GB/intlayer_with_vue-i18n.md +20 -4
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/en-GB/react-i18next_vs_react-intl_vs_intlayer.md +14 -0
- package/blog/en-GB/vue-i18n_vs_intlayer.md +16 -0
- package/blog/es/intlayer_with_i18next.md +24 -4
- package/blog/es/intlayer_with_next-i18next.md +20 -15
- package/blog/es/intlayer_with_next-intl.md +24 -4
- package/blog/es/intlayer_with_react-i18next.md +20 -4
- package/blog/es/intlayer_with_react-intl.md +20 -4
- package/blog/es/intlayer_with_vue-i18n.md +20 -4
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/es/rag_powered_documentation_assistant.md +13 -0
- package/blog/es/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/es/vue-i18n_vs_intlayer.md +8 -0
- package/blog/fr/i18n_meaning.md +95 -0
- package/blog/fr/intlayer_with_i18next.md +20 -4
- package/blog/fr/intlayer_with_next-i18next.md +20 -15
- package/blog/fr/intlayer_with_next-intl.md +24 -4
- package/blog/fr/intlayer_with_react-i18next.md +20 -12
- package/blog/fr/intlayer_with_react-intl.md +20 -4
- package/blog/fr/intlayer_with_vue-i18n.md +20 -4
- package/blog/fr/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/fr/rag_powered_documentation_assistant.md +0 -62
- package/blog/fr/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/fr/vue-i18n_vs_intlayer.md +8 -0
- package/blog/hi/intlayer_with_i18next.md +24 -4
- package/blog/hi/intlayer_with_next-i18next.md +20 -15
- package/blog/hi/intlayer_with_next-intl.md +24 -4
- package/blog/hi/intlayer_with_react-i18next.md +20 -4
- package/blog/hi/intlayer_with_react-intl.md +20 -4
- package/blog/hi/intlayer_with_vue-i18n.md +20 -4
- package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +1256 -0
- package/blog/hi/rag_powered_documentation_assistant.md +13 -0
- package/blog/hi/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/hi/vue-i18n_vs_intlayer.md +8 -0
- package/blog/id/internationalization_and_SEO.md +0 -91
- package/blog/id/intlayer_with_i18next.md +24 -4
- package/blog/id/intlayer_with_next-i18next.md +20 -15
- package/blog/id/intlayer_with_next-intl.md +24 -4
- package/blog/id/intlayer_with_react-i18next.md +20 -4
- package/blog/id/intlayer_with_react-intl.md +20 -4
- package/blog/id/intlayer_with_vue-i18n.md +20 -4
- package/blog/id/rag_powered_documentation_assistant.md +13 -0
- package/blog/it/intlayer_with_i18next.md +37 -7
- package/blog/it/intlayer_with_next-i18next.md +33 -18
- package/blog/it/intlayer_with_next-intl.md +37 -7
- package/blog/it/intlayer_with_react-i18next.md +33 -7
- package/blog/it/intlayer_with_react-intl.md +33 -7
- package/blog/it/intlayer_with_vue-i18n.md +33 -7
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
- package/blog/it/rag_powered_documentation_assistant.md +0 -195
- package/blog/it/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/it/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ja/intlayer_with_i18next.md +24 -4
- package/blog/ja/intlayer_with_next-i18next.md +20 -15
- package/blog/ja/intlayer_with_next-intl.md +24 -4
- package/blog/ja/intlayer_with_react-i18next.md +20 -4
- package/blog/ja/intlayer_with_react-intl.md +20 -4
- package/blog/ja/intlayer_with_vue-i18n.md +20 -4
- package/blog/ja/l10n_platform_alternative/Lokalise.md +10 -0
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +121 -26
- package/blog/ja/rag_powered_documentation_assistant.md +13 -0
- package/blog/ja/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/ja/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ko/intlayer_with_i18next.md +37 -7
- package/blog/ko/intlayer_with_next-i18next.md +33 -18
- package/blog/ko/intlayer_with_next-intl.md +37 -7
- package/blog/ko/intlayer_with_react-i18next.md +33 -7
- package/blog/ko/intlayer_with_react-intl.md +33 -7
- package/blog/ko/intlayer_with_vue-i18n.md +33 -7
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +121 -18
- package/blog/ko/rag_powered_documentation_assistant.md +0 -194
- package/blog/ko/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/ko/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ko/what_is_internationalization.md +0 -4
- package/blog/pl/___per-component_vs_centralized_i18n.md +100 -0
- package/blog/pl/internationalization_and_SEO.md +0 -91
- package/blog/pl/intlayer_with_i18next.md +24 -4
- package/blog/pl/intlayer_with_next-i18next.md +20 -15
- package/blog/pl/intlayer_with_next-intl.md +24 -4
- package/blog/pl/intlayer_with_react-i18next.md +20 -4
- package/blog/pl/intlayer_with_react-intl.md +20 -4
- package/blog/pl/intlayer_with_vue-i18n.md +20 -4
- package/blog/pl/l10n_platform_alternative/Lokalise.md +6 -0
- package/blog/pl/rag_powered_documentation_assistant.md +13 -0
- package/blog/pt/internationalization_and_SEO.md +1 -1
- package/blog/pt/intlayer_with_i18next.md +37 -7
- package/blog/pt/intlayer_with_next-i18next.md +33 -18
- package/blog/pt/intlayer_with_next-intl.md +37 -7
- package/blog/pt/intlayer_with_react-i18next.md +33 -7
- package/blog/pt/intlayer_with_react-intl.md +33 -11
- package/blog/pt/intlayer_with_vue-i18n.md +33 -7
- package/blog/pt/l10n_platform_alternative/crowdin.md +0 -6
- package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/pt/rag_powered_documentation_assistant.md +0 -195
- package/blog/pt/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/pt/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ru/intlayer_with_i18next.md +24 -4
- package/blog/ru/intlayer_with_next-i18next.md +20 -15
- package/blog/ru/intlayer_with_next-intl.md +24 -4
- package/blog/ru/intlayer_with_react-i18next.md +20 -4
- package/blog/ru/intlayer_with_react-intl.md +20 -4
- package/blog/ru/intlayer_with_vue-i18n.md +20 -4
- package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
- package/blog/ru/rag_powered_documentation_assistant.md +13 -0
- package/blog/ru/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/ru/vue-i18n_vs_intlayer.md +8 -0
- package/blog/tr/intlayer_with_i18next.md +24 -4
- package/blog/tr/intlayer_with_next-i18next.md +20 -15
- package/blog/tr/intlayer_with_next-intl.md +24 -4
- package/blog/tr/intlayer_with_react-i18next.md +20 -4
- package/blog/tr/intlayer_with_react-intl.md +20 -4
- package/blog/tr/intlayer_with_vue-i18n.md +20 -4
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +1189 -0
- package/blog/tr/rag_powered_documentation_assistant.md +0 -38
- package/blog/uk/intlayer_with_i18next.md +20 -4
- package/blog/uk/intlayer_with_next-i18next.md +20 -4
- package/blog/uk/intlayer_with_next-intl.md +20 -4
- package/blog/uk/intlayer_with_react-i18next.md +20 -4
- package/blog/uk/intlayer_with_react-intl.md +20 -4
- package/blog/uk/intlayer_with_vue-i18n.md +20 -4
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +9 -0
- package/blog/uk/rag_powered_documentation_assistant.md +13 -0
- package/blog/vi/internationalization_and_SEO.md +0 -91
- package/blog/vi/intlayer_with_i18next.md +24 -4
- package/blog/vi/intlayer_with_next-i18next.md +20 -15
- package/blog/vi/intlayer_with_next-intl.md +24 -4
- package/blog/vi/intlayer_with_react-i18next.md +20 -4
- package/blog/vi/intlayer_with_react-intl.md +20 -4
- package/blog/vi/intlayer_with_vue-i18n.md +20 -4
- package/blog/vi/rag_powered_documentation_assistant.md +13 -0
- package/blog/zh/intlayer_with_i18next.md +4 -31
- package/blog/zh/intlayer_with_next-i18next.md +0 -42
- package/blog/zh/intlayer_with_next-intl.md +4 -31
- package/blog/zh/intlayer_with_react-i18next.md +0 -31
- package/blog/zh/intlayer_with_react-intl.md +0 -31
- package/blog/zh/intlayer_with_vue-i18n.md +0 -31
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +121 -26
- package/blog/zh/nextjs-multilingual-seo-comparison.md +0 -30
- package/blog/zh/rag_powered_documentation_assistant.md +0 -191
- package/blog/zh/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/zh/vue-i18n_vs_intlayer.md +8 -0
- package/dist/cjs/generated/docs.entry.cjs +580 -20
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +580 -20
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +29 -1
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/CI_CD.md +4 -0
- package/docs/ar/autoFill.md +81 -0
- package/docs/ar/benchmark/solid.md +22 -0
- package/docs/ar/benchmark/svelte.md +22 -0
- package/docs/ar/benchmark/tanstack.md +22 -0
- package/docs/ar/cli/ci.md +22 -0
- package/docs/ar/cli/doc-review.md +110 -4
- package/docs/ar/cli/fill.md +8 -0
- package/docs/ar/cli/index.md +1 -1
- package/docs/ar/cli/scan.md +1 -1
- package/docs/ar/compat/i18n-js.md +44 -0
- package/docs/ar/compat/i18next.md +59 -0
- package/docs/ar/compat/index.md +51 -0
- package/docs/ar/compat/lingui.md +44 -0
- package/docs/ar/compat/next-i18next.md +57 -0
- package/docs/ar/compat/next-intl.md +59 -0
- package/docs/ar/compat/next-translate.md +45 -0
- package/docs/ar/compat/ngx-translate.md +45 -0
- package/docs/ar/compat/nuxtjs-i18n.md +46 -0
- package/docs/ar/compat/polyglot.md +45 -0
- package/docs/ar/compat/react-i18next.md +58 -0
- package/docs/ar/compat/react-intl.md +55 -0
- package/docs/ar/compat/svelte-i18n.md +47 -0
- package/docs/ar/compat/transloco.md +45 -0
- package/docs/ar/compat/vue-i18n.md +58 -0
- package/docs/ar/compiler.md +9 -4
- package/docs/ar/configuration.md +54 -19
- package/docs/ar/custom_domains.md +9 -3
- package/docs/ar/custom_url_rewrites.md +9 -3
- package/docs/ar/dictionary/condition.md +167 -5
- package/docs/ar/dictionary/content_file.md +4 -7
- package/docs/ar/dictionary/enumeration.md +353 -6
- package/docs/ar/dictionary/file.md +159 -1
- package/docs/ar/dictionary/gender.md +168 -7
- package/docs/ar/dictionary/nesting.md +187 -40
- package/docs/ar/dictionary/plurial.md +174 -5
- package/docs/ar/dictionary/translation.md +146 -53
- package/docs/ar/dynamic_dictionaries/collections.md +1 -1
- package/docs/ar/dynamic_dictionaries/index.md +25 -19
- package/docs/ar/dynamic_dictionaries/variants.md +281 -23
- package/docs/ar/formatters.md +59 -0
- package/docs/ar/how_works_intlayer.md +4 -0
- package/docs/ar/interest_of_intlayer.md +193 -0
- package/docs/ar/intlayer_CMS.md +22 -1
- package/docs/ar/intlayer_with_adonisjs.md +20 -4
- package/docs/ar/intlayer_with_analog.md +25 -5
- package/docs/ar/intlayer_with_angular_19.md +20 -4
- package/docs/ar/intlayer_with_angular_21.md +20 -4
- package/docs/ar/intlayer_with_astro.md +131 -2
- package/docs/ar/intlayer_with_astro_lit.md +23 -9
- package/docs/ar/intlayer_with_astro_preact.md +23 -9
- package/docs/ar/intlayer_with_astro_react.md +23 -9
- package/docs/ar/intlayer_with_astro_solid.md +23 -9
- package/docs/ar/intlayer_with_astro_svelte.md +23 -9
- package/docs/ar/intlayer_with_astro_vanilla.md +23 -9
- package/docs/ar/intlayer_with_astro_vue.md +23 -9
- package/docs/ar/intlayer_with_create_react_app.md +20 -18
- package/docs/ar/intlayer_with_express.md +20 -25
- package/docs/ar/intlayer_with_fastify.md +20 -8
- package/docs/ar/intlayer_with_hono.md +20 -4
- package/docs/ar/intlayer_with_lynx+react.md +26 -5
- package/docs/ar/intlayer_with_nestjs.md +20 -22
- package/docs/ar/intlayer_with_next-i18next.md +20 -4
- package/docs/ar/intlayer_with_nextjs_14.md +50 -11
- package/docs/ar/intlayer_with_nextjs_15.md +41 -5
- package/docs/ar/intlayer_with_nextjs_16.md +146 -6
- package/docs/ar/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/ar/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/ar/intlayer_with_nuxt.md +25 -7
- package/docs/ar/intlayer_with_react_native+expo.md +108 -74
- package/docs/ar/intlayer_with_react_router_v7.md +24 -100
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +43 -101
- package/docs/ar/intlayer_with_storybook.md +7 -1
- package/docs/ar/intlayer_with_svelte_kit.md +15 -184
- package/docs/ar/intlayer_with_tanstack+solid.md +39 -14
- package/docs/ar/intlayer_with_tanstack.md +37 -12
- package/docs/ar/intlayer_with_vite+lit.md +29 -7
- package/docs/ar/intlayer_with_vite+preact.md +62 -44
- package/docs/ar/intlayer_with_vite+react.md +60 -39
- package/docs/ar/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/ar/intlayer_with_vite+solid.md +47 -29
- package/docs/ar/intlayer_with_vite+svelte.md +36 -18
- package/docs/ar/intlayer_with_vite+vanilla.md +37 -10
- package/docs/ar/intlayer_with_vite+vue.md +72 -121
- package/docs/ar/mcp_server.md +22 -0
- package/docs/ar/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/ar/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/ar/packages/@intlayer_babel/export.md +131 -0
- package/docs/ar/packages/angular-intlayer/exports.md +14 -10
- package/docs/ar/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/ar/packages/intlayer/comparePaths.md +173 -0
- package/docs/ar/packages/intlayer/exports.md +5 -0
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/ar/packages/intlayer/getPathWithoutLocale.md +0 -4
- package/docs/ar/packages/next-intlayer/exports.md +4 -0
- package/docs/ar/packages/next-intlayer/usePathname.md +136 -0
- package/docs/ar/packages/preact-intlayer/exports.md +10 -6
- package/docs/ar/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/ar/packages/react-intlayer/exports.md +4 -0
- package/docs/ar/packages/react-intlayer/t.md +0 -13
- package/docs/ar/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/ar/packages/react-intlayer/useI18n.md +0 -4
- package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -55
- package/docs/ar/packages/react-intlayer/usePathname.md +87 -0
- package/docs/ar/packages/react-native-intlayer/exports.md +48 -14
- package/docs/ar/packages/solid-intlayer/exports.md +4 -0
- package/docs/ar/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/ar/packages/svelte-intlayer/exports.md +4 -0
- package/docs/ar/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/ar/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ar/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ar/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ar/packages/vue-intlayer/exports.md +4 -0
- package/docs/ar/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/ar/plugins/sync-json.md +221 -49
- package/docs/ar/releases/v6.md +28 -0
- package/docs/ar/releases/v7.md +128 -0
- package/docs/ar/releases/v8.md +187 -1
- package/docs/ar/releases/v9.md +395 -0
- package/docs/ar/roadmap.md +6 -0
- package/docs/ar/self_hosting.md +349 -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/bn/custom_domains.md +8 -2
- package/docs/bn/intlayer_CMS.md +570 -0
- package/docs/bn/intlayer_with_angular_21.md +20 -4
- package/docs/bn/intlayer_with_fastify.md +20 -8
- package/docs/bn/intlayer_with_hono.md +20 -4
- package/docs/bn/intlayer_with_storybook.md +7 -1
- package/docs/bn/intlayer_with_vite+lit.md +28 -6
- package/docs/bn/intlayer_with_vite+vanilla.md +36 -9
- package/docs/bn/packages/intlayer/comparePaths.md +173 -0
- package/docs/bn/releases/v9.md +358 -0
- 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/cs/custom_domains.md +8 -2
- package/docs/cs/intlayer_with_angular_21.md +20 -4
- package/docs/cs/intlayer_with_fastify.md +20 -8
- package/docs/cs/intlayer_with_hono.md +20 -4
- package/docs/cs/intlayer_with_storybook.md +7 -1
- package/docs/cs/intlayer_with_vite+lit.md +28 -6
- package/docs/cs/intlayer_with_vite+vanilla.md +36 -9
- package/docs/cs/packages/intlayer/comparePaths.md +173 -0
- package/docs/cs/releases/v9.md +358 -0
- package/docs/de/CI_CD.md +4 -0
- package/docs/de/autoFill.md +81 -0
- package/docs/de/benchmark/solid.md +22 -0
- package/docs/de/benchmark/svelte.md +22 -0
- package/docs/de/benchmark/tanstack.md +22 -0
- package/docs/de/cli/ci.md +22 -0
- package/docs/de/cli/doc-review.md +110 -4
- package/docs/de/cli/fill.md +8 -0
- package/docs/de/cli/index.md +1 -1
- package/docs/de/cli/init.md +20 -0
- package/docs/de/cli/scan.md +1 -1
- package/docs/de/compat/i18n-js.md +44 -0
- package/docs/de/compat/i18next.md +59 -0
- package/docs/de/compat/index.md +51 -0
- package/docs/de/compat/lingui.md +44 -0
- package/docs/de/compat/next-i18next.md +57 -0
- package/docs/de/compat/next-intl.md +59 -0
- package/docs/de/compat/next-translate.md +45 -0
- package/docs/de/compat/ngx-translate.md +45 -0
- package/docs/de/compat/nuxtjs-i18n.md +46 -0
- package/docs/de/compat/polyglot.md +45 -0
- package/docs/de/compat/react-i18next.md +58 -0
- package/docs/de/compat/react-intl.md +55 -0
- package/docs/de/compat/svelte-i18n.md +47 -0
- package/docs/de/compat/transloco.md +45 -0
- package/docs/de/compat/vue-i18n.md +58 -0
- package/docs/de/compiler.md +9 -4
- package/docs/de/configuration.md +53 -18
- package/docs/de/custom_domains.md +9 -3
- package/docs/de/custom_url_rewrites.md +9 -3
- package/docs/de/dictionary/condition.md +167 -5
- package/docs/de/dictionary/content_file.md +4 -0
- package/docs/de/dictionary/enumeration.md +584 -13
- package/docs/de/dictionary/file.md +159 -1
- package/docs/de/dictionary/gender.md +168 -7
- package/docs/de/dictionary/insertion.md +0 -4
- package/docs/de/dictionary/nesting.md +188 -41
- package/docs/de/dictionary/plurial.md +347 -7
- package/docs/de/dictionary/translation.md +146 -53
- package/docs/de/dynamic_dictionaries/collections.md +1 -1
- package/docs/de/dynamic_dictionaries/index.md +24 -18
- package/docs/de/dynamic_dictionaries/variants.md +273 -15
- package/docs/de/formatters.md +130 -0
- package/docs/de/how_works_intlayer.md +4 -0
- package/docs/de/intlayer_CMS.md +123 -1
- package/docs/de/intlayer_with_adonisjs.md +20 -4
- package/docs/de/intlayer_with_analog.md +25 -5
- package/docs/de/intlayer_with_angular_19.md +20 -4
- package/docs/de/intlayer_with_angular_21.md +20 -4
- package/docs/de/intlayer_with_astro.md +132 -3
- package/docs/de/intlayer_with_astro_lit.md +24 -10
- package/docs/de/intlayer_with_astro_preact.md +24 -10
- package/docs/de/intlayer_with_astro_react.md +24 -10
- package/docs/de/intlayer_with_astro_solid.md +24 -10
- package/docs/de/intlayer_with_astro_svelte.md +24 -10
- package/docs/de/intlayer_with_astro_vanilla.md +24 -10
- package/docs/de/intlayer_with_astro_vue.md +24 -10
- package/docs/de/intlayer_with_create_react_app.md +35 -4
- package/docs/de/intlayer_with_express.md +20 -27
- package/docs/de/intlayer_with_fastify.md +20 -8
- package/docs/de/intlayer_with_hono.md +20 -4
- package/docs/de/intlayer_with_lynx+react.md +30 -7
- package/docs/de/intlayer_with_nestjs.md +20 -12
- package/docs/de/intlayer_with_next-i18next.md +20 -4
- package/docs/de/intlayer_with_nextjs_14.md +48 -11
- package/docs/de/intlayer_with_nextjs_15.md +41 -5
- package/docs/de/intlayer_with_nextjs_16.md +23 -5
- package/docs/de/intlayer_with_nextjs_compiler.md +51 -1
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/de/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/de/intlayer_with_nuxt.md +25 -7
- package/docs/de/intlayer_with_react_native+expo.md +91 -68
- package/docs/de/intlayer_with_react_router_v7.md +24 -100
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +9 -94
- package/docs/de/intlayer_with_storybook.md +7 -1
- package/docs/de/intlayer_with_svelte_kit.md +16 -185
- package/docs/de/intlayer_with_tanstack+solid.md +39 -14
- package/docs/de/intlayer_with_tanstack.md +38 -13
- package/docs/de/intlayer_with_vite+lit.md +34 -9
- package/docs/de/intlayer_with_vite+preact.md +84 -62
- package/docs/de/intlayer_with_vite+react.md +78 -57
- package/docs/de/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/de/intlayer_with_vite+solid.md +56 -47
- package/docs/de/intlayer_with_vite+svelte.md +36 -33
- package/docs/de/intlayer_with_vite+vanilla.md +37 -10
- package/docs/de/intlayer_with_vite+vue.md +83 -110
- package/docs/de/mcp_server.md +22 -0
- package/docs/de/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/de/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/de/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/de/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/de/packages/@intlayer_babel/export.md +131 -0
- package/docs/de/packages/angular-intlayer/exports.md +13 -9
- package/docs/de/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/de/packages/intlayer/comparePaths.md +173 -0
- package/docs/de/packages/intlayer/exports.md +5 -0
- package/docs/de/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/de/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/de/packages/next-intlayer/exports.md +4 -0
- package/docs/de/packages/next-intlayer/usePathname.md +136 -0
- package/docs/de/packages/preact-intlayer/exports.md +10 -6
- package/docs/de/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/de/packages/react-intlayer/exports.md +4 -0
- package/docs/de/packages/react-intlayer/useDictionary.md +0 -116
- package/docs/de/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/de/packages/react-intlayer/usePathname.md +87 -0
- package/docs/de/packages/react-native-intlayer/exports.md +47 -13
- package/docs/de/packages/solid-intlayer/exports.md +4 -0
- package/docs/de/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/de/packages/svelte-intlayer/exports.md +13 -9
- package/docs/de/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/de/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/de/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/de/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/de/packages/vue-intlayer/exports.md +4 -0
- package/docs/de/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/de/plugins/sync-json.md +221 -49
- package/docs/de/releases/v6.md +10 -6
- package/docs/de/releases/v7.md +128 -0
- package/docs/de/releases/v8.md +197 -1
- package/docs/de/releases/v9.md +376 -0
- package/docs/de/roadmap.md +6 -16
- package/docs/de/self_hosting.md +349 -0
- package/docs/en/CI_CD.md +7 -7
- package/docs/en/bundle_optimization.md +8 -3
- 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/compiler.md +16 -6
- package/docs/en/configuration.md +56 -9
- package/docs/en/custom_domains.md +10 -2
- package/docs/en/custom_url_rewrites.md +10 -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/index.md +21 -15
- package/docs/en/dynamic_dictionaries/variants.md +267 -9
- package/docs/en/intlayer_CMS.md +171 -1
- package/docs/en/intlayer_with_adonisjs.md +20 -4
- package/docs/en/intlayer_with_analog.md +25 -5
- package/docs/en/intlayer_with_angular_19.md +20 -4
- package/docs/en/intlayer_with_angular_21.md +20 -4
- package/docs/en/intlayer_with_astro.md +22 -8
- package/docs/en/intlayer_with_astro_lit.md +22 -8
- package/docs/en/intlayer_with_astro_preact.md +22 -8
- package/docs/en/intlayer_with_astro_react.md +22 -8
- package/docs/en/intlayer_with_astro_solid.md +22 -8
- package/docs/en/intlayer_with_astro_svelte.md +22 -8
- package/docs/en/intlayer_with_astro_vanilla.md +22 -8
- package/docs/en/intlayer_with_astro_vue.md +22 -8
- package/docs/en/intlayer_with_create_react_app.md +20 -4
- package/docs/en/intlayer_with_express.md +20 -4
- package/docs/en/intlayer_with_fastify.md +20 -8
- package/docs/en/intlayer_with_hono.md +20 -4
- package/docs/en/intlayer_with_lynx+react.md +26 -5
- package/docs/en/intlayer_with_nestjs.md +20 -4
- package/docs/en/intlayer_with_next-i18next.md +20 -4
- package/docs/en/intlayer_with_nextjs_14.md +22 -4
- package/docs/en/intlayer_with_nextjs_15.md +22 -4
- package/docs/en/intlayer_with_nextjs_16.md +24 -4
- package/docs/en/intlayer_with_nextjs_compiler.md +24 -4
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +22 -4
- package/docs/en/intlayer_with_nextjs_page_router.md +22 -4
- package/docs/en/intlayer_with_nuxt.md +25 -7
- package/docs/en/intlayer_with_react_native+expo.md +48 -23
- package/docs/en/intlayer_with_react_router_v7.md +30 -7
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +10 -3
- package/docs/en/intlayer_with_storybook.md +7 -1
- package/docs/en/intlayer_with_svelte_kit.md +30 -7
- package/docs/en/intlayer_with_tanstack+solid.md +40 -13
- package/docs/en/intlayer_with_tanstack.md +38 -11
- package/docs/en/intlayer_with_vite+lit.md +35 -8
- package/docs/en/intlayer_with_vite+preact.md +30 -7
- package/docs/en/intlayer_with_vite+react.md +30 -7
- package/docs/en/intlayer_with_vite+react_compiler.md +31 -6
- package/docs/en/intlayer_with_vite+solid.md +30 -7
- package/docs/en/intlayer_with_vite+svelte.md +30 -7
- package/docs/en/intlayer_with_vite+vanilla.md +37 -8
- package/docs/en/intlayer_with_vite+vue.md +30 -7
- package/docs/en/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/en/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/en/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/en/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/en/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/en/packages/@intlayer_babel/export.md +131 -0
- package/docs/en/packages/angular-intlayer/exports.md +13 -9
- package/docs/en/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/en/packages/intlayer/comparePaths.md +173 -0
- package/docs/en/packages/intlayer/exports.md +18 -13
- package/docs/en/packages/next-intlayer/exports.md +4 -0
- package/docs/en/packages/next-intlayer/usePathname.md +136 -0
- package/docs/en/packages/preact-intlayer/exports.md +10 -6
- package/docs/en/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/en/packages/react-intlayer/exports.md +4 -0
- package/docs/en/packages/react-intlayer/usePathname.md +87 -0
- package/docs/en/packages/react-native-intlayer/exports.md +47 -13
- package/docs/en/packages/solid-intlayer/exports.md +4 -0
- package/docs/en/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/en/packages/svelte-intlayer/exports.md +13 -9
- package/docs/en/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/en/packages/vite-intlayer/exports.md +38 -13
- package/docs/en/packages/vite-intlayer/intlayer.md +133 -14
- package/docs/en/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/en/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/en/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/en/packages/vite-intlayer/intlayerPrune.md +90 -12
- package/docs/en/packages/vue-intlayer/exports.md +4 -0
- package/docs/en/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/en/plugins/sync-json.md +56 -3
- package/docs/en/releases/v8.md +187 -1
- package/docs/en/releases/v9.md +358 -0
- package/docs/en/self_hosting.md +349 -0
- package/docs/en-GB/CI_CD.md +4 -0
- package/docs/en-GB/autoFill.md +81 -0
- package/docs/en-GB/benchmark/solid.md +22 -0
- package/docs/en-GB/benchmark/svelte.md +22 -0
- package/docs/en-GB/benchmark/tanstack.md +22 -0
- package/docs/en-GB/cli/ci.md +22 -0
- package/docs/en-GB/cli/doc-review.md +110 -4
- package/docs/en-GB/cli/fill.md +8 -0
- package/docs/en-GB/cli/index.md +1 -1
- package/docs/en-GB/cli/login.md +0 -36
- package/docs/en-GB/cli/scan.md +1 -1
- package/docs/en-GB/cli/test.md +0 -36
- package/docs/en-GB/compat/i18n-js.md +44 -0
- package/docs/en-GB/compat/i18next.md +59 -0
- package/docs/en-GB/compat/index.md +51 -0
- package/docs/en-GB/compat/lingui.md +44 -0
- package/docs/en-GB/compat/next-i18next.md +57 -0
- package/docs/en-GB/compat/next-intl.md +59 -0
- package/docs/en-GB/compat/next-translate.md +45 -0
- package/docs/en-GB/compat/ngx-translate.md +45 -0
- package/docs/en-GB/compat/nuxtjs-i18n.md +46 -0
- package/docs/en-GB/compat/polyglot.md +45 -0
- package/docs/en-GB/compat/react-i18next.md +58 -0
- package/docs/en-GB/compat/react-intl.md +55 -0
- package/docs/en-GB/compat/svelte-i18n.md +47 -0
- package/docs/en-GB/compat/transloco.md +45 -0
- package/docs/en-GB/compat/vue-i18n.md +58 -0
- package/docs/en-GB/compiler.md +9 -4
- package/docs/en-GB/configuration.md +38 -2
- package/docs/en-GB/custom_domains.md +9 -3
- package/docs/en-GB/custom_url_rewrites.md +9 -3
- package/docs/en-GB/dictionary/condition.md +364 -1
- package/docs/en-GB/dictionary/content_file.md +4 -7
- package/docs/en-GB/dictionary/enumeration.md +577 -5
- package/docs/en-GB/dictionary/file.md +325 -1
- package/docs/en-GB/dictionary/function_fetching.md +0 -4
- package/docs/en-GB/dictionary/gender.md +375 -2
- package/docs/en-GB/dictionary/nesting.md +379 -74
- package/docs/en-GB/dictionary/plurial.md +347 -7
- package/docs/en-GB/dictionary/translation.md +315 -88
- package/docs/en-GB/dynamic_dictionaries/collections.md +1 -1
- package/docs/en-GB/dynamic_dictionaries/index.md +22 -16
- package/docs/en-GB/dynamic_dictionaries/variants.md +269 -11
- package/docs/en-GB/formatters.md +59 -0
- package/docs/en-GB/how_works_intlayer.md +4 -16
- package/docs/en-GB/intlayer_CMS.md +22 -1
- package/docs/en-GB/intlayer_with_adonisjs.md +20 -4
- package/docs/en-GB/intlayer_with_analog.md +25 -5
- package/docs/en-GB/intlayer_with_angular_19.md +20 -4
- package/docs/en-GB/intlayer_with_angular_21.md +20 -4
- package/docs/en-GB/intlayer_with_astro.md +131 -2
- package/docs/en-GB/intlayer_with_astro_lit.md +23 -9
- package/docs/en-GB/intlayer_with_astro_preact.md +23 -9
- package/docs/en-GB/intlayer_with_astro_react.md +23 -9
- package/docs/en-GB/intlayer_with_astro_solid.md +23 -9
- package/docs/en-GB/intlayer_with_astro_svelte.md +23 -9
- package/docs/en-GB/intlayer_with_astro_vanilla.md +23 -9
- package/docs/en-GB/intlayer_with_astro_vue.md +23 -9
- package/docs/en-GB/intlayer_with_create_react_app.md +38 -52
- package/docs/en-GB/intlayer_with_express.md +20 -27
- package/docs/en-GB/intlayer_with_fastify.md +20 -8
- package/docs/en-GB/intlayer_with_hono.md +20 -4
- package/docs/en-GB/intlayer_with_lynx+react.md +46 -9
- package/docs/en-GB/intlayer_with_nestjs.md +20 -12
- package/docs/en-GB/intlayer_with_next-i18next.md +20 -4
- package/docs/en-GB/intlayer_with_nextjs_14.md +33 -9
- package/docs/en-GB/intlayer_with_nextjs_15.md +43 -5
- package/docs/en-GB/intlayer_with_nextjs_16.md +23 -5
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +23 -5
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/en-GB/intlayer_with_nuxt.md +25 -7
- package/docs/en-GB/intlayer_with_react_native+expo.md +86 -67
- package/docs/en-GB/intlayer_with_react_router_v7.md +27 -8
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +46 -8
- package/docs/en-GB/intlayer_with_storybook.md +7 -1
- package/docs/en-GB/intlayer_with_svelte_kit.md +13 -184
- package/docs/en-GB/intlayer_with_tanstack+solid.md +39 -14
- package/docs/en-GB/intlayer_with_tanstack.md +35 -12
- package/docs/en-GB/intlayer_with_vite+lit.md +34 -9
- package/docs/en-GB/intlayer_with_vite+preact.md +25 -5
- package/docs/en-GB/intlayer_with_vite+react.md +27 -8
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/en-GB/intlayer_with_vite+solid.md +21 -5
- package/docs/en-GB/intlayer_with_vite+svelte.md +27 -8
- package/docs/en-GB/intlayer_with_vite+vanilla.md +36 -9
- package/docs/en-GB/intlayer_with_vite+vue.md +35 -187
- package/docs/en-GB/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/en-GB/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/en-GB/packages/@intlayer_babel/export.md +131 -0
- package/docs/en-GB/packages/angular-intlayer/exports.md +13 -9
- package/docs/en-GB/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/en-GB/packages/intlayer/comparePaths.md +173 -0
- package/docs/en-GB/packages/intlayer/exports.md +5 -0
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +44 -0
- package/docs/en-GB/packages/intlayer/getTranslation.md +0 -16
- package/docs/en-GB/packages/next-intlayer/exports.md +4 -0
- package/docs/en-GB/packages/next-intlayer/usePathname.md +136 -0
- package/docs/en-GB/packages/preact-intlayer/exports.md +10 -6
- package/docs/en-GB/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/en-GB/packages/react-intlayer/exports.md +4 -0
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -123
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/en-GB/packages/react-intlayer/usePathname.md +87 -0
- package/docs/en-GB/packages/react-native-intlayer/exports.md +51 -18
- package/docs/en-GB/packages/solid-intlayer/exports.md +15 -11
- package/docs/en-GB/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/en-GB/packages/svelte-intlayer/exports.md +13 -9
- package/docs/en-GB/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/en-GB/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/en-GB/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/en-GB/packages/vue-intlayer/exports.md +4 -0
- package/docs/en-GB/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/en-GB/plugins/sync-json.md +222 -50
- package/docs/en-GB/releases/v6.md +10 -6
- package/docs/en-GB/releases/v7.md +128 -0
- package/docs/en-GB/releases/v8.md +191 -1
- package/docs/en-GB/releases/v9.md +357 -0
- package/docs/en-GB/roadmap.md +6 -0
- package/docs/en-GB/self_hosting.md +349 -0
- package/docs/es/CI_CD.md +4 -0
- package/docs/es/autoFill.md +81 -0
- package/docs/es/benchmark/solid.md +22 -0
- package/docs/es/benchmark/svelte.md +22 -0
- package/docs/es/benchmark/tanstack.md +22 -0
- package/docs/es/cli/ci.md +22 -0
- package/docs/es/cli/doc-review.md +110 -4
- package/docs/es/cli/fill.md +8 -0
- package/docs/es/cli/index.md +1 -1
- package/docs/es/cli/login.md +0 -36
- package/docs/es/cli/scan.md +1 -1
- package/docs/es/compat/i18n-js.md +44 -0
- package/docs/es/compat/i18next.md +59 -0
- package/docs/es/compat/index.md +51 -0
- package/docs/es/compat/lingui.md +44 -0
- package/docs/es/compat/next-i18next.md +57 -0
- package/docs/es/compat/next-intl.md +61 -0
- package/docs/es/compat/next-translate.md +45 -0
- package/docs/es/compat/ngx-translate.md +45 -0
- package/docs/es/compat/nuxtjs-i18n.md +46 -0
- package/docs/es/compat/polyglot.md +45 -0
- package/docs/es/compat/react-i18next.md +58 -0
- package/docs/es/compat/react-intl.md +55 -0
- package/docs/es/compat/svelte-i18n.md +47 -0
- package/docs/es/compat/transloco.md +45 -0
- package/docs/es/compat/vue-i18n.md +58 -0
- package/docs/es/compiler.md +9 -4
- package/docs/es/configuration.md +54 -19
- package/docs/es/custom_domains.md +9 -3
- package/docs/es/custom_url_rewrites.md +9 -3
- package/docs/es/dictionary/condition.md +167 -5
- package/docs/es/dictionary/content_file.md +4 -0
- package/docs/es/dictionary/enumeration.md +537 -12
- package/docs/es/dictionary/file.md +159 -1
- package/docs/es/dictionary/gender.md +168 -7
- package/docs/es/dictionary/nesting.md +187 -40
- package/docs/es/dictionary/plurial.md +347 -7
- package/docs/es/dictionary/translation.md +146 -53
- package/docs/es/dynamic_dictionaries/collections.md +1 -1
- package/docs/es/dynamic_dictionaries/index.md +26 -20
- package/docs/es/dynamic_dictionaries/variants.md +276 -18
- package/docs/es/formatters.md +82 -0
- package/docs/es/how_works_intlayer.md +4 -4
- package/docs/es/intlayer_CMS.md +138 -1
- package/docs/es/intlayer_visual_editor.md +0 -23
- package/docs/es/intlayer_with_adonisjs.md +20 -4
- package/docs/es/intlayer_with_analog.md +25 -5
- package/docs/es/intlayer_with_angular_19.md +20 -4
- package/docs/es/intlayer_with_angular_21.md +20 -4
- package/docs/es/intlayer_with_astro.md +132 -3
- package/docs/es/intlayer_with_astro_lit.md +24 -10
- package/docs/es/intlayer_with_astro_preact.md +24 -10
- package/docs/es/intlayer_with_astro_react.md +24 -10
- package/docs/es/intlayer_with_astro_solid.md +24 -10
- package/docs/es/intlayer_with_astro_svelte.md +24 -10
- package/docs/es/intlayer_with_astro_vanilla.md +24 -10
- package/docs/es/intlayer_with_astro_vue.md +24 -10
- package/docs/es/intlayer_with_create_react_app.md +20 -4
- package/docs/es/intlayer_with_express.md +20 -8
- package/docs/es/intlayer_with_fastify.md +20 -8
- package/docs/es/intlayer_with_hono.md +20 -4
- package/docs/es/intlayer_with_lynx+react.md +26 -5
- package/docs/es/intlayer_with_nestjs.md +20 -22
- package/docs/es/intlayer_with_next-i18next.md +20 -4
- package/docs/es/intlayer_with_nextjs_14.md +30 -8
- package/docs/es/intlayer_with_nextjs_15.md +41 -5
- package/docs/es/intlayer_with_nextjs_16.md +23 -5
- package/docs/es/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/es/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/es/intlayer_with_nuxt.md +25 -7
- package/docs/es/intlayer_with_react_native+expo.md +92 -72
- package/docs/es/intlayer_with_react_router_v7.md +24 -100
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +10 -5
- package/docs/es/intlayer_with_storybook.md +7 -1
- package/docs/es/intlayer_with_svelte_kit.md +16 -185
- package/docs/es/intlayer_with_tanstack+solid.md +39 -14
- package/docs/es/intlayer_with_tanstack.md +38 -13
- package/docs/es/intlayer_with_vite+lit.md +34 -9
- package/docs/es/intlayer_with_vite+preact.md +28 -6
- package/docs/es/intlayer_with_vite+react.md +30 -9
- package/docs/es/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/es/intlayer_with_vite+solid.md +24 -6
- package/docs/es/intlayer_with_vite+svelte.md +25 -7
- package/docs/es/intlayer_with_vite+vanilla.md +37 -10
- package/docs/es/intlayer_with_vite+vue.md +47 -94
- package/docs/es/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/es/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/es/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/es/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/es/packages/@intlayer_babel/export.md +131 -0
- package/docs/es/packages/angular-intlayer/exports.md +13 -9
- package/docs/es/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/es/packages/express-intlayer/t.md +0 -9
- package/docs/es/packages/intlayer/comparePaths.md +173 -0
- package/docs/es/packages/intlayer/exports.md +18 -13
- package/docs/es/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/es/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/es/packages/next-intlayer/exports.md +4 -0
- package/docs/es/packages/next-intlayer/usePathname.md +136 -0
- package/docs/es/packages/preact-intlayer/exports.md +10 -6
- package/docs/es/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/es/packages/react-intlayer/exports.md +4 -0
- package/docs/es/packages/react-intlayer/useDictionary.md +0 -119
- package/docs/es/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/es/packages/react-intlayer/usePathname.md +87 -0
- package/docs/es/packages/react-native-intlayer/exports.md +47 -13
- package/docs/es/packages/solid-intlayer/exports.md +4 -0
- package/docs/es/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/es/packages/svelte-intlayer/exports.md +4 -0
- package/docs/es/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/es/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/es/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/es/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/es/packages/vue-intlayer/exports.md +4 -0
- package/docs/es/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/es/plugins/sync-json.md +221 -49
- package/docs/es/releases/v6.md +28 -0
- package/docs/es/releases/v7.md +128 -0
- package/docs/es/releases/v8.md +187 -1
- package/docs/es/releases/v9.md +372 -0
- package/docs/es/roadmap.md +6 -0
- package/docs/es/self_hosting.md +349 -0
- package/docs/fr/CI_CD.md +4 -0
- package/docs/fr/autoFill.md +81 -0
- package/docs/fr/benchmark/solid.md +22 -0
- package/docs/fr/benchmark/svelte.md +22 -0
- package/docs/fr/benchmark/tanstack.md +22 -0
- package/docs/fr/cli/ci.md +22 -0
- package/docs/fr/cli/doc-review.md +110 -4
- package/docs/fr/cli/fill.md +8 -0
- package/docs/fr/cli/index.md +1 -1
- package/docs/fr/cli/login.md +0 -36
- package/docs/fr/cli/scan.md +1 -1
- package/docs/fr/compat/i18n-js.md +44 -0
- package/docs/fr/compat/i18next.md +59 -0
- package/docs/fr/compat/index.md +51 -0
- package/docs/fr/compat/lingui.md +44 -0
- package/docs/fr/compat/next-i18next.md +57 -0
- package/docs/fr/compat/next-intl.md +59 -0
- package/docs/fr/compat/next-translate.md +45 -0
- package/docs/fr/compat/ngx-translate.md +45 -0
- package/docs/fr/compat/nuxtjs-i18n.md +46 -0
- package/docs/fr/compat/polyglot.md +45 -0
- package/docs/fr/compat/react-i18next.md +58 -0
- package/docs/fr/compat/react-intl.md +55 -0
- package/docs/fr/compat/svelte-i18n.md +47 -0
- package/docs/fr/compat/transloco.md +45 -0
- package/docs/fr/compat/vue-i18n.md +58 -0
- package/docs/fr/compiler.md +9 -4
- package/docs/fr/configuration.md +68 -32
- package/docs/fr/custom_domains.md +9 -3
- package/docs/fr/custom_url_rewrites.md +22 -16
- package/docs/fr/dictionary/condition.md +369 -6
- package/docs/fr/dictionary/content_file.md +4 -0
- package/docs/fr/dictionary/enumeration.md +353 -6
- package/docs/fr/dictionary/file.md +159 -1
- package/docs/fr/dictionary/gender.md +168 -7
- package/docs/fr/dictionary/nesting.md +358 -48
- package/docs/fr/dictionary/plurial.md +174 -5
- package/docs/fr/dictionary/translation.md +146 -53
- package/docs/fr/dynamic_dictionaries/collections.md +1 -1
- package/docs/fr/dynamic_dictionaries/index.md +27 -21
- package/docs/fr/dynamic_dictionaries/variants.md +274 -16
- package/docs/fr/formatters.md +171 -77
- package/docs/fr/how_works_intlayer.md +4 -0
- package/docs/fr/intlayer_CMS.md +123 -1
- package/docs/fr/intlayer_with_adonisjs.md +20 -4
- package/docs/fr/intlayer_with_analog.md +25 -5
- package/docs/fr/intlayer_with_angular_19.md +20 -4
- package/docs/fr/intlayer_with_angular_21.md +20 -4
- package/docs/fr/intlayer_with_astro.md +132 -3
- package/docs/fr/intlayer_with_astro_lit.md +24 -10
- package/docs/fr/intlayer_with_astro_preact.md +24 -10
- package/docs/fr/intlayer_with_astro_react.md +24 -10
- package/docs/fr/intlayer_with_astro_solid.md +24 -10
- package/docs/fr/intlayer_with_astro_svelte.md +24 -10
- package/docs/fr/intlayer_with_astro_vanilla.md +24 -10
- package/docs/fr/intlayer_with_astro_vue.md +24 -10
- package/docs/fr/intlayer_with_create_react_app.md +20 -18
- package/docs/fr/intlayer_with_express.md +20 -8
- package/docs/fr/intlayer_with_fastify.md +20 -8
- package/docs/fr/intlayer_with_hono.md +20 -4
- package/docs/fr/intlayer_with_lynx+react.md +26 -5
- package/docs/fr/intlayer_with_nestjs.md +20 -22
- package/docs/fr/intlayer_with_next-i18next.md +20 -4
- package/docs/fr/intlayer_with_nextjs_14.md +46 -9
- package/docs/fr/intlayer_with_nextjs_15.md +41 -5
- package/docs/fr/intlayer_with_nextjs_16.md +23 -5
- package/docs/fr/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/fr/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/fr/intlayer_with_nuxt.md +20 -31
- package/docs/fr/intlayer_with_react_native+expo.md +95 -68
- package/docs/fr/intlayer_with_react_router_v7.md +24 -100
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +4 -101
- package/docs/fr/intlayer_with_storybook.md +7 -1
- package/docs/fr/intlayer_with_svelte_kit.md +16 -217
- package/docs/fr/intlayer_with_tanstack+solid.md +39 -14
- package/docs/fr/intlayer_with_tanstack.md +38 -13
- package/docs/fr/intlayer_with_vite+lit.md +34 -9
- package/docs/fr/intlayer_with_vite+preact.md +28 -6
- package/docs/fr/intlayer_with_vite+react.md +30 -9
- package/docs/fr/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/fr/intlayer_with_vite+solid.md +24 -6
- package/docs/fr/intlayer_with_vite+svelte.md +30 -9
- package/docs/fr/intlayer_with_vite+vanilla.md +37 -10
- package/docs/fr/intlayer_with_vite+vue.md +42 -91
- package/docs/fr/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/fr/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/fr/packages/@intlayer_babel/export.md +131 -0
- package/docs/fr/packages/angular-intlayer/exports.md +13 -9
- package/docs/fr/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/fr/packages/express-intlayer/t.md +0 -9
- package/docs/fr/packages/intlayer/comparePaths.md +173 -0
- package/docs/fr/packages/intlayer/exports.md +18 -13
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +99 -0
- package/docs/fr/packages/next-intlayer/exports.md +4 -0
- package/docs/fr/packages/next-intlayer/t.md +1 -1
- package/docs/fr/packages/next-intlayer/usePathname.md +136 -0
- package/docs/fr/packages/next-intlayer/useRewriteURL.md +0 -8
- package/docs/fr/packages/preact-intlayer/exports.md +10 -6
- package/docs/fr/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/fr/packages/react-intlayer/exports.md +4 -0
- package/docs/fr/packages/react-intlayer/useDictionary.md +33 -149
- package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/fr/packages/react-intlayer/usePathname.md +87 -0
- package/docs/fr/packages/react-native-intlayer/exports.md +47 -13
- package/docs/fr/packages/solid-intlayer/exports.md +4 -0
- package/docs/fr/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/fr/packages/svelte-intlayer/exports.md +4 -0
- package/docs/fr/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/fr/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/fr/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/fr/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/fr/packages/vue-intlayer/exports.md +14 -10
- package/docs/fr/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/fr/plugins/sync-json.md +221 -49
- package/docs/fr/releases/v6.md +28 -0
- package/docs/fr/releases/v7.md +128 -0
- package/docs/fr/releases/v8.md +187 -1
- package/docs/fr/releases/v9.md +372 -0
- package/docs/fr/roadmap.md +6 -0
- package/docs/fr/self_hosting.md +349 -0
- package/docs/hi/CI_CD.md +4 -0
- package/docs/hi/autoFill.md +81 -0
- package/docs/hi/benchmark/solid.md +22 -0
- package/docs/hi/benchmark/svelte.md +22 -0
- package/docs/hi/benchmark/tanstack.md +22 -0
- package/docs/hi/cli/ci.md +22 -0
- package/docs/hi/cli/doc-review.md +110 -4
- package/docs/hi/cli/fill.md +8 -0
- package/docs/hi/cli/index.md +1 -1
- package/docs/hi/cli/login.md +0 -36
- package/docs/hi/cli/scan.md +1 -1
- package/docs/hi/compat/i18n-js.md +44 -0
- package/docs/hi/compat/i18next.md +59 -0
- package/docs/hi/compat/index.md +51 -0
- package/docs/hi/compat/lingui.md +44 -0
- package/docs/hi/compat/next-i18next.md +57 -0
- package/docs/hi/compat/next-intl.md +59 -0
- package/docs/hi/compat/next-translate.md +45 -0
- package/docs/hi/compat/ngx-translate.md +45 -0
- package/docs/hi/compat/nuxtjs-i18n.md +46 -0
- package/docs/hi/compat/polyglot.md +45 -0
- package/docs/hi/compat/react-i18next.md +58 -0
- package/docs/hi/compat/react-intl.md +55 -0
- package/docs/hi/compat/svelte-i18n.md +47 -0
- package/docs/hi/compat/transloco.md +45 -0
- package/docs/hi/compat/vue-i18n.md +58 -0
- package/docs/hi/compiler.md +9 -4
- package/docs/hi/configuration.md +67 -32
- package/docs/hi/custom_domains.md +9 -3
- package/docs/hi/custom_url_rewrites.md +9 -3
- package/docs/hi/dictionary/condition.md +167 -5
- package/docs/hi/dictionary/enumeration.md +353 -6
- package/docs/hi/dictionary/file.md +159 -1
- package/docs/hi/dictionary/gender.md +168 -7
- package/docs/hi/dictionary/nesting.md +188 -41
- package/docs/hi/dictionary/plurial.md +174 -5
- package/docs/hi/dictionary/translation.md +145 -56
- package/docs/hi/dynamic_dictionaries/collections.md +1 -1
- package/docs/hi/dynamic_dictionaries/index.md +29 -23
- package/docs/hi/dynamic_dictionaries/variants.md +283 -25
- package/docs/hi/formatters.md +85 -0
- package/docs/hi/how_works_intlayer.md +2 -0
- package/docs/hi/interest_of_intlayer.md +194 -0
- package/docs/hi/intlayer_CMS.md +22 -1
- package/docs/hi/intlayer_with_adonisjs.md +20 -4
- package/docs/hi/intlayer_with_analog.md +25 -5
- package/docs/hi/intlayer_with_angular_19.md +20 -4
- package/docs/hi/intlayer_with_angular_21.md +20 -4
- package/docs/hi/intlayer_with_astro.md +136 -6
- package/docs/hi/intlayer_with_astro_lit.md +7 -4
- package/docs/hi/intlayer_with_astro_preact.md +7 -4
- package/docs/hi/intlayer_with_astro_react.md +7 -4
- package/docs/hi/intlayer_with_astro_solid.md +7 -4
- package/docs/hi/intlayer_with_astro_svelte.md +7 -4
- package/docs/hi/intlayer_with_astro_vanilla.md +7 -4
- package/docs/hi/intlayer_with_astro_vue.md +27 -12
- package/docs/hi/intlayer_with_create_react_app.md +35 -4
- package/docs/hi/intlayer_with_express.md +20 -27
- package/docs/hi/intlayer_with_fastify.md +20 -8
- package/docs/hi/intlayer_with_hono.md +20 -4
- package/docs/hi/intlayer_with_lynx+react.md +26 -5
- package/docs/hi/intlayer_with_nestjs.md +20 -12
- package/docs/hi/intlayer_with_next-i18next.md +20 -4
- package/docs/hi/intlayer_with_nextjs_14.md +51 -12
- package/docs/hi/intlayer_with_nextjs_15.md +41 -5
- package/docs/hi/intlayer_with_nextjs_16.md +196 -58
- package/docs/hi/intlayer_with_nextjs_compiler.md +21 -5
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/hi/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/hi/intlayer_with_nuxt.md +20 -31
- package/docs/hi/intlayer_with_react_native+expo.md +131 -87
- package/docs/hi/intlayer_with_react_router_v7.md +27 -102
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +46 -103
- package/docs/hi/intlayer_with_storybook.md +7 -1
- package/docs/hi/intlayer_with_svelte_kit.md +19 -187
- package/docs/hi/intlayer_with_tanstack+solid.md +39 -14
- package/docs/hi/intlayer_with_tanstack.md +41 -15
- package/docs/hi/intlayer_with_vite+lit.md +29 -7
- package/docs/hi/intlayer_with_vite+preact.md +27 -8
- package/docs/hi/intlayer_with_vite+react.md +33 -11
- package/docs/hi/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/hi/intlayer_with_vite+solid.md +27 -8
- package/docs/hi/intlayer_with_vite+svelte.md +59 -56
- package/docs/hi/intlayer_with_vite+vanilla.md +37 -10
- package/docs/hi/intlayer_with_vite+vue.md +55 -81
- package/docs/hi/mcp_server.md +22 -0
- package/docs/hi/migration_from_i18next_to_intlayer.md +331 -0
- package/docs/hi/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/hi/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/hi/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/hi/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/hi/packages/@intlayer_babel/export.md +131 -0
- package/docs/hi/packages/angular-intlayer/exports.md +13 -9
- package/docs/hi/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/hi/packages/intlayer/comparePaths.md +173 -0
- package/docs/hi/packages/intlayer/exports.md +18 -13
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +68 -0
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/hi/packages/intlayer/index.md +20 -4
- package/docs/hi/packages/next-intlayer/exports.md +4 -0
- package/docs/hi/packages/next-intlayer/t.md +2 -0
- package/docs/hi/packages/next-intlayer/usePathname.md +136 -0
- package/docs/hi/packages/preact-intlayer/exports.md +10 -6
- package/docs/hi/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/hi/packages/react-intlayer/exports.md +3 -0
- package/docs/hi/packages/react-intlayer/useDictionary.md +0 -102
- package/docs/hi/packages/react-intlayer/useI18n.md +0 -4
- package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/hi/packages/react-intlayer/usePathname.md +87 -0
- package/docs/hi/packages/react-native-intlayer/exports.md +48 -14
- package/docs/hi/packages/solid-intlayer/exports.md +15 -11
- package/docs/hi/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/hi/packages/svelte-intlayer/exports.md +13 -9
- package/docs/hi/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/hi/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/hi/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/hi/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/hi/packages/vue-intlayer/exports.md +14 -10
- package/docs/hi/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/hi/plugins/sync-json.md +220 -48
- package/docs/hi/releases/v6.md +28 -0
- package/docs/hi/releases/v7.md +128 -0
- package/docs/hi/releases/v8.md +188 -2
- package/docs/hi/releases/v9.md +374 -0
- package/docs/hi/roadmap.md +6 -0
- package/docs/hi/self_hosting.md +349 -0
- package/docs/id/autoFill.md +20 -0
- package/docs/id/benchmark/solid.md +22 -0
- package/docs/id/benchmark/svelte.md +22 -0
- package/docs/id/benchmark/tanstack.md +22 -0
- package/docs/id/cli/ci.md +22 -0
- package/docs/id/cli/doc-review.md +110 -4
- package/docs/id/cli/fill.md +8 -0
- package/docs/id/cli/index.md +1 -1
- package/docs/id/cli/scan.md +1 -1
- package/docs/id/compat/i18n-js.md +44 -0
- package/docs/id/compat/i18next.md +59 -0
- package/docs/id/compat/index.md +51 -0
- package/docs/id/compat/lingui.md +44 -0
- package/docs/id/compat/next-i18next.md +57 -0
- package/docs/id/compat/next-intl.md +59 -0
- package/docs/id/compat/next-translate.md +45 -0
- package/docs/id/compat/ngx-translate.md +45 -0
- package/docs/id/compat/nuxtjs-i18n.md +46 -0
- package/docs/id/compat/polyglot.md +45 -0
- package/docs/id/compat/react-i18next.md +58 -0
- package/docs/id/compat/react-intl.md +55 -0
- package/docs/id/compat/svelte-i18n.md +47 -0
- package/docs/id/compat/transloco.md +45 -0
- package/docs/id/compat/vue-i18n.md +58 -0
- package/docs/id/compiler.md +9 -4
- package/docs/id/configuration.md +53 -18
- package/docs/id/custom_domains.md +9 -3
- package/docs/id/custom_url_rewrites.md +22 -18
- package/docs/id/dictionary/condition.md +167 -5
- package/docs/id/dictionary/content_file.md +0 -7
- package/docs/id/dictionary/enumeration.md +353 -6
- package/docs/id/dictionary/file.md +318 -2
- package/docs/id/dictionary/gender.md +381 -8
- package/docs/id/dictionary/nesting.md +359 -49
- package/docs/id/dictionary/plurial.md +174 -5
- package/docs/id/dictionary/translation.md +146 -53
- package/docs/id/dynamic_dictionaries/collections.md +1 -1
- package/docs/id/dynamic_dictionaries/index.md +26 -20
- package/docs/id/dynamic_dictionaries/variants.md +275 -17
- package/docs/id/formatters.md +120 -0
- package/docs/id/interest_of_intlayer.md +193 -0
- package/docs/id/intlayer_with_adonisjs.md +20 -4
- package/docs/id/intlayer_with_analog.md +25 -5
- package/docs/id/intlayer_with_angular_19.md +20 -4
- package/docs/id/intlayer_with_angular_21.md +20 -4
- package/docs/id/intlayer_with_astro.md +133 -4
- package/docs/id/intlayer_with_astro_lit.md +24 -10
- package/docs/id/intlayer_with_astro_preact.md +24 -10
- package/docs/id/intlayer_with_astro_react.md +24 -10
- package/docs/id/intlayer_with_astro_solid.md +24 -10
- package/docs/id/intlayer_with_astro_svelte.md +24 -10
- package/docs/id/intlayer_with_astro_vanilla.md +24 -10
- package/docs/id/intlayer_with_astro_vue.md +24 -10
- package/docs/id/intlayer_with_create_react_app.md +20 -4
- package/docs/id/intlayer_with_express.md +20 -4
- package/docs/id/intlayer_with_fastify.md +20 -8
- package/docs/id/intlayer_with_hono.md +20 -4
- package/docs/id/intlayer_with_lynx+react.md +26 -5
- package/docs/id/intlayer_with_nestjs.md +20 -4
- package/docs/id/intlayer_with_next-i18next.md +20 -4
- package/docs/id/intlayer_with_nextjs_14.md +21 -5
- package/docs/id/intlayer_with_nextjs_15.md +21 -5
- package/docs/id/intlayer_with_nextjs_16.md +198 -58
- package/docs/id/intlayer_with_nextjs_compiler.md +23 -26
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/id/intlayer_with_nextjs_page_router.md +21 -5
- package/docs/id/intlayer_with_nuxt.md +25 -7
- package/docs/id/intlayer_with_react_native+expo.md +45 -65
- package/docs/id/intlayer_with_react_router_v7.md +24 -100
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +10 -91
- package/docs/id/intlayer_with_storybook.md +7 -1
- package/docs/id/intlayer_with_svelte_kit.md +16 -185
- package/docs/id/intlayer_with_tanstack+solid.md +39 -14
- package/docs/id/intlayer_with_tanstack.md +38 -13
- package/docs/id/intlayer_with_vite+lit.md +29 -7
- package/docs/id/intlayer_with_vite+preact.md +80 -62
- package/docs/id/intlayer_with_vite+react.md +78 -57
- package/docs/id/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/id/intlayer_with_vite+solid.md +56 -47
- package/docs/id/intlayer_with_vite+svelte.md +52 -36
- package/docs/id/intlayer_with_vite+vanilla.md +37 -10
- package/docs/id/intlayer_with_vite+vue.md +78 -109
- package/docs/id/mcp_server.md +22 -0
- package/docs/id/migration_from_i18next_to_intlayer.md +330 -0
- package/docs/id/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/id/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/id/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/id/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/id/packages/@intlayer_babel/export.md +131 -0
- package/docs/id/packages/angular-intlayer/exports.md +14 -10
- package/docs/id/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/id/packages/intlayer/comparePaths.md +173 -0
- package/docs/id/packages/intlayer/exports.md +5 -0
- package/docs/id/packages/intlayer/getLocalizedUrl.md +25 -0
- package/docs/id/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/id/packages/next-intlayer/exports.md +4 -0
- package/docs/id/packages/next-intlayer/usePathname.md +136 -0
- package/docs/id/packages/preact-intlayer/exports.md +10 -6
- package/docs/id/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/id/packages/react-intlayer/exports.md +4 -0
- package/docs/id/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/id/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/id/packages/react-intlayer/usePathname.md +87 -0
- package/docs/id/packages/react-native-intlayer/exports.md +47 -13
- package/docs/id/packages/solid-intlayer/exports.md +4 -0
- package/docs/id/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/id/packages/svelte-intlayer/exports.md +13 -9
- package/docs/id/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/id/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/id/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/id/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/id/packages/vue-intlayer/exports.md +4 -0
- package/docs/id/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/id/plugins/sync-json.md +221 -49
- package/docs/id/releases/v6.md +4 -0
- package/docs/id/releases/v7.md +128 -0
- package/docs/id/releases/v8.md +191 -2
- package/docs/id/releases/v9.md +346 -0
- package/docs/id/roadmap.md +0 -16
- package/docs/id/self_hosting.md +349 -0
- package/docs/it/CI_CD.md +4 -0
- package/docs/it/autoFill.md +81 -0
- package/docs/it/benchmark/solid.md +22 -0
- package/docs/it/benchmark/svelte.md +22 -0
- package/docs/it/benchmark/tanstack.md +22 -0
- package/docs/it/cli/ci.md +22 -0
- package/docs/it/cli/doc-review.md +110 -4
- package/docs/it/cli/fill.md +8 -0
- package/docs/it/cli/index.md +1 -1
- package/docs/it/cli/scan.md +1 -1
- package/docs/it/compat/i18n-js.md +44 -0
- package/docs/it/compat/i18next.md +59 -0
- package/docs/it/compat/index.md +51 -0
- package/docs/it/compat/lingui.md +44 -0
- package/docs/it/compat/next-i18next.md +57 -0
- package/docs/it/compat/next-intl.md +59 -0
- package/docs/it/compat/next-translate.md +45 -0
- package/docs/it/compat/ngx-translate.md +45 -0
- package/docs/it/compat/nuxtjs-i18n.md +46 -0
- package/docs/it/compat/polyglot.md +45 -0
- package/docs/it/compat/react-i18next.md +58 -0
- package/docs/it/compat/react-intl.md +55 -0
- package/docs/it/compat/svelte-i18n.md +47 -0
- package/docs/it/compat/transloco.md +45 -0
- package/docs/it/compat/vue-i18n.md +58 -0
- package/docs/it/compiler.md +9 -4
- package/docs/it/configuration.md +67 -32
- package/docs/it/custom_domains.md +9 -3
- package/docs/it/custom_url_rewrites.md +9 -3
- package/docs/it/dictionary/condition.md +167 -5
- package/docs/it/dictionary/content_file.md +4 -7
- package/docs/it/dictionary/enumeration.md +349 -12
- package/docs/it/dictionary/file.md +326 -2
- package/docs/it/dictionary/gender.md +168 -7
- package/docs/it/dictionary/nesting.md +188 -41
- package/docs/it/dictionary/plurial.md +347 -7
- package/docs/it/dictionary/translation.md +146 -53
- package/docs/it/dynamic_dictionaries/collections.md +1 -1
- package/docs/it/dynamic_dictionaries/index.md +27 -21
- package/docs/it/dynamic_dictionaries/variants.md +274 -16
- package/docs/it/formatters.md +82 -0
- package/docs/it/how_works_intlayer.md +4 -4
- package/docs/it/intlayer_CMS.md +123 -1
- package/docs/it/intlayer_with_adonisjs.md +20 -4
- package/docs/it/intlayer_with_analog.md +25 -5
- package/docs/it/intlayer_with_angular_19.md +20 -4
- package/docs/it/intlayer_with_angular_21.md +20 -4
- package/docs/it/intlayer_with_astro.md +132 -3
- package/docs/it/intlayer_with_astro_lit.md +24 -10
- package/docs/it/intlayer_with_astro_preact.md +24 -10
- package/docs/it/intlayer_with_astro_react.md +24 -10
- package/docs/it/intlayer_with_astro_solid.md +24 -10
- package/docs/it/intlayer_with_astro_svelte.md +24 -10
- package/docs/it/intlayer_with_astro_vanilla.md +24 -10
- package/docs/it/intlayer_with_astro_vue.md +24 -10
- package/docs/it/intlayer_with_create_react_app.md +20 -18
- package/docs/it/intlayer_with_express.md +20 -8
- package/docs/it/intlayer_with_fastify.md +20 -8
- package/docs/it/intlayer_with_hono.md +20 -4
- package/docs/it/intlayer_with_lynx+react.md +37 -5
- package/docs/it/intlayer_with_nestjs.md +20 -12
- package/docs/it/intlayer_with_next-i18next.md +20 -4
- package/docs/it/intlayer_with_nextjs_14.md +50 -13
- package/docs/it/intlayer_with_nextjs_15.md +41 -5
- package/docs/it/intlayer_with_nextjs_16.md +198 -58
- package/docs/it/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/it/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/it/intlayer_with_nuxt.md +25 -7
- package/docs/it/intlayer_with_react_native+expo.md +81 -64
- package/docs/it/intlayer_with_react_router_v7.md +24 -100
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +4 -97
- package/docs/it/intlayer_with_storybook.md +7 -1
- package/docs/it/intlayer_with_svelte_kit.md +16 -217
- package/docs/it/intlayer_with_tanstack+solid.md +39 -14
- package/docs/it/intlayer_with_tanstack.md +38 -13
- package/docs/it/intlayer_with_vite+lit.md +34 -9
- package/docs/it/intlayer_with_vite+preact.md +84 -62
- package/docs/it/intlayer_with_vite+react.md +78 -57
- package/docs/it/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/it/intlayer_with_vite+solid.md +56 -47
- package/docs/it/intlayer_with_vite+svelte.md +51 -35
- package/docs/it/intlayer_with_vite+vanilla.md +37 -10
- package/docs/it/intlayer_with_vite+vue.md +82 -131
- package/docs/it/mcp_server.md +22 -0
- package/docs/it/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/it/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/it/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/it/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/it/packages/@intlayer_babel/export.md +131 -0
- package/docs/it/packages/angular-intlayer/exports.md +13 -9
- package/docs/it/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/it/packages/intlayer/comparePaths.md +173 -0
- package/docs/it/packages/intlayer/exports.md +18 -13
- package/docs/it/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/it/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/it/packages/next-intlayer/exports.md +4 -0
- package/docs/it/packages/next-intlayer/t.md +34 -0
- package/docs/it/packages/next-intlayer/usePathname.md +136 -0
- package/docs/it/packages/preact-intlayer/exports.md +10 -6
- package/docs/it/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/it/packages/react-intlayer/exports.md +20 -16
- package/docs/it/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/it/packages/react-intlayer/useIntlayer.md +0 -57
- package/docs/it/packages/react-intlayer/usePathname.md +87 -0
- package/docs/it/packages/react-native-intlayer/exports.md +47 -13
- package/docs/it/packages/solid-intlayer/exports.md +4 -0
- package/docs/it/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/it/packages/svelte-intlayer/exports.md +4 -0
- package/docs/it/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/it/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/it/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/it/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/it/packages/vue-intlayer/exports.md +4 -0
- package/docs/it/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/it/plugins/sync-json.md +223 -51
- package/docs/it/releases/v6.md +28 -0
- package/docs/it/releases/v7.md +128 -0
- package/docs/it/releases/v8.md +200 -2
- package/docs/it/releases/v9.md +376 -0
- package/docs/it/roadmap.md +6 -0
- package/docs/it/self_hosting.md +349 -0
- package/docs/ja/CI_CD.md +4 -0
- package/docs/ja/autoFill.md +81 -0
- package/docs/ja/benchmark/solid.md +22 -0
- package/docs/ja/benchmark/svelte.md +22 -0
- package/docs/ja/benchmark/tanstack.md +22 -0
- package/docs/ja/cli/ci.md +22 -0
- package/docs/ja/cli/doc-review.md +110 -4
- package/docs/ja/cli/fill.md +8 -0
- package/docs/ja/cli/index.md +1 -1
- package/docs/ja/cli/list_projects.md +0 -18
- package/docs/ja/cli/scan.md +1 -1
- package/docs/ja/compat/i18n-js.md +44 -0
- package/docs/ja/compat/i18next.md +59 -0
- package/docs/ja/compat/index.md +51 -0
- package/docs/ja/compat/lingui.md +44 -0
- package/docs/ja/compat/next-i18next.md +57 -0
- package/docs/ja/compat/next-intl.md +59 -0
- package/docs/ja/compat/next-translate.md +45 -0
- package/docs/ja/compat/ngx-translate.md +45 -0
- package/docs/ja/compat/nuxtjs-i18n.md +46 -0
- package/docs/ja/compat/polyglot.md +45 -0
- package/docs/ja/compat/react-i18next.md +58 -0
- package/docs/ja/compat/react-intl.md +55 -0
- package/docs/ja/compat/svelte-i18n.md +47 -0
- package/docs/ja/compat/transloco.md +45 -0
- package/docs/ja/compat/vue-i18n.md +58 -0
- package/docs/ja/compiler.md +9 -4
- package/docs/ja/configuration.md +68 -33
- package/docs/ja/custom_domains.md +9 -3
- package/docs/ja/custom_url_rewrites.md +9 -3
- package/docs/ja/dictionary/condition.md +167 -5
- package/docs/ja/dictionary/content_file.md +4 -0
- package/docs/ja/dictionary/enumeration.md +353 -6
- package/docs/ja/dictionary/file.md +151 -1
- package/docs/ja/dictionary/function_fetching.md +0 -27
- package/docs/ja/dictionary/gender.md +168 -7
- package/docs/ja/dictionary/markdown.md +1348 -0
- package/docs/ja/dictionary/nesting.md +187 -40
- package/docs/ja/dictionary/plurial.md +174 -5
- package/docs/ja/dictionary/translation.md +134 -92
- package/docs/ja/dynamic_dictionaries/collections.md +1 -1
- package/docs/ja/dynamic_dictionaries/index.md +28 -22
- package/docs/ja/dynamic_dictionaries/variants.md +277 -19
- package/docs/ja/formatters.md +77 -0
- package/docs/ja/how_works_intlayer.md +4 -2
- package/docs/ja/intlayer_CMS.md +197 -10
- package/docs/ja/intlayer_visual_editor.md +0 -4
- package/docs/ja/intlayer_with_adonisjs.md +20 -4
- package/docs/ja/intlayer_with_analog.md +29 -5
- package/docs/ja/intlayer_with_angular_19.md +20 -4
- package/docs/ja/intlayer_with_angular_21.md +20 -4
- package/docs/ja/intlayer_with_astro.md +131 -2
- package/docs/ja/intlayer_with_astro_lit.md +23 -9
- package/docs/ja/intlayer_with_astro_preact.md +23 -9
- package/docs/ja/intlayer_with_astro_react.md +23 -9
- package/docs/ja/intlayer_with_astro_solid.md +23 -9
- package/docs/ja/intlayer_with_astro_svelte.md +23 -9
- package/docs/ja/intlayer_with_astro_vanilla.md +23 -9
- package/docs/ja/intlayer_with_astro_vue.md +23 -9
- package/docs/ja/intlayer_with_create_react_app.md +20 -20
- package/docs/ja/intlayer_with_express.md +20 -8
- package/docs/ja/intlayer_with_fastify.md +20 -8
- package/docs/ja/intlayer_with_hono.md +20 -4
- package/docs/ja/intlayer_with_lynx+react.md +26 -5
- package/docs/ja/intlayer_with_nestjs.md +20 -12
- package/docs/ja/intlayer_with_next-i18next.md +20 -4
- package/docs/ja/intlayer_with_nextjs_14.md +46 -24
- package/docs/ja/intlayer_with_nextjs_15.md +41 -5
- package/docs/ja/intlayer_with_nextjs_16.md +198 -58
- package/docs/ja/intlayer_with_nextjs_compiler.md +23 -26
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/ja/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/ja/intlayer_with_nuxt.md +25 -7
- package/docs/ja/intlayer_with_react_native+expo.md +139 -137
- package/docs/ja/intlayer_with_react_router_v7.md +9 -26
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +4 -97
- package/docs/ja/intlayer_with_storybook.md +7 -1
- package/docs/ja/intlayer_with_svelte_kit.md +14 -1
- package/docs/ja/intlayer_with_tanstack+solid.md +39 -14
- package/docs/ja/intlayer_with_tanstack.md +39 -14
- package/docs/ja/intlayer_with_vite+lit.md +34 -9
- package/docs/ja/intlayer_with_vite+preact.md +709 -1
- package/docs/ja/intlayer_with_vite+react.md +293 -1
- package/docs/ja/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/ja/intlayer_with_vite+solid.md +56 -47
- package/docs/ja/intlayer_with_vite+svelte.md +54 -36
- package/docs/ja/intlayer_with_vite+vanilla.md +37 -10
- package/docs/ja/intlayer_with_vite+vue.md +99 -122
- package/docs/ja/mcp_server.md +26 -0
- package/docs/ja/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/ja/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/ja/packages/@intlayer_babel/export.md +131 -0
- package/docs/ja/packages/angular-intlayer/exports.md +13 -9
- package/docs/ja/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/ja/packages/express-intlayer/t.md +0 -9
- package/docs/ja/packages/intlayer/comparePaths.md +173 -0
- package/docs/ja/packages/intlayer/exports.md +5 -0
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/ja/packages/next-intlayer/exports.md +4 -0
- package/docs/ja/packages/next-intlayer/usePathname.md +136 -0
- package/docs/ja/packages/preact-intlayer/exports.md +10 -6
- package/docs/ja/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/ja/packages/react-intlayer/exports.md +21 -16
- package/docs/ja/packages/react-intlayer/useDictionary.md +0 -107
- package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -65
- package/docs/ja/packages/react-intlayer/usePathname.md +87 -0
- package/docs/ja/packages/react-native-intlayer/exports.md +47 -14
- package/docs/ja/packages/solid-intlayer/exports.md +4 -0
- package/docs/ja/packages/solid-intlayer/usePathname.md +120 -0
- package/docs/ja/packages/svelte-intlayer/exports.md +13 -9
- package/docs/ja/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/ja/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ja/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ja/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ja/packages/vue-intlayer/exports.md +4 -0
- package/docs/ja/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/ja/plugins/sync-json.md +221 -49
- package/docs/ja/releases/v6.md +28 -0
- package/docs/ja/releases/v7.md +128 -0
- package/docs/ja/releases/v8.md +193 -4
- package/docs/ja/releases/v9.md +346 -0
- package/docs/ja/roadmap.md +6 -0
- package/docs/ja/self_hosting.md +349 -0
- package/docs/ko/CI_CD.md +4 -0
- package/docs/ko/autoFill.md +81 -0
- package/docs/ko/benchmark/solid.md +22 -0
- package/docs/ko/benchmark/svelte.md +22 -0
- package/docs/ko/benchmark/tanstack.md +22 -0
- package/docs/ko/cli/ci.md +22 -0
- package/docs/ko/cli/doc-review.md +110 -4
- package/docs/ko/cli/fill.md +8 -0
- package/docs/ko/cli/index.md +1 -1
- package/docs/ko/cli/login.md +0 -36
- package/docs/ko/cli/scan.md +1 -1
- package/docs/ko/compat/i18n-js.md +44 -0
- package/docs/ko/compat/i18next.md +59 -0
- package/docs/ko/compat/index.md +51 -0
- package/docs/ko/compat/lingui.md +44 -0
- package/docs/ko/compat/next-i18next.md +55 -0
- package/docs/ko/compat/next-intl.md +59 -0
- package/docs/ko/compat/next-translate.md +45 -0
- package/docs/ko/compat/ngx-translate.md +45 -0
- package/docs/ko/compat/nuxtjs-i18n.md +46 -0
- package/docs/ko/compat/polyglot.md +45 -0
- package/docs/ko/compat/react-i18next.md +58 -0
- package/docs/ko/compat/react-intl.md +55 -0
- package/docs/ko/compat/svelte-i18n.md +47 -0
- package/docs/ko/compat/transloco.md +45 -0
- package/docs/ko/compat/vue-i18n.md +58 -0
- package/docs/ko/compiler.md +9 -4
- package/docs/ko/configuration.md +67 -32
- package/docs/ko/custom_domains.md +9 -3
- package/docs/ko/custom_url_rewrites.md +9 -3
- package/docs/ko/dictionary/condition.md +167 -5
- package/docs/ko/dictionary/content_file.md +4 -27
- package/docs/ko/dictionary/enumeration.md +353 -6
- package/docs/ko/dictionary/file.md +151 -1
- package/docs/ko/dictionary/gender.md +168 -7
- package/docs/ko/dictionary/insertion.md +0 -6
- package/docs/ko/dictionary/nesting.md +187 -40
- package/docs/ko/dictionary/plurial.md +174 -5
- package/docs/ko/dictionary/translation.md +142 -65
- package/docs/ko/dynamic_dictionaries/collections.md +1 -1
- package/docs/ko/dynamic_dictionaries/index.md +24 -18
- package/docs/ko/dynamic_dictionaries/variants.md +274 -16
- package/docs/ko/formatters.md +71 -0
- package/docs/ko/how_works_intlayer.md +4 -0
- package/docs/ko/intlayer_CMS.md +195 -6
- package/docs/ko/intlayer_visual_editor.md +0 -2
- package/docs/ko/intlayer_with_adonisjs.md +20 -4
- package/docs/ko/intlayer_with_analog.md +51 -11
- package/docs/ko/intlayer_with_angular_19.md +42 -10
- package/docs/ko/intlayer_with_angular_21.md +42 -10
- package/docs/ko/intlayer_with_astro.md +159 -10
- package/docs/ko/intlayer_with_astro_lit.md +35 -11
- package/docs/ko/intlayer_with_astro_preact.md +35 -11
- package/docs/ko/intlayer_with_astro_react.md +35 -11
- package/docs/ko/intlayer_with_astro_solid.md +35 -11
- package/docs/ko/intlayer_with_astro_svelte.md +35 -11
- package/docs/ko/intlayer_with_astro_vanilla.md +32 -10
- package/docs/ko/intlayer_with_astro_vue.md +55 -19
- package/docs/ko/intlayer_with_create_react_app.md +39 -23
- package/docs/ko/intlayer_with_express.md +20 -27
- package/docs/ko/intlayer_with_fastify.md +20 -8
- package/docs/ko/intlayer_with_hono.md +20 -4
- package/docs/ko/intlayer_with_lynx+react.md +6 -109
- package/docs/ko/intlayer_with_nestjs.md +20 -22
- package/docs/ko/intlayer_with_next-i18next.md +20 -4
- package/docs/ko/intlayer_with_nextjs_14.md +59 -25
- package/docs/ko/intlayer_with_nextjs_15.md +84 -18
- package/docs/ko/intlayer_with_nextjs_16.md +230 -67
- package/docs/ko/intlayer_with_nextjs_compiler.md +34 -297
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +51 -15
- package/docs/ko/intlayer_with_nextjs_page_router.md +62 -16
- package/docs/ko/intlayer_with_nuxt.md +54 -14
- package/docs/ko/intlayer_with_react_native+expo.md +134 -137
- package/docs/ko/intlayer_with_react_router_v7.md +61 -105
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +80 -106
- package/docs/ko/intlayer_with_storybook.md +35 -9
- package/docs/ko/intlayer_with_svelte_kit.md +53 -182
- package/docs/ko/intlayer_with_tanstack+solid.md +97 -32
- package/docs/ko/intlayer_with_tanstack.md +96 -31
- package/docs/ko/intlayer_with_vanilla.md +31 -9
- package/docs/ko/intlayer_with_vite+lit.md +74 -21
- package/docs/ko/intlayer_with_vite+preact.md +110 -100
- package/docs/ko/intlayer_with_vite+react.md +127 -484
- package/docs/ko/intlayer_with_vite+react_compiler.md +52 -13
- package/docs/ko/intlayer_with_vite+solid.md +86 -154
- package/docs/ko/intlayer_with_vite+svelte.md +83 -45
- package/docs/ko/intlayer_with_vite+vanilla.md +80 -23
- package/docs/ko/intlayer_with_vite+vue.md +114 -119
- package/docs/ko/mcp_server.md +22 -0
- package/docs/ko/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/ko/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/ko/packages/@intlayer_babel/export.md +131 -0
- package/docs/ko/packages/angular-intlayer/exports.md +14 -10
- package/docs/ko/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/ko/packages/express-intlayer/t.md +0 -9
- package/docs/ko/packages/intlayer/comparePaths.md +173 -0
- package/docs/ko/packages/intlayer/exports.md +5 -0
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/ko/packages/next-intlayer/exports.md +4 -0
- package/docs/ko/packages/next-intlayer/t.md +34 -0
- package/docs/ko/packages/next-intlayer/useLocale.md +0 -5
- package/docs/ko/packages/next-intlayer/usePathname.md +140 -0
- package/docs/ko/packages/preact-intlayer/exports.md +10 -6
- package/docs/ko/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/ko/packages/react-intlayer/exports.md +4 -0
- package/docs/ko/packages/react-intlayer/t.md +0 -20
- package/docs/ko/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/ko/packages/react-intlayer/usePathname.md +87 -0
- package/docs/ko/packages/react-native-intlayer/exports.md +48 -14
- package/docs/ko/packages/solid-intlayer/exports.md +4 -0
- package/docs/ko/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/ko/packages/svelte-intlayer/exports.md +4 -0
- package/docs/ko/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/ko/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ko/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ko/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ko/packages/vue-intlayer/exports.md +4 -0
- package/docs/ko/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/ko/plugins/sync-json.md +222 -50
- package/docs/ko/releases/v6.md +28 -0
- package/docs/ko/releases/v7.md +128 -0
- package/docs/ko/releases/v8.md +192 -1
- package/docs/ko/releases/v9.md +345 -0
- package/docs/ko/roadmap.md +6 -0
- package/docs/ko/self_hosting.md +349 -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/nl/custom_domains.md +8 -2
- package/docs/nl/intlayer_with_angular_21.md +20 -4
- package/docs/nl/intlayer_with_fastify.md +20 -8
- package/docs/nl/intlayer_with_hono.md +20 -4
- package/docs/nl/intlayer_with_storybook.md +7 -1
- package/docs/nl/intlayer_with_vite+lit.md +28 -6
- package/docs/nl/intlayer_with_vite+vanilla.md +36 -9
- package/docs/nl/packages/intlayer/comparePaths.md +173 -0
- package/docs/nl/releases/v9.md +358 -0
- package/docs/pl/autoFill.md +20 -0
- package/docs/pl/benchmark/___NOTE.md +101 -0
- package/docs/pl/benchmark/___nextjs.md +198 -0
- package/docs/pl/benchmark/___solid.md +36 -0
- package/docs/pl/benchmark/___svelte.md +36 -0
- package/docs/pl/benchmark/___tanstack.md +36 -0
- package/docs/pl/benchmark/___vue.md +36 -0
- package/docs/pl/benchmark/solid.md +22 -0
- package/docs/pl/benchmark/svelte.md +22 -0
- package/docs/pl/benchmark/tanstack.md +22 -0
- package/docs/pl/cli/ci.md +22 -0
- package/docs/pl/cli/doc-review.md +110 -4
- package/docs/pl/cli/fill.md +8 -0
- package/docs/pl/cli/index.md +1 -1
- package/docs/pl/cli/login.md +0 -36
- package/docs/pl/cli/scan.md +1 -1
- package/docs/pl/compat/i18n-js.md +44 -0
- package/docs/pl/compat/i18next.md +59 -0
- package/docs/pl/compat/index.md +51 -0
- package/docs/pl/compat/lingui.md +44 -0
- package/docs/pl/compat/next-i18next.md +57 -0
- package/docs/pl/compat/next-intl.md +59 -0
- package/docs/pl/compat/next-translate.md +45 -0
- package/docs/pl/compat/ngx-translate.md +45 -0
- package/docs/pl/compat/nuxtjs-i18n.md +46 -0
- package/docs/pl/compat/polyglot.md +45 -0
- package/docs/pl/compat/react-i18next.md +58 -0
- package/docs/pl/compat/react-intl.md +55 -0
- package/docs/pl/compat/svelte-i18n.md +47 -0
- package/docs/pl/compat/transloco.md +45 -0
- package/docs/pl/compat/vue-i18n.md +58 -0
- package/docs/pl/compiler.md +6 -3
- package/docs/pl/configuration.md +50 -18
- package/docs/pl/custom_domains.md +8 -2
- package/docs/pl/custom_url_rewrites.md +8 -2
- package/docs/pl/dictionary/condition.md +167 -5
- package/docs/pl/dictionary/content_file.md +0 -40
- package/docs/pl/dictionary/enumeration.md +353 -6
- package/docs/pl/dictionary/file.md +318 -2
- package/docs/pl/dictionary/gender.md +168 -7
- package/docs/pl/dictionary/nesting.md +187 -40
- package/docs/pl/dictionary/plurial.md +174 -5
- package/docs/pl/dictionary/translation.md +146 -53
- package/docs/pl/dynamic_dictionaries/collections.md +1 -1
- package/docs/pl/dynamic_dictionaries/index.md +27 -21
- package/docs/pl/dynamic_dictionaries/variants.md +276 -18
- package/docs/pl/formatters.md +120 -0
- package/docs/pl/intlayer_CMS.md +16 -1
- package/docs/pl/intlayer_with_adonisjs.md +20 -4
- package/docs/pl/intlayer_with_analog.md +25 -5
- package/docs/pl/intlayer_with_angular_19.md +20 -4
- package/docs/pl/intlayer_with_angular_21.md +20 -4
- package/docs/pl/intlayer_with_astro.md +182 -1
- package/docs/pl/intlayer_with_astro_lit.md +23 -9
- package/docs/pl/intlayer_with_astro_preact.md +23 -9
- package/docs/pl/intlayer_with_astro_react.md +23 -9
- package/docs/pl/intlayer_with_astro_solid.md +23 -9
- package/docs/pl/intlayer_with_astro_svelte.md +23 -9
- package/docs/pl/intlayer_with_astro_vanilla.md +23 -9
- package/docs/pl/intlayer_with_astro_vue.md +23 -9
- package/docs/pl/intlayer_with_create_react_app.md +20 -4
- package/docs/pl/intlayer_with_express.md +20 -4
- package/docs/pl/intlayer_with_fastify.md +20 -8
- package/docs/pl/intlayer_with_hono.md +20 -4
- package/docs/pl/intlayer_with_lynx+react.md +26 -5
- package/docs/pl/intlayer_with_nestjs.md +20 -4
- package/docs/pl/intlayer_with_next-i18next.md +20 -4
- package/docs/pl/intlayer_with_nextjs_14.md +20 -4
- package/docs/pl/intlayer_with_nextjs_15.md +20 -4
- package/docs/pl/intlayer_with_nextjs_16.md +22 -4
- package/docs/pl/intlayer_with_nextjs_compiler.md +22 -4
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +20 -4
- package/docs/pl/intlayer_with_nextjs_page_router.md +20 -4
- package/docs/pl/intlayer_with_nuxt.md +25 -7
- package/docs/pl/intlayer_with_react_native+expo.md +75 -78
- package/docs/pl/intlayer_with_react_router_v7.md +23 -99
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +3 -96
- package/docs/pl/intlayer_with_storybook.md +7 -1
- package/docs/pl/intlayer_with_svelte_kit.md +15 -188
- package/docs/pl/intlayer_with_tanstack+solid.md +38 -13
- package/docs/pl/intlayer_with_tanstack.md +37 -12
- package/docs/pl/intlayer_with_vite+lit.md +28 -6
- package/docs/pl/intlayer_with_vite+preact.md +79 -61
- package/docs/pl/intlayer_with_vite+react.md +77 -56
- package/docs/pl/intlayer_with_vite+react_compiler.md +29 -6
- package/docs/pl/intlayer_with_vite+solid.md +55 -46
- package/docs/pl/intlayer_with_vite+svelte.md +52 -34
- package/docs/pl/intlayer_with_vite+vanilla.md +36 -9
- package/docs/pl/intlayer_with_vite+vue.md +77 -78
- package/docs/pl/mcp_server.md +22 -0
- package/docs/pl/migration_from_i18next_to_intlayer.md +230 -0
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +351 -0
- package/docs/pl/migration_from_next-intl_to_intlayer.md +360 -0
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +324 -0
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +380 -0
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +232 -0
- package/docs/pl/packages/@intlayer_babel/export.md +131 -0
- package/docs/pl/packages/angular-intlayer/exports.md +13 -9
- package/docs/pl/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/pl/packages/intlayer/comparePaths.md +173 -0
- package/docs/pl/packages/intlayer/exports.md +5 -0
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +19 -0
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/pl/packages/next-intlayer/exports.md +4 -0
- package/docs/pl/packages/next-intlayer/usePathname.md +136 -0
- package/docs/pl/packages/preact-intlayer/exports.md +10 -6
- package/docs/pl/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/pl/packages/react-intlayer/exports.md +4 -0
- package/docs/pl/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/pl/packages/react-intlayer/usePathname.md +87 -0
- package/docs/pl/packages/react-native-intlayer/exports.md +47 -13
- package/docs/pl/packages/solid-intlayer/exports.md +4 -0
- package/docs/pl/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/pl/packages/svelte-intlayer/exports.md +4 -0
- package/docs/pl/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/pl/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/pl/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/pl/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/pl/packages/vue-intlayer/exports.md +4 -0
- package/docs/pl/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/pl/plugins/sync-json.md +222 -50
- package/docs/pl/releases/v6.md +4 -0
- package/docs/pl/releases/v7.md +128 -0
- package/docs/pl/releases/v8.md +188 -2
- package/docs/pl/releases/v9.md +373 -0
- package/docs/pl/roadmap.md +0 -16
- package/docs/pl/self_hosting.md +349 -0
- package/docs/pt/CI_CD.md +4 -0
- package/docs/pt/autoFill.md +117 -14
- package/docs/pt/benchmark/index.md +5 -5
- package/docs/pt/benchmark/solid.md +22 -0
- package/docs/pt/benchmark/svelte.md +22 -0
- package/docs/pt/benchmark/tanstack.md +22 -0
- package/docs/pt/cli/ci.md +22 -0
- package/docs/pt/cli/doc-review.md +110 -4
- package/docs/pt/cli/fill.md +8 -0
- package/docs/pt/cli/index.md +1 -1
- package/docs/pt/cli/login.md +0 -36
- package/docs/pt/cli/scan.md +1 -1
- package/docs/pt/compat/i18n-js.md +44 -0
- package/docs/pt/compat/i18next.md +59 -0
- package/docs/pt/compat/index.md +51 -0
- package/docs/pt/compat/lingui.md +44 -0
- package/docs/pt/compat/next-i18next.md +57 -0
- package/docs/pt/compat/next-intl.md +59 -0
- package/docs/pt/compat/next-translate.md +45 -0
- package/docs/pt/compat/ngx-translate.md +45 -0
- package/docs/pt/compat/nuxtjs-i18n.md +46 -0
- package/docs/pt/compat/polyglot.md +45 -0
- package/docs/pt/compat/react-i18next.md +58 -0
- package/docs/pt/compat/react-intl.md +55 -0
- package/docs/pt/compat/svelte-i18n.md +47 -0
- package/docs/pt/compat/transloco.md +45 -0
- package/docs/pt/compat/vue-i18n.md +58 -0
- package/docs/pt/compiler.md +8 -5
- package/docs/pt/configuration.md +65 -33
- package/docs/pt/custom_domains.md +9 -8
- package/docs/pt/custom_url_rewrites.md +9 -3
- package/docs/pt/dictionary/condition.md +167 -5
- package/docs/pt/dictionary/content_file.md +4 -7
- package/docs/pt/dictionary/enumeration.md +353 -6
- package/docs/pt/dictionary/file.md +159 -1
- package/docs/pt/dictionary/gender.md +168 -7
- package/docs/pt/dictionary/nesting.md +187 -40
- package/docs/pt/dictionary/plurial.md +347 -7
- package/docs/pt/dictionary/translation.md +146 -53
- package/docs/pt/dynamic_dictionaries/collections.md +1 -1
- package/docs/pt/dynamic_dictionaries/index.md +26 -20
- package/docs/pt/dynamic_dictionaries/variants.md +277 -19
- package/docs/pt/formatters.md +86 -0
- package/docs/pt/how_works_intlayer.md +4 -0
- package/docs/pt/intlayer_CMS.md +138 -1
- package/docs/pt/intlayer_with_adonisjs.md +20 -4
- package/docs/pt/intlayer_with_analog.md +28 -8
- package/docs/pt/intlayer_with_angular_19.md +27 -11
- package/docs/pt/intlayer_with_angular_21.md +23 -7
- package/docs/pt/intlayer_with_astro.md +185 -4
- package/docs/pt/intlayer_with_astro_lit.md +26 -12
- package/docs/pt/intlayer_with_astro_preact.md +26 -12
- package/docs/pt/intlayer_with_astro_react.md +26 -12
- package/docs/pt/intlayer_with_astro_solid.md +26 -12
- package/docs/pt/intlayer_with_astro_svelte.md +26 -12
- package/docs/pt/intlayer_with_astro_vanilla.md +26 -12
- package/docs/pt/intlayer_with_astro_vue.md +26 -12
- package/docs/pt/intlayer_with_create_react_app.md +20 -18
- package/docs/pt/intlayer_with_express.md +20 -27
- package/docs/pt/intlayer_with_fastify.md +20 -8
- package/docs/pt/intlayer_with_hono.md +20 -4
- package/docs/pt/intlayer_with_lynx+react.md +40 -8
- package/docs/pt/intlayer_with_nestjs.md +20 -22
- package/docs/pt/intlayer_with_next-i18next.md +20 -4
- package/docs/pt/intlayer_with_nextjs_14.md +46 -11
- package/docs/pt/intlayer_with_nextjs_15.md +47 -11
- package/docs/pt/intlayer_with_nextjs_16.md +28 -10
- package/docs/pt/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +26 -10
- package/docs/pt/intlayer_with_nextjs_page_router.md +30 -10
- package/docs/pt/intlayer_with_nuxt.md +28 -10
- package/docs/pt/intlayer_with_react_native+expo.md +85 -65
- package/docs/pt/intlayer_with_react_router_v7.md +36 -91
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +6 -99
- package/docs/pt/intlayer_with_storybook.md +10 -4
- package/docs/pt/intlayer_with_svelte_kit.md +18 -223
- package/docs/pt/intlayer_with_tanstack+solid.md +41 -16
- package/docs/pt/intlayer_with_tanstack.md +40 -15
- package/docs/pt/intlayer_with_vanilla.md +3 -3
- package/docs/pt/intlayer_with_vite+lit.md +36 -11
- package/docs/pt/intlayer_with_vite+preact.md +26 -8
- package/docs/pt/intlayer_with_vite+react.md +39 -18
- package/docs/pt/intlayer_with_vite+react_compiler.md +34 -11
- package/docs/pt/intlayer_with_vite+solid.md +26 -8
- package/docs/pt/intlayer_with_vite+svelte.md +55 -37
- package/docs/pt/intlayer_with_vite+vanilla.md +39 -12
- package/docs/pt/intlayer_with_vite+vue.md +36 -11
- package/docs/pt/mcp_server.md +22 -0
- package/docs/pt/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/pt/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/pt/packages/@intlayer_babel/export.md +131 -0
- package/docs/pt/packages/angular-intlayer/exports.md +14 -10
- package/docs/pt/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/pt/packages/hono-intlayer/t.md +1 -1
- package/docs/pt/packages/intlayer/comparePaths.md +173 -0
- package/docs/pt/packages/intlayer/exports.md +5 -0
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/pt/packages/next-intlayer/exports.md +4 -0
- package/docs/pt/packages/next-intlayer/t.md +34 -0
- package/docs/pt/packages/next-intlayer/usePathname.md +136 -0
- package/docs/pt/packages/preact-intlayer/exports.md +10 -6
- package/docs/pt/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/pt/packages/react-intlayer/exports.md +21 -17
- package/docs/pt/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/pt/packages/react-intlayer/usePathname.md +87 -0
- package/docs/pt/packages/react-native-intlayer/exports.md +47 -13
- package/docs/pt/packages/solid-intlayer/exports.md +4 -0
- package/docs/pt/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/pt/packages/svelte-intlayer/exports.md +4 -0
- package/docs/pt/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/pt/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/pt/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/pt/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/pt/packages/vue-intlayer/exports.md +5 -1
- package/docs/pt/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/pt/plugins/sync-json.md +221 -49
- package/docs/pt/plugins/sync-po.md +1 -1
- package/docs/pt/readme.md +3 -3
- package/docs/pt/releases/v6.md +28 -0
- package/docs/pt/releases/v7.md +128 -0
- package/docs/pt/releases/v8.md +187 -1
- package/docs/pt/releases/v9.md +376 -0
- package/docs/pt/roadmap.md +6 -0
- package/docs/pt/self_hosting.md +349 -0
- package/docs/ru/CI_CD.md +4 -0
- package/docs/ru/autoFill.md +81 -0
- package/docs/ru/benchmark/solid.md +22 -0
- package/docs/ru/benchmark/svelte.md +22 -0
- package/docs/ru/benchmark/tanstack.md +22 -0
- package/docs/ru/cli/ci.md +22 -0
- package/docs/ru/cli/doc-review.md +110 -4
- package/docs/ru/cli/fill.md +8 -0
- package/docs/ru/cli/index.md +1 -1
- package/docs/ru/cli/login.md +0 -36
- package/docs/ru/cli/scan.md +1 -1
- package/docs/ru/compat/i18n-js.md +44 -0
- package/docs/ru/compat/i18next.md +59 -0
- package/docs/ru/compat/index.md +51 -0
- package/docs/ru/compat/lingui.md +44 -0
- package/docs/ru/compat/next-i18next.md +57 -0
- package/docs/ru/compat/next-intl.md +59 -0
- package/docs/ru/compat/next-translate.md +45 -0
- package/docs/ru/compat/ngx-translate.md +45 -0
- package/docs/ru/compat/nuxtjs-i18n.md +46 -0
- package/docs/ru/compat/polyglot.md +45 -0
- package/docs/ru/compat/react-i18next.md +58 -0
- package/docs/ru/compat/react-intl.md +55 -0
- package/docs/ru/compat/svelte-i18n.md +47 -0
- package/docs/ru/compat/transloco.md +45 -0
- package/docs/ru/compat/vue-i18n.md +58 -0
- package/docs/ru/compiler.md +9 -4
- package/docs/ru/configuration.md +53 -18
- package/docs/ru/custom_domains.md +9 -3
- package/docs/ru/custom_url_rewrites.md +9 -3
- package/docs/ru/dictionary/condition.md +366 -39
- package/docs/ru/dictionary/content_file.md +4 -27
- package/docs/ru/dictionary/enumeration.md +584 -13
- package/docs/ru/dictionary/file.md +326 -2
- package/docs/ru/dictionary/gender.md +168 -7
- package/docs/ru/dictionary/markdown.md +510 -0
- package/docs/ru/dictionary/nesting.md +376 -71
- package/docs/ru/dictionary/plurial.md +347 -7
- package/docs/ru/dictionary/translation.md +316 -89
- package/docs/ru/dynamic_dictionaries/collections.md +1 -1
- package/docs/ru/dynamic_dictionaries/index.md +26 -20
- package/docs/ru/dynamic_dictionaries/variants.md +278 -20
- package/docs/ru/formatters.md +136 -0
- package/docs/ru/how_works_intlayer.md +4 -0
- package/docs/ru/intlayer_CMS.md +202 -15
- package/docs/ru/intlayer_with_adonisjs.md +20 -4
- package/docs/ru/intlayer_with_analog.md +25 -5
- package/docs/ru/intlayer_with_angular_19.md +20 -4
- package/docs/ru/intlayer_with_angular_21.md +20 -4
- package/docs/ru/intlayer_with_astro.md +132 -3
- package/docs/ru/intlayer_with_astro_lit.md +4 -2
- package/docs/ru/intlayer_with_astro_preact.md +4 -2
- package/docs/ru/intlayer_with_astro_react.md +4 -2
- package/docs/ru/intlayer_with_astro_solid.md +4 -2
- package/docs/ru/intlayer_with_astro_svelte.md +4 -2
- package/docs/ru/intlayer_with_astro_vanilla.md +4 -2
- package/docs/ru/intlayer_with_astro_vue.md +24 -10
- package/docs/ru/intlayer_with_create_react_app.md +20 -4
- package/docs/ru/intlayer_with_express.md +20 -27
- package/docs/ru/intlayer_with_fastify.md +20 -8
- package/docs/ru/intlayer_with_hono.md +20 -4
- package/docs/ru/intlayer_with_lynx+react.md +26 -5
- package/docs/ru/intlayer_with_nestjs.md +20 -22
- package/docs/ru/intlayer_with_next-i18next.md +20 -4
- package/docs/ru/intlayer_with_nextjs_14.md +51 -12
- package/docs/ru/intlayer_with_nextjs_15.md +41 -5
- package/docs/ru/intlayer_with_nextjs_16.md +23 -5
- package/docs/ru/intlayer_with_nextjs_compiler.md +23 -5
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/ru/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/ru/intlayer_with_nuxt.md +25 -7
- package/docs/ru/intlayer_with_react_native+expo.md +90 -71
- package/docs/ru/intlayer_with_react_router_v7.md +24 -100
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +4 -97
- package/docs/ru/intlayer_with_storybook.md +7 -1
- package/docs/ru/intlayer_with_svelte_kit.md +16 -185
- package/docs/ru/intlayer_with_tanstack+solid.md +39 -14
- package/docs/ru/intlayer_with_tanstack.md +38 -13
- package/docs/ru/intlayer_with_vite+lit.md +34 -9
- package/docs/ru/intlayer_with_vite+preact.md +80 -62
- package/docs/ru/intlayer_with_vite+react.md +80 -56
- package/docs/ru/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/ru/intlayer_with_vite+solid.md +56 -47
- package/docs/ru/intlayer_with_vite+svelte.md +51 -35
- package/docs/ru/intlayer_with_vite+vanilla.md +37 -10
- package/docs/ru/intlayer_with_vite+vue.md +82 -109
- package/docs/ru/mcp_server.md +22 -0
- package/docs/ru/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/ru/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/ru/packages/@intlayer_babel/export.md +131 -0
- package/docs/ru/packages/angular-intlayer/exports.md +13 -9
- package/docs/ru/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/ru/packages/intlayer/comparePaths.md +173 -0
- package/docs/ru/packages/intlayer/exports.md +5 -0
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/ru/packages/next-intlayer/exports.md +4 -0
- package/docs/ru/packages/next-intlayer/t.md +34 -0
- package/docs/ru/packages/next-intlayer/usePathname.md +136 -0
- package/docs/ru/packages/preact-intlayer/exports.md +10 -6
- package/docs/ru/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/ru/packages/react-intlayer/exports.md +4 -0
- package/docs/ru/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/ru/packages/react-intlayer/useLocale.md +9 -0
- package/docs/ru/packages/react-intlayer/usePathname.md +87 -0
- package/docs/ru/packages/react-native-intlayer/exports.md +49 -16
- package/docs/ru/packages/solid-intlayer/exports.md +4 -0
- package/docs/ru/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/ru/packages/svelte-intlayer/exports.md +4 -0
- package/docs/ru/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/ru/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ru/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ru/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ru/packages/vue-intlayer/exports.md +4 -0
- package/docs/ru/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/ru/plugins/sync-json.md +268 -95
- package/docs/ru/releases/v6.md +28 -0
- package/docs/ru/releases/v7.md +128 -0
- package/docs/ru/releases/v8.md +194 -2
- package/docs/ru/releases/v9.md +374 -0
- package/docs/ru/roadmap.md +6 -0
- package/docs/ru/self_hosting.md +349 -0
- package/docs/tr/CI_CD.md +4 -0
- package/docs/tr/autoFill.md +81 -0
- package/docs/tr/benchmark/solid.md +22 -0
- package/docs/tr/benchmark/svelte.md +22 -0
- package/docs/tr/benchmark/tanstack.md +22 -0
- package/docs/tr/cli/ci.md +22 -0
- package/docs/tr/cli/doc-review.md +110 -4
- package/docs/tr/cli/fill.md +8 -0
- package/docs/tr/cli/index.md +1 -1
- package/docs/tr/cli/login.md +0 -10
- package/docs/tr/cli/scan.md +1 -1
- package/docs/tr/compat/i18n-js.md +44 -0
- package/docs/tr/compat/i18next.md +59 -0
- package/docs/tr/compat/index.md +51 -0
- package/docs/tr/compat/lingui.md +44 -0
- package/docs/tr/compat/next-i18next.md +57 -0
- package/docs/tr/compat/next-intl.md +59 -0
- package/docs/tr/compat/next-translate.md +45 -0
- package/docs/tr/compat/ngx-translate.md +45 -0
- package/docs/tr/compat/nuxtjs-i18n.md +46 -0
- package/docs/tr/compat/polyglot.md +45 -0
- package/docs/tr/compat/react-i18next.md +58 -0
- package/docs/tr/compat/react-intl.md +55 -0
- package/docs/tr/compat/svelte-i18n.md +47 -0
- package/docs/tr/compat/transloco.md +45 -0
- package/docs/tr/compat/vue-i18n.md +58 -0
- package/docs/tr/compiler.md +9 -4
- package/docs/tr/configuration.md +53 -18
- package/docs/tr/custom_domains.md +9 -3
- package/docs/tr/custom_url_rewrites.md +9 -3
- package/docs/tr/dictionary/condition.md +167 -5
- package/docs/tr/dictionary/content_file.md +4 -27
- package/docs/tr/dictionary/enumeration.md +353 -6
- package/docs/tr/dictionary/file.md +159 -1
- package/docs/tr/dictionary/gender.md +168 -7
- package/docs/tr/dictionary/nesting.md +187 -40
- package/docs/tr/dictionary/plurial.md +174 -5
- package/docs/tr/dictionary/translation.md +142 -76
- package/docs/tr/dynamic_dictionaries/collections.md +1 -1
- package/docs/tr/dynamic_dictionaries/index.md +28 -22
- package/docs/tr/dynamic_dictionaries/variants.md +275 -17
- package/docs/tr/formatters.md +59 -0
- package/docs/tr/how_works_intlayer.md +4 -0
- package/docs/tr/intlayer_CMS.md +22 -1
- package/docs/tr/intlayer_with_adonisjs.md +20 -4
- package/docs/tr/intlayer_with_analog.md +29 -5
- package/docs/tr/intlayer_with_angular_19.md +20 -4
- package/docs/tr/intlayer_with_angular_21.md +20 -4
- package/docs/tr/intlayer_with_astro.md +134 -77
- package/docs/tr/intlayer_with_astro_lit.md +24 -10
- package/docs/tr/intlayer_with_astro_preact.md +24 -10
- package/docs/tr/intlayer_with_astro_react.md +24 -10
- package/docs/tr/intlayer_with_astro_solid.md +24 -10
- package/docs/tr/intlayer_with_astro_svelte.md +24 -10
- package/docs/tr/intlayer_with_astro_vanilla.md +24 -10
- package/docs/tr/intlayer_with_astro_vue.md +24 -10
- package/docs/tr/intlayer_with_create_react_app.md +20 -4
- package/docs/tr/intlayer_with_express.md +20 -8
- package/docs/tr/intlayer_with_fastify.md +20 -8
- package/docs/tr/intlayer_with_hono.md +20 -4
- package/docs/tr/intlayer_with_lynx+react.md +26 -5
- package/docs/tr/intlayer_with_nestjs.md +20 -12
- package/docs/tr/intlayer_with_next-i18next.md +20 -4
- package/docs/tr/intlayer_with_nextjs_14.md +115 -12
- package/docs/tr/intlayer_with_nextjs_15.md +41 -5
- package/docs/tr/intlayer_with_nextjs_16.md +23 -5
- package/docs/tr/intlayer_with_nextjs_compiler.md +23 -26
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/tr/intlayer_with_nextjs_page_router.md +25 -5
- package/docs/tr/intlayer_with_nuxt.md +25 -7
- package/docs/tr/intlayer_with_react_native+expo.md +80 -79
- package/docs/tr/intlayer_with_react_router_v7.md +24 -100
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +4 -97
- package/docs/tr/intlayer_with_storybook.md +7 -1
- package/docs/tr/intlayer_with_svelte_kit.md +16 -185
- package/docs/tr/intlayer_with_tanstack+solid.md +39 -14
- package/docs/tr/intlayer_with_tanstack.md +38 -13
- package/docs/tr/intlayer_with_vite+lit.md +29 -7
- package/docs/tr/intlayer_with_vite+preact.md +80 -62
- package/docs/tr/intlayer_with_vite+react.md +78 -57
- package/docs/tr/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/tr/intlayer_with_vite+solid.md +56 -47
- package/docs/tr/intlayer_with_vite+svelte.md +51 -35
- package/docs/tr/intlayer_with_vite+vanilla.md +37 -10
- package/docs/tr/intlayer_with_vite+vue.md +83 -110
- package/docs/tr/mcp_server.md +22 -0
- package/docs/tr/migration_from_i18next_to_intlayer.md +21 -5
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +21 -5
- package/docs/tr/migration_from_next-intl_to_intlayer.md +21 -5
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +21 -5
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +21 -5
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +21 -5
- package/docs/tr/packages/@intlayer_babel/export.md +131 -0
- package/docs/tr/packages/angular-intlayer/exports.md +13 -9
- package/docs/tr/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/tr/packages/intlayer/comparePaths.md +173 -0
- package/docs/tr/packages/intlayer/exports.md +18 -13
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/tr/packages/next-intlayer/exports.md +4 -0
- package/docs/tr/packages/next-intlayer/usePathname.md +136 -0
- package/docs/tr/packages/preact-intlayer/exports.md +10 -6
- package/docs/tr/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/tr/packages/react-intlayer/exports.md +4 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +0 -119
- package/docs/tr/packages/react-intlayer/useI18n.md +0 -125
- package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/tr/packages/react-intlayer/usePathname.md +87 -0
- package/docs/tr/packages/react-native-intlayer/exports.md +48 -15
- package/docs/tr/packages/solid-intlayer/exports.md +4 -0
- package/docs/tr/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/tr/packages/svelte-intlayer/exports.md +13 -9
- package/docs/tr/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/tr/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/tr/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/tr/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/tr/packages/vue-intlayer/exports.md +4 -0
- package/docs/tr/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/tr/plugins/sync-json.md +221 -50
- package/docs/tr/releases/v6.md +28 -0
- package/docs/tr/releases/v7.md +128 -0
- package/docs/tr/releases/v8.md +187 -1
- package/docs/tr/releases/v9.md +361 -0
- package/docs/tr/roadmap.md +6 -0
- package/docs/tr/self_hosting.md +349 -0
- package/docs/uk/benchmark/solid.md +22 -0
- package/docs/uk/benchmark/svelte.md +22 -0
- package/docs/uk/benchmark/tanstack.md +22 -0
- package/docs/uk/cli/ci.md +22 -0
- package/docs/uk/cli/doc-review.md +110 -4
- package/docs/uk/cli/fill.md +8 -0
- package/docs/uk/cli/index.md +1 -1
- package/docs/uk/cli/scan.md +1 -1
- package/docs/uk/compat/i18n-js.md +44 -0
- package/docs/uk/compat/i18next.md +59 -0
- package/docs/uk/compat/index.md +51 -0
- package/docs/uk/compat/lingui.md +44 -0
- package/docs/uk/compat/next-i18next.md +57 -0
- package/docs/uk/compat/next-intl.md +59 -0
- package/docs/uk/compat/next-translate.md +45 -0
- package/docs/uk/compat/ngx-translate.md +45 -0
- package/docs/uk/compat/nuxtjs-i18n.md +46 -0
- package/docs/uk/compat/polyglot.md +45 -0
- package/docs/uk/compat/react-i18next.md +58 -0
- package/docs/uk/compat/react-intl.md +55 -0
- package/docs/uk/compat/svelte-i18n.md +47 -0
- package/docs/uk/compat/transloco.md +45 -0
- package/docs/uk/compat/vue-i18n.md +58 -0
- package/docs/uk/compiler.md +9 -4
- package/docs/uk/configuration.md +53 -18
- package/docs/uk/custom_domains.md +9 -3
- package/docs/uk/custom_url_rewrites.md +9 -3
- package/docs/uk/dictionary/condition.md +167 -5
- package/docs/uk/dictionary/content_file.md +0 -7
- package/docs/uk/dictionary/enumeration.md +353 -6
- package/docs/uk/dictionary/file.md +318 -2
- package/docs/uk/dictionary/gender.md +381 -8
- package/docs/uk/dictionary/nesting.md +186 -39
- package/docs/uk/dictionary/plurial.md +174 -5
- package/docs/uk/dictionary/translation.md +146 -64
- package/docs/uk/dynamic_dictionaries/collections.md +1 -1
- package/docs/uk/dynamic_dictionaries/index.md +26 -20
- package/docs/uk/dynamic_dictionaries/variants.md +278 -20
- package/docs/uk/formatters.md +142 -58
- package/docs/uk/interest_of_intlayer.md +194 -0
- package/docs/uk/intlayer_CMS.md +16 -1
- package/docs/uk/intlayer_with_adonisjs.md +20 -4
- package/docs/uk/intlayer_with_analog.md +29 -5
- package/docs/uk/intlayer_with_angular_19.md +20 -4
- package/docs/uk/intlayer_with_angular_21.md +20 -4
- package/docs/uk/intlayer_with_astro.md +133 -4
- package/docs/uk/intlayer_with_astro_lit.md +24 -10
- package/docs/uk/intlayer_with_astro_preact.md +24 -10
- package/docs/uk/intlayer_with_astro_react.md +24 -10
- package/docs/uk/intlayer_with_astro_solid.md +24 -10
- package/docs/uk/intlayer_with_astro_svelte.md +24 -10
- package/docs/uk/intlayer_with_astro_vanilla.md +24 -10
- package/docs/uk/intlayer_with_astro_vue.md +24 -10
- package/docs/uk/intlayer_with_create_react_app.md +20 -4
- package/docs/uk/intlayer_with_express.md +20 -4
- package/docs/uk/intlayer_with_fastify.md +20 -8
- package/docs/uk/intlayer_with_hono.md +20 -4
- package/docs/uk/intlayer_with_lynx+react.md +26 -5
- package/docs/uk/intlayer_with_nestjs.md +20 -4
- package/docs/uk/intlayer_with_next-i18next.md +20 -4
- package/docs/uk/intlayer_with_nextjs_14.md +21 -5
- package/docs/uk/intlayer_with_nextjs_15.md +21 -5
- package/docs/uk/intlayer_with_nextjs_16.md +23 -5
- package/docs/uk/intlayer_with_nextjs_compiler.md +23 -26
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/uk/intlayer_with_nextjs_page_router.md +21 -5
- package/docs/uk/intlayer_with_nuxt.md +20 -31
- package/docs/uk/intlayer_with_react_native+expo.md +64 -84
- package/docs/uk/intlayer_with_react_router_v7.md +24 -100
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +4 -97
- package/docs/uk/intlayer_with_storybook.md +7 -1
- package/docs/uk/intlayer_with_svelte_kit.md +30 -9
- package/docs/uk/intlayer_with_tanstack+solid.md +39 -14
- package/docs/uk/intlayer_with_tanstack.md +38 -13
- package/docs/uk/intlayer_with_vite+lit.md +29 -7
- package/docs/uk/intlayer_with_vite+preact.md +80 -62
- package/docs/uk/intlayer_with_vite+react.md +78 -57
- package/docs/uk/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/uk/intlayer_with_vite+solid.md +56 -47
- package/docs/uk/intlayer_with_vite+svelte.md +58 -37
- package/docs/uk/intlayer_with_vite+vanilla.md +37 -10
- package/docs/uk/intlayer_with_vite+vue.md +78 -109
- package/docs/uk/mcp_server.md +22 -0
- package/docs/uk/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/uk/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/uk/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/uk/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/uk/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/uk/packages/@intlayer_babel/export.md +131 -0
- package/docs/uk/packages/angular-intlayer/exports.md +14 -10
- package/docs/uk/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/uk/packages/intlayer/comparePaths.md +173 -0
- package/docs/uk/packages/intlayer/exports.md +5 -0
- package/docs/uk/packages/next-intlayer/exports.md +4 -0
- package/docs/uk/packages/next-intlayer/usePathname.md +136 -0
- package/docs/uk/packages/preact-intlayer/exports.md +10 -6
- package/docs/uk/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/uk/packages/react-intlayer/exports.md +4 -0
- package/docs/uk/packages/react-intlayer/useDictionary.md +0 -107
- package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/uk/packages/react-intlayer/usePathname.md +87 -0
- package/docs/uk/packages/react-native-intlayer/exports.md +47 -13
- package/docs/uk/packages/solid-intlayer/exports.md +5 -1
- package/docs/uk/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/uk/packages/svelte-intlayer/exports.md +4 -0
- package/docs/uk/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/uk/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/uk/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/uk/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/uk/packages/vue-intlayer/exports.md +4 -0
- package/docs/uk/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/uk/plugins/sync-json.md +56 -3
- package/docs/uk/releases/v6.md +4 -0
- package/docs/uk/releases/v7.md +4 -0
- package/docs/uk/releases/v8.md +191 -3
- package/docs/uk/releases/v9.md +373 -0
- package/docs/uk/self_hosting.md +349 -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/ur/custom_domains.md +8 -2
- package/docs/ur/intlayer_with_angular_21.md +20 -4
- package/docs/ur/intlayer_with_fastify.md +20 -8
- package/docs/ur/intlayer_with_hono.md +20 -4
- package/docs/ur/intlayer_with_storybook.md +7 -1
- package/docs/ur/intlayer_with_vite+lit.md +28 -6
- package/docs/ur/intlayer_with_vite+vanilla.md +36 -9
- package/docs/ur/packages/intlayer/comparePaths.md +173 -0
- package/docs/vi/autoFill.md +20 -0
- package/docs/vi/benchmark/solid.md +22 -0
- package/docs/vi/benchmark/svelte.md +22 -0
- package/docs/vi/benchmark/tanstack.md +22 -0
- package/docs/vi/cli/ci.md +22 -0
- package/docs/vi/cli/doc-review.md +110 -4
- package/docs/vi/cli/fill.md +8 -0
- package/docs/vi/cli/index.md +1 -1
- package/docs/vi/cli/login.md +0 -36
- package/docs/vi/cli/scan.md +1 -1
- package/docs/vi/compat/i18n-js.md +44 -0
- package/docs/vi/compat/i18next.md +59 -0
- package/docs/vi/compat/index.md +51 -0
- package/docs/vi/compat/lingui.md +44 -0
- package/docs/vi/compat/next-i18next.md +57 -0
- package/docs/vi/compat/next-intl.md +59 -0
- package/docs/vi/compat/next-translate.md +45 -0
- package/docs/vi/compat/ngx-translate.md +45 -0
- package/docs/vi/compat/nuxtjs-i18n.md +46 -0
- package/docs/vi/compat/polyglot.md +45 -0
- package/docs/vi/compat/react-i18next.md +58 -0
- package/docs/vi/compat/react-intl.md +55 -0
- package/docs/vi/compat/svelte-i18n.md +47 -0
- package/docs/vi/compat/transloco.md +45 -0
- package/docs/vi/compat/vue-i18n.md +58 -0
- package/docs/vi/compiler.md +9 -4
- package/docs/vi/configuration.md +68 -33
- package/docs/vi/custom_domains.md +9 -3
- package/docs/vi/custom_url_rewrites.md +9 -3
- package/docs/vi/dictionary/condition.md +167 -5
- package/docs/vi/dictionary/content_file.md +0 -7
- package/docs/vi/dictionary/enumeration.md +395 -17
- package/docs/vi/dictionary/file.md +318 -2
- package/docs/vi/dictionary/gender.md +168 -7
- package/docs/vi/dictionary/insertion.md +0 -2
- package/docs/vi/dictionary/nesting.md +362 -52
- package/docs/vi/dictionary/plurial.md +174 -5
- package/docs/vi/dictionary/translation.md +146 -53
- package/docs/vi/dynamic_dictionaries/collections.md +1 -1
- package/docs/vi/dynamic_dictionaries/index.md +29 -23
- package/docs/vi/dynamic_dictionaries/variants.md +279 -21
- package/docs/vi/formatters.md +124 -0
- package/docs/vi/interest_of_intlayer.md +193 -0
- package/docs/vi/intlayer_with_adonisjs.md +20 -4
- package/docs/vi/intlayer_with_analog.md +29 -5
- package/docs/vi/intlayer_with_angular_19.md +20 -4
- package/docs/vi/intlayer_with_angular_21.md +20 -4
- package/docs/vi/intlayer_with_astro.md +133 -4
- package/docs/vi/intlayer_with_astro_lit.md +24 -10
- package/docs/vi/intlayer_with_astro_preact.md +24 -10
- package/docs/vi/intlayer_with_astro_react.md +24 -10
- package/docs/vi/intlayer_with_astro_solid.md +24 -10
- package/docs/vi/intlayer_with_astro_svelte.md +24 -10
- package/docs/vi/intlayer_with_astro_vanilla.md +24 -10
- package/docs/vi/intlayer_with_astro_vue.md +24 -10
- package/docs/vi/intlayer_with_create_react_app.md +20 -4
- package/docs/vi/intlayer_with_express.md +20 -4
- package/docs/vi/intlayer_with_fastify.md +20 -8
- package/docs/vi/intlayer_with_hono.md +20 -4
- package/docs/vi/intlayer_with_lynx+react.md +26 -5
- package/docs/vi/intlayer_with_nestjs.md +20 -4
- package/docs/vi/intlayer_with_next-i18next.md +20 -4
- package/docs/vi/intlayer_with_nextjs_14.md +21 -5
- package/docs/vi/intlayer_with_nextjs_15.md +491 -5
- package/docs/vi/intlayer_with_nextjs_16.md +23 -5
- package/docs/vi/intlayer_with_nextjs_compiler.md +23 -26
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/vi/intlayer_with_nextjs_page_router.md +21 -5
- package/docs/vi/intlayer_with_nuxt.md +20 -31
- package/docs/vi/intlayer_with_react_native+expo.md +43 -64
- package/docs/vi/intlayer_with_react_router_v7.md +24 -100
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +10 -91
- package/docs/vi/intlayer_with_storybook.md +7 -1
- package/docs/vi/intlayer_with_svelte_kit.md +16 -185
- package/docs/vi/intlayer_with_tanstack+solid.md +39 -14
- package/docs/vi/intlayer_with_tanstack.md +38 -13
- package/docs/vi/intlayer_with_vite+lit.md +29 -7
- package/docs/vi/intlayer_with_vite+preact.md +80 -62
- package/docs/vi/intlayer_with_vite+react.md +78 -57
- package/docs/vi/intlayer_with_vite+react_compiler.md +30 -7
- package/docs/vi/intlayer_with_vite+solid.md +56 -47
- package/docs/vi/intlayer_with_vite+svelte.md +58 -39
- package/docs/vi/intlayer_with_vite+vanilla.md +37 -10
- package/docs/vi/intlayer_with_vite+vue.md +78 -109
- package/docs/vi/mcp_server.md +22 -0
- package/docs/vi/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/vi/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/vi/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/vi/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/vi/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/vi/packages/@intlayer_babel/export.md +131 -0
- package/docs/vi/packages/angular-intlayer/exports.md +14 -10
- package/docs/vi/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/vi/packages/intlayer/comparePaths.md +173 -0
- package/docs/vi/packages/intlayer/exports.md +5 -0
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +25 -0
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/vi/packages/next-intlayer/exports.md +4 -0
- package/docs/vi/packages/next-intlayer/usePathname.md +136 -0
- package/docs/vi/packages/preact-intlayer/exports.md +10 -6
- package/docs/vi/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/vi/packages/react-intlayer/exports.md +20 -16
- package/docs/vi/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/vi/packages/react-intlayer/useI18n.md +0 -28
- package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/vi/packages/react-intlayer/usePathname.md +87 -0
- package/docs/vi/packages/react-native-intlayer/exports.md +47 -13
- package/docs/vi/packages/solid-intlayer/exports.md +15 -11
- package/docs/vi/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/vi/packages/svelte-intlayer/exports.md +13 -9
- package/docs/vi/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/vi/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/vi/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/vi/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/vi/packages/vue-intlayer/exports.md +14 -10
- package/docs/vi/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/vi/plugins/sync-json.md +229 -57
- package/docs/vi/releases/v6.md +4 -0
- package/docs/vi/releases/v7.md +128 -0
- package/docs/vi/releases/v8.md +190 -1
- package/docs/vi/releases/v9.md +346 -0
- package/docs/vi/self_hosting.md +349 -0
- package/docs/zh/CI_CD.md +1 -1
- package/docs/zh/autoFill.md +81 -0
- package/docs/zh/benchmark/solid.md +22 -0
- package/docs/zh/benchmark/svelte.md +22 -0
- package/docs/zh/benchmark/tanstack.md +22 -0
- package/docs/zh/cli/ci.md +22 -0
- package/docs/zh/cli/doc-review.md +110 -4
- package/docs/zh/cli/fill.md +8 -0
- package/docs/zh/cli/index.md +1 -1
- package/docs/zh/cli/login.md +0 -36
- package/docs/zh/cli/scan.md +1 -1
- package/docs/zh/compat/i18n-js.md +44 -0
- package/docs/zh/compat/i18next.md +59 -0
- package/docs/zh/compat/index.md +51 -0
- package/docs/zh/compat/lingui.md +44 -0
- package/docs/zh/compat/next-i18next.md +57 -0
- package/docs/zh/compat/next-intl.md +59 -0
- package/docs/zh/compat/next-translate.md +45 -0
- package/docs/zh/compat/ngx-translate.md +45 -0
- package/docs/zh/compat/nuxtjs-i18n.md +46 -0
- package/docs/zh/compat/polyglot.md +45 -0
- package/docs/zh/compat/react-i18next.md +58 -0
- package/docs/zh/compat/react-intl.md +55 -0
- package/docs/zh/compat/svelte-i18n.md +47 -0
- package/docs/zh/compat/transloco.md +45 -0
- package/docs/zh/compat/vue-i18n.md +58 -0
- package/docs/zh/compiler.md +9 -4
- package/docs/zh/configuration.md +67 -32
- package/docs/zh/custom_domains.md +9 -3
- package/docs/zh/custom_url_rewrites.md +22 -18
- package/docs/zh/dictionary/condition.md +167 -5
- package/docs/zh/dictionary/content_file.md +16 -20
- package/docs/zh/dictionary/enumeration.md +353 -6
- package/docs/zh/dictionary/file.md +151 -1
- package/docs/zh/dictionary/function_fetching.md +0 -27
- package/docs/zh/dictionary/gender.md +168 -7
- package/docs/zh/dictionary/insertion.md +0 -64
- package/docs/zh/dictionary/nesting.md +186 -39
- package/docs/zh/dictionary/plurial.md +174 -5
- package/docs/zh/dictionary/translation.md +141 -64
- package/docs/zh/dynamic_dictionaries/collections.md +1 -1
- package/docs/zh/dynamic_dictionaries/index.md +25 -19
- package/docs/zh/dynamic_dictionaries/variants.md +275 -17
- package/docs/zh/formatters.md +77 -0
- package/docs/zh/how_works_intlayer.md +4 -4
- package/docs/zh/intlayer_CMS.md +21 -0
- package/docs/zh/intlayer_with_adonisjs.md +20 -4
- package/docs/zh/intlayer_with_analog.md +4 -154
- package/docs/zh/intlayer_with_angular_19.md +0 -232
- package/docs/zh/intlayer_with_angular_21.md +20 -4
- package/docs/zh/intlayer_with_astro.md +245 -61
- package/docs/zh/intlayer_with_astro_lit.md +131 -83
- package/docs/zh/intlayer_with_astro_preact.md +125 -77
- package/docs/zh/intlayer_with_astro_react.md +127 -79
- package/docs/zh/intlayer_with_astro_solid.md +127 -79
- package/docs/zh/intlayer_with_astro_svelte.md +127 -79
- package/docs/zh/intlayer_with_astro_vanilla.md +124 -78
- package/docs/zh/intlayer_with_astro_vue.md +119 -71
- package/docs/zh/intlayer_with_create_react_app.md +17 -306
- package/docs/zh/intlayer_with_express.md +20 -27
- package/docs/zh/intlayer_with_fastify.md +20 -8
- package/docs/zh/intlayer_with_hono.md +20 -4
- package/docs/zh/intlayer_with_lynx+react.md +0 -259
- package/docs/zh/intlayer_with_nestjs.md +20 -22
- package/docs/zh/intlayer_with_next-i18next.md +20 -4
- package/docs/zh/intlayer_with_nextjs_14.md +83 -29
- package/docs/zh/intlayer_with_nextjs_15.md +84 -18
- package/docs/zh/intlayer_with_nextjs_16.md +151 -91
- package/docs/zh/intlayer_with_nextjs_compiler.md +174 -144
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +21 -5
- package/docs/zh/intlayer_with_nextjs_page_router.md +71 -19
- package/docs/zh/intlayer_with_nuxt.md +5 -149
- package/docs/zh/intlayer_with_react_native+expo.md +160 -156
- package/docs/zh/intlayer_with_react_router_v7.md +24 -347
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +4 -317
- package/docs/zh/intlayer_with_storybook.md +7 -241
- package/docs/zh/intlayer_with_svelte_kit.md +10 -521
- package/docs/zh/intlayer_with_tanstack+solid.md +1 -630
- package/docs/zh/intlayer_with_tanstack.md +1 -628
- package/docs/zh/intlayer_with_vanilla.md +0 -283
- package/docs/zh/intlayer_with_vite+lit.md +1 -395
- package/docs/zh/intlayer_with_vite+preact.md +4 -226
- package/docs/zh/intlayer_with_vite+react.md +59 -294
- package/docs/zh/intlayer_with_vite+react_compiler.md +1 -176
- package/docs/zh/intlayer_with_vite+solid.md +17 -306
- package/docs/zh/intlayer_with_vite+svelte.md +131 -84
- package/docs/zh/intlayer_with_vite+vanilla.md +1 -426
- package/docs/zh/intlayer_with_vite+vue.md +124 -144
- package/docs/zh/mcp_server.md +26 -0
- package/docs/zh/migration_from_i18next_to_intlayer.md +330 -0
- package/docs/zh/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/zh/migration_from_next-intl_to_intlayer.md +365 -0
- package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/zh/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/zh/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/zh/packages/@intlayer_babel/export.md +131 -0
- package/docs/zh/packages/angular-intlayer/exports.md +13 -9
- package/docs/zh/packages/angular-intlayer/usePathname.md +119 -0
- package/docs/zh/packages/intlayer/comparePaths.md +173 -0
- package/docs/zh/packages/intlayer/exports.md +18 -13
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/zh/packages/next-intlayer/exports.md +4 -0
- package/docs/zh/packages/next-intlayer/usePathname.md +136 -0
- package/docs/zh/packages/preact-intlayer/exports.md +10 -6
- package/docs/zh/packages/preact-intlayer/usePathname.md +117 -0
- package/docs/zh/packages/react-intlayer/exports.md +5 -1
- package/docs/zh/packages/react-intlayer/useDictionary.md +0 -129
- package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/zh/packages/react-intlayer/usePathname.md +88 -0
- package/docs/zh/packages/react-native-intlayer/exports.md +48 -14
- package/docs/zh/packages/solid-intlayer/exports.md +15 -11
- package/docs/zh/packages/solid-intlayer/usePathname.md +119 -0
- package/docs/zh/packages/svelte-intlayer/exports.md +13 -9
- package/docs/zh/packages/svelte-intlayer/usePathname.md +103 -0
- package/docs/zh/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/zh/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/zh/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/zh/packages/vue-intlayer/exports.md +14 -10
- package/docs/zh/packages/vue-intlayer/usePathname.md +109 -0
- package/docs/zh/plugins/sync-json.md +222 -50
- package/docs/zh/releases/v6.md +28 -0
- package/docs/zh/releases/v7.md +128 -0
- package/docs/zh/releases/v8.md +191 -1
- package/docs/zh/releases/v9.md +342 -0
- package/docs/zh/roadmap.md +6 -0
- package/docs/zh/self_hosting.md +349 -0
- package/docs/zh/vs_code_extension.md +0 -7
- package/docs/zh-TW/intlayer_with_angular_21.md +20 -4
- package/docs/zh-TW/packages/intlayer/comparePaths.md +173 -0
- package/frequent_questions/pt/translated_path_url.md +1 -1
- package/package.json +8 -8
- package/src/generated/docs.entry.ts +580 -20
- package/dist/esm/_virtual/_rolldown/runtime.mjs +0 -8
- package/docs/ar/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/de/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/en/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/en-GB/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/es/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/fr/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/hi/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/id/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/it/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/ja/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/ko/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/pl/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/pt/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/ru/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/tr/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/uk/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/vi/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/zh/dynamic_dictionaries/dynamic_content.md +0 -271
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-14
|
|
3
|
+
updatedAt: 2026-06-29
|
|
4
|
+
title: New Intlayer v9 - What's new?
|
|
5
|
+
description: Discover what's new in Intlayer v9. Introducing drop-in compatibility packages for popular i18n libraries and support for Collections and Variants.
|
|
6
|
+
keywords:
|
|
7
|
+
- Intlayer
|
|
8
|
+
- Compatibility
|
|
9
|
+
- Migration
|
|
10
|
+
- Collections
|
|
11
|
+
- Variants
|
|
12
|
+
- CMS SDK
|
|
13
|
+
- i18next
|
|
14
|
+
- next-intl
|
|
15
|
+
- vue-i18n
|
|
16
|
+
slugs:
|
|
17
|
+
- doc
|
|
18
|
+
- releases
|
|
19
|
+
- v9
|
|
20
|
+
author: aymericzip
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# New Intlayer v9 - What's new?
|
|
24
|
+
|
|
25
|
+
Welcome to Intlayer v9! This major release marks a huge milestone in simplifying the migration path to Intlayer with **Compat Adapter Packages** for major i18n libraries (`react-i18next`, `next-intl`, `vue-i18n`, etc.) and adds support for rich content structures: **Collections** and **Variants**.
|
|
26
|
+
|
|
27
|
+
## Table of contents
|
|
28
|
+
|
|
29
|
+
<TOC levels={[2]} maxDepth={1} />
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Compat Adapter Packages
|
|
34
|
+
|
|
35
|
+
Migrating to Intlayer from popular i18n libraries is now easier than ever. We have created five compat packages that expose the **exact same public APIs** as standard i18n libraries but delegate all translation work to Intlayer at runtime.
|
|
36
|
+
|
|
37
|
+
### Expose Same Public API with Strict Typing
|
|
38
|
+
|
|
39
|
+
By replacing imports, you get all the benefits of Intlayer (including compile-time type safety against your actual dictionaries) with minimal code changes:
|
|
40
|
+
|
|
41
|
+
- `@intlayer/i18next`
|
|
42
|
+
- `@intlayer/react-i18next`
|
|
43
|
+
- `@intlayer/next-intl`
|
|
44
|
+
- `@intlayer/react-intl`
|
|
45
|
+
- `@intlayer/next-i18next`
|
|
46
|
+
- `@intlayer/vue-i18n`
|
|
47
|
+
- `@intlayer/lingui`
|
|
48
|
+
|
|
49
|
+
For example, simply change:
|
|
50
|
+
|
|
51
|
+
```ts
|
|
52
|
+
import { useTranslation } from "react-i18next";
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
to:
|
|
56
|
+
|
|
57
|
+
```ts
|
|
58
|
+
import { useTranslation } from "@intlayer/react-i18next";
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Your keys will now be **strictly typed** against your Intlayer dictionaries, offering full dot-path auto-completion in your IDE!
|
|
62
|
+
|
|
63
|
+
### Bundler Alias Plugins (Vite, Next.js, Turbopack)
|
|
64
|
+
|
|
65
|
+
To allow migrating without rewriting all your import statements manually, each compat adapter package includes a **custom bundler plugin** (Vite or Next.js) under the `/plugin` subpath.
|
|
66
|
+
|
|
67
|
+
These plugins automatically rewrite existing imports (e.g. `react-i18next` or `next-intl`) to their `@intlayer/*` equivalents at build time.
|
|
68
|
+
|
|
69
|
+
#### Next.js (Webpack / Turbopack) Example
|
|
70
|
+
|
|
71
|
+
Instead of `withIntlayer`, wrap your Next.js configuration with the compat plugin:
|
|
72
|
+
|
|
73
|
+
```ts fileName="next.config.ts"
|
|
74
|
+
import { createNextI18nPlugin } from "@intlayer/next-i18next/plugin";
|
|
75
|
+
import type { NextConfig } from "next";
|
|
76
|
+
|
|
77
|
+
const withIntlayer = createNextI18nPlugin();
|
|
78
|
+
const nextConfig: NextConfig = {};
|
|
79
|
+
|
|
80
|
+
export default withIntlayer(nextConfig);
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
#### Vite (React, Vue, Solid, Svelte) Example
|
|
84
|
+
|
|
85
|
+
```ts fileName="vite.config.ts"
|
|
86
|
+
import vueI18nVitePlugin from "@intlayer/vue-i18n/plugin";
|
|
87
|
+
|
|
88
|
+
export default defineConfig({
|
|
89
|
+
plugins: [vueI18nVitePlugin()],
|
|
90
|
+
});
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Mutualized Runtime Resolver
|
|
96
|
+
|
|
97
|
+
All compat adapters now route translation resolution through a single, highly optimized runtime parser: `@intlayer/core/messageFormat`.
|
|
98
|
+
|
|
99
|
+
- **Interpolate Message**: Resolves standard `{{var}}` (whitespace & dot-paths), ICU formatted args (`{v, number, percent}` etc.), and bare `{var}` templates.
|
|
100
|
+
- **Message Node Resolver**: Resolves nested nodes: `insert()`, `plural()` (CLDR plural rules), `enu()` (enumeration), `gender()`, HTML tags, arrays, and callable function nodes.
|
|
101
|
+
- **Tokenized Tag Parser**: Supports inline XML/HTML tags and numbered tags (e.g., `<1>children</1>`) to power rich-text rendering out of the box.
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Feature Spec: Collections & Variants
|
|
106
|
+
|
|
107
|
+
Intlayer v9 expands beyond static key-value objects, allowing dictionaries to declare dynamic layout structures that are fully typed end-to-end.
|
|
108
|
+
|
|
109
|
+
### 1. Collections
|
|
110
|
+
|
|
111
|
+
Define a CMS-managed list of ordered items (e.g. FAQs, products, or blog lists):
|
|
112
|
+
|
|
113
|
+
```ts fileName="faq.1.content.ts"
|
|
114
|
+
import { t, type Dictionary } from "intlayer";
|
|
115
|
+
|
|
116
|
+
export default {
|
|
117
|
+
key: "faq",
|
|
118
|
+
item: 1,
|
|
119
|
+
content: {
|
|
120
|
+
question: t({ en: "What is Intlayer?", fr: "Qu'est-ce qu'Intlayer ?" }),
|
|
121
|
+
answer: t({ en: "An i18n toolkit.", fr: "Une boîte à outils i18n." }),
|
|
122
|
+
},
|
|
123
|
+
} satisfies Dictionary;
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
```ts fileName="faq.2.content.ts"
|
|
127
|
+
import { t, type Dictionary } from "intlayer";
|
|
128
|
+
|
|
129
|
+
export default {
|
|
130
|
+
key: "faq",
|
|
131
|
+
item: 2,
|
|
132
|
+
content: {
|
|
133
|
+
question: t({ en: "Is it free?", fr: "Est-ce gratuit ?" }),
|
|
134
|
+
answer: t({ en: "Yes, open-source.", fr: "Oui, open-source." }),
|
|
135
|
+
},
|
|
136
|
+
} satisfies Dictionary;
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
#### Usage:
|
|
140
|
+
|
|
141
|
+
```ts
|
|
142
|
+
// Fetch all items as an array
|
|
143
|
+
const allFaqs = useIntlayer("faq"); // -> { question: string, answer: string }[]
|
|
144
|
+
|
|
145
|
+
// Fetch a single item by index
|
|
146
|
+
const faq = useIntlayer("faq", { item: 2 }); // -> { question: string, answer: string }
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### 2. Variants
|
|
150
|
+
|
|
151
|
+
Deliver A/B tests, seasonal headers, feature flags, or custom landing pages:
|
|
152
|
+
|
|
153
|
+
#### String variants (e.g. A/B testing)
|
|
154
|
+
|
|
155
|
+
```ts fileName="hero.content.ts"
|
|
156
|
+
import { t, type Dictionary } from "intlayer";
|
|
157
|
+
|
|
158
|
+
export default {
|
|
159
|
+
key: "hero-banner",
|
|
160
|
+
variant: "default",
|
|
161
|
+
content: {
|
|
162
|
+
control: t({ en: "Welcome", fr: "Bienvenue" }),
|
|
163
|
+
black_friday: t({ en: "Shop now", fr: "Acheter maintenant" }),
|
|
164
|
+
},
|
|
165
|
+
} satisfies Dictionary;
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
#### Usage:
|
|
169
|
+
|
|
170
|
+
```ts
|
|
171
|
+
const banner = useIntlayer("hero-banner", { variant: "black_friday" });
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
#### Object variants (e.g. Dynamic Records)
|
|
175
|
+
|
|
176
|
+
```ts fileName="product.content.ts"
|
|
177
|
+
import { t, type Dictionary } from "intlayer";
|
|
178
|
+
|
|
179
|
+
export default {
|
|
180
|
+
key: "product-copy",
|
|
181
|
+
variant: {
|
|
182
|
+
id: "prod_123",
|
|
183
|
+
category: "books",
|
|
184
|
+
},
|
|
185
|
+
content: {
|
|
186
|
+
title: t({ en: "Clean Code", fr: "Code Propre" }),
|
|
187
|
+
},
|
|
188
|
+
} satisfies Dictionary;
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
#### Usage:
|
|
192
|
+
|
|
193
|
+
```ts
|
|
194
|
+
// Fetches only the requested item dynamically (requires Suspense)
|
|
195
|
+
const product = useIntlayer("product-copy", {
|
|
196
|
+
variant: { id: "prod_123", category: "books" },
|
|
197
|
+
});
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Dynamic Loading & Bundle Size Optimizations
|
|
203
|
+
|
|
204
|
+
To keep bundles extremely small, Intlayer v9 supports dynamic lazy loading.
|
|
205
|
+
|
|
206
|
+
In your configuration, set `importMode` to `'dynamic'` or `'fetch'`:
|
|
207
|
+
|
|
208
|
+
```ts fileName="intlayer.config.ts"
|
|
209
|
+
export default {
|
|
210
|
+
dictionary: {
|
|
211
|
+
importMode: "dynamic", // "static" | "dynamic" | "fetch"
|
|
212
|
+
},
|
|
213
|
+
};
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
At build time, `@intlayer/swc` and `@intlayer/babel` scan your files and replace `useIntlayer` / `getIntlayer` calls with tree-shakeable wrappers (`useDictionary` / `useDictionaryDynamic`). Only the content required for the selected collection item, variant, or locale is loaded, preventing your production bundle from containing unused translations.
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Vite Plugin: 捆绑编译器和代理
|
|
221
|
+
|
|
222
|
+
`intlayer()` Vite 插件现在直接捆绑了**编译器**和**区域设置路由代理**,因此大多数项目只需在 `vite.config.ts` 中使用单个插件:
|
|
223
|
+
|
|
224
|
+
```ts fileName="vite.config.ts"
|
|
225
|
+
import { defineConfig } from "vite";
|
|
226
|
+
import { intlayer } from "vite-intlayer";
|
|
227
|
+
|
|
228
|
+
export default defineConfig({
|
|
229
|
+
plugins: [intlayer()],
|
|
230
|
+
});
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
- **Compiler**: 当 `compiler.enabled` 被设置为 `true` 且配置了 `compiler.output` 路径时,自动激活。您不再需要单独注册 `intlayerCompiler()`。
|
|
234
|
+
- **Proxy**: 根据新的 `routing.enableProxy` 选项自动激活(默认为 `true`)。它在开发、预览和生产 SSR 中连接区域设置检测 / 重定向 / 重写中间件。您不再需要单独注册 `intlayerProxy()`。
|
|
235
|
+
|
|
236
|
+
### `routing.enableProxy` 选项
|
|
237
|
+
|
|
238
|
+
新的 `routing.enableProxy` 选项控制是否启用区域语言路由代理。默认值为 `true`。当您想自己处理区域语言路由时,可以禁用它:
|
|
239
|
+
|
|
240
|
+
```ts fileName="intlayer.config.ts"
|
|
241
|
+
import type { IntlayerConfig } from "intlayer";
|
|
242
|
+
|
|
243
|
+
const config: IntlayerConfig = {
|
|
244
|
+
routing: {
|
|
245
|
+
enableProxy: false, // 默认值: true
|
|
246
|
+
},
|
|
247
|
+
};
|
|
248
|
+
|
|
249
|
+
export default config;
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
独立的 `intlayerCompiler()` 和 `intlayerProxy()` 插件仍然可用于高级设置。将它们与 `intlayer()` 一起注册是安全的 — 每个插件会自动去重并且仅运行一次。
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## 默认禁用编译器
|
|
257
|
+
|
|
258
|
+
从 Intlayer v9 开始,**编译器默认被禁用**(`compiler.enabled` 现在默认为 `false`)。要启用对 `.content.ts` 文件的构建时提取,请在配置中设置 `compiler.enabled: true`:
|
|
259
|
+
|
|
260
|
+
```ts fileName="intlayer.config.ts"
|
|
261
|
+
import type { IntlayerConfig } from "intlayer";
|
|
262
|
+
|
|
263
|
+
const config: IntlayerConfig = {
|
|
264
|
+
compiler: {
|
|
265
|
+
enabled: true, // 默认值:false —— 自 v9 起启用编译器所必需
|
|
266
|
+
output: ({ fileName }) => `./${fileName}.content.ts`,
|
|
267
|
+
},
|
|
268
|
+
};
|
|
269
|
+
|
|
270
|
+
export default config;
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
当编译器被禁用时,Intlayer 会跳过构建时提取步骤,并依赖您已声明的字典。仅当您希望打包器插件(`@intlayer/swc`、`@intlayer/babel` 或 `intlayer()` Vite 插件)自动提取内容时才启用它。
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## React Native:单包导入
|
|
278
|
+
|
|
279
|
+
在 React Native 或 Expo 应用中,您不再需要同时管理 `react-intlayer` 和 `react-native-intlayer`。`react-native-intlayer` 包现在**重新导出了完整的 `react-intlayer` API**(hooks、工具函数以及 `/format`、`/html` 和 `/markdown` 子路径),并且其 `IntlayerProvider` 会自动应用 React Native 的 polyfills。
|
|
280
|
+
|
|
281
|
+
从单一的 `react-native-intlayer` 包中导入所有内容:
|
|
282
|
+
|
|
283
|
+
```tsx
|
|
284
|
+
import {
|
|
285
|
+
IntlayerProvider,
|
|
286
|
+
useIntlayer,
|
|
287
|
+
useLocale,
|
|
288
|
+
} from "react-native-intlayer";
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
npm install intlayer react-native-intlayer
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
> 从 `react-intlayer` 导入仍然有效,但现在推荐使用 `react-native-intlayer` 作为 React Native 的单一入口点 —— 它的 provider 提供了面向 web 的 `react-intlayer` provider 所不包含的 polyfills。
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
## CMS SDK:将 Intlayer 用作无头内容数据库
|
|
300
|
+
|
|
301
|
+
Intlayer v9 在 `@intlayer/api` 中提供了一个简洁、自动鉴权的 SDK,用于以编程方式与 CMS 交互——获取项目、获取字典,以及从你自己的服务器、脚本或 CI 推送或更新它们。鉴权(OAuth2 `client_credentials`)会自动处理并刷新。
|
|
302
|
+
|
|
303
|
+
SDK 拆分为**两个独立的导入**,因此你的打包产物只包含你实际使用的领域:
|
|
304
|
+
|
|
305
|
+
1. `createIntlayerCMS` —— 一个轻量的**鉴权器**,持有凭据和受管理的令牌(不打包任何领域客户端)。
|
|
306
|
+
2. `dictionaryEndpoint`、`projectEndpoint`、… —— 按领域划分的**端点绑定器**,各自从其独立子路径导入。
|
|
307
|
+
|
|
308
|
+
```ts fileName="cms.ts"
|
|
309
|
+
import { createIntlayerCMS } from "@intlayer/api";
|
|
310
|
+
import { dictionaryEndpoint } from "@intlayer/api/dictionary";
|
|
311
|
+
|
|
312
|
+
// 配置是可选的:凭据会回退到 INTLAYER_CLIENT_ID /
|
|
313
|
+
// INTLAYER_CLIENT_SECRET(由 `@intlayer/config/built` 解析)。
|
|
314
|
+
const cms = createIntlayerCMS();
|
|
315
|
+
|
|
316
|
+
// 读取
|
|
317
|
+
const { data: dictionaries } = await dictionaryEndpoint(cms).getDictionaries();
|
|
318
|
+
|
|
319
|
+
// 写入 —— 像数据库一样使用 CMS
|
|
320
|
+
await dictionaryEndpoint(cms).pushDictionaries([myDictionary]);
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
> 安全:CMS 凭据授予对内容的写入权限。务必只在**服务端**创建鉴权器——切勿将 `clientId` / `clientSecret` 发送到浏览器。
|
|
324
|
+
|
|
325
|
+
---
|
|
326
|
+
|
|
327
|
+
## Migration notes from v8
|
|
328
|
+
|
|
329
|
+
If you are upgrading from v8, note that the v9 does not include breaking changes. But here are the key changes:
|
|
330
|
+
|
|
331
|
+
- **默认禁用编译器**:`compiler.enabled` 现在默认为 `false`。如果您依赖对 `.content.ts` 文件的构建时提取,请在 `intlayer.config.ts` 中设置 `compiler.enabled: true`。
|
|
332
|
+
- **Locales & Dialects**: If using external i18n dependencies, add their respective compat adapter plugins in your configuration or bundler setup to automatically rewrite imports.
|
|
333
|
+
- **Custom Selectors**: When calling `useIntlayer`, the second parameter is now reserved for an option object containing `{ locale, item, variant }`. If you previously passed a locale string directly, you can still do so, but using the options object is recommended for advanced selections.
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
|
|
337
|
+
## Useful links
|
|
338
|
+
|
|
339
|
+
- [Compat Adapter Packages Guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/compat/index.md)
|
|
340
|
+
- [Dynamic Dictionaries - Collections & Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/index.md)
|
|
341
|
+
- [Configuration Reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md)
|
|
342
|
+
- [CMS SDK - 通过 @intlayer/api 进行编程访问](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md)
|
package/docs/zh/roadmap.md
CHANGED
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-30
|
|
3
|
+
updatedAt: 2026-06-30
|
|
4
|
+
title: 自托管 Intlayer
|
|
5
|
+
description: 通过一条命令在您自己的基础设施上运行完整的 Intlayer 实例。无需 Intlayer Cloud 账户。
|
|
6
|
+
keywords:
|
|
7
|
+
- 自托管
|
|
8
|
+
- Docker
|
|
9
|
+
- Docker Compose
|
|
10
|
+
- Intlayer
|
|
11
|
+
- CMS
|
|
12
|
+
- 安装
|
|
13
|
+
- 基础设施
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- self-hosting
|
|
17
|
+
author: aymericzip
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# 自托管 Intlayer
|
|
21
|
+
|
|
22
|
+
Intlayer 可以完全在您自己的基础设施上运行——无需 Intlayer Cloud 账户。只需一条命令即可启动一个生产就绪的堆栈:
|
|
23
|
+
|
|
24
|
+
```sh
|
|
25
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
安装程序会下载 `docker-compose.yml` 和 `.env` 文件,自动生成所需的密钥,并使用 `docker compose up -d` 启动所有容器。
|
|
29
|
+
|
|
30
|
+
## 目录
|
|
31
|
+
|
|
32
|
+
<TOC/>
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 架构
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
┌─────────────────────────────┐
|
|
40
|
+
browser ──────▶ │ app (TanStack Start) :3000│ ──┐
|
|
41
|
+
└─────────────────────────────┘ │ VITE_BACKEND_URL
|
|
42
|
+
┌─────────────────────────────┐ │
|
|
43
|
+
│ backend (Fastify/Bun) :3100│ ◀─┘
|
|
44
|
+
└──────────────┬──────────────┘
|
|
45
|
+
┌──────────┬─────────┼──────────┬───────────┐
|
|
46
|
+
▼ ▼ ▼ ▼ ▼
|
|
47
|
+
mongo:27017 redis:6379 minio:9000 mailpit:1025 Chromium
|
|
48
|
+
(1-node RS) (S3 API) (SMTP) (in-image)
|
|
49
|
+
minio:9001 mailpit:8025
|
|
50
|
+
(console) (web UI)
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Chromium(用于 Puppeteer 屏幕截图生成)捆绑在后端镜像中——无需单独的容器。
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 先决条件
|
|
58
|
+
|
|
59
|
+
- **Docker** ≥ 24 和 **Docker Compose** ≥ v2。如果其中任何一个缺失,安装程序将打印安装链接并退出。
|
|
60
|
+
- 主机上端口 `3000`、`3100`、`8025`、`9000` 和 `9001` 可用。
|
|
61
|
+
- Linux 或 macOS 主机(或 Windows 上的 WSL2)。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 快速开始
|
|
66
|
+
|
|
67
|
+
```sh
|
|
68
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
安装程序执行以下操作:
|
|
72
|
+
|
|
73
|
+
1. 检查 `docker` 和 `docker compose` 是否存在。
|
|
74
|
+
2. 将 `docker-compose.yml` 和 `.env.example` 下载到 `./intlayer/` 目录中。
|
|
75
|
+
3. 如果不存在 `.env` 文件,则复制示例文件并使用 `openssl rand` 为 `BETTER_AUTH_SECRET`、`S3_ACCESS_KEY_ID` 和 `S3_SECRET_ACCESS_KEY` 生成随机密钥。
|
|
76
|
+
4. 运行 `docker compose pull` + `docker compose up -d`。
|
|
77
|
+
5. 打印 URL:仪表盘 `:3000`、API `:3100`、电子邮件 UI `:8025`、MinIO 控制台 `:9001`。
|
|
78
|
+
|
|
79
|
+
堆栈启动后,打开 **http://localhost:3000** 并创建您的第一个账户。
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 服务
|
|
84
|
+
|
|
85
|
+
| 服务 | 镜像 | 主机端口 | 用途 |
|
|
86
|
+
| ----------- | --------------------------------- | ------------------------------ | ---------------------------------- |
|
|
87
|
+
| **app** | 从 `apps/app/Dockerfile` 构建 | `3000` | TanStack Start 仪表盘 (CMS UI) |
|
|
88
|
+
| **backend** | 从 `apps/backend/Dockerfile` 构建 | `3100` | Fastify REST API (`/health` 端点) |
|
|
89
|
+
| **mongo** | `mongo:7` | 内部 | 单节点副本集 (`rs0`) |
|
|
90
|
+
| **redis** | `redis:7-alpine` | 内部 | 任务队列 (BullMQ) 和缓存 (ioredis) |
|
|
91
|
+
| **minio** | `minio/minio` | `9000` (S3), `9001` (控制台) | 用于头像和截图的 S3 兼容对象存储 |
|
|
92
|
+
| **mailpit** | `axllent/mailpit` | `1025` (SMTP), `8025` (Web UI) | 本地事务性电子邮件接收器 |
|
|
93
|
+
|
|
94
|
+
默认情况下,内部端口(mongo、redis)不会暴露给主机。
|
|
95
|
+
|
|
96
|
+
> MinIO 端口 `9000` 必须可从浏览器访问,因为上传的资产(头像、截图)直接从 `S3_PUBLIC_URL=http://localhost:9000/intlayer` 加载。
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## 环境变量
|
|
101
|
+
|
|
102
|
+
安装程序会生成一个即用型 `.env` 文件。下表描述了每个变量。
|
|
103
|
+
|
|
104
|
+
### 必需(自动生成或提示)
|
|
105
|
+
|
|
106
|
+
| 变量 | 示例 | 描述 |
|
|
107
|
+
| ---------------------- | ----------------------------------------------- | -------------------------------- |
|
|
108
|
+
| `NODE_ENV` | `production` | 运行时环境 |
|
|
109
|
+
| `PORT` | `3100` | 后端监听端口 |
|
|
110
|
+
| `BACKEND_URL` | `http://localhost:3100` | 后端 API 的公共 URL |
|
|
111
|
+
| `APP_URL` | `http://localhost:3000` | 仪表盘的公共 URL |
|
|
112
|
+
| `DOMAIN` | `localhost` | Cookie 域 |
|
|
113
|
+
| `MONGODB_URI` | `mongodb://mongo:27017/intlayer?replicaSet=rs0` | 完整的 MongoDB 连接 URI |
|
|
114
|
+
| `REDIS_URL` | `redis://redis:6379` | Redis 连接 URL |
|
|
115
|
+
| `BETTER_AUTH_SECRET` | _(已生成)_ | 用于会话签名的 32 字节密钥 |
|
|
116
|
+
| `MAIL_PROVIDER` | `smtp` | 邮件传输方式:`smtp` 或 `resend` |
|
|
117
|
+
| `MAIL_SMTP_HOST` | `mailpit` | SMTP 主机名 (Mailpit 容器名称) |
|
|
118
|
+
| `MAIL_SMTP_PORT` | `1025` | SMTP 端口 |
|
|
119
|
+
| `MAIL_FROM` | `Intlayer <no-reply@localhost>` | 发件人地址 |
|
|
120
|
+
| `S3_ENDPOINT` | `http://minio:9000` | S3 兼容端点 |
|
|
121
|
+
| `S3_PUBLIC_URL` | `http://localhost:9000/intlayer` | 用于浏览器资产加载的公共 URL |
|
|
122
|
+
| `S3_BUCKET_NAME` | `intlayer` | 存储桶名称 |
|
|
123
|
+
| `S3_ACCESS_KEY_ID` | _(已生成)_ | MinIO 访问密钥 |
|
|
124
|
+
| `S3_SECRET_ACCESS_KEY` | _(已生成)_ | MinIO 秘密密钥 |
|
|
125
|
+
| `VITE_BACKEND_URL` | `http://localhost:3100` | 构建时嵌入到仪表盘中的后端 URL |
|
|
126
|
+
| `VITE_DOMAIN` | `localhost` | 构建时嵌入到仪表盘中的域 |
|
|
127
|
+
|
|
128
|
+
### 可选(缺少时功能会优雅降级)
|
|
129
|
+
|
|
130
|
+
| 变量 | 功能 |
|
|
131
|
+
| -------------------------------------------------------- | ------------------------------------------------------ |
|
|
132
|
+
| `OPENAI_API_KEY` | AI 辅助翻译和内容审计 |
|
|
133
|
+
| `STRIPE_SECRET_KEY`, `STRIPE_WEBHOOK_SECRET`, `STRIPE_*` | 账单和订阅管理 |
|
|
134
|
+
| `RESEND_API_KEY` | 通过 Resend 发送事务性电子邮件(设置后会覆盖 Mailpit) |
|
|
135
|
+
| `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET` | GitHub OAuth 登录 |
|
|
136
|
+
| `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET` | Google OAuth 登录 |
|
|
137
|
+
| `GITLAB_CLIENT_ID`, `GITLAB_CLIENT_SECRET` | GitLab OAuth 登录 |
|
|
138
|
+
| `MICROSOFT_CLIENT_ID`, `MICROSOFT_CLIENT_SECRET` | Microsoft OAuth 登录 |
|
|
139
|
+
| `LINKEDIN_CLIENT_ID`, `LINKEDIN_CLIENT_SECRET` | LinkedIn OAuth 登录 |
|
|
140
|
+
| `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET` | Atlassian OAuth 登录 |
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## 连接您的 Intlayer 项目
|
|
145
|
+
|
|
146
|
+
堆栈运行后,将您的项目指向自托管的后端和仪表盘,而不是 `intlayer.org`。
|
|
147
|
+
|
|
148
|
+
### 项目配置
|
|
149
|
+
|
|
150
|
+
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
151
|
+
import type { IntlayerConfig } from "intlayer";
|
|
152
|
+
|
|
153
|
+
const config: IntlayerConfig = {
|
|
154
|
+
editor: {
|
|
155
|
+
clientId: process.env.INTLAYER_CLIENT_ID,
|
|
156
|
+
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* 自托管 CMS 仪表盘的 URL。
|
|
160
|
+
* 默认值: https://app.intlayer.org
|
|
161
|
+
*/
|
|
162
|
+
cmsURL: process.env.INTLAYER_CMS_URL, // e.g. http://localhost:3000
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* 自托管后端 API 的 URL。
|
|
166
|
+
* 默认值: https://back.intlayer.org
|
|
167
|
+
*/
|
|
168
|
+
backendURL: process.env.INTLAYER_BACKEND_URL, // e.g. http://localhost:3100
|
|
169
|
+
},
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
export default config;
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
在您项目的 `.env` 中设置环境变量:
|
|
176
|
+
|
|
177
|
+
```sh
|
|
178
|
+
INTLAYER_CMS_URL=http://localhost:3000
|
|
179
|
+
INTLAYER_BACKEND_URL=http://localhost:3100
|
|
180
|
+
INTLAYER_CLIENT_ID=<your-client-id>
|
|
181
|
+
INTLAYER_CLIENT_SECRET=<your-client-secret>
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
在您的自托管仪表盘中,通过 `http://localhost:3000/projects` 下的 **项目 → 访问密钥** 创建访问凭据。
|
|
185
|
+
|
|
186
|
+
### `@intlayer/api` SDK
|
|
187
|
+
|
|
188
|
+
以编程方式使用 `@intlayer/api` SDK 时,明确传递 `backendURL`:
|
|
189
|
+
|
|
190
|
+
```typescript fileName="cms.ts" codeFormat="typescript"
|
|
191
|
+
import { createIntlayerCMS } from "@intlayer/api";
|
|
192
|
+
import { dictionaryEndpoint } from "@intlayer/api/dictionary";
|
|
193
|
+
|
|
194
|
+
const cms = createIntlayerCMS({
|
|
195
|
+
editor: {
|
|
196
|
+
clientId: process.env.INTLAYER_CLIENT_ID,
|
|
197
|
+
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
198
|
+
backendURL: process.env.INTLAYER_BACKEND_URL, // http://localhost:3100
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
const { data: dictionaries } = await dictionaryEndpoint(cms).getDictionaries();
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## 升级
|
|
208
|
+
|
|
209
|
+
在现有部署上重新运行安装程序会执行滚动升级:
|
|
210
|
+
|
|
211
|
+
```sh
|
|
212
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
这会拉取最新镜像并使用 `docker compose pull && docker compose up -d` 重启容器。现有卷(`mongo-data`、`redis-data`、`minio-data`)会保留——不会丢失数据。
|
|
216
|
+
|
|
217
|
+
要在 `./intlayer/` 目录中手动升级:
|
|
218
|
+
|
|
219
|
+
```sh
|
|
220
|
+
docker compose pull
|
|
221
|
+
docker compose up -d
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## 备份与恢复
|
|
227
|
+
|
|
228
|
+
所有持久化数据都存储在三个命名 Docker 卷中。
|
|
229
|
+
|
|
230
|
+
### 备份
|
|
231
|
+
|
|
232
|
+
```sh
|
|
233
|
+
docker run --rm \
|
|
234
|
+
-v intlayer_mongo-data:/data \
|
|
235
|
+
-v "$(pwd)":/backup \
|
|
236
|
+
busybox tar czf /backup/mongo-data.tar.gz /data
|
|
237
|
+
|
|
238
|
+
docker run --rm \
|
|
239
|
+
-v intlayer_redis-data:/data \
|
|
240
|
+
-v "$(pwd)":/backup \
|
|
241
|
+
busybox tar czf /backup/redis-data.tar.gz /data
|
|
242
|
+
|
|
243
|
+
docker run --rm \
|
|
244
|
+
-v intlayer_minio-data:/data \
|
|
245
|
+
-v "$(pwd)":/backup \
|
|
246
|
+
busybox tar czf /backup/minio-data.tar.gz /data
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### 恢复
|
|
250
|
+
|
|
251
|
+
```sh
|
|
252
|
+
docker run --rm \
|
|
253
|
+
-v intlayer_mongo-data:/data \
|
|
254
|
+
-v "$(pwd)":/backup \
|
|
255
|
+
busybox tar xzf /backup/mongo-data.tar.gz -C /
|
|
256
|
+
|
|
257
|
+
# 对 redis-data 和 minio-data 重复此操作
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## 使用反向代理 (Nginx / Caddy)
|
|
263
|
+
|
|
264
|
+
对于生产部署,请在应用和后端容器前放置一个反向代理,而不是直接暴露它们。
|
|
265
|
+
|
|
266
|
+
### Nginx 示例
|
|
267
|
+
|
|
268
|
+
```nginx
|
|
269
|
+
server {
|
|
270
|
+
listen 80;
|
|
271
|
+
server_name cms.example.com;
|
|
272
|
+
|
|
273
|
+
location / {
|
|
274
|
+
proxy_pass http://localhost:3000;
|
|
275
|
+
proxy_set_header Host $host;
|
|
276
|
+
proxy_set_header X-Real-IP $remote_addr;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
server {
|
|
281
|
+
listen 80;
|
|
282
|
+
server_name api.example.com;
|
|
283
|
+
|
|
284
|
+
location / {
|
|
285
|
+
proxy_pass http://localhost:3100;
|
|
286
|
+
proxy_set_header Host $host;
|
|
287
|
+
proxy_set_header X-Real-IP $remote_addr;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
更新以下 `.env` 变量以匹配您的公共域名:
|
|
293
|
+
|
|
294
|
+
```sh
|
|
295
|
+
BACKEND_URL=https://api.example.com
|
|
296
|
+
APP_URL=https://cms.example.com
|
|
297
|
+
DOMAIN=example.com
|
|
298
|
+
VITE_BACKEND_URL=https://api.example.com
|
|
299
|
+
VITE_DOMAIN=example.com
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
> `VITE_*` 变量在构建时被嵌入到仪表盘镜像中。如果在镜像构建后更改它们,您需要重建 `app` 镜像 (`docker compose build app`) 或使用运行时配置注入。
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## 故障排除
|
|
307
|
+
|
|
308
|
+
### 后端首次启动时崩溃循环
|
|
309
|
+
|
|
310
|
+
MongoDB 和 Redis 必须在后端启动前保持健康。compose 文件使用带有 `condition: service_healthy` 的 `depends_on`。如果您看到后端重复重启,请检查 `mongo` 和 `redis` 的健康检查是否通过:
|
|
311
|
+
|
|
312
|
+
```sh
|
|
313
|
+
docker compose ps
|
|
314
|
+
docker compose logs mongo
|
|
315
|
+
docker compose logs redis
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### 仪表盘无法连接到 API
|
|
319
|
+
|
|
320
|
+
验证 `VITE_BACKEND_URL` 是否与后端可以从**浏览器**(而非 Docker 网络)访问的 URL 匹配。如果您更改了后端端口或添加了反向代理,请重建仪表盘镜像:
|
|
321
|
+
|
|
322
|
+
```sh
|
|
323
|
+
docker compose build app
|
|
324
|
+
docker compose up -d app
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### 电子邮件未发送
|
|
328
|
+
|
|
329
|
+
默认情况下,所有出站电子邮件都会被 Mailpit 捕获。打开 `http://localhost:8025` 查看已发送的消息。要发送真实电子邮件,请在 `.env` 中设置 `MAIL_PROVIDER=resend` 和 `RESEND_API_KEY=<your-key>`,然后重启后端:
|
|
330
|
+
|
|
331
|
+
```sh
|
|
332
|
+
docker compose restart backend
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### MinIO 存储桶缺失
|
|
336
|
+
|
|
337
|
+
如果 `minio-init` 一次性服务未运行(或在 MinIO 准备好之前运行),请手动创建存储桶:
|
|
338
|
+
|
|
339
|
+
```sh
|
|
340
|
+
docker compose run --rm minio-init
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## 有用链接
|
|
346
|
+
|
|
347
|
+
- [Intlayer CMS 文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md)
|
|
348
|
+
- [配置参考](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)
|
|
349
|
+
- [CMS SDK — `@intlayer/api`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md#programmatic-access-with-the-intlayerapi-sdk)
|