@intlayer/docs 8.7.7 → 8.7.8
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
|
@@ -16,6 +16,7 @@ slugs:
|
|
|
16
16
|
- nextjs
|
|
17
17
|
- 15
|
|
18
18
|
applicationTemplate: https://github.com/aymericzip/intlayer-next-15-template
|
|
19
|
+
applicationShowcase: https://next-15-intlayer-template-xt83.vercel.app
|
|
19
20
|
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
20
21
|
history:
|
|
21
22
|
- version: 7.5.9
|
|
@@ -99,13 +100,24 @@ history:
|
|
|
99
100
|
<Tab label="Код" value="code">
|
|
100
101
|
|
|
101
102
|
<iframe
|
|
102
|
-
src="https://
|
|
103
|
+
src="https://ide.intlayer.org/aymericzip/intlayer-next-15-template?file=intlayer.config.ts"
|
|
103
104
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
104
105
|
title="Демо CodeSandbox. Як інтернаціоналізувати ваш застосунок за допомогою Intlayer"
|
|
105
106
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
106
107
|
loading="lazy"
|
|
107
108
|
/>
|
|
108
109
|
|
|
110
|
+
</Tab>
|
|
111
|
+
<Tab label="Демо" value="demo">
|
|
112
|
+
|
|
113
|
+
<iframe
|
|
114
|
+
src="https://next-15-intlayer-template-xt83.vercel.app"
|
|
115
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
116
|
+
title="Демо — intlayer-next-15-template"
|
|
117
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
118
|
+
loading="lazy"
|
|
119
|
+
/>
|
|
120
|
+
|
|
109
121
|
</Tab>
|
|
110
122
|
</Tabs>
|
|
111
123
|
|
|
@@ -181,7 +193,7 @@ Here is the final structure that we will make:
|
|
|
181
193
|
|
|
182
194
|
Створіть файл конфігурації, щоб налаштувати мови вашого застосунку:
|
|
183
195
|
|
|
184
|
-
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
196
|
+
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
185
197
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
186
198
|
|
|
187
199
|
const config: IntlayerConfig = {
|
|
@@ -199,51 +211,13 @@ const config: IntlayerConfig = {
|
|
|
199
211
|
export default config;
|
|
200
212
|
```
|
|
201
213
|
|
|
202
|
-
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
203
|
-
import { Locales } from "intlayer";
|
|
204
|
-
|
|
205
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
206
|
-
const config = {
|
|
207
|
-
internationalization: {
|
|
208
|
-
locales: [
|
|
209
|
-
Locales.ENGLISH,
|
|
210
|
-
Locales.FRENCH,
|
|
211
|
-
Locales.SPANISH,
|
|
212
|
-
// Інші ваші локалі
|
|
213
|
-
],
|
|
214
|
-
defaultLocale: Locales.ENGLISH,
|
|
215
|
-
},
|
|
216
|
-
};
|
|
217
|
-
|
|
218
|
-
export default config;
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
222
|
-
const { Locales } = require("intlayer");
|
|
223
|
-
|
|
224
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
225
|
-
const config = {
|
|
226
|
-
internationalization: {
|
|
227
|
-
locales: [
|
|
228
|
-
Locales.ENGLISH,
|
|
229
|
-
Locales.FRENCH,
|
|
230
|
-
Locales.SPANISH,
|
|
231
|
-
// Your other locales
|
|
232
|
-
],
|
|
233
|
-
defaultLocale: Locales.ENGLISH,
|
|
234
|
-
},
|
|
235
|
-
};
|
|
236
|
-
|
|
237
|
-
module.exports = config;
|
|
238
|
-
```
|
|
239
|
-
|
|
240
214
|
> Через цей файл конфігурації ви можете налаштувати локалізовані URL-адреси, перенаправлення через middleware, назви cookie, розташування та розширення ваших декларацій контенту, відключити логи Intlayer у консолі та інше. Для повного переліку доступних параметрів зверніться до [документації з конфігурації](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md).
|
|
241
215
|
|
|
242
216
|
### Крок 3: Інтеграція Intlayer у конфігурацію Next.js
|
|
243
217
|
|
|
244
218
|
Налаштуйте конфігурацію Next.js для використання Intlayer:
|
|
245
219
|
|
|
246
|
-
```typescript fileName="next.config.ts" codeFormat="typescript"
|
|
220
|
+
```typescript fileName="next.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
247
221
|
import type { NextConfig } from "next";
|
|
248
222
|
import { withIntlayer } from "next-intlayer/server";
|
|
249
223
|
|
|
@@ -254,28 +228,6 @@ const nextConfig: NextConfig = {
|
|
|
254
228
|
export default withIntlayer(nextConfig);
|
|
255
229
|
```
|
|
256
230
|
|
|
257
|
-
```typescript fileName="next.config.mjs" codeFormat="esm"
|
|
258
|
-
import { withIntlayer } from "next-intlayer/server";
|
|
259
|
-
|
|
260
|
-
/** @type {import('next').NextConfig} */
|
|
261
|
-
const nextConfig = {
|
|
262
|
-
/* опції конфігурації тут */
|
|
263
|
-
};
|
|
264
|
-
|
|
265
|
-
export default withIntlayer(nextConfig);
|
|
266
|
-
```
|
|
267
|
-
|
|
268
|
-
```typescript fileName="next.config.cjs" codeFormat="commonjs"
|
|
269
|
-
const { withIntlayer } = require("next-intlayer/server");
|
|
270
|
-
|
|
271
|
-
/** @type {import('next').NextConfig} */
|
|
272
|
-
const nextConfig = {
|
|
273
|
-
/* опції конфігурації тут */
|
|
274
|
-
};
|
|
275
|
-
|
|
276
|
-
module.exports = withIntlayer(nextConfig);
|
|
277
|
-
```
|
|
278
|
-
|
|
279
231
|
> Плагін Next.js `withIntlayer()` використовується для інтеграції Intlayer з Next.js. Він забезпечує побудову файлів декларації контенту та відстежує їх у режимі розробки. Він визначає змінні середовища Intlayer у середовищах [Webpack](https://webpack.js.org/) або [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). Додатково він надає aliases для оптимізації продуктивності та забезпечує сумісність із серверними компонентами.
|
|
280
232
|
>
|
|
281
233
|
> Функція `withIntlayer()` повертає проміс. Вона дозволяє підготувати словники Intlayer перед початком збірки. Якщо ви хочете використовувати її з іншими плагінами, ви можете використати await. Приклад:
|
|
@@ -300,7 +252,7 @@ module.exports = withIntlayer(nextConfig);
|
|
|
300
252
|
|
|
301
253
|
Видаліть усе з `RootLayout` і замініть на наступний код:
|
|
302
254
|
|
|
303
|
-
```tsx {3} fileName="src/app/layout.tsx" codeFormat="typescript"
|
|
255
|
+
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
304
256
|
import type { PropsWithChildren, FC } from "react";
|
|
305
257
|
import "./globals.css";
|
|
306
258
|
|
|
@@ -312,37 +264,12 @@ const RootLayout: FC<PropsWithChildren> = ({ children }) => (
|
|
|
312
264
|
export default RootLayout;
|
|
313
265
|
```
|
|
314
266
|
|
|
315
|
-
```jsx {3} fileName="src/app/layout.mjx" codeFormat="esm"
|
|
316
|
-
import "./globals.css";
|
|
317
|
-
|
|
318
|
-
const RootLayout = ({ children }) => (
|
|
319
|
-
// Ви все ще можете обгорнути children іншими провайдерами, наприклад `next-themes`, `react-query`, `framer-motion` тощо.
|
|
320
|
-
<>{children}</>
|
|
321
|
-
);
|
|
322
|
-
|
|
323
|
-
export default RootLayout;
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
```jsx {1,8} fileName="src/app/layout.csx" codeFormat="commonjs"
|
|
327
|
-
require("./globals.css");
|
|
328
|
-
|
|
329
|
-
const RootLayout = ({ children }) => (
|
|
330
|
-
// Ви все ще можете обгорнути children іншими провайдерами, наприклад `next-themes`, `react-query`, `framer-motion` тощо.
|
|
331
|
-
<>{children}</>
|
|
332
|
-
);
|
|
333
|
-
|
|
334
|
-
module.exports = {
|
|
335
|
-
default: RootLayout,
|
|
336
|
-
generateStaticParams,
|
|
337
|
-
};
|
|
338
|
-
```
|
|
339
|
-
|
|
340
267
|
> Залишаючи компонент `RootLayout` порожнім, ви дозволяєте встановлювати атрибути [`lang`](https://developer.mozilla.org/fr/docs/Web/HTML/Global_attributes/lang) та [`dir`](https://developer.mozilla.org/fr/docs/Web/HTML/Global_attributes/dir) для тега `<html>`.
|
|
341
268
|
|
|
342
269
|
Щоб реалізувати динамічну маршрутизацію, вкажіть шлях для локалі, додавши новий layout у ваш каталог `[locale]`:
|
|
343
270
|
|
|
344
|
-
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat="typescript"
|
|
345
|
-
import type
|
|
271
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
272
|
+
import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
|
|
346
273
|
import { Inter } from "next/font/google";
|
|
347
274
|
import { getHTMLTextDir } from "intlayer";
|
|
348
275
|
|
|
@@ -352,24 +279,11 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
352
279
|
const { locale } = await params;
|
|
353
280
|
return (
|
|
354
281
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
355
|
-
<body className={inter.className}>
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
export default LocaleLayout;
|
|
361
|
-
```
|
|
362
|
-
|
|
363
|
-
```jsx fileName="src/app/[locale]/layout.mjx" codeFormat="esm"
|
|
364
|
-
import { getHTMLTextDir } from "intlayer";
|
|
365
|
-
|
|
366
|
-
const inter = Inter({ subsets: ["latin"] });
|
|
367
|
-
|
|
368
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
369
|
-
const { locale } = await params;
|
|
370
|
-
return (
|
|
371
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
372
|
-
<body className={inter.className}>{children}</body>
|
|
282
|
+
<body className={inter.className}>
|
|
283
|
+
<IntlayerClientProvider locale={locale}>
|
|
284
|
+
{children}
|
|
285
|
+
</IntlayerClientProvider>
|
|
286
|
+
</body>
|
|
373
287
|
</html>
|
|
374
288
|
);
|
|
375
289
|
};
|
|
@@ -377,31 +291,13 @@ const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
|
377
291
|
export default LocaleLayout;
|
|
378
292
|
```
|
|
379
293
|
|
|
380
|
-
```jsx fileName="src/app/[locale]/layout.csx" codeFormat="commonjs"
|
|
381
|
-
const { Inter } = require("next/font/google");
|
|
382
|
-
const { getHTMLTextDir } = require("intlayer");
|
|
383
|
-
|
|
384
|
-
const inter = Inter({ subsets: ["latin"] });
|
|
385
|
-
|
|
386
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
387
|
-
const { locale } = await params;
|
|
388
|
-
return (
|
|
389
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
390
|
-
<body className={inter.className}>{children}</body>
|
|
391
|
-
</html>
|
|
392
|
-
);
|
|
393
|
-
};
|
|
394
|
-
|
|
395
|
-
module.exports = LocaleLayout;
|
|
396
|
-
```
|
|
397
|
-
|
|
398
294
|
> Сегмент шляху `[locale]` використовується для визначення локалі. Приклад: `/en-US/about` відповідатиме `en-US`, а `/fr/about`, `fr`.
|
|
399
295
|
|
|
400
296
|
> На цьому етапі ви зіткнетесь з помилкою: `Error: Missing <html> and <body> tags in the root layout.`. Це очікувано, оскільки файл `/app/page.tsx` більше не використовується і його можна видалити. Натомість сегмент шляху `[locale]` активуватиме сторінку `/app/[locale]/page.tsx`. Отже, сторінки будуть доступні за шляхами на кшталт `/en`, `/fr`, `/es` у вашому браузері. Щоб встановити локаль за замовчуванням для кореневої сторінки, зверніться до налаштування `middleware` у кроці 7.
|
|
401
297
|
|
|
402
298
|
Далі реалізуйте функцію `generateStaticParams` у Layout вашого застосунку.
|
|
403
299
|
|
|
404
|
-
```tsx {1} fileName="src/app/[locale]/layout.tsx" codeFormat="typescript"
|
|
300
|
+
```tsx {1} fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
405
301
|
export { generateStaticParams } from "next-intlayer"; // Line to insert
|
|
406
302
|
|
|
407
303
|
const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
@@ -411,26 +307,6 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
411
307
|
export default LocaleLayout;
|
|
412
308
|
```
|
|
413
309
|
|
|
414
|
-
```jsx {1} fileName="src/app/[locale]/layout.mjx" codeFormat="esm"
|
|
415
|
-
export { generateStaticParams } from "next-intlayer"; // Рядок для вставки
|
|
416
|
-
|
|
417
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
418
|
-
/*... Решта коду*/
|
|
419
|
-
};
|
|
420
|
-
|
|
421
|
-
// ... Решта коду
|
|
422
|
-
```
|
|
423
|
-
|
|
424
|
-
```jsx {1,7} fileName="src/app/[locale]/layout.csx" codeFormat="commonjs"
|
|
425
|
-
const { generateStaticParams } = require("next-intlayer"); // Рядок для вставки
|
|
426
|
-
|
|
427
|
-
const LocaleLayout = async ({ children, params: { locale } }) => {
|
|
428
|
-
/*... Решта коду*/
|
|
429
|
-
};
|
|
430
|
-
|
|
431
|
-
module.exports = { default: LocaleLayout, generateStaticParams };
|
|
432
|
-
```
|
|
433
|
-
|
|
434
310
|
> `generateStaticParams` гарантує, що ваш додаток попередньо збирає необхідні сторінки для всіх локалей, зменшуючи обчислення під час виконання та покращуючи взаємодію користувача. Для детальнішої інформації зверніться до [документації Next.js щодо generateStaticParams](https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic-rendering#generate-static-params).
|
|
435
311
|
|
|
436
312
|
> Intlayer працює з `export const dynamic = 'force-static';`, щоб забезпечити попередню збірку сторінок для всіх локалей.
|
|
@@ -439,7 +315,7 @@ module.exports = { default: LocaleLayout, generateStaticParams };
|
|
|
439
315
|
|
|
440
316
|
Створіть і керуйте оголошеннями контенту для збереження перекладів:
|
|
441
317
|
|
|
442
|
-
```tsx fileName="src/app/[locale]/page.content.ts" contentDeclarationFormat="typescript"
|
|
318
|
+
```tsx fileName="src/app/[locale]/page.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
443
319
|
import { t, type Dictionary } from "intlayer";
|
|
444
320
|
|
|
445
321
|
const pageContent = {
|
|
@@ -460,52 +336,6 @@ const pageContent = {
|
|
|
460
336
|
export default pageContent;
|
|
461
337
|
```
|
|
462
338
|
|
|
463
|
-
```javascript fileName="src/app/[locale]/page.content.mjs" contentDeclarationFormat="esm"
|
|
464
|
-
import { t } from "intlayer";
|
|
465
|
-
|
|
466
|
-
/** @type {import('intlayer').Dictionary} */
|
|
467
|
-
const pageContent = {
|
|
468
|
-
key: "page",
|
|
469
|
-
content: {
|
|
470
|
-
getStarted: {
|
|
471
|
-
main: t({
|
|
472
|
-
uk: "Почніть із редагування",
|
|
473
|
-
en: "Get started by editing",
|
|
474
|
-
fr: "Commencez par éditer",
|
|
475
|
-
es: "Comience por editar",
|
|
476
|
-
}),
|
|
477
|
-
pageLink: "src/app/page.tsx",
|
|
478
|
-
},
|
|
479
|
-
},
|
|
480
|
-
};
|
|
481
|
-
|
|
482
|
-
export default pageContent;
|
|
483
|
-
```
|
|
484
|
-
|
|
485
|
-
```javascript fileName="src/app/[locale]/page.content.cjs" contentDeclarationFormat="commonjs"
|
|
486
|
-
|
|
487
|
-
javascript fileName="src/app/[locale]/page.content.cjs" contentDeclarationFormat="commonjs"
|
|
488
|
-
const { t } = require("intlayer");
|
|
489
|
-
|
|
490
|
-
/** @type {import('intlayer').Dictionary} */
|
|
491
|
-
const pageContent = {
|
|
492
|
-
key: "page",
|
|
493
|
-
content: {
|
|
494
|
-
getStarted: {
|
|
495
|
-
main: t({
|
|
496
|
-
uk: "Почніть з редагування",
|
|
497
|
-
en: "Get started by editing",
|
|
498
|
-
fr: "Commencez par éditer",
|
|
499
|
-
es: "Comience por editar",
|
|
500
|
-
}),
|
|
501
|
-
pageLink: "src/app/page.tsx",
|
|
502
|
-
},
|
|
503
|
-
},
|
|
504
|
-
};
|
|
505
|
-
|
|
506
|
-
module.exports = pageContent;
|
|
507
|
-
```
|
|
508
|
-
|
|
509
339
|
```json fileName="src/app/[locale]/page.content.json" contentDeclarationFormat="json"
|
|
510
340
|
{
|
|
511
341
|
"$schema": "https://intlayer.org/schema.json",
|
|
@@ -533,11 +363,11 @@ module.exports = pageContent;
|
|
|
533
363
|
|
|
534
364
|
Отримуйте доступ до словників контенту у всьому застосунку:
|
|
535
365
|
|
|
536
|
-
```tsx fileName="src/app/[locale]/page.tsx" codeFormat="typescript"
|
|
366
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
537
367
|
import type { FC } from "react";
|
|
538
368
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
539
369
|
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
540
|
-
import { type NextPageIntlayer
|
|
370
|
+
import { type NextPageIntlayer } from "next-intlayer";
|
|
541
371
|
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
542
372
|
|
|
543
373
|
const PageContent: FC = () => {
|
|
@@ -559,9 +389,7 @@ const Page: NextPageIntlayer = async ({ params }) => {
|
|
|
559
389
|
<PageContent />
|
|
560
390
|
<ServerComponentExample />
|
|
561
391
|
|
|
562
|
-
<
|
|
563
|
-
<ClientComponentExample />
|
|
564
|
-
</IntlayerClientProvider>
|
|
392
|
+
<ClientComponentExample />
|
|
565
393
|
</IntlayerServerProvider>
|
|
566
394
|
);
|
|
567
395
|
};
|
|
@@ -569,72 +397,6 @@ const Page: NextPageIntlayer = async ({ params }) => {
|
|
|
569
397
|
export default Page;
|
|
570
398
|
```
|
|
571
399
|
|
|
572
|
-
```jsx fileName="src/app/[locale]/page.mjx" codeFormat="esm"
|
|
573
|
-
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
574
|
-
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
575
|
-
import { IntlayerClientProvider } from "next-intlayer";
|
|
576
|
-
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
577
|
-
|
|
578
|
-
const PageContent = () => {
|
|
579
|
-
const content = useIntlayer("page");
|
|
580
|
-
|
|
581
|
-
return (
|
|
582
|
-
<>
|
|
583
|
-
<p>{content.getStarted.main}</p>
|
|
584
|
-
<code>{content.getStarted.pageLink}</code>
|
|
585
|
-
</>
|
|
586
|
-
);
|
|
587
|
-
};
|
|
588
|
-
|
|
589
|
-
const Page = async ({ params }) => {
|
|
590
|
-
const { locale } = await params;
|
|
591
|
-
|
|
592
|
-
return (
|
|
593
|
-
<IntlayerServerProvider locale={locale}>
|
|
594
|
-
<PageContent />
|
|
595
|
-
<ServerComponentExample />
|
|
596
|
-
|
|
597
|
-
<IntlayerClientProvider locale={locale}>
|
|
598
|
-
<ClientComponentExample />
|
|
599
|
-
</IntlayerClientProvider>
|
|
600
|
-
</IntlayerServerProvider>
|
|
601
|
-
);
|
|
602
|
-
};
|
|
603
|
-
|
|
604
|
-
export default Page;
|
|
605
|
-
```
|
|
606
|
-
|
|
607
|
-
```jsx fileName="src/app/[locale]/page.csx" codeFormat="commonjs"
|
|
608
|
-
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
609
|
-
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
610
|
-
import { IntlayerClientProvider } from "next-intlayer";
|
|
611
|
-
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
612
|
-
|
|
613
|
-
const PageContent = () => {
|
|
614
|
-
const content = useIntlayer("page");
|
|
615
|
-
|
|
616
|
-
return (
|
|
617
|
-
<>
|
|
618
|
-
<p>{content.getStarted.main}</p>
|
|
619
|
-
<code>{content.getStarted.pageLink}</code>
|
|
620
|
-
</>
|
|
621
|
-
);
|
|
622
|
-
};
|
|
623
|
-
|
|
624
|
-
const Page = async ({ params }) => {
|
|
625
|
-
const { locale } = await params;
|
|
626
|
-
|
|
627
|
-
return (
|
|
628
|
-
<IntlayerServerProvider locale={locale}>
|
|
629
|
-
<PageContent />
|
|
630
|
-
<ServerComponentExample />
|
|
631
|
-
</IntlayerClientProvider>
|
|
632
|
-
);
|
|
633
|
-
};
|
|
634
|
-
|
|
635
|
-
export default Page;
|
|
636
|
-
```
|
|
637
|
-
|
|
638
400
|
- **`IntlayerClientProvider`** використовується для передачі локалі клієнтським компонентам. Його можна розмістити в будь-якому батьківському компоненті, включно з layout. Однак рекомендовано розміщувати його в layout, оскільки Next.js ділиться кодом layout між сторінками, що робить це ефективнішим. Використовуючи `IntlayerClientProvider` у layout, ви уникаєте повторної ініціалізації для кожної сторінки, покращуєте продуктивність і підтримуєте послідовний контекст локалізації у всьому вашому додатку.
|
|
639
401
|
- **`IntlayerServerProvider`** використовується для надання локалі серверним дочірнім компонентам. Його не можна встановлювати в layout.
|
|
640
402
|
|
|
@@ -642,7 +404,7 @@ export default Page;
|
|
|
642
404
|
|
|
643
405
|
> Layout і page не можуть мати спільного server context, оскільки система server context базується на сховищі даних на запит (через механізм [React's cache](https://react.dev/reference/react/cache)), внаслідок чого кожен «context» створюється заново для різних сегментів застосунку. Розміщення провайдера в спільному layout порушило б цю ізоляцію й не дозволило б коректно пропагувати значення server context до ваших server components.
|
|
644
406
|
|
|
645
|
-
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat="typescript"
|
|
407
|
+
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
646
408
|
"use client";
|
|
647
409
|
|
|
648
410
|
import type { FC } from "react";
|
|
@@ -660,41 +422,7 @@ export const ClientComponentExample: FC = () => {
|
|
|
660
422
|
};
|
|
661
423
|
```
|
|
662
424
|
|
|
663
|
-
```
|
|
664
|
-
"use client";
|
|
665
|
-
|
|
666
|
-
import { useIntlayer } from "next-intlayer";
|
|
667
|
-
|
|
668
|
-
const ClientComponentExample = () => {
|
|
669
|
-
const content = useIntlayer("client-component-example"); // Створити пов'язану декларацію контенту
|
|
670
|
-
|
|
671
|
-
return (
|
|
672
|
-
<div>
|
|
673
|
-
<h2>{content.title}</h2>
|
|
674
|
-
<p>{content.content}</p>
|
|
675
|
-
</div>
|
|
676
|
-
);
|
|
677
|
-
};
|
|
678
|
-
```
|
|
679
|
-
|
|
680
|
-
```jsx {3,6} fileName="src/components/ClientComponentExample.csx" codeFormat="commonjs"
|
|
681
|
-
"use client";
|
|
682
|
-
|
|
683
|
-
const { useIntlayer } = require("next-intlayer");
|
|
684
|
-
|
|
685
|
-
const ClientComponentExample = () => {
|
|
686
|
-
const content = useIntlayer("client-component-example"); // Створити пов'язану декларацію контенту
|
|
687
|
-
|
|
688
|
-
return (
|
|
689
|
-
<div>
|
|
690
|
-
<h2>{content.title}</h2>
|
|
691
|
-
<p>{content.content}</p>
|
|
692
|
-
</div>
|
|
693
|
-
);
|
|
694
|
-
};
|
|
695
|
-
```
|
|
696
|
-
|
|
697
|
-
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat="typescript"
|
|
425
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
698
426
|
import type { FC } from "react";
|
|
699
427
|
import { useIntlayer } from "next-intlayer/server";
|
|
700
428
|
|
|
@@ -710,36 +438,6 @@ export const ServerComponentExample: FC = () => {
|
|
|
710
438
|
};
|
|
711
439
|
```
|
|
712
440
|
|
|
713
|
-
```jsx {1} fileName="src/components/ServerComponentExample.mjx" codeFormat="esm"
|
|
714
|
-
import { useIntlayer } from "next-intlayer/server";
|
|
715
|
-
|
|
716
|
-
const ServerComponentExample = () => {
|
|
717
|
-
const content = useIntlayer("server-component-example"); // Створити пов'язане оголошення контенту
|
|
718
|
-
|
|
719
|
-
return (
|
|
720
|
-
<div>
|
|
721
|
-
<h2>{content.title}</h2>
|
|
722
|
-
<p>{content.content}</p>
|
|
723
|
-
</div>
|
|
724
|
-
);
|
|
725
|
-
};
|
|
726
|
-
```
|
|
727
|
-
|
|
728
|
-
```jsx {1} fileName="src/components/ServerComponentExample.csx" codeFormat="commonjs"
|
|
729
|
-
const { useIntlayer } = require("next-intlayer/server");
|
|
730
|
-
|
|
731
|
-
const ServerComponentExample = () => {
|
|
732
|
-
const content = useIntlayer("server-component-example"); // Створіть декларацію пов'язаного контенту
|
|
733
|
-
|
|
734
|
-
return (
|
|
735
|
-
<div>
|
|
736
|
-
<h2>{content.title}</h2>
|
|
737
|
-
<p>{content.content}</p>
|
|
738
|
-
</div>
|
|
739
|
-
);
|
|
740
|
-
};
|
|
741
|
-
```
|
|
742
|
-
|
|
743
441
|
> Якщо ви хочете використовувати свій вміст в атрибуті типу `string`, наприклад `alt`, `title`, `href`, `aria-label` тощо, ви повинні викликати значення функції, наприклад:
|
|
744
442
|
|
|
745
443
|
> ```jsx
|
|
@@ -752,16 +450,7 @@ const ServerComponentExample = () => {
|
|
|
752
450
|
|
|
753
451
|
Налаштуйте middleware для визначення переважної локалі користувача:
|
|
754
452
|
|
|
755
|
-
```typescript fileName="src/middleware.ts" codeFormat="typescript"
|
|
756
|
-
export { intlayerMiddleware as middleware } from "next-intlayer/middleware";
|
|
757
|
-
|
|
758
|
-
export const config = {
|
|
759
|
-
matcher:
|
|
760
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
761
|
-
};
|
|
762
|
-
```
|
|
763
|
-
|
|
764
|
-
```javascript fileName="src/middleware.mjs" codeFormat="esm"
|
|
453
|
+
```typescript fileName="src/middleware.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
765
454
|
export { intlayerMiddleware as middleware } from "next-intlayer/middleware";
|
|
766
455
|
|
|
767
456
|
export const config = {
|
|
@@ -770,17 +459,6 @@ export const config = {
|
|
|
770
459
|
};
|
|
771
460
|
```
|
|
772
461
|
|
|
773
|
-
```javascript fileName="src/middleware.cjs" codeFormat="commonjs"
|
|
774
|
-
const { intlayerMiddleware } = require("next-intlayer/middleware");
|
|
775
|
-
|
|
776
|
-
const config = {
|
|
777
|
-
matcher:
|
|
778
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
779
|
-
};
|
|
780
|
-
|
|
781
|
-
module.exports = { middleware: intlayerMiddleware, config };
|
|
782
|
-
```
|
|
783
|
-
|
|
784
462
|
> `intlayerMiddleware` використовується для визначення переважної мови користувача та перенаправлення його на відповідний URL, як вказано в [конфігурації](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md). Крім того, він дозволяє зберігати перевагу мови користувача в cookie.
|
|
785
463
|
|
|
786
464
|
> Якщо вам потрібно зв'язати кілька middleware разом (наприклад, `intlayerMiddleware` з автентифікацією або кастомними middleware), Intlayer тепер надає хелпер під назвою `multipleMiddlewares`.
|
|
@@ -802,65 +480,15 @@ export const middleware = multipleMiddlewares([
|
|
|
802
480
|
|
|
803
481
|
Якщо ви хочете інтернаціоналізувати свої метадані, такі як заголовок вашої сторінки, ви можете використати функцію `generateMetadata`, яку надає Next.js. Всередині неї ви можете отримати вміст через функцію `getIntlayer`, щоб перекласти свої метадані.
|
|
804
482
|
|
|
805
|
-
```typescript fileName="src/app/[locale]/metadata.content.ts" contentDeclarationFormat="typescript"
|
|
483
|
+
```typescript fileName="src/app/[locale]/metadata.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
806
484
|
import { type Dictionary, t } from "intlayer";
|
|
807
|
-
import { Metadata } from "next";
|
|
808
|
-
|
|
809
|
-
const metadataContent = {
|
|
810
|
-
key: "page-metadata",
|
|
811
|
-
content: {
|
|
812
|
-
title: t({
|
|
813
|
-
uk: "Створити додаток Next",
|
|
814
|
-
en: "Create Next App",
|
|
815
|
-
fr: "Créer une application Next.js",
|
|
816
|
-
es: "Crear una aplicación Next.js",
|
|
817
|
-
}),
|
|
818
|
-
description: t({
|
|
819
|
-
uk: "Згенеровано за допомогою create next app",
|
|
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
|
-
} satisfies Dictionary<Metadata>;
|
|
826
|
-
|
|
827
|
-
export default metadataContent;
|
|
828
|
-
```
|
|
829
|
-
|
|
830
|
-
```javascript fileName="src/app/[locale]/metadata.content.mjs" contentDeclarationFormat="esm"
|
|
831
|
-
import { t } from "intlayer";
|
|
832
|
-
|
|
833
|
-
/** @type {import('intlayer').Dictionary<import('next').Metadata>} */
|
|
834
|
-
const metadataContent = {
|
|
835
|
-
key: "page-metadata",
|
|
836
|
-
content: {
|
|
837
|
-
title: t({
|
|
838
|
-
uk: "Створити додаток Next.js",
|
|
839
|
-
en: "Create Next App",
|
|
840
|
-
fr: "Créer une application Next.js",
|
|
841
|
-
es: "Crear una aplicación Next.js",
|
|
842
|
-
}),
|
|
843
|
-
description: t({
|
|
844
|
-
uk: "Згенеровано за допомогою create next app",
|
|
845
|
-
en: "Generated by create next app",
|
|
846
|
-
fr: "Généré par create next app",
|
|
847
|
-
es: "Generado por create next app",
|
|
848
|
-
}),
|
|
849
|
-
},
|
|
850
|
-
};
|
|
851
|
-
|
|
852
|
-
export default metadataContent;
|
|
853
|
-
```
|
|
854
|
-
|
|
855
|
-
```javascript fileName="src/app/[locale]/metadata.content.cjs" contentDeclarationFormat="commonjs"
|
|
856
|
-
const { t } = require("intlayer");
|
|
485
|
+
import { Metadata } from "next";
|
|
857
486
|
|
|
858
|
-
/** @type {import('intlayer').Dictionary<import('next').Metadata>} */
|
|
859
487
|
const metadataContent = {
|
|
860
488
|
key: "page-metadata",
|
|
861
489
|
content: {
|
|
862
490
|
title: t({
|
|
863
|
-
uk: "Створити додаток Next
|
|
491
|
+
uk: "Створити додаток Next",
|
|
864
492
|
en: "Create Next App",
|
|
865
493
|
fr: "Créer une application Next.js",
|
|
866
494
|
es: "Crear una aplicación Next.js",
|
|
@@ -872,9 +500,9 @@ const metadataContent = {
|
|
|
872
500
|
es: "Generado por create next app",
|
|
873
501
|
}),
|
|
874
502
|
},
|
|
875
|
-
}
|
|
503
|
+
} satisfies Dictionary<Metadata>;
|
|
876
504
|
|
|
877
|
-
|
|
505
|
+
export default metadataContent;
|
|
878
506
|
```
|
|
879
507
|
|
|
880
508
|
```json fileName="src/app/[locale]/metadata.content.json" contentDeclarationFormat="json"
|
|
@@ -903,7 +531,7 @@ module.exports = metadataContent;
|
|
|
903
531
|
};
|
|
904
532
|
```
|
|
905
533
|
|
|
906
|
-
````typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat="typescript"
|
|
534
|
+
````typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
907
535
|
import { getIntlayer, getMultilingualUrls } from "intlayer";
|
|
908
536
|
import type { Metadata } from "next";
|
|
909
537
|
import type { LocalPromiseParams } from "next-intlayer";
|
|
@@ -952,39 +580,6 @@ export const generateMetadata = async ({
|
|
|
952
580
|
````javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
|
|
953
581
|
import { getIntlayer, getMultilingualUrls } from "intlayer";
|
|
954
582
|
|
|
955
|
-
export const generateMetadata = async ({ params }) => {
|
|
956
|
-
const { locale } = await params;
|
|
957
|
-
|
|
958
|
-
const metadata = getIntlayer("page-metadata", locale);
|
|
959
|
-
|
|
960
|
-
/**
|
|
961
|
-
* Генерує об'єкт, що містить всі URL для кожної локалі.
|
|
962
|
-
*
|
|
963
|
-
* Приклад:
|
|
964
|
-
* ```ts```
|
|
965
|
-
*/
|
|
966
|
-
const multilingualUrls = getMultilingualUrls("/");
|
|
967
|
-
const localizedUrl =
|
|
968
|
-
multilingualUrls[locale as keyof typeof multilingualUrls];
|
|
969
|
-
|
|
970
|
-
return {
|
|
971
|
-
...metadata,
|
|
972
|
-
alternates: {
|
|
973
|
-
canonical: localizedUrl,
|
|
974
|
-
languages: { ...multilingualUrls, "x-default": "/" },
|
|
975
|
-
},
|
|
976
|
-
openGraph: {
|
|
977
|
-
url: localizedUrl,
|
|
978
|
-
},
|
|
979
|
-
};
|
|
980
|
-
};
|
|
981
|
-
|
|
982
|
-
// ... Rest of the code
|
|
983
|
-
````
|
|
984
|
-
|
|
985
|
-
````javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
|
|
986
|
-
import { getIntlayer, getMultilingualUrls } from "intlayer";
|
|
987
|
-
|
|
988
583
|
export const generateMetadata = async ({ params }) => {
|
|
989
584
|
const { locale } = await params;
|
|
990
585
|
|
|
@@ -1070,7 +665,7 @@ module.exports = { generateMetadata };
|
|
|
1070
665
|
|
|
1071
666
|
Альтернативно, ви можете використовувати функцію `getTranslation` для оголошення ваших метаданих. Проте рекомендується використовувати файли декларацій контенту, щоб автоматизувати переклад ваших метаданих і згодом винести контент.
|
|
1072
667
|
|
|
1073
|
-
```typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat="typescript"
|
|
668
|
+
```typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1074
669
|
import {
|
|
1075
670
|
type IConfigLocales,
|
|
1076
671
|
getTranslation,
|
|
@@ -1104,68 +699,13 @@ export const generateMetadata = async ({
|
|
|
1104
699
|
// ... Rest of the code
|
|
1105
700
|
```
|
|
1106
701
|
|
|
1107
|
-
```javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
|
|
1108
|
-
import { getTranslation, getMultilingualUrls } from "intlayer";
|
|
1109
|
-
|
|
1110
|
-
export const generateMetadata = async ({ params }) => {
|
|
1111
|
-
const { locale } = await params;
|
|
1112
|
-
const t = (content) => getTranslation(content, locale);
|
|
1113
|
-
|
|
1114
|
-
return {
|
|
1115
|
-
title: t({
|
|
1116
|
-
uk: "Мій заголовок",
|
|
1117
|
-
en: "My title",
|
|
1118
|
-
fr: "Mon titre",
|
|
1119
|
-
es: "Mi título",
|
|
1120
|
-
}),
|
|
1121
|
-
description: t({
|
|
1122
|
-
uk: "Мій опис",
|
|
1123
|
-
en: "My description",
|
|
1124
|
-
fr: "Ma description",
|
|
1125
|
-
es: "Mi descripción",
|
|
1126
|
-
}),
|
|
1127
|
-
};
|
|
1128
|
-
};
|
|
1129
|
-
|
|
1130
|
-
// ... Rest of the code
|
|
1131
|
-
```
|
|
1132
|
-
|
|
1133
|
-
```javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
|
|
1134
|
-
const { getTranslation, getMultilingualUrls } = require("intlayer");
|
|
1135
|
-
|
|
1136
|
-
const generateMetadata = async ({ params }) => {
|
|
1137
|
-
const { locale } = await params;
|
|
1138
|
-
|
|
1139
|
-
const t = (content) => getTranslation(content, locale);
|
|
1140
|
-
|
|
1141
|
-
return {
|
|
1142
|
-
title: t({
|
|
1143
|
-
uk: "Мій заголовок",
|
|
1144
|
-
en: "My title",
|
|
1145
|
-
fr: "Mon titre",
|
|
1146
|
-
es: "Mi título",
|
|
1147
|
-
}),
|
|
1148
|
-
description: t({
|
|
1149
|
-
uk: "Мій опис",
|
|
1150
|
-
en: "My description",
|
|
1151
|
-
fr: "Ma description",
|
|
1152
|
-
es: "Mi descripción",
|
|
1153
|
-
}),
|
|
1154
|
-
};
|
|
1155
|
-
};
|
|
1156
|
-
|
|
1157
|
-
module.exports = { generateMetadata };
|
|
1158
|
-
|
|
1159
|
-
// ... Rest of the code
|
|
1160
|
-
```
|
|
1161
|
-
|
|
1162
702
|
> Дізнайтеся більше про оптимізацію метаданих [в офіційній документації Next.js](https://nextjs.org/docs/app/building-your-application/optimizing/metadata).
|
|
1163
703
|
|
|
1164
704
|
### (Необов'язково) Крок 9: Інтернаціоналізація вашого sitemap.xml та robots.txt
|
|
1165
705
|
|
|
1166
706
|
Щоб інтернаціоналізувати `sitemap.xml` та `robots.txt`, ви можете використати функцію `getMultilingualUrls`, надану Intlayer. Ця функція дозволяє генерувати багатомовні URL-адреси для вашого sitemap.
|
|
1167
707
|
|
|
1168
|
-
```tsx fileName="src/app/sitemap.ts" codeFormat="typescript"
|
|
708
|
+
```tsx fileName="src/app/sitemap.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1169
709
|
import { getMultilingualUrls } from "intlayer";
|
|
1170
710
|
import type { MetadataRoute } from "next";
|
|
1171
711
|
|
|
@@ -1202,79 +742,7 @@ const sitemap = (): MetadataRoute.Sitemap => [
|
|
|
1202
742
|
export default sitemap;
|
|
1203
743
|
```
|
|
1204
744
|
|
|
1205
|
-
```
|
|
1206
|
-
import { getMultilingualUrls } from "intlayer";
|
|
1207
|
-
|
|
1208
|
-
const sitemap = () => [
|
|
1209
|
-
{
|
|
1210
|
-
url: "https://example.com",
|
|
1211
|
-
alternates: {
|
|
1212
|
-
languages: {
|
|
1213
|
-
...getMultilingualUrls("https://example.com"),
|
|
1214
|
-
"x-default": "https://example.com",
|
|
1215
|
-
},
|
|
1216
|
-
},
|
|
1217
|
-
},
|
|
1218
|
-
{
|
|
1219
|
-
url: "https://example.com/login",
|
|
1220
|
-
alternates: {
|
|
1221
|
-
languages: {
|
|
1222
|
-
...getMultilingualUrls("https://example.com/login"),
|
|
1223
|
-
"x-default": "https://example.com/login",
|
|
1224
|
-
},
|
|
1225
|
-
},
|
|
1226
|
-
},
|
|
1227
|
-
{
|
|
1228
|
-
url: "https://example.com/register",
|
|
1229
|
-
alternates: {
|
|
1230
|
-
languages: {
|
|
1231
|
-
...getMultilingualUrls("https://example.com/register"),
|
|
1232
|
-
"x-default": "https://example.com/register",
|
|
1233
|
-
},
|
|
1234
|
-
},
|
|
1235
|
-
},
|
|
1236
|
-
];
|
|
1237
|
-
|
|
1238
|
-
export default sitemap;
|
|
1239
|
-
```
|
|
1240
|
-
|
|
1241
|
-
```jsx fileName="src/app/sitemap.csx" codeFormat="commonjs"
|
|
1242
|
-
const { getMultilingualUrls } = require("intlayer");
|
|
1243
|
-
|
|
1244
|
-
const sitemap = () => [
|
|
1245
|
-
{
|
|
1246
|
-
url: "https://example.com",
|
|
1247
|
-
alternates: {
|
|
1248
|
-
languages: {
|
|
1249
|
-
...getMultilingualUrls("https://example.com"),
|
|
1250
|
-
"x-default": "https://example.com",
|
|
1251
|
-
},
|
|
1252
|
-
},
|
|
1253
|
-
},
|
|
1254
|
-
{
|
|
1255
|
-
url: "https://example.com/login",
|
|
1256
|
-
alternates: {
|
|
1257
|
-
languages: {
|
|
1258
|
-
...getMultilingualUrls("https://example.com/login"),
|
|
1259
|
-
"x-default": "https://example.com/login",
|
|
1260
|
-
},
|
|
1261
|
-
},
|
|
1262
|
-
},
|
|
1263
|
-
{
|
|
1264
|
-
url: "https://example.com/register",
|
|
1265
|
-
alternates: {
|
|
1266
|
-
languages: {
|
|
1267
|
-
...getMultilingualUrls("https://example.com/register"),
|
|
1268
|
-
"x-default": "https://example.com/register",
|
|
1269
|
-
},
|
|
1270
|
-
},
|
|
1271
|
-
},
|
|
1272
|
-
];
|
|
1273
|
-
|
|
1274
|
-
module.exports = sitemap;
|
|
1275
|
-
```
|
|
1276
|
-
|
|
1277
|
-
```tsx fileName="src/app/robots.ts" codeFormat="typescript"
|
|
745
|
+
```tsx fileName="src/app/robots.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1278
746
|
import type { MetadataRoute } from "next";
|
|
1279
747
|
import { getMultilingualUrls } from "intlayer";
|
|
1280
748
|
|
|
@@ -1294,51 +762,13 @@ const robots = (): MetadataRoute.Robots => ({
|
|
|
1294
762
|
export default robots;
|
|
1295
763
|
```
|
|
1296
764
|
|
|
1297
|
-
```jsx fileName="src/app/robots.mjx" codeFormat="esm"
|
|
1298
|
-
import { getMultilingualUrls } from "intlayer";
|
|
1299
|
-
|
|
1300
|
-
const getAllMultilingualUrls = (urls) =>
|
|
1301
|
-
urls.flatMap((url) => Object.values(getMultilingualUrls(url)));
|
|
1302
|
-
|
|
1303
|
-
const robots = () => ({
|
|
1304
|
-
rules: {
|
|
1305
|
-
userAgent: "*",
|
|
1306
|
-
allow: ["/"],
|
|
1307
|
-
disallow: getAllMultilingualUrls(["/login", "/register"]),
|
|
1308
|
-
},
|
|
1309
|
-
host: "https://example.com",
|
|
1310
|
-
sitemap: `https://example.com/sitemap.xml`,
|
|
1311
|
-
});
|
|
1312
|
-
|
|
1313
|
-
export default robots;
|
|
1314
|
-
```
|
|
1315
|
-
|
|
1316
|
-
```jsx fileName="src/app/robots.csx" codeFormat="commonjs"
|
|
1317
|
-
const { getMultilingualUrls } = require("intlayer");
|
|
1318
|
-
|
|
1319
|
-
const getAllMultilingualUrls = (urls) =>
|
|
1320
|
-
urls.flatMap((url) => Object.values(getMultilingualUrls(url)));
|
|
1321
|
-
|
|
1322
|
-
const robots = () => ({
|
|
1323
|
-
rules: {
|
|
1324
|
-
userAgent: "*",
|
|
1325
|
-
allow: ["/"],
|
|
1326
|
-
disallow: getAllMultilingualUrls(["/login", "/register"]),
|
|
1327
|
-
},
|
|
1328
|
-
host: "https://example.com",
|
|
1329
|
-
sitemap: `https://example.com/sitemap.xml`,
|
|
1330
|
-
});
|
|
1331
|
-
|
|
1332
|
-
module.exports = robots;
|
|
1333
|
-
```
|
|
1334
|
-
|
|
1335
765
|
> Дізнайтеся більше про оптимізацію sitemap у [офіційній документації Next.js](https://nextjs.org/docs/app/api-reference/file-conventions/metadata/sitemap). Дізнайтеся більше про оптимізацію robots.txt у [офіційній документації Next.js](https://nextjs.org/docs/app/api-reference/file-conventions/metadata/robots).
|
|
1336
766
|
|
|
1337
767
|
### (Необов'язково) Крок 10: Зміна мови вашого контенту
|
|
1338
768
|
|
|
1339
769
|
Щоб змінити мову вашого контенту в Next.js, рекомендується використовувати компонент `Link` для перенаправлення користувачів на відповідну локалізовану сторінку. Компонент `Link` дозволяє виконувати prefetch сторінки, що допомагає уникнути повного перезавантаження сторінки.
|
|
1340
770
|
|
|
1341
|
-
```tsx fileName="src/components/LocaleSwitcher.tsx" codeFormat="typescript"
|
|
771
|
+
```tsx fileName="src/components/LocaleSwitcher.tsx" codeFormat={["typescript", "esm"]}
|
|
1342
772
|
"use client";
|
|
1343
773
|
|
|
1344
774
|
import type { FC } from "react";
|
|
@@ -1447,34 +877,6 @@ import {
|
|
|
1447
877
|
import { useLocale } from "next-intlayer";
|
|
1448
878
|
import Link from "next/link";
|
|
1449
879
|
|
|
1450
|
-
export const LocaleSwitcher = () => {
|
|
1451
|
-
const { locale, pathWithoutLocale, availableLocales, setLocale } =
|
|
1452
|
-
useLocale();
|
|
1453
|
-
|
|
1454
|
-
return (
|
|
1455
|
-
<div>
|
|
1456
|
-
<button popoverTarget="localePopover">{getLocaleName(locale)}</button>
|
|
1457
|
-
<div id="localePopover" popover="auto">
|
|
1458
|
-
{availableLocales.map((localeItem) => (
|
|
1459
|
-
<Link
|
|
1460
|
-
href={getLocalizedUrl(pathWithoutLocale, localeItem)}
|
|
1461
|
-
key={localeItem}
|
|
1462
|
-
aria-current={locale === localeItem ? "page" : undefined}
|
|
1463
|
-
onClick={() => setLocale(localeItem)}
|
|
1464
|
-
```
|
|
1465
|
-
|
|
1466
|
-
```jsx fileName="src/components/LocaleSwitcher.msx" codeFormat="esm"
|
|
1467
|
-
"use client";
|
|
1468
|
-
|
|
1469
|
-
import {
|
|
1470
|
-
Locales,
|
|
1471
|
-
getHTMLTextDir,
|
|
1472
|
-
getLocaleName,
|
|
1473
|
-
getLocalizedUrl,
|
|
1474
|
-
} from "intlayer";
|
|
1475
|
-
import { useLocale } from "next-intlayer";
|
|
1476
|
-
import Link from "next/link";
|
|
1477
|
-
|
|
1478
880
|
export const LocaleSwitcher = () => {
|
|
1479
881
|
const { locale, pathWithoutLocale, availableLocales, setLocale } =
|
|
1480
882
|
useLocale();
|
|
@@ -1661,7 +1063,7 @@ return (
|
|
|
1661
1063
|
|
|
1662
1064
|
Нижче наведено реалізацію локалізованого компонента `Link` на TypeScript:
|
|
1663
1065
|
|
|
1664
|
-
```tsx fileName="src/components/Link.tsx" codeFormat="typescript"
|
|
1066
|
+
```tsx fileName="src/components/Link.tsx" codeFormat={["typescript", "esm", "commonjs"]}
|
|
1665
1067
|
"use client";
|
|
1666
1068
|
|
|
1667
1069
|
import { getLocalizedUrl } from "intlayer";
|
|
@@ -1701,74 +1103,6 @@ export const Link: FC<PropsWithChildren<NextLinkProps>> = ({
|
|
|
1701
1103
|
};
|
|
1702
1104
|
```
|
|
1703
1105
|
|
|
1704
|
-
```jsx fileName="src/components/Link.mjx" codeFormat="esm"
|
|
1705
|
-
"use client";
|
|
1706
|
-
|
|
1707
|
-
import { getLocalizedUrl } from "intlayer";
|
|
1708
|
-
import NextLink from "next/link";
|
|
1709
|
-
import { useLocale } from "next-intlayer";
|
|
1710
|
-
|
|
1711
|
-
/**
|
|
1712
|
-
* Утилітна функція для перевірки, чи є даний URL зовнішнім.
|
|
1713
|
-
* Якщо URL починається з http:// або https://, він вважається зовнішнім.
|
|
1714
|
-
*/
|
|
1715
|
-
export const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
|
|
1716
|
-
|
|
1717
|
-
/**
|
|
1718
|
-
* Кастомний компонент Link, який адаптує атрибут href відповідно до поточної локалі.
|
|
1719
|
-
* Для внутрішніх посилань він використовує `getLocalizedUrl` для додавання префіксу локалі в URL (наприклад, /fr/about).
|
|
1720
|
-
* Це забезпечує, що навігація відбувається в межах тієї самої локалі.
|
|
1721
|
-
*/
|
|
1722
|
-
export const Link = ({ href, children, ...props }) => {
|
|
1723
|
-
const { locale } = useLocale();
|
|
1724
|
-
const isExternalLink = checkIsExternalLink(href.toString());
|
|
1725
|
-
|
|
1726
|
-
// Якщо посилання внутрішнє і передано дійсний href, отримати локалізовану URL.
|
|
1727
|
-
const hrefI18n =
|
|
1728
|
-
href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
|
|
1729
|
-
|
|
1730
|
-
return (
|
|
1731
|
-
<NextLink href={hrefI18n} {...props}>
|
|
1732
|
-
{children}
|
|
1733
|
-
</NextLink>
|
|
1734
|
-
);
|
|
1735
|
-
};
|
|
1736
|
-
```
|
|
1737
|
-
|
|
1738
|
-
```jsx fileName="src/components/Link.csx" codeFormat="commonjs"
|
|
1739
|
-
"use client";
|
|
1740
|
-
|
|
1741
|
-
const { getLocalizedUrl } = require("intlayer");
|
|
1742
|
-
const NextLink = require("next/link");
|
|
1743
|
-
const { useLocale } = require("next-intlayer");
|
|
1744
|
-
|
|
1745
|
-
/**
|
|
1746
|
-
* Утиліта для перевірки, чи є даний URL зовнішнім.
|
|
1747
|
-
* Якщо URL починається з http:// або https://, він вважається зовнішнім.
|
|
1748
|
-
*/
|
|
1749
|
-
const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
|
|
1750
|
-
|
|
1751
|
-
/**
|
|
1752
|
-
* Користувацький компонент Link, який адаптує атрибут href залежно від поточної локалі.
|
|
1753
|
-
* Для внутрішніх посилань він використовує `getLocalizedUrl`, щоб додати префікс локалі до URL (наприклад, /fr/about).
|
|
1754
|
-
* Це гарантує, що навігація залишатиметься в контексті тієї ж локалі.
|
|
1755
|
-
*/
|
|
1756
|
-
const Link = ({ href, children, ...props }) => {
|
|
1757
|
-
const { locale } = useLocale();
|
|
1758
|
-
const isExternalLink = checkIsExternalLink(href.toString());
|
|
1759
|
-
|
|
1760
|
-
// Якщо посилання внутрішнє і надано дійсний href, отримати локалізований URL.
|
|
1761
|
-
const hrefI18n =
|
|
1762
|
-
href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
|
|
1763
|
-
|
|
1764
|
-
return (
|
|
1765
|
-
<NextLink href={hrefI18n} {...props}>
|
|
1766
|
-
{children}
|
|
1767
|
-
</NextLink>
|
|
1768
|
-
);
|
|
1769
|
-
};
|
|
1770
|
-
```
|
|
1771
|
-
|
|
1772
1106
|
#### Як це працює
|
|
1773
1107
|
|
|
1774
1108
|
- **Визначення зовнішніх посилань**:
|