@intlayer/docs 9.4.0-canary.0 → 9.4.1
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 +3 -0
- package/authors.json +1 -1
- package/blog/ar/i18n_using_next-i18next.md +52 -13
- package/blog/ar/i18n_using_next-intl.md +20 -2
- package/blog/de/i18n_using_next-i18next.md +37 -37
- package/blog/de/i18n_using_next-intl.md +18 -0
- package/blog/en/i18n_using_next-i18next.md +35 -0
- package/blog/en/i18n_using_next-intl.md +18 -0
- package/blog/en/rag_powered_documentation_assistant.md +4 -1
- package/blog/en-GB/i18n_using_next-i18next.md +28 -1
- package/blog/en-GB/i18n_using_next-intl.md +18 -0
- package/blog/es/i18n_using_next-i18next.md +52 -13
- package/blog/es/i18n_using_next-intl.md +18 -0
- package/blog/fr/i18n_using_next-i18next.md +27 -0
- package/blog/fr/i18n_using_next-intl.md +18 -0
- package/blog/hi/i18n_using_next-i18next.md +52 -13
- package/blog/hi/i18n_using_next-intl.md +18 -0
- package/blog/id/i18n_using_next-i18next.md +40 -13
- package/blog/id/i18n_using_next-intl.md +18 -0
- package/blog/it/i18n_using_next-i18next.md +40 -13
- package/blog/it/i18n_using_next-intl.md +18 -0
- package/blog/ja/i18n_using_next-i18next.md +27 -0
- package/blog/ja/i18n_using_next-intl.md +18 -0
- package/blog/ko/i18n_using_next-i18next.md +40 -13
- package/blog/ko/i18n_using_next-intl.md +18 -0
- package/blog/pl/i18n_using_next-i18next.md +40 -13
- package/blog/pl/i18n_using_next-intl.md +18 -0
- package/blog/pt/i18n_using_next-i18next.md +52 -13
- package/blog/pt/i18n_using_next-intl.md +18 -0
- package/blog/ru/i18n_using_next-i18next.md +37 -37
- package/blog/ru/i18n_using_next-intl.md +19 -1
- package/blog/tr/i18n_using_next-i18next.md +40 -13
- package/blog/tr/i18n_using_next-intl.md +18 -0
- package/blog/uk/i18n_using_next-i18next.md +53 -26
- package/blog/uk/i18n_using_next-intl.md +30 -12
- package/blog/vi/i18n_using_next-i18next.md +40 -13
- package/blog/vi/i18n_using_next-intl.md +18 -0
- package/blog/zh/i18n_using_next-i18next.md +31 -31
- package/blog/zh/i18n_using_next-intl.md +22 -4
- package/dist/cjs/authors2.cjs +1 -1
- package/dist/cjs/generated/docs.entry.cjs +140 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/authors2.mjs +1 -1
- package/dist/esm/generated/docs.entry.mjs +140 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +7 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/analytics.md +32 -11
- package/docs/ar/benchmark/tanstack.md +6 -0
- package/docs/ar/cli/ci.md +2 -0
- package/docs/ar/cli/doc-review.md +9 -1
- package/docs/ar/cli/fill.md +0 -8
- package/docs/ar/cli/index.md +2 -0
- package/docs/ar/cli/list_projects.md +0 -2
- package/docs/ar/cli/login.md +28 -0
- package/docs/ar/compiler.md +14 -0
- package/docs/ar/configuration.md +7 -8
- package/docs/ar/custom_domains.md +33 -0
- package/docs/ar/custom_url_rewrites.md +9 -5
- package/docs/ar/dictionary/html.md +16 -14
- package/docs/ar/dictionary/markdown.md +7 -3
- package/docs/ar/dictionary/plurial.md +92 -123
- package/docs/ar/dynamic_dictionaries/variants.md +24 -36
- package/docs/ar/formatters.md +0 -128
- package/docs/ar/how_works_intlayer.md +8 -1
- package/docs/ar/interest_of_intlayer.md +16 -0
- package/docs/ar/intlayer_visual_editor.md +12 -0
- package/docs/ar/intlayer_with_adonisjs.md +5 -3
- package/docs/ar/intlayer_with_analog.md +17 -0
- package/docs/ar/intlayer_with_angular_19.md +17 -0
- package/docs/ar/intlayer_with_angular_21.md +17 -0
- package/docs/ar/intlayer_with_astro.md +41 -0
- package/docs/ar/intlayer_with_astro_lit.md +17 -0
- package/docs/ar/intlayer_with_astro_preact.md +23 -0
- package/docs/ar/intlayer_with_astro_react.md +17 -0
- package/docs/ar/intlayer_with_astro_solid.md +17 -0
- package/docs/ar/intlayer_with_astro_svelte.md +17 -0
- package/docs/ar/intlayer_with_astro_vanilla.md +17 -0
- package/docs/ar/intlayer_with_astro_vue.md +17 -0
- package/docs/ar/intlayer_with_create_react_app.md +55 -119
- package/docs/ar/intlayer_with_elysia.md +343 -0
- package/docs/ar/intlayer_with_express.md +11 -3
- package/docs/ar/intlayer_with_fastify.md +5 -3
- package/docs/ar/intlayer_with_hono.md +48 -3
- package/docs/ar/intlayer_with_lynx+react.md +30 -0
- package/docs/ar/intlayer_with_nestjs.md +19 -3
- package/docs/ar/intlayer_with_next-i18next.md +11 -0
- package/docs/ar/intlayer_with_nextjs_14.md +233 -36
- package/docs/ar/intlayer_with_nextjs_15.md +218 -0
- package/docs/ar/intlayer_with_nextjs_16.md +170 -44
- package/docs/ar/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +159 -4
- package/docs/ar/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/ar/intlayer_with_nuxt.md +17 -0
- package/docs/ar/intlayer_with_react_router_v7.md +47 -0
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +191 -52
- package/docs/ar/intlayer_with_solid_start.md +12 -0
- package/docs/ar/intlayer_with_storybook.md +17 -0
- package/docs/ar/intlayer_with_svelte_kit.md +25 -16
- package/docs/ar/intlayer_with_tanstack+solid.md +249 -6
- package/docs/ar/intlayer_with_tanstack.md +283 -49
- package/docs/ar/intlayer_with_vanilla.md +17 -0
- package/docs/ar/intlayer_with_vite+lit.md +21 -0
- package/docs/ar/intlayer_with_vite+preact.md +51 -16
- package/docs/ar/intlayer_with_vite+react.md +21 -12
- package/docs/ar/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ar/intlayer_with_vite+solid.md +28 -48
- package/docs/ar/intlayer_with_vite+svelte.md +42 -12
- package/docs/ar/intlayer_with_vite+vanilla.md +19 -0
- package/docs/ar/intlayer_with_vite+vue.md +32 -14
- package/docs/ar/live-sync.md +13 -2
- package/docs/ar/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ar/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ar/packages/intlayer/getDictionary.md +155 -0
- package/docs/ar/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ar/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ar/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ar/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ar/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/ar/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/ar/packages/intlayer/getTranslation.md +2 -0
- package/docs/ar/packages/next-intlayer/t.md +20 -0
- package/docs/ar/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ar/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ar/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ar/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ar/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/ar/per_locale_file.md +13 -13
- package/docs/ar/readme.md +1 -0
- package/docs/ar/releases/v6.md +16 -2
- package/docs/ar/releases/v9.md +2 -0
- package/docs/ar/self_hosting.md +67 -24
- package/docs/bn/intlayer_with_fastify.md +5 -3
- package/docs/bn/intlayer_with_hono.md +5 -3
- package/docs/cs/intlayer_with_fastify.md +5 -3
- package/docs/cs/intlayer_with_hono.md +5 -3
- package/docs/de/analytics.md +32 -11
- package/docs/de/benchmark/tanstack.md +6 -0
- package/docs/de/cli/ci.md +2 -0
- package/docs/de/cli/doc-review.md +9 -1
- package/docs/de/cli/fill.md +0 -8
- package/docs/de/cli/index.md +2 -0
- package/docs/de/cli/init.md +0 -8
- package/docs/de/cli/list_projects.md +0 -2
- package/docs/de/cli/login.md +28 -0
- package/docs/de/compiler.md +14 -0
- package/docs/de/configuration.md +7 -8
- package/docs/de/custom_domains.md +34 -0
- package/docs/de/custom_url_rewrites.md +7 -5
- package/docs/de/dictionary/enumeration.md +0 -183
- package/docs/de/dictionary/html.md +18 -18
- package/docs/de/dictionary/insertion.md +0 -14
- package/docs/de/dictionary/markdown.md +31 -14
- package/docs/de/dictionary/plurial.md +70 -272
- package/docs/de/dynamic_dictionaries/variants.md +24 -0
- package/docs/de/formatters.md +12 -39
- package/docs/de/how_works_intlayer.md +8 -1
- package/docs/de/intlayer_CMS.md +26 -21
- package/docs/de/intlayer_visual_editor.md +12 -0
- package/docs/de/intlayer_with_adonisjs.md +5 -3
- package/docs/de/intlayer_with_astro.md +24 -0
- package/docs/de/intlayer_with_astro_preact.md +6 -0
- package/docs/de/intlayer_with_create_react_app.md +51 -0
- package/docs/de/intlayer_with_elysia.md +343 -0
- package/docs/de/intlayer_with_express.md +7 -3
- package/docs/de/intlayer_with_fastify.md +5 -3
- package/docs/de/intlayer_with_hono.md +5 -3
- package/docs/de/intlayer_with_lynx+react.md +13 -26
- package/docs/de/intlayer_with_nestjs.md +5 -3
- package/docs/de/intlayer_with_next-intl.md +0 -5
- package/docs/de/intlayer_with_nextjs_14.md +239 -9
- package/docs/de/intlayer_with_nextjs_15.md +200 -0
- package/docs/de/intlayer_with_nextjs_16.md +95 -35
- package/docs/de/intlayer_with_nextjs_compiler.md +467 -10
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +125 -4
- package/docs/de/intlayer_with_nextjs_page_router.md +4 -43
- package/docs/de/intlayer_with_react_router_v7.md +30 -0
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +102 -12
- package/docs/de/intlayer_with_solid_start.md +12 -0
- package/docs/de/intlayer_with_svelte_kit.md +6 -0
- package/docs/de/intlayer_with_tanstack+solid.md +157 -6
- package/docs/de/intlayer_with_tanstack.md +348 -178
- package/docs/de/intlayer_with_vite+lit.md +4 -0
- package/docs/de/intlayer_with_vite+preact.md +8 -4
- package/docs/de/intlayer_with_vite+react.md +4 -2
- package/docs/de/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/de/intlayer_with_vite+solid.md +11 -12
- package/docs/de/intlayer_with_vite+svelte.md +24 -0
- package/docs/de/intlayer_with_vite+vanilla.md +2 -0
- package/docs/de/intlayer_with_vite+vue.md +15 -2
- package/docs/de/live-sync.md +39 -0
- package/docs/de/packages/elysia-intlayer/exports.md +136 -0
- package/docs/de/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/de/packages/intlayer/getDictionary.md +155 -0
- package/docs/de/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/de/packages/intlayer/getEnumeration.md +2 -0
- package/docs/de/packages/intlayer/getIntlayer.md +197 -0
- package/docs/de/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/de/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/de/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/de/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/de/packages/intlayer/getTranslation.md +2 -0
- package/docs/de/packages/next-intlayer/t.md +20 -0
- package/docs/de/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/de/packages/next-intlayer/useLocale.md +2 -0
- package/docs/de/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/de/packages/react-intlayer/useI18n.md +31 -0
- package/docs/de/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/de/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/de/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/de/per_locale_file.md +13 -13
- package/docs/de/readme.md +3 -2
- package/docs/de/releases/v6.md +33 -33
- package/docs/de/releases/v9.md +2 -0
- package/docs/de/self_hosting.md +68 -24
- package/docs/en/analytics.md +503 -34
- package/docs/en/cli/index.md +2 -0
- package/docs/en/cli/login.md +28 -0
- package/docs/en/custom_domains.md +39 -2
- package/docs/en/dictionary/html.md +16 -16
- package/docs/en/dynamic_dictionaries/variants.md +3 -3
- package/docs/en/intlayer_with_adonisjs.md +5 -3
- package/docs/en/intlayer_with_elysia.md +339 -0
- package/docs/en/intlayer_with_express.md +5 -3
- package/docs/en/intlayer_with_fastify.md +5 -4
- package/docs/en/intlayer_with_hono.md +5 -3
- package/docs/en/intlayer_with_nestjs.md +5 -3
- package/docs/en/intlayer_with_nextjs_14.md +2 -7
- package/docs/en/intlayer_with_nextjs_15.md +5 -5
- package/docs/en/intlayer_with_nextjs_16.md +5 -5
- package/docs/en/intlayer_with_nextjs_compiler.md +4 -4
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +7 -7
- package/docs/en/intlayer_with_nextjs_page_router.md +4 -28
- package/docs/en/intlayer_with_tanstack+solid.md +157 -6
- package/docs/en/intlayer_with_tanstack.md +159 -7
- package/docs/en/packages/elysia-intlayer/exports.md +134 -0
- package/docs/en/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/en/packages/intlayer/exports.md +19 -14
- package/docs/en/packages/intlayer/getDictionary.md +154 -0
- package/docs/en/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/en/packages/intlayer/getIntlayer.md +196 -0
- package/docs/en/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/en/packages/next-intlayer/exports.md +10 -9
- package/docs/en/packages/next-intlayer/t.md +2 -4
- package/docs/en/packages/next-intlayer/useIntlayer.md +5 -6
- package/docs/en/readme.md +1 -0
- package/docs/en/self_hosting.md +77 -20
- package/docs/en-GB/benchmark/tanstack.md +6 -0
- package/docs/en-GB/cli/ci.md +2 -0
- package/docs/en-GB/cli/doc-review.md +7 -1
- package/docs/en-GB/cli/fill.md +0 -8
- package/docs/en-GB/cli/index.md +2 -0
- package/docs/en-GB/cli/list_projects.md +0 -2
- package/docs/en-GB/cli/login.md +28 -0
- package/docs/en-GB/compiler.md +14 -0
- package/docs/en-GB/custom_domains.md +34 -0
- package/docs/en-GB/custom_url_rewrites.md +7 -5
- package/docs/en-GB/dictionary/condition.md +0 -201
- package/docs/en-GB/dictionary/content_file.md +0 -3
- package/docs/en-GB/dictionary/enumeration.md +0 -183
- package/docs/en-GB/dictionary/file.md +0 -166
- package/docs/en-GB/dictionary/gender.md +0 -212
- package/docs/en-GB/dictionary/html.md +17 -15
- package/docs/en-GB/dictionary/insertion.md +0 -4
- package/docs/en-GB/dictionary/markdown.md +7 -3
- package/docs/en-GB/dictionary/plurial.md +68 -271
- package/docs/en-GB/dictionary/translation.md +0 -133
- package/docs/en-GB/dynamic_dictionaries/variants.md +24 -0
- package/docs/en-GB/formatters.md +0 -164
- package/docs/en-GB/how_works_intlayer.md +7 -0
- package/docs/en-GB/intlayer_visual_editor.md +12 -0
- package/docs/en-GB/intlayer_with_adonisjs.md +5 -3
- package/docs/en-GB/intlayer_with_astro.md +24 -0
- package/docs/en-GB/intlayer_with_astro_preact.md +6 -0
- package/docs/en-GB/intlayer_with_create_react_app.md +10 -78
- package/docs/en-GB/intlayer_with_elysia.md +339 -0
- package/docs/en-GB/intlayer_with_express.md +11 -3
- package/docs/en-GB/intlayer_with_fastify.md +5 -4
- package/docs/en-GB/intlayer_with_hono.md +5 -3
- package/docs/en-GB/intlayer_with_lynx+react.md +8 -53
- package/docs/en-GB/intlayer_with_nestjs.md +5 -3
- package/docs/en-GB/intlayer_with_nextjs_14.md +180 -9
- package/docs/en-GB/intlayer_with_nextjs_15.md +195 -0
- package/docs/en-GB/intlayer_with_nextjs_16.md +225 -0
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +165 -5
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +139 -4
- package/docs/en-GB/intlayer_with_react_router_v7.md +110 -0
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +260 -63
- package/docs/en-GB/intlayer_with_solid_start.md +12 -0
- package/docs/en-GB/intlayer_with_svelte_kit.md +109 -4
- package/docs/en-GB/intlayer_with_tanstack+solid.md +159 -6
- package/docs/en-GB/intlayer_with_tanstack.md +381 -111
- package/docs/en-GB/intlayer_with_vite+lit.md +2 -0
- package/docs/en-GB/intlayer_with_vite+preact.md +103 -4
- package/docs/en-GB/intlayer_with_vite+react.md +109 -0
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/en-GB/intlayer_with_vite+solid.md +80 -17
- package/docs/en-GB/intlayer_with_vite+svelte.md +132 -0
- package/docs/en-GB/intlayer_with_vite+vanilla.md +2 -0
- package/docs/en-GB/intlayer_with_vite+vue.md +168 -23
- package/docs/en-GB/live-sync.md +13 -2
- package/docs/en-GB/packages/elysia-intlayer/exports.md +134 -0
- package/docs/en-GB/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/en-GB/packages/intlayer/getDictionary.md +154 -0
- package/docs/en-GB/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/en-GB/packages/intlayer/getEnumeration.md +2 -0
- package/docs/en-GB/packages/intlayer/getIntlayer.md +196 -0
- package/docs/en-GB/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/en-GB/packages/intlayer/getLocalizedPath.md +33 -6
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/en-GB/packages/next-intlayer/t.md +20 -0
- package/docs/en-GB/packages/next-intlayer/useIntlayer.md +31 -4
- package/docs/en-GB/packages/next-intlayer/useLocale.md +2 -0
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/en-GB/packages/react-intlayer/useI18n.md +31 -0
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/en-GB/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/en-GB/per_locale_file.md +13 -13
- package/docs/en-GB/readme.md +3 -2
- package/docs/en-GB/releases/v6.md +30 -28
- package/docs/en-GB/self_hosting.md +60 -29
- package/docs/es/analytics.md +32 -11
- package/docs/es/benchmark/tanstack.md +6 -0
- package/docs/es/cli/ci.md +2 -0
- package/docs/es/cli/doc-review.md +13 -1
- package/docs/es/cli/fill.md +0 -8
- package/docs/es/cli/index.md +2 -0
- package/docs/es/cli/list_projects.md +0 -2
- package/docs/es/cli/login.md +28 -2
- package/docs/es/compat/next-intl.md +0 -2
- package/docs/es/compiler.md +14 -0
- package/docs/es/component_i18n.md +4 -0
- package/docs/es/configuration.md +7 -8
- package/docs/es/custom_domains.md +34 -0
- package/docs/es/custom_url_rewrites.md +7 -5
- package/docs/es/dictionary/enumeration.md +0 -154
- package/docs/es/dictionary/html.md +16 -16
- package/docs/es/dictionary/markdown.md +7 -3
- package/docs/es/dictionary/plurial.md +72 -275
- package/docs/es/dynamic_dictionaries/variants.md +24 -0
- package/docs/es/formatters.md +24 -113
- package/docs/es/how_works_intlayer.md +5 -0
- package/docs/es/intlayer_CMS.md +16 -8
- package/docs/es/intlayer_visual_editor.md +12 -0
- package/docs/es/intlayer_with_adonisjs.md +5 -3
- package/docs/es/intlayer_with_astro.md +24 -0
- package/docs/es/intlayer_with_astro_preact.md +6 -0
- package/docs/es/intlayer_with_create_react_app.md +55 -26
- package/docs/es/intlayer_with_elysia.md +339 -0
- package/docs/es/intlayer_with_express.md +11 -32
- package/docs/es/intlayer_with_fastify.md +5 -3
- package/docs/es/intlayer_with_hono.md +5 -3
- package/docs/es/intlayer_with_lynx+react.md +13 -0
- package/docs/es/intlayer_with_nestjs.md +19 -3
- package/docs/es/intlayer_with_nextjs_14.md +178 -50
- package/docs/es/intlayer_with_nextjs_15.md +197 -0
- package/docs/es/intlayer_with_nextjs_16.md +129 -66
- package/docs/es/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +145 -4
- package/docs/es/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/es/intlayer_with_react_router_v7.md +30 -0
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +28 -28
- package/docs/es/intlayer_with_solid_start.md +12 -0
- package/docs/es/intlayer_with_svelte_kit.md +6 -0
- package/docs/es/intlayer_with_tanstack+solid.md +157 -6
- package/docs/es/intlayer_with_tanstack.md +336 -192
- package/docs/es/intlayer_with_vite+lit.md +4 -0
- package/docs/es/intlayer_with_vite+preact.md +36 -4
- package/docs/es/intlayer_with_vite+react.md +2 -0
- package/docs/es/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/es/intlayer_with_vite+solid.md +11 -36
- package/docs/es/intlayer_with_vite+svelte.md +2 -0
- package/docs/es/intlayer_with_vite+vanilla.md +2 -0
- package/docs/es/intlayer_with_vite+vue.md +15 -2
- package/docs/es/live-sync.md +13 -4
- package/docs/es/packages/elysia-intlayer/exports.md +134 -0
- package/docs/es/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/es/packages/intlayer/getDictionary.md +155 -0
- package/docs/es/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/es/packages/intlayer/getEnumeration.md +2 -0
- package/docs/es/packages/intlayer/getIntlayer.md +197 -0
- package/docs/es/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/es/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/es/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/es/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/es/packages/intlayer/getTranslation.md +2 -0
- package/docs/es/packages/next-intlayer/t.md +20 -0
- package/docs/es/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/es/packages/next-intlayer/useLocale.md +2 -0
- package/docs/es/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/es/packages/react-intlayer/useI18n.md +31 -0
- package/docs/es/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/es/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/es/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/es/per_locale_file.md +13 -13
- package/docs/es/readme.md +3 -2
- package/docs/es/releases/v6.md +8 -2
- package/docs/es/releases/v9.md +2 -0
- package/docs/es/self_hosting.md +67 -24
- package/docs/fr/CI_CD.md +2 -0
- package/docs/fr/analytics.md +54 -11
- package/docs/fr/benchmark/tanstack.md +6 -0
- package/docs/fr/cli/ci.md +2 -0
- package/docs/fr/cli/doc-review.md +7 -1
- package/docs/fr/cli/fill.md +0 -8
- package/docs/fr/cli/index.md +2 -0
- package/docs/fr/cli/list_projects.md +0 -2
- package/docs/fr/cli/login.md +28 -0
- package/docs/fr/compiler.md +14 -0
- package/docs/fr/configuration.md +7 -10
- package/docs/fr/custom_domains.md +34 -0
- package/docs/fr/custom_url_rewrites.md +7 -5
- package/docs/fr/dictionary/condition.md +0 -201
- package/docs/fr/dictionary/html.md +17 -17
- package/docs/fr/dictionary/markdown.md +7 -3
- package/docs/fr/dictionary/plurial.md +79 -110
- package/docs/fr/dynamic_dictionaries/variants.md +24 -0
- package/docs/fr/formatters.md +0 -106
- package/docs/fr/how_works_intlayer.md +5 -2
- package/docs/fr/intlayer_CMS.md +26 -21
- package/docs/fr/intlayer_visual_editor.md +12 -0
- package/docs/fr/intlayer_with_adonisjs.md +5 -3
- package/docs/fr/intlayer_with_astro.md +24 -0
- package/docs/fr/intlayer_with_create_react_app.md +55 -0
- package/docs/fr/intlayer_with_elysia.md +339 -0
- package/docs/fr/intlayer_with_express.md +11 -69
- package/docs/fr/intlayer_with_fastify.md +5 -3
- package/docs/fr/intlayer_with_hono.md +5 -3
- package/docs/fr/intlayer_with_lynx+react.md +13 -0
- package/docs/fr/intlayer_with_nestjs.md +19 -3
- package/docs/fr/intlayer_with_nextjs_14.md +237 -9
- package/docs/fr/intlayer_with_nextjs_15.md +179 -8
- package/docs/fr/intlayer_with_nextjs_16.md +125 -29
- package/docs/fr/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +143 -4
- package/docs/fr/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/fr/intlayer_with_nuxt.md +29 -0
- package/docs/fr/intlayer_with_react_router_v7.md +31 -0
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +29 -1
- package/docs/fr/intlayer_with_solid_start.md +12 -0
- package/docs/fr/intlayer_with_svelte_kit.md +6 -0
- package/docs/fr/intlayer_with_tanstack+solid.md +157 -8
- package/docs/fr/intlayer_with_tanstack.md +302 -156
- package/docs/fr/intlayer_with_vite+lit.md +4 -0
- package/docs/fr/intlayer_with_vite+preact.md +36 -4
- package/docs/fr/intlayer_with_vite+react.md +2 -0
- package/docs/fr/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/fr/intlayer_with_vite+solid.md +11 -36
- package/docs/fr/intlayer_with_vite+svelte.md +2 -0
- package/docs/fr/intlayer_with_vite+vanilla.md +2 -0
- package/docs/fr/intlayer_with_vite+vue.md +15 -2
- package/docs/fr/live-sync.md +13 -2
- package/docs/fr/packages/elysia-intlayer/exports.md +134 -0
- package/docs/fr/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/fr/packages/intlayer/getDictionary.md +154 -0
- package/docs/fr/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/fr/packages/intlayer/getEnumeration.md +2 -0
- package/docs/fr/packages/intlayer/getIntlayer.md +196 -0
- package/docs/fr/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/fr/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/fr/packages/intlayer/getTranslation.md +2 -0
- package/docs/fr/packages/next-intlayer/t.md +20 -0
- package/docs/fr/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/fr/packages/next-intlayer/useLocale.md +2 -0
- package/docs/fr/packages/react-intlayer/useI18n.md +31 -0
- package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/fr/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/fr/per_locale_file.md +13 -13
- package/docs/fr/readme.md +3 -2
- package/docs/fr/releases/v6.md +8 -2
- package/docs/fr/releases/v9.md +2 -0
- package/docs/fr/self_hosting.md +67 -24
- package/docs/hi/benchmark/tanstack.md +6 -0
- package/docs/hi/cli/ci.md +2 -0
- package/docs/hi/cli/doc-review.md +10 -2
- package/docs/hi/cli/fill.md +0 -8
- package/docs/hi/cli/index.md +2 -0
- package/docs/hi/cli/list_projects.md +0 -2
- package/docs/hi/cli/login.md +28 -0
- package/docs/hi/compiler.md +14 -0
- package/docs/hi/configuration.md +7 -8
- package/docs/hi/custom_domains.md +33 -0
- package/docs/hi/custom_url_rewrites.md +7 -5
- package/docs/hi/dictionary/content_file.md +0 -2
- package/docs/hi/dictionary/html.md +36 -15
- package/docs/hi/dictionary/insertion.md +0 -14
- package/docs/hi/dictionary/markdown.md +31 -14
- package/docs/hi/dictionary/plurial.md +81 -113
- package/docs/hi/dynamic_dictionaries/variants.md +24 -0
- package/docs/hi/formatters.md +12 -37
- package/docs/hi/how_works_intlayer.md +8 -1
- package/docs/hi/interest_of_intlayer.md +16 -0
- package/docs/hi/intlayer_visual_editor.md +12 -0
- package/docs/hi/intlayer_with_adonisjs.md +5 -3
- package/docs/hi/intlayer_with_analog.md +17 -0
- package/docs/hi/intlayer_with_angular_19.md +20 -0
- package/docs/hi/intlayer_with_angular_21.md +17 -0
- package/docs/hi/intlayer_with_astro.md +43 -0
- package/docs/hi/intlayer_with_astro_lit.md +43 -0
- package/docs/hi/intlayer_with_astro_preact.md +49 -0
- package/docs/hi/intlayer_with_astro_react.md +43 -0
- package/docs/hi/intlayer_with_astro_solid.md +43 -0
- package/docs/hi/intlayer_with_astro_svelte.md +43 -0
- package/docs/hi/intlayer_with_astro_vanilla.md +43 -0
- package/docs/hi/intlayer_with_astro_vue.md +19 -0
- package/docs/hi/intlayer_with_create_react_app.md +53 -418
- package/docs/hi/intlayer_with_elysia.md +343 -0
- package/docs/hi/intlayer_with_express.md +9 -17
- package/docs/hi/intlayer_with_fastify.md +5 -3
- package/docs/hi/intlayer_with_hono.md +44 -3
- package/docs/hi/intlayer_with_lynx+react.md +25 -10
- package/docs/hi/intlayer_with_next-i18next.md +21 -0
- package/docs/hi/intlayer_with_nextjs_14.md +233 -34
- package/docs/hi/intlayer_with_nextjs_15.md +223 -8
- package/docs/hi/intlayer_with_nextjs_16.md +134 -10
- package/docs/hi/intlayer_with_nextjs_compiler.md +49 -5
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +162 -4
- package/docs/hi/intlayer_with_nextjs_page_router.md +28 -35
- package/docs/hi/intlayer_with_nuxt.md +46 -0
- package/docs/hi/intlayer_with_react_router_v7.md +49 -0
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +161 -45
- package/docs/hi/intlayer_with_solid_start.md +12 -0
- package/docs/hi/intlayer_with_storybook.md +17 -0
- package/docs/hi/intlayer_with_svelte_kit.md +25 -0
- package/docs/hi/intlayer_with_tanstack+solid.md +252 -6
- package/docs/hi/intlayer_with_tanstack.md +387 -157
- package/docs/hi/intlayer_with_vanilla.md +17 -0
- package/docs/hi/intlayer_with_vite+lit.md +21 -0
- package/docs/hi/intlayer_with_vite+preact.md +32 -99
- package/docs/hi/intlayer_with_vite+react.md +23 -7
- package/docs/hi/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/hi/intlayer_with_vite+solid.md +30 -25
- package/docs/hi/intlayer_with_vite+svelte.md +79 -0
- package/docs/hi/intlayer_with_vite+vanilla.md +19 -68
- package/docs/hi/intlayer_with_vite+vue.md +29 -9
- package/docs/hi/live-sync.md +39 -0
- package/docs/hi/packages/elysia-intlayer/exports.md +136 -0
- package/docs/hi/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/hi/packages/intlayer/getDictionary.md +156 -0
- package/docs/hi/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/hi/packages/intlayer/getEnumeration.md +2 -0
- package/docs/hi/packages/intlayer/getIntlayer.md +197 -0
- package/docs/hi/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/hi/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +6 -15
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/hi/packages/intlayer/getTranslation.md +2 -0
- package/docs/hi/packages/next-intlayer/t.md +20 -31
- package/docs/hi/packages/next-intlayer/useIntlayer.md +33 -0
- package/docs/hi/packages/next-intlayer/useLocale.md +2 -0
- package/docs/hi/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/hi/packages/react-intlayer/useI18n.md +31 -0
- package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/hi/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/hi/per_locale_file.md +13 -13
- package/docs/hi/readme.md +3 -2
- package/docs/hi/releases/v6.md +16 -2
- package/docs/hi/releases/v9.md +2 -0
- package/docs/hi/self_hosting.md +80 -26
- package/docs/id/benchmark/tanstack.md +6 -0
- package/docs/id/cli/ci.md +2 -0
- package/docs/id/cli/doc-review.md +9 -1
- package/docs/id/cli/fill.md +0 -8
- package/docs/id/cli/index.md +2 -0
- package/docs/id/cli/login.md +28 -0
- package/docs/id/compiler.md +14 -0
- package/docs/id/configuration.md +7 -8
- package/docs/id/custom_domains.md +34 -0
- package/docs/id/custom_url_rewrites.md +7 -5
- package/docs/id/dictionary/content_file.md +0 -29
- package/docs/id/dictionary/file.md +0 -166
- package/docs/id/dictionary/gender.md +0 -212
- package/docs/id/dictionary/html.md +134 -16
- package/docs/id/dictionary/insertion.md +0 -14
- package/docs/id/dictionary/markdown.md +31 -14
- package/docs/id/dictionary/plurial.md +79 -110
- package/docs/id/dynamic_dictionaries/variants.md +24 -0
- package/docs/id/formatters.md +12 -39
- package/docs/id/interest_of_intlayer.md +0 -2
- package/docs/id/intlayer_with_adonisjs.md +5 -3
- package/docs/id/intlayer_with_astro.md +24 -0
- package/docs/id/intlayer_with_astro_preact.md +6 -0
- package/docs/id/intlayer_with_create_react_app.md +43 -0
- package/docs/id/intlayer_with_elysia.md +343 -0
- package/docs/id/intlayer_with_express.md +5 -3
- package/docs/id/intlayer_with_fastify.md +5 -3
- package/docs/id/intlayer_with_hono.md +44 -3
- package/docs/id/intlayer_with_nestjs.md +5 -3
- package/docs/id/intlayer_with_nextjs_14.md +126 -7
- package/docs/id/intlayer_with_nextjs_15.md +103 -0
- package/docs/id/intlayer_with_nextjs_16.md +121 -2
- package/docs/id/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +141 -4
- package/docs/id/intlayer_with_nextjs_page_router.md +31 -24
- package/docs/id/intlayer_with_react_router_v7.md +30 -0
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +145 -50
- package/docs/id/intlayer_with_solid_start.md +12 -0
- package/docs/id/intlayer_with_svelte_kit.md +6 -0
- package/docs/id/intlayer_with_tanstack+solid.md +232 -6
- package/docs/id/intlayer_with_tanstack.md +370 -145
- package/docs/id/intlayer_with_vite+lit.md +4 -0
- package/docs/id/intlayer_with_vite+preact.md +34 -4
- package/docs/id/intlayer_with_vite+react.md +4 -0
- package/docs/id/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/id/intlayer_with_vite+solid.md +11 -27
- package/docs/id/intlayer_with_vite+svelte.md +27 -0
- package/docs/id/intlayer_with_vite+vanilla.md +2 -0
- package/docs/id/intlayer_with_vite+vue.md +13 -2
- package/docs/id/packages/elysia-intlayer/exports.md +136 -0
- package/docs/id/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/id/packages/intlayer/getDictionary.md +155 -0
- package/docs/id/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/id/packages/intlayer/getEnumeration.md +2 -0
- package/docs/id/packages/intlayer/getIntlayer.md +197 -0
- package/docs/id/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/id/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/id/packages/intlayer/getLocalizedUrl.md +11 -32
- package/docs/id/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/id/packages/intlayer/getTranslation.md +2 -0
- package/docs/id/packages/next-intlayer/t.md +20 -0
- package/docs/id/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/id/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/id/packages/react-intlayer/useI18n.md +31 -0
- package/docs/id/packages/react-intlayer/useIntlayer.md +0 -44
- package/docs/id/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/id/per_locale_file.md +13 -13
- package/docs/id/readme.md +3 -2
- package/docs/id/self_hosting.md +62 -31
- package/docs/it/benchmark/tanstack.md +6 -0
- package/docs/it/cli/ci.md +2 -0
- package/docs/it/cli/doc-review.md +9 -1
- package/docs/it/cli/fill.md +0 -8
- package/docs/it/cli/index.md +2 -0
- package/docs/it/cli/list_projects.md +0 -2
- package/docs/it/cli/login.md +28 -0
- package/docs/it/cli/watch.md +0 -2
- package/docs/it/compiler.md +14 -0
- package/docs/it/configuration.md +7 -8
- package/docs/it/custom_domains.md +34 -0
- package/docs/it/custom_url_rewrites.md +7 -5
- package/docs/it/dictionary/enumeration.md +30 -0
- package/docs/it/dictionary/file.md +0 -166
- package/docs/it/dictionary/html.md +18 -18
- package/docs/it/dictionary/markdown.md +7 -3
- package/docs/it/dictionary/plurial.md +70 -273
- package/docs/it/dynamic_dictionaries/variants.md +24 -0
- package/docs/it/formatters.md +24 -113
- package/docs/it/how_works_intlayer.md +8 -1
- package/docs/it/intlayer_CMS.md +26 -21
- package/docs/it/intlayer_visual_editor.md +12 -0
- package/docs/it/intlayer_with_adonisjs.md +5 -3
- package/docs/it/intlayer_with_astro.md +24 -0
- package/docs/it/intlayer_with_astro_preact.md +6 -0
- package/docs/it/intlayer_with_create_react_app.md +57 -38
- package/docs/it/intlayer_with_elysia.md +343 -0
- package/docs/it/intlayer_with_express.md +9 -3
- package/docs/it/intlayer_with_fastify.md +5 -3
- package/docs/it/intlayer_with_hono.md +44 -3
- package/docs/it/intlayer_with_lynx+react.md +13 -9
- package/docs/it/intlayer_with_nestjs.md +5 -3
- package/docs/it/intlayer_with_nextjs_14.md +239 -9
- package/docs/it/intlayer_with_nextjs_15.md +196 -20
- package/docs/it/intlayer_with_nextjs_16.md +106 -2
- package/docs/it/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +140 -4
- package/docs/it/intlayer_with_nextjs_page_router.md +6 -28
- package/docs/it/intlayer_with_react_router_v7.md +30 -0
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +30 -0
- package/docs/it/intlayer_with_solid_start.md +12 -0
- package/docs/it/intlayer_with_svelte_kit.md +6 -0
- package/docs/it/intlayer_with_tanstack+solid.md +157 -6
- package/docs/it/intlayer_with_tanstack.md +321 -171
- package/docs/it/intlayer_with_vite+lit.md +4 -0
- package/docs/it/intlayer_with_vite+preact.md +36 -4
- package/docs/it/intlayer_with_vite+react.md +4 -5
- package/docs/it/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/it/intlayer_with_vite+solid.md +11 -31
- package/docs/it/intlayer_with_vite+svelte.md +27 -0
- package/docs/it/intlayer_with_vite+vanilla.md +2 -0
- package/docs/it/intlayer_with_vite+vue.md +21 -2
- package/docs/it/live-sync.md +13 -2
- package/docs/it/packages/elysia-intlayer/exports.md +136 -0
- package/docs/it/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/it/packages/intlayer/getDictionary.md +154 -0
- package/docs/it/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/it/packages/intlayer/getEnumeration.md +2 -0
- package/docs/it/packages/intlayer/getIntlayer.md +197 -0
- package/docs/it/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/it/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/it/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/it/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/it/packages/intlayer/getTranslation.md +2 -0
- package/docs/it/packages/next-intlayer/t.md +20 -31
- package/docs/it/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/it/packages/next-intlayer/useLocale.md +2 -0
- package/docs/it/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/it/packages/react-intlayer/useI18n.md +31 -0
- package/docs/it/packages/react-intlayer/useIntlayer.md +0 -44
- package/docs/it/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/it/per_locale_file.md +13 -13
- package/docs/it/readme.md +3 -2
- package/docs/it/releases/v6.md +16 -2
- package/docs/it/releases/v8.md +2 -4
- package/docs/it/releases/v9.md +2 -0
- package/docs/it/self_hosting.md +61 -30
- package/docs/ja/analytics.md +32 -11
- package/docs/ja/benchmark/tanstack.md +6 -0
- package/docs/ja/cli/build.md +0 -14
- package/docs/ja/cli/ci.md +2 -0
- package/docs/ja/cli/doc-review.md +8 -0
- package/docs/ja/cli/fill.md +0 -8
- package/docs/ja/cli/index.md +2 -0
- package/docs/ja/cli/list_projects.md +0 -2
- package/docs/ja/cli/login.md +28 -0
- package/docs/ja/cli/push.md +0 -15
- package/docs/ja/compiler.md +14 -0
- package/docs/ja/configuration.md +7 -8
- package/docs/ja/custom_domains.md +32 -0
- package/docs/ja/custom_url_rewrites.md +7 -5
- package/docs/ja/dictionary/content_file.md +0 -13
- package/docs/ja/dictionary/html.md +19 -17
- package/docs/ja/dictionary/plurial.md +81 -115
- package/docs/ja/dynamic_dictionaries/variants.md +24 -0
- package/docs/ja/formatters.md +0 -164
- package/docs/ja/how_works_intlayer.md +7 -0
- package/docs/ja/interest_of_intlayer.md +18 -0
- package/docs/ja/intlayer_visual_editor.md +13 -1
- package/docs/ja/intlayer_with_adonisjs.md +5 -3
- package/docs/ja/intlayer_with_analog.md +19 -0
- package/docs/ja/intlayer_with_angular_19.md +17 -0
- package/docs/ja/intlayer_with_angular_21.md +17 -0
- package/docs/ja/intlayer_with_astro.md +41 -0
- package/docs/ja/intlayer_with_astro_lit.md +17 -0
- package/docs/ja/intlayer_with_astro_preact.md +17 -0
- package/docs/ja/intlayer_with_astro_react.md +17 -0
- package/docs/ja/intlayer_with_astro_solid.md +17 -0
- package/docs/ja/intlayer_with_astro_svelte.md +17 -0
- package/docs/ja/intlayer_with_astro_vanilla.md +17 -0
- package/docs/ja/intlayer_with_astro_vue.md +17 -0
- package/docs/ja/intlayer_with_create_react_app.md +55 -272
- package/docs/ja/intlayer_with_elysia.md +343 -0
- package/docs/ja/intlayer_with_express.md +11 -3
- package/docs/ja/intlayer_with_fastify.md +5 -3
- package/docs/ja/intlayer_with_hono.md +44 -3
- package/docs/ja/intlayer_with_lynx+react.md +27 -0
- package/docs/ja/intlayer_with_nestjs.md +19 -3
- package/docs/ja/intlayer_with_nextjs_14.md +198 -90
- package/docs/ja/intlayer_with_nextjs_15.md +217 -0
- package/docs/ja/intlayer_with_nextjs_16.md +123 -2
- package/docs/ja/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +169 -6
- package/docs/ja/intlayer_with_nextjs_page_router.md +2 -24
- package/docs/ja/intlayer_with_nuxt.md +17 -0
- package/docs/ja/intlayer_with_react_router_v7.md +147 -27
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +45 -0
- package/docs/ja/intlayer_with_solid_start.md +12 -0
- package/docs/ja/intlayer_with_storybook.md +17 -0
- package/docs/ja/intlayer_with_svelte_kit.md +527 -12
- package/docs/ja/intlayer_with_tanstack+solid.md +174 -8
- package/docs/ja/intlayer_with_tanstack.md +401 -215
- package/docs/ja/intlayer_with_vanilla.md +17 -0
- package/docs/ja/intlayer_with_vite+lit.md +21 -0
- package/docs/ja/intlayer_with_vite+preact.md +17 -4
- package/docs/ja/intlayer_with_vite+react.md +522 -0
- package/docs/ja/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ja/intlayer_with_vite+solid.md +28 -42
- package/docs/ja/intlayer_with_vite+svelte.md +54 -12
- package/docs/ja/intlayer_with_vite+vanilla.md +19 -0
- package/docs/ja/intlayer_with_vite+vue.md +32 -5
- package/docs/ja/packages/astro-intlayer/exports.md +0 -4
- package/docs/ja/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ja/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ja/packages/intlayer/getDictionary.md +155 -0
- package/docs/ja/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ja/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ja/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ja/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ja/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +14 -50
- package/docs/ja/packages/intlayer/getPrefix.md +0 -2
- package/docs/ja/packages/intlayer/getTranslation.md +2 -0
- package/docs/ja/packages/next-intlayer/t.md +20 -0
- package/docs/ja/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ja/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ja/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ja/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ja/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/ja/per_locale_file.md +13 -13
- package/docs/ja/readme.md +3 -2
- package/docs/ja/releases/v6.md +16 -2
- package/docs/ja/self_hosting.md +67 -23
- package/docs/ko/analytics.md +32 -11
- package/docs/ko/benchmark/tanstack.md +6 -0
- package/docs/ko/cli/ci.md +2 -0
- package/docs/ko/cli/doc-review.md +8 -0
- package/docs/ko/cli/fill.md +0 -8
- package/docs/ko/cli/index.md +2 -0
- package/docs/ko/cli/login.md +28 -0
- package/docs/ko/cli/push.md +0 -15
- package/docs/ko/compat/next-i18next.md +2 -0
- package/docs/ko/compiler.md +14 -0
- package/docs/ko/configuration.md +7 -8
- package/docs/ko/custom_domains.md +34 -0
- package/docs/ko/custom_url_rewrites.md +7 -5
- package/docs/ko/dictionary/html.md +3 -1
- package/docs/ko/dictionary/markdown.md +7 -3
- package/docs/ko/dictionary/plurial.md +79 -111
- package/docs/ko/dynamic_dictionaries/variants.md +24 -0
- package/docs/ko/formatters.md +0 -184
- package/docs/ko/how_works_intlayer.md +7 -0
- package/docs/ko/intlayer_visual_editor.md +12 -0
- package/docs/ko/intlayer_with_adonisjs.md +5 -3
- package/docs/ko/intlayer_with_analog.md +2 -0
- package/docs/ko/intlayer_with_astro.md +108 -66
- package/docs/ko/intlayer_with_astro_lit.md +110 -66
- package/docs/ko/intlayer_with_astro_preact.md +110 -66
- package/docs/ko/intlayer_with_astro_react.md +106 -62
- package/docs/ko/intlayer_with_astro_solid.md +106 -62
- package/docs/ko/intlayer_with_astro_svelte.md +108 -64
- package/docs/ko/intlayer_with_astro_vanilla.md +107 -63
- package/docs/ko/intlayer_with_astro_vue.md +83 -63
- package/docs/ko/intlayer_with_create_react_app.md +53 -2
- package/docs/ko/intlayer_with_elysia.md +343 -0
- package/docs/ko/intlayer_with_express.md +11 -3
- package/docs/ko/intlayer_with_fastify.md +5 -3
- package/docs/ko/intlayer_with_hono.md +44 -3
- package/docs/ko/intlayer_with_lynx+react.md +51 -0
- package/docs/ko/intlayer_with_nestjs.md +19 -3
- package/docs/ko/intlayer_with_nextjs_14.md +199 -50
- package/docs/ko/intlayer_with_nextjs_15.md +156 -2
- package/docs/ko/intlayer_with_nextjs_16.md +107 -0
- package/docs/ko/intlayer_with_nextjs_compiler.md +374 -40
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +152 -10
- package/docs/ko/intlayer_with_nextjs_page_router.md +13 -79
- package/docs/ko/intlayer_with_nuxt.md +29 -29
- package/docs/ko/intlayer_with_react_native+expo.md +2 -2
- package/docs/ko/intlayer_with_react_router_v7.md +138 -106
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +275 -51
- package/docs/ko/intlayer_with_solid_start.md +12 -0
- package/docs/ko/intlayer_with_storybook.md +0 -4
- package/docs/ko/intlayer_with_svelte_kit.md +38 -32
- package/docs/ko/intlayer_with_tanstack+solid.md +159 -8
- package/docs/ko/intlayer_with_tanstack.md +379 -182
- package/docs/ko/intlayer_with_vanilla.md +0 -2
- package/docs/ko/intlayer_with_vite+lit.md +4 -0
- package/docs/ko/intlayer_with_vite+preact.md +36 -4
- package/docs/ko/intlayer_with_vite+react.md +415 -0
- package/docs/ko/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/ko/intlayer_with_vite+solid.md +81 -8
- package/docs/ko/intlayer_with_vite+svelte.md +132 -99
- package/docs/ko/intlayer_with_vite+vanilla.md +2 -2
- package/docs/ko/intlayer_with_vite+vue.md +15 -0
- package/docs/ko/live-sync.md +0 -2
- package/docs/ko/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ko/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ko/packages/express-intlayer/t.md +1 -69
- package/docs/ko/packages/intlayer/getDictionary.md +155 -0
- package/docs/ko/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ko/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ko/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ko/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ko/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/ko/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +14 -35
- package/docs/ko/packages/intlayer/getPrefix.md +0 -2
- package/docs/ko/packages/intlayer/getTranslation.md +2 -0
- package/docs/ko/packages/next-intlayer/t.md +20 -31
- package/docs/ko/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ko/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ko/packages/next-intlayer/usePathname.md +0 -4
- package/docs/ko/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ko/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ko/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/ko/per_locale_file.md +13 -13
- package/docs/ko/readme.md +3 -2
- package/docs/ko/releases/v6.md +16 -2
- package/docs/ko/releases/v8.md +2 -4
- package/docs/ko/self_hosting.md +61 -30
- package/docs/nl/intlayer_with_fastify.md +5 -3
- package/docs/nl/intlayer_with_hono.md +5 -3
- package/docs/pl/benchmark/tanstack.md +6 -0
- package/docs/pl/cli/ci.md +2 -0
- package/docs/pl/cli/doc-review.md +9 -1
- package/docs/pl/cli/fill.md +0 -8
- package/docs/pl/cli/index.md +2 -0
- package/docs/pl/cli/list_projects.md +0 -2
- package/docs/pl/cli/login.md +28 -0
- package/docs/pl/cli/watch.md +0 -2
- package/docs/pl/compiler.md +16 -0
- package/docs/pl/configuration.md +7 -8
- package/docs/pl/custom_domains.md +31 -0
- package/docs/pl/custom_url_rewrites.md +7 -5
- package/docs/pl/dictionary/file.md +0 -166
- package/docs/pl/dictionary/gender.md +0 -2
- package/docs/pl/dictionary/html.md +18 -18
- package/docs/pl/dictionary/insertion.md +0 -14
- package/docs/pl/dictionary/markdown.md +31 -14
- package/docs/pl/dictionary/plurial.md +87 -119
- package/docs/pl/dynamic_dictionaries/variants.md +24 -0
- package/docs/pl/formatters.md +12 -39
- package/docs/pl/intlayer_with_adonisjs.md +5 -3
- package/docs/pl/intlayer_with_analog.md +17 -0
- package/docs/pl/intlayer_with_angular_19.md +17 -0
- package/docs/pl/intlayer_with_angular_21.md +17 -0
- package/docs/pl/intlayer_with_astro.md +113 -0
- package/docs/pl/intlayer_with_astro_lit.md +17 -0
- package/docs/pl/intlayer_with_astro_preact.md +23 -0
- package/docs/pl/intlayer_with_astro_react.md +17 -0
- package/docs/pl/intlayer_with_astro_solid.md +17 -0
- package/docs/pl/intlayer_with_astro_svelte.md +17 -0
- package/docs/pl/intlayer_with_astro_vanilla.md +17 -0
- package/docs/pl/intlayer_with_astro_vue.md +17 -0
- package/docs/pl/intlayer_with_create_react_app.md +43 -0
- package/docs/pl/intlayer_with_elysia.md +343 -0
- package/docs/pl/intlayer_with_express.md +5 -3
- package/docs/pl/intlayer_with_fastify.md +5 -3
- package/docs/pl/intlayer_with_hono.md +44 -3
- package/docs/pl/intlayer_with_lynx+react.md +17 -0
- package/docs/pl/intlayer_with_nextjs_14.md +143 -11
- package/docs/pl/intlayer_with_nextjs_15.md +117 -4
- package/docs/pl/intlayer_with_nextjs_16.md +122 -0
- package/docs/pl/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +158 -4
- package/docs/pl/intlayer_with_nextjs_page_router.md +91 -36
- package/docs/pl/intlayer_with_nuxt.md +17 -0
- package/docs/pl/intlayer_with_react_router_v7.md +47 -2
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +29 -25
- package/docs/pl/intlayer_with_solid_start.md +12 -0
- package/docs/pl/intlayer_with_storybook.md +17 -0
- package/docs/pl/intlayer_with_svelte_kit.md +23 -0
- package/docs/pl/intlayer_with_tanstack+solid.md +249 -6
- package/docs/pl/intlayer_with_tanstack.md +415 -151
- package/docs/pl/intlayer_with_vanilla.md +17 -0
- package/docs/pl/intlayer_with_vite+lit.md +21 -0
- package/docs/pl/intlayer_with_vite+preact.md +51 -0
- package/docs/pl/intlayer_with_vite+react.md +21 -0
- package/docs/pl/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/pl/intlayer_with_vite+solid.md +28 -27
- package/docs/pl/intlayer_with_vite+svelte.md +42 -0
- package/docs/pl/intlayer_with_vite+vanilla.md +19 -0
- package/docs/pl/intlayer_with_vite+vue.md +23 -52
- package/docs/pl/migration_from_i18next_to_intlayer.md +99 -0
- package/docs/pl/migration_from_next-intl_to_intlayer.md +0 -2
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +123 -0
- package/docs/pl/packages/elysia-intlayer/exports.md +136 -0
- package/docs/pl/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/pl/packages/intlayer/getDictionary.md +154 -0
- package/docs/pl/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/pl/packages/intlayer/getEnumeration.md +2 -0
- package/docs/pl/packages/intlayer/getIntlayer.md +197 -0
- package/docs/pl/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/pl/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +11 -25
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/pl/packages/intlayer/getTranslation.md +2 -0
- package/docs/pl/packages/next-intlayer/t.md +20 -0
- package/docs/pl/packages/next-intlayer/useIntlayer.md +6 -0
- package/docs/pl/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/pl/packages/react-intlayer/useI18n.md +9 -0
- package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -41
- package/docs/pl/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/pl/per_locale_file.md +13 -13
- package/docs/pl/readme.md +3 -2
- package/docs/pl/releases/v9.md +2 -0
- package/docs/pl/self_hosting.md +61 -30
- package/docs/pt/benchmark/tanstack.md +6 -0
- package/docs/pt/cli/ci.md +2 -0
- package/docs/pt/cli/doc-review.md +9 -1
- package/docs/pt/cli/fill.md +0 -8
- package/docs/pt/cli/index.md +2 -0
- package/docs/pt/cli/list_projects.md +0 -6
- package/docs/pt/cli/login.md +28 -2
- package/docs/pt/cli/watch.md +0 -2
- package/docs/pt/compiler.md +16 -0
- package/docs/pt/configuration.md +7 -8
- package/docs/pt/custom_domains.md +34 -0
- package/docs/pt/custom_url_rewrites.md +7 -5
- package/docs/pt/dictionary/html.md +20 -18
- package/docs/pt/dictionary/insertion.md +0 -14
- package/docs/pt/dictionary/markdown.md +31 -14
- package/docs/pt/dictionary/plurial.md +70 -273
- package/docs/pt/dynamic_dictionaries/variants.md +24 -0
- package/docs/pt/formatters.md +24 -137
- package/docs/pt/how_works_intlayer.md +5 -0
- package/docs/pt/intlayer_CMS.md +26 -21
- package/docs/pt/intlayer_visual_editor.md +12 -2
- package/docs/pt/intlayer_with_adonisjs.md +5 -3
- package/docs/pt/intlayer_with_astro.md +96 -0
- package/docs/pt/intlayer_with_astro_lit.md +0 -8
- package/docs/pt/intlayer_with_astro_preact.md +6 -0
- package/docs/pt/intlayer_with_create_react_app.md +55 -35
- package/docs/pt/intlayer_with_elysia.md +344 -0
- package/docs/pt/intlayer_with_express.md +11 -3
- package/docs/pt/intlayer_with_fastify.md +5 -3
- package/docs/pt/intlayer_with_hono.md +44 -3
- package/docs/pt/intlayer_with_lynx+react.md +13 -9
- package/docs/pt/intlayer_with_nestjs.md +19 -3
- package/docs/pt/intlayer_with_nextjs_14.md +237 -7
- package/docs/pt/intlayer_with_nextjs_15.md +200 -0
- package/docs/pt/intlayer_with_nextjs_16.md +105 -0
- package/docs/pt/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +141 -4
- package/docs/pt/intlayer_with_nextjs_page_router.md +4 -28
- package/docs/pt/intlayer_with_react_router_v7.md +37 -30
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +30 -2
- package/docs/pt/intlayer_with_solid_start.md +12 -0
- package/docs/pt/intlayer_with_svelte_kit.md +6 -0
- package/docs/pt/intlayer_with_tanstack+solid.md +157 -6
- package/docs/pt/intlayer_with_tanstack.md +332 -188
- package/docs/pt/intlayer_with_vite+lit.md +4 -0
- package/docs/pt/intlayer_with_vite+preact.md +34 -0
- package/docs/pt/intlayer_with_vite+react.md +2 -0
- package/docs/pt/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/pt/intlayer_with_vite+solid.md +11 -36
- package/docs/pt/intlayer_with_vite+svelte.md +4 -0
- package/docs/pt/intlayer_with_vite+vanilla.md +2 -0
- package/docs/pt/intlayer_with_vite+vue.md +24 -52
- package/docs/pt/live-sync.md +13 -2
- package/docs/pt/packages/elysia-intlayer/exports.md +136 -0
- package/docs/pt/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/pt/packages/intlayer/getDictionary.md +155 -0
- package/docs/pt/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/pt/packages/intlayer/getEnumeration.md +2 -0
- package/docs/pt/packages/intlayer/getIntlayer.md +197 -0
- package/docs/pt/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/pt/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/pt/packages/intlayer/getTranslation.md +2 -0
- package/docs/pt/packages/next-intlayer/t.md +20 -31
- package/docs/pt/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/pt/packages/next-intlayer/useLocale.md +2 -0
- package/docs/pt/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/pt/packages/react-intlayer/useI18n.md +31 -0
- package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/pt/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/pt/per_locale_file.md +13 -13
- package/docs/pt/readme.md +3 -2
- package/docs/pt/releases/v6.md +16 -2
- package/docs/pt/releases/v9.md +2 -0
- package/docs/pt/self_hosting.md +62 -31
- package/docs/ru/analytics.md +32 -11
- package/docs/ru/benchmark/tanstack.md +6 -0
- package/docs/ru/cli/ci.md +2 -0
- package/docs/ru/cli/doc-review.md +7 -1
- package/docs/ru/cli/fill.md +0 -8
- package/docs/ru/cli/index.md +2 -0
- package/docs/ru/cli/list_projects.md +0 -2
- package/docs/ru/cli/login.md +28 -0
- package/docs/ru/cli/watch.md +0 -2
- package/docs/ru/compiler.md +14 -0
- package/docs/ru/configuration.md +7 -8
- package/docs/ru/custom_domains.md +34 -0
- package/docs/ru/custom_url_rewrites.md +7 -5
- package/docs/ru/dictionary/condition.md +0 -163
- package/docs/ru/dictionary/enumeration.md +0 -183
- package/docs/ru/dictionary/file.md +0 -166
- package/docs/ru/dictionary/html.md +16 -14
- package/docs/ru/dictionary/markdown.md +10 -3
- package/docs/ru/dictionary/plurial.md +74 -276
- package/docs/ru/dictionary/translation.md +0 -133
- package/docs/ru/dynamic_dictionaries/variants.md +24 -0
- package/docs/ru/formatters.md +0 -158
- package/docs/ru/how_works_intlayer.md +8 -1
- package/docs/ru/intlayer_visual_editor.md +12 -0
- package/docs/ru/intlayer_with_adonisjs.md +5 -3
- package/docs/ru/intlayer_with_astro.md +24 -0
- package/docs/ru/intlayer_with_astro_lit.md +24 -0
- package/docs/ru/intlayer_with_astro_preact.md +24 -0
- package/docs/ru/intlayer_with_astro_react.md +24 -0
- package/docs/ru/intlayer_with_astro_solid.md +24 -0
- package/docs/ru/intlayer_with_astro_svelte.md +24 -0
- package/docs/ru/intlayer_with_astro_vanilla.md +24 -0
- package/docs/ru/intlayer_with_create_react_app.md +55 -32
- package/docs/ru/intlayer_with_elysia.md +343 -0
- package/docs/ru/intlayer_with_express.md +7 -91
- package/docs/ru/intlayer_with_fastify.md +5 -3
- package/docs/ru/intlayer_with_hono.md +48 -3
- package/docs/ru/intlayer_with_lynx+react.md +13 -0
- package/docs/ru/intlayer_with_nestjs.md +19 -3
- package/docs/ru/intlayer_with_nextjs_14.md +243 -36
- package/docs/ru/intlayer_with_nextjs_15.md +180 -4
- package/docs/ru/intlayer_with_nextjs_16.md +105 -0
- package/docs/ru/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +149 -4
- package/docs/ru/intlayer_with_nextjs_page_router.md +11 -84
- package/docs/ru/intlayer_with_react_router_v7.md +30 -0
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +30 -2
- package/docs/ru/intlayer_with_solid_start.md +12 -0
- package/docs/ru/intlayer_with_svelte_kit.md +6 -0
- package/docs/ru/intlayer_with_tanstack+solid.md +159 -8
- package/docs/ru/intlayer_with_tanstack.md +342 -170
- package/docs/ru/intlayer_with_vite+lit.md +4 -0
- package/docs/ru/intlayer_with_vite+preact.md +34 -4
- package/docs/ru/intlayer_with_vite+react.md +2 -0
- package/docs/ru/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ru/intlayer_with_vite+solid.md +11 -27
- package/docs/ru/intlayer_with_vite+svelte.md +29 -0
- package/docs/ru/intlayer_with_vite+vanilla.md +2 -0
- package/docs/ru/intlayer_with_vite+vue.md +10 -2
- package/docs/ru/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ru/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ru/packages/intlayer/getDictionary.md +155 -0
- package/docs/ru/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ru/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ru/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ru/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ru/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/ru/packages/intlayer/getTranslation.md +2 -0
- package/docs/ru/packages/next-intlayer/t.md +20 -31
- package/docs/ru/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ru/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ru/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ru/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ru/packages/react-intlayer/useLocale.md +0 -50
- package/docs/ru/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/ru/per_locale_file.md +14 -13
- package/docs/ru/readme.md +3 -2
- package/docs/ru/releases/v6.md +16 -5
- package/docs/ru/releases/v9.md +2 -0
- package/docs/ru/self_hosting.md +61 -30
- package/docs/tr/benchmark/tanstack.md +6 -0
- package/docs/tr/cli/ci.md +2 -0
- package/docs/tr/cli/doc-review.md +7 -1
- package/docs/tr/cli/fill.md +0 -8
- package/docs/tr/cli/index.md +2 -0
- package/docs/tr/cli/list_projects.md +0 -6
- package/docs/tr/cli/login.md +28 -0
- package/docs/tr/cli/watch.md +0 -2
- package/docs/tr/compiler.md +14 -0
- package/docs/tr/configuration.md +7 -8
- package/docs/tr/custom_domains.md +28 -0
- package/docs/tr/custom_url_rewrites.md +7 -5
- package/docs/tr/dictionary/html.md +35 -14
- package/docs/tr/dictionary/markdown.md +31 -14
- package/docs/tr/dictionary/plurial.md +83 -115
- package/docs/tr/dynamic_dictionaries/variants.md +24 -0
- package/docs/tr/formatters.md +0 -145
- package/docs/tr/intlayer_visual_editor.md +12 -0
- package/docs/tr/intlayer_with_adonisjs.md +5 -3
- package/docs/tr/intlayer_with_analog.md +2 -0
- package/docs/tr/intlayer_with_astro.md +107 -0
- package/docs/tr/intlayer_with_astro_lit.md +8 -8
- package/docs/tr/intlayer_with_astro_preact.md +14 -8
- package/docs/tr/intlayer_with_astro_react.md +8 -8
- package/docs/tr/intlayer_with_astro_solid.md +8 -8
- package/docs/tr/intlayer_with_astro_svelte.md +8 -8
- package/docs/tr/intlayer_with_astro_vanilla.md +8 -8
- package/docs/tr/intlayer_with_create_react_app.md +55 -0
- package/docs/tr/intlayer_with_elysia.md +343 -0
- package/docs/tr/intlayer_with_express.md +5 -3
- package/docs/tr/intlayer_with_fastify.md +5 -3
- package/docs/tr/intlayer_with_hono.md +44 -3
- package/docs/tr/intlayer_with_lynx+react.md +8 -0
- package/docs/tr/intlayer_with_nestjs.md +19 -3
- package/docs/tr/intlayer_with_nextjs_14.md +361 -4
- package/docs/tr/intlayer_with_nextjs_15.md +201 -0
- package/docs/tr/intlayer_with_nextjs_16.md +105 -0
- package/docs/tr/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +123 -13
- package/docs/tr/intlayer_with_nextjs_page_router.md +4 -28
- package/docs/tr/intlayer_with_react_router_v7.md +30 -0
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +30 -2
- package/docs/tr/intlayer_with_solid_start.md +12 -0
- package/docs/tr/intlayer_with_svelte_kit.md +6 -0
- package/docs/tr/intlayer_with_tanstack+solid.md +232 -6
- package/docs/tr/intlayer_with_tanstack.md +351 -157
- package/docs/tr/intlayer_with_vite+lit.md +4 -0
- package/docs/tr/intlayer_with_vite+preact.md +34 -4
- package/docs/tr/intlayer_with_vite+react.md +4 -0
- package/docs/tr/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/tr/intlayer_with_vite+solid.md +11 -27
- package/docs/tr/intlayer_with_vite+svelte.md +29 -0
- package/docs/tr/intlayer_with_vite+vanilla.md +2 -0
- package/docs/tr/intlayer_with_vite+vue.md +15 -42
- package/docs/tr/live-sync.md +13 -2
- package/docs/tr/packages/elysia-intlayer/exports.md +136 -0
- package/docs/tr/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/tr/packages/intlayer/getDictionary.md +155 -0
- package/docs/tr/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/tr/packages/intlayer/getEnumeration.md +2 -0
- package/docs/tr/packages/intlayer/getIntlayer.md +197 -0
- package/docs/tr/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/tr/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +11 -0
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/tr/packages/intlayer/getTranslation.md +2 -0
- package/docs/tr/packages/next-intlayer/t.md +20 -0
- package/docs/tr/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/tr/packages/next-intlayer/useLocale.md +2 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/tr/packages/react-intlayer/useI18n.md +31 -0
- package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/tr/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/tr/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/tr/per_locale_file.md +13 -13
- package/docs/tr/readme.md +3 -2
- package/docs/tr/releases/v6.md +16 -2
- package/docs/tr/self_hosting.md +68 -25
- package/docs/uk/CI_CD.md +2 -0
- package/docs/uk/benchmark/tanstack.md +6 -0
- package/docs/uk/cli/ci.md +2 -0
- package/docs/uk/cli/doc-review.md +9 -1
- package/docs/uk/cli/fill.md +0 -8
- package/docs/uk/cli/index.md +2 -0
- package/docs/uk/cli/login.md +28 -0
- package/docs/uk/compiler.md +14 -0
- package/docs/uk/configuration.md +7 -8
- package/docs/uk/custom_domains.md +35 -0
- package/docs/uk/custom_url_rewrites.md +7 -5
- package/docs/uk/dictionary/file.md +0 -166
- package/docs/uk/dictionary/gender.md +0 -212
- package/docs/uk/dictionary/html.md +134 -16
- package/docs/uk/dictionary/markdown.md +31 -14
- package/docs/uk/dictionary/plurial.md +85 -116
- package/docs/uk/dynamic_dictionaries/variants.md +24 -0
- package/docs/uk/formatters.md +0 -139
- package/docs/uk/how_works_intlayer.md +2 -0
- package/docs/uk/interest_of_intlayer.md +0 -2
- package/docs/uk/intlayer_with_adonisjs.md +5 -3
- package/docs/uk/intlayer_with_analog.md +2 -0
- package/docs/uk/intlayer_with_astro.md +24 -0
- package/docs/uk/intlayer_with_astro_preact.md +6 -0
- package/docs/uk/intlayer_with_create_react_app.md +43 -0
- package/docs/uk/intlayer_with_elysia.md +343 -0
- package/docs/uk/intlayer_with_express.md +5 -3
- package/docs/uk/intlayer_with_fastify.md +5 -3
- package/docs/uk/intlayer_with_hono.md +44 -3
- package/docs/uk/intlayer_with_lynx+react.md +0 -2
- package/docs/uk/intlayer_with_nestjs.md +5 -3
- package/docs/uk/intlayer_with_nextjs_14.md +126 -7
- package/docs/uk/intlayer_with_nextjs_15.md +102 -242
- package/docs/uk/intlayer_with_nextjs_16.md +105 -0
- package/docs/uk/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +125 -4
- package/docs/uk/intlayer_with_nextjs_page_router.md +4 -28
- package/docs/uk/intlayer_with_nuxt.md +29 -0
- package/docs/uk/intlayer_with_react_router_v7.md +28 -0
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +30 -2
- package/docs/uk/intlayer_with_solid_start.md +12 -0
- package/docs/uk/intlayer_with_svelte_kit.md +2 -0
- package/docs/uk/intlayer_with_tanstack+solid.md +233 -7
- package/docs/uk/intlayer_with_tanstack.md +381 -159
- package/docs/uk/intlayer_with_vite+lit.md +4 -0
- package/docs/uk/intlayer_with_vite+preact.md +6 -4
- package/docs/uk/intlayer_with_vite+react.md +4 -0
- package/docs/uk/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/uk/intlayer_with_vite+solid.md +11 -27
- package/docs/uk/intlayer_with_vite+svelte.md +4 -0
- package/docs/uk/intlayer_with_vite+vanilla.md +2 -0
- package/docs/uk/intlayer_with_vite+vue.md +8 -2
- package/docs/uk/packages/elysia-intlayer/exports.md +136 -0
- package/docs/uk/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/uk/packages/intlayer/getDictionary.md +155 -0
- package/docs/uk/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/uk/packages/intlayer/getEnumeration.md +2 -0
- package/docs/uk/packages/intlayer/getIntlayer.md +197 -0
- package/docs/uk/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/uk/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/uk/packages/intlayer/getTranslation.md +2 -0
- package/docs/uk/packages/next-intlayer/t.md +20 -2
- package/docs/uk/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/uk/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/uk/packages/react-intlayer/useI18n.md +31 -0
- package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/uk/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/uk/readme.md +3 -2
- package/docs/uk/releases/v8.md +2 -4
- package/docs/uk/releases/v9.md +2 -0
- package/docs/uk/self_hosting.md +61 -29
- package/docs/ur/intlayer_with_fastify.md +5 -3
- package/docs/ur/intlayer_with_hono.md +5 -3
- package/docs/vi/benchmark/tanstack.md +6 -0
- package/docs/vi/cli/ci.md +2 -0
- package/docs/vi/cli/doc-review.md +9 -1
- package/docs/vi/cli/fill.md +0 -8
- package/docs/vi/cli/index.md +2 -0
- package/docs/vi/cli/list_projects.md +0 -2
- package/docs/vi/cli/login.md +28 -2
- package/docs/vi/compiler.md +14 -0
- package/docs/vi/configuration.md +7 -8
- package/docs/vi/custom_domains.md +33 -0
- package/docs/vi/custom_url_rewrites.md +7 -5
- package/docs/vi/dictionary/file.md +0 -166
- package/docs/vi/dictionary/gender.md +0 -2
- package/docs/vi/dictionary/html.md +134 -16
- package/docs/vi/dictionary/insertion.md +0 -14
- package/docs/vi/dictionary/markdown.md +31 -14
- package/docs/vi/dictionary/plurial.md +81 -113
- package/docs/vi/dynamic_dictionaries/variants.md +24 -0
- package/docs/vi/formatters.md +12 -39
- package/docs/vi/interest_of_intlayer.md +0 -2
- package/docs/vi/intlayer_with_adonisjs.md +5 -3
- package/docs/vi/intlayer_with_analog.md +2 -0
- package/docs/vi/intlayer_with_astro.md +24 -0
- package/docs/vi/intlayer_with_astro_preact.md +6 -0
- package/docs/vi/intlayer_with_create_react_app.md +43 -0
- package/docs/vi/intlayer_with_elysia.md +343 -0
- package/docs/vi/intlayer_with_fastify.md +5 -3
- package/docs/vi/intlayer_with_hono.md +44 -3
- package/docs/vi/intlayer_with_nextjs_14.md +126 -7
- package/docs/vi/intlayer_with_nextjs_15.md +137 -147
- package/docs/vi/intlayer_with_nextjs_16.md +105 -0
- package/docs/vi/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +161 -4
- package/docs/vi/intlayer_with_nextjs_page_router.md +67 -29
- package/docs/vi/intlayer_with_nuxt.md +29 -0
- package/docs/vi/intlayer_with_react_router_v7.md +30 -0
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +147 -52
- package/docs/vi/intlayer_with_solid_start.md +12 -0
- package/docs/vi/intlayer_with_svelte_kit.md +6 -0
- package/docs/vi/intlayer_with_tanstack+solid.md +232 -6
- package/docs/vi/intlayer_with_tanstack.md +412 -167
- package/docs/vi/intlayer_with_vite+lit.md +4 -0
- package/docs/vi/intlayer_with_vite+preact.md +28 -4
- package/docs/vi/intlayer_with_vite+react.md +5 -3
- package/docs/vi/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/vi/intlayer_with_vite+solid.md +11 -27
- package/docs/vi/intlayer_with_vite+svelte.md +27 -0
- package/docs/vi/intlayer_with_vite+vanilla.md +2 -0
- package/docs/vi/intlayer_with_vite+vue.md +13 -2
- package/docs/vi/packages/elysia-intlayer/exports.md +136 -0
- package/docs/vi/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/vi/packages/intlayer/getDictionary.md +155 -0
- package/docs/vi/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/vi/packages/intlayer/getEnumeration.md +2 -0
- package/docs/vi/packages/intlayer/getIntlayer.md +197 -0
- package/docs/vi/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/vi/packages/intlayer/getLocalizedPath.md +34 -7
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +11 -32
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/vi/packages/intlayer/getTranslation.md +2 -0
- package/docs/vi/packages/next-intlayer/t.md +20 -0
- package/docs/vi/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/vi/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/vi/packages/react-intlayer/useI18n.md +31 -0
- package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/vi/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/vi/per_locale_file.md +13 -13
- package/docs/vi/readme.md +3 -2
- package/docs/vi/self_hosting.md +61 -30
- package/docs/zh/analytics.md +32 -11
- package/docs/zh/benchmark/tanstack.md +6 -0
- package/docs/zh/cli/ci.md +2 -0
- package/docs/zh/cli/doc-review.md +7 -1
- package/docs/zh/cli/fill.md +0 -8
- package/docs/zh/cli/index.md +2 -0
- package/docs/zh/cli/list_projects.md +0 -2
- package/docs/zh/cli/login.md +28 -0
- package/docs/zh/cli/push.md +0 -15
- package/docs/zh/compiler.md +14 -0
- package/docs/zh/configuration.md +7 -8
- package/docs/zh/custom_domains.md +27 -0
- package/docs/zh/custom_url_rewrites.md +7 -5
- package/docs/zh/dictionary/content_file.md +0 -10
- package/docs/zh/dictionary/html.md +16 -14
- package/docs/zh/dictionary/markdown.md +7 -3
- package/docs/zh/dictionary/plurial.md +79 -110
- package/docs/zh/dynamic_dictionaries/variants.md +24 -0
- package/docs/zh/formatters.md +0 -146
- package/docs/zh/how_works_intlayer.md +5 -0
- package/docs/zh/interest_of_intlayer.md +19 -0
- package/docs/zh/intlayer_visual_editor.md +12 -0
- package/docs/zh/intlayer_with_adonisjs.md +5 -3
- package/docs/zh/intlayer_with_analog.md +19 -0
- package/docs/zh/intlayer_with_angular_19.md +17 -0
- package/docs/zh/intlayer_with_angular_21.md +17 -0
- package/docs/zh/intlayer_with_astro.md +18 -2
- package/docs/zh/intlayer_with_astro_lit.md +30 -8
- package/docs/zh/intlayer_with_astro_preact.md +36 -8
- package/docs/zh/intlayer_with_astro_react.md +30 -8
- package/docs/zh/intlayer_with_astro_solid.md +30 -8
- package/docs/zh/intlayer_with_astro_svelte.md +30 -8
- package/docs/zh/intlayer_with_astro_vanilla.md +30 -8
- package/docs/zh/intlayer_with_astro_vue.md +22 -0
- package/docs/zh/intlayer_with_create_react_app.md +10 -2
- package/docs/zh/intlayer_with_elysia.md +343 -0
- package/docs/zh/intlayer_with_express.md +11 -3
- package/docs/zh/intlayer_with_fastify.md +5 -3
- package/docs/zh/intlayer_with_hono.md +5 -3
- package/docs/zh/intlayer_with_lynx+react.md +65 -0
- package/docs/zh/intlayer_with_nestjs.md +19 -3
- package/docs/zh/intlayer_with_nextjs_14.md +123 -111
- package/docs/zh/intlayer_with_nextjs_15.md +181 -0
- package/docs/zh/intlayer_with_nextjs_16.md +104 -0
- package/docs/zh/intlayer_with_nextjs_compiler.md +51 -9
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +146 -582
- package/docs/zh/intlayer_with_nextjs_page_router.md +14 -27
- package/docs/zh/intlayer_with_nuxt.md +17 -0
- package/docs/zh/intlayer_with_react_router_v7.md +176 -0
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +105 -4
- package/docs/zh/intlayer_with_solid_start.md +12 -0
- package/docs/zh/intlayer_with_storybook.md +17 -0
- package/docs/zh/intlayer_with_svelte_kit.md +17 -0
- package/docs/zh/intlayer_with_tanstack+solid.md +178 -10
- package/docs/zh/intlayer_with_tanstack.md +369 -162
- package/docs/zh/intlayer_with_vanilla.md +17 -0
- package/docs/zh/intlayer_with_vite+lit.md +19 -0
- package/docs/zh/intlayer_with_vite+preact.md +90 -48
- package/docs/zh/intlayer_with_vite+react.md +19 -0
- package/docs/zh/intlayer_with_vite+solid.md +11 -24
- package/docs/zh/intlayer_with_vite+svelte.md +14 -16
- package/docs/zh/intlayer_with_vite+vanilla.md +17 -0
- package/docs/zh/intlayer_with_vite+vue.md +15 -4
- package/docs/zh/live-sync.md +39 -2
- package/docs/zh/packages/elysia-intlayer/exports.md +136 -0
- package/docs/zh/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/zh/packages/intlayer/getDictionary.md +155 -0
- package/docs/zh/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/zh/packages/intlayer/getEnumeration.md +2 -0
- package/docs/zh/packages/intlayer/getIntlayer.md +197 -0
- package/docs/zh/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/zh/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/zh/packages/intlayer/getLocalizedPath.md +33 -7
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/zh/packages/intlayer/getPrefix.md +0 -2
- package/docs/zh/packages/intlayer/getTranslation.md +2 -0
- package/docs/zh/packages/next-intlayer/t.md +20 -0
- package/docs/zh/packages/next-intlayer/useIntlayer.md +32 -0
- package/docs/zh/packages/next-intlayer/useLocale.md +2 -0
- package/docs/zh/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/zh/packages/react-intlayer/useI18n.md +31 -0
- package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/zh/packages/vite-intlayer/exports.md +0 -6
- package/docs/zh/packages/vite-intlayer/intlayerPrune.md +2 -0
- package/docs/zh/per_locale_file.md +13 -13
- package/docs/zh/releases/v6.md +16 -2
- package/docs/zh/self_hosting.md +61 -29
- package/package.json +7 -7
- package/src/generated/docs.entry.ts +140 -0
|
@@ -31,6 +31,8 @@ author: aymericzip
|
|
|
31
31
|
|
|
32
32
|
Функція `getLocalizedPath` перетворює канонічний шлях (внутрішній шлях додатка) у його локалізований еквівалент на основі вказаної локалі та правил переписування. Вона особливо корисна для генерації SEO-дружніх URL-адрес, що відрізняються залежно від мови.
|
|
33
33
|
|
|
34
|
+
Це відносний аналог [`getLocalizedUrl`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/packages/intlayer/getLocalizedUrl.md) — для відносного вводу обидва повертають одне й те саме значення. На відміну від `getLocalizedUrl`, він ніколи не повертає абсолютний URL: конфігурація `domains` ігнорується, тому локаль, обслужена з власного домену, все одно повертає шлях. Абсолютний вввід прийнятий, але його походження видаляється — зберігаються лише його шлях, рядок запиту та хеш.
|
|
35
|
+
|
|
34
36
|
**Ключові можливості:**
|
|
35
37
|
|
|
36
38
|
- Підтримує динамічні параметри маршруту з використанням синтаксису `[param]`.
|
|
@@ -60,13 +62,17 @@ getLocalizedPath(
|
|
|
60
62
|
- **Тип**: `string`
|
|
61
63
|
- **Обов'язковий**: Так
|
|
62
64
|
|
|
63
|
-
- `locale: Locales`
|
|
64
|
-
- **Опис**: Цільова локаль, для якої шлях має бути локалізований.
|
|
65
|
-
- **Тип**: `Locales`
|
|
66
|
-
- **Обов'язковий**: Так
|
|
67
|
-
|
|
68
65
|
### Необов'язкові параметри
|
|
69
66
|
|
|
67
|
+
- `locale?: Locales`
|
|
68
|
+
- **Description**: Цільовий локаль, для якого слід локалізувати шлях.
|
|
69
|
+
- **Type**: `Locales`
|
|
70
|
+
- **Default**: Локаль за замовчуванням конфігурації вашого проекту.
|
|
71
|
+
|
|
72
|
+
- `options?: object`
|
|
73
|
+
- **Description**: Перевизначення маршрутизації. Кожен запис за замовчуванням використовує конфігурацію вашого проекту.
|
|
74
|
+
- **Type**: `object`
|
|
75
|
+
|
|
70
76
|
- `rewriteRules?: RoutingConfig['rewrite']`
|
|
71
77
|
- **Опис**: Об'єкт, що визначає кастомні правила переписування. Якщо не вказано, використовується значення `routing.rewrite` з конфігурації вашого проєкту.
|
|
72
78
|
- **Тип**: `RoutingConfig['rewrite']`
|
|
@@ -79,6 +85,28 @@ getLocalizedPath(
|
|
|
79
85
|
- **Тип**: `string`
|
|
80
86
|
- **Опис**: Локалізований шлях для зазначеної локалі.
|
|
81
87
|
|
|
88
|
+
Тип звужується на основі правил перезапису, оголошених у вашій конфігурації, тому редактор показує розташовану шляхом, а не звичайний `string`:
|
|
89
|
+
|
|
90
|
+
```typescript codeFormat="typescript"
|
|
91
|
+
// Конфігурація: режим 'prefix-no-default', defaultLocale 'en',
|
|
92
|
+
// { '/about': { fr: '/a-propos' }, '/product/[id]': { fr: '/produit/[id]' } }
|
|
93
|
+
const about = getLocalizedPath("/about", Locales.FRENCH);
|
|
94
|
+
// ^? '/fr/a-propos'
|
|
95
|
+
const product = getLocalizedPath("/product/123", Locales.FRENCH);
|
|
96
|
+
// ^? '/fr/produit/123'
|
|
97
|
+
const contact = getLocalizedPath("/contact", Locales.FRENCH);
|
|
98
|
+
// ^? '/fr/contact' (немає правила переписування, застосовується лише префікс)
|
|
99
|
+
const home = getLocalizedPath("/", Locales.FRENCH);
|
|
100
|
+
// ^? '/fr'
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Те саме звуження поширюється на [`getLocalizedUrl`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/packages/intlayer/getLocalizedUrl.md), яка застосовує правила переписування перед додаванням префікса локалі.
|
|
104
|
+
|
|
105
|
+
Два випадки залишаються розширеними до `string`, оскільки вони не можуть бути розв'язані під час компіляції:
|
|
106
|
+
|
|
107
|
+
- шлях, який не є рядковим літералом (наприклад, побудований зі змінної);
|
|
108
|
+
- шлях, який відповідає правилу з використанням багатосегментного або необов'язкового параметра (`[...slug]`, `[[...slug]]`, `:param?`).
|
|
109
|
+
|
|
82
110
|
---
|
|
83
111
|
|
|
84
112
|
## Приклад використання
|
|
@@ -126,8 +154,6 @@ getLocalizedPath("/contact", Locales.FRENCH, manualRules);
|
|
|
126
154
|
// Вивід: "/contactez-nous"
|
|
127
155
|
```
|
|
128
156
|
|
|
129
|
-
---
|
|
130
|
-
|
|
131
157
|
### Пропуск локалі
|
|
132
158
|
|
|
133
159
|
Коли локаль не вказана, шлях локалізується для налаштованої локалі за замовчуванням:
|
|
@@ -31,6 +31,8 @@ author: aymericzip
|
|
|
31
31
|
|
|
32
32
|
Функція `getTranslationContent` отримує вміст, що відповідає певній локалі, із набору налаштовуваного мовного вмісту. Якщо вказаної локалі не знайдено, вона за замовчуванням повертає вміст для локалі за замовчуванням, налаштованої в проєкті.
|
|
33
33
|
|
|
34
|
+
Для більш детальної інформації про те, як оголошувати переклади, див. [документацію Translation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/dictionary/translation.md).
|
|
35
|
+
|
|
34
36
|
## Параметри
|
|
35
37
|
|
|
36
38
|
- `languageContent: CustomizableLanguageContent<Content>`
|
|
@@ -165,6 +165,23 @@ const greeting = t(translations);
|
|
|
165
165
|
|
|
166
166
|
#### Приклад:
|
|
167
167
|
|
|
168
|
+
<Tabs>
|
|
169
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
170
|
+
|
|
171
|
+
```tsx codeFormat={["typescript", "esm", "commonjs"]}
|
|
172
|
+
import type { FC, ReactNode } from "react";
|
|
173
|
+
import type { Locales } from "intlayer";
|
|
174
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
175
|
+
|
|
176
|
+
const Page: FC<{ locale: Locales; children: ReactNode }> = ({
|
|
177
|
+
locale,
|
|
178
|
+
children,
|
|
179
|
+
}) => <IntlayerProvider locale={locale}>{children}</IntlayerProvider>;
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
</Tab>
|
|
183
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
184
|
+
|
|
168
185
|
```tsx codeFormat={["typescript", "esm", "commonjs"]}
|
|
169
186
|
import type { FC } from "react";
|
|
170
187
|
import type { Locales } from "intlayer";
|
|
@@ -180,6 +197,9 @@ const Page: FC<{ locale: Locales }> = ({ locale }) => (
|
|
|
180
197
|
);
|
|
181
198
|
```
|
|
182
199
|
|
|
200
|
+
</Tab>
|
|
201
|
+
</Tabs>
|
|
202
|
+
|
|
183
203
|
---
|
|
184
204
|
|
|
185
205
|
## Загальні помилки та усунення несправностей
|
|
@@ -223,8 +243,6 @@ const text = t(translations);
|
|
|
223
243
|
|
|
224
244
|
Для детальнішого опису використання та просунутих можливостей див. документацію [next-intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_visual_editor.md).
|
|
225
245
|
|
|
226
|
-
///
|
|
227
|
-
|
|
228
246
|
---
|
|
229
247
|
|
|
230
248
|
**Примітка**: Не забудьте правильно налаштувати ваші `IntlayerClientProvider` та `IntlayerServerProvider`, щоб поточна локаль коректно передавалася вашим компонентам. Це критично для того, щоб функція `t` повертала правильні переклади.
|
|
@@ -79,6 +79,34 @@ author: aymericzip
|
|
|
79
79
|
|
|
80
80
|
Ось як ви можете реалізувати хук `useIntlayer` на сторінці Next.js, щоб динамічно завантажувати локалізований контент залежно від поточної локалі застосунку:
|
|
81
81
|
|
|
82
|
+
<Tabs>
|
|
83
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
84
|
+
|
|
85
|
+
```tsx fileName="src/pages/[locale]/index.tsx" codeFormat={["typescript", "esm"]}
|
|
86
|
+
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
87
|
+
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
88
|
+
import { type NextPageIntlayer } from "next-intlayer";
|
|
89
|
+
import { useIntlayer } from "next-intlayer";
|
|
90
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
91
|
+
|
|
92
|
+
const HomePage: NextPageIntlayer = async ({ params }) => {
|
|
93
|
+
const { locale } = await params;
|
|
94
|
+
|
|
95
|
+
const content = useIntlayer("homepage", locale);
|
|
96
|
+
|
|
97
|
+
return (
|
|
98
|
+
<IntlayerProvider locale={locale}>
|
|
99
|
+
<p>{content.introduction}</p>
|
|
100
|
+
<ClientComponentExample />
|
|
101
|
+
<ServerComponentExample />
|
|
102
|
+
</IntlayerProvider>
|
|
103
|
+
);
|
|
104
|
+
};
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
</Tab>
|
|
108
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
109
|
+
|
|
82
110
|
```tsx fileName="src/pages/[locale]/index.tsx" codeFormat={["typescript", "esm"]}
|
|
83
111
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
84
112
|
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
@@ -104,6 +132,9 @@ const HomePage: NextPageIntlayer = async ({ params }) => {
|
|
|
104
132
|
};
|
|
105
133
|
```
|
|
106
134
|
|
|
135
|
+
</Tab>
|
|
136
|
+
</Tabs>
|
|
137
|
+
|
|
107
138
|
```tsx fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
108
139
|
"use-client";
|
|
109
140
|
|
|
@@ -30,8 +30,6 @@ Hook `useDictionary` дозволяє обробляти об'єкт, який
|
|
|
30
30
|
|
|
31
31
|
## Інтеграція на сервері
|
|
32
32
|
|
|
33
|
-
Якщо ви використовуєте хук `useDictionary` поза межами `IntlayerProvider`, локаль має бути явно передана як параметр під час рендерингу компонента:
|
|
34
|
-
|
|
35
33
|
```tsx fileName="./ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
36
34
|
import type { FC } from "react";
|
|
37
35
|
import { useDictionary } from "react-intlayer/server";
|
|
@@ -77,6 +77,34 @@ author: aymericzip
|
|
|
77
77
|
|
|
78
78
|
Приклади використання хуку `useI18n` у React-компонентах:
|
|
79
79
|
|
|
80
|
+
<Tabs>
|
|
81
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
82
|
+
|
|
83
|
+
```tsx fileName="src/App.tsx" codeFormat={["typescript", "esm"]}
|
|
84
|
+
import type { FC } from "react";
|
|
85
|
+
import { ClientComponentExample, ServerComponentExample } from "@components";
|
|
86
|
+
import { IntlayerProvider } from "react-intlayer";
|
|
87
|
+
import { useI18n } from "react-intlayer/server";
|
|
88
|
+
import { Locales } from "intlayer";
|
|
89
|
+
|
|
90
|
+
const App: FC<{ locale: Locales }> = ({ locale }) => {
|
|
91
|
+
const t = useI18n("home-page", locale);
|
|
92
|
+
|
|
93
|
+
return (
|
|
94
|
+
<>
|
|
95
|
+
<p>{t("introduction")}</p>
|
|
96
|
+
<IntlayerProvider locale={locale}>
|
|
97
|
+
<ClientComponentExample />
|
|
98
|
+
</IntlayerProvider>
|
|
99
|
+
<ServerComponentExample />
|
|
100
|
+
</>
|
|
101
|
+
);
|
|
102
|
+
};
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
</Tab>
|
|
106
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
107
|
+
|
|
80
108
|
```tsx fileName="src/App.tsx" codeFormat={["typescript", "esm"]}
|
|
81
109
|
import type { FC } from "react";
|
|
82
110
|
import { ClientComponentExample, ServerComponentExample } from "@components";
|
|
@@ -101,6 +129,9 @@ const App: FC<{ locale: Locales }> = ({ locale }) => {
|
|
|
101
129
|
};
|
|
102
130
|
```
|
|
103
131
|
|
|
132
|
+
</Tab>
|
|
133
|
+
</Tabs>
|
|
134
|
+
|
|
104
135
|
```tsx fileName="src/components/ComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
105
136
|
import type { FC } from "react";
|
|
106
137
|
import { useI18n } from "react-intlayer";
|
|
@@ -31,48 +31,6 @@ author: aymericzip
|
|
|
31
31
|
|
|
32
32
|
## Приклад використання в React
|
|
33
33
|
|
|
34
|
-
Приклад використання хука `useIntlayer` у React-компоненті:
|
|
35
|
-
|
|
36
|
-
```tsx fileName="src/app.tsx" codeFormat={["typescript", "esm"]}
|
|
37
|
-
import type { FC } from "react";
|
|
38
|
-
import { ClientComponentExample, ServerComponentExample } from "@components";
|
|
39
|
-
import { IntlayerProvider } from "react-intlayer";
|
|
40
|
-
import { useIntlayer, IntlayerServerProvider } from "react-intlayer/server";
|
|
41
|
-
import { Locales } from "intlayer";
|
|
42
|
-
|
|
43
|
-
const App: FC<{ locale: Locales }> = ({ locale }) => {
|
|
44
|
-
const content = useIntlayer("homepage", locale);
|
|
45
|
-
|
|
46
|
-
return (
|
|
47
|
-
<>
|
|
48
|
-
<p>{content.introduction}</p>
|
|
49
|
-
<IntlayerProvider locale={locale}>
|
|
50
|
-
<ClientComponentExample />
|
|
51
|
-
</IntlayerProvider>
|
|
52
|
-
<IntlayerServerProvider locale={locale}>
|
|
53
|
-
<ServerComponentExample />
|
|
54
|
-
</IntlayerServerProvider>
|
|
55
|
-
</>
|
|
56
|
-
);
|
|
57
|
-
};
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
```tsx fileName="src/components/ComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
61
|
-
import type { FC } from "react";
|
|
62
|
-
import { useIntlayer } from "react-intlayer";
|
|
63
|
-
|
|
64
|
-
const ComponentExample: FC = () => {
|
|
65
|
-
const content = useIntlayer("component-example");
|
|
66
|
-
|
|
67
|
-
return (
|
|
68
|
-
<div>
|
|
69
|
-
<h1>{content.title}</h1>
|
|
70
|
-
<p>{content.description}</p>
|
|
71
|
-
</div>
|
|
72
|
-
);
|
|
73
|
-
};
|
|
74
|
-
```
|
|
75
|
-
|
|
76
34
|
```tsx fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
77
35
|
import { useIntlayer } from "react-intlayer/server";
|
|
78
36
|
|
|
@@ -28,6 +28,8 @@ author: aymericzip
|
|
|
28
28
|
|
|
29
29
|
Плагін Vite `intlayerPrune` використовується для виконання tree-shaking та видалення невикористаних словників з бандла вашого застосунку. Це допомагає зменшити фінальний розмір бандла, включаючи лише необхідний багатомовний вміст.
|
|
30
30
|
|
|
31
|
+
> Плагін вже включений та налаштований автоматично, коли ви використовуєте [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/packages/vite-intlayer/intlayer.md). Вам потрібно зареєструвати його вручну лише в тому випадку, якщо ви самостійно складаєте стек плагінів.
|
|
32
|
+
|
|
31
33
|
## Використання
|
|
32
34
|
|
|
33
35
|
### У складі `intlayer()` (рекомендовано)
|
package/docs/uk/readme.md
CHANGED
|
@@ -225,8 +225,8 @@ const HomePage = () => {
|
|
|
225
225
|
<li><a href="https://intlayer.org/doc/environment/vite-and-vue" rel=''>Vite + Vue</a></li>
|
|
226
226
|
<li><a href="https://intlayer.org/doc/environment/nuxt-and-vue" rel=''>Vite + Nuxt</a></li>
|
|
227
227
|
<li><a href="https://intlayer.org/doc/environment/vite-and-solid" rel=''>Vite + Solid</a></li>
|
|
228
|
-
<li><a href="https://intlayer.org/doc/environment/
|
|
229
|
-
<li>
|
|
228
|
+
<li><a href="https://intlayer.org/doc/environment/solid-start" rel=''>Solid Start</a></li>
|
|
229
|
+
<li><a href="https://intlayer.org/doc/environment/angular" rel=''>Angular</a></li> <li>
|
|
230
230
|
<a href="https://intlayer.org/doc/environment/express" rel=''>Backend</a>
|
|
231
231
|
<ul>
|
|
232
232
|
<li><a href="https://intlayer.org/doc/environment/express" rel=''>Express</a></li>
|
|
@@ -234,6 +234,7 @@ const HomePage = () => {
|
|
|
234
234
|
<li><a href="https://intlayer.org/doc/environment/fastify" rel=''>Fastify</a></li>
|
|
235
235
|
<li><a href="https://intlayer.org/doc/environment/adonisjs" rel=''>AdonisJS</a></li>
|
|
236
236
|
<li><a href="https://intlayer.org/doc/environment/hono" rel=''>Hono</a></li>
|
|
237
|
+
<li><a href="https://intlayer.org/doc/environment/elysia" rel=''>Elysia</a></li>
|
|
237
238
|
</ul>
|
|
238
239
|
</li>
|
|
239
240
|
</ul>
|
package/docs/uk/releases/v8.md
CHANGED
|
@@ -763,8 +763,6 @@ export default {
|
|
|
763
763
|
</Tab>
|
|
764
764
|
</Tabs>
|
|
765
765
|
|
|
766
|
-
---
|
|
767
|
-
|
|
768
766
|
## Правила множини Unicode CLDR (v8.8.0)
|
|
769
767
|
|
|
770
768
|
Було впроваджено новий хелпер вузла `plural` на основі правил множини, визначених проектом Unicode CLDR, що покращує підтримку складних мов.
|
|
@@ -1111,7 +1109,7 @@ Intlayer v8 включає новий шар кешування для комп
|
|
|
1111
1109
|
|
|
1112
1110
|
<Tabs group='bundler'>
|
|
1113
1111
|
<Tab label="Next.js" value="nextjs">
|
|
1114
|
-
|
|
1112
|
+
|
|
1115
1113
|
```typescript fileName="babel.config.js"
|
|
1116
1114
|
const {
|
|
1117
1115
|
intlayerExtractBabelPlugin,
|
|
@@ -1133,7 +1131,7 @@ Intlayer v8 включає новий шар кешування для комп
|
|
|
1133
1131
|
|
|
1134
1132
|
</Tab>
|
|
1135
1133
|
<Tab label="Vite" value="vite">
|
|
1136
|
-
|
|
1134
|
+
|
|
1137
1135
|
```typescript fileName="vite.config.js"
|
|
1138
1136
|
import { defineConfig } from 'vite';
|
|
1139
1137
|
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
package/docs/uk/releases/v9.md
CHANGED
|
@@ -373,6 +373,8 @@ curl -fsSL https://intlayer.org/install.sh | sh
|
|
|
373
373
|
|
|
374
374
|
Встановлювач завантажує `docker-compose.yml` та `.env`, автоматично генерує необхідні секрети та запускає `docker compose up -d`. Все — дашборд, API, база даних, сховище об'єктів та транзакційна електронна пошта — працює локально у контейнерах.
|
|
375
375
|
|
|
376
|
+
---
|
|
377
|
+
|
|
376
378
|
## Примітки щодо міграції з v8
|
|
377
379
|
|
|
378
380
|
Якщо ви оновлюєтеся з v8, зверніть увагу, що v9 не містить критичних змін (breaking changes). Проте ось ключові зміни:
|
package/docs/uk/self_hosting.md
CHANGED
|
@@ -21,12 +21,16 @@ author: aymericzip
|
|
|
21
21
|
|
|
22
22
|
Intlayer може повністю працювати на вашій власній інфраструктурі — обліковий запис Intlayer Cloud не потрібен. Одна команда запускає готовий до виробництва стек:
|
|
23
23
|
|
|
24
|
+
Одна команда встановлює все:
|
|
25
|
+
|
|
24
26
|
```sh
|
|
25
27
|
curl -fsSL https://intlayer.org/install.sh | sh
|
|
26
28
|
```
|
|
27
29
|
|
|
28
30
|
Інсталятор завантажує `docker-compose.yml` та `.env`, автоматично генерує необхідні секрети та запускає всі контейнери за допомогою `docker compose up -d`.
|
|
29
31
|
|
|
32
|
+
Єдиною зовнішньою залежністю є **MongoDB**: backend підключається до кластера MongoDB **Atlas**, який ви надаєте. Все інше працює всередині контейнера.
|
|
33
|
+
|
|
30
34
|
## Зміст
|
|
31
35
|
|
|
32
36
|
<TOC/>
|
|
@@ -60,40 +64,82 @@ Chromium (використовується для генерації скрін
|
|
|
60
64
|
- Порти `3000`, `3100`, `8025`, `9000` та `9001` доступні на хості.
|
|
61
65
|
- Хост Linux або macOS (або WSL2 на Windows).
|
|
62
66
|
|
|
67
|
+
Все інше — Bun, Redis, MinIO, Chromium — поставляється всередині образу.
|
|
68
|
+
|
|
63
69
|
---
|
|
64
70
|
|
|
65
71
|
## Швидкий старт
|
|
66
72
|
|
|
67
|
-
|
|
73
|
+
### 1. Запустити інсталятор
|
|
74
|
+
|
|
75
|
+
```sh
|
|
76
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Він перевіряє, чи встановлено Docker і він запущений, записує `./intlayer.env` із уже згенерованими `BETTER_AUTH_SECRET` та `S3_SECRET_ACCESS_KEY`, і витягує образ. Він не запускає контейнер — backend не може завантажитися без ваших облікових даних бази даних.
|
|
80
|
+
|
|
81
|
+
Повторне запущення інсталятора безпечне: існуючий `intlayer.env` ніколи не перезаписується, тому він також служить шляхом оновлення.
|
|
82
|
+
|
|
83
|
+
### 2. Заповніть ваші облікові дані
|
|
84
|
+
|
|
85
|
+
Відкрийте `intlayer.env` і заповніть значення, позначені як `TODO`:
|
|
86
|
+
|
|
87
|
+
```sh fileName="intlayer.env"
|
|
88
|
+
DB_ID=<atlas-user>
|
|
89
|
+
DB_MDP=<atlas-password>
|
|
90
|
+
DB_CLUSTER=<cluster>.xxxxx.mongodb.net
|
|
91
|
+
RESEND_API_KEY=<your-resend-key>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Файл також містить закоментовані блоки для опціональних функцій — [SMTP mailer](#global-mailer), `OPENAI_API_KEY` та OAuth провайдери. Розкоментуйте те, що вам потрібно.
|
|
95
|
+
|
|
96
|
+
> Файл читається за допомогою `docker run --env-file`, який не видаляє лапки та трактує все після `=` як значення. Пишіть значення без лапок і тримайте коментарі на окремих рядках.
|
|
97
|
+
|
|
98
|
+
### 3. Запустіть контейнер
|
|
99
|
+
|
|
100
|
+
Це команда, яку виводить установник після завершення:
|
|
68
101
|
|
|
69
102
|
```sh
|
|
70
103
|
docker run -d --name intlayer \
|
|
104
|
+
--restart unless-stopped \
|
|
71
105
|
-p 3000:3000 \
|
|
72
106
|
-p 3100:3100 \
|
|
73
107
|
-p 9000:9000 \
|
|
74
108
|
-p 9001:9001 \
|
|
75
109
|
-v intlayer-data:/data \
|
|
76
|
-
-
|
|
77
|
-
-
|
|
78
|
-
-e DB_CLUSTER="<cluster>.xxxxx.mongodb.net" \
|
|
79
|
-
-e BETTER_AUTH_SECRET="$(openssl rand -hex 32)" \
|
|
80
|
-
-e S3_SECRET_ACCESS_KEY="$(openssl rand -hex 16)" \
|
|
81
|
-
-e RESEND_API_KEY="<your-resend-key>" \
|
|
82
|
-
aymericzip/intlayer-selfhost
|
|
110
|
+
--env-file ./intlayer.env \
|
|
111
|
+
ghcr.io/aymericzip/intlayer-selfhost:latest
|
|
83
112
|
```
|
|
84
113
|
|
|
85
|
-
Потім відкрийте **http://localhost:3000**.
|
|
114
|
+
Потім відкрийте **http://localhost:3000**. При першому завантаженні ініціалізуються сховища даних, тому дайте йому хвилину.
|
|
86
115
|
|
|
87
|
-
>
|
|
116
|
+
> Панель керування обслуговується на `localhost`. Див. [Обмеження](#limitations) — спеціальні домени не підтримуються опублікованим образом.
|
|
88
117
|
|
|
89
|
-
|
|
118
|
+
### Налаштування installer
|
|
90
119
|
|
|
91
|
-
|
|
120
|
+
Installer читає кілька змінних середовища. Оскільки він передається в `sh`, передайте їх оболонці, а не `curl`:
|
|
92
121
|
|
|
93
122
|
```sh
|
|
94
|
-
curl -fsSL https://intlayer.org/install.sh | sh
|
|
123
|
+
curl -fsSL https://intlayer.org/install.sh | INTLAYER_ENV_FILE=./config/intlayer.env sh
|
|
95
124
|
```
|
|
96
125
|
|
|
126
|
+
| Змінна | За замовчуванням | Опис |
|
|
127
|
+
| ------------------------- | --------------------------------------------- | ------------------------------------ |
|
|
128
|
+
| `INTLAYER_IMAGE` | `ghcr.io/aymericzip/intlayer-selfhost:latest` | Image для завантаження |
|
|
129
|
+
| `INTLAYER_ENV_FILE` | `./intlayer.env` | Де писати env файл |
|
|
130
|
+
| `INTLAYER_CONTAINER_NAME` | `intlayer` | Ім'я контейнера |
|
|
131
|
+
| `INTLAYER_DATA_VOLUME` | `intlayer-data` | Названий том, змонтований на `/data` |
|
|
132
|
+
| `INTLAYER_APP_PORT` | `3000` | Хост-порт для dashboard |
|
|
133
|
+
| `INTLAYER_API_PORT` | `3100` | Хост-порт для API |
|
|
134
|
+
| `INTLAYER_S3_PORT` | `9000` | Хост-порт для MinIO S3 API |
|
|
135
|
+
| `INTLAYER_CONSOLE_PORT` | `9001` | Хост-порт для MinIO console |
|
|
136
|
+
|
|
137
|
+
> Чотири змінні портів змінюють лише сторону **host** у відображенні, надрукованому в команді `docker run`. Опублікований image має `http://localhost:3000`, `http://localhost:3100` і `http://localhost:9000` скомпільовані в bundle dashboard під час збірки, тому їх переназначення залишає браузер, спрямований на старі порти. Зберігайте значення за замовчуванням, якщо ви не будуєте власний image — див. [Обмеження](#limitations).
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Швидкий старт
|
|
142
|
+
|
|
97
143
|
Що робить інсталятор:
|
|
98
144
|
|
|
99
145
|
1. Перевіряє наявність `docker` та `docker compose`.
|
|
@@ -117,8 +163,6 @@ curl -fsSL https://intlayer.org/install.sh | sh
|
|
|
117
163
|
| **minio** | `minio/minio` | `9000` (S3), `9001` (консоль) | Об'єктне сховище, сумісне з S3, для аватарів та скріншотів |
|
|
118
164
|
| **mailpit** | `axllent/mailpit` | `1025` (SMTP), `8025` (веб-інтерфейс) | Локальний приймач транзакційних електронних листів |
|
|
119
165
|
|
|
120
|
-
Внутрішні порти (mongo, redis) за замовчуванням не доступні з хосту.
|
|
121
|
-
|
|
122
166
|
> Порт MinIO `9000` має бути доступним для браузера, оскільки завантажені ресурси (аватари, скріншоти) завантажуються безпосередньо з `S3_PUBLIC_URL=http://localhost:9000/intlayer`.
|
|
123
167
|
|
|
124
168
|
---
|
|
@@ -174,8 +218,6 @@ curl -fsSL https://intlayer.org/install.sh | sh
|
|
|
174
218
|
| `LINKEDIN_CLIENT_ID`, `LINKEDIN_CLIENT_SECRET` | Вхід через LinkedIn OAuth |
|
|
175
219
|
| `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET` | Вхід через Atlassian OAuth |
|
|
176
220
|
|
|
177
|
-
---
|
|
178
|
-
|
|
179
221
|
### Глобальний поштовик
|
|
180
222
|
|
|
181
223
|
За замовчуванням усі транзакційні електронні листи відправляються через Resend з використанням `RESEND_API_KEY`. Самостійно розгорнуті розгортання можуть натомість маршрутизувати **кожну** електронну пошту — включаючи не-організаційні листи, такі як скидання паролів і магічні посилання — через глобальний поштовик, налаштований за допомогою змінних середовища.
|
|
@@ -261,16 +303,8 @@ const { data: dictionaries } = await dictionaryEndpoint(cms).getDictionaries();
|
|
|
261
303
|
|
|
262
304
|
## Оновлення
|
|
263
305
|
|
|
264
|
-
Повторний запуск інсталятора на існуючому розгортанні виконує послідовне оновлення:
|
|
265
|
-
|
|
266
|
-
```sh
|
|
267
|
-
curl -fsSL https://intlayer.org/install.sh | sh
|
|
268
|
-
```
|
|
269
|
-
|
|
270
306
|
Це завантажує останні образи та перезапускає контейнери за допомогою `docker compose pull && docker compose up -d`. Існуючі томи (`mongo-data`, `redis-data`, `minio-data`) зберігаються — без втрати даних.
|
|
271
307
|
|
|
272
|
-
Щоб оновити вручну з каталогу `./intlayer/`:
|
|
273
|
-
|
|
274
308
|
```sh
|
|
275
309
|
docker compose pull
|
|
276
310
|
docker compose up -d
|
|
@@ -334,14 +368,12 @@ docker compose logs mongo
|
|
|
334
368
|
docker compose logs redis
|
|
335
369
|
```
|
|
336
370
|
|
|
371
|
+
Шукайте `MongoDB connection error` близько до початку логу.
|
|
372
|
+
|
|
337
373
|
### Електронні листи не надсилаються
|
|
338
374
|
|
|
339
375
|
За замовчуванням усі вихідні електронні листи захоплюються Mailpit. Відкрийте `http://localhost:8025`, щоб побачити надіслані повідомлення. Щоб надсилати реальні електронні листи, встановіть `MAIL_PROVIDER=resend` та `RESEND_API_KEY=<ваш-ключ>` у `.env`, а потім перезапустіть бекенд:
|
|
340
376
|
|
|
341
|
-
```sh
|
|
342
|
-
docker compose restart backend
|
|
343
|
-
```
|
|
344
|
-
|
|
345
377
|
### Відсутній кошик MinIO
|
|
346
378
|
|
|
347
379
|
Якщо одноразовий сервіс `minio-init` не запустився (або запустився до того, як MinIO був готовий), створіть кошик вручну:
|
|
@@ -222,9 +222,11 @@ import { Locales, type IntlayerConfig } from "intlayer";
|
|
|
222
222
|
|
|
223
223
|
const config: IntlayerConfig = {
|
|
224
224
|
// ... دیگر ترتیب کے اختیارات
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
225
|
+
routing: {
|
|
226
|
+
storage: [
|
|
227
|
+
{ type: "header", name: "my-locale-header" },
|
|
228
|
+
{ type: "cookie", name: "my-locale-cookie" },
|
|
229
|
+
],
|
|
228
230
|
},
|
|
229
231
|
};
|
|
230
232
|
|
|
@@ -235,9 +235,11 @@ import { Locales, type IntlayerConfig } from "intlayer";
|
|
|
235
235
|
|
|
236
236
|
const config: IntlayerConfig = {
|
|
237
237
|
// ... دیگر کنفیگریشن کے اختیارات
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
238
|
+
routing: {
|
|
239
|
+
storage: [
|
|
240
|
+
{ type: "header", name: "my-locale-header" },
|
|
241
|
+
{ type: "cookie", name: "my-locale-cookie" },
|
|
242
|
+
],
|
|
241
243
|
},
|
|
242
244
|
};
|
|
243
245
|
|
|
@@ -194,6 +194,8 @@ Các vấn đề gặp phải:
|
|
|
194
194
|
|
|
195
195
|
`Tolgee` giải quyết được nhiều vấn đề đã đề cập trước đó. Tôi thấy việc bắt đầu với Tolgee khó khăn hơn so với các công cụ khác có phương pháp tiếp cận tương tự. Nó không cung cấp tính an toàn kiểu dữ liệu, điều này cũng khiến việc phát hiện các khóa bị thiếu tại thời điểm biên dịch trở nên khó khăn hơn nhiều. Tôi đã phải bao bọc các API của Tolgee bằng các API của riêng mình để thêm tính năng phát hiện khóa bị thiếu.
|
|
196
196
|
|
|
197
|
+
Package này khá nặng (~11.1kb, gấp hơn 2× `react-intlayer`).
|
|
198
|
+
|
|
197
199
|
Trên TanStack Start, tôi cũng gặp vấn đề về tính phản ứng: khi ngôn ngữ thay đổi, tôi phải ép buộc provider render lại và đăng ký vào các sự kiện thay đổi ngôn ngữ để việc tải ở một ngôn ngữ khác hoạt động chính xác.
|
|
198
200
|
|
|
199
201
|
**(use-intl)** (`use-intl@4.9.1`):
|
|
@@ -208,6 +210,8 @@ Trên TanStack Start, bạn tránh được các cạm bẫy đặc thù của N
|
|
|
208
210
|
|
|
209
211
|
Tuy nhiên, nó có cùng những nhược điểm chính như các ngăn công nghệ được xây dựng trên `t('a.b.c')`: tối ưu hóa là có thể nhưng rất tốn thời gian, và các dự án lớn có rủi ro rơi vào các thực hành xấu (namespace + tải động + kiểu dữ liệu).
|
|
210
212
|
|
|
213
|
+
Package này đặc biệt nặng (~17.3kb, tức là khoảng 3.5× `react-intlayer`).
|
|
214
|
+
|
|
211
215
|
Các định dạng thông báo cũng khác nhau: `use-intl` sử dụng ICU MessageFormat, trong khi `i18next` sử dụng định dạng riêng của mình - điều này làm phức tạp thêm công cụ hoặc quá trình di chuyển nếu bạn trộn lẫn chúng.
|
|
212
216
|
|
|
213
217
|
**(Lingui)** (`@lingui/core@5.3.0`):
|
|
@@ -218,6 +222,8 @@ Các định dạng thông báo cũng khác nhau: `use-intl` sử dụng ICU Mes
|
|
|
218
222
|
|
|
219
223
|
`react-intl` là một triển khai hiệu năng từ nhóm Format.js. Trải nghiệm phát triển vẫn còn rườm rà: `const intl = useIntl()` + `intl.formatMessage({ id: "xx.xx" })` thêm vào sự phức tạp, công việc JavaScript bổ sung và ràng buộc instance i18n toàn cục vào nhiều nút trong cây React.
|
|
220
224
|
|
|
225
|
+
Package cũng khá nặng (~14.4kb, tức là khoảng 3× `react-intlayer`).
|
|
226
|
+
|
|
221
227
|
### 4 - Các khuyến nghị
|
|
222
228
|
|
|
223
229
|
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ỉ.
|
package/docs/vi/cli/ci.md
CHANGED
|
@@ -128,6 +128,8 @@ bun x intlayer ci fill --verbose --mode complete
|
|
|
128
128
|
|
|
129
129
|
### Sử dụng trong pipeline CI/CD
|
|
130
130
|
|
|
131
|
+
Chạy `intlayer init` tạo ra hai GitHub Actions workflows sẵn sàng sử dụng cho bạn (xem [Scaffolded GitHub Actions](#scaffolded-github-actions) dưới đây). Ví dụ ở đây cho thấy cấu hình tương đương bằng cách sử dụng lệnh `ci` cho một monorepo, nơi các credentials được inject cho mỗi project từ `INTLAYER_PROJECT_CREDENTIALS`.
|
|
132
|
+
|
|
131
133
|
Trong cấu hình CI/CD của bạn (ví dụ: GitHub Actions, GitLab CI), đặt `INTLAYER_PROJECT_CREDENTIALS` làm bí mật:
|
|
132
134
|
|
|
133
135
|
```yaml
|
|
@@ -91,7 +91,15 @@ Lệnh này có thể được sử dụng để đánh giá các tệp đã đ
|
|
|
91
91
|
|
|
92
92
|
- **`--log`**: Chế độ chỉ ghi log. Không dịch bằng AI; thay vào đó, ghi lại các phần cần lưu ý (kèm số dòng và nội dung) cho ngôn ngữ cơ sở và ngôn ngữ đích, nhằm hỗ trợ một agent khác tạo bản dịch.
|
|
93
93
|
|
|
94
|
-
|
|
94
|
+
- **If `apply`**: Translate missing/diverging content and return the complete updated Vietnamese file
|
|
95
|
+
- **If `report`**: Log blocks needing attention with line numbers and content for both locales
|
|
96
|
+
- **If `synthesis`**: Skip per-block output and provide only a final recap of up-to-date vs. documents needing edits
|
|
97
|
+
|
|
98
|
+
> Ví dụ: `npx intlayer doc review --mode report`
|
|
99
|
+
|
|
100
|
+
> Ví dụ: `npx intlayer doc review --log`
|
|
101
|
+
|
|
102
|
+
Bất kể chế độ nào, quá trình chạy kết thúc bằng một tổng hợp liệt kê các tài liệu được căn chỉnh với tài liệu cơ sở của chúng và những tài liệu vẫn còn các khối cần chỉnh sửa.
|
|
95
103
|
|
|
96
104
|
**Tùy chọn xuất đầu vào:**
|
|
97
105
|
|
package/docs/vi/cli/fill.md
CHANGED
|
@@ -39,14 +39,6 @@ bun x intlayer fill
|
|
|
39
39
|
|
|
40
40
|
Lệnh này phân tích các tệp khai báo nội dung của bạn để tìm các vấn đề tiềm ẩn như thiếu bản dịch, không nhất quán về cấu trúc hoặc không khớp kiểu dữ liệu. Nếu phát hiện bất kỳ vấn đề nào, **intlayer fill** sẽ đề xuất hoặc áp dụng các cập nhật để giữ cho từ điển của bạn nhất quán và đầy đủ.
|
|
41
41
|
|
|
42
|
-
Điểm chính:
|
|
43
|
-
|
|
44
|
-
- Chia các tệp JSON lớn thành các phần nhỏ để nằm trong giới hạn cửa sổ ngữ cảnh của mô hình AI.
|
|
45
|
-
- Thử lại bản dịch nếu định dạng đầu ra không đúng.
|
|
46
|
-
- Tích hợp ngữ cảnh cụ thể cho ứng dụng và tệp để cải thiện độ chính xác của bản dịch.
|
|
47
|
-
- Bảo tồn các bản dịch hiện có bằng cách không ghi đè chúng.
|
|
48
|
-
- Xử lý tệp, phần và ngôn ngữ song song bằng hệ thống hàng đợi để tăng tốc độ.
|
|
49
|
-
|
|
50
42
|
## Những Điểm Chính:
|
|
51
43
|
|
|
52
44
|
- Chia các tệp JSON lớn thành các chunks để duy trì trong giới hạn cửa sổ ngữ cảnh của mô hình AI.
|
package/docs/vi/cli/index.md
CHANGED
|
@@ -127,6 +127,8 @@ Intlayer chấp nhận nhiều định dạng tệp cấu hình khác nhau:
|
|
|
127
127
|
|
|
128
128
|
- **[Đăng nhập](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/cli/login.md)** - Xác thực với Intlayer CMS và nhận thông tin xác thực truy cập
|
|
129
129
|
|
|
130
|
+
> `intlayer login` cấp một **access key** (`clientId` / `clientSecret`) mà mọi lệnh có xác thực đều sử dụng. Secret là một thông tin xác thực phía server và không bao giờ được gửi tới client bundle của bạn — xem [Keeping the access key safe](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/cli/login.md#keeping-the-access-key-safe).
|
|
131
|
+
|
|
130
132
|
### Các lệnh cốt lõi
|
|
131
133
|
|
|
132
134
|
- **[Xây dựng từ điển](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/cli/build.md)** - Xây dựng từ điển của bạn từ các tệp khai báo nội dung
|
|
@@ -52,8 +52,6 @@ Lệnh này tìm kiếm và liệt kê tất cả các dự án Intlayer bằng
|
|
|
52
52
|
|
|
53
53
|
> Ví dụ: `npx intlayer projects list --base-dir /path/to/workspace`
|
|
54
54
|
|
|
55
|
-
> Ví dụ: `npx intlayer projects list --base-dir /path/to/workspace`
|
|
56
|
-
|
|
57
55
|
- **`--git-root`**: Tìm kiếm từ thư mục gốc của git thay vì thư mục cơ sở. Điều này hữu ích để tìm tất cả các dự án Intlayer trong một monorepo hoặc kho git.
|
|
58
56
|
|
|
59
57
|
> Ví dụ: `npx intlayer projects list --git-root`
|