@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
|
@@ -249,6 +249,24 @@ export default withIntlayer(nextConfig);
|
|
|
249
249
|
|
|
250
250
|
> Le plugin Next.js `withIntlayer()` est utilisé pour intégrer Intlayer avec Next.js. Il assure la construction des fichiers de déclaration de contenu et les surveille en mode développement. Il définit les variables d'environnement Intlayer dans les environnements [Webpack](https://webpack.js.org/) ou [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). De plus, il fournit des alias pour optimiser les performances et garantit la compatibilité avec les composants serveur.
|
|
251
251
|
|
|
252
|
+
> La fonction `withIntlayer()` est une fonction promise. Elle permet de préparer les dictionnaires intlayer avant le début de la construction. Si vous souhaitez l'utiliser avec d'autres plugins, vous pouvez l'attendre. Exemple :
|
|
253
|
+
>
|
|
254
|
+
> ```ts
|
|
255
|
+
> const nextConfig = await withIntlayer(nextConfig);
|
|
256
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
257
|
+
>
|
|
258
|
+
> export default nextConfigWithOtherPlugins;
|
|
259
|
+
> ```
|
|
260
|
+
>
|
|
261
|
+
> Si vous souhaitez l'utiliser de manière synchrone, vous pouvez utiliser la fonction `withIntlayerSync()`. Exemple :
|
|
262
|
+
>
|
|
263
|
+
> ```ts
|
|
264
|
+
> const nextConfig = withIntlayerSync(nextConfig);
|
|
265
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
266
|
+
>
|
|
267
|
+
> export default nextConfigWithOtherPlugins;
|
|
268
|
+
> ```
|
|
269
|
+
|
|
252
270
|
> La fonction `withIntlayer()` est une fonction asynchrone (promise). Elle permet de préparer les dictionnaires Intlayer avant le début de la compilation. Si vous souhaitez l'utiliser avec d'autres plugins, vous pouvez l'attendre avec `await`. Exemple :
|
|
253
271
|
>
|
|
254
272
|
> ```tsx
|
|
@@ -297,6 +315,36 @@ export default RootLayout;
|
|
|
297
315
|
|
|
298
316
|
Pour implémenter le routage dynamique, fournissez le chemin pour la locale en ajoutant un nouveau layout dans votre répertoire `[locale]` :
|
|
299
317
|
|
|
318
|
+
<Tabs>
|
|
319
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
320
|
+
|
|
321
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
322
|
+
import { type NextLayoutIntlayer } from "next-intlayer";
|
|
323
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
324
|
+
import { Inter } from "next/font/google";
|
|
325
|
+
import { getHTMLTextDir } from "intlayer";
|
|
326
|
+
|
|
327
|
+
const inter = Inter({ subsets: ["latin"] });
|
|
328
|
+
|
|
329
|
+
const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
330
|
+
const { locale } = await params;
|
|
331
|
+
return (
|
|
332
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
333
|
+
<body className={inter.className}>
|
|
334
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
335
|
+
</body>
|
|
336
|
+
</html>
|
|
337
|
+
);
|
|
338
|
+
};
|
|
339
|
+
|
|
340
|
+
export default LocaleLayout;
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
> Un seul `IntlayerProvider` couvre les deux moitiés de l'arborescence : il initialise le contexte serveur délimité par la requête lu par les hooks serveur, et monte le fournisseur client afin que les composants clients reçoivent les mêmes paramètres régionaux.
|
|
344
|
+
|
|
345
|
+
</Tab>
|
|
346
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
347
|
+
|
|
300
348
|
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
301
349
|
import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
|
|
302
350
|
import { Inter } from "next/font/google";
|
|
@@ -320,6 +368,9 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
320
368
|
export default LocaleLayout;
|
|
321
369
|
```
|
|
322
370
|
|
|
371
|
+
</Tab>
|
|
372
|
+
</Tabs>
|
|
373
|
+
|
|
323
374
|
> Le segment de chemin `[locale]` est utilisé pour définir la locale. Exemple : `/en-US/about` fera référence à `en-US` et `/fr/about` à `fr`.
|
|
324
375
|
|
|
325
376
|
> À ce stade, vous rencontrerez l'erreur : `Error: Missing <html> and <body> tags in the root layout.`. Cela est attendu car le fichier `/app/page.tsx` n'est plus utilisé et peut être supprimé. À la place, le segment de chemin `[locale]` activera la page `/app/[locale]/page.tsx`. Par conséquent, les pages seront accessibles via des chemins comme `/en`, `/fr`, `/es` dans votre navigateur. Pour définir la locale par défaut comme page racine, référez-vous à la configuration du `proxy` à l'étape 7.
|
|
@@ -340,6 +391,8 @@ export default LocaleLayout;
|
|
|
340
391
|
>
|
|
341
392
|
> Intlayer fonctionne avec `export const dynamic = 'force-static';` pour s'assurer que les pages sont pré-construites pour toutes les locales.
|
|
342
393
|
|
|
394
|
+
> Intlayer fonctionne avec `export const dynamic = 'force-static';` pour s'assurer que les pages sont pré-construites pour toutes les locales.
|
|
395
|
+
|
|
343
396
|
</Step>
|
|
344
397
|
|
|
345
398
|
<Step number={5} title="Déclarez Votre Contenu">
|
|
@@ -394,6 +447,44 @@ export default pageContent;
|
|
|
394
447
|
|
|
395
448
|
Accédez à vos dictionnaires de contenu dans toute votre application :
|
|
396
449
|
|
|
450
|
+
<Tabs>
|
|
451
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
452
|
+
|
|
453
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
454
|
+
import type { FC } from "react";
|
|
455
|
+
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
456
|
+
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
457
|
+
import { type NextPageIntlayer, useIntlayer } from "next-intlayer";
|
|
458
|
+
|
|
459
|
+
const PageContent: FC = () => {
|
|
460
|
+
const content = useIntlayer("page");
|
|
461
|
+
|
|
462
|
+
return (
|
|
463
|
+
<>
|
|
464
|
+
<p>{content.getStarted.main}</p>
|
|
465
|
+
<code>{content.getStarted.pageLink}</code>
|
|
466
|
+
</>
|
|
467
|
+
);
|
|
468
|
+
};
|
|
469
|
+
|
|
470
|
+
const Page: NextPageIntlayer = () => (
|
|
471
|
+
<>
|
|
472
|
+
<PageContent />
|
|
473
|
+
<ServerComponentExample />
|
|
474
|
+
|
|
475
|
+
<ClientComponentExample />
|
|
476
|
+
</>
|
|
477
|
+
);
|
|
478
|
+
|
|
479
|
+
export default Page;
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
- **`IntlayerProvider`** est monté une seule fois, dans la mise en page de la locale. Il fournit la locale à la fois aux composants serveur et client, de sorte que les pages ne s'enveloppent plus elles-mêmes.
|
|
483
|
+
- Les hooks serveur résolvent la locale dans cet ordre : la locale passée au site d'appel, puis le contexte serveur semé par le fournisseur, puis la locale portée par la requête (l'en-tête `x-intlayer-locale` défini par le proxy Intlayer, puis le cookie de locale). Cette dernière étape est ce qui maintient le contenu correct lors d'une navigation côté client qui ne ré-affiche que le segment de page, où la mise en page — et avec elle le fournisseur — ne se réexécute pas.
|
|
484
|
+
|
|
485
|
+
</Tab>
|
|
486
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
487
|
+
|
|
397
488
|
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
398
489
|
import type { FC } from "react";
|
|
399
490
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
@@ -435,6 +526,9 @@ export default Page;
|
|
|
435
526
|
|
|
436
527
|
> La mise en page (layout) et la page ne peuvent pas partager un contexte serveur commun car le système de contexte serveur est basé sur un magasin de données par requête (via le mécanisme de [cache de React](https://react.dev/reference/react/cache)), ce qui entraîne la recréation de chaque "contexte" pour différents segments de l'application. Placer le provider dans une mise en page partagée briserait cette isolation, empêchant la bonne propagation des valeurs du contexte serveur à vos composants serveur.
|
|
437
528
|
|
|
529
|
+
</Tab>
|
|
530
|
+
</Tabs>
|
|
531
|
+
|
|
438
532
|
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
439
533
|
"use client";
|
|
440
534
|
|
|
@@ -453,6 +547,30 @@ export const ClientComponentExample: FC = () => {
|
|
|
453
547
|
};
|
|
454
548
|
```
|
|
455
549
|
|
|
550
|
+
<Tabs>
|
|
551
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
552
|
+
|
|
553
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
554
|
+
import type { FC } from "react";
|
|
555
|
+
import { useIntlayer } from "next-intlayer";
|
|
556
|
+
|
|
557
|
+
export const ServerComponentExample: FC = () => {
|
|
558
|
+
const content = useIntlayer("server-component-example"); // Créer une déclaration de contenu associée
|
|
559
|
+
|
|
560
|
+
return (
|
|
561
|
+
<div>
|
|
562
|
+
<h2>{content.title}</h2>
|
|
563
|
+
<p>{content.content}</p>
|
|
564
|
+
</div>
|
|
565
|
+
);
|
|
566
|
+
};
|
|
567
|
+
```
|
|
568
|
+
|
|
569
|
+
> `next-intlayer` est le chemin d'importation isomorphe : la condition d'export `react-server` fournit aux composants serveur l'implémentation ambient-locale, tandis que les composants client obtiennent celle basée sur le contexte. Le même appel fonctionne des deux côtés.
|
|
570
|
+
|
|
571
|
+
</Tab>
|
|
572
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
573
|
+
|
|
456
574
|
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
457
575
|
import type { FC } from "react";
|
|
458
576
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -469,6 +587,9 @@ export const ServerComponentExample: FC = () => {
|
|
|
469
587
|
};
|
|
470
588
|
```
|
|
471
589
|
|
|
590
|
+
</Tab>
|
|
591
|
+
</Tabs>
|
|
592
|
+
|
|
472
593
|
> Si vous souhaitez utiliser votre contenu dans un attribut de type `string`, tel que `alt`, `title`, `href`, `aria-label`, etc., vous devez appeler la valeur de la fonction, comme ceci :
|
|
473
594
|
|
|
474
595
|
> ```html
|
|
@@ -498,6 +619,8 @@ export const config = {
|
|
|
498
619
|
|
|
499
620
|
> Le `intlayerProxy` est utilisé pour détecter la locale préférée de l'utilisateur et le rediriger vers l'URL appropriée comme spécifié dans la [configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/configuration.md). De plus, il permet de sauvegarder la locale préférée de l'utilisateur dans un cookie.
|
|
500
621
|
|
|
622
|
+
> Depuis Intlayer v9, ce middleware respecte l'option `routing.enableProxy` (`true` par défaut). Définissez `routing.enableProxy: false` dans votre configuration pour le transformer en pass-through sans supprimer ce fichier. Consultez les [notes de version v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/releases/v9.md).
|
|
623
|
+
|
|
501
624
|
> Si vous avez besoin de chaîner plusieurs proxies ensemble (par exemple, `intlayerProxy` avec une authentification ou des proxies personnalisés), Intlayer fournit désormais un helper appelé `multipleProxies`.
|
|
502
625
|
|
|
503
626
|
```ts
|
|
@@ -644,35 +767,6 @@ export const generateMetadata = async ({
|
|
|
644
767
|
|
|
645
768
|
> En savoir plus sur l'optimisation des métadonnées [dans la documentation officielle de Next.js](https://nextjs.org/docs/app/building-your-application/optimizing/metadata).
|
|
646
769
|
|
|
647
|
-
```javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
|
|
648
|
-
const { getTranslation, getMultilingualUrls } = require("intlayer");
|
|
649
|
-
|
|
650
|
-
const generateMetadata = async ({ params }) => {
|
|
651
|
-
const { locale } = await params;
|
|
652
|
-
|
|
653
|
-
const t = (content) => getTranslation(content, locale);
|
|
654
|
-
|
|
655
|
-
return {
|
|
656
|
-
title: t({
|
|
657
|
-
en: "My title",
|
|
658
|
-
fr: "Mon titre",
|
|
659
|
-
es: "Mi título",
|
|
660
|
-
}),
|
|
661
|
-
description: t({
|
|
662
|
-
en: "My description",
|
|
663
|
-
fr: "Ma description",
|
|
664
|
-
es: "Mi descripción",
|
|
665
|
-
}),
|
|
666
|
-
};
|
|
667
|
-
};
|
|
668
|
-
|
|
669
|
-
module.exports = { generateMetadata };
|
|
670
|
-
|
|
671
|
-
// ... Reste du code
|
|
672
|
-
```
|
|
673
|
-
|
|
674
|
-
> En savoir plus sur l'optimisation des métadonnées [dans la documentation officielle de Next.js](https://nextjs.org/docs/app/building-your-application/optimizing/metadata).
|
|
675
|
-
|
|
676
770
|
</Step>
|
|
677
771
|
|
|
678
772
|
<Step number={9} title="Internationalisation de votre sitemap.xml et robots.txt" isOptional={true}>
|
|
@@ -973,6 +1067,8 @@ bun add @intlayer/swc --dev
|
|
|
973
1067
|
|
|
974
1068
|
> Remarque : Cette optimisation est uniquement disponible pour Next.js 13 et versions supérieures.
|
|
975
1069
|
|
|
1070
|
+
> Note : Ce package n'est pas installé par défaut car les plugins SWC sont encore expérimentaux sur Next.js. Cela pourrait changer à l'avenir.
|
|
1071
|
+
|
|
976
1072
|
> Note : Ce package n’est pas installé par défaut car les plugins SWC sont encore expérimentaux sur Next.js. Cela pourrait changer à l’avenir.
|
|
977
1073
|
>
|
|
978
1074
|
> Note : Si vous définissez l'option comme `importMode: 'dynamic'` ou `importMode: 'fetch'` (dans la configuration des dictionnaires), elle reposera sur Suspense, vous devrez donc envelopper vos appels `useIntlayer` dans une limite `Suspense`. Cela signifie que vous ne pourrez pas utiliser `useIntlayer` directement au niveau supérieur de votre composant Page / Layout.
|
|
@@ -245,7 +245,7 @@ Supprimez tout de `RootLayout` et remplacez-le par le code suivant :
|
|
|
245
245
|
import type { Metadata } from "next";
|
|
246
246
|
import type { ReactNode } from "react";
|
|
247
247
|
import "./globals.css";
|
|
248
|
-
import {
|
|
248
|
+
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
249
249
|
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
250
250
|
import { getLocale } from "next-intlayer/server";
|
|
251
251
|
export { generateStaticParams } from "next-intlayer";
|
|
@@ -270,9 +270,9 @@ const RootLayout = async ({
|
|
|
270
270
|
|
|
271
271
|
return (
|
|
272
272
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
273
|
-
<
|
|
274
|
-
<
|
|
275
|
-
</
|
|
273
|
+
<body>
|
|
274
|
+
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
275
|
+
</body>
|
|
276
276
|
</html>
|
|
277
277
|
);
|
|
278
278
|
};
|
|
@@ -343,6 +343,9 @@ export default async function Page() {
|
|
|
343
343
|
}
|
|
344
344
|
```
|
|
345
345
|
|
|
346
|
+
<Tabs>
|
|
347
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
348
|
+
|
|
346
349
|
```tsx fileName="src/app/page.tsx"
|
|
347
350
|
import { type FC } from "react";
|
|
348
351
|
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
@@ -370,14 +373,47 @@ export default async function Page() {
|
|
|
370
373
|
}
|
|
371
374
|
```
|
|
372
375
|
|
|
373
|
-
|
|
376
|
+
- **`IntlayerProvider`** est monté une seule fois, dans la layout racine. Il fournit la locale aux composants serveur et client, de sorte que les pages ne s'enveloppent plus elles-mêmes.
|
|
377
|
+
- Sans un segment de chemin `[locale]`, la locale provient toujours de la requête — l'en-tête `x-intlayer-locale` défini par le proxy Intlayer, puis le cookie de locale — que les hooks serveur lisent d'eux-mêmes quand le provider n'a pas encore été exécuté.
|
|
378
|
+
|
|
374
379
|
</Tabs>
|
|
375
380
|
|
|
381
|
+
```tsx fileName="src/app/page.tsx"
|
|
382
|
+
import { type FC } from "react";
|
|
383
|
+
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
384
|
+
import { getLocale } from "next-intlayer/server";
|
|
385
|
+
|
|
386
|
+
const PageContent: FC = () => {
|
|
387
|
+
const content = useIntlayer("page-content");
|
|
388
|
+
|
|
389
|
+
return (
|
|
390
|
+
<>
|
|
391
|
+
<p>{content.getStartedByEditing}</p>
|
|
392
|
+
<code>src/app/page.tsx</code>
|
|
393
|
+
</>
|
|
394
|
+
);
|
|
395
|
+
};
|
|
396
|
+
|
|
397
|
+
export default async function Page() {
|
|
398
|
+
const locale = await getLocale();
|
|
399
|
+
|
|
400
|
+
return (
|
|
401
|
+
<IntlayerServerProvider locale={locale}>
|
|
402
|
+
<PageContent />
|
|
403
|
+
</IntlayerServerProvider>
|
|
404
|
+
);
|
|
405
|
+
}
|
|
406
|
+
```
|
|
407
|
+
|
|
376
408
|
- **`IntlayerClientProvider`** est utilisé pour fournir la locale aux composants côté client.
|
|
377
409
|
- **`IntlayerServerProvider`** est utilisé pour fournir la locale aux enfants serveurs.
|
|
378
410
|
|
|
379
411
|
> Le layout et la page ne peuvent pas partager un contexte serveur commun car le système de contexte serveur est basé sur un magasin de données par requête (via le mécanisme de [cache de React](https://react.dev/reference/react/cache)), ce qui entraîne la recréation de chaque « contexte » pour différents segments de l'application. Placer le fournisseur dans un layout partagé briserait cette isolation, empêchant la propagation correcte des valeurs du contexte serveur vers vos composants serveur.
|
|
380
412
|
|
|
413
|
+
</Tab>
|
|
414
|
+
|
|
415
|
+
</Tabs>
|
|
416
|
+
|
|
381
417
|
</Step>
|
|
382
418
|
|
|
383
419
|
<Step number={7} title="Remplir les traductions manquantes" isOptional={true}>
|
|
@@ -435,6 +471,8 @@ export const config = {
|
|
|
435
471
|
|
|
436
472
|
> `intlayerProxy` est utilisé pour détecter la locale préférée de l'utilisateur et le rediriger vers l'URL appropriée telle que spécifiée dans la [configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/configuration.md). De plus, il permet de sauvegarder la locale préférée de l'utilisateur dans un cookie.
|
|
437
473
|
|
|
474
|
+
> Depuis Intlayer v9, ce middleware respecte l'option `routing.enableProxy` (`true` par défaut). Définissez `routing.enableProxy: false` dans votre configuration pour le transformer en pass-through sans supprimer ce fichier. Voir les [notes de version v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/releases/v9.md).
|
|
475
|
+
|
|
438
476
|
</Step>
|
|
439
477
|
|
|
440
478
|
<Step number={8} title="Changer la langue de votre contenu" isOptional={true}>
|
|
@@ -493,6 +531,8 @@ export const LocaleSwitcher: FC = () => {
|
|
|
493
531
|
|
|
494
532
|
Lors de l'utilisation de `next-intlayer`, les dictionnaires sont par défaut inclus dans le bundle pour chaque page. Pour optimiser la taille du bundle, Intlayer fournit un plugin SWC optionnel qui remplace intelligemment les appels à `useIntlayer` via des macros. Cela garantit que les dictionnaires ne sont inclus que dans les bundles des pages qui les utilisent réellement.
|
|
495
533
|
|
|
534
|
+
Le plugin `@intlayer/babel` intègre déjà l'optimisation du bundling (voir `babel.config.js`). Cependant, le plugin `@intlayer/swc` est plus performant. Si vous supprimez le plugin `@intlayer/babel`, vous pouvez utiliser le plugin `@intlayer/swc`.
|
|
535
|
+
|
|
496
536
|
Pour activer cette optimisation, installez le paquet `@intlayer/swc`. Une fois installé, `next-intlayer` détectera et utilisera automatiquement le plugin :
|
|
497
537
|
|
|
498
538
|
```bash packageManager="npm"
|
|
@@ -233,6 +233,26 @@ const nextConfig: NextConfig = {/* options de configuration ici */};
|
|
|
233
233
|
export default withIntlayer(nextConfig);
|
|
234
234
|
```
|
|
235
235
|
|
|
236
|
+
> Le plugin Next.js `withIntlayer()` est utilisé pour intégrer Intlayer avec Next.js. Il assure la construction des fichiers de déclaration de contenu et les surveille en mode développement. Il définit les variables d'environnement Intlayer dans les environnements [Webpack](https://webpack.js.org/) ou [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). De plus, il fournit des alias pour optimiser les performances et assure la compatibilité avec les composants serveur.
|
|
237
|
+
|
|
238
|
+
> La fonction `withIntlayer()` est une fonction promise. Elle permet de préparer les dictionnaires intlayer avant le démarrage de la build. Si vous voulez l'utiliser avec d'autres plugins, vous pouvez l'attendre. Exemple :
|
|
239
|
+
>
|
|
240
|
+
> ```ts
|
|
241
|
+
> const nextConfig = await withIntlayer(nextConfig);
|
|
242
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
243
|
+
>
|
|
244
|
+
> export default nextConfigWithOtherPlugins;
|
|
245
|
+
> ```
|
|
246
|
+
>
|
|
247
|
+
> Si vous voulez l'utiliser de manière synchrone, vous pouvez utiliser la fonction `withIntlayerSync()`. Exemple :
|
|
248
|
+
>
|
|
249
|
+
> ```ts
|
|
250
|
+
> const nextConfig = withIntlayerSync(nextConfig);
|
|
251
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
252
|
+
>
|
|
253
|
+
> export default nextConfigWithOtherPlugins;
|
|
254
|
+
> ```
|
|
255
|
+
|
|
236
256
|
> Le plugin Next.js `withIntlayer()` est utilisé pour intégrer Intlayer à Next.js. Il assure la génération des fichiers de déclaration de contenu et les surveille en mode développement. Il définit les variables d'environnement d'Intlayer dans les environnements [Webpack](https://webpack.js.org/) ou [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). De plus, il fournit des alias pour optimiser les performances et garantit la compatibilité avec les server components.
|
|
237
257
|
>
|
|
238
258
|
> La fonction `withIntlayer()` est une fonction retournant une Promise. Elle permet de préparer les dictionnaires Intlayer avant le démarrage de la build. Si vous souhaitez l'utiliser avec d'autres plugins, vous pouvez l'awaiter. Exemple:
|
|
@@ -267,11 +287,57 @@ export default withIntlayer(nextConfig);
|
|
|
267
287
|
|
|
268
288
|
Retirez tout le contenu de `RootLayout` et remplacez-le par le code suivant :
|
|
269
289
|
|
|
290
|
+
<Tabs>
|
|
291
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
292
|
+
|
|
293
|
+
```tsx {5} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
294
|
+
import type { Metadata } from "next";
|
|
295
|
+
import type { ReactNode } from "react";
|
|
296
|
+
import "./globals.css";
|
|
297
|
+
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
298
|
+
import { getLocale, IntlayerProvider } from "next-intlayer/server";
|
|
299
|
+
export { generateStaticParams } from "next-intlayer";
|
|
300
|
+
|
|
301
|
+
export const generateMetadata = async (): Promise<Metadata> => {
|
|
302
|
+
const locale = await getLocale();
|
|
303
|
+
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
304
|
+
|
|
305
|
+
return {
|
|
306
|
+
title,
|
|
307
|
+
description,
|
|
308
|
+
keywords,
|
|
309
|
+
};
|
|
310
|
+
};
|
|
311
|
+
|
|
312
|
+
const RootLayout = async ({
|
|
313
|
+
children,
|
|
314
|
+
}: Readonly<{
|
|
315
|
+
children: ReactNode;
|
|
316
|
+
}>) => {
|
|
317
|
+
const locale = await getLocale();
|
|
318
|
+
|
|
319
|
+
return (
|
|
320
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
321
|
+
<body>
|
|
322
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
323
|
+
</body>
|
|
324
|
+
</html>
|
|
325
|
+
);
|
|
326
|
+
};
|
|
327
|
+
|
|
328
|
+
export default RootLayout;
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
> Un seul `IntlayerProvider` couvre les deux moitiés de l'arborescence : il initialise le contexte serveur délimité à la requête lu par les hooks serveur, et monte le fournisseur client pour que les composants client reçoivent la même locale.
|
|
332
|
+
|
|
333
|
+
</Tab>
|
|
334
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
335
|
+
|
|
270
336
|
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
271
337
|
import type { Metadata } from "next";
|
|
272
338
|
import type { ReactNode } from "react";
|
|
273
339
|
import "./globals.css";
|
|
274
|
-
import {
|
|
340
|
+
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
275
341
|
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
276
342
|
import { getLocale } from "next-intlayer/server";
|
|
277
343
|
export { generateStaticParams } from "next-intlayer";
|
|
@@ -296,9 +362,9 @@ const RootLayout = async ({
|
|
|
296
362
|
|
|
297
363
|
return (
|
|
298
364
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
299
|
-
<
|
|
300
|
-
<
|
|
301
|
-
</
|
|
365
|
+
<body>
|
|
366
|
+
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
367
|
+
</body>
|
|
302
368
|
</html>
|
|
303
369
|
);
|
|
304
370
|
};
|
|
@@ -306,6 +372,9 @@ const RootLayout = async ({
|
|
|
306
372
|
export default RootLayout;
|
|
307
373
|
```
|
|
308
374
|
|
|
375
|
+
</Tab>
|
|
376
|
+
</Tabs>
|
|
377
|
+
|
|
309
378
|
</Step>
|
|
310
379
|
|
|
311
380
|
<Step number={5} title="Déclarez votre contenu">
|
|
@@ -422,6 +491,44 @@ export default pageContent;
|
|
|
422
491
|
|
|
423
492
|
Accédez à vos dictionnaires de contenu partout dans votre application :
|
|
424
493
|
|
|
494
|
+
<Tabs>
|
|
495
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
496
|
+
|
|
497
|
+
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
498
|
+
import type { FC } from "react";
|
|
499
|
+
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
500
|
+
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
501
|
+
import { useIntlayer } from "next-intlayer";
|
|
502
|
+
import { NextPage } from "next";
|
|
503
|
+
|
|
504
|
+
const PageContent: FC = () => {
|
|
505
|
+
const content = useIntlayer("page");
|
|
506
|
+
|
|
507
|
+
return (
|
|
508
|
+
<>
|
|
509
|
+
<p>{content.getStarted.main}</p>
|
|
510
|
+
<code>{content.getStarted.pageLink}</code>
|
|
511
|
+
</>
|
|
512
|
+
);
|
|
513
|
+
};
|
|
514
|
+
|
|
515
|
+
const Page: NextPage = () => (
|
|
516
|
+
<>
|
|
517
|
+
<PageContent />
|
|
518
|
+
<ServerComponentExample />
|
|
519
|
+
<ClientComponentExample />
|
|
520
|
+
</>
|
|
521
|
+
);
|
|
522
|
+
|
|
523
|
+
export default Page;
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
- **`IntlayerProvider`** est monté une seule fois, dans la mise en page racine. Il fournit la locale aux composants serveur et client, de sorte que les pages ne s'enveloppent plus elles-mêmes.
|
|
527
|
+
- Sans un segment de chemin `[locale]`, la locale provient toujours de la requête — l'en-tête `x-intlayer-locale` défini par le proxy Intlayer, puis le cookie de locale — que les hooks serveur lisent d'eux-mêmes quand le fournisseur n'a pas s'exécuté.
|
|
528
|
+
|
|
529
|
+
</Tab>
|
|
530
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
531
|
+
|
|
425
532
|
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
426
533
|
import type { FC } from "react";
|
|
427
534
|
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
@@ -473,6 +580,9 @@ export default Page;
|
|
|
473
580
|
|
|
474
581
|
> Le layout et la page ne peuvent pas partager un même contexte serveur, car le système de contextes serveur est basé sur un magasin de données par requête (via le mécanisme [le cache de React](https://react.dev/reference/react/cache)), ce qui fait que chaque "contexte" est recréé pour différents segments de l'application. Placer le provider dans un layout partagé briserait cette isolation, empêchant la bonne propagation des valeurs du contexte serveur vers vos composants serveur.
|
|
475
582
|
|
|
583
|
+
</Tab>
|
|
584
|
+
</Tabs>
|
|
585
|
+
|
|
476
586
|
```tsx {4,7} fileName="src/components/clientComponentExample/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
477
587
|
"use client";
|
|
478
588
|
|
|
@@ -491,6 +601,30 @@ export const ClientComponentExample: FC = () => {
|
|
|
491
601
|
};
|
|
492
602
|
```
|
|
493
603
|
|
|
604
|
+
<Tabs>
|
|
605
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
606
|
+
|
|
607
|
+
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
608
|
+
import type { FC } from "react";
|
|
609
|
+
import { useIntlayer } from "next-intlayer";
|
|
610
|
+
|
|
611
|
+
export const ServerComponentExample: FC = () => {
|
|
612
|
+
const content = useIntlayer("server-component-example"); // Créer une déclaration de contenu associée
|
|
613
|
+
|
|
614
|
+
return (
|
|
615
|
+
<div>
|
|
616
|
+
<h2>{content.title}</h2>
|
|
617
|
+
<p>{content.content}</p>
|
|
618
|
+
</div>
|
|
619
|
+
);
|
|
620
|
+
};
|
|
621
|
+
```
|
|
622
|
+
|
|
623
|
+
> `next-intlayer` est le chemin d'import isomorphe : la condition d'export `react-server` fournit aux composants serveur l'implémentation ambient-locale, tandis que les composants clients obtiennent celle basée sur le contexte. Le même appel fonctionne des deux côtés.
|
|
624
|
+
|
|
625
|
+
</Tab>
|
|
626
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
627
|
+
|
|
494
628
|
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
495
629
|
import type { FC } from "react";
|
|
496
630
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -507,6 +641,9 @@ export const ServerComponentExample: FC = () => {
|
|
|
507
641
|
};
|
|
508
642
|
```
|
|
509
643
|
|
|
644
|
+
</Tab>
|
|
645
|
+
</Tabs>
|
|
646
|
+
|
|
510
647
|
> Si vous souhaitez utiliser votre contenu dans un attribut de type `string`, tel que `alt`, `title`, `href`, `aria-label`, etc., vous pouvez utiliser la valeur de la fonction, par exemple :
|
|
511
648
|
|
|
512
649
|
> ```html
|
|
@@ -534,6 +671,8 @@ export const config = {
|
|
|
534
671
|
|
|
535
672
|
> Le `intlayerProxy` sert à détecter la locale préférée de l'utilisateur et à le rediriger vers l'URL appropriée, comme indiqué dans la [configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/configuration.md). De plus, il permet d'enregistrer la locale préférée de l'utilisateur dans un cookie.
|
|
536
673
|
|
|
674
|
+
> Depuis Intlayer v9, ce middleware respecte l'option `routing.enableProxy` (`true` par défaut). Définissez `routing.enableProxy: false` dans votre configuration pour le transformer en pass-through sans supprimer ce fichier. Voir les [notes de version v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/releases/v9.md).
|
|
675
|
+
|
|
537
676
|
> Si vous devez chaîner plusieurs proxies (par exemple `intlayerProxy` avec une authentification ou des proxies personnalisés), Intlayer fournit désormais un helper appelé `multipleProxies`.
|
|
538
677
|
|
|
539
678
|
```ts
|
|
@@ -214,12 +214,23 @@ export default withIntlayer(nextConfig);
|
|
|
214
214
|
|
|
215
215
|
> Le plugin Next.js `withIntlayer()` est utilisé pour intégrer Intlayer avec Next.js. Il assure la construction des fichiers de déclaration de contenu et les surveille en mode développement. Il définit les variables d'environnement Intlayer dans les environnements [Webpack](https://webpack.js.org/) ou [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). De plus, il fournit des alias pour optimiser les performances et garantit la compatibilité avec les composants serveur.
|
|
216
216
|
|
|
217
|
+
> La fonction `withIntlayer()` est une fonction promise. Si vous souhaitez l'utiliser avec d'autres plugins, vous pouvez l'attendre. Exemple :
|
|
218
|
+
>
|
|
219
|
+
> ```tsx
|
|
220
|
+
> const nextConfig = await withIntlayer(nextConfig);
|
|
221
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
222
|
+
>
|
|
223
|
+
> export default nextConfigWithOtherPlugins;
|
|
224
|
+
> ```
|
|
225
|
+
|
|
217
226
|
</Step>
|
|
218
227
|
|
|
219
228
|
<Step number={4} title="Configurer le Middleware pour la Détection de la Langue">
|
|
220
229
|
|
|
221
230
|
Configurez le middleware pour détecter automatiquement et gérer la langue préférée de l'utilisateur :
|
|
222
231
|
|
|
232
|
+
> Depuis Intlayer v9, ce middleware respecte l'option `routing.enableProxy` (`true` par défaut). Définissez `routing.enableProxy: false` dans votre configuration pour le transformer en pass-through sans supprimer ce fichier. Consultez les [notes de version v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/releases/v9.md).
|
|
233
|
+
|
|
223
234
|
```typescript fileName="src/middleware.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
224
235
|
export { intlayerProxy as middleware } from "next-intlayer/middleware";
|
|
225
236
|
|
|
@@ -249,48 +260,24 @@ Mettez en place un routage dynamique pour servir du contenu localisé en fonctio
|
|
|
249
260
|
|
|
250
261
|
Modifiez votre fichier `_app.tsx` pour inclure les providers Intlayer.
|
|
251
262
|
|
|
252
|
-
```tsx fileName="src/pages/_app.tsx" codeFormat="typescript"
|
|
263
|
+
```tsx fileName="src/pages/_app.tsx" codeFormat=["typescript", 'esm', 'cjs']
|
|
253
264
|
import type { FC } from "react";
|
|
254
265
|
import type { AppProps } from "next/app";
|
|
255
|
-
import {
|
|
266
|
+
import { IntlayerProvider } from "next-intlayer";
|
|
256
267
|
|
|
257
268
|
const App = FC<AppProps>({ Component, pageProps }) => {
|
|
258
269
|
const { locale } = pageProps;
|
|
259
270
|
|
|
260
271
|
return (
|
|
261
|
-
<
|
|
272
|
+
<IntlayerProvider locale={locale}>
|
|
262
273
|
<Component {...pageProps} />
|
|
263
|
-
</
|
|
274
|
+
</IntlayerProvider>
|
|
264
275
|
);
|
|
265
276
|
}
|
|
266
277
|
|
|
267
278
|
export default MyApp;
|
|
268
279
|
```
|
|
269
280
|
|
|
270
|
-
```jsx fileName="src/pages/_app.mjx" codeFormat="esm"
|
|
271
|
-
import { IntlayerClientProvider } from "next-intlayer";
|
|
272
|
-
|
|
273
|
-
const App = ({ Component, pageProps }) => (
|
|
274
|
-
<IntlayerClientProvider locale={locale}>
|
|
275
|
-
<Component {...pageProps} />
|
|
276
|
-
</IntlayerClientProvider>
|
|
277
|
-
);
|
|
278
|
-
|
|
279
|
-
export default App;
|
|
280
|
-
```
|
|
281
|
-
|
|
282
|
-
```jsx fileName="src/pages/_app.csx" codeFormat="commonjs"
|
|
283
|
-
const { IntlayerClientProvider } = require("next-intlayer");
|
|
284
|
-
|
|
285
|
-
const App = ({ Component, pageProps }) => (
|
|
286
|
-
<IntlayerClientProvider locale={locale}>
|
|
287
|
-
<Component {...pageProps} />
|
|
288
|
-
</IntlayerClientProvider>
|
|
289
|
-
);
|
|
290
|
-
|
|
291
|
-
module.exports = App;
|
|
292
|
-
```
|
|
293
|
-
|
|
294
281
|
3. **Configurer `getStaticPaths` et `getStaticProps` :**
|
|
295
282
|
|
|
296
283
|
Dans votre fichier `[locale]/index.tsx`, définissez les chemins et les props pour gérer les différentes locales.
|
|
@@ -621,6 +621,35 @@ export default aboutPageContent;
|
|
|
621
621
|
|
|
622
622
|
</Step>
|
|
623
623
|
|
|
624
|
+
<Step number="6b" title="Créer une mise en page avec Navigation" isOptional={true}>
|
|
625
|
+
|
|
626
|
+
Les layouts Nuxt vous permettent de définir une structure commune pour vos pages. Créez un layout par défaut qui inclut le sélecteur de locale et la navigation :
|
|
627
|
+
|
|
628
|
+
```vue fileName="layouts/default.vue"
|
|
629
|
+
<script setup lang="ts">
|
|
630
|
+
import Links from "~/components/Links.vue";
|
|
631
|
+
import LocaleSwitcher from "~/components/LocaleSwitcher.vue";
|
|
632
|
+
</script>
|
|
633
|
+
|
|
634
|
+
<template>
|
|
635
|
+
<div>
|
|
636
|
+
<header>
|
|
637
|
+
<LocaleSwitcher />
|
|
638
|
+
</header>
|
|
639
|
+
<main>
|
|
640
|
+
<slot />
|
|
641
|
+
</main>
|
|
642
|
+
|
|
643
|
+
<Links href="/">Accueil</Links>
|
|
644
|
+
<Links href="/about">À propos</Links>
|
|
645
|
+
</div>
|
|
646
|
+
</template>
|
|
647
|
+
```
|
|
648
|
+
|
|
649
|
+
Le composant `Links` (montré ci-dessous) garantit que les liens de navigation interne sont automatiquement localisés.
|
|
650
|
+
|
|
651
|
+
</Step>
|
|
652
|
+
|
|
624
653
|
</Steps>
|
|
625
654
|
|
|
626
655
|
### Configuration Git
|