@intlayer/docs 8.7.6 → 8.7.8-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/i18n_using_next-i18next.md +1 -1
- package/blog/ar/i18n_using_next-intl.md +1 -1
- package/blog/ar/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/de/i18n_using_next-i18next.md +1 -1
- package/blog/de/i18n_using_next-intl.md +1 -1
- package/blog/de/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/en/i18n_using_next-i18next.md +1 -1
- package/blog/en/i18n_using_next-intl.md +1 -1
- package/blog/en/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/en-GB/i18n_using_next-i18next.md +1 -1
- package/blog/en-GB/i18n_using_next-intl.md +1 -1
- package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/es/i18n_using_next-i18next.md +1 -1
- package/blog/es/i18n_using_next-intl.md +1 -1
- package/blog/es/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/fr/i18n_using_next-i18next.md +1 -1
- package/blog/fr/i18n_using_next-intl.md +1 -1
- package/blog/fr/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/hi/i18n_using_next-i18next.md +1 -1
- package/blog/hi/i18n_using_next-intl.md +1 -1
- package/blog/hi/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/id/i18n_using_next-i18next.md +1 -1
- package/blog/id/i18n_using_next-intl.md +1 -1
- package/blog/it/i18n_using_next-i18next.md +1 -1
- package/blog/it/i18n_using_next-intl.md +1 -1
- package/blog/it/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/ja/i18n_using_next-i18next.md +1 -1
- package/blog/ja/i18n_using_next-intl.md +1 -1
- package/blog/ko/i18n_using_next-i18next.md +1 -1
- package/blog/ko/i18n_using_next-intl.md +1 -1
- package/blog/pl/i18n_using_next-i18next.md +1 -1
- package/blog/pl/i18n_using_next-intl.md +1 -1
- package/blog/pt/i18n_using_next-i18next.md +1 -1
- package/blog/pt/i18n_using_next-intl.md +1 -1
- package/blog/pt/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/ru/i18n_using_next-i18next.md +1 -1
- package/blog/ru/i18n_using_next-intl.md +1 -1
- package/blog/ru/list_i18n_technologies/frameworks/react-native.md +0 -4
- package/blog/tr/i18n_using_next-i18next.md +1 -1
- package/blog/tr/i18n_using_next-intl.md +1 -1
- package/blog/uk/i18n_using_next-i18next.md +1 -1
- package/blog/uk/i18n_using_next-intl.md +1 -1
- package/blog/vi/i18n_using_next-i18next.md +1 -1
- package/blog/vi/i18n_using_next-intl.md +1 -1
- package/blog/zh/i18n_using_next-i18next.md +1 -1
- package/blog/zh/i18n_using_next-intl.md +1 -1
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +140 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +140 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/common.d.ts +1 -0
- package/dist/types/common.d.ts.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/dictionary/condition.md +2 -116
- package/docs/ar/dictionary/content_file.md +2 -202
- package/docs/ar/dictionary/enumeration.md +2 -116
- package/docs/ar/dictionary/file.md +3 -103
- package/docs/ar/dictionary/function_fetching.md +3 -105
- package/docs/ar/dictionary/gender.md +2 -140
- package/docs/ar/dictionary/insertion.md +3 -57
- package/docs/ar/dictionary/nesting.md +3 -121
- package/docs/ar/dictionary/translation.md +4 -146
- package/docs/ar/interest_of_intlayer.md +2 -59
- package/docs/ar/intlayer_CMS.md +3 -228
- package/docs/ar/intlayer_visual_editor.md +1 -72
- package/docs/ar/intlayer_with_adonisjs.md +3 -109
- package/docs/ar/intlayer_with_analog.md +21 -41
- package/docs/ar/intlayer_with_angular.md +15 -41
- package/docs/ar/intlayer_with_astro.md +187 -58
- package/docs/ar/intlayer_with_astro_lit.md +619 -0
- package/docs/ar/intlayer_with_astro_preact.md +568 -0
- package/docs/ar/intlayer_with_astro_react.md +566 -0
- package/docs/ar/intlayer_with_astro_solid.md +566 -0
- package/docs/ar/intlayer_with_astro_svelte.md +570 -0
- package/docs/ar/intlayer_with_astro_vanilla.md +547 -0
- package/docs/ar/intlayer_with_astro_vue.md +588 -0
- package/docs/ar/intlayer_with_create_react_app.md +8 -388
- package/docs/ar/intlayer_with_express.md +5 -177
- package/docs/ar/intlayer_with_fastify.md +5 -193
- package/docs/ar/intlayer_with_hono.md +2 -2
- package/docs/ar/intlayer_with_lynx+react.md +2 -116
- package/docs/ar/intlayer_with_nestjs.md +3 -33
- package/docs/ar/intlayer_with_nextjs_14.md +58 -491
- package/docs/ar/intlayer_with_nextjs_15.md +56 -815
- package/docs/ar/intlayer_with_nextjs_16.md +40 -883
- package/docs/ar/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +12 -506
- package/docs/ar/intlayer_with_nextjs_page_router.md +37 -652
- package/docs/ar/intlayer_with_nuxt.md +16 -98
- package/docs/ar/intlayer_with_react_native+expo.md +31 -283
- package/docs/ar/intlayer_with_react_router_v7.md +15 -91
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/ar/intlayer_with_storybook.md +1 -37
- package/docs/ar/intlayer_with_svelte_kit.md +29 -71
- package/docs/ar/intlayer_with_tanstack+solid.md +14 -70
- package/docs/ar/intlayer_with_tanstack.md +14 -62
- package/docs/ar/intlayer_with_vanilla.md +28 -108
- package/docs/ar/intlayer_with_vite+lit.md +98 -156
- package/docs/ar/intlayer_with_vite+preact.md +101 -710
- package/docs/ar/intlayer_with_vite+react.md +113 -797
- package/docs/ar/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/ar/intlayer_with_vite+solid.md +79 -152
- package/docs/ar/intlayer_with_vite+svelte.md +104 -132
- package/docs/ar/intlayer_with_vite+vanilla.md +105 -155
- package/docs/ar/intlayer_with_vite+vue.md +92 -253
- package/docs/ar/introduction.md +2 -58
- package/docs/ar/packages/express-intlayer/t.md +6 -181
- package/docs/ar/packages/hono-intlayer/t.md +1 -45
- package/docs/ar/packages/intlayer/getConfiguration.md +2 -54
- package/docs/ar/packages/intlayer/getEnumeration.md +2 -60
- package/docs/ar/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/ar/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/ar/packages/intlayer/getLocaleName.md +1 -43
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +2 -60
- package/docs/ar/packages/intlayer/getPathWithoutLocale.md +1 -20
- package/docs/ar/packages/intlayer/getPrefix.md +1 -12
- package/docs/ar/packages/intlayer/getTranslation.md +3 -87
- package/docs/ar/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/ar/packages/next-intlayer/t.md +5 -137
- package/docs/ar/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/ar/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/ar/packages/next-intlayer/useLocale.md +1 -51
- package/docs/ar/packages/react-intlayer/t.md +4 -106
- package/docs/ar/packages/react-intlayer/useDictionary.md +3 -115
- package/docs/ar/packages/react-intlayer/useI18n.md +4 -107
- package/docs/ar/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/ar/packages/react-intlayer/useLocale.md +3 -103
- package/docs/ar/per_locale_file.md +3 -35
- package/docs/bn/intlayer_with_fastify.md +5 -193
- package/docs/bn/intlayer_with_hono.md +5 -158
- package/docs/bn/intlayer_with_storybook.md +1 -37
- package/docs/bn/intlayer_with_vanilla.md +28 -108
- package/docs/bn/intlayer_with_vite+lit.md +98 -119
- package/docs/bn/intlayer_with_vite+vanilla.md +105 -155
- package/docs/bn/introduction.md +2 -58
- package/docs/cs/intlayer_with_fastify.md +5 -193
- package/docs/cs/intlayer_with_hono.md +5 -158
- package/docs/cs/intlayer_with_storybook.md +1 -37
- package/docs/cs/intlayer_with_vanilla.md +28 -108
- package/docs/cs/intlayer_with_vite+lit.md +98 -156
- package/docs/cs/intlayer_with_vite+vanilla.md +105 -155
- package/docs/cs/introduction.md +2 -58
- package/docs/de/dictionary/condition.md +2 -116
- package/docs/de/dictionary/content_file.md +2 -201
- package/docs/de/dictionary/enumeration.md +2 -116
- package/docs/de/dictionary/file.md +3 -100
- package/docs/de/dictionary/function_fetching.md +3 -103
- package/docs/de/dictionary/gender.md +2 -181
- package/docs/de/dictionary/insertion.md +3 -57
- package/docs/de/dictionary/nesting.md +3 -123
- package/docs/de/dictionary/translation.md +4 -146
- package/docs/de/interest_of_intlayer.md +2 -59
- package/docs/de/intlayer_CMS.md +3 -226
- package/docs/de/intlayer_visual_editor.md +1 -72
- package/docs/de/intlayer_with_adonisjs.md +3 -108
- package/docs/de/intlayer_with_analog.md +21 -41
- package/docs/de/intlayer_with_angular.md +15 -41
- package/docs/de/intlayer_with_astro.md +181 -56
- package/docs/de/intlayer_with_astro_lit.md +615 -0
- package/docs/de/intlayer_with_astro_preact.md +564 -0
- package/docs/de/intlayer_with_astro_react.md +562 -0
- package/docs/de/intlayer_with_astro_solid.md +562 -0
- package/docs/de/intlayer_with_astro_svelte.md +566 -0
- package/docs/de/intlayer_with_astro_vanilla.md +543 -0
- package/docs/de/intlayer_with_astro_vue.md +584 -0
- package/docs/de/intlayer_with_create_react_app.md +33 -686
- package/docs/de/intlayer_with_express.md +5 -182
- package/docs/de/intlayer_with_fastify.md +5 -193
- package/docs/de/intlayer_with_hono.md +5 -158
- package/docs/de/intlayer_with_lynx+react.md +2 -75
- package/docs/de/intlayer_with_nestjs.md +3 -33
- package/docs/de/intlayer_with_nextjs_14.md +51 -573
- package/docs/de/intlayer_with_nextjs_15.md +61 -823
- package/docs/de/intlayer_with_nextjs_16.md +45 -870
- package/docs/de/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +11 -499
- package/docs/de/intlayer_with_nextjs_page_router.md +36 -632
- package/docs/de/intlayer_with_nuxt.md +16 -98
- package/docs/de/intlayer_with_react_native+expo.md +31 -286
- package/docs/de/intlayer_with_react_router_v7.md +15 -91
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +14 -62
- package/docs/de/intlayer_with_storybook.md +1 -37
- package/docs/de/intlayer_with_svelte_kit.md +29 -71
- package/docs/de/intlayer_with_tanstack+solid.md +14 -70
- package/docs/de/intlayer_with_tanstack.md +14 -62
- package/docs/de/intlayer_with_vanilla.md +28 -108
- package/docs/de/intlayer_with_vite+lit.md +98 -162
- package/docs/de/intlayer_with_vite+preact.md +104 -713
- package/docs/de/intlayer_with_vite+react.md +105 -789
- package/docs/de/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/de/intlayer_with_vite+solid.md +79 -153
- package/docs/de/intlayer_with_vite+svelte.md +104 -132
- package/docs/de/intlayer_with_vite+vanilla.md +105 -155
- package/docs/de/intlayer_with_vite+vue.md +92 -285
- package/docs/de/introduction.md +2 -61
- package/docs/de/packages/express-intlayer/t.md +6 -182
- package/docs/de/packages/hono-intlayer/t.md +3 -95
- package/docs/de/packages/intlayer/getConfiguration.md +2 -54
- package/docs/de/packages/intlayer/getEnumeration.md +2 -60
- package/docs/de/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/de/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/de/packages/intlayer/getLocaleName.md +1 -43
- package/docs/de/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/de/packages/intlayer/getMultilingualUrls.md +2 -60
- package/docs/de/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/de/packages/intlayer/getPrefix.md +1 -15
- package/docs/de/packages/intlayer/getTranslation.md +3 -86
- package/docs/de/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/de/packages/next-intlayer/t.md +5 -137
- package/docs/de/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/de/packages/next-intlayer/useIntlayer.md +3 -120
- package/docs/de/packages/next-intlayer/useLocale.md +1 -51
- package/docs/de/packages/react-intlayer/t.md +4 -109
- package/docs/de/packages/react-intlayer/useDictionary.md +3 -127
- package/docs/de/packages/react-intlayer/useI18n.md +4 -107
- package/docs/de/packages/react-intlayer/useIntlayer.md +3 -114
- package/docs/de/packages/react-intlayer/useLocale.md +3 -103
- package/docs/de/per_locale_file.md +3 -35
- package/docs/en/benchmark/___NOTE.md +16 -0
- package/docs/en/dictionary/condition.md +2 -116
- package/docs/en/dictionary/content_file.md +2 -200
- package/docs/en/dictionary/enumeration.md +4 -202
- package/docs/en/dictionary/file.md +3 -100
- package/docs/en/dictionary/function_fetching.md +3 -103
- package/docs/en/dictionary/gender.md +2 -140
- package/docs/en/dictionary/insertion.md +3 -57
- package/docs/en/dictionary/nesting.md +3 -121
- package/docs/en/dictionary/translation.md +4 -146
- package/docs/en/interest_of_intlayer.md +2 -58
- package/docs/en/intlayer_CMS.md +3 -227
- package/docs/en/intlayer_visual_editor.md +1 -72
- package/docs/en/intlayer_with_adonisjs.md +3 -107
- package/docs/en/intlayer_with_analog.md +21 -41
- package/docs/en/intlayer_with_angular.md +15 -41
- package/docs/en/intlayer_with_astro.md +397 -38
- package/docs/en/intlayer_with_astro_lit.md +616 -0
- package/docs/en/intlayer_with_astro_preact.md +571 -0
- package/docs/en/intlayer_with_astro_react.md +564 -0
- package/docs/en/intlayer_with_astro_solid.md +564 -0
- package/docs/en/intlayer_with_astro_svelte.md +568 -0
- package/docs/en/intlayer_with_astro_vanilla.md +543 -0
- package/docs/en/intlayer_with_astro_vue.md +586 -0
- package/docs/en/intlayer_with_create_react_app.md +34 -686
- package/docs/en/intlayer_with_express.md +5 -179
- package/docs/en/intlayer_with_fastify.md +5 -193
- package/docs/en/intlayer_with_hono.md +5 -158
- package/docs/en/intlayer_with_lynx+react.md +3 -109
- package/docs/en/intlayer_with_nestjs.md +3 -31
- package/docs/en/intlayer_with_nextjs_14.md +47 -777
- package/docs/en/intlayer_with_nextjs_15.md +39 -822
- package/docs/en/intlayer_with_nextjs_16.md +40 -891
- package/docs/en/intlayer_with_nextjs_compiler.md +2 -70
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +11 -488
- package/docs/en/intlayer_with_nextjs_page_router.md +102 -713
- package/docs/en/intlayer_with_nuxt.md +16 -98
- package/docs/en/intlayer_with_react_native+expo.md +31 -291
- package/docs/en/intlayer_with_react_router_v7.md +15 -107
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +15 -99
- package/docs/en/intlayer_with_storybook.md +1 -37
- package/docs/en/intlayer_with_svelte_kit.md +28 -78
- package/docs/en/intlayer_with_tanstack+solid.md +14 -70
- package/docs/en/intlayer_with_tanstack.md +14 -70
- package/docs/en/intlayer_with_vanilla.md +28 -108
- package/docs/en/intlayer_with_vite+lit.md +98 -162
- package/docs/en/intlayer_with_vite+preact.md +100 -717
- package/docs/en/intlayer_with_vite+react.md +104 -796
- package/docs/en/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/en/intlayer_with_vite+solid.md +79 -211
- package/docs/en/intlayer_with_vite+svelte.md +104 -138
- package/docs/en/intlayer_with_vite+vanilla.md +105 -155
- package/docs/en/intlayer_with_vite+vue.md +92 -244
- package/docs/en/introduction.md +2 -58
- package/docs/en/packages/express-intlayer/t.md +6 -181
- package/docs/en/packages/hono-intlayer/t.md +3 -95
- package/docs/en/packages/intlayer/getConfiguration.md +2 -54
- package/docs/en/packages/intlayer/getEnumeration.md +2 -60
- package/docs/en/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/en/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/en/packages/intlayer/getLocaleName.md +1 -43
- package/docs/en/packages/intlayer/getLocalizedUrl.md +3 -71
- package/docs/en/packages/intlayer/getMultilingualUrls.md +3 -79
- package/docs/en/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/en/packages/intlayer/getPrefix.md +1 -15
- package/docs/en/packages/intlayer/getTranslation.md +3 -87
- package/docs/en/packages/next-intlayer/t.md +5 -137
- package/docs/en/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/en/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/en/packages/next-intlayer/useLocale.md +1 -51
- package/docs/en/packages/react-intlayer/t.md +4 -109
- package/docs/en/packages/react-intlayer/useI18n.md +4 -107
- package/docs/en/packages/react-intlayer/useLocale.md +3 -103
- package/docs/en/per_locale_file.md +3 -33
- package/docs/en-GB/dictionary/condition.md +2 -116
- package/docs/en-GB/dictionary/content_file.md +2 -213
- package/docs/en-GB/dictionary/enumeration.md +2 -116
- package/docs/en-GB/dictionary/file.md +3 -100
- package/docs/en-GB/dictionary/function_fetching.md +3 -103
- package/docs/en-GB/dictionary/gender.md +2 -140
- package/docs/en-GB/dictionary/insertion.md +3 -81
- package/docs/en-GB/dictionary/nesting.md +3 -121
- package/docs/en-GB/dictionary/translation.md +4 -146
- package/docs/en-GB/interest_of_intlayer.md +2 -58
- package/docs/en-GB/intlayer_CMS.md +3 -223
- package/docs/en-GB/intlayer_visual_editor.md +1 -72
- package/docs/en-GB/intlayer_with_adonisjs.md +3 -109
- package/docs/en-GB/intlayer_with_analog.md +21 -41
- package/docs/en-GB/intlayer_with_angular.md +15 -41
- package/docs/en-GB/intlayer_with_astro.md +183 -53
- package/docs/en-GB/intlayer_with_astro_lit.md +619 -0
- package/docs/en-GB/intlayer_with_astro_preact.md +568 -0
- package/docs/en-GB/intlayer_with_astro_react.md +566 -0
- package/docs/en-GB/intlayer_with_astro_solid.md +566 -0
- package/docs/en-GB/intlayer_with_astro_svelte.md +570 -0
- package/docs/en-GB/intlayer_with_astro_vanilla.md +547 -0
- package/docs/en-GB/intlayer_with_astro_vue.md +588 -0
- package/docs/en-GB/intlayer_with_create_react_app.md +33 -707
- package/docs/en-GB/intlayer_with_express.md +5 -182
- package/docs/en-GB/intlayer_with_fastify.md +5 -193
- package/docs/en-GB/intlayer_with_hono.md +5 -158
- package/docs/en-GB/intlayer_with_lynx+react.md +2 -116
- package/docs/en-GB/intlayer_with_nestjs.md +3 -31
- package/docs/en-GB/intlayer_with_nextjs_14.md +77 -773
- package/docs/en-GB/intlayer_with_nextjs_15.md +59 -839
- package/docs/en-GB/intlayer_with_nextjs_16.md +39 -822
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +11 -500
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +38 -634
- package/docs/en-GB/intlayer_with_nuxt.md +16 -103
- package/docs/en-GB/intlayer_with_react_native+expo.md +31 -284
- package/docs/en-GB/intlayer_with_react_router_v7.md +14 -30
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +14 -30
- package/docs/en-GB/intlayer_with_storybook.md +1 -37
- package/docs/en-GB/intlayer_with_svelte_kit.md +28 -10
- package/docs/en-GB/intlayer_with_tanstack+solid.md +14 -70
- package/docs/en-GB/intlayer_with_tanstack.md +13 -1
- package/docs/en-GB/intlayer_with_vanilla.md +28 -108
- package/docs/en-GB/intlayer_with_vite+lit.md +98 -162
- package/docs/en-GB/intlayer_with_vite+preact.md +98 -647
- package/docs/en-GB/intlayer_with_vite+react.md +99 -906
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/en-GB/intlayer_with_vite+solid.md +78 -88
- package/docs/en-GB/intlayer_with_vite+svelte.md +103 -71
- package/docs/en-GB/intlayer_with_vite+vanilla.md +105 -155
- package/docs/en-GB/intlayer_with_vite+vue.md +91 -195
- package/docs/en-GB/introduction.md +2 -58
- package/docs/en-GB/packages/express-intlayer/t.md +6 -181
- package/docs/en-GB/packages/hono-intlayer/t.md +3 -95
- package/docs/en-GB/packages/intlayer/getConfiguration.md +2 -54
- package/docs/en-GB/packages/intlayer/getEnumeration.md +2 -60
- package/docs/en-GB/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/en-GB/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/en-GB/packages/intlayer/getLocaleName.md +1 -43
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/en-GB/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/en-GB/packages/intlayer/getPrefix.md +1 -15
- package/docs/en-GB/packages/intlayer/getTranslation.md +4 -107
- package/docs/en-GB/packages/intlayer/getTranslationContent.md +3 -98
- package/docs/en-GB/packages/next-intlayer/t.md +5 -141
- package/docs/en-GB/packages/next-intlayer/useDictionary.md +3 -124
- package/docs/en-GB/packages/next-intlayer/useIntlayer.md +3 -119
- package/docs/en-GB/packages/next-intlayer/useLocale.md +1 -51
- package/docs/en-GB/packages/react-intlayer/t.md +4 -110
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +3 -117
- package/docs/en-GB/packages/react-intlayer/useI18n.md +3 -106
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +3 -114
- package/docs/en-GB/packages/react-intlayer/useLocale.md +3 -102
- package/docs/en-GB/per_locale_file.md +3 -33
- package/docs/es/dictionary/condition.md +2 -116
- package/docs/es/dictionary/content_file.md +2 -233
- package/docs/es/dictionary/enumeration.md +2 -116
- package/docs/es/dictionary/file.md +3 -100
- package/docs/es/dictionary/function_fetching.md +3 -103
- package/docs/es/dictionary/gender.md +2 -140
- package/docs/es/dictionary/insertion.md +3 -57
- package/docs/es/dictionary/nesting.md +3 -121
- package/docs/es/dictionary/translation.md +4 -146
- package/docs/es/interest_of_intlayer.md +2 -58
- package/docs/es/intlayer_CMS.md +3 -227
- package/docs/es/intlayer_visual_editor.md +1 -72
- package/docs/es/intlayer_with_adonisjs.md +3 -107
- package/docs/es/intlayer_with_analog.md +21 -41
- package/docs/es/intlayer_with_angular.md +15 -41
- package/docs/es/intlayer_with_astro.md +178 -52
- package/docs/es/intlayer_with_astro_lit.md +612 -0
- package/docs/es/intlayer_with_astro_preact.md +562 -0
- package/docs/es/intlayer_with_astro_react.md +560 -0
- package/docs/es/intlayer_with_astro_solid.md +560 -0
- package/docs/es/intlayer_with_astro_svelte.md +564 -0
- package/docs/es/intlayer_with_astro_vanilla.md +539 -0
- package/docs/es/intlayer_with_astro_vue.md +582 -0
- package/docs/es/intlayer_with_create_react_app.md +33 -649
- package/docs/es/intlayer_with_express.md +5 -179
- package/docs/es/intlayer_with_fastify.md +5 -193
- package/docs/es/intlayer_with_hono.md +5 -158
- package/docs/es/intlayer_with_lynx+react.md +2 -108
- package/docs/es/intlayer_with_nestjs.md +3 -31
- package/docs/es/intlayer_with_nextjs_14.md +53 -678
- package/docs/es/intlayer_with_nextjs_15.md +56 -812
- package/docs/es/intlayer_with_nextjs_16.md +40 -890
- package/docs/es/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +11 -486
- package/docs/es/intlayer_with_nextjs_page_router.md +37 -648
- package/docs/es/intlayer_with_nuxt.md +16 -98
- package/docs/es/intlayer_with_react_native+expo.md +31 -284
- package/docs/es/intlayer_with_react_router_v7.md +15 -92
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +15 -92
- package/docs/es/intlayer_with_storybook.md +1 -37
- package/docs/es/intlayer_with_svelte_kit.md +29 -71
- package/docs/es/intlayer_with_tanstack+solid.md +14 -70
- package/docs/es/intlayer_with_tanstack.md +14 -62
- package/docs/es/intlayer_with_vanilla.md +28 -108
- package/docs/es/intlayer_with_vite+lit.md +98 -162
- package/docs/es/intlayer_with_vite+preact.md +100 -709
- package/docs/es/intlayer_with_vite+react.md +105 -789
- package/docs/es/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/es/intlayer_with_vite+solid.md +79 -152
- package/docs/es/intlayer_with_vite+svelte.md +104 -132
- package/docs/es/intlayer_with_vite+vanilla.md +105 -155
- package/docs/es/intlayer_with_vite+vue.md +92 -255
- package/docs/es/introduction.md +2 -60
- package/docs/es/packages/express-intlayer/t.md +6 -183
- package/docs/es/packages/hono-intlayer/t.md +3 -95
- package/docs/es/packages/intlayer/getConfiguration.md +2 -54
- package/docs/es/packages/intlayer/getEnumeration.md +2 -60
- package/docs/es/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/es/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/es/packages/intlayer/getLocaleName.md +1 -43
- package/docs/es/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/es/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/es/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/es/packages/intlayer/getPrefix.md +1 -15
- package/docs/es/packages/intlayer/getTranslation.md +3 -87
- package/docs/es/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/es/packages/next-intlayer/index.md +2 -60
- package/docs/es/packages/next-intlayer/t.md +5 -137
- package/docs/es/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/es/packages/next-intlayer/useIntlayer.md +3 -119
- package/docs/es/packages/next-intlayer/useLocale.md +1 -51
- package/docs/es/packages/react-intlayer/index.md +2 -60
- package/docs/es/packages/react-intlayer/t.md +4 -110
- package/docs/es/packages/react-intlayer/useDictionary.md +3 -113
- package/docs/es/packages/react-intlayer/useI18n.md +4 -107
- package/docs/es/packages/react-intlayer/useIntlayer.md +3 -110
- package/docs/es/packages/react-intlayer/useLocale.md +3 -103
- package/docs/es/per_locale_file.md +3 -34
- package/docs/fr/dictionary/condition.md +2 -116
- package/docs/fr/dictionary/content_file.md +2 -200
- package/docs/fr/dictionary/enumeration.md +2 -116
- package/docs/fr/dictionary/file.md +3 -100
- package/docs/fr/dictionary/function_fetching.md +3 -103
- package/docs/fr/dictionary/gender.md +2 -141
- package/docs/fr/dictionary/insertion.md +3 -57
- package/docs/fr/dictionary/nesting.md +3 -121
- package/docs/fr/dictionary/translation.md +4 -146
- package/docs/fr/interest_of_intlayer.md +2 -59
- package/docs/fr/intlayer_CMS.md +3 -227
- package/docs/fr/intlayer_visual_editor.md +1 -72
- package/docs/fr/intlayer_with_adonisjs.md +3 -107
- package/docs/fr/intlayer_with_analog.md +21 -41
- package/docs/fr/intlayer_with_angular.md +15 -41
- package/docs/fr/intlayer_with_astro.md +175 -49
- package/docs/fr/intlayer_with_astro_lit.md +612 -0
- package/docs/fr/intlayer_with_astro_preact.md +567 -0
- package/docs/fr/intlayer_with_astro_react.md +560 -0
- package/docs/fr/intlayer_with_astro_solid.md +560 -0
- package/docs/fr/intlayer_with_astro_svelte.md +564 -0
- package/docs/fr/intlayer_with_astro_vanilla.md +539 -0
- package/docs/fr/intlayer_with_astro_vue.md +582 -0
- package/docs/fr/intlayer_with_create_react_app.md +9 -645
- package/docs/fr/intlayer_with_express.md +4 -110
- package/docs/fr/intlayer_with_fastify.md +5 -193
- package/docs/fr/intlayer_with_hono.md +5 -158
- package/docs/fr/intlayer_with_lynx+react.md +2 -108
- package/docs/fr/intlayer_with_nestjs.md +3 -31
- package/docs/fr/intlayer_with_nextjs_14.md +51 -573
- package/docs/fr/intlayer_with_nextjs_15.md +64 -842
- package/docs/fr/intlayer_with_nextjs_16.md +44 -867
- package/docs/fr/intlayer_with_nextjs_compiler.md +2 -64
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +11 -522
- package/docs/fr/intlayer_with_nextjs_page_router.md +37 -647
- package/docs/fr/intlayer_with_nuxt.md +16 -99
- package/docs/fr/intlayer_with_react_native+expo.md +31 -284
- package/docs/fr/intlayer_with_react_router_v7.md +15 -94
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +15 -94
- package/docs/fr/intlayer_with_storybook.md +1 -37
- package/docs/fr/intlayer_with_svelte_kit.md +29 -71
- package/docs/fr/intlayer_with_tanstack+solid.md +14 -70
- package/docs/fr/intlayer_with_tanstack.md +14 -62
- package/docs/fr/intlayer_with_vanilla.md +28 -108
- package/docs/fr/intlayer_with_vite+lit.md +98 -162
- package/docs/fr/intlayer_with_vite+preact.md +100 -709
- package/docs/fr/intlayer_with_vite+react.md +104 -788
- package/docs/fr/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/fr/intlayer_with_vite+solid.md +79 -152
- package/docs/fr/intlayer_with_vite+svelte.md +104 -132
- package/docs/fr/intlayer_with_vite+vanilla.md +105 -155
- package/docs/fr/intlayer_with_vite+vue.md +92 -251
- package/docs/fr/introduction.md +2 -60
- package/docs/fr/packages/express-intlayer/t.md +6 -184
- package/docs/fr/packages/hono-intlayer/t.md +3 -95
- package/docs/fr/packages/intlayer/getConfiguration.md +2 -54
- package/docs/fr/packages/intlayer/getEnumeration.md +2 -60
- package/docs/fr/packages/intlayer/getHTMLTextDir.md +2 -39
- package/docs/fr/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/fr/packages/intlayer/getLocaleName.md +1 -43
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +2 -60
- package/docs/fr/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/fr/packages/intlayer/getPrefix.md +1 -15
- package/docs/fr/packages/intlayer/getTranslation.md +3 -87
- package/docs/fr/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/fr/packages/next-intlayer/t.md +5 -137
- package/docs/fr/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/fr/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/fr/packages/next-intlayer/useLocale.md +1 -51
- package/docs/fr/packages/react-intlayer/index.md +2 -60
- package/docs/fr/packages/react-intlayer/t.md +4 -109
- package/docs/fr/packages/react-intlayer/useDictionary.md +3 -114
- package/docs/fr/packages/react-intlayer/useI18n.md +4 -107
- package/docs/fr/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/fr/packages/react-intlayer/useLocale.md +3 -103
- package/docs/fr/per_locale_file.md +3 -35
- package/docs/hi/dictionary/condition.md +2 -116
- package/docs/hi/dictionary/content_file.md +2 -201
- package/docs/hi/dictionary/enumeration.md +2 -116
- package/docs/hi/dictionary/file.md +3 -100
- package/docs/hi/dictionary/function_fetching.md +3 -103
- package/docs/hi/dictionary/gender.md +2 -141
- package/docs/hi/dictionary/insertion.md +3 -57
- package/docs/hi/dictionary/nesting.md +3 -121
- package/docs/hi/dictionary/translation.md +4 -149
- package/docs/hi/interest_of_intlayer.md +2 -58
- package/docs/hi/intlayer_CMS.md +3 -227
- package/docs/hi/intlayer_visual_editor.md +1 -72
- package/docs/hi/intlayer_with_adonisjs.md +3 -109
- package/docs/hi/intlayer_with_analog.md +21 -41
- package/docs/hi/intlayer_with_angular.md +15 -41
- package/docs/hi/intlayer_with_astro.md +183 -57
- package/docs/hi/intlayer_with_astro_lit.md +615 -0
- package/docs/hi/intlayer_with_astro_preact.md +564 -0
- package/docs/hi/intlayer_with_astro_react.md +562 -0
- package/docs/hi/intlayer_with_astro_solid.md +562 -0
- package/docs/hi/intlayer_with_astro_svelte.md +566 -0
- package/docs/hi/intlayer_with_astro_vanilla.md +543 -0
- package/docs/hi/intlayer_with_astro_vue.md +584 -0
- package/docs/hi/intlayer_with_create_react_app.md +8 -444
- package/docs/hi/intlayer_with_express.md +6 -195
- package/docs/hi/intlayer_with_fastify.md +5 -193
- package/docs/hi/intlayer_with_hono.md +2 -2
- package/docs/hi/intlayer_with_lynx+react.md +2 -116
- package/docs/hi/intlayer_with_nestjs.md +3 -31
- package/docs/hi/intlayer_with_nextjs_14.md +60 -512
- package/docs/hi/intlayer_with_nextjs_15.md +60 -822
- package/docs/hi/intlayer_with_nextjs_16.md +40 -883
- package/docs/hi/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +11 -498
- package/docs/hi/intlayer_with_nextjs_page_router.md +37 -648
- package/docs/hi/intlayer_with_nuxt.md +16 -101
- package/docs/hi/intlayer_with_react_native+expo.md +31 -284
- package/docs/hi/intlayer_with_react_router_v7.md +15 -91
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/hi/intlayer_with_storybook.md +1 -37
- package/docs/hi/intlayer_with_svelte_kit.md +29 -71
- package/docs/hi/intlayer_with_tanstack+solid.md +14 -70
- package/docs/hi/intlayer_with_tanstack.md +14 -62
- package/docs/hi/intlayer_with_vanilla.md +28 -108
- package/docs/hi/intlayer_with_vite+lit.md +98 -156
- package/docs/hi/intlayer_with_vite+preact.md +98 -619
- package/docs/hi/intlayer_with_vite+react.md +123 -816
- package/docs/hi/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/hi/intlayer_with_vite+solid.md +79 -151
- package/docs/hi/intlayer_with_vite+svelte.md +104 -132
- package/docs/hi/intlayer_with_vite+vanilla.md +105 -87
- package/docs/hi/intlayer_with_vite+vue.md +92 -250
- package/docs/hi/introduction.md +2 -62
- package/docs/hi/packages/express-intlayer/t.md +6 -181
- package/docs/hi/packages/hono-intlayer/t.md +1 -45
- package/docs/hi/packages/intlayer/getConfiguration.md +2 -54
- package/docs/hi/packages/intlayer/getEnumeration.md +2 -60
- package/docs/hi/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/hi/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/hi/packages/intlayer/getLocaleName.md +1 -43
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/hi/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/hi/packages/intlayer/getPrefix.md +1 -19
- package/docs/hi/packages/intlayer/getTranslation.md +3 -87
- package/docs/hi/packages/intlayer/getTranslationContent.md +3 -86
- package/docs/hi/packages/intlayer/index.md +4 -129
- package/docs/hi/packages/next-intlayer/t.md +5 -138
- package/docs/hi/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/hi/packages/next-intlayer/useIntlayer.md +3 -120
- package/docs/hi/packages/next-intlayer/useLocale.md +1 -51
- package/docs/hi/packages/react-intlayer/t.md +4 -106
- package/docs/hi/packages/react-intlayer/useDictionary.md +3 -115
- package/docs/hi/packages/react-intlayer/useI18n.md +3 -111
- package/docs/hi/packages/react-intlayer/useIntlayer.md +3 -113
- package/docs/hi/packages/react-intlayer/useLocale.md +3 -103
- package/docs/hi/per_locale_file.md +3 -34
- package/docs/id/dictionary/condition.md +2 -110
- package/docs/id/dictionary/content_file.md +2 -200
- package/docs/id/dictionary/enumeration.md +2 -116
- package/docs/id/dictionary/file.md +3 -105
- package/docs/id/dictionary/function_fetching.md +3 -103
- package/docs/id/dictionary/gender.md +2 -140
- package/docs/id/dictionary/insertion.md +3 -57
- package/docs/id/dictionary/nesting.md +3 -121
- package/docs/id/dictionary/translation.md +4 -147
- package/docs/id/interest_of_intlayer.md +2 -58
- package/docs/id/intlayer_CMS.md +3 -227
- package/docs/id/intlayer_visual_editor.md +1 -72
- package/docs/id/intlayer_with_adonisjs.md +3 -109
- package/docs/id/intlayer_with_analog.md +21 -41
- package/docs/id/intlayer_with_angular.md +15 -41
- package/docs/id/intlayer_with_astro.md +182 -64
- package/docs/id/intlayer_with_astro_lit.md +615 -0
- package/docs/id/intlayer_with_astro_preact.md +564 -0
- package/docs/id/intlayer_with_astro_react.md +562 -0
- package/docs/id/intlayer_with_astro_solid.md +562 -0
- package/docs/id/intlayer_with_astro_svelte.md +566 -0
- package/docs/id/intlayer_with_astro_vanilla.md +543 -0
- package/docs/id/intlayer_with_astro_vue.md +584 -0
- package/docs/id/intlayer_with_create_react_app.md +39 -694
- package/docs/id/intlayer_with_express.md +5 -181
- package/docs/id/intlayer_with_fastify.md +5 -193
- package/docs/id/intlayer_with_hono.md +2 -2
- package/docs/id/intlayer_with_lynx+react.md +3 -109
- package/docs/id/intlayer_with_nestjs.md +3 -31
- package/docs/id/intlayer_with_nextjs_14.md +59 -796
- package/docs/id/intlayer_with_nextjs_15.md +37 -815
- package/docs/id/intlayer_with_nextjs_16.md +41 -884
- package/docs/id/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +11 -501
- package/docs/id/intlayer_with_nextjs_page_router.md +102 -713
- package/docs/id/intlayer_with_nuxt.md +16 -99
- package/docs/id/intlayer_with_react_native+expo.md +31 -291
- package/docs/id/intlayer_with_react_router_v7.md +15 -99
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +15 -99
- package/docs/id/intlayer_with_storybook.md +1 -37
- package/docs/id/intlayer_with_svelte_kit.md +29 -71
- package/docs/id/intlayer_with_tanstack+solid.md +14 -70
- package/docs/id/intlayer_with_tanstack.md +14 -62
- package/docs/id/intlayer_with_vanilla.md +28 -108
- package/docs/id/intlayer_with_vite+lit.md +98 -156
- package/docs/id/intlayer_with_vite+preact.md +103 -712
- package/docs/id/intlayer_with_vite+react.md +115 -803
- package/docs/id/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/id/intlayer_with_vite+solid.md +79 -150
- package/docs/id/intlayer_with_vite+svelte.md +104 -132
- package/docs/id/intlayer_with_vite+vanilla.md +105 -155
- package/docs/id/intlayer_with_vite+vue.md +92 -258
- package/docs/id/introduction.md +2 -60
- package/docs/id/packages/express-intlayer/t.md +6 -181
- package/docs/id/packages/hono-intlayer/t.md +1 -45
- package/docs/id/packages/intlayer/getConfiguration.md +2 -54
- package/docs/id/packages/intlayer/getEnumeration.md +2 -60
- package/docs/id/packages/intlayer/getHTMLTextDir.md +2 -39
- package/docs/id/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/id/packages/intlayer/getLocaleName.md +1 -44
- package/docs/id/packages/intlayer/getLocalizedUrl.md +2 -59
- package/docs/id/packages/intlayer/getMultilingualUrls.md +2 -64
- package/docs/id/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/id/packages/intlayer/getPrefix.md +1 -12
- package/docs/id/packages/intlayer/getTranslation.md +3 -87
- package/docs/id/packages/intlayer/getTranslationContent.md +3 -86
- package/docs/id/packages/next-intlayer/t.md +5 -137
- package/docs/id/packages/next-intlayer/useDictionary.md +3 -121
- package/docs/id/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/id/packages/next-intlayer/useLocale.md +1 -51
- package/docs/id/packages/react-intlayer/t.md +4 -109
- package/docs/id/packages/react-intlayer/useDictionary.md +3 -113
- package/docs/id/packages/react-intlayer/useI18n.md +4 -123
- package/docs/id/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/id/packages/react-intlayer/useLocale.md +3 -103
- package/docs/id/per_locale_file.md +3 -35
- package/docs/it/dictionary/condition.md +2 -116
- package/docs/it/dictionary/content_file.md +2 -201
- package/docs/it/dictionary/enumeration.md +2 -116
- package/docs/it/dictionary/file.md +3 -100
- package/docs/it/dictionary/function_fetching.md +3 -103
- package/docs/it/dictionary/gender.md +2 -140
- package/docs/it/dictionary/insertion.md +3 -57
- package/docs/it/dictionary/nesting.md +3 -121
- package/docs/it/dictionary/translation.md +4 -146
- package/docs/it/interest_of_intlayer.md +2 -59
- package/docs/it/intlayer_CMS.md +3 -227
- package/docs/it/intlayer_visual_editor.md +1 -72
- package/docs/it/intlayer_with_adonisjs.md +3 -109
- package/docs/it/intlayer_with_analog.md +21 -41
- package/docs/it/intlayer_with_angular.md +15 -41
- package/docs/it/intlayer_with_astro.md +187 -61
- package/docs/it/intlayer_with_astro_lit.md +615 -0
- package/docs/it/intlayer_with_astro_preact.md +564 -0
- package/docs/it/intlayer_with_astro_react.md +562 -0
- package/docs/it/intlayer_with_astro_solid.md +562 -0
- package/docs/it/intlayer_with_astro_svelte.md +566 -0
- package/docs/it/intlayer_with_astro_vanilla.md +543 -0
- package/docs/it/intlayer_with_astro_vue.md +584 -0
- package/docs/it/intlayer_with_create_react_app.md +9 -551
- package/docs/it/intlayer_with_express.md +5 -182
- package/docs/it/intlayer_with_fastify.md +5 -193
- package/docs/it/intlayer_with_hono.md +2 -2
- package/docs/it/intlayer_with_lynx+react.md +2 -116
- package/docs/it/intlayer_with_nestjs.md +3 -31
- package/docs/it/intlayer_with_nextjs_14.md +51 -575
- package/docs/it/intlayer_with_nextjs_15.md +55 -813
- package/docs/it/intlayer_with_nextjs_16.md +40 -883
- package/docs/it/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +11 -498
- package/docs/it/intlayer_with_nextjs_page_router.md +37 -650
- package/docs/it/intlayer_with_nuxt.md +16 -101
- package/docs/it/intlayer_with_react_native+expo.md +31 -286
- package/docs/it/intlayer_with_react_router_v7.md +15 -93
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +15 -93
- package/docs/it/intlayer_with_storybook.md +1 -37
- package/docs/it/intlayer_with_svelte_kit.md +29 -71
- package/docs/it/intlayer_with_tanstack+solid.md +14 -70
- package/docs/it/intlayer_with_tanstack.md +14 -62
- package/docs/it/intlayer_with_vanilla.md +28 -108
- package/docs/it/intlayer_with_vite+lit.md +98 -162
- package/docs/it/intlayer_with_vite+preact.md +102 -711
- package/docs/it/intlayer_with_vite+react.md +112 -797
- package/docs/it/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/it/intlayer_with_vite+solid.md +79 -151
- package/docs/it/intlayer_with_vite+svelte.md +104 -132
- package/docs/it/intlayer_with_vite+vanilla.md +105 -155
- package/docs/it/intlayer_with_vite+vue.md +80 -281
- package/docs/it/introduction.md +2 -60
- package/docs/it/packages/express-intlayer/t.md +6 -181
- package/docs/it/packages/hono-intlayer/t.md +1 -45
- package/docs/it/packages/intlayer/getConfiguration.md +2 -54
- package/docs/it/packages/intlayer/getEnumeration.md +2 -60
- package/docs/it/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/it/packages/intlayer/getLocaleLang.md +1 -20
- package/docs/it/packages/intlayer/getLocaleName.md +1 -43
- package/docs/it/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/it/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/it/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/it/packages/intlayer/getPrefix.md +1 -12
- package/docs/it/packages/intlayer/getTranslation.md +3 -86
- package/docs/it/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/it/packages/next-intlayer/t.md +5 -141
- package/docs/it/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/it/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/it/packages/next-intlayer/useLocale.md +1 -51
- package/docs/it/packages/react-intlayer/t.md +4 -109
- package/docs/it/packages/react-intlayer/useDictionary.md +3 -115
- package/docs/it/packages/react-intlayer/useI18n.md +4 -107
- package/docs/it/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/it/packages/react-intlayer/useLocale.md +3 -103
- package/docs/it/per_locale_file.md +3 -35
- package/docs/ja/dictionary/condition.md +2 -116
- package/docs/ja/dictionary/content_file.md +2 -204
- package/docs/ja/dictionary/enumeration.md +2 -116
- package/docs/ja/dictionary/file.md +3 -100
- package/docs/ja/dictionary/function_fetching.md +3 -103
- package/docs/ja/dictionary/gender.md +2 -140
- package/docs/ja/dictionary/insertion.md +3 -57
- package/docs/ja/dictionary/nesting.md +3 -121
- package/docs/ja/dictionary/translation.md +6 -160
- package/docs/ja/interest_of_intlayer.md +2 -58
- package/docs/ja/intlayer_CMS.md +3 -227
- package/docs/ja/intlayer_visual_editor.md +1 -75
- package/docs/ja/intlayer_with_adonisjs.md +3 -109
- package/docs/ja/intlayer_with_analog.md +21 -41
- package/docs/ja/intlayer_with_angular.md +15 -41
- package/docs/ja/intlayer_with_astro.md +184 -53
- package/docs/ja/intlayer_with_astro_lit.md +618 -0
- package/docs/ja/intlayer_with_astro_preact.md +572 -0
- package/docs/ja/intlayer_with_astro_react.md +565 -0
- package/docs/ja/intlayer_with_astro_solid.md +565 -0
- package/docs/ja/intlayer_with_astro_svelte.md +569 -0
- package/docs/ja/intlayer_with_astro_vanilla.md +546 -0
- package/docs/ja/intlayer_with_astro_vue.md +587 -0
- package/docs/ja/intlayer_with_create_react_app.md +7 -387
- package/docs/ja/intlayer_with_express.md +5 -182
- package/docs/ja/intlayer_with_fastify.md +5 -193
- package/docs/ja/intlayer_with_hono.md +2 -2
- package/docs/ja/intlayer_with_lynx+react.md +2 -116
- package/docs/ja/intlayer_with_nestjs.md +3 -31
- package/docs/ja/intlayer_with_nextjs_14.md +54 -682
- package/docs/ja/intlayer_with_nextjs_15.md +56 -836
- package/docs/ja/intlayer_with_nextjs_16.md +40 -883
- package/docs/ja/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +12 -551
- package/docs/ja/intlayer_with_nextjs_page_router.md +73 -745
- package/docs/ja/intlayer_with_nuxt.md +16 -99
- package/docs/ja/intlayer_with_react_native+expo.md +31 -287
- package/docs/ja/intlayer_with_react_router_v7.md +32 -61
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/ja/intlayer_with_storybook.md +1 -37
- package/docs/ja/intlayer_with_svelte_kit.md +27 -69
- package/docs/ja/intlayer_with_tanstack+solid.md +14 -70
- package/docs/ja/intlayer_with_tanstack.md +13 -1
- package/docs/ja/intlayer_with_vanilla.md +28 -108
- package/docs/ja/intlayer_with_vite+lit.md +98 -162
- package/docs/ja/intlayer_with_vite+preact.md +88 -62
- package/docs/ja/intlayer_with_vite+react.md +88 -62
- package/docs/ja/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/ja/intlayer_with_vite+solid.md +80 -161
- package/docs/ja/intlayer_with_vite+svelte.md +104 -132
- package/docs/ja/intlayer_with_vite+vanilla.md +105 -155
- package/docs/ja/intlayer_with_vite+vue.md +92 -264
- package/docs/ja/introduction.md +2 -59
- package/docs/ja/packages/express-intlayer/t.md +6 -188
- package/docs/ja/packages/hono-intlayer/t.md +1 -45
- package/docs/ja/packages/intlayer/getConfiguration.md +2 -54
- package/docs/ja/packages/intlayer/getEnumeration.md +2 -60
- package/docs/ja/packages/intlayer/getHTMLTextDir.md +2 -39
- package/docs/ja/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/ja/packages/intlayer/getLocaleName.md +1 -43
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/ja/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/ja/packages/intlayer/getPrefix.md +1 -12
- package/docs/ja/packages/intlayer/getTranslation.md +3 -87
- package/docs/ja/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/ja/packages/next-intlayer/t.md +5 -137
- package/docs/ja/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/ja/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/ja/packages/next-intlayer/useLocale.md +1 -51
- package/docs/ja/packages/react-intlayer/t.md +4 -109
- package/docs/ja/packages/react-intlayer/useDictionary.md +3 -115
- package/docs/ja/packages/react-intlayer/useI18n.md +4 -107
- package/docs/ja/packages/react-intlayer/useIntlayer.md +2 -95
- package/docs/ja/packages/react-intlayer/useLocale.md +3 -103
- package/docs/ja/per_locale_file.md +3 -34
- package/docs/ko/cli/index.md +1 -1
- package/docs/ko/dictionary/condition.md +2 -116
- package/docs/ko/dictionary/content_file.md +2 -201
- package/docs/ko/dictionary/enumeration.md +2 -116
- package/docs/ko/dictionary/file.md +3 -100
- package/docs/ko/dictionary/function_fetching.md +3 -103
- package/docs/ko/dictionary/gender.md +2 -140
- package/docs/ko/dictionary/insertion.md +3 -57
- package/docs/ko/dictionary/nesting.md +3 -121
- package/docs/ko/dictionary/translation.md +5 -161
- package/docs/ko/interest_of_intlayer.md +2 -60
- package/docs/ko/intlayer_CMS.md +3 -227
- package/docs/ko/intlayer_visual_editor.md +1 -72
- package/docs/ko/intlayer_with_adonisjs.md +3 -109
- package/docs/ko/intlayer_with_analog.md +21 -41
- package/docs/ko/intlayer_with_angular.md +15 -41
- package/docs/ko/intlayer_with_astro.md +169 -58
- package/docs/ko/intlayer_with_astro_lit.md +598 -0
- package/docs/ko/intlayer_with_astro_preact.md +552 -0
- package/docs/ko/intlayer_with_astro_react.md +545 -0
- package/docs/ko/intlayer_with_astro_solid.md +545 -0
- package/docs/ko/intlayer_with_astro_svelte.md +549 -0
- package/docs/ko/intlayer_with_astro_vanilla.md +526 -0
- package/docs/ko/intlayer_with_astro_vue.md +567 -0
- package/docs/ko/intlayer_with_create_react_app.md +38 -693
- package/docs/ko/intlayer_with_express.md +5 -182
- package/docs/ko/intlayer_with_fastify.md +5 -193
- package/docs/ko/intlayer_with_hono.md +2 -2
- package/docs/ko/intlayer_with_lynx+react.md +2 -116
- package/docs/ko/intlayer_with_nestjs.md +3 -31
- package/docs/ko/intlayer_with_nextjs_14.md +55 -693
- package/docs/ko/intlayer_with_nextjs_15.md +73 -859
- package/docs/ko/intlayer_with_nextjs_16.md +40 -883
- package/docs/ko/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +13 -548
- package/docs/ko/intlayer_with_nextjs_page_router.md +66 -652
- package/docs/ko/intlayer_with_nuxt.md +16 -99
- package/docs/ko/intlayer_with_react_native+expo.md +31 -286
- package/docs/ko/intlayer_with_react_router_v7.md +15 -91
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/ko/intlayer_with_storybook.md +1 -37
- package/docs/ko/intlayer_with_svelte_kit.md +29 -71
- package/docs/ko/intlayer_with_tanstack+solid.md +14 -70
- package/docs/ko/intlayer_with_tanstack.md +13 -1
- package/docs/ko/intlayer_with_vanilla.md +28 -108
- package/docs/ko/intlayer_with_vite+lit.md +98 -162
- package/docs/ko/intlayer_with_vite+preact.md +102 -711
- package/docs/ko/intlayer_with_vite+react.md +123 -805
- package/docs/ko/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/ko/intlayer_with_vite+solid.md +79 -151
- package/docs/ko/intlayer_with_vite+svelte.md +104 -130
- package/docs/ko/intlayer_with_vite+vanilla.md +105 -155
- package/docs/ko/intlayer_with_vite+vue.md +92 -269
- package/docs/ko/introduction.md +2 -60
- package/docs/ko/packages/express-intlayer/t.md +5 -158
- package/docs/ko/packages/hono-intlayer/t.md +1 -45
- package/docs/ko/packages/intlayer/getConfiguration.md +2 -54
- package/docs/ko/packages/intlayer/getEnumeration.md +2 -60
- package/docs/ko/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/ko/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/ko/packages/intlayer/getLocaleName.md +1 -43
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +2 -64
- package/docs/ko/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/ko/packages/intlayer/getPrefix.md +1 -12
- package/docs/ko/packages/intlayer/getTranslation.md +3 -87
- package/docs/ko/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/ko/packages/next-intlayer/t.md +5 -139
- package/docs/ko/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/ko/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/ko/packages/next-intlayer/useLocale.md +1 -51
- package/docs/ko/packages/react-intlayer/t.md +5 -133
- package/docs/ko/packages/react-intlayer/useDictionary.md +3 -113
- package/docs/ko/packages/react-intlayer/useI18n.md +4 -107
- package/docs/ko/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/ko/packages/react-intlayer/useLocale.md +3 -103
- package/docs/ko/per_locale_file.md +3 -34
- package/docs/nl/intlayer_with_fastify.md +5 -193
- package/docs/nl/intlayer_with_hono.md +5 -158
- package/docs/nl/intlayer_with_storybook.md +1 -37
- package/docs/nl/intlayer_with_vanilla.md +28 -108
- package/docs/nl/intlayer_with_vite+lit.md +98 -156
- package/docs/nl/intlayer_with_vite+vanilla.md +105 -155
- package/docs/nl/introduction.md +2 -58
- package/docs/pl/dictionary/condition.md +2 -111
- package/docs/pl/dictionary/content_file.md +2 -205
- package/docs/pl/dictionary/enumeration.md +2 -116
- package/docs/pl/dictionary/file.md +3 -102
- package/docs/pl/dictionary/function_fetching.md +3 -103
- package/docs/pl/dictionary/gender.md +2 -141
- package/docs/pl/dictionary/insertion.md +3 -57
- package/docs/pl/dictionary/nesting.md +3 -121
- package/docs/pl/dictionary/translation.md +4 -147
- package/docs/pl/interest_of_intlayer.md +2 -58
- package/docs/pl/intlayer_CMS.md +3 -227
- package/docs/pl/intlayer_visual_editor.md +1 -72
- package/docs/pl/intlayer_with_adonisjs.md +3 -109
- package/docs/pl/intlayer_with_analog.md +21 -41
- package/docs/pl/intlayer_with_angular.md +15 -41
- package/docs/pl/intlayer_with_astro.md +179 -89
- package/docs/pl/intlayer_with_astro_lit.md +615 -0
- package/docs/pl/intlayer_with_astro_preact.md +564 -0
- package/docs/pl/intlayer_with_astro_react.md +562 -0
- package/docs/pl/intlayer_with_astro_solid.md +562 -0
- package/docs/pl/intlayer_with_astro_svelte.md +566 -0
- package/docs/pl/intlayer_with_astro_vanilla.md +543 -0
- package/docs/pl/intlayer_with_astro_vue.md +584 -0
- package/docs/pl/intlayer_with_create_react_app.md +39 -696
- package/docs/pl/intlayer_with_express.md +5 -180
- package/docs/pl/intlayer_with_fastify.md +5 -193
- package/docs/pl/intlayer_with_hono.md +2 -2
- package/docs/pl/intlayer_with_lynx+react.md +3 -109
- package/docs/pl/intlayer_with_nestjs.md +3 -31
- package/docs/pl/intlayer_with_nextjs_14.md +54 -789
- package/docs/pl/intlayer_with_nextjs_15.md +39 -843
- package/docs/pl/intlayer_with_nextjs_16.md +60 -903
- package/docs/pl/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +11 -499
- package/docs/pl/intlayer_with_nextjs_page_router.md +69 -751
- package/docs/pl/intlayer_with_nuxt.md +16 -100
- package/docs/pl/intlayer_with_react_native+expo.md +31 -292
- package/docs/pl/intlayer_with_react_router_v7.md +15 -101
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +16 -94
- package/docs/pl/intlayer_with_storybook.md +1 -37
- package/docs/pl/intlayer_with_svelte_kit.md +29 -71
- package/docs/pl/intlayer_with_tanstack+solid.md +14 -70
- package/docs/pl/intlayer_with_tanstack.md +14 -62
- package/docs/pl/intlayer_with_vanilla.md +28 -108
- package/docs/pl/intlayer_with_vite+lit.md +98 -156
- package/docs/pl/intlayer_with_vite+preact.md +102 -711
- package/docs/pl/intlayer_with_vite+react.md +121 -840
- package/docs/pl/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/pl/intlayer_with_vite+solid.md +79 -151
- package/docs/pl/intlayer_with_vite+svelte.md +104 -132
- package/docs/pl/intlayer_with_vite+vanilla.md +105 -155
- package/docs/pl/intlayer_with_vite+vue.md +92 -267
- package/docs/pl/introduction.md +2 -48
- package/docs/pl/packages/express-intlayer/t.md +6 -181
- package/docs/pl/packages/hono-intlayer/t.md +1 -45
- package/docs/pl/packages/intlayer/getConfiguration.md +2 -54
- package/docs/pl/packages/intlayer/getEnumeration.md +2 -60
- package/docs/pl/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/pl/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/pl/packages/intlayer/getLocaleName.md +1 -43
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +2 -59
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/pl/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/pl/packages/intlayer/getPrefix.md +1 -19
- package/docs/pl/packages/intlayer/getTranslation.md +3 -87
- package/docs/pl/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/pl/packages/next-intlayer/t.md +5 -137
- package/docs/pl/packages/next-intlayer/useDictionary.md +3 -120
- package/docs/pl/packages/next-intlayer/useIntlayer.md +2 -82
- package/docs/pl/packages/next-intlayer/useLocale.md +1 -51
- package/docs/pl/packages/react-intlayer/t.md +4 -109
- package/docs/pl/packages/react-intlayer/useDictionary.md +3 -115
- package/docs/pl/packages/react-intlayer/useI18n.md +3 -91
- package/docs/pl/packages/react-intlayer/useIntlayer.md +3 -114
- package/docs/pl/packages/react-intlayer/useLocale.md +3 -103
- package/docs/pl/per_locale_file.md +3 -34
- package/docs/pt/dictionary/condition.md +2 -116
- package/docs/pt/dictionary/content_file.md +2 -202
- package/docs/pt/dictionary/enumeration.md +2 -116
- package/docs/pt/dictionary/file.md +3 -101
- package/docs/pt/dictionary/function_fetching.md +3 -103
- package/docs/pt/dictionary/gender.md +2 -140
- package/docs/pt/dictionary/insertion.md +3 -57
- package/docs/pt/dictionary/nesting.md +3 -121
- package/docs/pt/dictionary/translation.md +4 -146
- package/docs/pt/interest_of_intlayer.md +2 -60
- package/docs/pt/intlayer_CMS.md +3 -227
- package/docs/pt/intlayer_visual_editor.md +1 -72
- package/docs/pt/intlayer_with_adonisjs.md +3 -109
- package/docs/pt/intlayer_with_analog.md +21 -41
- package/docs/pt/intlayer_with_angular.md +15 -41
- package/docs/pt/intlayer_with_astro.md +184 -58
- package/docs/pt/intlayer_with_astro_lit.md +597 -0
- package/docs/pt/intlayer_with_astro_preact.md +564 -0
- package/docs/pt/intlayer_with_astro_react.md +562 -0
- package/docs/pt/intlayer_with_astro_solid.md +562 -0
- package/docs/pt/intlayer_with_astro_svelte.md +566 -0
- package/docs/pt/intlayer_with_astro_vanilla.md +543 -0
- package/docs/pt/intlayer_with_astro_vue.md +584 -0
- package/docs/pt/intlayer_with_create_react_app.md +53 -654
- package/docs/pt/intlayer_with_express.md +5 -183
- package/docs/pt/intlayer_with_fastify.md +5 -193
- package/docs/pt/intlayer_with_hono.md +2 -2
- package/docs/pt/intlayer_with_lynx+react.md +2 -116
- package/docs/pt/intlayer_with_nestjs.md +3 -33
- package/docs/pt/intlayer_with_nextjs_14.md +51 -575
- package/docs/pt/intlayer_with_nextjs_15.md +56 -819
- package/docs/pt/intlayer_with_nextjs_16.md +40 -883
- package/docs/pt/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +11 -499
- package/docs/pt/intlayer_with_nextjs_page_router.md +87 -707
- package/docs/pt/intlayer_with_nuxt.md +16 -98
- package/docs/pt/intlayer_with_react_native+expo.md +31 -283
- package/docs/pt/intlayer_with_react_router_v7.md +3 -98
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/pt/intlayer_with_storybook.md +1 -37
- package/docs/pt/intlayer_with_svelte_kit.md +29 -71
- package/docs/pt/intlayer_with_tanstack+solid.md +14 -70
- package/docs/pt/intlayer_with_tanstack.md +14 -62
- package/docs/pt/intlayer_with_vanilla.md +28 -108
- package/docs/pt/intlayer_with_vite+lit.md +98 -162
- package/docs/pt/intlayer_with_vite+preact.md +100 -709
- package/docs/pt/intlayer_with_vite+react.md +104 -797
- package/docs/pt/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/pt/intlayer_with_vite+solid.md +79 -149
- package/docs/pt/intlayer_with_vite+svelte.md +104 -132
- package/docs/pt/intlayer_with_vite+vanilla.md +105 -155
- package/docs/pt/intlayer_with_vite+vue.md +80 -263
- package/docs/pt/introduction.md +2 -59
- package/docs/pt/packages/express-intlayer/t.md +6 -181
- package/docs/pt/packages/hono-intlayer/t.md +1 -45
- package/docs/pt/packages/intlayer/getConfiguration.md +2 -54
- package/docs/pt/packages/intlayer/getEnumeration.md +2 -60
- package/docs/pt/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/pt/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/pt/packages/intlayer/getLocaleName.md +1 -43
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +2 -60
- package/docs/pt/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/pt/packages/intlayer/getPrefix.md +1 -19
- package/docs/pt/packages/intlayer/getTranslation.md +3 -87
- package/docs/pt/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/pt/packages/next-intlayer/t.md +5 -137
- package/docs/pt/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/pt/packages/next-intlayer/useIntlayer.md +3 -119
- package/docs/pt/packages/next-intlayer/useLocale.md +1 -51
- package/docs/pt/packages/react-intlayer/t.md +4 -109
- package/docs/pt/packages/react-intlayer/useDictionary.md +3 -113
- package/docs/pt/packages/react-intlayer/useI18n.md +4 -107
- package/docs/pt/packages/react-intlayer/useIntlayer.md +3 -114
- package/docs/pt/packages/react-intlayer/useLocale.md +3 -103
- package/docs/pt/per_locale_file.md +3 -35
- package/docs/ru/dictionary/condition.md +2 -116
- package/docs/ru/dictionary/content_file.md +2 -204
- package/docs/ru/dictionary/enumeration.md +2 -116
- package/docs/ru/dictionary/file.md +3 -102
- package/docs/ru/dictionary/function_fetching.md +3 -103
- package/docs/ru/dictionary/gender.md +2 -140
- package/docs/ru/dictionary/insertion.md +3 -57
- package/docs/ru/dictionary/nesting.md +3 -121
- package/docs/ru/dictionary/translation.md +4 -147
- package/docs/ru/interest_of_intlayer.md +2 -60
- package/docs/ru/intlayer_CMS.md +3 -225
- package/docs/ru/intlayer_visual_editor.md +1 -72
- package/docs/ru/intlayer_with_adonisjs.md +3 -109
- package/docs/ru/intlayer_with_analog.md +21 -41
- package/docs/ru/intlayer_with_angular.md +15 -41
- package/docs/ru/intlayer_with_astro.md +172 -45
- package/docs/ru/intlayer_with_astro_lit.md +614 -0
- package/docs/ru/intlayer_with_astro_preact.md +568 -0
- package/docs/ru/intlayer_with_astro_react.md +561 -0
- package/docs/ru/intlayer_with_astro_solid.md +561 -0
- package/docs/ru/intlayer_with_astro_svelte.md +565 -0
- package/docs/ru/intlayer_with_astro_vanilla.md +542 -0
- package/docs/ru/intlayer_with_astro_vue.md +583 -0
- package/docs/ru/intlayer_with_create_react_app.md +9 -677
- package/docs/ru/intlayer_with_express.md +4 -112
- package/docs/ru/intlayer_with_fastify.md +5 -193
- package/docs/ru/intlayer_with_hono.md +2 -2
- package/docs/ru/intlayer_with_lynx+react.md +2 -116
- package/docs/ru/intlayer_with_nestjs.md +3 -33
- package/docs/ru/intlayer_with_nextjs_14.md +50 -534
- package/docs/ru/intlayer_with_nextjs_15.md +60 -834
- package/docs/ru/intlayer_with_nextjs_16.md +60 -903
- package/docs/ru/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +11 -542
- package/docs/ru/intlayer_with_nextjs_page_router.md +38 -610
- package/docs/ru/intlayer_with_nuxt.md +16 -100
- package/docs/ru/intlayer_with_react_native+expo.md +31 -286
- package/docs/ru/intlayer_with_react_router_v7.md +15 -91
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/ru/intlayer_with_storybook.md +1 -37
- package/docs/ru/intlayer_with_svelte_kit.md +29 -71
- package/docs/ru/intlayer_with_tanstack+solid.md +14 -70
- package/docs/ru/intlayer_with_tanstack.md +14 -62
- package/docs/ru/intlayer_with_vanilla.md +28 -108
- package/docs/ru/intlayer_with_vite+lit.md +98 -162
- package/docs/ru/intlayer_with_vite+preact.md +102 -711
- package/docs/ru/intlayer_with_vite+react.md +111 -807
- package/docs/ru/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/ru/intlayer_with_vite+solid.md +79 -153
- package/docs/ru/intlayer_with_vite+svelte.md +104 -132
- package/docs/ru/intlayer_with_vite+vanilla.md +105 -155
- package/docs/ru/intlayer_with_vite+vue.md +92 -266
- package/docs/ru/introduction.md +2 -62
- package/docs/ru/packages/express-intlayer/t.md +6 -183
- package/docs/ru/packages/hono-intlayer/t.md +1 -45
- package/docs/ru/packages/intlayer/getConfiguration.md +2 -54
- package/docs/ru/packages/intlayer/getEnumeration.md +2 -60
- package/docs/ru/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/ru/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/ru/packages/intlayer/getLocaleName.md +1 -43
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/ru/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/ru/packages/intlayer/getPrefix.md +1 -15
- package/docs/ru/packages/intlayer/getTranslation.md +3 -87
- package/docs/ru/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/ru/packages/next-intlayer/t.md +5 -139
- package/docs/ru/packages/next-intlayer/useDictionary.md +3 -119
- package/docs/ru/packages/next-intlayer/useIntlayer.md +3 -120
- package/docs/ru/packages/next-intlayer/useLocale.md +1 -51
- package/docs/ru/packages/react-intlayer/t.md +4 -111
- package/docs/ru/packages/react-intlayer/useDictionary.md +3 -115
- package/docs/ru/packages/react-intlayer/useI18n.md +4 -107
- package/docs/ru/packages/react-intlayer/useIntlayer.md +3 -118
- package/docs/ru/packages/react-intlayer/useLocale.md +2 -58
- package/docs/ru/per_locale_file.md +3 -35
- package/docs/tr/dictionary/condition.md +2 -116
- package/docs/tr/dictionary/content_file.md +2 -201
- package/docs/tr/dictionary/enumeration.md +2 -116
- package/docs/tr/dictionary/file.md +3 -100
- package/docs/tr/dictionary/function_fetching.md +3 -103
- package/docs/tr/dictionary/gender.md +2 -140
- package/docs/tr/dictionary/insertion.md +3 -57
- package/docs/tr/dictionary/nesting.md +3 -121
- package/docs/tr/dictionary/translation.md +4 -119
- package/docs/tr/interest_of_intlayer.md +2 -58
- package/docs/tr/intlayer_CMS.md +3 -227
- package/docs/tr/intlayer_visual_editor.md +1 -72
- package/docs/tr/intlayer_with_adonisjs.md +3 -109
- package/docs/tr/intlayer_with_analog.md +21 -41
- package/docs/tr/intlayer_with_angular.md +15 -41
- package/docs/tr/intlayer_with_astro.md +187 -61
- package/docs/tr/intlayer_with_astro_lit.md +615 -0
- package/docs/tr/intlayer_with_astro_preact.md +564 -0
- package/docs/tr/intlayer_with_astro_react.md +562 -0
- package/docs/tr/intlayer_with_astro_solid.md +562 -0
- package/docs/tr/intlayer_with_astro_svelte.md +566 -0
- package/docs/tr/intlayer_with_astro_vanilla.md +543 -0
- package/docs/tr/intlayer_with_astro_vue.md +584 -0
- package/docs/tr/intlayer_with_create_react_app.md +33 -685
- package/docs/tr/intlayer_with_express.md +5 -179
- package/docs/tr/intlayer_with_fastify.md +5 -193
- package/docs/tr/intlayer_with_hono.md +2 -2
- package/docs/tr/intlayer_with_lynx+react.md +2 -108
- package/docs/tr/intlayer_with_nestjs.md +3 -31
- package/docs/tr/intlayer_with_nextjs_14.md +12 -431
- package/docs/tr/intlayer_with_nextjs_15.md +59 -815
- package/docs/tr/intlayer_with_nextjs_16.md +60 -903
- package/docs/tr/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +11 -498
- package/docs/tr/intlayer_with_nextjs_page_router.md +37 -622
- package/docs/tr/intlayer_with_nuxt.md +16 -98
- package/docs/tr/intlayer_with_react_native+expo.md +31 -265
- package/docs/tr/intlayer_with_react_router_v7.md +15 -91
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +15 -91
- package/docs/tr/intlayer_with_storybook.md +1 -37
- package/docs/tr/intlayer_with_svelte_kit.md +29 -71
- package/docs/tr/intlayer_with_tanstack+solid.md +14 -70
- package/docs/tr/intlayer_with_tanstack.md +14 -62
- package/docs/tr/intlayer_with_vanilla.md +28 -108
- package/docs/tr/intlayer_with_vite+lit.md +98 -156
- package/docs/tr/intlayer_with_vite+preact.md +102 -711
- package/docs/tr/intlayer_with_vite+react.md +107 -791
- package/docs/tr/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/tr/intlayer_with_vite+solid.md +79 -149
- package/docs/tr/intlayer_with_vite+svelte.md +104 -132
- package/docs/tr/intlayer_with_vite+vanilla.md +105 -155
- package/docs/tr/intlayer_with_vite+vue.md +92 -196
- package/docs/tr/introduction.md +2 -58
- package/docs/tr/packages/express-intlayer/t.md +6 -181
- package/docs/tr/packages/hono-intlayer/t.md +1 -45
- package/docs/tr/packages/intlayer/getConfiguration.md +2 -54
- package/docs/tr/packages/intlayer/getEnumeration.md +2 -60
- package/docs/tr/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/tr/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/tr/packages/intlayer/getLocaleName.md +1 -43
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +3 -79
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +2 -60
- package/docs/tr/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/tr/packages/intlayer/getPrefix.md +1 -15
- package/docs/tr/packages/intlayer/getTranslation.md +3 -87
- package/docs/tr/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/tr/packages/next-intlayer/t.md +5 -137
- package/docs/tr/packages/next-intlayer/useDictionary.md +3 -118
- package/docs/tr/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/tr/packages/next-intlayer/useLocale.md +1 -51
- package/docs/tr/packages/react-intlayer/t.md +4 -109
- package/docs/tr/packages/react-intlayer/useDictionary.md +3 -113
- package/docs/tr/packages/react-intlayer/useI18n.md +8 -214
- package/docs/tr/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/tr/packages/react-intlayer/useLocale.md +3 -103
- package/docs/tr/per_locale_file.md +3 -33
- package/docs/uk/dictionary/condition.md +2 -116
- package/docs/uk/dictionary/content_file.md +2 -218
- package/docs/uk/dictionary/enumeration.md +2 -116
- package/docs/uk/dictionary/file.md +3 -100
- package/docs/uk/dictionary/function_fetching.md +3 -103
- package/docs/uk/dictionary/gender.md +2 -140
- package/docs/uk/dictionary/insertion.md +3 -57
- package/docs/uk/dictionary/nesting.md +3 -121
- package/docs/uk/dictionary/translation.md +4 -156
- package/docs/uk/interest_of_intlayer.md +2 -60
- package/docs/uk/intlayer_CMS.md +3 -227
- package/docs/uk/intlayer_visual_editor.md +1 -72
- package/docs/uk/intlayer_with_adonisjs.md +3 -109
- package/docs/uk/intlayer_with_analog.md +21 -41
- package/docs/uk/intlayer_with_angular.md +15 -41
- package/docs/uk/intlayer_with_astro.md +187 -70
- package/docs/uk/intlayer_with_astro_lit.md +615 -0
- package/docs/uk/intlayer_with_astro_preact.md +564 -0
- package/docs/uk/intlayer_with_astro_react.md +562 -0
- package/docs/uk/intlayer_with_astro_solid.md +562 -0
- package/docs/uk/intlayer_with_astro_svelte.md +566 -0
- package/docs/uk/intlayer_with_astro_vanilla.md +543 -0
- package/docs/uk/intlayer_with_astro_vue.md +584 -0
- package/docs/uk/intlayer_with_create_react_app.md +39 -697
- package/docs/uk/intlayer_with_express.md +5 -184
- package/docs/uk/intlayer_with_fastify.md +5 -193
- package/docs/uk/intlayer_with_hono.md +2 -2
- package/docs/uk/intlayer_with_lynx+react.md +3 -118
- package/docs/uk/intlayer_with_nestjs.md +3 -31
- package/docs/uk/intlayer_with_nextjs_14.md +54 -797
- package/docs/uk/intlayer_with_nextjs_15.md +42 -708
- package/docs/uk/intlayer_with_nextjs_16.md +60 -903
- package/docs/uk/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +11 -499
- package/docs/uk/intlayer_with_nextjs_page_router.md +37 -659
- package/docs/uk/intlayer_with_nuxt.md +16 -106
- package/docs/uk/intlayer_with_react_native+expo.md +31 -293
- package/docs/uk/intlayer_with_react_router_v7.md +15 -99
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +15 -93
- package/docs/uk/intlayer_with_storybook.md +1 -37
- package/docs/uk/intlayer_with_svelte_kit.md +28 -70
- package/docs/uk/intlayer_with_tanstack+solid.md +14 -70
- package/docs/uk/intlayer_with_tanstack.md +14 -62
- package/docs/uk/intlayer_with_vanilla.md +28 -108
- package/docs/uk/intlayer_with_vite+lit.md +98 -156
- package/docs/uk/intlayer_with_vite+preact.md +105 -714
- package/docs/uk/intlayer_with_vite+react.md +113 -822
- package/docs/uk/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/uk/intlayer_with_vite+solid.md +79 -151
- package/docs/uk/intlayer_with_vite+svelte.md +104 -132
- package/docs/uk/intlayer_with_vite+vanilla.md +105 -155
- package/docs/uk/intlayer_with_vite+vue.md +92 -268
- package/docs/uk/introduction.md +2 -61
- package/docs/uk/packages/express-intlayer/t.md +6 -187
- package/docs/uk/packages/hono-intlayer/t.md +1 -45
- package/docs/uk/packages/intlayer/getConfiguration.md +2 -54
- package/docs/uk/packages/intlayer/getEnumeration.md +2 -60
- package/docs/uk/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/uk/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/uk/packages/intlayer/getLocaleName.md +1 -43
- package/docs/uk/packages/intlayer/getLocalizedUrl.md +3 -71
- package/docs/uk/packages/intlayer/getMultilingualUrls.md +3 -79
- package/docs/uk/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/uk/packages/intlayer/getPrefix.md +1 -15
- package/docs/uk/packages/intlayer/getTranslation.md +3 -87
- package/docs/uk/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/uk/packages/next-intlayer/t.md +5 -141
- package/docs/uk/packages/next-intlayer/useDictionary.md +3 -126
- package/docs/uk/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/uk/packages/next-intlayer/useLocale.md +1 -51
- package/docs/uk/packages/react-intlayer/t.md +4 -113
- package/docs/uk/packages/react-intlayer/useDictionary.md +3 -118
- package/docs/uk/packages/react-intlayer/useI18n.md +4 -107
- package/docs/uk/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/uk/packages/react-intlayer/useLocale.md +3 -103
- package/docs/uk/per_locale_file.md +3 -34
- package/docs/ur/intlayer_with_fastify.md +5 -193
- package/docs/ur/intlayer_with_hono.md +5 -158
- package/docs/ur/intlayer_with_storybook.md +1 -37
- package/docs/ur/intlayer_with_vanilla.md +28 -108
- package/docs/ur/intlayer_with_vite+lit.md +98 -156
- package/docs/ur/intlayer_with_vite+vanilla.md +105 -155
- package/docs/ur/introduction.md +2 -58
- package/docs/vi/dictionary/condition.md +2 -116
- package/docs/vi/dictionary/content_file.md +2 -200
- package/docs/vi/dictionary/enumeration.md +2 -116
- package/docs/vi/dictionary/file.md +3 -102
- package/docs/vi/dictionary/function_fetching.md +3 -103
- package/docs/vi/dictionary/gender.md +2 -140
- package/docs/vi/dictionary/insertion.md +3 -57
- package/docs/vi/dictionary/nesting.md +3 -121
- package/docs/vi/dictionary/translation.md +4 -146
- package/docs/vi/interest_of_intlayer.md +2 -60
- package/docs/vi/intlayer_CMS.md +3 -227
- package/docs/vi/intlayer_visual_editor.md +1 -72
- package/docs/vi/intlayer_with_adonisjs.md +3 -109
- package/docs/vi/intlayer_with_analog.md +21 -41
- package/docs/vi/intlayer_with_angular.md +15 -41
- package/docs/vi/intlayer_with_astro.md +184 -66
- package/docs/vi/intlayer_with_astro_lit.md +615 -0
- package/docs/vi/intlayer_with_astro_preact.md +564 -0
- package/docs/vi/intlayer_with_astro_react.md +562 -0
- package/docs/vi/intlayer_with_astro_solid.md +562 -0
- package/docs/vi/intlayer_with_astro_svelte.md +566 -0
- package/docs/vi/intlayer_with_astro_vanilla.md +543 -0
- package/docs/vi/intlayer_with_astro_vue.md +584 -0
- package/docs/vi/intlayer_with_create_react_app.md +39 -693
- package/docs/vi/intlayer_with_express.md +5 -179
- package/docs/vi/intlayer_with_fastify.md +5 -193
- package/docs/vi/intlayer_with_hono.md +2 -2
- package/docs/vi/intlayer_with_lynx+react.md +3 -111
- package/docs/vi/intlayer_with_nestjs.md +3 -31
- package/docs/vi/intlayer_with_nextjs_14.md +54 -785
- package/docs/vi/intlayer_with_nextjs_15.md +34 -1171
- package/docs/vi/intlayer_with_nextjs_16.md +60 -903
- package/docs/vi/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +10 -516
- package/docs/vi/intlayer_with_nextjs_page_router.md +69 -742
- package/docs/vi/intlayer_with_nuxt.md +16 -98
- package/docs/vi/intlayer_with_react_native+expo.md +31 -293
- package/docs/vi/intlayer_with_react_router_v7.md +15 -101
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +15 -101
- package/docs/vi/intlayer_with_storybook.md +1 -37
- package/docs/vi/intlayer_with_svelte_kit.md +29 -71
- package/docs/vi/intlayer_with_tanstack+solid.md +14 -70
- package/docs/vi/intlayer_with_tanstack.md +14 -62
- package/docs/vi/intlayer_with_vanilla.md +28 -108
- package/docs/vi/intlayer_with_vite+lit.md +98 -156
- package/docs/vi/intlayer_with_vite+preact.md +103 -712
- package/docs/vi/intlayer_with_vite+react.md +105 -787
- package/docs/vi/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/vi/intlayer_with_vite+solid.md +79 -150
- package/docs/vi/intlayer_with_vite+svelte.md +104 -132
- package/docs/vi/intlayer_with_vite+vanilla.md +105 -155
- package/docs/vi/intlayer_with_vite+vue.md +92 -252
- package/docs/vi/introduction.md +2 -58
- package/docs/vi/packages/express-intlayer/t.md +6 -181
- package/docs/vi/packages/hono-intlayer/t.md +1 -45
- package/docs/vi/packages/intlayer/getConfiguration.md +2 -54
- package/docs/vi/packages/intlayer/getEnumeration.md +2 -62
- package/docs/vi/packages/intlayer/getHTMLTextDir.md +2 -38
- package/docs/vi/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/vi/packages/intlayer/getLocaleName.md +1 -54
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +2 -59
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +2 -62
- package/docs/vi/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/vi/packages/intlayer/getPrefix.md +1 -15
- package/docs/vi/packages/intlayer/getTranslation.md +3 -98
- package/docs/vi/packages/intlayer/getTranslationContent.md +3 -86
- package/docs/vi/packages/next-intlayer/t.md +5 -137
- package/docs/vi/packages/next-intlayer/useDictionary.md +3 -123
- package/docs/vi/packages/next-intlayer/useIntlayer.md +3 -117
- package/docs/vi/packages/next-intlayer/useLocale.md +1 -51
- package/docs/vi/packages/react-intlayer/t.md +4 -111
- package/docs/vi/packages/react-intlayer/useDictionary.md +3 -114
- package/docs/vi/packages/react-intlayer/useI18n.md +5 -124
- package/docs/vi/packages/react-intlayer/useIntlayer.md +3 -114
- package/docs/vi/packages/react-intlayer/useLocale.md +3 -103
- package/docs/vi/per_locale_file.md +3 -35
- package/docs/zh/dictionary/condition.md +2 -116
- package/docs/zh/dictionary/content_file.md +2 -201
- package/docs/zh/dictionary/enumeration.md +2 -116
- package/docs/zh/dictionary/file.md +3 -101
- package/docs/zh/dictionary/function_fetching.md +3 -103
- package/docs/zh/dictionary/gender.md +2 -140
- package/docs/zh/dictionary/insertion.md +3 -57
- package/docs/zh/dictionary/nesting.md +3 -121
- package/docs/zh/dictionary/translation.md +5 -159
- package/docs/zh/interest_of_intlayer.md +2 -59
- package/docs/zh/intlayer_CMS.md +3 -224
- package/docs/zh/intlayer_visual_editor.md +1 -72
- package/docs/zh/intlayer_with_adonisjs.md +3 -109
- package/docs/zh/intlayer_with_analog.md +21 -41
- package/docs/zh/intlayer_with_angular.md +15 -41
- package/docs/zh/intlayer_with_astro.md +169 -58
- package/docs/zh/intlayer_with_astro_lit.md +598 -0
- package/docs/zh/intlayer_with_astro_preact.md +547 -0
- package/docs/zh/intlayer_with_astro_react.md +545 -0
- package/docs/zh/intlayer_with_astro_solid.md +545 -0
- package/docs/zh/intlayer_with_astro_svelte.md +549 -0
- package/docs/zh/intlayer_with_astro_vanilla.md +526 -0
- package/docs/zh/intlayer_with_astro_vue.md +567 -0
- package/docs/zh/intlayer_with_create_react_app.md +33 -680
- package/docs/zh/intlayer_with_express.md +5 -182
- package/docs/zh/intlayer_with_fastify.md +5 -193
- package/docs/zh/intlayer_with_hono.md +5 -158
- package/docs/zh/intlayer_with_lynx+react.md +2 -116
- package/docs/zh/intlayer_with_nestjs.md +3 -31
- package/docs/zh/intlayer_with_nextjs_14.md +56 -597
- package/docs/zh/intlayer_with_nextjs_15.md +56 -818
- package/docs/zh/intlayer_with_nextjs_16.md +60 -903
- package/docs/zh/intlayer_with_nextjs_compiler.md +2 -62
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +11 -541
- package/docs/zh/intlayer_with_nextjs_page_router.md +39 -636
- package/docs/zh/intlayer_with_nuxt.md +16 -101
- package/docs/zh/intlayer_with_react_native+expo.md +31 -286
- package/docs/zh/intlayer_with_react_router_v7.md +15 -92
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +15 -92
- package/docs/zh/intlayer_with_storybook.md +1 -37
- package/docs/zh/intlayer_with_svelte_kit.md +29 -71
- package/docs/zh/intlayer_with_tanstack+solid.md +14 -70
- package/docs/zh/intlayer_with_tanstack.md +14 -2
- package/docs/zh/intlayer_with_vanilla.md +28 -108
- package/docs/zh/intlayer_with_vite+lit.md +98 -162
- package/docs/zh/intlayer_with_vite+preact.md +104 -713
- package/docs/zh/intlayer_with_vite+react.md +106 -786
- package/docs/zh/intlayer_with_vite+react_compiler.md +87 -1
- package/docs/zh/intlayer_with_vite+solid.md +79 -151
- package/docs/zh/intlayer_with_vite+svelte.md +104 -132
- package/docs/zh/intlayer_with_vite+vanilla.md +105 -155
- package/docs/zh/intlayer_with_vite+vue.md +92 -256
- package/docs/zh/introduction.md +2 -59
- package/docs/zh/packages/express-intlayer/t.md +6 -183
- package/docs/zh/packages/hono-intlayer/t.md +2 -70
- package/docs/zh/packages/intlayer/getConfiguration.md +2 -54
- package/docs/zh/packages/intlayer/getEnumeration.md +2 -60
- package/docs/zh/packages/intlayer/getHTMLTextDir.md +2 -39
- package/docs/zh/packages/intlayer/getLocaleLang.md +1 -19
- package/docs/zh/packages/intlayer/getLocaleName.md +1 -43
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +2 -45
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +2 -64
- package/docs/zh/packages/intlayer/getPathWithoutLocale.md +1 -19
- package/docs/zh/packages/intlayer/getPrefix.md +1 -12
- package/docs/zh/packages/intlayer/getTranslation.md +3 -87
- package/docs/zh/packages/intlayer/getTranslationContent.md +3 -87
- package/docs/zh/packages/next-intlayer/t.md +5 -139
- package/docs/zh/packages/next-intlayer/useDictionary.md +3 -120
- package/docs/zh/packages/next-intlayer/useIntlayer.md +3 -119
- package/docs/zh/packages/next-intlayer/useLocale.md +1 -51
- package/docs/zh/packages/react-intlayer/t.md +4 -107
- package/docs/zh/packages/react-intlayer/useDictionary.md +3 -116
- package/docs/zh/packages/react-intlayer/useI18n.md +4 -107
- package/docs/zh/packages/react-intlayer/useIntlayer.md +3 -109
- package/docs/zh/packages/react-intlayer/useLocale.md +3 -103
- package/docs/zh/per_locale_file.md +3 -35
- package/package.json +6 -6
- package/src/common.ts +2 -1
- package/src/generated/docs.entry.ts +140 -0
|
@@ -15,6 +15,7 @@ slugs:
|
|
|
15
15
|
- environment
|
|
16
16
|
- nextjs
|
|
17
17
|
applicationTemplate: https://github.com/aymericzip/intlayer-next-16-template
|
|
18
|
+
applicationShowcase: https://intlayer-next-16-template.vercel.app
|
|
18
19
|
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
19
20
|
history:
|
|
20
21
|
- version: 7.5.9
|
|
@@ -39,13 +40,24 @@ history:
|
|
|
39
40
|
<Tab label="Code" value="code">
|
|
40
41
|
|
|
41
42
|
<iframe
|
|
42
|
-
src="https://
|
|
43
|
+
src="https://ide.intlayer.org/aymericzip/intlayer-next-16-template?file=intlayer.config.ts"
|
|
43
44
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
44
45
|
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
45
46
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
46
47
|
loading="lazy"
|
|
47
48
|
/>
|
|
48
49
|
|
|
50
|
+
</Tab>
|
|
51
|
+
<Tab label="Demo" value="demo">
|
|
52
|
+
|
|
53
|
+
<iframe
|
|
54
|
+
src="https://intlayer-next-16-template.vercel.app"
|
|
55
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
56
|
+
title="Demo Intlayer Next.js 16 Template"
|
|
57
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
58
|
+
loading="lazy"
|
|
59
|
+
/>
|
|
60
|
+
|
|
49
61
|
</Tab>
|
|
50
62
|
</Tabs>
|
|
51
63
|
|
|
@@ -139,7 +151,7 @@ Here is the final structure that we will make:
|
|
|
139
151
|
|
|
140
152
|
Create a config file to configure the languages of your application:
|
|
141
153
|
|
|
142
|
-
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
154
|
+
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
143
155
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
144
156
|
|
|
145
157
|
const config: IntlayerConfig = {
|
|
@@ -157,51 +169,13 @@ const config: IntlayerConfig = {
|
|
|
157
169
|
export default config;
|
|
158
170
|
```
|
|
159
171
|
|
|
160
|
-
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
161
|
-
import { Locales } from "intlayer";
|
|
162
|
-
|
|
163
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
164
|
-
const config = {
|
|
165
|
-
internationalization: {
|
|
166
|
-
locales: [
|
|
167
|
-
Locales.ENGLISH,
|
|
168
|
-
Locales.FRENCH,
|
|
169
|
-
Locales.SPANISH,
|
|
170
|
-
// Your other locales
|
|
171
|
-
],
|
|
172
|
-
defaultLocale: Locales.ENGLISH,
|
|
173
|
-
},
|
|
174
|
-
};
|
|
175
|
-
|
|
176
|
-
export default config;
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
180
|
-
const { Locales } = require("intlayer");
|
|
181
|
-
|
|
182
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
183
|
-
const config = {
|
|
184
|
-
internationalization: {
|
|
185
|
-
locales: [
|
|
186
|
-
Locales.ENGLISH,
|
|
187
|
-
Locales.FRENCH,
|
|
188
|
-
Locales.SPANISH,
|
|
189
|
-
// Your other locales
|
|
190
|
-
],
|
|
191
|
-
defaultLocale: Locales.ENGLISH,
|
|
192
|
-
},
|
|
193
|
-
};
|
|
194
|
-
|
|
195
|
-
module.exports = config;
|
|
196
|
-
```
|
|
197
|
-
|
|
198
172
|
> Through this configuration file, you can set up localized URLs, proxy redirection, cookie names, the location and extension of your content declarations, disable Intlayer logs in the console, and more. For a complete list of available parameters, refer to the [configuration documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md).
|
|
199
173
|
|
|
200
174
|
### Step 3: Integrate Intlayer in Your Next.js Configuration
|
|
201
175
|
|
|
202
176
|
Configure your Next.js setup to use Intlayer:
|
|
203
177
|
|
|
204
|
-
```typescript fileName="next.config.ts" codeFormat="typescript"
|
|
178
|
+
```typescript fileName="next.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
205
179
|
import type { NextConfig } from "next";
|
|
206
180
|
import { withIntlayer } from "next-intlayer/server";
|
|
207
181
|
|
|
@@ -212,28 +186,6 @@ const nextConfig: NextConfig = {
|
|
|
212
186
|
export default withIntlayer(nextConfig);
|
|
213
187
|
```
|
|
214
188
|
|
|
215
|
-
```typescript fileName="next.config.mjs" codeFormat="esm"
|
|
216
|
-
import { withIntlayer } from "next-intlayer/server";
|
|
217
|
-
|
|
218
|
-
/** @type {import('next').NextConfig} */
|
|
219
|
-
const nextConfig = {
|
|
220
|
-
/* config options here */
|
|
221
|
-
};
|
|
222
|
-
|
|
223
|
-
export default withIntlayer(nextConfig);
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
```typescript fileName="next.config.cjs" codeFormat="commonjs"
|
|
227
|
-
const { withIntlayer } = require("next-intlayer/server");
|
|
228
|
-
|
|
229
|
-
/** @type {import('next').NextConfig} */
|
|
230
|
-
const nextConfig = {
|
|
231
|
-
/* config options here */
|
|
232
|
-
};
|
|
233
|
-
|
|
234
|
-
module.exports = withIntlayer(nextConfig);
|
|
235
|
-
```
|
|
236
|
-
|
|
237
189
|
> The `withIntlayer()` Next.js plugin is used to integrate Intlayer with Next.js. It ensures the building of content declaration files and monitors them in development mode. It defines Intlayer environment variables within the [Webpack](https://webpack.js.org/) or [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack) environments. Additionally, it provides aliases to optimize performance and ensures compatibility with server components.
|
|
238
190
|
|
|
239
191
|
> The `withIntlayer()` function is a promise function. It allows to prepare the intlayer dictionaries before the build starts. If you want to use it with other plugins, you can await it. Example:
|
|
@@ -266,7 +218,7 @@ module.exports = withIntlayer(nextConfig);
|
|
|
266
218
|
|
|
267
219
|
Remove everything from `RootLayout` and replace it with the following code:
|
|
268
220
|
|
|
269
|
-
```tsx {3} fileName="src/app/layout.tsx" codeFormat="typescript"
|
|
221
|
+
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
270
222
|
import type { PropsWithChildren, FC } from "react";
|
|
271
223
|
import "./globals.css";
|
|
272
224
|
|
|
@@ -278,37 +230,12 @@ const RootLayout: FC<PropsWithChildren> = ({ children }) => (
|
|
|
278
230
|
export default RootLayout;
|
|
279
231
|
```
|
|
280
232
|
|
|
281
|
-
```jsx {3} fileName="src/app/layout.mjx" codeFormat="esm"
|
|
282
|
-
import "./globals.css";
|
|
283
|
-
|
|
284
|
-
const RootLayout = ({ children }) => (
|
|
285
|
-
// You can still wrap the children with other providers, Like `next-themes`, `react-query`, `framer-motion`, etc.
|
|
286
|
-
<>{children}</>
|
|
287
|
-
);
|
|
288
|
-
|
|
289
|
-
export default RootLayout;
|
|
290
|
-
```
|
|
291
|
-
|
|
292
|
-
```jsx {1,8} fileName="src/app/layout.csx" codeFormat="commonjs"
|
|
293
|
-
require("./globals.css");
|
|
294
|
-
|
|
295
|
-
const RootLayout = ({ children }) => (
|
|
296
|
-
// You can still wrap the children with other providers, Like `next-themes`, `react-query`, `framer-motion`, etc.
|
|
297
|
-
<>{children}</>
|
|
298
|
-
);
|
|
299
|
-
|
|
300
|
-
module.exports = {
|
|
301
|
-
default: RootLayout,
|
|
302
|
-
generateStaticParams,
|
|
303
|
-
};
|
|
304
|
-
```
|
|
305
|
-
|
|
306
233
|
> Keeping the `RootLayout` component empty allows to set the [`lang`](https://developer.mozilla.org/fr/docs/Web/HTML/Global_attributes/lang) and [`dir`](https://developer.mozilla.org/fr/docs/Web/HTML/Global_attributes/dir) attributes to the `<html>` tag.
|
|
307
234
|
|
|
308
235
|
To implement dynamic routing, provide the path for the locale by adding a new layout in your `[locale]` directory:
|
|
309
236
|
|
|
310
|
-
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat="typescript"
|
|
311
|
-
import type
|
|
237
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
238
|
+
import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
|
|
312
239
|
import { Inter } from "next/font/google";
|
|
313
240
|
import { getHTMLTextDir } from "intlayer";
|
|
314
241
|
|
|
@@ -318,24 +245,11 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
318
245
|
const { locale } = await params;
|
|
319
246
|
return (
|
|
320
247
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
321
|
-
<body className={inter.className}>
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
export default LocaleLayout;
|
|
327
|
-
```
|
|
328
|
-
|
|
329
|
-
```jsx fileName="src/app/[locale]/layout.mjx" codeFormat="esm"
|
|
330
|
-
import { getHTMLTextDir } from "intlayer";
|
|
331
|
-
|
|
332
|
-
const inter = Inter({ subsets: ["latin"] });
|
|
333
|
-
|
|
334
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
335
|
-
const { locale } = await params;
|
|
336
|
-
return (
|
|
337
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
338
|
-
<body className={inter.className}>{children}</body>
|
|
248
|
+
<body className={inter.className}>
|
|
249
|
+
<IntlayerClientProvider locale={locale}>
|
|
250
|
+
{children}
|
|
251
|
+
</IntlayerClientProvider>
|
|
252
|
+
</body>
|
|
339
253
|
</html>
|
|
340
254
|
);
|
|
341
255
|
};
|
|
@@ -343,31 +257,13 @@ const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
|
343
257
|
export default LocaleLayout;
|
|
344
258
|
```
|
|
345
259
|
|
|
346
|
-
```jsx fileName="src/app/[locale]/layout.csx" codeFormat="commonjs"
|
|
347
|
-
const { Inter } = require("next/font/google");
|
|
348
|
-
const { getHTMLTextDir } = require("intlayer");
|
|
349
|
-
|
|
350
|
-
const inter = Inter({ subsets: ["latin"] });
|
|
351
|
-
|
|
352
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
353
|
-
const { locale } = await params;
|
|
354
|
-
return (
|
|
355
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
356
|
-
<body className={inter.className}>{children}</body>
|
|
357
|
-
</html>
|
|
358
|
-
);
|
|
359
|
-
};
|
|
360
|
-
|
|
361
|
-
module.exports = LocaleLayout;
|
|
362
|
-
```
|
|
363
|
-
|
|
364
260
|
> The `[locale]` path segment is used to define the locale. Example: `/en-US/about` will refer to `en-US` and `/fr/about` to `fr`.
|
|
365
261
|
|
|
366
262
|
> At this stage, you will encounter the error: `Error: Missing <html> and <body> tags in the root layout.`. This is expected because the `/app/page.tsx` file is no longer in use and can be removed. Instead, the `[locale]` path segment will activate the `/app/[locale]/page.tsx` page. Consequently, pages will be accessible via paths like `/en`, `/fr`, `/es` in your browser. To set the default locale as the root page, refer to the `proxy` setup in step 7.
|
|
367
263
|
|
|
368
264
|
Then, implement the `generateStaticParams` function in your application Layout.
|
|
369
265
|
|
|
370
|
-
```tsx {1} fileName="src/app/[locale]/layout.tsx" codeFormat="typescript"
|
|
266
|
+
```tsx {1} fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
371
267
|
export { generateStaticParams } from "next-intlayer"; // Line to insert
|
|
372
268
|
|
|
373
269
|
const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
@@ -377,26 +273,6 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
377
273
|
export default LocaleLayout;
|
|
378
274
|
```
|
|
379
275
|
|
|
380
|
-
```jsx {1} fileName="src/app/[locale]/layout.mjx" codeFormat="esm"
|
|
381
|
-
export { generateStaticParams } from "next-intlayer"; // Line to insert
|
|
382
|
-
|
|
383
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
384
|
-
/*... Rest of the code*/
|
|
385
|
-
};
|
|
386
|
-
|
|
387
|
-
// ... Rest of the code
|
|
388
|
-
```
|
|
389
|
-
|
|
390
|
-
```jsx {1,7} fileName="src/app/[locale]/layout.csx" codeFormat="commonjs"
|
|
391
|
-
const { generateStaticParams } = require("next-intlayer"); // Line to insert
|
|
392
|
-
|
|
393
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
394
|
-
/*... Rest of the code*/
|
|
395
|
-
};
|
|
396
|
-
|
|
397
|
-
module.exports = { default: LocaleLayout, generateStaticParams };
|
|
398
|
-
```
|
|
399
|
-
|
|
400
276
|
> `generateStaticParams` ensures that your application pre-builds the necessary pages for all locales, reducing runtime computation and improving the user experience. For more details, refer to the [Next.js documentation on generateStaticParams](https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic-rendering#generate-static-params).
|
|
401
277
|
|
|
402
278
|
> Intlayer works with `export const dynamic = 'force-static';` to ensure that the pages are pre-built for all locales.
|
|
@@ -405,7 +281,7 @@ module.exports = { default: LocaleLayout, generateStaticParams };
|
|
|
405
281
|
|
|
406
282
|
Create and manage your content declarations to store translations:
|
|
407
283
|
|
|
408
|
-
```tsx fileName="src/app/[locale]/page.content.ts" contentDeclarationFormat="typescript"
|
|
284
|
+
```tsx fileName="src/app/[locale]/page.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
409
285
|
import { t, type Dictionary } from "intlayer";
|
|
410
286
|
|
|
411
287
|
const pageContent = {
|
|
@@ -425,48 +301,6 @@ const pageContent = {
|
|
|
425
301
|
export default pageContent;
|
|
426
302
|
```
|
|
427
303
|
|
|
428
|
-
```javascript fileName="src/app/[locale]/page.content.mjs" contentDeclarationFormat="esm"
|
|
429
|
-
import { t } from "intlayer";
|
|
430
|
-
|
|
431
|
-
/** @type {import('intlayer').Dictionary} */
|
|
432
|
-
const pageContent = {
|
|
433
|
-
key: "page",
|
|
434
|
-
content: {
|
|
435
|
-
getStarted: {
|
|
436
|
-
main: t({
|
|
437
|
-
en: "Get started by editing",
|
|
438
|
-
fr: "Commencez par éditer",
|
|
439
|
-
es: "Comience por editar",
|
|
440
|
-
}),
|
|
441
|
-
pageLink: "src/app/page.tsx",
|
|
442
|
-
},
|
|
443
|
-
},
|
|
444
|
-
};
|
|
445
|
-
|
|
446
|
-
export default pageContent;
|
|
447
|
-
```
|
|
448
|
-
|
|
449
|
-
```javascript fileName="src/app/[locale]/page.content.cjs" contentDeclarationFormat="commonjs"
|
|
450
|
-
const { t } = require("intlayer");
|
|
451
|
-
|
|
452
|
-
/** @type {import('intlayer').Dictionary} */
|
|
453
|
-
const pageContent = {
|
|
454
|
-
key: "page",
|
|
455
|
-
content: {
|
|
456
|
-
getStarted: {
|
|
457
|
-
main: t({
|
|
458
|
-
en: "Get started by editing",
|
|
459
|
-
fr: "Commencez par éditer",
|
|
460
|
-
es: "Comience por editar",
|
|
461
|
-
}),
|
|
462
|
-
pageLink: "src/app/page.tsx",
|
|
463
|
-
},
|
|
464
|
-
},
|
|
465
|
-
};
|
|
466
|
-
|
|
467
|
-
module.exports = pageContent;
|
|
468
|
-
```
|
|
469
|
-
|
|
470
304
|
```json fileName="src/app/[locale]/page.content.json" contentDeclarationFormat="json"
|
|
471
305
|
{
|
|
472
306
|
"$schema": "https://intlayer.org/schema.json",
|
|
@@ -493,11 +327,11 @@ module.exports = pageContent;
|
|
|
493
327
|
|
|
494
328
|
Access your content dictionaries throughout your application:
|
|
495
329
|
|
|
496
|
-
```tsx fileName="src/app/[locale]/page.tsx" codeFormat="typescript"
|
|
330
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
497
331
|
import type { FC } from "react";
|
|
498
332
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
499
333
|
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
500
|
-
import { type NextPageIntlayer
|
|
334
|
+
import { type NextPageIntlayer } from "next-intlayer";
|
|
501
335
|
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
502
336
|
|
|
503
337
|
const PageContent: FC = () => {
|
|
@@ -519,44 +353,7 @@ const Page: NextPageIntlayer = async ({ params }) => {
|
|
|
519
353
|
<PageContent />
|
|
520
354
|
<ServerComponentExample />
|
|
521
355
|
|
|
522
|
-
<
|
|
523
|
-
<ClientComponentExample />
|
|
524
|
-
</IntlayerClientProvider>
|
|
525
|
-
</IntlayerServerProvider>
|
|
526
|
-
);
|
|
527
|
-
};
|
|
528
|
-
|
|
529
|
-
export default Page;
|
|
530
|
-
```
|
|
531
|
-
|
|
532
|
-
```jsx fileName="src/app/[locale]/page.mjx" codeFormat="esm"
|
|
533
|
-
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
534
|
-
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
535
|
-
import { IntlayerClientProvider } from "next-intlayer";
|
|
536
|
-
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
537
|
-
|
|
538
|
-
const PageContent = () => {
|
|
539
|
-
const content = useIntlayer("page");
|
|
540
|
-
|
|
541
|
-
return (
|
|
542
|
-
<>
|
|
543
|
-
<p>{content.getStarted.main}</p>
|
|
544
|
-
<code>{content.getStarted.pageLink}</code>
|
|
545
|
-
</>
|
|
546
|
-
);
|
|
547
|
-
};
|
|
548
|
-
|
|
549
|
-
const Page = async ({ params }) => {
|
|
550
|
-
const { locale } = await params;
|
|
551
|
-
|
|
552
|
-
return (
|
|
553
|
-
<IntlayerServerProvider locale={locale}>
|
|
554
|
-
<PageContent />
|
|
555
|
-
<ServerComponentExample />
|
|
556
|
-
|
|
557
|
-
<IntlayerClientProvider locale={locale}>
|
|
558
|
-
<ClientComponentExample />
|
|
559
|
-
</IntlayerClientProvider>
|
|
356
|
+
<ClientComponentExample />
|
|
560
357
|
</IntlayerServerProvider>
|
|
561
358
|
);
|
|
562
359
|
};
|
|
@@ -564,45 +361,12 @@ const Page = async ({ params }) => {
|
|
|
564
361
|
export default Page;
|
|
565
362
|
```
|
|
566
363
|
|
|
567
|
-
```jsx fileName="src/app/[locale]/page.csx" codeFormat="commonjs"
|
|
568
|
-
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
569
|
-
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
570
|
-
import { IntlayerClientProvider } from "next-intlayer";
|
|
571
|
-
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
572
|
-
|
|
573
|
-
const PageContent = () => {
|
|
574
|
-
const content = useIntlayer("page");
|
|
575
|
-
|
|
576
|
-
return (
|
|
577
|
-
<>
|
|
578
|
-
<p>{content.getStarted.main}</p>
|
|
579
|
-
<code>{content.getStarted.pageLink}</code>
|
|
580
|
-
</>
|
|
581
|
-
);
|
|
582
|
-
};
|
|
583
|
-
|
|
584
|
-
const Page = async ({ params }) => {
|
|
585
|
-
const { locale } = await params;
|
|
586
|
-
|
|
587
|
-
return (
|
|
588
|
-
<IntlayerServerProvider locale={locale}>
|
|
589
|
-
<PageContent />
|
|
590
|
-
<ServerComponentExample />
|
|
591
|
-
|
|
592
|
-
<IntlayerClientProvider locale={locale}>
|
|
593
|
-
<ClientComponentExample />
|
|
594
|
-
</IntlayerClientProvider>
|
|
595
|
-
</IntlayerServerProvider>
|
|
596
|
-
);
|
|
597
|
-
};
|
|
598
|
-
```
|
|
599
|
-
|
|
600
364
|
- **`IntlayerClientProvider`** is used to provide the locale to client-side components. It can be placed in any parent component, including the layout. However, placing it in a layout is recommended because Next.js shares layout code across pages, making it more efficient. By using `IntlayerClientProvider` in the layout, you avoid reinitializing it for every page, improving performance and maintaining a consistent localization context throughout your application.
|
|
601
365
|
- **`IntlayerServerProvider`** is used to provide the locale to the server children. It cannot be set set in the layout.
|
|
602
366
|
|
|
603
367
|
> Layout and page cannot share a common server context because the server context system is based on a per-request data store (via [React's cache](https://react.dev/reference/react/cache) mechanism), causing each "context" to be re-created for different segments of the application. Placing the provider in a shared layout would break this isolation, preventing the correct propagation of the server context values to your server components.
|
|
604
368
|
|
|
605
|
-
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat="typescript"
|
|
369
|
+
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
606
370
|
"use client";
|
|
607
371
|
|
|
608
372
|
import type { FC } from "react";
|
|
@@ -620,41 +384,7 @@ export const ClientComponentExample: FC = () => {
|
|
|
620
384
|
};
|
|
621
385
|
```
|
|
622
386
|
|
|
623
|
-
```
|
|
624
|
-
"use client";
|
|
625
|
-
|
|
626
|
-
import { useIntlayer } from "next-intlayer";
|
|
627
|
-
|
|
628
|
-
const ClientComponentExample = () => {
|
|
629
|
-
const content = useIntlayer("client-component-example"); // Create related content declaration
|
|
630
|
-
|
|
631
|
-
return (
|
|
632
|
-
<div>
|
|
633
|
-
<h2>{content.title}</h2>
|
|
634
|
-
<p>{content.content}</p>
|
|
635
|
-
</div>
|
|
636
|
-
);
|
|
637
|
-
};
|
|
638
|
-
```
|
|
639
|
-
|
|
640
|
-
```jsx {3,6} fileName="src/components/ClientComponentExample.csx" codeFormat="commonjs"
|
|
641
|
-
"use client";
|
|
642
|
-
|
|
643
|
-
const { useIntlayer } = require("next-intlayer");
|
|
644
|
-
|
|
645
|
-
const ClientComponentExample = () => {
|
|
646
|
-
const content = useIntlayer("client-component-example"); // Create related content declaration
|
|
647
|
-
|
|
648
|
-
return (
|
|
649
|
-
<div>
|
|
650
|
-
<h2>{content.title}</h2>
|
|
651
|
-
<p>{content.content}</p>
|
|
652
|
-
</div>
|
|
653
|
-
);
|
|
654
|
-
};
|
|
655
|
-
```
|
|
656
|
-
|
|
657
|
-
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat="typescript"
|
|
387
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
658
388
|
import type { FC } from "react";
|
|
659
389
|
import { useIntlayer } from "next-intlayer/server";
|
|
660
390
|
|
|
@@ -670,36 +400,6 @@ export const ServerComponentExample: FC = () => {
|
|
|
670
400
|
};
|
|
671
401
|
```
|
|
672
402
|
|
|
673
|
-
```jsx {1} fileName="src/components/ServerComponentExample.mjx" codeFormat="esm"
|
|
674
|
-
import { useIntlayer } from "next-intlayer/server";
|
|
675
|
-
|
|
676
|
-
const ServerComponentExample = () => {
|
|
677
|
-
const content = useIntlayer("server-component-example"); // Create related content declaration
|
|
678
|
-
|
|
679
|
-
return (
|
|
680
|
-
<div>
|
|
681
|
-
<h2>{content.title}</h2>
|
|
682
|
-
<p>{content.content}</p>
|
|
683
|
-
</div>
|
|
684
|
-
);
|
|
685
|
-
};
|
|
686
|
-
```
|
|
687
|
-
|
|
688
|
-
```jsx {1} fileName="src/components/ServerComponentExample.csx" codeFormat="commonjs"
|
|
689
|
-
const { useIntlayer } = require("next-intlayer/server");
|
|
690
|
-
|
|
691
|
-
const ServerComponentExample = () => {
|
|
692
|
-
const content = useIntlayer("server-component-example"); // Create related content declaration
|
|
693
|
-
|
|
694
|
-
return (
|
|
695
|
-
<div>
|
|
696
|
-
<h2>{content.title}</h2>
|
|
697
|
-
<p>{content.content}</p>
|
|
698
|
-
</div>
|
|
699
|
-
);
|
|
700
|
-
};
|
|
701
|
-
```
|
|
702
|
-
|
|
703
403
|
> If you want to use your content in a `string` attribute, such as `alt`, `title`, `href`, `aria-label`, etc., you must call the value of the function, like:
|
|
704
404
|
|
|
705
405
|
> ```jsx
|
|
@@ -714,7 +414,7 @@ const ServerComponentExample = () => {
|
|
|
714
414
|
|
|
715
415
|
Set up proxy to detect the user's preferred locale:
|
|
716
416
|
|
|
717
|
-
```typescript fileName="src/proxy.ts" codeFormat="typescript"
|
|
417
|
+
```typescript fileName="src/proxy.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
718
418
|
export { intlayerProxy as proxy } from "next-intlayer/proxy";
|
|
719
419
|
|
|
720
420
|
export const config = {
|
|
@@ -723,27 +423,7 @@ export const config = {
|
|
|
723
423
|
};
|
|
724
424
|
```
|
|
725
425
|
|
|
726
|
-
|
|
727
|
-
export { intlayerProxy as proxy } from "next-intlayer/proxy";
|
|
728
|
-
|
|
729
|
-
export const config = {
|
|
730
|
-
matcher:
|
|
731
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
732
|
-
};
|
|
733
|
-
```
|
|
734
|
-
|
|
735
|
-
```javascript fileName="src/proxy.cjs" codeFormat="commonjs"
|
|
736
|
-
const { intlayerProxy } = require("next-intlayer/proxy");
|
|
737
|
-
|
|
738
|
-
const config = {
|
|
739
|
-
matcher:
|
|
740
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
741
|
-
};
|
|
742
|
-
|
|
743
|
-
module.exports = { proxy: intlayerProxy, config };
|
|
744
|
-
```
|
|
745
|
-
|
|
746
|
-
> The `intlayerProxy` is used to detect the user's preferred locale and redirect them to the appropriate URL as specified in the [configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md). Additionally, it enables saving the user's preferred locale in a cookie.
|
|
426
|
+
> The `intlayerProxy` is used to detect the user's preferred locale and redirect them to the appropriate URL as specified in the [configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md). Additionally, it enables saving the user's preferred locale in a cookie.
|
|
747
427
|
|
|
748
428
|
> If you need to chain several proxies together (for example, `intlayerProxy` with authentication or custom proxies), Intlayer now provides a helper called `multipleProxies`.
|
|
749
429
|
|
|
@@ -758,7 +438,7 @@ export const proxy = multipleProxies([intlayerProxy, customProxy]);
|
|
|
758
438
|
|
|
759
439
|
In the case you want to internationalize your metadata, such as the title of your page, you can use the `generateMetadata` function provided by Next.js. Inside, you can retrieve the content from the `getIntlayer` function to translate your metadata.
|
|
760
440
|
|
|
761
|
-
```typescript fileName="src/app/[locale]/metadata.content.ts" contentDeclarationFormat="typescript"
|
|
441
|
+
```typescript fileName="src/app/[locale]/metadata.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
762
442
|
import { type Dictionary, t } from "intlayer";
|
|
763
443
|
import { Metadata } from "next";
|
|
764
444
|
|
|
@@ -781,52 +461,6 @@ const metadataContent = {
|
|
|
781
461
|
export default metadataContent;
|
|
782
462
|
```
|
|
783
463
|
|
|
784
|
-
```javascript fileName="src/app/[locale]/metadata.content.mjs" contentDeclarationFormat="esm"
|
|
785
|
-
import { t } from "intlayer";
|
|
786
|
-
|
|
787
|
-
/** @type {import('intlayer').Dictionary<import('next').Metadata>} */
|
|
788
|
-
const metadataContent = {
|
|
789
|
-
key: "page-metadata",
|
|
790
|
-
content: {
|
|
791
|
-
title: t({
|
|
792
|
-
en: "Create Next App",
|
|
793
|
-
fr: "Créer une application Next.js",
|
|
794
|
-
es: "Crear una aplicación Next.js",
|
|
795
|
-
}),
|
|
796
|
-
description: t({
|
|
797
|
-
en: "Generated by create next app",
|
|
798
|
-
fr: "Généré par create next app",
|
|
799
|
-
es: "Generado por create next app",
|
|
800
|
-
}),
|
|
801
|
-
},
|
|
802
|
-
};
|
|
803
|
-
|
|
804
|
-
export default metadataContent;
|
|
805
|
-
```
|
|
806
|
-
|
|
807
|
-
```javascript fileName="src/app/[locale]/metadata.content.cjs" contentDeclarationFormat="commonjs"
|
|
808
|
-
const { t } = require("intlayer");
|
|
809
|
-
|
|
810
|
-
/** @type {import('intlayer').Dictionary<import('next').Metadata>} */
|
|
811
|
-
const metadataContent = {
|
|
812
|
-
key: "page-metadata",
|
|
813
|
-
content: {
|
|
814
|
-
title: t({
|
|
815
|
-
en: "Create Next App",
|
|
816
|
-
fr: "Créer une application Next.js",
|
|
817
|
-
es: "Crear una aplicación Next.js",
|
|
818
|
-
}),
|
|
819
|
-
description: t({
|
|
820
|
-
en: "Generated by create next app",
|
|
821
|
-
fr: "Généré par create next app",
|
|
822
|
-
es: "Generado por create next app",
|
|
823
|
-
}),
|
|
824
|
-
},
|
|
825
|
-
};
|
|
826
|
-
|
|
827
|
-
module.exports = metadataContent;
|
|
828
|
-
```
|
|
829
|
-
|
|
830
464
|
```json fileName="src/app/[locale]/metadata.content.json" contentDeclarationFormat="json"
|
|
831
465
|
{
|
|
832
466
|
"key": "page-metadata",
|
|
@@ -851,7 +485,7 @@ module.exports = metadataContent;
|
|
|
851
485
|
};
|
|
852
486
|
```
|
|
853
487
|
|
|
854
|
-
````typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat="typescript"
|
|
488
|
+
````typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
855
489
|
import { getIntlayer, getMultilingualUrls } from "intlayer";
|
|
856
490
|
import type { Metadata } from "next";
|
|
857
491
|
import type { LocalPromiseParams } from "next-intlayer";
|
|
@@ -897,95 +531,11 @@ export const generateMetadata = async ({
|
|
|
897
531
|
// ... Rest of the code
|
|
898
532
|
````
|
|
899
533
|
|
|
900
|
-
````javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
|
|
901
|
-
import { getIntlayer, getMultilingualUrls } from "intlayer";
|
|
902
|
-
|
|
903
|
-
export const generateMetadata = async ({ params }) => {
|
|
904
|
-
const { locale } = await params;
|
|
905
|
-
|
|
906
|
-
const metadata = getIntlayer("page-metadata", locale);
|
|
907
|
-
|
|
908
|
-
/**
|
|
909
|
-
* Generates an object containing all url for each locale.
|
|
910
|
-
*
|
|
911
|
-
* Example:
|
|
912
|
-
* ```ts
|
|
913
|
-
* getMultilingualUrls('/about');
|
|
914
|
-
*
|
|
915
|
-
* // Returns
|
|
916
|
-
* // {
|
|
917
|
-
* // en: '/about',
|
|
918
|
-
* // fr: '/fr/about',
|
|
919
|
-
* // es: '/es/about'
|
|
920
|
-
* // }
|
|
921
|
-
* ```
|
|
922
|
-
*/
|
|
923
|
-
const multilingualUrls = getMultilingualUrls("/");
|
|
924
|
-
const localizedUrl = multilingualUrls[locale];
|
|
925
|
-
|
|
926
|
-
return {
|
|
927
|
-
...metadata,
|
|
928
|
-
alternates: {
|
|
929
|
-
canonical: localizedUrl,
|
|
930
|
-
languages: { ...multilingualUrls, "x-default": "/" },
|
|
931
|
-
},
|
|
932
|
-
openGraph: {
|
|
933
|
-
url: localizedUrl,
|
|
934
|
-
},
|
|
935
|
-
};
|
|
936
|
-
};
|
|
937
|
-
|
|
938
|
-
// ... Rest of the code
|
|
939
|
-
````
|
|
940
|
-
|
|
941
|
-
````javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
|
|
942
|
-
const { getIntlayer, getMultilingualUrls } = require("intlayer");
|
|
943
|
-
|
|
944
|
-
const generateMetadata = async ({ params }) => {
|
|
945
|
-
const { locale } = await params;
|
|
946
|
-
|
|
947
|
-
const metadata = getIntlayer("page-metadata", locale);
|
|
948
|
-
|
|
949
|
-
/**
|
|
950
|
-
* Generates an object containing all url for each locale.
|
|
951
|
-
*
|
|
952
|
-
* Example:
|
|
953
|
-
* ```ts
|
|
954
|
-
* getMultilingualUrls('/about');
|
|
955
|
-
*
|
|
956
|
-
* // Returns
|
|
957
|
-
* // {
|
|
958
|
-
* // en: '/about',
|
|
959
|
-
* // fr: '/fr/about',
|
|
960
|
-
* // es: '/es/about'
|
|
961
|
-
* // }
|
|
962
|
-
* ```
|
|
963
|
-
*/
|
|
964
|
-
const multilingualUrls = getMultilingualUrls("/");
|
|
965
|
-
const localizedUrl = multilingualUrls[locale];
|
|
966
|
-
|
|
967
|
-
return {
|
|
968
|
-
...metadata,
|
|
969
|
-
alternates: {
|
|
970
|
-
canonical: localizedUrl,
|
|
971
|
-
languages: { ...multilingualUrls, "x-default": "/" },
|
|
972
|
-
},
|
|
973
|
-
openGraph: {
|
|
974
|
-
url: localizedUrl,
|
|
975
|
-
},
|
|
976
|
-
};
|
|
977
|
-
};
|
|
978
|
-
|
|
979
|
-
module.exports = { generateMetadata };
|
|
980
|
-
|
|
981
|
-
// ... Rest of the code
|
|
982
|
-
````
|
|
983
|
-
|
|
984
534
|
> Note that the `getIntlayer` function imported from `next-intlayer` returns your content wrapped in an `IntlayerNode`, allowing integration with the visual editor. In contrast, the `getIntlayer` function imported from `intlayer` returns your content directly without additional properties.
|
|
985
535
|
|
|
986
536
|
Alternatively, you can use the `getTranslation` function to declare your metadata. However, using content declaration files is recommended to automate the translation of your metadata and externalize the content at some point.
|
|
987
537
|
|
|
988
|
-
```typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat="typescript"
|
|
538
|
+
```typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
989
539
|
import {
|
|
990
540
|
type IConfigLocales,
|
|
991
541
|
getTranslation,
|
|
@@ -1017,64 +567,13 @@ export const generateMetadata = async ({
|
|
|
1017
567
|
// ... Rest of the code
|
|
1018
568
|
```
|
|
1019
569
|
|
|
1020
|
-
```javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
|
|
1021
|
-
import { getTranslation, getMultilingualUrls } from "intlayer";
|
|
1022
|
-
|
|
1023
|
-
export const generateMetadata = async ({ params }) => {
|
|
1024
|
-
const { locale } = await params;
|
|
1025
|
-
const t = (content) => getTranslation(content, locale);
|
|
1026
|
-
|
|
1027
|
-
return {
|
|
1028
|
-
title: t({
|
|
1029
|
-
en: "My title",
|
|
1030
|
-
fr: "Mon titre",
|
|
1031
|
-
es: "Mi título",
|
|
1032
|
-
}),
|
|
1033
|
-
description: t({
|
|
1034
|
-
en: "My description",
|
|
1035
|
-
fr: "Ma description",
|
|
1036
|
-
es: "Mi descripción",
|
|
1037
|
-
}),
|
|
1038
|
-
};
|
|
1039
|
-
};
|
|
1040
|
-
|
|
1041
|
-
// ... Rest of the code
|
|
1042
|
-
```
|
|
1043
|
-
|
|
1044
|
-
```javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
|
|
1045
|
-
const { getTranslation, getMultilingualUrls } = require("intlayer");
|
|
1046
|
-
|
|
1047
|
-
const generateMetadata = async ({ params }) => {
|
|
1048
|
-
const { locale } = await params;
|
|
1049
|
-
|
|
1050
|
-
const t = (content) => getTranslation(content, locale);
|
|
1051
|
-
|
|
1052
|
-
return {
|
|
1053
|
-
title: t({
|
|
1054
|
-
en: "My title",
|
|
1055
|
-
fr: "Mon titre",
|
|
1056
|
-
es: "Mi título",
|
|
1057
|
-
}),
|
|
1058
|
-
description: t({
|
|
1059
|
-
en: "My description",
|
|
1060
|
-
fr: "Ma description",
|
|
1061
|
-
es: "Mi descripción",
|
|
1062
|
-
}),
|
|
1063
|
-
};
|
|
1064
|
-
};
|
|
1065
|
-
|
|
1066
|
-
module.exports = { generateMetadata };
|
|
1067
|
-
|
|
1068
|
-
// ... Rest of the code
|
|
1069
|
-
```
|
|
1070
|
-
|
|
1071
570
|
> Learn more about the metadata optimization [on the official Next.js documentation](https://nextjs.org/docs/app/building-your-application/optimizing/metadata).
|
|
1072
571
|
|
|
1073
572
|
### (Optional) Step 9: Internationalization of your sitemap.xml and robots.txt
|
|
1074
573
|
|
|
1075
574
|
To internationalize your `sitemap.xml` and `robots.txt`, you can use the `getMultilingualUrls` function provided by Intlayer. This function allows you to generate multilingual URLs for your sitemap.
|
|
1076
575
|
|
|
1077
|
-
```tsx fileName="src/app/sitemap.ts" codeFormat="typescript"
|
|
576
|
+
```tsx fileName="src/app/sitemap.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1078
577
|
import { getMultilingualUrls } from "intlayer";
|
|
1079
578
|
import type { MetadataRoute } from "next";
|
|
1080
579
|
|
|
@@ -1111,79 +610,7 @@ const sitemap = (): MetadataRoute.Sitemap => [
|
|
|
1111
610
|
export default sitemap;
|
|
1112
611
|
```
|
|
1113
612
|
|
|
1114
|
-
```
|
|
1115
|
-
import { getMultilingualUrls } from "intlayer";
|
|
1116
|
-
|
|
1117
|
-
const sitemap = () => [
|
|
1118
|
-
{
|
|
1119
|
-
url: "https://example.com",
|
|
1120
|
-
alternates: {
|
|
1121
|
-
languages: {
|
|
1122
|
-
...getMultilingualUrls("https://example.com"),
|
|
1123
|
-
"x-default": "https://example.com",
|
|
1124
|
-
},
|
|
1125
|
-
},
|
|
1126
|
-
},
|
|
1127
|
-
{
|
|
1128
|
-
url: "https://example.com/login",
|
|
1129
|
-
alternates: {
|
|
1130
|
-
languages: {
|
|
1131
|
-
...getMultilingualUrls("https://example.com/login"),
|
|
1132
|
-
"x-default": "https://example.com/login",
|
|
1133
|
-
},
|
|
1134
|
-
},
|
|
1135
|
-
},
|
|
1136
|
-
{
|
|
1137
|
-
url: "https://example.com/register",
|
|
1138
|
-
alternates: {
|
|
1139
|
-
languages: {
|
|
1140
|
-
...getMultilingualUrls("https://example.com/register"),
|
|
1141
|
-
"x-default": "https://example.com/register",
|
|
1142
|
-
},
|
|
1143
|
-
},
|
|
1144
|
-
},
|
|
1145
|
-
];
|
|
1146
|
-
|
|
1147
|
-
export default sitemap;
|
|
1148
|
-
```
|
|
1149
|
-
|
|
1150
|
-
```jsx fileName="src/app/sitemap.csx" codeFormat="commonjs"
|
|
1151
|
-
const { getMultilingualUrls } = require("intlayer");
|
|
1152
|
-
|
|
1153
|
-
const sitemap = () => [
|
|
1154
|
-
{
|
|
1155
|
-
url: "https://example.com",
|
|
1156
|
-
alternates: {
|
|
1157
|
-
languages: {
|
|
1158
|
-
...getMultilingualUrls("https://example.com"),
|
|
1159
|
-
"x-default": "https://example.com",
|
|
1160
|
-
},
|
|
1161
|
-
},
|
|
1162
|
-
},
|
|
1163
|
-
{
|
|
1164
|
-
url: "https://example.com/login",
|
|
1165
|
-
alternates: {
|
|
1166
|
-
languages: {
|
|
1167
|
-
...getMultilingualUrls("https://example.com/login"),
|
|
1168
|
-
"x-default": "https://example.com/login",
|
|
1169
|
-
},
|
|
1170
|
-
},
|
|
1171
|
-
},
|
|
1172
|
-
{
|
|
1173
|
-
url: "https://example.com/register",
|
|
1174
|
-
alternates: {
|
|
1175
|
-
languages: {
|
|
1176
|
-
...getMultilingualUrls("https://example.com/register"),
|
|
1177
|
-
"x-default": "https://example.com/register",
|
|
1178
|
-
},
|
|
1179
|
-
},
|
|
1180
|
-
},
|
|
1181
|
-
];
|
|
1182
|
-
|
|
1183
|
-
module.exports = sitemap;
|
|
1184
|
-
```
|
|
1185
|
-
|
|
1186
|
-
```tsx fileName="src/app/robots.ts" codeFormat="typescript"
|
|
613
|
+
```tsx fileName="src/app/robots.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1187
614
|
import type { MetadataRoute } from "next";
|
|
1188
615
|
import { getMultilingualUrls } from "intlayer";
|
|
1189
616
|
|
|
@@ -1203,51 +630,13 @@ const robots = (): MetadataRoute.Robots => ({
|
|
|
1203
630
|
export default robots;
|
|
1204
631
|
```
|
|
1205
632
|
|
|
1206
|
-
```jsx fileName="src/app/robots.mjx" codeFormat="esm"
|
|
1207
|
-
import { getMultilingualUrls } from "intlayer";
|
|
1208
|
-
|
|
1209
|
-
const getAllMultilingualUrls = (urls) =>
|
|
1210
|
-
urls.flatMap((url) => Object.values(getMultilingualUrls(url)));
|
|
1211
|
-
|
|
1212
|
-
const robots = () => ({
|
|
1213
|
-
rules: {
|
|
1214
|
-
userAgent: "*",
|
|
1215
|
-
allow: ["/"],
|
|
1216
|
-
disallow: getAllMultilingualUrls(["/login", "/register"]),
|
|
1217
|
-
},
|
|
1218
|
-
host: "https://example.com",
|
|
1219
|
-
sitemap: `https://example.com/sitemap.xml`,
|
|
1220
|
-
});
|
|
1221
|
-
|
|
1222
|
-
export default robots;
|
|
1223
|
-
```
|
|
1224
|
-
|
|
1225
|
-
```jsx fileName="src/app/robots.csx" codeFormat="commonjs"
|
|
1226
|
-
const { getMultilingualUrls } = require("intlayer");
|
|
1227
|
-
|
|
1228
|
-
const getAllMultilingualUrls = (urls) =>
|
|
1229
|
-
urls.flatMap((url) => Object.values(getMultilingualUrls(url)));
|
|
1230
|
-
|
|
1231
|
-
const robots = () => ({
|
|
1232
|
-
rules: {
|
|
1233
|
-
userAgent: "*",
|
|
1234
|
-
allow: ["/"],
|
|
1235
|
-
disallow: getAllMultilingualUrls(["/login", "/register"]),
|
|
1236
|
-
},
|
|
1237
|
-
host: "https://example.com",
|
|
1238
|
-
sitemap: `https://example.com/sitemap.xml`,
|
|
1239
|
-
});
|
|
1240
|
-
|
|
1241
|
-
module.exports = robots;
|
|
1242
|
-
```
|
|
1243
|
-
|
|
1244
633
|
> Learn more about the sitemap optimization [on the official Next.js documentation](https://nextjs.org/docs/app/api-reference/file-conventions/metadata/sitemap). Learn more about the robots.txt optimization [on the official Next.js documentation](https://nextjs.org/docs/app/api-reference/file-conventions/metadata/robots).
|
|
1245
634
|
|
|
1246
635
|
### (Optional) Step 10: Change the language of your content
|
|
1247
636
|
|
|
1248
637
|
To change the language of your content in Next.js, the recommended way is to use the `Link` component to redirect users to the appropriate localized page. The `Link` component enables prefetching of the page, which helps avoid a full page reload.
|
|
1249
638
|
|
|
1250
|
-
```tsx fileName="src/components/LocaleSwitcher.tsx" codeFormat="typescript"
|
|
639
|
+
```tsx fileName="src/components/LocaleSwitcher.tsx" codeFormat={["typescript", "esm"]}
|
|
1251
640
|
"use client";
|
|
1252
641
|
|
|
1253
642
|
import type { FC } from "react";
|
|
@@ -1300,110 +689,6 @@ export const LocaleSwitcher: FC = () => {
|
|
|
1300
689
|
};
|
|
1301
690
|
```
|
|
1302
691
|
|
|
1303
|
-
```jsx fileName="src/components/LocaleSwitcher.msx" codeFormat="esm"
|
|
1304
|
-
"use client";
|
|
1305
|
-
|
|
1306
|
-
import {
|
|
1307
|
-
Locales,
|
|
1308
|
-
getHTMLTextDir,
|
|
1309
|
-
getLocaleName,
|
|
1310
|
-
getLocalizedUrl,
|
|
1311
|
-
} from "intlayer";
|
|
1312
|
-
import { useLocale } from "next-intlayer";
|
|
1313
|
-
import Link from "next/link";
|
|
1314
|
-
|
|
1315
|
-
export const LocaleSwitcher = () => {
|
|
1316
|
-
const { locale, pathWithoutLocale, availableLocales, setLocale } =
|
|
1317
|
-
useLocale();
|
|
1318
|
-
|
|
1319
|
-
return (
|
|
1320
|
-
<div>
|
|
1321
|
-
<button popoverTarget="localePopover">{getLocaleName(locale)}</button>
|
|
1322
|
-
<div id="localePopover" popover="auto">
|
|
1323
|
-
{availableLocales.map((localeItem) => (
|
|
1324
|
-
<Link
|
|
1325
|
-
href={getLocalizedUrl(pathWithoutLocale, localeItem)}
|
|
1326
|
-
key={localeItem}
|
|
1327
|
-
aria-current={locale === localeItem ? "page" : undefined}
|
|
1328
|
-
onClick={() => setLocale(localeItem)}
|
|
1329
|
-
replace // Will ensure that the "go back" browser button will redirect to the previous page
|
|
1330
|
-
>
|
|
1331
|
-
<span>
|
|
1332
|
-
{/* Locale - e.g. FR */}
|
|
1333
|
-
{localeItem}
|
|
1334
|
-
</span>
|
|
1335
|
-
<span>
|
|
1336
|
-
{/* Language in its own Locale - e.g. Français */}
|
|
1337
|
-
{getLocaleName(localeItem, locale)}
|
|
1338
|
-
</span>
|
|
1339
|
-
<span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
|
|
1340
|
-
{/* Language in current Locale - e.g. Francés with current locale set to Locales.SPANISH */}
|
|
1341
|
-
{getLocaleName(localeItem)}
|
|
1342
|
-
</span>
|
|
1343
|
-
<span dir="ltr" lang={Locales.ENGLISH}>
|
|
1344
|
-
{/* Language in English - e.g. French */}
|
|
1345
|
-
{getLocaleName(localeItem, Locales.ENGLISH)}
|
|
1346
|
-
</span>
|
|
1347
|
-
</Link>
|
|
1348
|
-
))}
|
|
1349
|
-
</div>
|
|
1350
|
-
</div>
|
|
1351
|
-
);
|
|
1352
|
-
};
|
|
1353
|
-
```
|
|
1354
|
-
|
|
1355
|
-
```jsx fileName="src/components/LocaleSwitcher.csx" codeFormat="commonjs"
|
|
1356
|
-
"use client";
|
|
1357
|
-
|
|
1358
|
-
const {
|
|
1359
|
-
Locales,
|
|
1360
|
-
getHTMLTextDir,
|
|
1361
|
-
getLocaleName,
|
|
1362
|
-
getLocalizedUrl,
|
|
1363
|
-
} = require("intlayer");
|
|
1364
|
-
const { useLocale } = require("next-intlayer");
|
|
1365
|
-
const Link = require("next/link");
|
|
1366
|
-
|
|
1367
|
-
export const LocaleSwitcher = () => {
|
|
1368
|
-
const { locale, pathWithoutLocale, availableLocales, setLocale } =
|
|
1369
|
-
useLocale();
|
|
1370
|
-
|
|
1371
|
-
return (
|
|
1372
|
-
<div>
|
|
1373
|
-
<button popoverTarget="localePopover">{getLocaleName(locale)}</button>
|
|
1374
|
-
<div id="localePopover" popover="auto">
|
|
1375
|
-
{availableLocales.map((localeItem) => (
|
|
1376
|
-
<Link
|
|
1377
|
-
href={getLocalizedUrl(pathWithoutLocale, localeItem)}
|
|
1378
|
-
key={localeItem}
|
|
1379
|
-
aria-current={locale === localeItem ? "page" : undefined}
|
|
1380
|
-
onClick={() => setLocale(localeItem)}
|
|
1381
|
-
replace // Will ensure that the "go back" browser button will redirect to the previous page
|
|
1382
|
-
>
|
|
1383
|
-
<span>
|
|
1384
|
-
{/* Locale - e.g. FR */}
|
|
1385
|
-
{localeItem}
|
|
1386
|
-
</span>
|
|
1387
|
-
<span>
|
|
1388
|
-
{/* Language in its own Locale - e.g. Français */}
|
|
1389
|
-
{getLocaleName(localeItem, locale)}
|
|
1390
|
-
</span>
|
|
1391
|
-
<span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
|
|
1392
|
-
{/* Language in current Locale - e.g. Francés with current locale set to Locales.SPANISH */}
|
|
1393
|
-
{getLocaleName(localeItem)}
|
|
1394
|
-
</span>
|
|
1395
|
-
<span dir="ltr" lang={Locales.ENGLISH}>
|
|
1396
|
-
{/* Language in English - e.g. French */}
|
|
1397
|
-
{getLocaleName(localeItem, Locales.ENGLISH)}
|
|
1398
|
-
</span>
|
|
1399
|
-
</Link>
|
|
1400
|
-
))}
|
|
1401
|
-
</div>
|
|
1402
|
-
</div>
|
|
1403
|
-
);
|
|
1404
|
-
};
|
|
1405
|
-
```
|
|
1406
|
-
|
|
1407
692
|
> An alternative way is to use the `setLocale` function provided by the `useLocale` hook. This function will not allow prefetching the page. See the [`useLocale` hook documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/next-intlayer/useLocale.md) for more details.
|
|
1408
693
|
|
|
1409
694
|
> You can also set a function in the `onLocaleChange` option to trigger a custom function when the locale changes.
|
|
@@ -1452,7 +737,7 @@ This behavior is useful for several reasons:
|
|
|
1452
737
|
|
|
1453
738
|
Below is the implementation of a localized `Link` component in TypeScript:
|
|
1454
739
|
|
|
1455
|
-
```tsx fileName="src/components/Link.tsx" codeFormat="typescript"
|
|
740
|
+
```tsx fileName="src/components/Link.tsx" codeFormat={["typescript", "esm"]}
|
|
1456
741
|
"use client";
|
|
1457
742
|
|
|
1458
743
|
import { getLocalizedUrl } from "intlayer";
|
|
@@ -1492,74 +777,6 @@ export const Link: FC<PropsWithChildren<NextLinkProps>> = ({
|
|
|
1492
777
|
};
|
|
1493
778
|
```
|
|
1494
779
|
|
|
1495
|
-
```jsx fileName="src/components/Link.mjx" codeFormat="esm"
|
|
1496
|
-
"use client";
|
|
1497
|
-
|
|
1498
|
-
import { getLocalizedUrl } from "intlayer";
|
|
1499
|
-
import NextLink from "next/link";
|
|
1500
|
-
import { useLocale } from "next-intlayer";
|
|
1501
|
-
|
|
1502
|
-
/**
|
|
1503
|
-
* Utility function to check whether a given URL is external.
|
|
1504
|
-
* If the URL starts with http:// or https://, it's considered external.
|
|
1505
|
-
*/
|
|
1506
|
-
export const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
|
|
1507
|
-
|
|
1508
|
-
/**
|
|
1509
|
-
* A custom Link component that adapts the href attribute based on the current locale.
|
|
1510
|
-
* For internal links, it uses `getLocalizedUrl` to prefix the URL with the locale (e.g., /fr/about).
|
|
1511
|
-
* This ensures that navigation stays within the same locale context.
|
|
1512
|
-
*/
|
|
1513
|
-
export const Link = ({ href, children, ...props }) => {
|
|
1514
|
-
const { locale } = useLocale();
|
|
1515
|
-
const isExternalLink = checkIsExternalLink(href.toString());
|
|
1516
|
-
|
|
1517
|
-
// If the link is internal and a valid href is provided, get the localized URL.
|
|
1518
|
-
const hrefI18n =
|
|
1519
|
-
href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
|
|
1520
|
-
|
|
1521
|
-
return (
|
|
1522
|
-
<NextLink href={hrefI18n} {...props}>
|
|
1523
|
-
{children}
|
|
1524
|
-
</NextLink>
|
|
1525
|
-
);
|
|
1526
|
-
};
|
|
1527
|
-
```
|
|
1528
|
-
|
|
1529
|
-
```jsx fileName="src/components/Link.csx" codeFormat="commonjs"
|
|
1530
|
-
"use client";
|
|
1531
|
-
|
|
1532
|
-
const { getLocalizedUrl } = require("intlayer");
|
|
1533
|
-
const NextLink = require("next/link");
|
|
1534
|
-
const { useLocale } = require("next-intlayer");
|
|
1535
|
-
|
|
1536
|
-
/**
|
|
1537
|
-
* Utility function to check whether a given URL is external.
|
|
1538
|
-
* If the URL starts with http:// or https://, it's considered external.
|
|
1539
|
-
*/
|
|
1540
|
-
const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
|
|
1541
|
-
|
|
1542
|
-
/**
|
|
1543
|
-
* A custom Link component that adapts the href attribute based on the current locale.
|
|
1544
|
-
* For internal links, it uses `getLocalizedUrl` to prefix the URL with the locale (e.g., /fr/about).
|
|
1545
|
-
* This ensures that navigation stays within the same locale context.
|
|
1546
|
-
*/
|
|
1547
|
-
const Link = ({ href, children, ...props }) => {
|
|
1548
|
-
const { locale } = useLocale();
|
|
1549
|
-
const isExternalLink = checkIsExternalLink(href.toString());
|
|
1550
|
-
|
|
1551
|
-
// If the link is internal and a valid href is provided, get the localized URL.
|
|
1552
|
-
const hrefI18n =
|
|
1553
|
-
href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
|
|
1554
|
-
|
|
1555
|
-
return (
|
|
1556
|
-
<NextLink href={hrefI18n} {...props}>
|
|
1557
|
-
{children}
|
|
1558
|
-
</NextLink>
|
|
1559
|
-
);
|
|
1560
|
-
};
|
|
1561
|
-
```
|
|
1562
|
-
|
|
1563
780
|
#### How It Works
|
|
1564
781
|
|
|
1565
782
|
- **Detecting External Links**:
|
|
@@ -1637,7 +854,7 @@ To ease this process, Intlayer propose a [compiler](https://github.com/aymericzi
|
|
|
1637
854
|
|
|
1638
855
|
To set it up, you can add a `compiler` section in your `intlayer.config.ts` file:
|
|
1639
856
|
|
|
1640
|
-
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
857
|
+
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1641
858
|
import { type IntlayerConfig } from "intlayer";
|
|
1642
859
|
|
|
1643
860
|
const config: IntlayerConfig = {
|
|
@@ -1672,74 +889,6 @@ const config: IntlayerConfig = {
|
|
|
1672
889
|
export default config;
|
|
1673
890
|
```
|
|
1674
891
|
|
|
1675
|
-
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1676
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
1677
|
-
const config = {
|
|
1678
|
-
// ... Rest of your config
|
|
1679
|
-
compiler: {
|
|
1680
|
-
/**
|
|
1681
|
-
* Indicates if the compiler should be enabled.
|
|
1682
|
-
*/
|
|
1683
|
-
enabled: true,
|
|
1684
|
-
|
|
1685
|
-
/**
|
|
1686
|
-
* Defines the output files path
|
|
1687
|
-
*/
|
|
1688
|
-
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1689
|
-
|
|
1690
|
-
/**
|
|
1691
|
-
* Indicates if the components should be saved after being transformed.
|
|
1692
|
-
*
|
|
1693
|
-
* - If `true`, the compiler will rewrite the component file in the disk. So the transformation will be permanent, and the compiler will skip the transformation for the next process. That way, the compiler can transform the app, and then it can be removed.
|
|
1694
|
-
*
|
|
1695
|
-
* - If `false`, the compiler will inject the `useIntlayer()` function call into the code in the build output only, and keep the base codebase intact. The transformation will be done only in memory.
|
|
1696
|
-
*/
|
|
1697
|
-
saveComponents: false,
|
|
1698
|
-
|
|
1699
|
-
/**
|
|
1700
|
-
* Dictionary key prefix
|
|
1701
|
-
*/
|
|
1702
|
-
dictionaryKeyPrefix: "",
|
|
1703
|
-
},
|
|
1704
|
-
};
|
|
1705
|
-
|
|
1706
|
-
export default config;
|
|
1707
|
-
```
|
|
1708
|
-
|
|
1709
|
-
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1710
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
1711
|
-
const config = {
|
|
1712
|
-
// ... Rest of your config
|
|
1713
|
-
compiler: {
|
|
1714
|
-
/**
|
|
1715
|
-
* Indicates if the compiler should be enabled.
|
|
1716
|
-
*/
|
|
1717
|
-
enabled: true,
|
|
1718
|
-
|
|
1719
|
-
/**
|
|
1720
|
-
* Defines the output files path
|
|
1721
|
-
*/
|
|
1722
|
-
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1723
|
-
|
|
1724
|
-
/**
|
|
1725
|
-
* Indicates if the components should be saved after being transformed.
|
|
1726
|
-
*
|
|
1727
|
-
* - If `true`, the compiler will rewrite the component file in the disk. So the transformation will be permanent, and the compiler will skip the transformation for the next process. That way, the compiler can transform the app, and then it can be removed.
|
|
1728
|
-
*
|
|
1729
|
-
* - If `false`, the compiler will inject the `useIntlayer()` function call into the code in the build output only, and keep the base codebase intact. The transformation will be done only in memory.
|
|
1730
|
-
*/
|
|
1731
|
-
saveComponents: false,
|
|
1732
|
-
|
|
1733
|
-
/**
|
|
1734
|
-
* Dictionary key prefix
|
|
1735
|
-
*/
|
|
1736
|
-
dictionaryKeyPrefix: "",
|
|
1737
|
-
},
|
|
1738
|
-
};
|
|
1739
|
-
|
|
1740
|
-
module.exports = config;
|
|
1741
|
-
```
|
|
1742
|
-
|
|
1743
892
|
<Tabs>
|
|
1744
893
|
<Tab value='Extract command'>
|
|
1745
894
|
|