@intlayer/docs 8.9.7 → 8.10.0-canary.0
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/README.md +14 -0
- package/blog/en/react-i18next_vs_react-intl_vs_intlayer.md +0 -2
- package/blog/en/vue-i18n_vs_intlayer.md +0 -2
- package/blog/id/react-i18next_vs_react-intl_vs_intlayer.md +0 -2
- package/blog/id/vue-i18n_vs_intlayer.md +0 -2
- package/blog/pl/react-i18next_vs_react-intl_vs_intlayer.md +0 -2
- package/blog/pl/vue-i18n_vs_intlayer.md +0 -2
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +0 -2
- package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +0 -2
- package/blog/tr/vue-i18n_vs_intlayer.md +0 -2
- package/blog/uk/react-i18next_vs_react-intl_vs_intlayer.md +0 -2
- package/blog/uk/vue-i18n_vs_intlayer.md +0 -2
- package/blog/vi/react-i18next_vs_react-intl_vs_intlayer.md +0 -2
- package/blog/vi/vue-i18n_vs_intlayer.md +0 -2
- package/dist/cjs/blog.cjs.map +1 -1
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/doc.cjs.map +1 -1
- package/dist/cjs/frequentQuestions.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/cjs/legal.cjs.map +1 -1
- package/dist/esm/blog.mjs.map +1 -1
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/doc.mjs.map +1 -1
- package/dist/esm/frequentQuestions.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/esm/legal.mjs.map +1 -1
- package/dist/types/blog.d.ts.map +1 -1
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/doc.d.ts.map +1 -1
- package/dist/types/frequentQuestions.d.ts.map +1 -1
- package/dist/types/legal.d.ts.map +1 -1
- package/docs/ar/benchmark/nextjs.md +20 -11
- package/docs/ar/benchmark/solid.md +14 -5
- package/docs/ar/benchmark/svelte.md +14 -5
- package/docs/ar/benchmark/tanstack.md +16 -7
- package/docs/ar/benchmark/vue.md +14 -5
- package/docs/ar/configuration.md +6 -6
- package/docs/ar/custom_domains.md +11 -11
- package/docs/ar/dictionary/content_file.md +41 -0
- package/docs/ar/interest_of_intlayer.md +0 -2
- package/docs/ar/intlayer_with_analog.md +1 -1
- package/docs/ar/intlayer_with_angular.md +1 -1
- package/docs/ar/intlayer_with_astro.md +1 -1
- package/docs/ar/intlayer_with_astro_lit.md +2 -2
- package/docs/ar/intlayer_with_astro_preact.md +3 -3
- package/docs/ar/intlayer_with_astro_react.md +2 -2
- package/docs/ar/intlayer_with_astro_solid.md +3 -3
- package/docs/ar/intlayer_with_astro_svelte.md +1 -1
- package/docs/ar/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ar/intlayer_with_astro_vue.md +1 -1
- package/docs/ar/intlayer_with_nextjs_14.md +2 -2
- package/docs/ar/intlayer_with_nextjs_15.md +2 -2
- package/docs/ar/intlayer_with_nextjs_16.md +1 -1
- package/docs/ar/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/ar/intlayer_with_nuxt.md +1 -1
- package/docs/ar/intlayer_with_react_native+expo.md +2 -2
- package/docs/ar/intlayer_with_react_router_v7.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/ar/intlayer_with_storybook.md +7 -7
- package/docs/ar/intlayer_with_svelte_kit.md +1 -1
- package/docs/ar/intlayer_with_tanstack+solid.md +1 -1
- package/docs/ar/intlayer_with_tanstack.md +1 -1
- package/docs/ar/intlayer_with_vanilla.md +2 -2
- package/docs/ar/intlayer_with_vite+lit.md +1 -1
- package/docs/ar/intlayer_with_vite+preact.md +1 -1
- package/docs/ar/intlayer_with_vite+react.md +1 -1
- package/docs/ar/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/ar/intlayer_with_vite+svelte.md +2 -2
- package/docs/ar/intlayer_with_vite+vanilla.md +4 -4
- package/docs/ar/intlayer_with_vite+vue.md +1 -1
- package/docs/ar/readme.md +13 -0
- package/docs/bn/cli/init.md +1 -1
- package/docs/bn/configuration.md +6 -6
- package/docs/bn/custom_domains.md +11 -11
- package/docs/bn/interest_of_intlayer.md +0 -2
- package/docs/bn/intlayer_with_storybook.md +7 -7
- package/docs/bn/intlayer_with_vanilla.md +2 -2
- package/docs/bn/intlayer_with_vite+lit.md +3 -3
- package/docs/bn/intlayer_with_vite+vanilla.md +5 -5
- package/docs/cs/cli/init.md +1 -1
- package/docs/cs/configuration.md +6 -6
- package/docs/cs/custom_domains.md +11 -11
- package/docs/cs/interest_of_intlayer.md +0 -2
- package/docs/cs/intlayer_with_storybook.md +7 -7
- package/docs/cs/intlayer_with_vanilla.md +2 -2
- package/docs/cs/intlayer_with_vite+lit.md +3 -3
- package/docs/cs/intlayer_with_vite+vanilla.md +5 -5
- package/docs/de/benchmark/nextjs.md +15 -6
- package/docs/de/benchmark/solid.md +14 -5
- package/docs/de/benchmark/svelte.md +14 -5
- package/docs/de/benchmark/tanstack.md +15 -6
- package/docs/de/benchmark/vue.md +14 -5
- package/docs/de/configuration.md +6 -6
- package/docs/de/custom_domains.md +11 -11
- package/docs/de/dictionary/content_file.md +41 -0
- package/docs/de/dictionary/markdown.md +36 -1
- package/docs/de/interest_of_intlayer.md +0 -2
- package/docs/de/intlayer_with_analog.md +1 -1
- package/docs/de/intlayer_with_angular.md +1 -1
- package/docs/de/intlayer_with_astro.md +1 -1
- package/docs/de/intlayer_with_astro_lit.md +2 -2
- package/docs/de/intlayer_with_astro_preact.md +3 -3
- package/docs/de/intlayer_with_astro_react.md +2 -2
- package/docs/de/intlayer_with_astro_solid.md +3 -3
- package/docs/de/intlayer_with_astro_svelte.md +1 -1
- package/docs/de/intlayer_with_astro_vanilla.md +1 -1
- package/docs/de/intlayer_with_astro_vue.md +1 -1
- package/docs/de/intlayer_with_nextjs_14.md +2 -2
- package/docs/de/intlayer_with_nextjs_15.md +2 -2
- package/docs/de/intlayer_with_nextjs_16.md +1 -1
- package/docs/de/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/de/intlayer_with_nuxt.md +1 -1
- package/docs/de/intlayer_with_react_native+expo.md +2 -2
- package/docs/de/intlayer_with_react_router_v7.md +1 -1
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/de/intlayer_with_storybook.md +7 -7
- package/docs/de/intlayer_with_svelte_kit.md +1 -1
- package/docs/de/intlayer_with_tanstack+solid.md +1 -1
- package/docs/de/intlayer_with_tanstack.md +1 -1
- package/docs/de/intlayer_with_vanilla.md +2 -2
- package/docs/de/intlayer_with_vite+lit.md +2 -2
- package/docs/de/intlayer_with_vite+preact.md +2 -2
- package/docs/de/intlayer_with_vite+react.md +2 -2
- package/docs/de/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/de/intlayer_with_vite+solid.md +1 -1
- package/docs/de/intlayer_with_vite+svelte.md +3 -3
- package/docs/de/intlayer_with_vite+vanilla.md +5 -5
- package/docs/de/intlayer_with_vite+vue.md +2 -2
- package/docs/de/readme.md +13 -0
- package/docs/en/agent_skills.md +2 -2
- package/docs/en/benchmark/___nextjs.md +1 -1
- package/docs/en/benchmark/___tanstack.md +2 -2
- package/docs/en/benchmark/nextjs.md +11 -2
- package/docs/en/benchmark/solid.md +10 -1
- package/docs/en/benchmark/svelte.md +10 -1
- package/docs/en/benchmark/tanstack.md +10 -1
- package/docs/en/benchmark/vue.md +10 -1
- package/docs/en/configuration.md +7 -7
- package/docs/en/custom_domains.md +11 -11
- package/docs/en/dictionary/content_file.md +41 -0
- package/docs/en/dictionary/markdown.md +38 -1
- package/docs/en/interest_of_intlayer.md +0 -2
- package/docs/en/intlayer_with_analog.md +1 -1
- package/docs/en/intlayer_with_angular.md +1 -1
- package/docs/en/intlayer_with_astro.md +1 -1
- package/docs/en/intlayer_with_astro_lit.md +4 -4
- package/docs/en/intlayer_with_astro_preact.md +3 -3
- package/docs/en/intlayer_with_astro_react.md +2 -2
- package/docs/en/intlayer_with_astro_solid.md +3 -3
- package/docs/en/intlayer_with_astro_svelte.md +1 -1
- package/docs/en/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en/intlayer_with_astro_vue.md +1 -1
- package/docs/en/intlayer_with_nextjs_14.md +1 -1
- package/docs/en/intlayer_with_nextjs_15.md +1 -1
- package/docs/en/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/en/intlayer_with_nuxt.md +1 -1
- package/docs/en/intlayer_with_react_native+expo.md +1 -1
- package/docs/en/intlayer_with_react_router_v7.md +1 -1
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/en/intlayer_with_storybook.md +7 -7
- package/docs/en/intlayer_with_svelte_kit.md +1 -1
- package/docs/en/intlayer_with_tanstack+solid.md +1 -1
- package/docs/en/intlayer_with_tanstack.md +1 -1
- package/docs/en/intlayer_with_vanilla.md +2 -2
- package/docs/en/intlayer_with_vite+lit.md +2 -2
- package/docs/en/intlayer_with_vite+preact.md +1 -1
- package/docs/en/intlayer_with_vite+react.md +1 -1
- package/docs/en/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/en/intlayer_with_vite+svelte.md +2 -2
- package/docs/en/intlayer_with_vite+vanilla.md +4 -4
- package/docs/en/intlayer_with_vite+vue.md +1 -1
- package/docs/en/readme.md +13 -0
- package/docs/en-GB/agent_skills.md +2 -2
- package/docs/en-GB/benchmark/nextjs.md +16 -7
- package/docs/en-GB/benchmark/solid.md +14 -5
- package/docs/en-GB/benchmark/svelte.md +14 -5
- package/docs/en-GB/benchmark/tanstack.md +16 -7
- package/docs/en-GB/benchmark/vue.md +14 -5
- package/docs/en-GB/cli/init.md +1 -1
- package/docs/en-GB/configuration.md +7 -7
- package/docs/en-GB/custom_domains.md +11 -11
- package/docs/en-GB/dictionary/content_file.md +41 -0
- package/docs/en-GB/dictionary/markdown.md +37 -1
- package/docs/en-GB/interest_of_intlayer.md +0 -2
- package/docs/en-GB/intlayer_with_analog.md +1 -1
- package/docs/en-GB/intlayer_with_angular.md +1 -1
- package/docs/en-GB/intlayer_with_astro.md +1 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +2 -2
- package/docs/en-GB/intlayer_with_astro_preact.md +3 -3
- package/docs/en-GB/intlayer_with_astro_react.md +2 -2
- package/docs/en-GB/intlayer_with_astro_solid.md +3 -3
- package/docs/en-GB/intlayer_with_astro_svelte.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_14.md +2 -2
- package/docs/en-GB/intlayer_with_nextjs_15.md +2 -2
- package/docs/en-GB/intlayer_with_nextjs_16.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/en-GB/intlayer_with_nuxt.md +1 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +2 -2
- package/docs/en-GB/intlayer_with_react_router_v7.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/en-GB/intlayer_with_storybook.md +7 -7
- package/docs/en-GB/intlayer_with_svelte_kit.md +1 -1
- package/docs/en-GB/intlayer_with_tanstack+solid.md +1 -1
- package/docs/en-GB/intlayer_with_tanstack.md +1 -1
- package/docs/en-GB/intlayer_with_vanilla.md +2 -2
- package/docs/en-GB/intlayer_with_vite+lit.md +2 -2
- package/docs/en-GB/intlayer_with_vite+preact.md +1 -1
- package/docs/en-GB/intlayer_with_vite+react.md +1 -1
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/en-GB/intlayer_with_vite+svelte.md +2 -2
- package/docs/en-GB/intlayer_with_vite+vanilla.md +4 -4
- package/docs/en-GB/intlayer_with_vite+vue.md +1 -1
- package/docs/en-GB/readme.md +13 -0
- package/docs/es/agent_skills.md +2 -2
- package/docs/es/benchmark/nextjs.md +15 -6
- package/docs/es/benchmark/solid.md +14 -5
- package/docs/es/benchmark/svelte.md +14 -5
- package/docs/es/benchmark/tanstack.md +15 -6
- package/docs/es/benchmark/vue.md +14 -5
- package/docs/es/configuration.md +1 -1
- package/docs/es/custom_domains.md +11 -11
- package/docs/es/dictionary/content_file.md +41 -0
- package/docs/es/dictionary/markdown.md +36 -1
- package/docs/es/interest_of_intlayer.md +0 -2
- package/docs/es/intlayer_with_analog.md +1 -1
- package/docs/es/intlayer_with_angular.md +1 -1
- package/docs/es/intlayer_with_astro.md +1 -1
- package/docs/es/intlayer_with_astro_lit.md +2 -2
- package/docs/es/intlayer_with_astro_preact.md +3 -3
- package/docs/es/intlayer_with_astro_react.md +2 -2
- package/docs/es/intlayer_with_astro_solid.md +3 -3
- package/docs/es/intlayer_with_astro_svelte.md +1 -1
- package/docs/es/intlayer_with_astro_vanilla.md +1 -1
- package/docs/es/intlayer_with_astro_vue.md +1 -1
- package/docs/es/intlayer_with_nextjs_14.md +2 -2
- package/docs/es/intlayer_with_nextjs_15.md +2 -2
- package/docs/es/intlayer_with_nextjs_16.md +1 -1
- package/docs/es/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_native+expo.md +2 -2
- package/docs/es/intlayer_with_react_router_v7.md +1 -1
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/es/intlayer_with_storybook.md +5 -5
- package/docs/es/intlayer_with_svelte_kit.md +1 -1
- package/docs/es/intlayer_with_tanstack+solid.md +1 -1
- package/docs/es/intlayer_with_tanstack.md +1 -1
- package/docs/es/intlayer_with_vanilla.md +2 -2
- package/docs/es/intlayer_with_vite+lit.md +2 -2
- package/docs/es/intlayer_with_vite+preact.md +2 -2
- package/docs/es/intlayer_with_vite+react.md +2 -2
- package/docs/es/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/es/intlayer_with_vite+solid.md +1 -1
- package/docs/es/intlayer_with_vite+svelte.md +3 -3
- package/docs/es/intlayer_with_vite+vanilla.md +4 -4
- package/docs/es/intlayer_with_vite+vue.md +2 -2
- package/docs/es/readme.md +13 -0
- package/docs/fr/agent_skills.md +2 -2
- package/docs/fr/benchmark/nextjs.md +20 -11
- package/docs/fr/benchmark/solid.md +14 -5
- package/docs/fr/benchmark/svelte.md +14 -5
- package/docs/fr/benchmark/tanstack.md +16 -7
- package/docs/fr/benchmark/vue.md +14 -5
- package/docs/fr/configuration.md +6 -6
- package/docs/fr/custom_domains.md +11 -11
- package/docs/fr/dictionary/content_file.md +41 -0
- package/docs/fr/dictionary/markdown.md +36 -1
- package/docs/fr/interest_of_intlayer.md +0 -2
- package/docs/fr/intlayer_with_analog.md +1 -1
- package/docs/fr/intlayer_with_angular.md +1 -1
- package/docs/fr/intlayer_with_astro.md +1 -1
- package/docs/fr/intlayer_with_astro_lit.md +4 -4
- package/docs/fr/intlayer_with_astro_preact.md +3 -3
- package/docs/fr/intlayer_with_astro_react.md +2 -2
- package/docs/fr/intlayer_with_astro_solid.md +3 -3
- package/docs/fr/intlayer_with_astro_svelte.md +1 -1
- package/docs/fr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/fr/intlayer_with_astro_vue.md +1 -1
- package/docs/fr/intlayer_with_nextjs_14.md +2 -2
- package/docs/fr/intlayer_with_nextjs_15.md +2 -2
- package/docs/fr/intlayer_with_nextjs_16.md +1 -1
- package/docs/fr/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/fr/intlayer_with_nuxt.md +1 -1
- package/docs/fr/intlayer_with_react_native+expo.md +2 -2
- package/docs/fr/intlayer_with_react_router_v7.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/fr/intlayer_with_storybook.md +7 -7
- package/docs/fr/intlayer_with_svelte_kit.md +1 -1
- package/docs/fr/intlayer_with_tanstack+solid.md +1 -1
- package/docs/fr/intlayer_with_tanstack.md +1 -1
- package/docs/fr/intlayer_with_vanilla.md +2 -2
- package/docs/fr/intlayer_with_vite+lit.md +3 -3
- package/docs/fr/intlayer_with_vite+preact.md +2 -2
- package/docs/fr/intlayer_with_vite+react.md +2 -2
- package/docs/fr/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/fr/intlayer_with_vite+solid.md +1 -1
- package/docs/fr/intlayer_with_vite+svelte.md +3 -3
- package/docs/fr/intlayer_with_vite+vanilla.md +5 -5
- package/docs/fr/intlayer_with_vite+vue.md +2 -2
- package/docs/fr/readme.md +15 -0
- package/docs/hi/benchmark/nextjs.md +20 -11
- package/docs/hi/benchmark/solid.md +14 -5
- package/docs/hi/benchmark/svelte.md +14 -5
- package/docs/hi/benchmark/tanstack.md +16 -7
- package/docs/hi/benchmark/vue.md +14 -5
- package/docs/hi/cli/init.md +1 -1
- package/docs/hi/configuration.md +6 -6
- package/docs/hi/custom_domains.md +11 -11
- package/docs/hi/dictionary/content_file.md +41 -0
- package/docs/hi/dictionary/markdown.md +36 -1
- package/docs/hi/interest_of_intlayer.md +0 -2
- package/docs/hi/intlayer_with_analog.md +1 -1
- package/docs/hi/intlayer_with_angular.md +1 -1
- package/docs/hi/intlayer_with_astro.md +1 -1
- package/docs/hi/intlayer_with_astro_lit.md +2 -2
- package/docs/hi/intlayer_with_astro_preact.md +3 -3
- package/docs/hi/intlayer_with_astro_react.md +2 -2
- package/docs/hi/intlayer_with_astro_solid.md +3 -3
- package/docs/hi/intlayer_with_astro_svelte.md +1 -1
- package/docs/hi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/hi/intlayer_with_astro_vue.md +1 -1
- package/docs/hi/intlayer_with_nextjs_14.md +2 -2
- package/docs/hi/intlayer_with_nextjs_15.md +2 -2
- package/docs/hi/intlayer_with_nextjs_16.md +1 -1
- package/docs/hi/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/hi/intlayer_with_nuxt.md +1 -1
- package/docs/hi/intlayer_with_react_native+expo.md +2 -2
- package/docs/hi/intlayer_with_react_router_v7.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/hi/intlayer_with_storybook.md +7 -7
- package/docs/hi/intlayer_with_svelte_kit.md +1 -1
- package/docs/hi/intlayer_with_tanstack+solid.md +1 -1
- package/docs/hi/intlayer_with_tanstack.md +1 -1
- package/docs/hi/intlayer_with_vanilla.md +2 -2
- package/docs/hi/intlayer_with_vite+lit.md +3 -3
- package/docs/hi/intlayer_with_vite+preact.md +2 -2
- package/docs/hi/intlayer_with_vite+react.md +2 -2
- package/docs/hi/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/hi/intlayer_with_vite+solid.md +1 -1
- package/docs/hi/intlayer_with_vite+svelte.md +3 -3
- package/docs/hi/intlayer_with_vite+vanilla.md +5 -5
- package/docs/hi/intlayer_with_vite+vue.md +2 -2
- package/docs/hi/readme.md +14 -1
- package/docs/id/agent_skills.md +2 -2
- package/docs/id/benchmark/nextjs.md +20 -11
- package/docs/id/benchmark/solid.md +14 -5
- package/docs/id/benchmark/svelte.md +14 -5
- package/docs/id/benchmark/tanstack.md +16 -7
- package/docs/id/benchmark/vue.md +14 -5
- package/docs/id/cli/init.md +1 -1
- package/docs/id/configuration.md +6 -6
- package/docs/id/custom_domains.md +11 -11
- package/docs/id/dictionary/content_file.md +41 -0
- package/docs/id/dictionary/markdown.md +36 -1
- package/docs/id/interest_of_intlayer.md +0 -2
- package/docs/id/intlayer_with_analog.md +1 -1
- package/docs/id/intlayer_with_angular.md +1 -1
- package/docs/id/intlayer_with_astro.md +1 -1
- package/docs/id/intlayer_with_astro_lit.md +2 -2
- package/docs/id/intlayer_with_astro_preact.md +3 -3
- package/docs/id/intlayer_with_astro_react.md +2 -2
- package/docs/id/intlayer_with_astro_solid.md +3 -3
- package/docs/id/intlayer_with_astro_svelte.md +1 -1
- package/docs/id/intlayer_with_astro_vanilla.md +1 -1
- package/docs/id/intlayer_with_astro_vue.md +1 -1
- package/docs/id/intlayer_with_nextjs_14.md +1 -1
- package/docs/id/intlayer_with_nextjs_15.md +1 -1
- package/docs/id/intlayer_with_nextjs_16.md +1 -1
- package/docs/id/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/id/intlayer_with_nuxt.md +1 -1
- package/docs/id/intlayer_with_react_native+expo.md +1 -1
- package/docs/id/intlayer_with_react_router_v7.md +1 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/id/intlayer_with_storybook.md +7 -7
- package/docs/id/intlayer_with_svelte_kit.md +1 -1
- package/docs/id/intlayer_with_tanstack+solid.md +1 -1
- package/docs/id/intlayer_with_tanstack.md +1 -1
- package/docs/id/intlayer_with_vanilla.md +2 -2
- package/docs/id/intlayer_with_vite+lit.md +2 -2
- package/docs/id/intlayer_with_vite+preact.md +1 -1
- package/docs/id/intlayer_with_vite+react.md +1 -1
- package/docs/id/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/id/intlayer_with_vite+svelte.md +2 -2
- package/docs/id/intlayer_with_vite+vanilla.md +4 -4
- package/docs/id/intlayer_with_vite+vue.md +1 -1
- package/docs/id/readme.md +13 -0
- package/docs/it/benchmark/nextjs.md +18 -9
- package/docs/it/benchmark/solid.md +14 -5
- package/docs/it/benchmark/svelte.md +14 -5
- package/docs/it/benchmark/tanstack.md +16 -7
- package/docs/it/benchmark/vue.md +14 -5
- package/docs/it/configuration.md +6 -6
- package/docs/it/custom_domains.md +11 -11
- package/docs/it/dictionary/content_file.md +41 -0
- package/docs/it/dictionary/markdown.md +36 -1
- package/docs/it/interest_of_intlayer.md +0 -2
- package/docs/it/intlayer_with_analog.md +1 -1
- package/docs/it/intlayer_with_angular.md +1 -1
- package/docs/it/intlayer_with_astro.md +1 -1
- package/docs/it/intlayer_with_astro_lit.md +2 -2
- package/docs/it/intlayer_with_astro_preact.md +3 -3
- package/docs/it/intlayer_with_astro_react.md +2 -2
- package/docs/it/intlayer_with_astro_solid.md +3 -3
- package/docs/it/intlayer_with_astro_svelte.md +1 -1
- package/docs/it/intlayer_with_astro_vanilla.md +1 -1
- package/docs/it/intlayer_with_astro_vue.md +1 -1
- package/docs/it/intlayer_with_nextjs_14.md +2 -2
- package/docs/it/intlayer_with_nextjs_15.md +2 -2
- package/docs/it/intlayer_with_nextjs_16.md +1 -1
- package/docs/it/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/it/intlayer_with_nuxt.md +1 -1
- package/docs/it/intlayer_with_react_native+expo.md +2 -2
- package/docs/it/intlayer_with_react_router_v7.md +1 -1
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/it/intlayer_with_storybook.md +7 -7
- package/docs/it/intlayer_with_svelte_kit.md +1 -1
- package/docs/it/intlayer_with_tanstack+solid.md +1 -1
- package/docs/it/intlayer_with_tanstack.md +1 -1
- package/docs/it/intlayer_with_vanilla.md +2 -2
- package/docs/it/intlayer_with_vite+lit.md +2 -2
- package/docs/it/intlayer_with_vite+preact.md +2 -2
- package/docs/it/intlayer_with_vite+react.md +2 -2
- package/docs/it/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/it/intlayer_with_vite+solid.md +1 -1
- package/docs/it/intlayer_with_vite+svelte.md +3 -3
- package/docs/it/intlayer_with_vite+vanilla.md +5 -5
- package/docs/it/intlayer_with_vite+vue.md +1 -1
- package/docs/it/readme.md +13 -0
- package/docs/ja/benchmark/nextjs.md +15 -6
- package/docs/ja/benchmark/solid.md +10 -1
- package/docs/ja/benchmark/svelte.md +10 -1
- package/docs/ja/benchmark/tanstack.md +15 -6
- package/docs/ja/benchmark/vue.md +10 -1
- package/docs/ja/configuration.md +1 -1
- package/docs/ja/custom_domains.md +9 -9
- package/docs/ja/dictionary/content_file.md +41 -0
- package/docs/ja/dictionary/markdown.md +36 -1
- package/docs/ja/interest_of_intlayer.md +0 -2
- package/docs/ja/intlayer_with_analog.md +1 -1
- package/docs/ja/intlayer_with_angular.md +1 -1
- package/docs/ja/intlayer_with_astro.md +1 -1
- package/docs/ja/intlayer_with_astro_lit.md +2 -2
- package/docs/ja/intlayer_with_astro_preact.md +2 -2
- package/docs/ja/intlayer_with_astro_react.md +1 -1
- package/docs/ja/intlayer_with_astro_solid.md +1 -1
- package/docs/ja/intlayer_with_astro_svelte.md +1 -1
- package/docs/ja/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ja/intlayer_with_astro_vue.md +1 -1
- package/docs/ja/intlayer_with_nextjs_14.md +2 -2
- package/docs/ja/intlayer_with_nextjs_15.md +2 -2
- package/docs/ja/intlayer_with_nextjs_16.md +1 -1
- package/docs/ja/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/ja/intlayer_with_nuxt.md +1 -1
- package/docs/ja/intlayer_with_react_native+expo.md +2 -2
- package/docs/ja/intlayer_with_react_router_v7.md +2 -2
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/ja/intlayer_with_storybook.md +5 -5
- package/docs/ja/intlayer_with_svelte_kit.md +1 -1
- package/docs/ja/intlayer_with_tanstack+solid.md +1 -1
- package/docs/ja/intlayer_with_tanstack.md +1 -1
- package/docs/ja/intlayer_with_vanilla.md +2 -2
- package/docs/ja/intlayer_with_vite+lit.md +1 -1
- package/docs/ja/intlayer_with_vite+preact.md +1 -1
- package/docs/ja/intlayer_with_vite+react.md +1 -1
- package/docs/ja/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/ja/intlayer_with_vite+svelte.md +2 -2
- package/docs/ja/intlayer_with_vite+vanilla.md +2 -2
- package/docs/ja/intlayer_with_vite+vue.md +1 -1
- package/docs/ja/readme.md +13 -0
- package/docs/ko/benchmark/nextjs.md +15 -6
- package/docs/ko/benchmark/solid.md +13 -4
- package/docs/ko/benchmark/svelte.md +13 -4
- package/docs/ko/benchmark/tanstack.md +15 -6
- package/docs/ko/benchmark/vue.md +13 -4
- package/docs/ko/configuration.md +1 -1
- package/docs/ko/custom_domains.md +9 -9
- package/docs/ko/dictionary/content_file.md +41 -0
- package/docs/ko/dictionary/markdown.md +36 -1
- package/docs/ko/interest_of_intlayer.md +0 -2
- package/docs/ko/intlayer_with_analog.md +1 -1
- package/docs/ko/intlayer_with_angular.md +1 -1
- package/docs/ko/intlayer_with_astro.md +1 -1
- package/docs/ko/intlayer_with_astro_lit.md +2 -2
- package/docs/ko/intlayer_with_astro_preact.md +2 -2
- package/docs/ko/intlayer_with_astro_react.md +1 -1
- package/docs/ko/intlayer_with_astro_solid.md +1 -1
- package/docs/ko/intlayer_with_astro_svelte.md +1 -1
- package/docs/ko/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ko/intlayer_with_astro_vue.md +1 -1
- package/docs/ko/intlayer_with_nextjs_14.md +2 -2
- package/docs/ko/intlayer_with_nextjs_15.md +2 -2
- package/docs/ko/intlayer_with_nextjs_16.md +1 -1
- package/docs/ko/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/ko/intlayer_with_nuxt.md +1 -1
- package/docs/ko/intlayer_with_react_native+expo.md +2 -2
- package/docs/ko/intlayer_with_react_router_v7.md +1 -1
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/ko/intlayer_with_storybook.md +5 -5
- package/docs/ko/intlayer_with_svelte_kit.md +1 -1
- package/docs/ko/intlayer_with_tanstack+solid.md +1 -1
- package/docs/ko/intlayer_with_tanstack.md +1 -1
- package/docs/ko/intlayer_with_vanilla.md +2 -2
- package/docs/ko/intlayer_with_vite+lit.md +2 -2
- package/docs/ko/intlayer_with_vite+preact.md +2 -2
- package/docs/ko/intlayer_with_vite+react.md +2 -2
- package/docs/ko/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/ko/intlayer_with_vite+solid.md +1 -1
- package/docs/ko/intlayer_with_vite+svelte.md +3 -3
- package/docs/ko/intlayer_with_vite+vanilla.md +3 -3
- package/docs/ko/intlayer_with_vite+vue.md +2 -2
- package/docs/ko/readme.md +13 -0
- package/docs/nl/configuration.md +6 -6
- package/docs/nl/custom_domains.md +11 -11
- package/docs/nl/interest_of_intlayer.md +0 -2
- package/docs/nl/intlayer_with_storybook.md +7 -7
- package/docs/nl/intlayer_with_vanilla.md +2 -2
- package/docs/nl/intlayer_with_vite+lit.md +2 -2
- package/docs/nl/intlayer_with_vite+vanilla.md +4 -4
- package/docs/pl/agent_skills.md +2 -2
- package/docs/pl/benchmark/nextjs.md +20 -11
- package/docs/pl/benchmark/solid.md +15 -6
- package/docs/pl/benchmark/svelte.md +15 -6
- package/docs/pl/benchmark/tanstack.md +16 -7
- package/docs/pl/benchmark/vue.md +16 -7
- package/docs/pl/configuration.md +6 -6
- package/docs/pl/custom_domains.md +11 -11
- package/docs/pl/dictionary/content_file.md +41 -0
- package/docs/pl/dictionary/markdown.md +36 -1
- package/docs/pl/interest_of_intlayer.md +0 -2
- package/docs/pl/intlayer_with_analog.md +1 -1
- package/docs/pl/intlayer_with_angular.md +1 -1
- package/docs/pl/intlayer_with_astro.md +1 -1
- package/docs/pl/intlayer_with_astro_lit.md +2 -2
- package/docs/pl/intlayer_with_astro_preact.md +3 -3
- package/docs/pl/intlayer_with_astro_react.md +2 -2
- package/docs/pl/intlayer_with_astro_solid.md +3 -3
- package/docs/pl/intlayer_with_astro_svelte.md +1 -1
- package/docs/pl/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pl/intlayer_with_astro_vue.md +1 -1
- package/docs/pl/intlayer_with_nextjs_14.md +1 -1
- package/docs/pl/intlayer_with_nextjs_15.md +1 -1
- package/docs/pl/intlayer_with_nextjs_16.md +1 -1
- package/docs/pl/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/pl/intlayer_with_nuxt.md +1 -1
- package/docs/pl/intlayer_with_react_native+expo.md +1 -1
- package/docs/pl/intlayer_with_react_router_v7.md +1 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/pl/intlayer_with_storybook.md +7 -7
- package/docs/pl/intlayer_with_svelte_kit.md +1 -1
- package/docs/pl/intlayer_with_tanstack+solid.md +1 -1
- package/docs/pl/intlayer_with_tanstack.md +1 -1
- package/docs/pl/intlayer_with_vanilla.md +2 -2
- package/docs/pl/intlayer_with_vite+lit.md +3 -3
- package/docs/pl/intlayer_with_vite+preact.md +2 -2
- package/docs/pl/intlayer_with_vite+react.md +2 -2
- package/docs/pl/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/pl/intlayer_with_vite+solid.md +1 -1
- package/docs/pl/intlayer_with_vite+svelte.md +3 -3
- package/docs/pl/intlayer_with_vite+vanilla.md +5 -5
- package/docs/pl/intlayer_with_vite+vue.md +2 -2
- package/docs/pl/readme.md +13 -0
- package/docs/pt/benchmark/nextjs.md +20 -11
- package/docs/pt/benchmark/solid.md +14 -5
- package/docs/pt/benchmark/svelte.md +14 -5
- package/docs/pt/benchmark/tanstack.md +16 -7
- package/docs/pt/benchmark/vue.md +14 -5
- package/docs/pt/configuration.md +6 -6
- package/docs/pt/custom_domains.md +11 -11
- package/docs/pt/dictionary/content_file.md +41 -0
- package/docs/pt/dictionary/markdown.md +36 -1
- package/docs/pt/interest_of_intlayer.md +0 -2
- package/docs/pt/intlayer_with_analog.md +1 -1
- package/docs/pt/intlayer_with_angular.md +1 -1
- package/docs/pt/intlayer_with_astro.md +1 -1
- package/docs/pt/intlayer_with_astro_lit.md +1 -1
- package/docs/pt/intlayer_with_astro_preact.md +3 -3
- package/docs/pt/intlayer_with_astro_react.md +2 -2
- package/docs/pt/intlayer_with_astro_solid.md +3 -3
- package/docs/pt/intlayer_with_astro_svelte.md +1 -1
- package/docs/pt/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pt/intlayer_with_astro_vue.md +1 -1
- package/docs/pt/intlayer_with_nextjs_14.md +2 -2
- package/docs/pt/intlayer_with_nextjs_15.md +2 -2
- package/docs/pt/intlayer_with_nextjs_16.md +1 -1
- package/docs/pt/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/pt/intlayer_with_nuxt.md +1 -1
- package/docs/pt/intlayer_with_react_native+expo.md +2 -2
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/pt/intlayer_with_storybook.md +7 -7
- package/docs/pt/intlayer_with_svelte_kit.md +1 -1
- package/docs/pt/intlayer_with_tanstack+solid.md +1 -1
- package/docs/pt/intlayer_with_tanstack.md +1 -1
- package/docs/pt/intlayer_with_vanilla.md +2 -2
- package/docs/pt/intlayer_with_vite+lit.md +3 -3
- package/docs/pt/intlayer_with_vite+preact.md +2 -2
- package/docs/pt/intlayer_with_vite+react.md +2 -2
- package/docs/pt/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/pt/intlayer_with_vite+solid.md +1 -1
- package/docs/pt/intlayer_with_vite+svelte.md +3 -3
- package/docs/pt/intlayer_with_vite+vanilla.md +5 -5
- package/docs/pt/intlayer_with_vite+vue.md +1 -1
- package/docs/pt/readme.md +13 -0
- package/docs/ru/agent_skills.md +1 -1
- package/docs/ru/benchmark/index.md +2 -2
- package/docs/ru/benchmark/nextjs.md +28 -19
- package/docs/ru/benchmark/solid.md +16 -7
- package/docs/ru/benchmark/svelte.md +17 -8
- package/docs/ru/benchmark/tanstack.md +20 -11
- package/docs/ru/benchmark/vue.md +19 -10
- package/docs/ru/bundle_optimization.md +1 -1
- package/docs/ru/cli/index.md +23 -23
- package/docs/ru/cli/init.md +7 -7
- package/docs/ru/cli/standalone.md +5 -5
- package/docs/ru/compiler.md +3 -3
- package/docs/ru/configuration.md +8 -8
- package/docs/ru/custom_domains.md +12 -12
- package/docs/ru/dictionary/content_file.md +41 -0
- package/docs/ru/dictionary/html.md +6 -6
- package/docs/ru/dictionary/markdown.md +42 -7
- package/docs/ru/interest_of_intlayer.md +3 -5
- package/docs/ru/intlayer_with_analog.md +1 -1
- package/docs/ru/intlayer_with_angular.md +1 -1
- package/docs/ru/intlayer_with_astro.md +2 -2
- package/docs/ru/intlayer_with_astro_lit.md +5 -5
- package/docs/ru/intlayer_with_astro_preact.md +4 -4
- package/docs/ru/intlayer_with_astro_react.md +3 -3
- package/docs/ru/intlayer_with_astro_solid.md +4 -4
- package/docs/ru/intlayer_with_astro_svelte.md +2 -2
- package/docs/ru/intlayer_with_astro_vanilla.md +2 -2
- package/docs/ru/intlayer_with_astro_vue.md +2 -2
- package/docs/ru/intlayer_with_fastify.md +1 -1
- package/docs/ru/intlayer_with_nextjs_14.md +2 -2
- package/docs/ru/intlayer_with_nextjs_15.md +2 -2
- package/docs/ru/intlayer_with_nextjs_16.md +1 -1
- package/docs/ru/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/ru/intlayer_with_nuxt.md +1 -1
- package/docs/ru/intlayer_with_react_native+expo.md +2 -2
- package/docs/ru/intlayer_with_react_router_v7.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/ru/intlayer_with_storybook.md +10 -10
- package/docs/ru/intlayer_with_svelte_kit.md +1 -1
- package/docs/ru/intlayer_with_tanstack+solid.md +7 -7
- package/docs/ru/intlayer_with_tanstack.md +1 -1
- package/docs/ru/intlayer_with_vanilla.md +4 -4
- package/docs/ru/intlayer_with_vite+lit.md +5 -5
- package/docs/ru/intlayer_with_vite+preact.md +2 -2
- package/docs/ru/intlayer_with_vite+react.md +2 -2
- package/docs/ru/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/ru/intlayer_with_vite+solid.md +1 -1
- package/docs/ru/intlayer_with_vite+svelte.md +3 -3
- package/docs/ru/intlayer_with_vite+vanilla.md +7 -7
- package/docs/ru/intlayer_with_vite+vue.md +2 -2
- package/docs/ru/readme.md +13 -0
- package/docs/tr/benchmark/nextjs.md +16 -7
- package/docs/tr/benchmark/solid.md +14 -5
- package/docs/tr/benchmark/svelte.md +14 -5
- package/docs/tr/benchmark/tanstack.md +16 -7
- package/docs/tr/benchmark/vue.md +14 -5
- package/docs/tr/configuration.md +6 -6
- package/docs/tr/custom_domains.md +11 -11
- package/docs/tr/dictionary/content_file.md +41 -0
- package/docs/tr/dictionary/markdown.md +36 -1
- package/docs/tr/interest_of_intlayer.md +0 -2
- package/docs/tr/intlayer_with_analog.md +1 -1
- package/docs/tr/intlayer_with_angular.md +1 -1
- package/docs/tr/intlayer_with_astro.md +1 -1
- package/docs/tr/intlayer_with_astro_lit.md +2 -2
- package/docs/tr/intlayer_with_astro_preact.md +3 -3
- package/docs/tr/intlayer_with_astro_react.md +2 -2
- package/docs/tr/intlayer_with_astro_solid.md +3 -3
- package/docs/tr/intlayer_with_astro_svelte.md +1 -1
- package/docs/tr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/tr/intlayer_with_astro_vue.md +1 -1
- package/docs/tr/intlayer_with_nextjs_15.md +2 -2
- package/docs/tr/intlayer_with_nextjs_16.md +1 -1
- package/docs/tr/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/tr/intlayer_with_nuxt.md +1 -1
- package/docs/tr/intlayer_with_react_native+expo.md +2 -2
- package/docs/tr/intlayer_with_react_router_v7.md +1 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/tr/intlayer_with_storybook.md +7 -7
- package/docs/tr/intlayer_with_svelte_kit.md +1 -1
- package/docs/tr/intlayer_with_tanstack+solid.md +1 -1
- package/docs/tr/intlayer_with_tanstack.md +1 -1
- package/docs/tr/intlayer_with_vanilla.md +2 -2
- package/docs/tr/intlayer_with_vite+lit.md +3 -3
- package/docs/tr/intlayer_with_vite+preact.md +2 -2
- package/docs/tr/intlayer_with_vite+react.md +2 -2
- package/docs/tr/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/tr/intlayer_with_vite+solid.md +1 -1
- package/docs/tr/intlayer_with_vite+svelte.md +3 -3
- package/docs/tr/intlayer_with_vite+vanilla.md +5 -5
- package/docs/tr/intlayer_with_vite+vue.md +2 -2
- package/docs/tr/readme.md +13 -0
- package/docs/uk/agent_skills.md +1 -1
- package/docs/uk/benchmark/index.md +2 -2
- package/docs/uk/benchmark/nextjs.md +29 -20
- package/docs/uk/benchmark/solid.md +16 -7
- package/docs/uk/benchmark/svelte.md +17 -8
- package/docs/uk/benchmark/tanstack.md +21 -12
- package/docs/uk/benchmark/vue.md +20 -11
- package/docs/uk/bundle_optimization.md +1 -1
- package/docs/uk/cli/index.md +21 -21
- package/docs/uk/cli/init.md +9 -9
- package/docs/uk/cli/standalone.md +16 -16
- package/docs/uk/compiler.md +3 -3
- package/docs/uk/configuration.md +8 -8
- package/docs/uk/custom_domains.md +12 -12
- package/docs/uk/dictionary/content_file.md +41 -0
- package/docs/uk/dictionary/markdown.md +36 -1
- package/docs/uk/interest_of_intlayer.md +2 -4
- package/docs/uk/intlayer_with_analog.md +1 -1
- package/docs/uk/intlayer_with_angular.md +1 -1
- package/docs/uk/intlayer_with_astro.md +2 -2
- package/docs/uk/intlayer_with_astro_lit.md +3 -3
- package/docs/uk/intlayer_with_astro_preact.md +4 -4
- package/docs/uk/intlayer_with_astro_react.md +3 -3
- package/docs/uk/intlayer_with_astro_solid.md +4 -4
- package/docs/uk/intlayer_with_astro_svelte.md +2 -2
- package/docs/uk/intlayer_with_astro_vanilla.md +2 -2
- package/docs/uk/intlayer_with_astro_vue.md +2 -2
- package/docs/uk/intlayer_with_fastify.md +1 -1
- package/docs/uk/intlayer_with_nextjs_14.md +1 -1
- package/docs/uk/intlayer_with_nextjs_15.md +1 -1
- package/docs/uk/intlayer_with_nextjs_16.md +1 -1
- package/docs/uk/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/uk/intlayer_with_nuxt.md +1 -1
- package/docs/uk/intlayer_with_react_native+expo.md +1 -1
- package/docs/uk/intlayer_with_react_router_v7.md +1 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/uk/intlayer_with_storybook.md +9 -9
- package/docs/uk/intlayer_with_svelte_kit.md +1 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +4 -4
- package/docs/uk/intlayer_with_tanstack.md +1 -1
- package/docs/uk/intlayer_with_vanilla.md +3 -3
- package/docs/uk/intlayer_with_vite+lit.md +4 -4
- package/docs/uk/intlayer_with_vite+preact.md +2 -2
- package/docs/uk/intlayer_with_vite+react.md +2 -2
- package/docs/uk/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/uk/intlayer_with_vite+solid.md +1 -1
- package/docs/uk/intlayer_with_vite+svelte.md +3 -3
- package/docs/uk/intlayer_with_vite+vanilla.md +6 -6
- package/docs/uk/intlayer_with_vite+vue.md +2 -2
- package/docs/uk/readme.md +13 -0
- package/docs/ur/cli/init.md +1 -1
- package/docs/ur/configuration.md +6 -6
- package/docs/ur/custom_domains.md +11 -11
- package/docs/ur/interest_of_intlayer.md +0 -2
- package/docs/ur/intlayer_with_storybook.md +7 -7
- package/docs/ur/intlayer_with_vanilla.md +2 -2
- package/docs/ur/intlayer_with_vite+lit.md +2 -2
- package/docs/ur/intlayer_with_vite+vanilla.md +4 -4
- package/docs/vi/agent_skills.md +2 -2
- package/docs/vi/benchmark/nextjs.md +20 -11
- package/docs/vi/benchmark/solid.md +14 -5
- package/docs/vi/benchmark/svelte.md +14 -5
- package/docs/vi/benchmark/tanstack.md +16 -7
- package/docs/vi/benchmark/vue.md +14 -5
- package/docs/vi/cli/init.md +1 -1
- package/docs/vi/configuration.md +6 -6
- package/docs/vi/custom_domains.md +11 -11
- package/docs/vi/dictionary/content_file.md +41 -0
- package/docs/vi/dictionary/markdown.md +36 -1
- package/docs/vi/interest_of_intlayer.md +0 -2
- package/docs/vi/intlayer_with_analog.md +1 -1
- package/docs/vi/intlayer_with_angular.md +1 -1
- package/docs/vi/intlayer_with_astro.md +1 -1
- package/docs/vi/intlayer_with_astro_lit.md +2 -2
- package/docs/vi/intlayer_with_astro_preact.md +3 -3
- package/docs/vi/intlayer_with_astro_react.md +2 -2
- package/docs/vi/intlayer_with_astro_solid.md +3 -3
- package/docs/vi/intlayer_with_astro_svelte.md +1 -1
- package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/vi/intlayer_with_astro_vue.md +1 -1
- package/docs/vi/intlayer_with_nextjs_14.md +1 -1
- package/docs/vi/intlayer_with_nextjs_15.md +1 -1
- package/docs/vi/intlayer_with_nextjs_16.md +1 -1
- package/docs/vi/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/vi/intlayer_with_nuxt.md +1 -1
- package/docs/vi/intlayer_with_react_native+expo.md +1 -1
- package/docs/vi/intlayer_with_react_router_v7.md +1 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/vi/intlayer_with_storybook.md +7 -7
- package/docs/vi/intlayer_with_svelte_kit.md +1 -1
- package/docs/vi/intlayer_with_tanstack+solid.md +1 -1
- package/docs/vi/intlayer_with_tanstack.md +1 -1
- package/docs/vi/intlayer_with_vanilla.md +2 -2
- package/docs/vi/intlayer_with_vite+lit.md +2 -2
- package/docs/vi/intlayer_with_vite+preact.md +1 -1
- package/docs/vi/intlayer_with_vite+react.md +1 -1
- package/docs/vi/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/vi/intlayer_with_vite+svelte.md +2 -2
- package/docs/vi/intlayer_with_vite+vanilla.md +4 -4
- package/docs/vi/intlayer_with_vite+vue.md +1 -1
- package/docs/vi/readme.md +13 -0
- package/docs/zh/benchmark/nextjs.md +20 -11
- package/docs/zh/benchmark/solid.md +10 -1
- package/docs/zh/benchmark/svelte.md +10 -1
- package/docs/zh/benchmark/tanstack.md +16 -7
- package/docs/zh/benchmark/vue.md +10 -1
- package/docs/zh/cli/init.md +1 -1
- package/docs/zh/configuration.md +6 -6
- package/docs/zh/custom_domains.md +11 -11
- package/docs/zh/dictionary/content_file.md +41 -0
- package/docs/zh/dictionary/markdown.md +36 -1
- package/docs/zh/interest_of_intlayer.md +0 -2
- package/docs/zh/intlayer_with_analog.md +1 -1
- package/docs/zh/intlayer_with_angular.md +1 -1
- package/docs/zh/intlayer_with_astro.md +1 -1
- package/docs/zh/intlayer_with_astro_lit.md +2 -2
- package/docs/zh/intlayer_with_astro_preact.md +3 -3
- package/docs/zh/intlayer_with_astro_react.md +2 -2
- package/docs/zh/intlayer_with_astro_solid.md +3 -3
- package/docs/zh/intlayer_with_astro_svelte.md +1 -1
- package/docs/zh/intlayer_with_astro_vanilla.md +1 -1
- package/docs/zh/intlayer_with_astro_vue.md +1 -1
- package/docs/zh/intlayer_with_nextjs_14.md +2 -2
- package/docs/zh/intlayer_with_nextjs_15.md +2 -2
- package/docs/zh/intlayer_with_nextjs_16.md +1 -1
- package/docs/zh/intlayer_with_nextjs_page_router.md +2 -2
- package/docs/zh/intlayer_with_nuxt.md +1 -1
- package/docs/zh/intlayer_with_react_native+expo.md +2 -2
- package/docs/zh/intlayer_with_react_router_v7.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/zh/intlayer_with_storybook.md +7 -7
- package/docs/zh/intlayer_with_svelte_kit.md +1 -1
- package/docs/zh/intlayer_with_tanstack+solid.md +1 -1
- package/docs/zh/intlayer_with_tanstack.md +1 -1
- package/docs/zh/intlayer_with_vanilla.md +2 -2
- package/docs/zh/intlayer_with_vite+lit.md +2 -2
- package/docs/zh/intlayer_with_vite+preact.md +1 -1
- package/docs/zh/intlayer_with_vite+react.md +1 -1
- package/docs/zh/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/zh/intlayer_with_vite+svelte.md +2 -2
- package/docs/zh/intlayer_with_vite+vanilla.md +4 -4
- package/docs/zh/intlayer_with_vite+vue.md +1 -1
- package/docs/zh/readme.md +13 -0
- package/docs/zh-TW/interest_of_intlayer.md +0 -2
- package/frequent_questions/ru/intlayerNode.md +2 -2
- package/frequent_questions/uk/intlayerNode.md +2 -2
- package/package.json +7 -7
- package/src/blog.ts +4 -1
- package/src/frequentQuestions.ts +4 -1
- package/src/legal.ts +4 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-20
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-05-18
|
|
4
4
|
title: Найкраще i18n рішення для TanStack Start у 2026 році - Звіт бенчмарку
|
|
5
5
|
description: Порівняйте бібліотеки інтернаціоналізації для TanStack Start, такі як react-i18next, use-intl та Intlayer. Детальний звіт про продуктивність за розміром бандла, витоком та реактивністю.
|
|
6
6
|
keywords:
|
|
@@ -17,12 +17,15 @@ slugs:
|
|
|
17
17
|
author: Aymeric PINEAU
|
|
18
18
|
applicationTemplate: https://github.com/intlayer-org/benchmark-i18n-tanstack-start-template
|
|
19
19
|
history:
|
|
20
|
+
- version: 8.9.8
|
|
21
|
+
date: 2026-05-18
|
|
22
|
+
changes: "Додати порівняння зірок GitHub"
|
|
20
23
|
- version: 8.7.5
|
|
21
24
|
date: 2026-01-06
|
|
22
25
|
changes: "Ініціалізація бенчмарку"
|
|
23
26
|
---
|
|
24
27
|
|
|
25
|
-
# Бібліотеки i18n для TanStack Start
|
|
28
|
+
# Бібліотеки i18n для TanStack Start - Звіт бенчмарку 2026
|
|
26
29
|
|
|
27
30
|
Ця сторінка є звітом бенчмарку i18n рішень на TanStack Start.
|
|
28
31
|
|
|
@@ -105,7 +108,7 @@ history:
|
|
|
105
108
|
- `gt-react` (vlatest)
|
|
106
109
|
- `lingo.dev` (v0.133.9)
|
|
107
110
|
|
|
108
|
-
Фреймворк
|
|
111
|
+
Фреймворк - `TanStack Start` з багатомовним додатком на **10 сторінок** та **10 мов**.
|
|
109
112
|
|
|
110
113
|
Ми порівняли **чотири стратегії завантаження**:
|
|
111
114
|
|
|
@@ -121,9 +124,15 @@ history:
|
|
|
121
124
|
- **Scoped static**: Зберігає код структурованим (логічний поділ) без складних мережевих запитів.
|
|
122
125
|
- **Scoped dynamic**: Найкращий підхід для _розділення коду_ (code splitting) та продуктивності. Мінімізує обсяг пам'яті, завантажуючи лише те, що потрібно поточному перегляду та активній локалі.
|
|
123
126
|
|
|
127
|
+
## Зірки на GitHub
|
|
128
|
+
|
|
129
|
+
Зірки на GitHub є потужним індикатором популярності проекту, довіри спільноти та довгострокової актуальності. Хоча вони не є прямим показником технічної якості, вони відображають, скільки розробників вважають проект корисним, стежать за його розвитком і, ймовірно, впровадять його. Для оцінки цінності проекту зірки допомагають порівняти інтерес до альтернатив і дають уявлення про зростання екосистеми.
|
|
130
|
+
|
|
131
|
+
[](https://www.star-history.com/#formatjs/formatjs&i18next/react-i18next&lingui/js-lingui&amannn/next-intl&opral/paraglide-js&tolgee/tolgee-js&aymericzip/intlayer)
|
|
132
|
+
|
|
124
133
|
## Детальні результати
|
|
125
134
|
|
|
126
|
-
### 1
|
|
135
|
+
### 1 - Рішення, яких слід уникати
|
|
127
136
|
|
|
128
137
|
Деяких рішень, таких як `gt-react` або `lingo.dev`, явно варто триматися подалі. Вони поєднують прив'язку до вендора із засміченням вашої кодової бази. Гірше того: попри багато годин спроб їх впровадження, я так і не зміг забезпечити їх коректну роботу на TanStack Start (аналогічно до `gt-next` на Next.js).
|
|
129
138
|
|
|
@@ -145,19 +154,19 @@ history:
|
|
|
145
154
|
- Під час збірки він повністю стирав згенеровані JSON-файли при додаванні нового контенту. У результаті лише кілька ключів могли знищити сотні наявних.
|
|
146
155
|
- Я стикнувся з проблемами реактивності бібліотеки в TanStack Start: при зміні локалі довелося примусово перерендерити провайдер, щоб це запрацювало.
|
|
147
156
|
|
|
148
|
-
### 2
|
|
157
|
+
### 2 - Експериментальні рішення
|
|
149
158
|
|
|
150
159
|
**(Wuchale)** (`wuchale@0.22.11`):
|
|
151
160
|
|
|
152
161
|
Ідея `Wuchale` цікава, але поки що не є життєздатним рішенням. Я зіткнувся з проблемами реактивності бібліотеки і був змушений примусово перерендерити провайдер, щоб додаток запрацював на TanStack Start. Документація також досить нечітка, що ускладнює освоєння.
|
|
153
162
|
|
|
154
|
-
### 3
|
|
163
|
+
### 3 - Прийнятні рішення
|
|
155
164
|
|
|
156
165
|
**(Paraglide)** (`@inlang/paraglide-js@2.15.1`):
|
|
157
166
|
|
|
158
167
|
`Paraglide` пропонує інноваційний, добре продуманий підхід. Проте в цьому тесті рекламований компанією tree-shaking не спрацював ні для моєї реалізації на Next.js, ні для TanStack Start. Робочий процес і DX також складніші за інші варіанти. Особисто я не прихильник необхідності регенерувати JS-файли перед кожним пушем, що створює постійний ризик конфліктів під час злиття для розробників через PR.
|
|
159
168
|
|
|
160
|
-
> Примітка щодо paraglide: це рішення впорскує код у вашу кодову базу для імпорту; як наслідок, метрика 'lib size' у звіті бенчмарку становить майже 0. Генерація коду
|
|
169
|
+
> Примітка щодо paraglide: це рішення впорскує код у вашу кодову базу для імпорту; як наслідок, метрика 'lib size' у звіті бенчмарку становить майже 0. Генерація коду - це добре, оскільки використовувана функція включатиме лише необхідну логіку (префікс усюди проти відсутності префікса, куки проти сховища тощо). Для порівняння, Intlayer виконує це фільтрування за допомогою впорскування змінних оточення в збірку, щоб змусити бандлер виконати tree-shake контенту залежно від логіки. Завдяки цьому paraglide та intlayer врешті-решт стають у 6–10 разів легшими рішеннями, ніж i18next або next-intl.
|
|
161
170
|
|
|
162
171
|
**(Tolgee)** (`@tolgee/react@7.0.0`):
|
|
163
172
|
|
|
@@ -167,17 +176,17 @@ history:
|
|
|
167
176
|
|
|
168
177
|
**(use-intl)** (`use-intl@4.9.1`):
|
|
169
178
|
|
|
170
|
-
`use-intl`
|
|
179
|
+
`use-intl` - це зараз наймодніша частина "intl" в екосистемі React (та ж родина, що й `next-intl`), яку часто просувають ШІ-агенти, але на мій погляд - помилково в контексті продуктивності. Почати роботу досить просто. На практиці ж процес оптимізації та обмеження витоків є досить складним. Аналогічно, поєднання динамічного завантаження + просторів імен + типів TypeScript сильно сповільнює розробку.
|
|
171
180
|
|
|
172
181
|
У TanStack Start ви уникаєте специфічних пасток Next.js (`setRequestLocale`, статичний рендеринг), але основна проблема та ж сама: без суворої дисципліни бандл швидко перевантажується повідомленнями, а підтримка просторів імен для кожного маршруту стає виснажливою.
|
|
173
182
|
|
|
174
183
|
**(react-i18next)** (`react-i18next@17.0.2`):
|
|
175
184
|
|
|
176
|
-
`react-i18next`
|
|
185
|
+
`react-i18next` - це, мабуть, найпопулярніший варіант, оскільки він був одним із перших, хто задовольнив потреби i18n у JS-додатках. Він також має великий набір плагінів від спільноти для конкретних проблем.
|
|
177
186
|
|
|
178
187
|
Проте він має ті ж недоліки, що й стеки на базі `t('a.b.c')`: оптимізація можлива, але забирає багато часу, а великі проекти ризикують скотитися до поганих практик (простори імен + динамічне завантаження + типи).
|
|
179
188
|
|
|
180
|
-
Формати повідомлень також відрізняються: `use-intl` використовує ICU MessageFormat, тоді як `i18next` має власний формат
|
|
189
|
+
Формати повідомлень також відрізняються: `use-intl` використовує ICU MessageFormat, тоді як `i18next` має власний формат - це ускладнює інструментарій або міграцію, якщо ви їх змішуєте.
|
|
181
190
|
|
|
182
191
|
**(Lingui)** (`@lingui/core@5.3.0`):
|
|
183
192
|
|
|
@@ -185,9 +194,9 @@ history:
|
|
|
185
194
|
|
|
186
195
|
**(react-intl)** (`react-intl@10.1.1`):
|
|
187
196
|
|
|
188
|
-
`react-intl`
|
|
197
|
+
`react-intl` - це продуктивна реалізація від команди Format.js. DX залишається багатослівним: `const intl = useIntl()` + `intl.formatMessage({ id: "xx.xx" })` додає складності, додаткової роботи JavaScript та прив'язує глобальний екземпляр i18n до багатьох вузлів у React-дереві.
|
|
189
198
|
|
|
190
|
-
### 4
|
|
199
|
+
### 4 - Рекомендації
|
|
191
200
|
|
|
192
201
|
Цей бенчмарк TanStack Start не має прямого еквівалента `next-translate` (Next.js плагін + `getStaticProps`). Командам, які справді хочуть API у стилі `t()` зі зрілою екосистемою, `react-i18next` та `use-intl` залишаються "розумним" вибором, але будьте готові витратити багато часу на оптимізацію для уникнення витоків.
|
|
193
202
|
|
package/docs/uk/benchmark/vue.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-20
|
|
3
|
-
updatedAt: 2026-
|
|
4
|
-
title: Найкраще i18n рішення для Vue у 2026 році
|
|
3
|
+
updatedAt: 2026-05-18
|
|
4
|
+
title: Найкраще i18n рішення для Vue у 2026 році - Звіт про бенчмарк
|
|
5
5
|
description: Порівняйте бібліотеки інтернаціоналізації (i18n) для Vue, такі як vue-i18n, fluent-vue та Intlayer. Детальний звіт про продуктивність щодо розміру бандла, витоків та реактивності.
|
|
6
6
|
keywords:
|
|
7
7
|
- benchmark
|
|
@@ -17,12 +17,15 @@ slugs:
|
|
|
17
17
|
author: Aymeric PINEAU
|
|
18
18
|
applicationTemplate: https://github.com/intlayer-org/benchmark-i18n-vue-template
|
|
19
19
|
history:
|
|
20
|
+
- version: 8.9.8
|
|
21
|
+
date: 2026-05-18
|
|
22
|
+
changes: "Додати порівняння зірок GitHub"
|
|
20
23
|
- version: 8.7.12
|
|
21
24
|
date: 2026-01-06
|
|
22
25
|
changes: "Ініціалізація бенчмарку"
|
|
23
26
|
---
|
|
24
27
|
|
|
25
|
-
# Бібліотеки i18n для Vue
|
|
28
|
+
# Бібліотеки i18n для Vue - Звіт про бенчмарк 2026
|
|
26
29
|
|
|
27
30
|
Ця сторінка є звітом про бенчмарк рішень i18n на Vue.
|
|
28
31
|
|
|
@@ -97,7 +100,7 @@ style="border:none;"
|
|
|
97
100
|
- `vue-i18n` (v11.4.0)
|
|
98
101
|
- `fluent-vue` (v3.8.2)
|
|
99
102
|
|
|
100
|
-
Фреймворк
|
|
103
|
+
Фреймворк - `Vue` з багатомовним додатком із **10 сторінок** і **10 мов**.
|
|
101
104
|
|
|
102
105
|
Ми порівняли **чотири стратегії завантаження**:
|
|
103
106
|
|
|
@@ -117,17 +120,17 @@ style="border:none;"
|
|
|
117
120
|
|
|
118
121
|
Я запустив той самий багатомовний додаток у реальному браузері для кожного стека, а потім записав, що насправді пройшло мережею і скільки часу це зайняло. Розміри вказані **після звичайного веб-стиснення**, оскільки це ближче до того, що люди насправді завантажують, ніж необроблена кількість рядків вихідного коду.
|
|
119
122
|
|
|
120
|
-
- **Розмір бібліотеки інтернаціоналізації**: Після бандлінгу, tree-shaking та мініфікації розмір бібліотеки i18n
|
|
123
|
+
- **Розмір бібліотеки інтернаціоналізації**: Після бандлінгу, tree-shaking та мініфікації розмір бібліотеки i18n - це розмір коду провайдерів + composables у порожньому компоненті. Він не включає завантаження файлів перекладу. Це відповідає на питання, наскільки "дорогою" є бібліотека до того, як ваш контент з'явиться в кадрі.
|
|
121
124
|
|
|
122
|
-
- **JavaScript на сторінку**: Для кожного маршруту бенчмарку, скільки скриптів завантажує браузер для цього відвідування, усереднено за сторінками в наборі (і за локалями). Важкі сторінки
|
|
125
|
+
- **JavaScript на сторінку**: Для кожного маршруту бенчмарку, скільки скриптів завантажує браузер для цього відвідування, усереднено за сторінками в наборі (і за локалями). Важкі сторінки - це повільні сторінки.
|
|
123
126
|
|
|
124
127
|
- **Витік з інших локалей (Leakage)**: Це контент тієї ж сторінки, але іншою мовою, який помилково завантажується на сторінці, що перевіряється. Цей контент є непотрібним і його слід уникати (наприклад: контент сторінки `/fr/about` у бандлі сторінки `/en/about`).
|
|
125
128
|
|
|
126
129
|
- **Витік з інших маршрутів**: Та ж ідея для **інших екранів** у додатку: чи додається їхній текст, коли ви відкрили лише одну сторінку (наприклад: контент сторінки `/en/about` у бандлі сторінки `/en/contact`). Високий бал вказує на слабкий поділ або занадто широкі бандли.
|
|
127
130
|
|
|
128
|
-
- **Середній розмір бандла компонента**: Загальні елементи інтерфейсу вимірюються **по одному**, замість того щоб ховатися всередині одного гігантського числа додатка. Це показує, чи інтернаціоналізація непомітно роздуває повсякденні компоненти. Наприклад, якщо ваш компонент перерендерюється, він завантажуватиме всі ці дані з пам'яті. Прикріплення гігантського JSON до будь-якого компонента
|
|
131
|
+
- **Середній розмір бандла компонента**: Загальні елементи інтерфейсу вимірюються **по одному**, замість того щоб ховатися всередині одного гігантського числа додатка. Це показує, чи інтернаціоналізація непомітно роздуває повсякденні компоненти. Наприклад, якщо ваш компонент перерендерюється, він завантажуватиме всі ці дані з пам'яті. Прикріплення гігантського JSON до будь-якого компонента - це як підключення великого сховища невикористовуваних даних, що сповільнить продуктивність ваших компонентів.
|
|
129
132
|
|
|
130
|
-
- **Швидкість реакції на зміну мови**: Я змінюю мову за допомогою власного контролера додатка і вимірюю час, поки сторінка чітко не зміниться
|
|
133
|
+
- **Швидкість реакції на зміну мови**: Я змінюю мову за допомогою власного контролера додатка і вимірюю час, поки сторінка чітко не зміниться - те, що помітить відвідувач.
|
|
131
134
|
|
|
132
135
|
- **Робота рендерингу після зміни мови**: Більш точне спостереження: скільки зусиль доклав інтерфейс для перемальовування для нової мови після початку зміни. Корисно, коли "відчутний" час і витрати фреймворку розходяться.
|
|
133
136
|
|
|
@@ -135,13 +138,19 @@ style="border:none;"
|
|
|
135
138
|
|
|
136
139
|
- **Час гідратації (Hydration)**: Час, який клієнт витрачає на перетворення серверного HTML на інтерактивний інтерфейс. Тире в таблицях означає, що ця реалізація не надала надійного показника гідратації в цьому бенчмарку.
|
|
137
140
|
|
|
141
|
+
## Зірки на GitHub
|
|
142
|
+
|
|
143
|
+
Зірки на GitHub є потужним індикатором популярності проекту, довіри спільноти та довгострокової актуальності. Хоча вони не є прямим показником технічної якості, вони відображають, скільки розробників вважають проект корисним, стежать за його розвитком і, ймовірно, впровадять його. Для оцінки цінності проекту зірки допомагають порівняти інтерес до альтернатив і дають уявлення про зростання екосистеми.
|
|
144
|
+
|
|
145
|
+
[](https://www.star-history.com/#intlify/vue-i18n&fluent-vue/fluent-vue&aymericzip/intlayer)
|
|
146
|
+
|
|
138
147
|
## Результати детально
|
|
139
148
|
|
|
140
|
-
### 1
|
|
149
|
+
### 1 - Рішення, яких слід уникати
|
|
141
150
|
|
|
142
151
|
> В екосистемі Vue немає очевидних рішень, яких слід уникати.
|
|
143
152
|
|
|
144
|
-
### 2
|
|
153
|
+
### 2 - Прийнятні рішення
|
|
145
154
|
|
|
146
155
|
**(vue-i18n)** (`vue-i18n@11.4.0`):
|
|
147
156
|
|
|
@@ -153,7 +162,7 @@ style="border:none;"
|
|
|
153
162
|
|
|
154
163
|
- **fluent-vue** пропонує спробу інновації через формат .ftl. Організація повідомлень чудова, легше почати роботу. Але на практиці відсутність безпеки типів підвищує ризик помилок і налагодження може швидко стати трудомістким. Більше того, це рішення завантажує повідомлення за допомогою плагіна vite, який змушує завантажувати весь контент усіма мовами на кожну сторінку. Крім того, це надзвичайно важке рішення (~92.7kb, що приблизно в 34 рази більше за `vue-intlayer`).
|
|
155
164
|
|
|
156
|
-
### 3
|
|
165
|
+
### 3 - Рекомендації
|
|
157
166
|
|
|
158
167
|
**(Intlayer)** (`vue-intlayer@8.7.12`):
|
|
159
168
|
|
|
@@ -35,7 +35,7 @@ history:
|
|
|
35
35
|
|
|
36
36
|
## Сканування бандла
|
|
37
37
|
|
|
38
|
-
Аналіз бандла
|
|
38
|
+
Аналіз бандла - це перший крок до виявлення "важких" JSON-файлів та можливостей розділення коду. Ці інструменти генерують візуальну деревоподібну карту (treemap) скомпільованого коду вашого застосунку, дозволяючи вам точно побачити, які бібліотеки займають найбільше місця.
|
|
39
39
|
|
|
40
40
|
<Tabs>
|
|
41
41
|
<Tab value="vite">
|
package/docs/uk/cli/index.md
CHANGED
|
@@ -121,51 +121,51 @@ Intlayer приймає кілька форматів файлів конфіг
|
|
|
121
121
|
|
|
122
122
|
### Автентифікація
|
|
123
123
|
|
|
124
|
-
- **[Login](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/login.md)**
|
|
124
|
+
- **[Login](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/login.md)** - Автентифікація в Intlayer CMS та отримання облікових даних доступу
|
|
125
125
|
|
|
126
126
|
### Основні команди
|
|
127
127
|
|
|
128
|
-
- **[Build Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/build.md)**
|
|
129
|
-
- **[Watch Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/watch.md)**
|
|
130
|
-
- **[Create Standalone Bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/standalone.md)**
|
|
131
|
-
- **[Check CLI Version](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/version.md)**
|
|
132
|
-
- **[List Projects](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/list_projects.md)**
|
|
128
|
+
- **[Build Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/build.md)** - Створення словників з ваших файлів оголошення контенту
|
|
129
|
+
- **[Watch Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/watch.md)** - Відстеження змін та автоматична перезбірка словників
|
|
130
|
+
- **[Create Standalone Bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/standalone.md)** - Створення автономної JavaScript-збірки, що містить Intlayer та вказані пакети
|
|
131
|
+
- **[Check CLI Version](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/version.md)** - Перевірка встановленої версії Intlayer CLI
|
|
132
|
+
- **[List Projects](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/list_projects.md)** - Перегляд списку всіх проєктів Intlayer у директорії або git-репозиторії
|
|
133
133
|
|
|
134
134
|
### Керування словниками
|
|
135
135
|
|
|
136
|
-
- **[Push Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/push.md)**
|
|
137
|
-
- **[Pull Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/pull.md)**
|
|
138
|
-
- **[Fill Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/fill.md)**
|
|
139
|
-
- **[Test Missing Translations](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/test.md)**
|
|
140
|
-
- **[List Content Declaration Files](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/list.md)**
|
|
136
|
+
- **[Push Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/push.md)** - Відправка словників у Редактор Intlayer та CMS
|
|
137
|
+
- **[Pull Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/pull.md)** - Завантаження словників з Редактора Intlayer та CMS
|
|
138
|
+
- **[Fill Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/fill.md)** - Заповнення, аудит та переклад словників за допомогою AI
|
|
139
|
+
- **[Test Missing Translations](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/test.md)** - Тестування та виявлення відсутніх перекладів
|
|
140
|
+
- **[List Content Declaration Files](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/list.md)** - Вивід списку всіх файлів оголошення контенту у вашому проєкті
|
|
141
141
|
|
|
142
142
|
### Керування компонентами
|
|
143
143
|
|
|
144
|
-
- **[Extract Strings](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/extract.md)**
|
|
144
|
+
- **[Extract Strings](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/extract.md)** - Вилучення рядків з компонентів у файл .content поруч із компонентом
|
|
145
145
|
|
|
146
146
|
### Конфігурація
|
|
147
147
|
|
|
148
|
-
- **[Initialize Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/init.md)**
|
|
149
|
-
- **[Manage Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/configuration.md)**
|
|
148
|
+
- **[Initialize Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/init.md)** - Налаштування Intlayer у вашому проєкті з автоматичною конфігурацією
|
|
149
|
+
- **[Manage Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/configuration.md)** - Отримання вашої конфігурації Intlayer та її відправка в CMS
|
|
150
150
|
|
|
151
151
|
### Керування документацією
|
|
152
152
|
|
|
153
|
-
- **[Translate Document](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/doc-translate.md)**
|
|
154
|
-
- **[Review Document](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/doc-review.md)**
|
|
153
|
+
- **[Translate Document](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/doc-translate.md)** - Автоматичний переклад файлів документації за допомогою AI
|
|
154
|
+
- **[Review Document](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/doc-review.md)** - Рецензування файлів документації на предмет якості та послідовності
|
|
155
155
|
|
|
156
156
|
### Редактор та Live Sync
|
|
157
157
|
|
|
158
|
-
- **[Editor Commands](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/editor.md)**
|
|
159
|
-
- **[Live Sync Commands](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/live.md)**
|
|
158
|
+
- **[Editor Commands](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/editor.md)** - Використання команд Редактора Intlayer
|
|
159
|
+
- **[Live Sync Commands](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/live.md)** - Використання Live Sync для застосування змін контенту з CMS у реальному часі
|
|
160
160
|
|
|
161
161
|
### CI/CD та автоматизація
|
|
162
162
|
|
|
163
|
-
- **[CI Command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/ci.md)**
|
|
163
|
+
- **[CI Command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/ci.md)** - Виконання команд Intlayer з автоматично підставленими обліковими даними для CI/CD-пайплайнів
|
|
164
164
|
|
|
165
165
|
### Інструменти розробки
|
|
166
166
|
|
|
167
|
-
- **[CLI SDK](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/sdk.md)**
|
|
168
|
-
- **[Debug Intlayer Command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/debug.md)**
|
|
167
|
+
- **[CLI SDK](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/sdk.md)** - Використання Intlayer CLI SDK у вашому власному коді
|
|
168
|
+
- **[Debug Intlayer Command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/debug.md)** - Налагодження та вирішення проблем з Intlayer CLI
|
|
169
169
|
|
|
170
170
|
## Використовуйте команди Intlayer у вашому файлі `package.json`
|
|
171
171
|
|
package/docs/uk/cli/init.md
CHANGED
|
@@ -48,19 +48,19 @@ bun x intlayer init
|
|
|
48
48
|
|
|
49
49
|
## Аргументи (Arguments):
|
|
50
50
|
|
|
51
|
-
- `--project-root [projectRoot]`
|
|
52
|
-
- `--no-gitignore`
|
|
51
|
+
- `--project-root [projectRoot]` - Опціонально. Вкажіть кореневу директорію проєкту. Якщо не вказано, команда шукатиме корінь проєкту, починаючи з поточної робочої директорії.
|
|
52
|
+
- `--no-gitignore` - Опціонально. Пропускає автоматичне оновлення файлу `.gitignore`. Якщо цей прапорець встановлено, `.intlayer` не буде додано до `.gitignore`.
|
|
53
53
|
|
|
54
54
|
## Що вона робить:
|
|
55
55
|
|
|
56
56
|
Команда `init` виконує наступні завдання з налаштування:
|
|
57
57
|
|
|
58
|
-
1. **Перевірка структури проєкту**
|
|
59
|
-
2. **Оновлення `.gitignore`**
|
|
60
|
-
3. **Конфігурація TypeScript**
|
|
61
|
-
4. **Створення файлу конфігурації**
|
|
62
|
-
5. **Оновлення конфігурації Vite**
|
|
63
|
-
6. **Оновлення конфігурації Next.js**
|
|
58
|
+
1. **Перевірка структури проєкту** - Переконується, що ви перебуваєте в коректній директорії проєкту з файлом `package.json`.
|
|
59
|
+
2. **Оновлення `.gitignore`** - Додає `.intlayer` до вашого файлу `.gitignore`, щоб виключити згенеровані файли з системи контролю версій (можна пропустити за допомогою `--no-gitignore`).
|
|
60
|
+
3. **Конфігурація TypeScript** - Оновлює будь-які файли `tsconfig.json`, щоб включити визначення типів Intlayer (`.intlayer/**/*.ts`).
|
|
61
|
+
4. **Створення файлу конфігурації** - Генерує `intlayer.config.ts` (для проєктів на TypeScript) або `intlayer.config.mjs` (для проєктів на JavaScript) з налаштуваннями за замовчуванням.
|
|
62
|
+
5. **Оновлення конфігурації Vite** - Якщо виявлено файл конфігурації Vite, додає імпорт для плагіна `vite-intlayer`.
|
|
63
|
+
6. **Оновлення конфігурації Next.js** - Якщо виявлено файл конфігурації Next.js, додає імпорт для плагіна `next-intlayer`.
|
|
64
64
|
|
|
65
65
|
## Приклади:
|
|
66
66
|
|
|
@@ -138,7 +138,7 @@ Checking Intlayer configuration...
|
|
|
138
138
|
|
|
139
139
|
## Примітки:
|
|
140
140
|
|
|
141
|
-
- Команда є ідемпотентною
|
|
141
|
+
- Команда є ідемпотентною - ви можете безпечно запускати її кілька разів. Вже налаштовані кроки будуть пропущені.
|
|
142
142
|
- Якщо файл конфігурації вже існує, він не буде перезаписаний.
|
|
143
143
|
- Конфігурації TypeScript без масиву `include` (наприклад, конфігурації у стилі solution з посиланнями) пропускаються.
|
|
144
144
|
- Команда зупиниться з помилкою, якщо в корені проєкту не буде знайдено `package.json`.
|
|
@@ -47,20 +47,20 @@ bun x intlayer standalone --packages [пакети...] [опції]
|
|
|
47
47
|
|
|
48
48
|
## Опції
|
|
49
49
|
|
|
50
|
-
- `-o, --outfile [outfile]`
|
|
51
|
-
- `--packages [пакети...]`
|
|
52
|
-
- `--version [version]`
|
|
53
|
-
- `--minify`
|
|
54
|
-
- `--platform [platform]`
|
|
55
|
-
- `--format [format]`
|
|
50
|
+
- `-o, --outfile [outfile]` - Опціонально. Ім'я вихідного файлу. За замовчуванням: `intlayer-bundle.js`.
|
|
51
|
+
- `--packages [пакети...]` - Обов'язково. Список пакетів для включення у збірку (наприклад, `intlayer`, `vanilla-intlayer`).
|
|
52
|
+
- `--version [version]` - Опціонально. Версія пакетів для збірки. Якщо не вказано, за замовчуванням використовується версія Intlayer CLI.
|
|
53
|
+
- `--minify` - Опціонально. Чи потрібно мініфікувати вихідні дані. За замовчуванням: `true`.
|
|
54
|
+
- `--platform [platform]` - Опціонально. Цільова платформа для збірки (наприклад, `browser`, `node`). За замовчуванням: `browser`.
|
|
55
|
+
- `--format [format]` - Опціонально. Формат вихідних даних збірки (наприклад, `esm`, `cjs`, `iife`). За замовчуванням: `esm`.
|
|
56
56
|
|
|
57
57
|
## Загальні опції
|
|
58
58
|
|
|
59
|
-
- `--env-file [envFile]`
|
|
60
|
-
- `-e, --env [env]`
|
|
61
|
-
- `--base-dir [baseDir]`
|
|
62
|
-
- `--no-cache`
|
|
63
|
-
- `--verbose`
|
|
59
|
+
- `--env-file [envFile]` - Файл середовища.
|
|
60
|
+
- `-e, --env [env]` - Середовище.
|
|
61
|
+
- `--base-dir [baseDir]` - Базова директорія.
|
|
62
|
+
- `--no-cache` - Вимкнути кеш.
|
|
63
|
+
- `--verbose` - Детальний вивід.
|
|
64
64
|
|
|
65
65
|
## Приклади:
|
|
66
66
|
|
|
@@ -122,11 +122,11 @@ bun x intlayer standalone --packages intlayer --format iife
|
|
|
122
122
|
|
|
123
123
|
## Що вона робить:
|
|
124
124
|
|
|
125
|
-
1. **Створює тимчасове середовище**
|
|
126
|
-
2. **Встановлює пакети**
|
|
127
|
-
3. **Генерує точку входу**
|
|
128
|
-
4. **Збирає за допомогою esbuild**
|
|
129
|
-
5. **Генерує файл**
|
|
125
|
+
1. **Створює тимчасове середовище** - Налаштовує тимчасову директорію для керування залежностями.
|
|
126
|
+
2. **Встановлює пакети** - Використовує `npm` або `bun` (якщо є), щоб встановити запитані пакети та їхні залежності.
|
|
127
|
+
3. **Генерує точку входу** - Створює тимчасовий файл точки входу, який експортує всі запитані пакети та робить їх доступними як глобальні змінні при запуску в браузері.
|
|
128
|
+
4. **Збирає за допомогою esbuild** - Використовує esbuild для об'єднання всього в один файл, застосовує мініфікацію та форматування згідно із запитом.
|
|
129
|
+
5. **Генерує файл** - Записує результуючу збірку за вказаним вихідним шляхом.
|
|
130
130
|
|
|
131
131
|
## Глобальні змінні
|
|
132
132
|
|
package/docs/uk/compiler.md
CHANGED
|
@@ -35,7 +35,7 @@ history:
|
|
|
35
35
|
|
|
36
36
|
## Що таке Intlayer Compiler?
|
|
37
37
|
|
|
38
|
-
**Intlayer Compiler**
|
|
38
|
+
**Intlayer Compiler** - це потужний інструмент, розроблений для автоматизації процесу інтернаціоналізації (i18n) у ваших додатках. Він сканує ваш вихідний код (JSX, TSX, Vue, Svelte) на наявність декларацій контенту, витягує їх і автоматично генерує необхідні файли словників. Це дозволяє зберігати контент поруч із компонентами, тоді як Intlayer займається керуванням та синхронізацією ваших словників.
|
|
39
39
|
|
|
40
40
|
## Чому використовувати Intlayer Compiler?
|
|
41
41
|
|
|
@@ -50,7 +50,7 @@ history:
|
|
|
50
50
|
|
|
51
51
|
Хоча компілятор пропонує чудовий досвід «just works», він також вносить певні компроміси, про які варто знати:
|
|
52
52
|
|
|
53
|
-
- **Евристична неоднозначність**: Компілятор має вгадувати, що є контентом для користувача, а що
|
|
53
|
+
- **Евристична неоднозначність**: Компілятор має вгадувати, що є контентом для користувача, а що - логікою додатка (наприклад, `className="active"`, коди статусів, ID продуктів). У складних кодових базах це може призводити до хибних спрацьовувань або пропущених рядків, що вимагатиме ручних анотацій та винятків.
|
|
54
54
|
- **Тільки статична екстракція**: Екстракція на основі компілятора покладається на статичний аналіз. Рядки, які існують лише під час виконання (коди помилок API, поля CMS тощо), не можуть бути виявлені або перекладені лише компілятором, тому вам усе одно знадобиться додаткова стратегія i18n під час виконання.
|
|
55
55
|
|
|
56
56
|
Для глибшого архітектурного порівняння див. статтю в блозі [Compiler vs. Declarative i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/uk/compiler_vs_declarative_i18n.md).
|
|
@@ -64,7 +64,7 @@ history:
|
|
|
64
64
|
|
|
65
65
|
### Vite
|
|
66
66
|
|
|
67
|
-
Для додатків на базі Vite (React, Vue, Svelte тощо) найпростіший спосіб використовувати компілятор
|
|
67
|
+
Для додатків на базі Vite (React, Vue, Svelte тощо) найпростіший спосіб використовувати компілятор - через плагін `vite-intlayer`.
|
|
68
68
|
|
|
69
69
|
#### Встановлення
|
|
70
70
|
|
package/docs/uk/configuration.md
CHANGED
|
@@ -606,7 +606,7 @@ export default config;
|
|
|
606
606
|
| ----------------- | --------------------------------------------------------------------------------------------- | ---------- | ------------------- | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
607
607
|
| `locales` | Список підтримуваних локалей у додатку. | `string[]` | `[Locales.ENGLISH]` | `['en', 'fr', 'es']` | |
|
|
608
608
|
| `requiredLocales` | Список обов'язкових локалей у додатку. | `string[]` | `[]` | `[]` | • Якщо порожній, усі локалі обов'язкові в режимі `strict`.<br/>• Переконайтеся, що обов'язкові локалі також визначені в полі `locales`. |
|
|
609
|
-
| `strictMode` | Забезпечує суворе впровадження інтернаціоналізованого контенту за допомогою TypeScript. | `string` | `'inclusive'` | | • Якщо `"strict"`: Обов'язкове визначення кожної оголошеної локалі для функції `t`
|
|
609
|
+
| `strictMode` | Забезпечує суворе впровадження інтернаціоналізованого контенту за допомогою TypeScript. | `string` | `'inclusive'` | | • Якщо `"strict"`: Обов'язкове визначення кожної оголошеної локалі для функції `t` - помилка в разі відсутності або неоголошеної локалі.<br/>• Якщо `"inclusive"`: Попередження для відсутніх локалей, але дозволяє використання існуючих неоголошених локалей.<br/>• Якщо `"loose"`: Приймає будь-яку існуючу локаль. |
|
|
610
610
|
| `defaultLocale` | Локаль за замовчуванням, яка використовується як резервна, якщо запитувана локаль недоступна. | `string` | `Locales.ENGLISH` | `'en'` | Використовується для визначення локалі, якщо її не вказано в URL, файлах cookie або заголовку. |
|
|
611
611
|
|
|
612
612
|
---
|
|
@@ -640,9 +640,9 @@ export default config;
|
|
|
640
640
|
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
641
641
|
| `mode` | Режим структури URL для керування локаллю. | `'prefix-no-default'` | <br/> `'prefix-all'` | <br/> `'no-prefix'` | <br/> `'search-params'` | `'prefix-no-default'` | `'prefix-no-default'`: `/dashboard` (en) або `/fr/dashboard` (fr). `'prefix-all'`: `/en/dashboard` . `'no-prefix'`: локаль керується іншим способом. `'search-params'`: `/dashboard?locale=fr` | Не впливає на керування файлами cookie або локальне сховище. |
|
|
642
642
|
| `storage` | Конфігурація для зберігання локалі на клієнті. | `false` | <br/> `'cookie'` | <br/> `'localStorage'` | <br/> `'sessionStorage'` | <br/> `'header'` | <br/> `CookiesAttributes` | <br/> `StorageAttributes` | <br/> `Array` | `['cookie', 'header']` | `'localStorage'` <br/> `[{ type: 'cookie', name: 'custom-locale', secure: true }]` | Див. таблицю параметрів зберігання нижче. |
|
|
643
|
-
| `basePath` | Базовий шлях для URL додатка. | `string` | `''` | `'/my-app'` | Якщо ваш додаток знаходиться за адресою `https://example.com/my-app`, basePath
|
|
643
|
+
| `basePath` | Базовий шлях для URL додатка. | `string` | `''` | `'/my-app'` | Якщо ваш додаток знаходиться за адресою `https://example.com/my-app`, basePath - `'/my-app'`, що вказує на URL `https://example.com/my-app/en` . |
|
|
644
644
|
| `rewrite` | Власні правила перенаправлення URL для зміни стандартного режиму маршрутизації для певних шляхів. Підтримує динамічні параметри `[param]`. | `Record<string, StrictModeLocaleMap<string>>` | `undefined` | Див. приклад нижче | • Правила перенаправлення мають вищий пріоритет, ніж `mode`.<br/>• Працює з Next.js та Vite.<br/>• `getLocalizedUrl()` автоматично застосовує відповідні правила.<br/>• Див. [Власні перенаправлення URL](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/custom_url_rewrites.md). |
|
|
645
|
-
| `domains` | Відображає локалі на імена хостів доменів для маршрутизації на основі доменів. Якщо встановлено, URL для цієї локалі використовують цей домен як базу (абсолютний URL), і префікс локалі не додається до шляху. | `Partial<Record<Locale, string>>` | `undefined` | `{ zh: 'intlayer.zh', fr: 'intlayer.org' }` | • Протокол за замовчуванням
|
|
645
|
+
| `domains` | Відображає локалі на імена хостів доменів для маршрутизації на основі доменів. Якщо встановлено, URL для цієї локалі використовують цей домен як базу (абсолютний URL), і префікс локалі не додається до шляху. | `Partial<Record<Locale, string>>` | `undefined` | `{ zh: 'intlayer.zh', fr: 'intlayer.org' }` | • Протокол за замовчуванням - `https://`, якщо він не вказаний у імені хоста.<br/>• Сам домен ідентифікує локаль, тому префікс `/zh/` не додається.<br/>• `getLocalizedUrl('/', 'zh')` повертає `https://intlayer.zh/`. |
|
|
646
646
|
|
|
647
647
|
**Приклад `rewrite`**:
|
|
648
648
|
|
|
@@ -670,10 +670,10 @@ routing: {
|
|
|
670
670
|
|
|
671
671
|
| Значення | Примітки | Опис |
|
|
672
672
|
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
|
|
673
|
-
| `'cookie'` | • Забезпечте належну згоду користувача відповідно до GDPR.<br/>• Можна налаштувати через `CookiesAttributes` (`{ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }`). | Зберігає локаль у файлі cookie
|
|
674
|
-
| `'localStorage'` | • Термін дії не закінчується, поки не буде видалено явно.<br/>• Intlayer Proxy не має доступу до нього.<br/>• Можна налаштувати через `StorageAttributes` (`{ type: 'localStorage', name: 'custom-locale' }`). | Зберігає локаль у браузері без терміну дії
|
|
675
|
-
| `'sessionStorage'` | • Видаляється при закритті вкладки/вікна браузера.<br/>• Intlayer Proxy не має доступу до нього.<br/>• Можна налаштувати через `StorageAttributes` (`{ type: 'sessionStorage', name: 'custom-locale' }`). | Зберігає локаль на час сесії сторінки
|
|
676
|
-
| `'header'` | • Корисно для викликів API.<br/>• Клієнтська частина не має доступу до нього.<br/>• Можна налаштувати через `StorageAttributes` (`{ type: 'header', name: 'custom-locale' }`). | Зберігає або передає локаль через HTTP-заголовки
|
|
673
|
+
| `'cookie'` | • Забезпечте належну згоду користувача відповідно до GDPR.<br/>• Можна налаштувати через `CookiesAttributes` (`{ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }`). | Зберігає локаль у файлі cookie - доступно і на клієнті, і на сервері. |
|
|
674
|
+
| `'localStorage'` | • Термін дії не закінчується, поки не буде видалено явно.<br/>• Intlayer Proxy не має доступу до нього.<br/>• Можна налаштувати через `StorageAttributes` (`{ type: 'localStorage', name: 'custom-locale' }`). | Зберігає локаль у браузері без терміну дії - лише клієнтська частина. |
|
|
675
|
+
| `'sessionStorage'` | • Видаляється при закритті вкладки/вікна браузера.<br/>• Intlayer Proxy не має доступу до нього.<br/>• Можна налаштувати через `StorageAttributes` (`{ type: 'sessionStorage', name: 'custom-locale' }`). | Зберігає локаль на час сесії сторінки - лише клієнтська частина. |
|
|
676
|
+
| `'header'` | • Корисно для викликів API.<br/>• Клієнтська частина не має доступу до нього.<br/>• Можна налаштувати через `StorageAttributes` (`{ type: 'header', name: 'custom-locale' }`). | Зберігає або передає локаль через HTTP-заголовки - лише серверна частина. |
|
|
677
677
|
|
|
678
678
|
#### Атрибути Cookie (Cookies Attributes)
|
|
679
679
|
|
|
@@ -861,7 +861,7 @@ export default config;
|
|
|
861
861
|
| `location` | Вказує на місце зберігання файлів словників та спосіб їх синхронізації з CMS. | `'local'` | <br/> `'remote'` | <br/> `'hybrid'` | <br/> `'plugin'` | <br/> `string` | `'local'` | `'hybrid'` | • `'local'`: Тільки локальне керування.<br/>• `'remote'`: Тільки віддалене керування (CMS).<br/>• `'hybrid'`: І локальне, і віддалене керування.<br/>• `'plugin'` або власні рядки: Керування через плагін або власне джерело. |
|
|
862
862
|
| `importMode` | Керує способом імпорту словників. | `'static'` | <br/> `'dynamic'` | <br/> `'fetch'` | `'static'` | `'dynamic'` | • `'static'`: Статичний імпорт.<br/>• `'dynamic'`: Динамічний імпорт через Suspense.<br/>• `'fetch'`: Отримання через Live Sync API; резервний варіант `'dynamic'` у разі помилки.<br/>• Потрібні плагіни `@intlayer/babel` та `@intlayer/swc`.<br/>• Ключі мають бути оголошені статично.<br/>• Ігнорується, якщо `optimize` вимкнено.<br/>• Не впливає на `getIntlayer`, `getDictionary` тощо. |
|
|
863
863
|
| `priority` | Пріоритет словника. При вирішенні конфліктів між словниками вище значення має перевагу перед нижчим. | `number` | `undefined` | `1` | |
|
|
864
|
-
| `live` | ЗАСТАРІЛО
|
|
864
|
+
| `live` | ЗАСТАРІЛО - використовуйте `importMode: 'fetch'`. Раніше вказувало, чи слід отримувати контент словника динамічно через Live Sync API. | `boolean` | `undefined` | | Перейменовано на `importMode: 'fetch'` у v8.0.0. |
|
|
865
865
|
| `schema` | Генерується автоматично Intlayer для валідації JSON-схеми. | `'https://intlayer.org/schema.json'` | Генерується | | Не редагуйте вручну. |
|
|
866
866
|
| `title` | Допомагає ідентифікувати словники в редакторі та CMS. | `string` | `undefined` | `'User Profile'` | |
|
|
867
867
|
| `tags` | Класифікує словники та надає контекст або інструкції для редактора та AI. | `string[]` | `undefined` | `['user', 'profile']` | |
|