@intlayer/docs 8.7.12 → 8.7.13
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 +27 -1
- package/blog/ar/intlayer_with_i18next.md +1 -1
- package/blog/ar/intlayer_with_next-i18next.md +1 -1
- package/blog/ar/intlayer_with_next-intl.md +1 -1
- package/blog/ar/intlayer_with_react-i18next.md +1 -1
- package/blog/ar/intlayer_with_react-intl.md +1 -1
- package/blog/ar/intlayer_with_vue-i18n.md +1 -1
- package/blog/de/intlayer_with_i18next.md +1 -1
- package/blog/de/intlayer_with_next-i18next.md +1 -1
- package/blog/de/intlayer_with_next-intl.md +1 -1
- package/blog/de/intlayer_with_react-i18next.md +1 -1
- package/blog/de/intlayer_with_react-intl.md +1 -1
- package/blog/de/intlayer_with_vue-i18n.md +1 -1
- package/blog/en/intlayer_with_i18next.md +1 -1
- package/blog/en/intlayer_with_next-i18next.md +1 -1
- package/blog/en/intlayer_with_next-intl.md +1 -1
- package/blog/en/intlayer_with_react-i18next.md +1 -1
- package/blog/en/intlayer_with_react-intl.md +1 -1
- package/blog/en/intlayer_with_vue-i18n.md +1 -1
- package/blog/en-GB/intlayer_with_i18next.md +1 -1
- package/blog/en-GB/intlayer_with_next-i18next.md +1 -1
- package/blog/en-GB/intlayer_with_next-intl.md +1 -1
- package/blog/en-GB/intlayer_with_react-i18next.md +1 -1
- package/blog/en-GB/intlayer_with_react-intl.md +1 -1
- package/blog/en-GB/intlayer_with_vue-i18n.md +1 -1
- package/blog/es/intlayer_with_i18next.md +1 -1
- package/blog/es/intlayer_with_next-i18next.md +1 -1
- package/blog/es/intlayer_with_next-intl.md +1 -1
- package/blog/es/intlayer_with_react-i18next.md +1 -1
- package/blog/es/intlayer_with_react-intl.md +1 -1
- package/blog/es/intlayer_with_vue-i18n.md +1 -1
- package/blog/fr/intlayer_with_i18next.md +1 -1
- package/blog/fr/intlayer_with_next-i18next.md +1 -1
- package/blog/fr/intlayer_with_next-intl.md +1 -1
- package/blog/fr/intlayer_with_react-i18next.md +1 -1
- package/blog/fr/intlayer_with_react-intl.md +1 -1
- package/blog/fr/intlayer_with_vue-i18n.md +1 -1
- package/blog/hi/intlayer_with_i18next.md +1 -1
- package/blog/hi/intlayer_with_next-i18next.md +1 -1
- package/blog/hi/intlayer_with_next-intl.md +1 -1
- package/blog/hi/intlayer_with_react-i18next.md +1 -1
- package/blog/hi/intlayer_with_react-intl.md +1 -1
- package/blog/hi/intlayer_with_vue-i18n.md +1 -1
- package/blog/id/intlayer_with_i18next.md +1 -1
- package/blog/id/intlayer_with_next-i18next.md +1 -1
- package/blog/id/intlayer_with_next-intl.md +1 -1
- package/blog/id/intlayer_with_react-i18next.md +1 -1
- package/blog/id/intlayer_with_react-intl.md +1 -1
- package/blog/id/intlayer_with_vue-i18n.md +1 -1
- package/blog/it/intlayer_with_i18next.md +1 -1
- package/blog/it/intlayer_with_next-i18next.md +1 -1
- package/blog/it/intlayer_with_next-intl.md +1 -1
- package/blog/it/intlayer_with_react-i18next.md +1 -1
- package/blog/it/intlayer_with_react-intl.md +1 -1
- package/blog/it/intlayer_with_vue-i18n.md +1 -1
- package/blog/ja/intlayer_with_i18next.md +1 -1
- package/blog/ja/intlayer_with_next-i18next.md +1 -1
- package/blog/ja/intlayer_with_next-intl.md +1 -1
- package/blog/ja/intlayer_with_react-i18next.md +1 -1
- package/blog/ja/intlayer_with_react-intl.md +1 -1
- package/blog/ja/intlayer_with_vue-i18n.md +1 -1
- package/blog/ko/intlayer_with_i18next.md +1 -1
- package/blog/ko/intlayer_with_next-i18next.md +1 -1
- package/blog/ko/intlayer_with_next-intl.md +1 -1
- package/blog/ko/intlayer_with_react-i18next.md +1 -1
- package/blog/ko/intlayer_with_react-intl.md +1 -1
- package/blog/ko/intlayer_with_vue-i18n.md +1 -1
- package/blog/pl/intlayer_with_i18next.md +1 -1
- package/blog/pl/intlayer_with_next-i18next.md +1 -1
- package/blog/pl/intlayer_with_next-intl.md +1 -1
- package/blog/pl/intlayer_with_react-i18next.md +1 -1
- package/blog/pl/intlayer_with_react-intl.md +1 -1
- package/blog/pl/intlayer_with_vue-i18n.md +1 -1
- package/blog/pt/intlayer_with_i18next.md +1 -1
- package/blog/pt/intlayer_with_next-i18next.md +1 -1
- package/blog/pt/intlayer_with_next-intl.md +1 -1
- package/blog/pt/intlayer_with_react-i18next.md +1 -1
- package/blog/pt/intlayer_with_react-intl.md +1 -1
- package/blog/pt/intlayer_with_vue-i18n.md +1 -1
- package/blog/ru/intlayer_with_i18next.md +1 -1
- package/blog/ru/intlayer_with_next-i18next.md +1 -1
- package/blog/ru/intlayer_with_next-intl.md +1 -1
- package/blog/ru/intlayer_with_react-i18next.md +1 -1
- package/blog/ru/intlayer_with_react-intl.md +1 -1
- package/blog/ru/intlayer_with_vue-i18n.md +1 -1
- package/blog/tr/intlayer_with_i18next.md +1 -1
- package/blog/tr/intlayer_with_next-i18next.md +1 -1
- package/blog/tr/intlayer_with_next-intl.md +1 -1
- package/blog/tr/intlayer_with_react-i18next.md +1 -1
- package/blog/tr/intlayer_with_vue-i18n.md +1 -1
- package/blog/uk/intlayer_with_i18next.md +1 -1
- package/blog/uk/intlayer_with_next-i18next.md +1 -1
- package/blog/uk/intlayer_with_next-intl.md +1 -1
- package/blog/uk/intlayer_with_react-i18next.md +1 -1
- package/blog/uk/intlayer_with_react-intl.md +1 -1
- package/blog/uk/intlayer_with_vue-i18n.md +1 -1
- package/blog/vi/intlayer_with_i18next.md +1 -1
- package/blog/vi/intlayer_with_next-i18next.md +1 -1
- package/blog/vi/intlayer_with_next-intl.md +1 -1
- package/blog/vi/intlayer_with_react-i18next.md +1 -1
- package/blog/vi/intlayer_with_react-intl.md +1 -1
- package/blog/vi/intlayer_with_vue-i18n.md +1 -1
- package/blog/zh/intlayer_with_i18next.md +1 -1
- package/blog/zh/intlayer_with_next-i18next.md +1 -1
- package/blog/zh/intlayer_with_next-intl.md +1 -1
- package/blog/zh/intlayer_with_react-i18next.md +1 -1
- package/blog/zh/intlayer_with_react-intl.md +1 -1
- package/blog/zh/intlayer_with_vue-i18n.md +1 -1
- package/dist/cjs/generated/docs.entry.cjs +60 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +60 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +3 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/benchmark/index.md +8 -2
- package/docs/ar/benchmark/tanstack.md +1 -1
- package/docs/ar/dictionary/content_file.md +1 -1
- package/docs/ar/intlayer_CMS.md +1 -1
- package/docs/ar/intlayer_visual_editor.md +1 -1
- package/docs/ar/intlayer_with_astro_lit.md +1 -0
- package/docs/ar/intlayer_with_astro_preact.md +1 -0
- package/docs/ar/intlayer_with_astro_react.md +1 -0
- package/docs/ar/intlayer_with_astro_solid.md +1 -0
- package/docs/ar/intlayer_with_astro_svelte.md +1 -0
- package/docs/ar/intlayer_with_astro_vue.md +1 -0
- 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_compiler.md +1 -1
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ar/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/ar/intlayer_with_tanstack.md +1 -1
- package/docs/ar/intlayer_with_vite+vue.md +1 -1
- package/docs/ar/plugins/sync-json.md +1 -1
- package/docs/ar/readme.md +27 -1
- package/docs/de/benchmark/index.md +8 -2
- package/docs/de/benchmark/tanstack.md +1 -1
- package/docs/de/dictionary/content_file.md +1 -1
- package/docs/de/intlayer_CMS.md +1 -1
- package/docs/de/intlayer_visual_editor.md +1 -1
- package/docs/de/intlayer_with_astro_lit.md +2 -1
- package/docs/de/intlayer_with_astro_preact.md +2 -1
- package/docs/de/intlayer_with_astro_react.md +2 -1
- package/docs/de/intlayer_with_astro_solid.md +2 -1
- package/docs/de/intlayer_with_astro_svelte.md +2 -1
- package/docs/de/intlayer_with_astro_vanilla.md +1 -1
- package/docs/de/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/de/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/de/intlayer_with_tanstack.md +1 -1
- package/docs/de/intlayer_with_vite+vue.md +1 -1
- package/docs/de/plugins/sync-json.md +1 -1
- package/docs/de/readme.md +27 -1
- package/docs/en/benchmark/___solid.md +12 -0
- package/docs/en/benchmark/___svelte.md +16 -0
- package/docs/en/benchmark/___vue.md +7 -0
- package/docs/en/benchmark/index.md +3 -0
- package/docs/en/benchmark/solid.md +159 -0
- package/docs/en/benchmark/svelte.md +158 -0
- package/docs/en/benchmark/tanstack.md +1 -1
- package/docs/en/benchmark/vue.md +154 -0
- package/docs/en/component_i18n.md +1 -1
- package/docs/en/dictionary/content_file.md +1 -1
- package/docs/en/intlayer_CMS.md +1 -1
- package/docs/en/intlayer_visual_editor.md +1 -1
- package/docs/en/intlayer_with_astro.md +2 -1
- package/docs/en/intlayer_with_astro_lit.md +2 -1
- package/docs/en/intlayer_with_astro_preact.md +2 -1
- package/docs/en/intlayer_with_astro_react.md +2 -1
- package/docs/en/intlayer_with_astro_solid.md +2 -1
- package/docs/en/intlayer_with_astro_svelte.md +2 -1
- package/docs/en/intlayer_with_astro_vanilla.md +2 -1
- package/docs/en/intlayer_with_astro_vue.md +2 -1
- package/docs/en/intlayer_with_nextjs_15.md +1 -1
- package/docs/en/intlayer_with_nextjs_16.md +1 -1
- package/docs/en/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/en/intlayer_with_nuxt.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_tanstack+solid.md +1 -1
- package/docs/en/intlayer_with_tanstack.md +1 -1
- package/docs/en/intlayer_with_vite+vue.md +1 -1
- package/docs/en/plugins/sync-json.md +1 -1
- package/docs/en/readme.md +27 -1
- package/docs/en-GB/benchmark/index.md +8 -2
- package/docs/en-GB/benchmark/tanstack.md +1 -1
- package/docs/en-GB/dictionary/content_file.md +1 -1
- package/docs/en-GB/intlayer_CMS.md +1 -1
- package/docs/en-GB/intlayer_visual_editor.md +1 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +2 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +2 -1
- package/docs/en-GB/intlayer_with_astro_react.md +2 -1
- package/docs/en-GB/intlayer_with_astro_solid.md +2 -1
- package/docs/en-GB/intlayer_with_astro_svelte.md +2 -1
- package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/en-GB/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/en-GB/intlayer_with_tanstack.md +1 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +1 -1
- package/docs/en-GB/plugins/sync-json.md +1 -1
- package/docs/en-GB/readme.md +27 -1
- package/docs/es/benchmark/index.md +8 -2
- package/docs/es/benchmark/tanstack.md +1 -1
- package/docs/es/component_i18n.md +1 -1
- package/docs/es/dictionary/content_file.md +1 -1
- package/docs/es/intlayer_CMS.md +1 -1
- package/docs/es/intlayer_visual_editor.md +1 -1
- package/docs/es/intlayer_with_astro_lit.md +2 -1
- package/docs/es/intlayer_with_astro_preact.md +2 -1
- package/docs/es/intlayer_with_astro_react.md +2 -1
- package/docs/es/intlayer_with_astro_solid.md +2 -1
- package/docs/es/intlayer_with_astro_svelte.md +2 -1
- package/docs/es/intlayer_with_astro_vanilla.md +1 -1
- package/docs/es/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/es/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/es/intlayer_with_tanstack.md +1 -1
- package/docs/es/intlayer_with_vite+vue.md +1 -1
- package/docs/es/plugins/sync-json.md +1 -1
- package/docs/es/readme.md +27 -1
- package/docs/fr/benchmark/index.md +8 -2
- package/docs/fr/benchmark/tanstack.md +1 -1
- package/docs/fr/dictionary/content_file.md +1 -1
- package/docs/fr/intlayer_CMS.md +1 -1
- package/docs/fr/intlayer_visual_editor.md +1 -1
- package/docs/fr/intlayer_with_astro_lit.md +2 -1
- package/docs/fr/intlayer_with_astro_preact.md +2 -1
- package/docs/fr/intlayer_with_astro_react.md +2 -1
- package/docs/fr/intlayer_with_astro_solid.md +2 -1
- package/docs/fr/intlayer_with_astro_svelte.md +2 -1
- package/docs/fr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/fr/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/fr/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/fr/intlayer_with_tanstack.md +1 -1
- package/docs/fr/intlayer_with_vite+vue.md +1 -1
- package/docs/fr/plugins/sync-json.md +1 -1
- package/docs/fr/readme.md +27 -1
- package/docs/hi/benchmark/index.md +5 -2
- package/docs/hi/benchmark/tanstack.md +1 -1
- package/docs/hi/dictionary/content_file.md +1 -1
- package/docs/hi/intlayer_CMS.md +1 -1
- package/docs/hi/intlayer_visual_editor.md +1 -1
- package/docs/hi/intlayer_with_astro_lit.md +2 -1
- package/docs/hi/intlayer_with_astro_preact.md +2 -1
- package/docs/hi/intlayer_with_astro_react.md +2 -1
- package/docs/hi/intlayer_with_astro_solid.md +2 -1
- package/docs/hi/intlayer_with_astro_svelte.md +2 -1
- package/docs/hi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/hi/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/hi/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/hi/intlayer_with_tanstack.md +1 -1
- package/docs/hi/intlayer_with_vite+vue.md +1 -1
- package/docs/hi/plugins/sync-json.md +1 -1
- package/docs/hi/readme.md +27 -1
- package/docs/id/benchmark/index.md +8 -2
- package/docs/id/benchmark/tanstack.md +1 -1
- package/docs/id/dictionary/content_file.md +1 -1
- package/docs/id/intlayer_CMS.md +1 -1
- package/docs/id/intlayer_visual_editor.md +1 -1
- package/docs/id/intlayer_with_astro_lit.md +2 -1
- package/docs/id/intlayer_with_astro_preact.md +2 -1
- package/docs/id/intlayer_with_astro_react.md +2 -1
- package/docs/id/intlayer_with_astro_solid.md +2 -1
- package/docs/id/intlayer_with_astro_svelte.md +2 -1
- package/docs/id/intlayer_with_astro_vanilla.md +1 -1
- package/docs/id/intlayer_with_astro_vue.md +2 -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_compiler.md +1 -1
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/id/intlayer_with_nuxt.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_tanstack+solid.md +1 -1
- package/docs/id/intlayer_with_tanstack.md +1 -1
- package/docs/id/intlayer_with_vite+vue.md +1 -1
- package/docs/id/plugins/sync-json.md +1 -1
- package/docs/id/readme.md +27 -1
- package/docs/it/benchmark/index.md +8 -2
- package/docs/it/benchmark/tanstack.md +1 -1
- package/docs/it/dictionary/content_file.md +1 -1
- package/docs/it/intlayer_CMS.md +1 -1
- package/docs/it/intlayer_visual_editor.md +1 -1
- package/docs/it/intlayer_with_astro_lit.md +2 -1
- package/docs/it/intlayer_with_astro_preact.md +2 -1
- package/docs/it/intlayer_with_astro_react.md +2 -1
- package/docs/it/intlayer_with_astro_solid.md +2 -1
- package/docs/it/intlayer_with_astro_svelte.md +2 -1
- package/docs/it/intlayer_with_astro_vanilla.md +1 -1
- package/docs/it/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/it/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/it/intlayer_with_tanstack.md +1 -1
- package/docs/it/intlayer_with_vite+vue.md +1 -1
- package/docs/it/plugins/sync-json.md +1 -1
- package/docs/it/readme.md +27 -1
- package/docs/ja/benchmark/index.md +5 -2
- package/docs/ja/benchmark/tanstack.md +1 -1
- package/docs/ja/dictionary/content_file.md +1 -1
- package/docs/ja/intlayer_CMS.md +1 -1
- package/docs/ja/intlayer_visual_editor.md +1 -1
- package/docs/ja/intlayer_with_astro_lit.md +2 -1
- package/docs/ja/intlayer_with_astro_preact.md +2 -1
- package/docs/ja/intlayer_with_astro_react.md +2 -1
- package/docs/ja/intlayer_with_astro_solid.md +2 -1
- package/docs/ja/intlayer_with_astro_svelte.md +2 -1
- package/docs/ja/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ja/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ja/intlayer_with_nuxt.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.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_vite+vue.md +1 -1
- package/docs/ja/plugins/sync-json.md +1 -1
- package/docs/ja/readme.md +27 -1
- package/docs/ko/benchmark/index.md +5 -2
- package/docs/ko/benchmark/tanstack.md +1 -1
- package/docs/ko/dictionary/content_file.md +1 -1
- package/docs/ko/intlayer_CMS.md +1 -1
- package/docs/ko/intlayer_visual_editor.md +1 -1
- package/docs/ko/intlayer_with_astro_lit.md +2 -1
- package/docs/ko/intlayer_with_astro_preact.md +2 -1
- package/docs/ko/intlayer_with_astro_react.md +2 -1
- package/docs/ko/intlayer_with_astro_solid.md +2 -1
- package/docs/ko/intlayer_with_astro_svelte.md +2 -1
- package/docs/ko/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ko/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ko/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/ko/intlayer_with_tanstack.md +1 -1
- package/docs/ko/intlayer_with_vite+vue.md +1 -1
- package/docs/ko/plugins/sync-json.md +1 -1
- package/docs/ko/readme.md +27 -1
- package/docs/pl/benchmark/index.md +8 -2
- package/docs/pl/benchmark/tanstack.md +1 -1
- package/docs/pl/dictionary/content_file.md +1 -1
- package/docs/pl/intlayer_CMS.md +1 -1
- package/docs/pl/intlayer_visual_editor.md +1 -1
- package/docs/pl/intlayer_with_astro_lit.md +2 -1
- package/docs/pl/intlayer_with_astro_preact.md +2 -1
- package/docs/pl/intlayer_with_astro_react.md +2 -1
- package/docs/pl/intlayer_with_astro_solid.md +2 -1
- package/docs/pl/intlayer_with_astro_svelte.md +2 -1
- package/docs/pl/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pl/intlayer_with_astro_vue.md +2 -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_compiler.md +1 -1
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/pl/intlayer_with_nuxt.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 +2 -2
- package/docs/pl/intlayer_with_tanstack+solid.md +1 -1
- package/docs/pl/intlayer_with_tanstack.md +1 -1
- package/docs/pl/intlayer_with_vite+vue.md +1 -1
- package/docs/pl/plugins/sync-json.md +1 -1
- package/docs/pl/readme.md +27 -1
- package/docs/pt/benchmark/index.md +8 -2
- package/docs/pt/benchmark/tanstack.md +1 -1
- package/docs/pt/dictionary/content_file.md +1 -1
- package/docs/pt/intlayer_CMS.md +1 -1
- package/docs/pt/intlayer_visual_editor.md +1 -1
- package/docs/pt/intlayer_with_astro_lit.md +2 -1
- package/docs/pt/intlayer_with_astro_preact.md +2 -1
- package/docs/pt/intlayer_with_astro_react.md +2 -1
- package/docs/pt/intlayer_with_astro_solid.md +2 -1
- package/docs/pt/intlayer_with_astro_svelte.md +2 -1
- package/docs/pt/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pt/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/pt/intlayer_with_nuxt.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.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_vite+vue.md +1 -1
- package/docs/pt/plugins/sync-json.md +1 -1
- package/docs/pt/readme.md +27 -1
- package/docs/ru/benchmark/index.md +5 -2
- package/docs/ru/benchmark/tanstack.md +1 -1
- package/docs/ru/dictionary/content_file.md +1 -1
- package/docs/ru/intlayer_CMS.md +1 -1
- package/docs/ru/intlayer_visual_editor.md +1 -1
- package/docs/ru/intlayer_with_astro_lit.md +2 -1
- package/docs/ru/intlayer_with_astro_preact.md +2 -1
- package/docs/ru/intlayer_with_astro_react.md +2 -1
- package/docs/ru/intlayer_with_astro_solid.md +2 -1
- package/docs/ru/intlayer_with_astro_svelte.md +2 -1
- package/docs/ru/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ru/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ru/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/ru/intlayer_with_tanstack.md +1 -1
- package/docs/ru/intlayer_with_vite+vue.md +1 -1
- package/docs/ru/plugins/sync-json.md +1 -1
- package/docs/ru/readme.md +27 -1
- package/docs/tr/benchmark/index.md +8 -2
- package/docs/tr/benchmark/tanstack.md +1 -1
- package/docs/tr/dictionary/content_file.md +1 -1
- package/docs/tr/intlayer_CMS.md +1 -1
- package/docs/tr/intlayer_visual_editor.md +1 -1
- package/docs/tr/intlayer_with_astro_lit.md +2 -1
- package/docs/tr/intlayer_with_astro_preact.md +2 -1
- package/docs/tr/intlayer_with_astro_react.md +2 -1
- package/docs/tr/intlayer_with_astro_solid.md +2 -1
- package/docs/tr/intlayer_with_astro_svelte.md +2 -1
- package/docs/tr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/tr/intlayer_with_astro_vue.md +2 -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_compiler.md +1 -1
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/tr/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/tr/intlayer_with_tanstack.md +1 -1
- package/docs/tr/intlayer_with_vite+vue.md +1 -1
- package/docs/tr/plugins/sync-json.md +1 -1
- package/docs/tr/readme.md +27 -1
- package/docs/uk/benchmark/index.md +5 -2
- package/docs/uk/benchmark/tanstack.md +1 -1
- package/docs/uk/dictionary/content_file.md +1 -1
- package/docs/uk/intlayer_CMS.md +1 -1
- package/docs/uk/intlayer_visual_editor.md +1 -1
- package/docs/uk/intlayer_with_astro_lit.md +2 -1
- package/docs/uk/intlayer_with_astro_preact.md +2 -1
- package/docs/uk/intlayer_with_astro_react.md +2 -1
- package/docs/uk/intlayer_with_astro_solid.md +2 -1
- package/docs/uk/intlayer_with_astro_svelte.md +2 -1
- package/docs/uk/intlayer_with_astro_vanilla.md +1 -1
- package/docs/uk/intlayer_with_astro_vue.md +2 -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_compiler.md +1 -1
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/uk/intlayer_with_nuxt.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_tanstack+solid.md +1 -1
- package/docs/uk/intlayer_with_tanstack.md +1 -1
- package/docs/uk/intlayer_with_vite+vue.md +1 -1
- package/docs/uk/plugins/sync-json.md +1 -1
- package/docs/uk/readme.md +27 -1
- package/docs/vi/benchmark/index.md +8 -2
- package/docs/vi/benchmark/tanstack.md +1 -1
- package/docs/vi/dictionary/content_file.md +1 -1
- package/docs/vi/intlayer_CMS.md +1 -1
- package/docs/vi/intlayer_visual_editor.md +1 -1
- package/docs/vi/intlayer_with_astro_lit.md +2 -1
- package/docs/vi/intlayer_with_astro_preact.md +2 -1
- package/docs/vi/intlayer_with_astro_react.md +2 -1
- package/docs/vi/intlayer_with_astro_solid.md +2 -1
- package/docs/vi/intlayer_with_astro_svelte.md +2 -1
- package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/vi/intlayer_with_astro_vue.md +2 -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_compiler.md +1 -1
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/vi/intlayer_with_nuxt.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_tanstack+solid.md +1 -1
- package/docs/vi/intlayer_with_tanstack.md +1 -1
- package/docs/vi/intlayer_with_vite+vue.md +1 -1
- package/docs/vi/plugins/sync-json.md +1 -1
- package/docs/vi/readme.md +27 -1
- package/docs/zh/benchmark/index.md +5 -2
- package/docs/zh/benchmark/tanstack.md +1 -1
- package/docs/zh/dictionary/content_file.md +1 -1
- package/docs/zh/intlayer_CMS.md +1 -1
- package/docs/zh/intlayer_visual_editor.md +1 -1
- package/docs/zh/intlayer_with_astro_lit.md +2 -1
- package/docs/zh/intlayer_with_astro_preact.md +2 -1
- package/docs/zh/intlayer_with_astro_react.md +2 -1
- package/docs/zh/intlayer_with_astro_solid.md +2 -1
- package/docs/zh/intlayer_with_astro_svelte.md +2 -1
- package/docs/zh/intlayer_with_astro_vanilla.md +1 -1
- package/docs/zh/intlayer_with_astro_vue.md +2 -1
- 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_compiler.md +1 -1
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/zh/intlayer_with_nuxt.md +1 -1
- 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_tanstack+solid.md +1 -1
- package/docs/zh/intlayer_with_tanstack.md +1 -1
- package/docs/zh/intlayer_with_vite+vue.md +1 -1
- package/docs/zh/plugins/sync-json.md +1 -1
- package/docs/zh/readme.md +102 -76
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +60 -0
|
@@ -50,7 +50,7 @@ history:
|
|
|
50
50
|
<Tabs defaultTab="video">
|
|
51
51
|
<Tab label="Відео" value="video">
|
|
52
52
|
|
|
53
|
-
<iframe title="Найкраще i18n-рішення для Vite і Vue? Дізнайтеся про Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/IE3XWkZ6a5U?autoplay=0&origin=
|
|
53
|
+
<iframe title="Найкраще i18n-рішення для Vite і Vue? Дізнайтеся про Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/IE3XWkZ6a5U?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
54
54
|
|
|
55
55
|
</Tab>
|
|
56
56
|
<Tab label="Код" value="code">
|
|
@@ -34,7 +34,7 @@ history:
|
|
|
34
34
|
|
|
35
35
|
# Sync JSON (містки i18n) - Синхронізація JSON з підтримкою ICU / i18next
|
|
36
36
|
|
|
37
|
-
<iframe title="Як синхронізувати ваші JSON-переклади з Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=
|
|
37
|
+
<iframe title="Як синхронізувати ваші JSON-переклади з Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
38
38
|
|
|
39
39
|
Використовуйте Intlayer як додаток до вашого існуючого стеку i18n. Цей плагін синхронізує ваші JSON-повідомлення зі словниками Intlayer, тож ви можете:
|
|
40
40
|
|
package/docs/uk/readme.md
CHANGED
|
@@ -189,7 +189,22 @@ const HomePage = () => {
|
|
|
189
189
|
<li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React</a></li>
|
|
190
190
|
<li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React за допомогою компілятора</a></li>
|
|
191
191
|
<li><a href="https://intlayer.org/doc/environment/vite-and-react/compiler" rel=''>React-router-v7</a></li>
|
|
192
|
-
<li><a href="https://intlayer.org/doc/environment/
|
|
192
|
+
<li><a href="https://intlayer.org/doc/environment/tanstack-start" rel=''>Tanstack start</a>
|
|
193
|
+
<ul>
|
|
194
|
+
<li><a href="https://intlayer.org/doc/environment/tanstack-start/solid" rel=''>Solid</a></li>
|
|
195
|
+
</ul>
|
|
196
|
+
</li>
|
|
197
|
+
<li><a href="https://intlayer.org/doc/environment/astro" rel=''>Astro</a>
|
|
198
|
+
<ul>
|
|
199
|
+
<li><a href="https://intlayer.org/doc/environment/astro/react" rel=''>React</a></li>
|
|
200
|
+
<li><a href="https://intlayer.org/doc/environment/astro/vue" rel=''>Vue</a></li>
|
|
201
|
+
<li><a href="https://intlayer.org/doc/environment/astro/svelte" rel=''>Svelte</a></li>
|
|
202
|
+
<li><a href="https://intlayer.org/doc/environment/astro/solid" rel=''>Solid</a></li>
|
|
203
|
+
<li><a href="https://intlayer.org/doc/environment/astro/vanilla" rel=''>Vanilla JS</a></li>
|
|
204
|
+
<li><a href="https://intlayer.org/doc/environment/astro/lit" rel=''>Lit</a></li>
|
|
205
|
+
</ul>
|
|
206
|
+
</li>
|
|
207
|
+
|
|
193
208
|
<li><a href="https://intlayer.org/doc/environment/react-native-and-expo" rel=''>React Native</a></li>
|
|
194
209
|
<li><a href="https://intlayer.org/doc/environment/vite-and-svelte" rel=''>Vite + Svelte</a></li>
|
|
195
210
|
<li><a href="https://intlayer.org/doc/environment/sveltekit" rel=''>SvelteKit</a></li>
|
|
@@ -211,6 +226,17 @@ const HomePage = () => {
|
|
|
211
226
|
</ul>
|
|
212
227
|
</details>
|
|
213
228
|
|
|
229
|
+
<details>
|
|
230
|
+
<summary style="font-size:16px; font-weight:bold;">📊 Бенчмарк</summary>
|
|
231
|
+
<ul>
|
|
232
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/benchmark/nextjs.md" rel=''>Next.js</a></li>
|
|
233
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/benchmark/tanstack.md" rel=''>TanStack Start</a></li>
|
|
234
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md" rel=''>Vue</a></li>
|
|
235
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md" rel=''>Solid</a></li>
|
|
236
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md" rel=''>Svelte</a></li>
|
|
237
|
+
</ul>
|
|
238
|
+
</details>
|
|
239
|
+
|
|
214
240
|
<details>
|
|
215
241
|
<summary style="font-size:16px; font-weight:bold;">📰 Блог</summary>
|
|
216
242
|
<ul>
|
|
@@ -25,5 +25,11 @@ Benchmark Bloom là bộ công cụ đo hiệu năng, đánh giá tác động t
|
|
|
25
25
|
|
|
26
26
|
Báo cáo chi tiết và tài liệu kỹ thuật cho từng framework nằm bên dưới:
|
|
27
27
|
|
|
28
|
-
- [**
|
|
29
|
-
- [**
|
|
28
|
+
- [**Next.js Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/nextjs.md)
|
|
29
|
+
- [**TanStack Start Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/tanstack.md)
|
|
30
|
+
- [**Vue Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md)
|
|
31
|
+
- [**Solid Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md)
|
|
32
|
+
- [**Svelte Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md)
|
|
33
|
+
- [**Vue Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md)
|
|
34
|
+
- [**Solid Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md)
|
|
35
|
+
- [**Svelte Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md)
|
|
@@ -182,7 +182,7 @@ Các định dạng thông báo cũng khác nhau: `use-intl` sử dụng ICU Mes
|
|
|
182
182
|
|
|
183
183
|
Benchmark TanStack Start này không có đối trọng trực tiếp cho `next-translate` (Next.js plugin + `getStaticProps`). Đối với các nhóm thực sự muốn một API `t()` với một hệ sinh thái chín muồi, `react-i18next` và `use-intl` vẫn là những lựa chọn "hợp lý", nhưng hãy chuẩn bị đầu tư nhiều thời gian tối ưu hóa để tránh rò rỉ.
|
|
184
184
|
|
|
185
|
-
**(Intlayer)** (`react-intlayer@8.7.
|
|
185
|
+
**(Intlayer)** (`react-intlayer@8.7.12`):
|
|
186
186
|
|
|
187
187
|
Tôi sẽ không đích thân đánh giá `react-intlayer` vì tính khách quan, vì đây là giải pháp của riêng tôi.
|
|
188
188
|
|
|
@@ -40,7 +40,7 @@ history:
|
|
|
40
40
|
|
|
41
41
|
# Tệp Nội Dung
|
|
42
42
|
|
|
43
|
-
<iframe title="i18n, Markdown, JSON… một giải pháp duy nhất để quản lý tất cả | Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/1VHgSY_j9_I?autoplay=0&origin=
|
|
43
|
+
<iframe title="i18n, Markdown, JSON… một giải pháp duy nhất để quản lý tất cả | Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/1VHgSY_j9_I?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
44
44
|
|
|
45
45
|
## Tệp Nội Dung là gì?
|
|
46
46
|
|
package/docs/vi/intlayer_CMS.md
CHANGED
|
@@ -31,7 +31,7 @@ history:
|
|
|
31
31
|
|
|
32
32
|
# Tài liệu Hệ thống Quản lý Nội dung (CMS) Intlayer
|
|
33
33
|
|
|
34
|
-
<iframe title="Trình chỉnh sửa trực quan + CMS cho Ứng dụng Web của bạn: Giải thích về Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=
|
|
34
|
+
<iframe title="Trình chỉnh sửa trực quan + CMS cho Ứng dụng Web của bạn: Giải thích về Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
35
35
|
|
|
36
36
|
Intlayer CMS là một ứng dụng cho phép bạn đưa nội dung của dự án Intlayer ra ngoài.
|
|
37
37
|
|
|
@@ -33,7 +33,7 @@ history:
|
|
|
33
33
|
|
|
34
34
|
# Tài liệu Trình chỉnh sửa trực quan Intlayer
|
|
35
35
|
|
|
36
|
-
<iframe title="Trình chỉnh sửa trực quan + CMS cho ứng dụng web của bạn: Giải thích Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=
|
|
36
|
+
<iframe title="Trình chỉnh sửa trực quan + CMS cho ứng dụng web của bạn: Giải thích Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
37
37
|
|
|
38
38
|
Trình chỉnh sửa trực quan Intlayer là một công cụ bao bọc trang web của bạn để tương tác với các tệp khai báo nội dung của bạn bằng cách sử dụng trình chỉnh sửa trực quan.
|
|
39
39
|
|
|
@@ -204,6 +204,7 @@ import {
|
|
|
204
204
|
getIntlayer,
|
|
205
205
|
getLocaleFromPath,
|
|
206
206
|
getLocalizedUrl,
|
|
207
|
+
getHTMLTextDir,
|
|
207
208
|
getPrefix,
|
|
208
209
|
localeMap,
|
|
209
210
|
defaultLocale,
|
|
@@ -221,7 +222,7 @@ const { greeting } = getIntlayer("lit-demo", locale);
|
|
|
221
222
|
---
|
|
222
223
|
|
|
223
224
|
<!doctype html>
|
|
224
|
-
<html lang={locale}>
|
|
225
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
225
226
|
<head>
|
|
226
227
|
<meta charset="utf-8" />
|
|
227
228
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -201,6 +201,7 @@ import {
|
|
|
201
201
|
getIntlayer,
|
|
202
202
|
getLocaleFromPath,
|
|
203
203
|
getLocalizedUrl,
|
|
204
|
+
getHTMLTextDir,
|
|
204
205
|
getPrefix,
|
|
205
206
|
localeMap,
|
|
206
207
|
defaultLocale,
|
|
@@ -219,7 +220,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
219
220
|
---
|
|
220
221
|
|
|
221
222
|
<!doctype html>
|
|
222
|
-
<html lang={locale}>
|
|
223
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
223
224
|
<head>
|
|
224
225
|
<meta charset="utf-8" />
|
|
225
226
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -201,6 +201,7 @@ import {
|
|
|
201
201
|
getIntlayer,
|
|
202
202
|
getLocaleFromPath,
|
|
203
203
|
getLocalizedUrl,
|
|
204
|
+
getHTMLTextDir,
|
|
204
205
|
getPrefix,
|
|
205
206
|
localeMap,
|
|
206
207
|
defaultLocale,
|
|
@@ -219,7 +220,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
219
220
|
---
|
|
220
221
|
|
|
221
222
|
<!doctype html>
|
|
222
|
-
<html lang={locale}>
|
|
223
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
223
224
|
<head>
|
|
224
225
|
<meta charset="utf-8" />
|
|
225
226
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -197,6 +197,7 @@ import {
|
|
|
197
197
|
getIntlayer,
|
|
198
198
|
getLocaleFromPath,
|
|
199
199
|
getLocalizedUrl,
|
|
200
|
+
getHTMLTextDir,
|
|
200
201
|
getPrefix,
|
|
201
202
|
localeMap,
|
|
202
203
|
defaultLocale,
|
|
@@ -215,7 +216,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
215
216
|
---
|
|
216
217
|
|
|
217
218
|
<!doctype html>
|
|
218
|
-
<html lang={locale}>
|
|
219
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
219
220
|
<head>
|
|
220
221
|
<meta charset="utf-8" />
|
|
221
222
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -197,6 +197,7 @@ import {
|
|
|
197
197
|
getIntlayer,
|
|
198
198
|
getLocaleFromPath,
|
|
199
199
|
getLocalizedUrl,
|
|
200
|
+
getHTMLTextDir,
|
|
200
201
|
getPrefix,
|
|
201
202
|
localeMap,
|
|
202
203
|
defaultLocale,
|
|
@@ -215,7 +216,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
215
216
|
---
|
|
216
217
|
|
|
217
218
|
<!doctype html>
|
|
218
|
-
<html lang={locale}>
|
|
219
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
219
220
|
<head>
|
|
220
221
|
<meta charset="utf-8" />
|
|
221
222
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -221,7 +221,7 @@ const { greeting, description, switchLocale } = getIntlayer("app", locale);
|
|
|
221
221
|
---
|
|
222
222
|
|
|
223
223
|
<!doctype html>
|
|
224
|
-
<html lang={locale}>
|
|
224
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
225
225
|
<head>
|
|
226
226
|
<meta charset="utf-8" />
|
|
227
227
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -197,6 +197,7 @@ import {
|
|
|
197
197
|
getIntlayer,
|
|
198
198
|
getLocaleFromPath,
|
|
199
199
|
getLocalizedUrl,
|
|
200
|
+
getHTMLTextDir,
|
|
200
201
|
getPrefix,
|
|
201
202
|
localeMap,
|
|
202
203
|
defaultLocale,
|
|
@@ -215,7 +216,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
215
216
|
---
|
|
216
217
|
|
|
217
218
|
<!doctype html>
|
|
218
|
-
<html lang={locale}>
|
|
219
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
219
220
|
<head>
|
|
220
221
|
<meta charset="utf-8" />
|
|
221
222
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -84,7 +84,7 @@ Với Intlayer, bạn có thể:
|
|
|
84
84
|
<Tabs defaultTab="video">
|
|
85
85
|
<Tab label="Video" value="video">
|
|
86
86
|
|
|
87
|
-
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
87
|
+
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
88
88
|
|
|
89
89
|
</Tab>
|
|
90
90
|
<Tab label="Code" value="code">
|
|
@@ -34,7 +34,7 @@ history:
|
|
|
34
34
|
<Tabs defaultTab="video">
|
|
35
35
|
<Tab label="Video" value="video">
|
|
36
36
|
|
|
37
|
-
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
37
|
+
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
38
38
|
|
|
39
39
|
</Tab>
|
|
40
40
|
<Tab label="Mã nguồn" value="code">
|
|
@@ -33,7 +33,7 @@ history:
|
|
|
33
33
|
<Tabs defaultTab="video">
|
|
34
34
|
<Tab label="Video" value="video">
|
|
35
35
|
|
|
36
|
-
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
36
|
+
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
37
37
|
|
|
38
38
|
</Tab>
|
|
39
39
|
<Tab label="Mã nguồn" value="code">
|
|
@@ -28,7 +28,7 @@ history:
|
|
|
28
28
|
<Tabs defaultTab="video">
|
|
29
29
|
<Tab label="Video" value="video">
|
|
30
30
|
|
|
31
|
-
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
31
|
+
<iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
32
32
|
|
|
33
33
|
</Tab>
|
|
34
34
|
<Tab label="Mã" value="code">
|
|
@@ -50,7 +50,7 @@ Với Intlayer, bạn có thể:
|
|
|
50
50
|
<Tabs defaultTab="video">
|
|
51
51
|
<Tab label="Video" value="video">
|
|
52
52
|
|
|
53
|
-
<iframe title="Cách dịch ứng dụng Nuxt và Vue của bạn bằng Intlayer? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/nhUcUAVQ6eQ?autoplay=0&origin=
|
|
53
|
+
<iframe title="Cách dịch ứng dụng Nuxt và Vue của bạn bằng Intlayer? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/nhUcUAVQ6eQ?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
54
54
|
|
|
55
55
|
</Tab>
|
|
56
56
|
<Tab label="Mã nguồn" value="code">
|
|
@@ -104,7 +104,7 @@ bun x intlayer init
|
|
|
104
104
|
<Tabs defaultTab="video">
|
|
105
105
|
<Tab label="Video" value="video">
|
|
106
106
|
|
|
107
|
-
<iframe title="How to translate an React Router v7 app using Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?autoplay=0&origin=
|
|
107
|
+
<iframe title="How to translate an React Router v7 app using Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
108
108
|
|
|
109
109
|
</Tab>
|
|
110
110
|
<Tab label="Code" value="code">
|
|
@@ -103,7 +103,7 @@ bun x intlayer init
|
|
|
103
103
|
<Tabs defaultTab="video">
|
|
104
104
|
<Tab label="Video" value="video">
|
|
105
105
|
|
|
106
|
-
<iframe title="How to translate an React Router v7 (File-System Routes) app using Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?autoplay=0&origin=
|
|
106
|
+
<iframe title="How to translate an React Router v7 (File-System Routes) app using Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
107
107
|
|
|
108
108
|
</Tab>
|
|
109
109
|
<Tab label="Code" value="code">
|
|
@@ -53,7 +53,7 @@ Với Intlayer, bạn có thể:
|
|
|
53
53
|
<Tabs defaultTab="video">
|
|
54
54
|
<Tab label="Video" value="video">
|
|
55
55
|
|
|
56
|
-
<iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/_XTdKVWaeqg?autoplay=0&origin=
|
|
56
|
+
<iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/_XTdKVWaeqg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
57
57
|
|
|
58
58
|
</Tab>
|
|
59
59
|
<Tab label="Code" value="code">
|
|
@@ -70,7 +70,7 @@ Với Intlayer, bạn có thể:
|
|
|
70
70
|
<Tabs defaultTab="video">
|
|
71
71
|
<Tab label="Video" value="video">
|
|
72
72
|
|
|
73
|
-
<iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/_XTdKVWaeqg?autoplay=0&origin=
|
|
73
|
+
<iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/_XTdKVWaeqg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
74
74
|
|
|
75
75
|
</Tab>
|
|
76
76
|
<Tab label="Code" value="code">
|
|
@@ -50,7 +50,7 @@ Với Intlayer, bạn có thể:
|
|
|
50
50
|
<Tabs defaultTab="video">
|
|
51
51
|
<Tab label="Video" value="video">
|
|
52
52
|
|
|
53
|
-
<iframe title="The best i18n solution for Vite and Vue? Discover Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/IE3XWkZ6a5U?autoplay=0&origin=
|
|
53
|
+
<iframe title="The best i18n solution for Vite and Vue? Discover Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/IE3XWkZ6a5U?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
54
54
|
|
|
55
55
|
</Tab>
|
|
56
56
|
<Tab label="Mã" value="code">
|
|
@@ -34,7 +34,7 @@ history:
|
|
|
34
34
|
|
|
35
35
|
# Đồng bộ JSON (cầu nối i18n) - Đồng bộ JSON với hỗ trợ ICU / i18next
|
|
36
36
|
|
|
37
|
-
<iframe title="Cách giữ bản dịch JSON của bạn đồng bộ với Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=
|
|
37
|
+
<iframe title="Cách giữ bản dịch JSON của bạn đồng bộ với Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
38
38
|
|
|
39
39
|
Sử dụng Intlayer như một tiện ích bổ sung cho bộ công cụ i18n hiện có của bạn. Plugin này giữ cho các thông điệp JSON của bạn đồng bộ với từ điển Intlayer để bạn có thể:
|
|
40
40
|
|
package/docs/vi/readme.md
CHANGED
|
@@ -189,7 +189,22 @@ Khám phá tài liệu toàn diện của chúng tôi để bắt đầu với I
|
|
|
189
189
|
<li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React</a></li>
|
|
190
190
|
<li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React sử dụng trình biên dịch</a></li>
|
|
191
191
|
<li><a href="https://intlayer.org/doc/environment/vite-and-react/compiler" rel=''>React-router-v7</a></li>
|
|
192
|
-
<li><a href="https://intlayer.org/doc/environment/
|
|
192
|
+
<li><a href="https://intlayer.org/doc/environment/tanstack-start" rel=''>Tanstack start</a>
|
|
193
|
+
<ul>
|
|
194
|
+
<li><a href="https://intlayer.org/doc/environment/tanstack-start/solid" rel=''>Solid</a></li>
|
|
195
|
+
</ul>
|
|
196
|
+
</li>
|
|
197
|
+
<li><a href="https://intlayer.org/doc/environment/astro" rel=''>Astro</a>
|
|
198
|
+
<ul>
|
|
199
|
+
<li><a href="https://intlayer.org/doc/environment/astro/react" rel=''>React</a></li>
|
|
200
|
+
<li><a href="https://intlayer.org/doc/environment/astro/vue" rel=''>Vue</a></li>
|
|
201
|
+
<li><a href="https://intlayer.org/doc/environment/astro/svelte" rel=''>Svelte</a></li>
|
|
202
|
+
<li><a href="https://intlayer.org/doc/environment/astro/solid" rel=''>Solid</a></li>
|
|
203
|
+
<li><a href="https://intlayer.org/doc/environment/astro/vanilla" rel=''>Vanilla JS</a></li>
|
|
204
|
+
<li><a href="https://intlayer.org/doc/environment/astro/lit" rel=''>Lit</a></li>
|
|
205
|
+
</ul>
|
|
206
|
+
</li>
|
|
207
|
+
|
|
193
208
|
<li><a href="https://intlayer.org/doc/environment/react-native-and-expo" rel=''>React Native</a></li>
|
|
194
209
|
<li><a href="https://intlayer.org/doc/environment/vite-and-svelte" rel=''>Vite + Svelte</a></li>
|
|
195
210
|
<li><a href="https://intlayer.org/doc/environment/sveltekit" rel=''>SvelteKit</a></li>
|
|
@@ -211,6 +226,17 @@ Khám phá tài liệu toàn diện của chúng tôi để bắt đầu với I
|
|
|
211
226
|
</ul>
|
|
212
227
|
</details>
|
|
213
228
|
|
|
229
|
+
<details>
|
|
230
|
+
<summary style="font-size:16px; font-weight:bold;">📊 Benchmark</summary>
|
|
231
|
+
<ul>
|
|
232
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/benchmark/nextjs.md" rel=''>Next.js</a></li>
|
|
233
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/benchmark/tanstack.md" rel=''>TanStack Start</a></li>
|
|
234
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md" rel=''>Vue</a></li>
|
|
235
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md" rel=''>Solid</a></li>
|
|
236
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md" rel=''>Svelte</a></li>
|
|
237
|
+
</ul>
|
|
238
|
+
</details>
|
|
239
|
+
|
|
214
240
|
<details>
|
|
215
241
|
<summary style="font-size:16px; font-weight:bold;">📰 Blog</summary>
|
|
216
242
|
<ul>
|
|
@@ -25,5 +25,8 @@ Benchmark Bloom 是一套性能基准测试,用于衡量 i18n(国际化)
|
|
|
25
25
|
|
|
26
26
|
各框架的详细报告与技术文档见下方:
|
|
27
27
|
|
|
28
|
-
- [**Next.js
|
|
29
|
-
- [**TanStack Start
|
|
28
|
+
- [**Next.js Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/nextjs.md)
|
|
29
|
+
- [**TanStack Start Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/tanstack.md)
|
|
30
|
+
- [**Vue Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md)
|
|
31
|
+
- [**Solid Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md)
|
|
32
|
+
- [**Svelte Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md)
|
|
@@ -182,7 +182,7 @@ history:
|
|
|
182
182
|
|
|
183
183
|
在本次 TanStack Start 基准测试中,没有与 `next-translate`(Next.js 插件 + `getStaticProps`)直接对应的方案。对于那些确实想要 `t()` API 且拥有成熟生态的团队,`react-i18next` 和 `use-intl` 仍是“合理”的选择,但要做好投入大量时间进行优化以避免泄漏的准备。
|
|
184
184
|
|
|
185
|
-
**(Intlayer)** (`react-intlayer@8.7.
|
|
185
|
+
**(Intlayer)** (`react-intlayer@8.7.12`):
|
|
186
186
|
|
|
187
187
|
出于客观性考量,我不会亲自评价 `react-intlayer`,因为这是我自己的解决方案。
|
|
188
188
|
|
|
@@ -37,7 +37,7 @@ history:
|
|
|
37
37
|
|
|
38
38
|
# 内容文件
|
|
39
39
|
|
|
40
|
-
<iframe title="i18n,Markdown,JSON……一站式管理解决方案 | Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/1VHgSY_j9_I?autoplay=0&origin=
|
|
40
|
+
<iframe title="i18n,Markdown,JSON……一站式管理解决方案 | Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/1VHgSY_j9_I?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
41
41
|
|
|
42
42
|
## 什么是内容文件?
|
|
43
43
|
|
package/docs/zh/intlayer_CMS.md
CHANGED
|
@@ -31,7 +31,7 @@ history:
|
|
|
31
31
|
|
|
32
32
|
# Intlayer 内容管理系统(CMS)文档
|
|
33
33
|
|
|
34
|
-
<iframe title="适用于您的 Web 应用的可视化编辑器 + CMS:Intlayer 详解" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=
|
|
34
|
+
<iframe title="适用于您的 Web 应用的可视化编辑器 + CMS:Intlayer 详解" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
35
35
|
|
|
36
36
|
Intlayer CMS 是一个应用程序,允许您将 Intlayer 项目的内容外部化。
|
|
37
37
|
|
|
@@ -24,7 +24,7 @@ history:
|
|
|
24
24
|
|
|
25
25
|
# Intlayer 可视化编辑器文档
|
|
26
26
|
|
|
27
|
-
<iframe title="Visual Editor + CMS for Your Web App: Intlayer Explained" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=
|
|
27
|
+
<iframe title="Visual Editor + CMS for Your Web App: Intlayer Explained" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
28
28
|
|
|
29
29
|
Intlayer 可视化编辑器是一种工具,可以将您的网站包装起来,通过可视化编辑器与您的内容声明文件进行交互。
|
|
30
30
|
|
|
@@ -203,6 +203,7 @@ import {
|
|
|
203
203
|
getIntlayer,
|
|
204
204
|
getLocaleFromPath,
|
|
205
205
|
getLocalizedUrl,
|
|
206
|
+
getHTMLTextDir,
|
|
206
207
|
getPrefix,
|
|
207
208
|
localeMap,
|
|
208
209
|
defaultLocale,
|
|
@@ -220,7 +221,7 @@ const { greeting } = getIntlayer("lit-demo", locale);
|
|
|
220
221
|
---
|
|
221
222
|
|
|
222
223
|
<!doctype html>
|
|
223
|
-
<html lang={locale}>
|
|
224
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
224
225
|
<head>
|
|
225
226
|
<meta charset="utf-8" />
|
|
226
227
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -200,6 +200,7 @@ import {
|
|
|
200
200
|
getIntlayer,
|
|
201
201
|
getLocaleFromPath,
|
|
202
202
|
getLocalizedUrl,
|
|
203
|
+
getHTMLTextDir,
|
|
203
204
|
getPrefix,
|
|
204
205
|
localeMap,
|
|
205
206
|
defaultLocale,
|
|
@@ -218,7 +219,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
218
219
|
---
|
|
219
220
|
|
|
220
221
|
<!doctype html>
|
|
221
|
-
<html lang={locale}>
|
|
222
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
222
223
|
<head>
|
|
223
224
|
<meta charset="utf-8" />
|
|
224
225
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -200,6 +200,7 @@ import {
|
|
|
200
200
|
getIntlayer,
|
|
201
201
|
getLocaleFromPath,
|
|
202
202
|
getLocalizedUrl,
|
|
203
|
+
getHTMLTextDir,
|
|
203
204
|
getPrefix,
|
|
204
205
|
localeMap,
|
|
205
206
|
defaultLocale,
|
|
@@ -218,7 +219,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
218
219
|
---
|
|
219
220
|
|
|
220
221
|
<!doctype html>
|
|
221
|
-
<html lang={locale}>
|
|
222
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
222
223
|
<head>
|
|
223
224
|
<meta charset="utf-8" />
|
|
224
225
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -196,6 +196,7 @@ import {
|
|
|
196
196
|
getIntlayer,
|
|
197
197
|
getLocaleFromPath,
|
|
198
198
|
getLocalizedUrl,
|
|
199
|
+
getHTMLTextDir,
|
|
199
200
|
getPrefix,
|
|
200
201
|
localeMap,
|
|
201
202
|
defaultLocale,
|
|
@@ -214,7 +215,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
214
215
|
---
|
|
215
216
|
|
|
216
217
|
<!doctype html>
|
|
217
|
-
<html lang={locale}>
|
|
218
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
218
219
|
<head>
|
|
219
220
|
<meta charset="utf-8" />
|
|
220
221
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -196,6 +196,7 @@ import {
|
|
|
196
196
|
getIntlayer,
|
|
197
197
|
getLocaleFromPath,
|
|
198
198
|
getLocalizedUrl,
|
|
199
|
+
getHTMLTextDir,
|
|
199
200
|
getPrefix,
|
|
200
201
|
localeMap,
|
|
201
202
|
defaultLocale,
|
|
@@ -214,7 +215,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
214
215
|
---
|
|
215
216
|
|
|
216
217
|
<!doctype html>
|
|
217
|
-
<html lang={locale}>
|
|
218
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
218
219
|
<head>
|
|
219
220
|
<meta charset="utf-8" />
|
|
220
221
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -220,7 +220,7 @@ const { greeting, description, switchLocale } = getIntlayer("app", locale);
|
|
|
220
220
|
---
|
|
221
221
|
|
|
222
222
|
<!doctype html>
|
|
223
|
-
<html lang={locale}>
|
|
223
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
224
224
|
<head>
|
|
225
225
|
<meta charset="utf-8" />
|
|
226
226
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -196,6 +196,7 @@ import {
|
|
|
196
196
|
getIntlayer,
|
|
197
197
|
getLocaleFromPath,
|
|
198
198
|
getLocalizedUrl,
|
|
199
|
+
getHTMLTextDir,
|
|
199
200
|
getPrefix,
|
|
200
201
|
localeMap,
|
|
201
202
|
defaultLocale,
|
|
@@ -214,7 +215,7 @@ const { title } = getIntlayer("app", locale);
|
|
|
214
215
|
---
|
|
215
216
|
|
|
216
217
|
<!doctype html>
|
|
217
|
-
<html lang={locale}>
|
|
218
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
218
219
|
<head>
|
|
219
220
|
<meta charset="utf-8" />
|
|
220
221
|
<meta name="viewport" content="width=device-width" />
|
|
@@ -32,7 +32,7 @@ history:
|
|
|
32
32
|
<Tabs defaultTab="video">
|
|
33
33
|
<Tab label="视频" value="video">
|
|
34
34
|
|
|
35
|
-
<iframe title="Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
35
|
+
<iframe title="Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
36
36
|
|
|
37
37
|
</Tab>
|
|
38
38
|
<Tab label="代码" value="code">
|
|
@@ -59,7 +59,7 @@ history:
|
|
|
59
59
|
</Tab>
|
|
60
60
|
</Tabs>
|
|
61
61
|
|
|
62
|
-
<iframe title="Next.js 最佳国际化解决方案?探索 Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
62
|
+
<iframe title="Next.js 最佳国际化解决方案?探索 Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
63
63
|
|
|
64
64
|
请参阅 GitHub 上的[应用模板](https://github.com/aymericzip/intlayer-next-15-template)。
|
|
65
65
|
|
|
@@ -34,7 +34,7 @@ history:
|
|
|
34
34
|
<Tabs defaultTab="video">
|
|
35
35
|
<Tab label="视频" value="video">
|
|
36
36
|
|
|
37
|
-
<iframe title="Next.js 最佳 i18n 解决方案?探索 Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=
|
|
37
|
+
<iframe title="Next.js 最佳 i18n 解决方案?探索 Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
38
38
|
|
|
39
39
|
</Tab>
|
|
40
40
|
<Tab label="代码" value="code">
|