@intlayer/docs 9.3.3 → 9.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/authors.json +1 -1
- package/blog/ar/i18n_using_next-i18next.md +52 -13
- package/blog/ar/i18n_using_next-intl.md +20 -2
- package/blog/de/i18n_using_next-i18next.md +37 -37
- package/blog/de/i18n_using_next-intl.md +18 -0
- package/blog/en/i18n_using_next-i18next.md +35 -0
- package/blog/en/i18n_using_next-intl.md +18 -0
- package/blog/en/rag_powered_documentation_assistant.md +4 -1
- package/blog/en-GB/i18n_using_next-i18next.md +28 -1
- package/blog/en-GB/i18n_using_next-intl.md +18 -0
- package/blog/es/i18n_using_next-i18next.md +52 -13
- package/blog/es/i18n_using_next-intl.md +18 -0
- package/blog/fr/i18n_using_next-i18next.md +27 -0
- package/blog/fr/i18n_using_next-intl.md +18 -0
- package/blog/hi/i18n_using_next-i18next.md +52 -13
- package/blog/hi/i18n_using_next-intl.md +18 -0
- package/blog/id/i18n_using_next-i18next.md +40 -13
- package/blog/id/i18n_using_next-intl.md +18 -0
- package/blog/it/i18n_using_next-i18next.md +40 -13
- package/blog/it/i18n_using_next-intl.md +18 -0
- package/blog/ja/i18n_using_next-i18next.md +27 -0
- package/blog/ja/i18n_using_next-intl.md +18 -0
- package/blog/ko/i18n_using_next-i18next.md +40 -13
- package/blog/ko/i18n_using_next-intl.md +18 -0
- package/blog/pl/i18n_using_next-i18next.md +40 -13
- package/blog/pl/i18n_using_next-intl.md +18 -0
- package/blog/pt/i18n_using_next-i18next.md +52 -13
- package/blog/pt/i18n_using_next-intl.md +18 -0
- package/blog/ru/i18n_using_next-i18next.md +37 -37
- package/blog/ru/i18n_using_next-intl.md +19 -1
- package/blog/tr/i18n_using_next-i18next.md +40 -13
- package/blog/tr/i18n_using_next-intl.md +18 -0
- package/blog/uk/i18n_using_next-i18next.md +53 -26
- package/blog/uk/i18n_using_next-intl.md +30 -12
- package/blog/vi/i18n_using_next-i18next.md +40 -13
- package/blog/vi/i18n_using_next-intl.md +18 -0
- package/blog/zh/i18n_using_next-i18next.md +31 -31
- package/blog/zh/i18n_using_next-intl.md +22 -4
- package/dist/cjs/authors2.cjs +1 -1
- package/dist/cjs/generated/docs.entry.cjs +140 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/authors2.mjs +1 -1
- package/dist/esm/generated/docs.entry.mjs +140 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +7 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/agent_skills.md +7 -7
- package/docs/ar/analytics.md +57 -13
- package/docs/ar/benchmark/tanstack.md +6 -0
- package/docs/ar/bundle_optimization.md +2 -2
- package/docs/ar/cli/ci.md +2 -0
- package/docs/ar/cli/doc-review.md +9 -1
- package/docs/ar/cli/fill.md +0 -8
- package/docs/ar/cli/index.md +2 -0
- package/docs/ar/cli/list_projects.md +0 -2
- package/docs/ar/cli/login.md +28 -0
- package/docs/ar/compiler.md +14 -0
- package/docs/ar/configuration.md +19 -17
- package/docs/ar/custom_domains.md +33 -0
- package/docs/ar/custom_url_rewrites.md +9 -5
- package/docs/ar/dictionary/html.md +16 -14
- package/docs/ar/dictionary/markdown.md +7 -3
- package/docs/ar/dictionary/plurial.md +92 -123
- package/docs/ar/dynamic_dictionaries/variants.md +24 -36
- package/docs/ar/formatters.md +0 -128
- package/docs/ar/how_works_intlayer.md +8 -1
- package/docs/ar/interest_of_intlayer.md +17 -1
- package/docs/ar/intlayer_visual_editor.md +12 -0
- package/docs/ar/intlayer_with_adonisjs.md +5 -3
- package/docs/ar/intlayer_with_analog.md +18 -1
- package/docs/ar/intlayer_with_angular_19.md +18 -1
- package/docs/ar/intlayer_with_angular_21.md +18 -1
- package/docs/ar/intlayer_with_astro.md +42 -1
- package/docs/ar/intlayer_with_astro_lit.md +18 -1
- package/docs/ar/intlayer_with_astro_preact.md +24 -1
- package/docs/ar/intlayer_with_astro_react.md +18 -1
- package/docs/ar/intlayer_with_astro_solid.md +18 -1
- package/docs/ar/intlayer_with_astro_svelte.md +18 -1
- package/docs/ar/intlayer_with_astro_vanilla.md +18 -1
- package/docs/ar/intlayer_with_astro_vue.md +18 -1
- package/docs/ar/intlayer_with_create_react_app.md +55 -119
- package/docs/ar/intlayer_with_elysia.md +343 -0
- package/docs/ar/intlayer_with_express.md +11 -3
- package/docs/ar/intlayer_with_fastify.md +5 -3
- package/docs/ar/intlayer_with_hono.md +48 -3
- package/docs/ar/intlayer_with_lynx+react.md +31 -1
- package/docs/ar/intlayer_with_nestjs.md +19 -3
- package/docs/ar/intlayer_with_next-i18next.md +11 -0
- package/docs/ar/intlayer_with_nextjs_14.md +234 -37
- package/docs/ar/intlayer_with_nextjs_15.md +219 -1
- package/docs/ar/intlayer_with_nextjs_16.md +171 -45
- package/docs/ar/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +160 -5
- package/docs/ar/intlayer_with_nextjs_page_router.md +16 -29
- package/docs/ar/intlayer_with_nuxt.md +18 -1
- package/docs/ar/intlayer_with_react_native+expo.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7.md +48 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +192 -53
- package/docs/ar/intlayer_with_solid_start.md +13 -1
- package/docs/ar/intlayer_with_storybook.md +18 -1
- package/docs/ar/intlayer_with_svelte_kit.md +26 -17
- package/docs/ar/intlayer_with_tanstack+solid.md +250 -7
- package/docs/ar/intlayer_with_tanstack.md +284 -50
- package/docs/ar/intlayer_with_vanilla.md +18 -1
- package/docs/ar/intlayer_with_vite+lit.md +22 -1
- package/docs/ar/intlayer_with_vite+preact.md +52 -17
- package/docs/ar/intlayer_with_vite+react.md +22 -13
- package/docs/ar/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ar/intlayer_with_vite+solid.md +29 -49
- package/docs/ar/intlayer_with_vite+svelte.md +43 -13
- package/docs/ar/intlayer_with_vite+vanilla.md +20 -1
- package/docs/ar/intlayer_with_vite+vue.md +33 -15
- package/docs/ar/introduction.md +1 -1
- package/docs/ar/live-sync.md +13 -2
- package/docs/ar/mcp_server.md +34 -21
- package/docs/ar/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ar/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ar/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ar/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ar/packages/intlayer/getDictionary.md +155 -0
- package/docs/ar/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ar/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ar/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ar/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ar/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/ar/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/ar/packages/intlayer/getTranslation.md +2 -0
- package/docs/ar/packages/next-intlayer/t.md +20 -0
- package/docs/ar/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ar/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ar/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ar/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ar/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ar/packages/vite-intlayer/intlayerPrune.md +10 -2
- package/docs/ar/per_locale_file.md +13 -13
- package/docs/ar/readme.md +1 -0
- package/docs/ar/releases/v6.md +16 -2
- package/docs/ar/releases/v9.md +2 -0
- package/docs/ar/self_hosting.md +67 -24
- package/docs/bn/bundle_optimization.md +2 -2
- package/docs/bn/configuration.md +12 -9
- package/docs/bn/intlayer_with_fastify.md +5 -3
- package/docs/bn/intlayer_with_hono.md +5 -3
- package/docs/cs/bundle_optimization.md +2 -2
- package/docs/cs/configuration.md +12 -9
- package/docs/cs/intlayer_with_fastify.md +5 -3
- package/docs/cs/intlayer_with_hono.md +5 -3
- package/docs/de/analytics.md +57 -13
- package/docs/de/benchmark/tanstack.md +6 -0
- package/docs/de/bundle_optimization.md +2 -2
- package/docs/de/cli/ci.md +2 -0
- package/docs/de/cli/doc-review.md +9 -1
- package/docs/de/cli/fill.md +0 -8
- package/docs/de/cli/index.md +2 -0
- package/docs/de/cli/init.md +0 -8
- package/docs/de/cli/list_projects.md +0 -2
- package/docs/de/cli/login.md +28 -0
- package/docs/de/compiler.md +14 -0
- package/docs/de/configuration.md +19 -17
- package/docs/de/custom_domains.md +34 -0
- package/docs/de/custom_url_rewrites.md +7 -5
- package/docs/de/dictionary/enumeration.md +0 -183
- package/docs/de/dictionary/html.md +18 -18
- package/docs/de/dictionary/insertion.md +0 -14
- package/docs/de/dictionary/markdown.md +31 -14
- package/docs/de/dictionary/plurial.md +70 -272
- package/docs/de/dynamic_dictionaries/variants.md +24 -0
- package/docs/de/formatters.md +12 -39
- package/docs/de/how_works_intlayer.md +8 -1
- package/docs/de/intlayer_CMS.md +26 -21
- package/docs/de/intlayer_visual_editor.md +12 -0
- package/docs/de/intlayer_with_adonisjs.md +5 -3
- package/docs/de/intlayer_with_analog.md +1 -1
- package/docs/de/intlayer_with_angular_19.md +1 -1
- package/docs/de/intlayer_with_angular_21.md +1 -1
- package/docs/de/intlayer_with_astro.md +25 -1
- package/docs/de/intlayer_with_astro_lit.md +1 -1
- package/docs/de/intlayer_with_astro_preact.md +7 -1
- package/docs/de/intlayer_with_astro_react.md +1 -1
- package/docs/de/intlayer_with_astro_solid.md +1 -1
- package/docs/de/intlayer_with_astro_svelte.md +1 -1
- package/docs/de/intlayer_with_astro_vanilla.md +1 -1
- package/docs/de/intlayer_with_astro_vue.md +1 -1
- package/docs/de/intlayer_with_create_react_app.md +51 -0
- package/docs/de/intlayer_with_elysia.md +343 -0
- package/docs/de/intlayer_with_express.md +7 -3
- package/docs/de/intlayer_with_fastify.md +5 -3
- package/docs/de/intlayer_with_hono.md +5 -3
- package/docs/de/intlayer_with_lynx+react.md +14 -27
- package/docs/de/intlayer_with_nestjs.md +5 -3
- package/docs/de/intlayer_with_next-intl.md +0 -5
- package/docs/de/intlayer_with_nextjs_14.md +240 -10
- package/docs/de/intlayer_with_nextjs_15.md +201 -1
- package/docs/de/intlayer_with_nextjs_16.md +96 -36
- package/docs/de/intlayer_with_nextjs_compiler.md +467 -10
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +126 -5
- package/docs/de/intlayer_with_nextjs_page_router.md +5 -44
- package/docs/de/intlayer_with_nuxt.md +1 -1
- package/docs/de/intlayer_with_react_native+expo.md +1 -1
- package/docs/de/intlayer_with_react_router_v7.md +31 -1
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +103 -13
- package/docs/de/intlayer_with_solid_start.md +13 -1
- package/docs/de/intlayer_with_storybook.md +1 -1
- package/docs/de/intlayer_with_svelte_kit.md +7 -1
- package/docs/de/intlayer_with_tanstack+solid.md +158 -7
- package/docs/de/intlayer_with_tanstack.md +349 -179
- package/docs/de/intlayer_with_vanilla.md +1 -1
- package/docs/de/intlayer_with_vite+lit.md +5 -1
- package/docs/de/intlayer_with_vite+preact.md +9 -5
- package/docs/de/intlayer_with_vite+react.md +5 -3
- package/docs/de/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/de/intlayer_with_vite+solid.md +12 -13
- package/docs/de/intlayer_with_vite+svelte.md +25 -1
- package/docs/de/intlayer_with_vite+vanilla.md +3 -1
- package/docs/de/intlayer_with_vite+vue.md +16 -3
- package/docs/de/introduction.md +1 -1
- package/docs/de/live-sync.md +39 -0
- package/docs/de/mcp_server.md +34 -21
- package/docs/de/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/de/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/de/packages/elysia-intlayer/exports.md +136 -0
- package/docs/de/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/de/packages/intlayer/getDictionary.md +155 -0
- package/docs/de/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/de/packages/intlayer/getEnumeration.md +2 -0
- package/docs/de/packages/intlayer/getIntlayer.md +197 -0
- package/docs/de/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/de/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/de/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/de/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/de/packages/intlayer/getTranslation.md +2 -0
- package/docs/de/packages/next-intlayer/t.md +20 -0
- package/docs/de/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/de/packages/next-intlayer/useLocale.md +2 -0
- package/docs/de/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/de/packages/react-intlayer/useI18n.md +31 -0
- package/docs/de/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/de/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/de/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/de/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/de/per_locale_file.md +13 -13
- package/docs/de/readme.md +3 -2
- package/docs/de/releases/v6.md +33 -33
- package/docs/de/releases/v9.md +2 -0
- package/docs/de/self_hosting.md +68 -24
- package/docs/en/analytics.md +526 -34
- package/docs/en/bundle_optimization.md +2 -2
- package/docs/en/cli/index.md +2 -0
- package/docs/en/cli/login.md +28 -0
- package/docs/en/configuration.md +12 -9
- package/docs/en/custom_domains.md +39 -2
- package/docs/en/dictionary/html.md +16 -16
- package/docs/en/dynamic_dictionaries/variants.md +41 -18
- package/docs/en/formatters.md +5 -2
- package/docs/en/intlayer_with_adonisjs.md +5 -3
- package/docs/en/intlayer_with_elysia.md +339 -0
- package/docs/en/intlayer_with_express.md +5 -3
- package/docs/en/intlayer_with_fastify.md +5 -4
- package/docs/en/intlayer_with_hono.md +5 -3
- package/docs/en/intlayer_with_nestjs.md +5 -3
- package/docs/en/intlayer_with_nextjs_14.md +103 -8
- package/docs/en/intlayer_with_nextjs_15.md +105 -1
- package/docs/en/intlayer_with_nextjs_16.md +105 -1
- package/docs/en/intlayer_with_nextjs_compiler.md +43 -18
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +125 -5
- package/docs/en/intlayer_with_nextjs_page_router.md +4 -28
- package/docs/en/intlayer_with_tanstack+solid.md +157 -6
- package/docs/en/intlayer_with_tanstack.md +159 -7
- package/docs/en/mcp_server.md +34 -19
- package/docs/en/packages/elysia-intlayer/exports.md +134 -0
- package/docs/en/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/en/packages/intlayer/exports.md +19 -14
- package/docs/en/packages/intlayer/getDictionary.md +154 -0
- package/docs/en/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/en/packages/intlayer/getIntlayer.md +196 -0
- package/docs/en/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/en/packages/next-intlayer/exports.md +14 -10
- package/docs/en/packages/next-intlayer/t.md +33 -9
- package/docs/en/packages/next-intlayer/useDictionary.md +5 -2
- package/docs/en/packages/next-intlayer/useIntlayer.md +35 -1
- package/docs/en/packages/react-intlayer/exports.md +14 -11
- package/docs/en/packages/react-intlayer/useI18n.md +35 -1
- package/docs/en/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/en/packages/vite-intlayer/intlayerPrune.md +1 -1
- package/docs/en/readme.md +1 -0
- package/docs/en/self_hosting.md +77 -20
- package/docs/en-GB/analytics.md +28 -5
- package/docs/en-GB/benchmark/tanstack.md +6 -0
- package/docs/en-GB/bundle_optimization.md +2 -2
- package/docs/en-GB/cli/ci.md +2 -0
- package/docs/en-GB/cli/doc-review.md +7 -1
- package/docs/en-GB/cli/fill.md +0 -8
- package/docs/en-GB/cli/index.md +2 -0
- package/docs/en-GB/cli/list_projects.md +0 -2
- package/docs/en-GB/cli/login.md +28 -0
- package/docs/en-GB/compiler.md +14 -0
- package/docs/en-GB/configuration.md +12 -9
- package/docs/en-GB/custom_domains.md +34 -0
- package/docs/en-GB/custom_url_rewrites.md +7 -5
- package/docs/en-GB/dictionary/condition.md +0 -201
- package/docs/en-GB/dictionary/content_file.md +0 -3
- package/docs/en-GB/dictionary/enumeration.md +0 -183
- package/docs/en-GB/dictionary/file.md +0 -166
- package/docs/en-GB/dictionary/gender.md +0 -212
- package/docs/en-GB/dictionary/html.md +17 -15
- package/docs/en-GB/dictionary/insertion.md +0 -4
- package/docs/en-GB/dictionary/markdown.md +7 -3
- package/docs/en-GB/dictionary/plurial.md +68 -271
- package/docs/en-GB/dictionary/translation.md +0 -133
- package/docs/en-GB/dynamic_dictionaries/variants.md +24 -0
- package/docs/en-GB/formatters.md +0 -164
- package/docs/en-GB/how_works_intlayer.md +7 -0
- package/docs/en-GB/interest_of_intlayer.md +1 -1
- package/docs/en-GB/intlayer_visual_editor.md +12 -0
- package/docs/en-GB/intlayer_with_adonisjs.md +5 -3
- package/docs/en-GB/intlayer_with_analog.md +1 -1
- package/docs/en-GB/intlayer_with_angular_19.md +1 -1
- package/docs/en-GB/intlayer_with_angular_21.md +1 -1
- package/docs/en-GB/intlayer_with_astro.md +25 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +1 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +7 -1
- package/docs/en-GB/intlayer_with_astro_react.md +1 -1
- package/docs/en-GB/intlayer_with_astro_solid.md +1 -1
- package/docs/en-GB/intlayer_with_astro_svelte.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +1 -1
- package/docs/en-GB/intlayer_with_create_react_app.md +10 -78
- package/docs/en-GB/intlayer_with_elysia.md +339 -0
- package/docs/en-GB/intlayer_with_express.md +11 -3
- package/docs/en-GB/intlayer_with_fastify.md +5 -4
- package/docs/en-GB/intlayer_with_hono.md +5 -3
- package/docs/en-GB/intlayer_with_lynx+react.md +9 -54
- package/docs/en-GB/intlayer_with_nestjs.md +5 -3
- package/docs/en-GB/intlayer_with_nextjs_14.md +181 -10
- package/docs/en-GB/intlayer_with_nextjs_15.md +196 -1
- package/docs/en-GB/intlayer_with_nextjs_16.md +226 -1
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +165 -5
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +140 -5
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en-GB/intlayer_with_nuxt.md +1 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7.md +111 -1
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +261 -64
- package/docs/en-GB/intlayer_with_solid_start.md +13 -1
- package/docs/en-GB/intlayer_with_storybook.md +1 -1
- package/docs/en-GB/intlayer_with_svelte_kit.md +110 -5
- package/docs/en-GB/intlayer_with_tanstack+solid.md +160 -7
- package/docs/en-GB/intlayer_with_tanstack.md +382 -112
- package/docs/en-GB/intlayer_with_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_vite+lit.md +3 -1
- package/docs/en-GB/intlayer_with_vite+preact.md +104 -5
- package/docs/en-GB/intlayer_with_vite+react.md +110 -1
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/en-GB/intlayer_with_vite+solid.md +81 -18
- package/docs/en-GB/intlayer_with_vite+svelte.md +133 -1
- package/docs/en-GB/intlayer_with_vite+vanilla.md +3 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +169 -24
- package/docs/en-GB/live-sync.md +13 -2
- package/docs/en-GB/mcp_server.md +34 -21
- package/docs/en-GB/packages/elysia-intlayer/exports.md +134 -0
- package/docs/en-GB/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/en-GB/packages/intlayer/getDictionary.md +154 -0
- package/docs/en-GB/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/en-GB/packages/intlayer/getEnumeration.md +2 -0
- package/docs/en-GB/packages/intlayer/getIntlayer.md +196 -0
- package/docs/en-GB/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/en-GB/packages/intlayer/getLocalizedPath.md +45 -4
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/en-GB/packages/next-intlayer/t.md +20 -0
- package/docs/en-GB/packages/next-intlayer/useIntlayer.md +31 -4
- package/docs/en-GB/packages/next-intlayer/useLocale.md +2 -0
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/en-GB/packages/react-intlayer/useI18n.md +31 -0
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/en-GB/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/en-GB/per_locale_file.md +13 -13
- package/docs/en-GB/readme.md +3 -2
- package/docs/en-GB/releases/v6.md +30 -28
- package/docs/en-GB/self_hosting.md +60 -29
- package/docs/es/agent_skills.md +7 -7
- package/docs/es/analytics.md +57 -13
- package/docs/es/benchmark/tanstack.md +6 -0
- package/docs/es/bundle_optimization.md +2 -2
- package/docs/es/cli/ci.md +2 -0
- package/docs/es/cli/doc-review.md +13 -1
- package/docs/es/cli/fill.md +0 -8
- package/docs/es/cli/index.md +2 -0
- package/docs/es/cli/list_projects.md +0 -2
- package/docs/es/cli/login.md +28 -2
- package/docs/es/compat/next-intl.md +0 -2
- package/docs/es/compiler.md +14 -0
- package/docs/es/component_i18n.md +4 -0
- package/docs/es/configuration.md +19 -17
- package/docs/es/custom_domains.md +34 -0
- package/docs/es/custom_url_rewrites.md +7 -5
- package/docs/es/dictionary/enumeration.md +0 -154
- package/docs/es/dictionary/html.md +16 -16
- package/docs/es/dictionary/markdown.md +7 -3
- package/docs/es/dictionary/plurial.md +72 -275
- package/docs/es/dynamic_dictionaries/variants.md +24 -0
- package/docs/es/formatters.md +24 -113
- package/docs/es/how_works_intlayer.md +5 -0
- package/docs/es/intlayer_CMS.md +16 -8
- package/docs/es/intlayer_visual_editor.md +12 -0
- package/docs/es/intlayer_with_adonisjs.md +5 -3
- package/docs/es/intlayer_with_analog.md +1 -1
- package/docs/es/intlayer_with_angular_19.md +1 -1
- package/docs/es/intlayer_with_angular_21.md +1 -1
- package/docs/es/intlayer_with_astro.md +25 -1
- package/docs/es/intlayer_with_astro_lit.md +1 -1
- package/docs/es/intlayer_with_astro_preact.md +7 -1
- package/docs/es/intlayer_with_astro_react.md +1 -1
- package/docs/es/intlayer_with_astro_solid.md +1 -1
- package/docs/es/intlayer_with_astro_svelte.md +1 -1
- package/docs/es/intlayer_with_astro_vanilla.md +1 -1
- package/docs/es/intlayer_with_astro_vue.md +1 -1
- package/docs/es/intlayer_with_create_react_app.md +55 -26
- package/docs/es/intlayer_with_elysia.md +339 -0
- package/docs/es/intlayer_with_express.md +11 -32
- package/docs/es/intlayer_with_fastify.md +5 -3
- package/docs/es/intlayer_with_hono.md +5 -3
- package/docs/es/intlayer_with_lynx+react.md +14 -1
- package/docs/es/intlayer_with_nestjs.md +19 -3
- package/docs/es/intlayer_with_nextjs_14.md +179 -51
- package/docs/es/intlayer_with_nextjs_15.md +198 -1
- package/docs/es/intlayer_with_nextjs_16.md +130 -67
- package/docs/es/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +146 -5
- package/docs/es/intlayer_with_nextjs_page_router.md +16 -29
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_native+expo.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +31 -1
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +30 -30
- package/docs/es/intlayer_with_solid_start.md +13 -1
- package/docs/es/intlayer_with_storybook.md +1 -1
- package/docs/es/intlayer_with_svelte_kit.md +7 -1
- package/docs/es/intlayer_with_tanstack+solid.md +158 -7
- package/docs/es/intlayer_with_tanstack.md +337 -193
- package/docs/es/intlayer_with_vanilla.md +1 -1
- package/docs/es/intlayer_with_vite+lit.md +5 -1
- package/docs/es/intlayer_with_vite+preact.md +37 -5
- package/docs/es/intlayer_with_vite+react.md +3 -1
- package/docs/es/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/es/intlayer_with_vite+solid.md +12 -37
- package/docs/es/intlayer_with_vite+svelte.md +3 -1
- package/docs/es/intlayer_with_vite+vanilla.md +3 -1
- package/docs/es/intlayer_with_vite+vue.md +16 -3
- package/docs/es/live-sync.md +13 -4
- package/docs/es/mcp_server.md +34 -19
- package/docs/es/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/es/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/es/packages/elysia-intlayer/exports.md +134 -0
- package/docs/es/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/es/packages/intlayer/getDictionary.md +155 -0
- package/docs/es/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/es/packages/intlayer/getEnumeration.md +2 -0
- package/docs/es/packages/intlayer/getIntlayer.md +197 -0
- package/docs/es/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/es/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/es/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/es/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/es/packages/intlayer/getTranslation.md +2 -0
- package/docs/es/packages/next-intlayer/t.md +20 -0
- package/docs/es/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/es/packages/next-intlayer/useLocale.md +2 -0
- package/docs/es/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/es/packages/react-intlayer/useI18n.md +31 -0
- package/docs/es/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/es/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/es/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/es/packages/vite-intlayer/intlayerPrune.md +10 -2
- package/docs/es/per_locale_file.md +13 -13
- package/docs/es/readme.md +3 -2
- package/docs/es/releases/v6.md +8 -2
- package/docs/es/releases/v9.md +2 -0
- package/docs/es/self_hosting.md +67 -24
- package/docs/fr/CI_CD.md +2 -0
- package/docs/fr/agent_skills.md +7 -7
- package/docs/fr/analytics.md +79 -13
- package/docs/fr/benchmark/tanstack.md +6 -0
- package/docs/fr/bundle_optimization.md +2 -2
- package/docs/fr/cli/ci.md +2 -0
- package/docs/fr/cli/doc-review.md +7 -1
- package/docs/fr/cli/fill.md +0 -8
- package/docs/fr/cli/index.md +2 -0
- package/docs/fr/cli/list_projects.md +0 -2
- package/docs/fr/cli/login.md +28 -0
- package/docs/fr/compiler.md +14 -0
- package/docs/fr/configuration.md +19 -19
- package/docs/fr/custom_domains.md +34 -0
- package/docs/fr/custom_url_rewrites.md +7 -5
- package/docs/fr/dictionary/condition.md +0 -201
- package/docs/fr/dictionary/html.md +17 -17
- package/docs/fr/dictionary/markdown.md +7 -3
- package/docs/fr/dictionary/plurial.md +79 -110
- package/docs/fr/dynamic_dictionaries/variants.md +24 -0
- package/docs/fr/formatters.md +0 -106
- package/docs/fr/how_works_intlayer.md +5 -2
- package/docs/fr/intlayer_CMS.md +26 -21
- package/docs/fr/intlayer_visual_editor.md +12 -0
- package/docs/fr/intlayer_with_adonisjs.md +5 -3
- package/docs/fr/intlayer_with_astro.md +24 -0
- package/docs/fr/intlayer_with_create_react_app.md +55 -0
- package/docs/fr/intlayer_with_elysia.md +339 -0
- package/docs/fr/intlayer_with_express.md +11 -69
- package/docs/fr/intlayer_with_fastify.md +5 -3
- package/docs/fr/intlayer_with_hono.md +5 -3
- package/docs/fr/intlayer_with_lynx+react.md +13 -0
- package/docs/fr/intlayer_with_nestjs.md +19 -3
- package/docs/fr/intlayer_with_nextjs_14.md +237 -9
- package/docs/fr/intlayer_with_nextjs_15.md +179 -8
- package/docs/fr/intlayer_with_nextjs_16.md +125 -29
- package/docs/fr/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +143 -4
- package/docs/fr/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/fr/intlayer_with_nuxt.md +29 -0
- package/docs/fr/intlayer_with_react_native+expo.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7.md +31 -0
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +29 -1
- package/docs/fr/intlayer_with_solid_start.md +13 -1
- package/docs/fr/intlayer_with_svelte_kit.md +6 -0
- package/docs/fr/intlayer_with_tanstack+solid.md +157 -8
- package/docs/fr/intlayer_with_tanstack.md +302 -156
- package/docs/fr/intlayer_with_vite+lit.md +4 -0
- package/docs/fr/intlayer_with_vite+preact.md +36 -4
- package/docs/fr/intlayer_with_vite+react.md +2 -0
- package/docs/fr/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/fr/intlayer_with_vite+solid.md +11 -36
- package/docs/fr/intlayer_with_vite+svelte.md +2 -0
- package/docs/fr/intlayer_with_vite+vanilla.md +2 -0
- package/docs/fr/intlayer_with_vite+vue.md +15 -2
- package/docs/fr/live-sync.md +13 -2
- package/docs/fr/mcp_server.md +34 -19
- package/docs/fr/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/fr/packages/elysia-intlayer/exports.md +134 -0
- package/docs/fr/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/fr/packages/intlayer/getDictionary.md +154 -0
- package/docs/fr/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/fr/packages/intlayer/getEnumeration.md +2 -0
- package/docs/fr/packages/intlayer/getIntlayer.md +196 -0
- package/docs/fr/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/fr/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/fr/packages/intlayer/getTranslation.md +2 -0
- package/docs/fr/packages/next-intlayer/t.md +20 -0
- package/docs/fr/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/fr/packages/next-intlayer/useLocale.md +2 -0
- package/docs/fr/packages/react-intlayer/useI18n.md +31 -0
- package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/fr/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/fr/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/fr/per_locale_file.md +13 -13
- package/docs/fr/readme.md +3 -2
- package/docs/fr/releases/v6.md +8 -2
- package/docs/fr/releases/v9.md +2 -0
- package/docs/fr/self_hosting.md +67 -24
- package/docs/hi/agent_skills.md +7 -7
- package/docs/hi/analytics.md +28 -5
- package/docs/hi/benchmark/tanstack.md +6 -0
- package/docs/hi/bundle_optimization.md +2 -2
- package/docs/hi/cli/ci.md +2 -0
- package/docs/hi/cli/doc-review.md +10 -2
- package/docs/hi/cli/fill.md +0 -8
- package/docs/hi/cli/index.md +2 -0
- package/docs/hi/cli/list_projects.md +0 -2
- package/docs/hi/cli/login.md +28 -0
- package/docs/hi/compiler.md +14 -0
- package/docs/hi/configuration.md +19 -17
- package/docs/hi/custom_domains.md +33 -0
- package/docs/hi/custom_url_rewrites.md +7 -5
- package/docs/hi/dictionary/content_file.md +0 -2
- package/docs/hi/dictionary/html.md +36 -15
- package/docs/hi/dictionary/insertion.md +0 -14
- package/docs/hi/dictionary/markdown.md +31 -14
- package/docs/hi/dictionary/plurial.md +81 -113
- package/docs/hi/dynamic_dictionaries/variants.md +24 -0
- package/docs/hi/formatters.md +12 -37
- package/docs/hi/how_works_intlayer.md +8 -1
- package/docs/hi/interest_of_intlayer.md +17 -1
- package/docs/hi/intlayer_visual_editor.md +12 -0
- package/docs/hi/intlayer_with_adonisjs.md +5 -3
- package/docs/hi/intlayer_with_analog.md +18 -1
- package/docs/hi/intlayer_with_angular_19.md +21 -1
- package/docs/hi/intlayer_with_angular_21.md +18 -1
- package/docs/hi/intlayer_with_astro.md +44 -1
- package/docs/hi/intlayer_with_astro_lit.md +47 -4
- package/docs/hi/intlayer_with_astro_preact.md +50 -1
- package/docs/hi/intlayer_with_astro_react.md +44 -1
- package/docs/hi/intlayer_with_astro_solid.md +44 -1
- package/docs/hi/intlayer_with_astro_svelte.md +44 -1
- package/docs/hi/intlayer_with_astro_vanilla.md +44 -1
- package/docs/hi/intlayer_with_astro_vue.md +20 -1
- package/docs/hi/intlayer_with_create_react_app.md +53 -418
- package/docs/hi/intlayer_with_elysia.md +343 -0
- package/docs/hi/intlayer_with_express.md +9 -17
- package/docs/hi/intlayer_with_fastify.md +5 -3
- package/docs/hi/intlayer_with_hono.md +44 -3
- package/docs/hi/intlayer_with_lynx+react.md +26 -11
- package/docs/hi/intlayer_with_next-i18next.md +21 -0
- package/docs/hi/intlayer_with_nextjs_14.md +234 -35
- package/docs/hi/intlayer_with_nextjs_15.md +224 -9
- package/docs/hi/intlayer_with_nextjs_16.md +135 -11
- package/docs/hi/intlayer_with_nextjs_compiler.md +49 -5
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +163 -5
- package/docs/hi/intlayer_with_nextjs_page_router.md +29 -36
- package/docs/hi/intlayer_with_nuxt.md +47 -1
- package/docs/hi/intlayer_with_react_native+expo.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7.md +50 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +162 -46
- package/docs/hi/intlayer_with_solid_start.md +13 -1
- package/docs/hi/intlayer_with_storybook.md +18 -1
- package/docs/hi/intlayer_with_svelte_kit.md +26 -1
- package/docs/hi/intlayer_with_tanstack+solid.md +253 -7
- package/docs/hi/intlayer_with_tanstack.md +388 -158
- package/docs/hi/intlayer_with_vanilla.md +18 -1
- package/docs/hi/intlayer_with_vite+lit.md +22 -1
- package/docs/hi/intlayer_with_vite+preact.md +33 -100
- package/docs/hi/intlayer_with_vite+react.md +24 -8
- package/docs/hi/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/hi/intlayer_with_vite+solid.md +31 -26
- package/docs/hi/intlayer_with_vite+svelte.md +80 -1
- package/docs/hi/intlayer_with_vite+vanilla.md +20 -69
- package/docs/hi/intlayer_with_vite+vue.md +30 -10
- package/docs/hi/live-sync.md +39 -0
- package/docs/hi/mcp_server.md +34 -21
- package/docs/hi/packages/elysia-intlayer/exports.md +136 -0
- package/docs/hi/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/hi/packages/intlayer/getDictionary.md +156 -0
- package/docs/hi/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/hi/packages/intlayer/getEnumeration.md +2 -0
- package/docs/hi/packages/intlayer/getIntlayer.md +197 -0
- package/docs/hi/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/hi/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +6 -15
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/hi/packages/intlayer/getTranslation.md +2 -0
- package/docs/hi/packages/next-intlayer/t.md +20 -31
- package/docs/hi/packages/next-intlayer/useIntlayer.md +33 -0
- package/docs/hi/packages/next-intlayer/useLocale.md +2 -0
- package/docs/hi/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/hi/packages/react-intlayer/useI18n.md +31 -0
- package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/hi/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/hi/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/hi/per_locale_file.md +13 -13
- package/docs/hi/readme.md +3 -2
- package/docs/hi/releases/v6.md +16 -2
- package/docs/hi/releases/v9.md +2 -0
- package/docs/hi/self_hosting.md +80 -26
- package/docs/id/agent_skills.md +6 -6
- package/docs/id/analytics.md +28 -5
- package/docs/id/benchmark/tanstack.md +6 -0
- package/docs/id/bundle_optimization.md +2 -2
- package/docs/id/cli/ci.md +2 -0
- package/docs/id/cli/doc-review.md +9 -1
- package/docs/id/cli/fill.md +0 -8
- package/docs/id/cli/index.md +2 -0
- package/docs/id/cli/login.md +28 -0
- package/docs/id/compiler.md +14 -0
- package/docs/id/configuration.md +19 -17
- package/docs/id/custom_domains.md +34 -0
- package/docs/id/custom_url_rewrites.md +7 -5
- package/docs/id/dictionary/content_file.md +0 -29
- package/docs/id/dictionary/file.md +0 -166
- package/docs/id/dictionary/gender.md +0 -212
- package/docs/id/dictionary/html.md +134 -16
- package/docs/id/dictionary/insertion.md +0 -14
- package/docs/id/dictionary/markdown.md +31 -14
- package/docs/id/dictionary/plurial.md +79 -110
- package/docs/id/dynamic_dictionaries/variants.md +24 -0
- package/docs/id/formatters.md +12 -39
- package/docs/id/interest_of_intlayer.md +1 -3
- package/docs/id/intlayer_with_adonisjs.md +5 -3
- package/docs/id/intlayer_with_analog.md +1 -1
- package/docs/id/intlayer_with_angular_19.md +1 -1
- package/docs/id/intlayer_with_angular_21.md +1 -1
- package/docs/id/intlayer_with_astro.md +25 -1
- package/docs/id/intlayer_with_astro_lit.md +1 -1
- package/docs/id/intlayer_with_astro_preact.md +7 -1
- package/docs/id/intlayer_with_astro_react.md +1 -1
- package/docs/id/intlayer_with_astro_solid.md +1 -1
- package/docs/id/intlayer_with_astro_svelte.md +1 -1
- package/docs/id/intlayer_with_astro_vanilla.md +1 -1
- package/docs/id/intlayer_with_astro_vue.md +1 -1
- package/docs/id/intlayer_with_create_react_app.md +43 -0
- package/docs/id/intlayer_with_elysia.md +343 -0
- package/docs/id/intlayer_with_express.md +5 -3
- package/docs/id/intlayer_with_fastify.md +5 -3
- package/docs/id/intlayer_with_hono.md +44 -3
- package/docs/id/intlayer_with_lynx+react.md +1 -1
- package/docs/id/intlayer_with_nestjs.md +5 -3
- package/docs/id/intlayer_with_nextjs_14.md +127 -8
- package/docs/id/intlayer_with_nextjs_15.md +104 -1
- package/docs/id/intlayer_with_nextjs_16.md +122 -3
- package/docs/id/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +142 -5
- package/docs/id/intlayer_with_nextjs_page_router.md +32 -25
- package/docs/id/intlayer_with_nuxt.md +1 -1
- package/docs/id/intlayer_with_react_native+expo.md +1 -1
- package/docs/id/intlayer_with_react_router_v7.md +31 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +146 -51
- package/docs/id/intlayer_with_solid_start.md +13 -1
- package/docs/id/intlayer_with_storybook.md +1 -1
- package/docs/id/intlayer_with_svelte_kit.md +7 -1
- package/docs/id/intlayer_with_tanstack+solid.md +233 -7
- package/docs/id/intlayer_with_tanstack.md +371 -146
- package/docs/id/intlayer_with_vanilla.md +1 -1
- package/docs/id/intlayer_with_vite+lit.md +5 -1
- package/docs/id/intlayer_with_vite+preact.md +35 -5
- package/docs/id/intlayer_with_vite+react.md +5 -1
- package/docs/id/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/id/intlayer_with_vite+solid.md +12 -28
- package/docs/id/intlayer_with_vite+svelte.md +28 -1
- package/docs/id/intlayer_with_vite+vanilla.md +3 -1
- package/docs/id/intlayer_with_vite+vue.md +14 -3
- package/docs/id/introduction.md +1 -1
- package/docs/id/mcp_server.md +34 -21
- package/docs/id/packages/elysia-intlayer/exports.md +136 -0
- package/docs/id/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/id/packages/intlayer/getDictionary.md +155 -0
- package/docs/id/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/id/packages/intlayer/getEnumeration.md +2 -0
- package/docs/id/packages/intlayer/getIntlayer.md +197 -0
- package/docs/id/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/id/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/id/packages/intlayer/getLocalizedUrl.md +11 -32
- package/docs/id/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/id/packages/intlayer/getTranslation.md +2 -0
- package/docs/id/packages/next-intlayer/t.md +20 -0
- package/docs/id/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/id/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/id/packages/react-intlayer/useI18n.md +31 -0
- package/docs/id/packages/react-intlayer/useIntlayer.md +0 -44
- package/docs/id/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/id/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/id/per_locale_file.md +13 -13
- package/docs/id/readme.md +3 -2
- package/docs/id/self_hosting.md +62 -31
- package/docs/it/agent_skills.md +6 -6
- package/docs/it/analytics.md +28 -5
- package/docs/it/benchmark/tanstack.md +6 -0
- package/docs/it/bundle_optimization.md +2 -2
- package/docs/it/cli/ci.md +2 -0
- package/docs/it/cli/doc-review.md +9 -1
- package/docs/it/cli/fill.md +0 -8
- package/docs/it/cli/index.md +2 -0
- package/docs/it/cli/list_projects.md +0 -2
- package/docs/it/cli/login.md +28 -0
- package/docs/it/cli/watch.md +0 -2
- package/docs/it/compiler.md +14 -0
- package/docs/it/configuration.md +19 -17
- package/docs/it/custom_domains.md +34 -0
- package/docs/it/custom_url_rewrites.md +7 -5
- package/docs/it/dictionary/enumeration.md +30 -0
- package/docs/it/dictionary/file.md +0 -166
- package/docs/it/dictionary/html.md +18 -18
- package/docs/it/dictionary/markdown.md +7 -3
- package/docs/it/dictionary/plurial.md +70 -273
- package/docs/it/dynamic_dictionaries/variants.md +24 -0
- package/docs/it/formatters.md +24 -113
- package/docs/it/how_works_intlayer.md +8 -1
- package/docs/it/intlayer_CMS.md +26 -21
- package/docs/it/intlayer_visual_editor.md +12 -0
- package/docs/it/intlayer_with_adonisjs.md +5 -3
- package/docs/it/intlayer_with_analog.md +1 -1
- package/docs/it/intlayer_with_angular_19.md +1 -1
- package/docs/it/intlayer_with_angular_21.md +1 -1
- package/docs/it/intlayer_with_astro.md +25 -1
- package/docs/it/intlayer_with_astro_lit.md +1 -1
- package/docs/it/intlayer_with_astro_preact.md +7 -1
- package/docs/it/intlayer_with_astro_react.md +1 -1
- package/docs/it/intlayer_with_astro_solid.md +1 -1
- package/docs/it/intlayer_with_astro_svelte.md +1 -1
- package/docs/it/intlayer_with_astro_vanilla.md +1 -1
- package/docs/it/intlayer_with_astro_vue.md +1 -1
- package/docs/it/intlayer_with_create_react_app.md +57 -38
- package/docs/it/intlayer_with_elysia.md +343 -0
- package/docs/it/intlayer_with_express.md +9 -3
- package/docs/it/intlayer_with_fastify.md +5 -3
- package/docs/it/intlayer_with_hono.md +44 -3
- package/docs/it/intlayer_with_lynx+react.md +14 -10
- package/docs/it/intlayer_with_nestjs.md +5 -3
- package/docs/it/intlayer_with_nextjs_14.md +240 -10
- package/docs/it/intlayer_with_nextjs_15.md +197 -21
- package/docs/it/intlayer_with_nextjs_16.md +107 -3
- package/docs/it/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +141 -5
- package/docs/it/intlayer_with_nextjs_page_router.md +7 -29
- package/docs/it/intlayer_with_nuxt.md +1 -1
- package/docs/it/intlayer_with_react_native+expo.md +1 -1
- package/docs/it/intlayer_with_react_router_v7.md +31 -1
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +32 -2
- package/docs/it/intlayer_with_solid_start.md +13 -1
- package/docs/it/intlayer_with_storybook.md +1 -1
- package/docs/it/intlayer_with_svelte_kit.md +7 -1
- package/docs/it/intlayer_with_tanstack+solid.md +158 -7
- package/docs/it/intlayer_with_tanstack.md +322 -172
- package/docs/it/intlayer_with_vanilla.md +1 -1
- package/docs/it/intlayer_with_vite+lit.md +5 -1
- package/docs/it/intlayer_with_vite+preact.md +37 -5
- package/docs/it/intlayer_with_vite+react.md +5 -6
- package/docs/it/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/it/intlayer_with_vite+solid.md +12 -32
- package/docs/it/intlayer_with_vite+svelte.md +28 -1
- package/docs/it/intlayer_with_vite+vanilla.md +3 -1
- package/docs/it/intlayer_with_vite+vue.md +22 -3
- package/docs/it/introduction.md +1 -1
- package/docs/it/live-sync.md +13 -2
- package/docs/it/mcp_server.md +34 -21
- package/docs/it/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/it/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/it/packages/elysia-intlayer/exports.md +136 -0
- package/docs/it/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/it/packages/intlayer/getDictionary.md +154 -0
- package/docs/it/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/it/packages/intlayer/getEnumeration.md +2 -0
- package/docs/it/packages/intlayer/getIntlayer.md +197 -0
- package/docs/it/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/it/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/it/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/it/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/it/packages/intlayer/getTranslation.md +2 -0
- package/docs/it/packages/next-intlayer/t.md +20 -31
- package/docs/it/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/it/packages/next-intlayer/useLocale.md +2 -0
- package/docs/it/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/it/packages/react-intlayer/useI18n.md +31 -0
- package/docs/it/packages/react-intlayer/useIntlayer.md +0 -44
- package/docs/it/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/it/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/it/per_locale_file.md +13 -13
- package/docs/it/readme.md +3 -2
- package/docs/it/releases/v6.md +16 -2
- package/docs/it/releases/v8.md +2 -4
- package/docs/it/releases/v9.md +2 -0
- package/docs/it/self_hosting.md +61 -30
- package/docs/ja/agent_skills.md +6 -6
- package/docs/ja/analytics.md +57 -13
- package/docs/ja/benchmark/tanstack.md +6 -0
- package/docs/ja/bundle_optimization.md +2 -2
- package/docs/ja/cli/build.md +0 -14
- package/docs/ja/cli/ci.md +2 -0
- package/docs/ja/cli/doc-review.md +8 -0
- package/docs/ja/cli/fill.md +0 -8
- package/docs/ja/cli/index.md +2 -0
- package/docs/ja/cli/list_projects.md +0 -2
- package/docs/ja/cli/login.md +28 -0
- package/docs/ja/cli/push.md +0 -15
- package/docs/ja/compiler.md +14 -0
- package/docs/ja/configuration.md +19 -17
- package/docs/ja/custom_domains.md +32 -0
- package/docs/ja/custom_url_rewrites.md +7 -5
- package/docs/ja/dictionary/content_file.md +0 -13
- package/docs/ja/dictionary/html.md +19 -17
- package/docs/ja/dictionary/plurial.md +81 -115
- package/docs/ja/dynamic_dictionaries/variants.md +24 -0
- package/docs/ja/formatters.md +0 -164
- package/docs/ja/how_works_intlayer.md +7 -0
- package/docs/ja/interest_of_intlayer.md +19 -1
- package/docs/ja/intlayer_visual_editor.md +13 -1
- package/docs/ja/intlayer_with_adonisjs.md +5 -3
- package/docs/ja/intlayer_with_analog.md +20 -1
- package/docs/ja/intlayer_with_angular_19.md +18 -1
- package/docs/ja/intlayer_with_angular_21.md +18 -1
- package/docs/ja/intlayer_with_astro.md +42 -1
- package/docs/ja/intlayer_with_astro_lit.md +18 -1
- package/docs/ja/intlayer_with_astro_preact.md +18 -1
- package/docs/ja/intlayer_with_astro_react.md +18 -1
- package/docs/ja/intlayer_with_astro_solid.md +18 -1
- package/docs/ja/intlayer_with_astro_svelte.md +18 -1
- package/docs/ja/intlayer_with_astro_vanilla.md +18 -1
- package/docs/ja/intlayer_with_astro_vue.md +18 -1
- package/docs/ja/intlayer_with_create_react_app.md +55 -272
- package/docs/ja/intlayer_with_elysia.md +343 -0
- package/docs/ja/intlayer_with_express.md +11 -3
- package/docs/ja/intlayer_with_fastify.md +5 -3
- package/docs/ja/intlayer_with_hono.md +44 -3
- package/docs/ja/intlayer_with_lynx+react.md +28 -1
- package/docs/ja/intlayer_with_nestjs.md +19 -3
- package/docs/ja/intlayer_with_nextjs_14.md +199 -91
- package/docs/ja/intlayer_with_nextjs_15.md +218 -1
- package/docs/ja/intlayer_with_nextjs_16.md +124 -3
- package/docs/ja/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +170 -7
- package/docs/ja/intlayer_with_nextjs_page_router.md +3 -25
- package/docs/ja/intlayer_with_nuxt.md +18 -1
- package/docs/ja/intlayer_with_react_native+expo.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7.md +148 -28
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +47 -2
- package/docs/ja/intlayer_with_solid_start.md +13 -1
- package/docs/ja/intlayer_with_storybook.md +18 -1
- package/docs/ja/intlayer_with_svelte_kit.md +528 -13
- package/docs/ja/intlayer_with_tanstack+solid.md +175 -9
- package/docs/ja/intlayer_with_tanstack.md +402 -216
- package/docs/ja/intlayer_with_vanilla.md +18 -1
- package/docs/ja/intlayer_with_vite+lit.md +22 -1
- package/docs/ja/intlayer_with_vite+preact.md +18 -5
- package/docs/ja/intlayer_with_vite+react.md +523 -1
- package/docs/ja/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ja/intlayer_with_vite+solid.md +29 -43
- package/docs/ja/intlayer_with_vite+svelte.md +55 -13
- package/docs/ja/intlayer_with_vite+vanilla.md +20 -1
- package/docs/ja/intlayer_with_vite+vue.md +33 -6
- package/docs/ja/introduction.md +1 -1
- package/docs/ja/mcp_server.md +34 -19
- package/docs/ja/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ja/packages/astro-intlayer/exports.md +0 -4
- package/docs/ja/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ja/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ja/packages/intlayer/getDictionary.md +155 -0
- package/docs/ja/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ja/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ja/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ja/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ja/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +14 -50
- package/docs/ja/packages/intlayer/getPrefix.md +0 -2
- package/docs/ja/packages/intlayer/getTranslation.md +2 -0
- package/docs/ja/packages/next-intlayer/t.md +20 -0
- package/docs/ja/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ja/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ja/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ja/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ja/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ja/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/ja/per_locale_file.md +13 -13
- package/docs/ja/readme.md +3 -2
- package/docs/ja/releases/v6.md +16 -2
- package/docs/ja/self_hosting.md +67 -23
- package/docs/ko/agent_skills.md +7 -7
- package/docs/ko/analytics.md +57 -13
- package/docs/ko/benchmark/tanstack.md +6 -0
- package/docs/ko/bundle_optimization.md +2 -2
- package/docs/ko/cli/ci.md +2 -0
- package/docs/ko/cli/doc-review.md +8 -0
- package/docs/ko/cli/fill.md +0 -8
- package/docs/ko/cli/index.md +2 -0
- package/docs/ko/cli/login.md +28 -0
- package/docs/ko/cli/push.md +0 -15
- package/docs/ko/compat/next-i18next.md +2 -0
- package/docs/ko/compiler.md +14 -0
- package/docs/ko/configuration.md +19 -17
- package/docs/ko/custom_domains.md +34 -0
- package/docs/ko/custom_url_rewrites.md +7 -5
- package/docs/ko/dictionary/html.md +3 -1
- package/docs/ko/dictionary/markdown.md +7 -3
- package/docs/ko/dictionary/plurial.md +79 -111
- package/docs/ko/dynamic_dictionaries/variants.md +24 -0
- package/docs/ko/formatters.md +0 -184
- package/docs/ko/how_works_intlayer.md +7 -0
- package/docs/ko/intlayer_visual_editor.md +12 -0
- package/docs/ko/intlayer_with_adonisjs.md +5 -3
- package/docs/ko/intlayer_with_analog.md +3 -1
- package/docs/ko/intlayer_with_angular_19.md +1 -1
- package/docs/ko/intlayer_with_angular_21.md +1 -1
- package/docs/ko/intlayer_with_astro.md +109 -67
- package/docs/ko/intlayer_with_astro_lit.md +114 -70
- package/docs/ko/intlayer_with_astro_preact.md +111 -67
- package/docs/ko/intlayer_with_astro_react.md +107 -63
- package/docs/ko/intlayer_with_astro_solid.md +107 -63
- package/docs/ko/intlayer_with_astro_svelte.md +109 -65
- package/docs/ko/intlayer_with_astro_vanilla.md +108 -64
- package/docs/ko/intlayer_with_astro_vue.md +84 -64
- package/docs/ko/intlayer_with_create_react_app.md +53 -2
- package/docs/ko/intlayer_with_elysia.md +343 -0
- package/docs/ko/intlayer_with_express.md +11 -3
- package/docs/ko/intlayer_with_fastify.md +5 -3
- package/docs/ko/intlayer_with_hono.md +44 -3
- package/docs/ko/intlayer_with_lynx+react.md +52 -1
- package/docs/ko/intlayer_with_nestjs.md +19 -3
- package/docs/ko/intlayer_with_nextjs_14.md +200 -51
- package/docs/ko/intlayer_with_nextjs_15.md +157 -3
- package/docs/ko/intlayer_with_nextjs_16.md +108 -1
- package/docs/ko/intlayer_with_nextjs_compiler.md +374 -40
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +153 -11
- package/docs/ko/intlayer_with_nextjs_page_router.md +14 -80
- package/docs/ko/intlayer_with_nuxt.md +30 -30
- package/docs/ko/intlayer_with_react_native+expo.md +3 -3
- package/docs/ko/intlayer_with_react_router_v7.md +139 -107
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +276 -52
- package/docs/ko/intlayer_with_solid_start.md +13 -1
- package/docs/ko/intlayer_with_storybook.md +1 -5
- package/docs/ko/intlayer_with_svelte_kit.md +39 -33
- package/docs/ko/intlayer_with_tanstack+solid.md +160 -9
- package/docs/ko/intlayer_with_tanstack.md +380 -183
- package/docs/ko/intlayer_with_vanilla.md +1 -3
- package/docs/ko/intlayer_with_vite+lit.md +5 -1
- package/docs/ko/intlayer_with_vite+preact.md +37 -5
- package/docs/ko/intlayer_with_vite+react.md +417 -2
- package/docs/ko/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/ko/intlayer_with_vite+solid.md +82 -9
- package/docs/ko/intlayer_with_vite+svelte.md +133 -100
- package/docs/ko/intlayer_with_vite+vanilla.md +3 -3
- package/docs/ko/intlayer_with_vite+vue.md +16 -1
- package/docs/ko/introduction.md +1 -1
- package/docs/ko/live-sync.md +0 -2
- package/docs/ko/mcp_server.md +34 -21
- package/docs/ko/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ko/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ko/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ko/packages/express-intlayer/t.md +1 -69
- package/docs/ko/packages/intlayer/getDictionary.md +155 -0
- package/docs/ko/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ko/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ko/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ko/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ko/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/ko/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +14 -35
- package/docs/ko/packages/intlayer/getPrefix.md +0 -2
- package/docs/ko/packages/intlayer/getTranslation.md +2 -0
- package/docs/ko/packages/next-intlayer/t.md +20 -31
- package/docs/ko/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ko/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ko/packages/next-intlayer/usePathname.md +0 -4
- package/docs/ko/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ko/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ko/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ko/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/ko/per_locale_file.md +13 -13
- package/docs/ko/readme.md +3 -2
- package/docs/ko/releases/v6.md +16 -2
- package/docs/ko/releases/v8.md +2 -4
- package/docs/ko/self_hosting.md +61 -30
- package/docs/nl/bundle_optimization.md +2 -2
- package/docs/nl/configuration.md +12 -9
- package/docs/nl/intlayer_with_fastify.md +5 -3
- package/docs/nl/intlayer_with_hono.md +5 -3
- package/docs/pl/agent_skills.md +5 -5
- package/docs/pl/analytics.md +28 -5
- package/docs/pl/benchmark/tanstack.md +6 -0
- package/docs/pl/bundle_optimization.md +2 -2
- package/docs/pl/cli/ci.md +2 -0
- package/docs/pl/cli/doc-review.md +9 -1
- package/docs/pl/cli/fill.md +0 -8
- package/docs/pl/cli/index.md +2 -0
- package/docs/pl/cli/list_projects.md +0 -2
- package/docs/pl/cli/login.md +28 -0
- package/docs/pl/cli/watch.md +0 -2
- package/docs/pl/compiler.md +16 -0
- package/docs/pl/configuration.md +19 -17
- package/docs/pl/custom_domains.md +31 -0
- package/docs/pl/custom_url_rewrites.md +7 -5
- package/docs/pl/dictionary/file.md +0 -166
- package/docs/pl/dictionary/gender.md +0 -2
- package/docs/pl/dictionary/html.md +18 -18
- package/docs/pl/dictionary/insertion.md +0 -14
- package/docs/pl/dictionary/markdown.md +31 -14
- package/docs/pl/dictionary/plurial.md +87 -119
- package/docs/pl/dynamic_dictionaries/variants.md +24 -0
- package/docs/pl/formatters.md +12 -39
- package/docs/pl/intlayer_with_adonisjs.md +5 -3
- package/docs/pl/intlayer_with_analog.md +18 -1
- package/docs/pl/intlayer_with_angular_19.md +18 -1
- package/docs/pl/intlayer_with_angular_21.md +18 -1
- package/docs/pl/intlayer_with_astro.md +114 -1
- package/docs/pl/intlayer_with_astro_lit.md +18 -1
- package/docs/pl/intlayer_with_astro_preact.md +24 -1
- package/docs/pl/intlayer_with_astro_react.md +18 -1
- package/docs/pl/intlayer_with_astro_solid.md +18 -1
- package/docs/pl/intlayer_with_astro_svelte.md +18 -1
- package/docs/pl/intlayer_with_astro_vanilla.md +18 -1
- package/docs/pl/intlayer_with_astro_vue.md +18 -1
- package/docs/pl/intlayer_with_create_react_app.md +43 -0
- package/docs/pl/intlayer_with_elysia.md +343 -0
- package/docs/pl/intlayer_with_express.md +5 -3
- package/docs/pl/intlayer_with_fastify.md +5 -3
- package/docs/pl/intlayer_with_hono.md +44 -3
- package/docs/pl/intlayer_with_lynx+react.md +18 -1
- package/docs/pl/intlayer_with_nextjs_14.md +144 -12
- package/docs/pl/intlayer_with_nextjs_15.md +118 -5
- package/docs/pl/intlayer_with_nextjs_16.md +123 -1
- package/docs/pl/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +159 -5
- package/docs/pl/intlayer_with_nextjs_page_router.md +92 -37
- package/docs/pl/intlayer_with_nuxt.md +18 -1
- package/docs/pl/intlayer_with_react_native+expo.md +1 -1
- package/docs/pl/intlayer_with_react_router_v7.md +48 -3
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +31 -27
- package/docs/pl/intlayer_with_solid_start.md +13 -1
- package/docs/pl/intlayer_with_storybook.md +18 -1
- package/docs/pl/intlayer_with_svelte_kit.md +24 -1
- package/docs/pl/intlayer_with_tanstack+solid.md +250 -7
- package/docs/pl/intlayer_with_tanstack.md +416 -152
- package/docs/pl/intlayer_with_vanilla.md +18 -1
- package/docs/pl/intlayer_with_vite+lit.md +22 -1
- package/docs/pl/intlayer_with_vite+preact.md +52 -1
- package/docs/pl/intlayer_with_vite+react.md +22 -1
- package/docs/pl/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/pl/intlayer_with_vite+solid.md +29 -28
- package/docs/pl/intlayer_with_vite+svelte.md +43 -1
- package/docs/pl/intlayer_with_vite+vanilla.md +20 -1
- package/docs/pl/intlayer_with_vite+vue.md +24 -53
- package/docs/pl/introduction.md +1 -1
- package/docs/pl/mcp_server.md +34 -21
- package/docs/pl/migration_from_i18next_to_intlayer.md +100 -1
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/pl/migration_from_next-intl_to_intlayer.md +1 -3
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +124 -1
- package/docs/pl/packages/elysia-intlayer/exports.md +136 -0
- package/docs/pl/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/pl/packages/intlayer/getDictionary.md +154 -0
- package/docs/pl/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/pl/packages/intlayer/getEnumeration.md +2 -0
- package/docs/pl/packages/intlayer/getIntlayer.md +197 -0
- package/docs/pl/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/pl/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +11 -25
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/pl/packages/intlayer/getTranslation.md +2 -0
- package/docs/pl/packages/next-intlayer/t.md +20 -0
- package/docs/pl/packages/next-intlayer/useIntlayer.md +6 -0
- package/docs/pl/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/pl/packages/react-intlayer/useI18n.md +9 -0
- package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -41
- package/docs/pl/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/pl/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/pl/per_locale_file.md +13 -13
- package/docs/pl/readme.md +3 -2
- package/docs/pl/releases/v9.md +2 -0
- package/docs/pl/self_hosting.md +61 -30
- package/docs/pt/agent_skills.md +6 -6
- package/docs/pt/analytics.md +28 -5
- package/docs/pt/benchmark/tanstack.md +6 -0
- package/docs/pt/bundle_optimization.md +2 -2
- package/docs/pt/cli/ci.md +2 -0
- package/docs/pt/cli/doc-review.md +9 -1
- package/docs/pt/cli/fill.md +0 -8
- package/docs/pt/cli/index.md +2 -0
- package/docs/pt/cli/list_projects.md +0 -6
- package/docs/pt/cli/login.md +28 -2
- package/docs/pt/cli/watch.md +0 -2
- package/docs/pt/compiler.md +16 -0
- package/docs/pt/configuration.md +19 -17
- package/docs/pt/custom_domains.md +34 -0
- package/docs/pt/custom_url_rewrites.md +7 -5
- package/docs/pt/dictionary/html.md +20 -18
- package/docs/pt/dictionary/insertion.md +0 -14
- package/docs/pt/dictionary/markdown.md +31 -14
- package/docs/pt/dictionary/plurial.md +70 -273
- package/docs/pt/dynamic_dictionaries/variants.md +24 -0
- package/docs/pt/formatters.md +24 -137
- package/docs/pt/how_works_intlayer.md +5 -0
- package/docs/pt/intlayer_CMS.md +26 -21
- package/docs/pt/intlayer_visual_editor.md +12 -2
- package/docs/pt/intlayer_with_adonisjs.md +5 -3
- package/docs/pt/intlayer_with_analog.md +1 -1
- package/docs/pt/intlayer_with_angular_19.md +1 -1
- package/docs/pt/intlayer_with_angular_21.md +1 -1
- package/docs/pt/intlayer_with_astro.md +97 -1
- package/docs/pt/intlayer_with_astro_lit.md +1 -9
- package/docs/pt/intlayer_with_astro_preact.md +7 -1
- package/docs/pt/intlayer_with_astro_react.md +1 -1
- package/docs/pt/intlayer_with_astro_solid.md +1 -1
- package/docs/pt/intlayer_with_astro_svelte.md +1 -1
- package/docs/pt/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pt/intlayer_with_astro_vue.md +1 -1
- package/docs/pt/intlayer_with_create_react_app.md +55 -35
- package/docs/pt/intlayer_with_elysia.md +344 -0
- package/docs/pt/intlayer_with_express.md +11 -3
- package/docs/pt/intlayer_with_fastify.md +5 -3
- package/docs/pt/intlayer_with_hono.md +44 -3
- package/docs/pt/intlayer_with_lynx+react.md +14 -10
- package/docs/pt/intlayer_with_nestjs.md +19 -3
- package/docs/pt/intlayer_with_nextjs_14.md +238 -8
- package/docs/pt/intlayer_with_nextjs_15.md +201 -1
- package/docs/pt/intlayer_with_nextjs_16.md +106 -1
- package/docs/pt/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +142 -5
- package/docs/pt/intlayer_with_nextjs_page_router.md +5 -29
- package/docs/pt/intlayer_with_nuxt.md +1 -1
- package/docs/pt/intlayer_with_react_native+expo.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +38 -31
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/pt/intlayer_with_solid_start.md +13 -1
- package/docs/pt/intlayer_with_storybook.md +1 -1
- package/docs/pt/intlayer_with_svelte_kit.md +7 -1
- package/docs/pt/intlayer_with_tanstack+solid.md +158 -7
- package/docs/pt/intlayer_with_tanstack.md +333 -189
- package/docs/pt/intlayer_with_vanilla.md +1 -1
- package/docs/pt/intlayer_with_vite+lit.md +5 -1
- package/docs/pt/intlayer_with_vite+preact.md +35 -1
- package/docs/pt/intlayer_with_vite+react.md +3 -1
- package/docs/pt/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/pt/intlayer_with_vite+solid.md +12 -37
- package/docs/pt/intlayer_with_vite+svelte.md +5 -1
- package/docs/pt/intlayer_with_vite+vanilla.md +3 -1
- package/docs/pt/intlayer_with_vite+vue.md +25 -53
- package/docs/pt/live-sync.md +13 -2
- package/docs/pt/mcp_server.md +34 -21
- package/docs/pt/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/pt/packages/elysia-intlayer/exports.md +136 -0
- package/docs/pt/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/pt/packages/intlayer/getDictionary.md +155 -0
- package/docs/pt/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/pt/packages/intlayer/getEnumeration.md +2 -0
- package/docs/pt/packages/intlayer/getIntlayer.md +197 -0
- package/docs/pt/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/pt/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/pt/packages/intlayer/getTranslation.md +2 -0
- package/docs/pt/packages/next-intlayer/t.md +20 -31
- package/docs/pt/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/pt/packages/next-intlayer/useLocale.md +2 -0
- package/docs/pt/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/pt/packages/react-intlayer/useI18n.md +31 -0
- package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/pt/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/pt/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/pt/per_locale_file.md +13 -13
- package/docs/pt/readme.md +3 -2
- package/docs/pt/releases/v6.md +16 -2
- package/docs/pt/releases/v9.md +2 -0
- package/docs/pt/self_hosting.md +62 -31
- package/docs/ru/agent_skills.md +7 -7
- package/docs/ru/analytics.md +57 -13
- package/docs/ru/benchmark/tanstack.md +6 -0
- package/docs/ru/bundle_optimization.md +2 -2
- package/docs/ru/cli/ci.md +2 -0
- package/docs/ru/cli/doc-review.md +7 -1
- package/docs/ru/cli/fill.md +0 -8
- package/docs/ru/cli/index.md +2 -0
- package/docs/ru/cli/list_projects.md +0 -2
- package/docs/ru/cli/login.md +28 -0
- package/docs/ru/cli/watch.md +0 -2
- package/docs/ru/compiler.md +14 -0
- package/docs/ru/configuration.md +19 -17
- package/docs/ru/custom_domains.md +34 -0
- package/docs/ru/custom_url_rewrites.md +7 -5
- package/docs/ru/dictionary/condition.md +0 -163
- package/docs/ru/dictionary/enumeration.md +0 -183
- package/docs/ru/dictionary/file.md +0 -166
- package/docs/ru/dictionary/html.md +16 -14
- package/docs/ru/dictionary/markdown.md +10 -3
- package/docs/ru/dictionary/plurial.md +74 -276
- package/docs/ru/dictionary/translation.md +0 -133
- package/docs/ru/dynamic_dictionaries/variants.md +24 -0
- package/docs/ru/formatters.md +0 -158
- package/docs/ru/how_works_intlayer.md +8 -1
- package/docs/ru/intlayer_visual_editor.md +12 -0
- package/docs/ru/intlayer_with_adonisjs.md +5 -3
- package/docs/ru/intlayer_with_analog.md +1 -1
- package/docs/ru/intlayer_with_angular_19.md +1 -1
- package/docs/ru/intlayer_with_angular_21.md +1 -1
- package/docs/ru/intlayer_with_astro.md +25 -1
- package/docs/ru/intlayer_with_astro_lit.md +28 -4
- package/docs/ru/intlayer_with_astro_preact.md +25 -1
- package/docs/ru/intlayer_with_astro_react.md +25 -1
- package/docs/ru/intlayer_with_astro_solid.md +25 -1
- package/docs/ru/intlayer_with_astro_svelte.md +25 -1
- package/docs/ru/intlayer_with_astro_vanilla.md +25 -1
- package/docs/ru/intlayer_with_astro_vue.md +1 -1
- package/docs/ru/intlayer_with_create_react_app.md +55 -32
- package/docs/ru/intlayer_with_elysia.md +343 -0
- package/docs/ru/intlayer_with_express.md +7 -91
- package/docs/ru/intlayer_with_fastify.md +5 -3
- package/docs/ru/intlayer_with_hono.md +48 -3
- package/docs/ru/intlayer_with_lynx+react.md +14 -1
- package/docs/ru/intlayer_with_nestjs.md +19 -3
- package/docs/ru/intlayer_with_nextjs_14.md +244 -37
- package/docs/ru/intlayer_with_nextjs_15.md +181 -5
- package/docs/ru/intlayer_with_nextjs_16.md +106 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +150 -5
- package/docs/ru/intlayer_with_nextjs_page_router.md +12 -85
- package/docs/ru/intlayer_with_nuxt.md +1 -1
- package/docs/ru/intlayer_with_react_native+expo.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7.md +31 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/ru/intlayer_with_solid_start.md +13 -1
- package/docs/ru/intlayer_with_storybook.md +1 -1
- package/docs/ru/intlayer_with_svelte_kit.md +7 -1
- package/docs/ru/intlayer_with_tanstack+solid.md +160 -9
- package/docs/ru/intlayer_with_tanstack.md +343 -171
- package/docs/ru/intlayer_with_vanilla.md +1 -1
- package/docs/ru/intlayer_with_vite+lit.md +5 -1
- package/docs/ru/intlayer_with_vite+preact.md +35 -5
- package/docs/ru/intlayer_with_vite+react.md +3 -1
- package/docs/ru/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ru/intlayer_with_vite+solid.md +12 -28
- package/docs/ru/intlayer_with_vite+svelte.md +30 -1
- package/docs/ru/intlayer_with_vite+vanilla.md +3 -1
- package/docs/ru/intlayer_with_vite+vue.md +11 -3
- package/docs/ru/introduction.md +1 -1
- package/docs/ru/mcp_server.md +34 -21
- package/docs/ru/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ru/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ru/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ru/packages/intlayer/getDictionary.md +155 -0
- package/docs/ru/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ru/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ru/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ru/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ru/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/ru/packages/intlayer/getTranslation.md +2 -0
- package/docs/ru/packages/next-intlayer/t.md +20 -31
- package/docs/ru/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ru/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ru/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ru/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ru/packages/react-intlayer/useLocale.md +0 -50
- package/docs/ru/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ru/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/ru/per_locale_file.md +14 -13
- package/docs/ru/readme.md +3 -2
- package/docs/ru/releases/v6.md +16 -5
- package/docs/ru/releases/v9.md +2 -0
- package/docs/ru/self_hosting.md +61 -30
- package/docs/tr/agent_skills.md +6 -6
- package/docs/tr/analytics.md +28 -5
- package/docs/tr/benchmark/tanstack.md +6 -0
- package/docs/tr/bundle_optimization.md +2 -2
- package/docs/tr/cli/ci.md +2 -0
- package/docs/tr/cli/doc-review.md +7 -1
- package/docs/tr/cli/fill.md +0 -8
- package/docs/tr/cli/index.md +2 -0
- package/docs/tr/cli/list_projects.md +0 -6
- package/docs/tr/cli/login.md +28 -0
- package/docs/tr/cli/watch.md +0 -2
- package/docs/tr/compiler.md +14 -0
- package/docs/tr/configuration.md +19 -17
- package/docs/tr/custom_domains.md +28 -0
- package/docs/tr/custom_url_rewrites.md +7 -5
- package/docs/tr/dictionary/html.md +35 -14
- package/docs/tr/dictionary/markdown.md +31 -14
- package/docs/tr/dictionary/plurial.md +83 -115
- package/docs/tr/dynamic_dictionaries/variants.md +24 -0
- package/docs/tr/formatters.md +0 -145
- package/docs/tr/intlayer_visual_editor.md +12 -0
- package/docs/tr/intlayer_with_adonisjs.md +5 -3
- package/docs/tr/intlayer_with_analog.md +3 -1
- package/docs/tr/intlayer_with_angular_19.md +1 -1
- package/docs/tr/intlayer_with_angular_21.md +1 -1
- package/docs/tr/intlayer_with_astro.md +108 -1
- package/docs/tr/intlayer_with_astro_lit.md +9 -9
- package/docs/tr/intlayer_with_astro_preact.md +15 -9
- package/docs/tr/intlayer_with_astro_react.md +9 -9
- package/docs/tr/intlayer_with_astro_solid.md +9 -9
- package/docs/tr/intlayer_with_astro_svelte.md +9 -9
- package/docs/tr/intlayer_with_astro_vanilla.md +9 -9
- package/docs/tr/intlayer_with_astro_vue.md +1 -1
- package/docs/tr/intlayer_with_create_react_app.md +55 -0
- package/docs/tr/intlayer_with_elysia.md +343 -0
- package/docs/tr/intlayer_with_express.md +5 -3
- package/docs/tr/intlayer_with_fastify.md +5 -3
- package/docs/tr/intlayer_with_hono.md +44 -3
- package/docs/tr/intlayer_with_lynx+react.md +9 -1
- package/docs/tr/intlayer_with_nestjs.md +19 -3
- package/docs/tr/intlayer_with_nextjs_14.md +362 -5
- package/docs/tr/intlayer_with_nextjs_15.md +202 -1
- package/docs/tr/intlayer_with_nextjs_16.md +106 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +124 -14
- package/docs/tr/intlayer_with_nextjs_page_router.md +5 -29
- package/docs/tr/intlayer_with_nuxt.md +1 -1
- package/docs/tr/intlayer_with_react_native+expo.md +1 -1
- package/docs/tr/intlayer_with_react_router_v7.md +31 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/tr/intlayer_with_solid_start.md +13 -1
- package/docs/tr/intlayer_with_storybook.md +1 -1
- package/docs/tr/intlayer_with_svelte_kit.md +7 -1
- package/docs/tr/intlayer_with_tanstack+solid.md +233 -7
- package/docs/tr/intlayer_with_tanstack.md +352 -158
- package/docs/tr/intlayer_with_vanilla.md +1 -1
- package/docs/tr/intlayer_with_vite+lit.md +5 -1
- package/docs/tr/intlayer_with_vite+preact.md +35 -5
- package/docs/tr/intlayer_with_vite+react.md +5 -1
- package/docs/tr/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/tr/intlayer_with_vite+solid.md +12 -28
- package/docs/tr/intlayer_with_vite+svelte.md +30 -1
- package/docs/tr/intlayer_with_vite+vanilla.md +3 -1
- package/docs/tr/intlayer_with_vite+vue.md +16 -43
- package/docs/tr/introduction.md +1 -1
- package/docs/tr/live-sync.md +13 -2
- package/docs/tr/mcp_server.md +34 -21
- package/docs/tr/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/tr/packages/elysia-intlayer/exports.md +136 -0
- package/docs/tr/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/tr/packages/intlayer/getDictionary.md +155 -0
- package/docs/tr/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/tr/packages/intlayer/getEnumeration.md +2 -0
- package/docs/tr/packages/intlayer/getIntlayer.md +197 -0
- package/docs/tr/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/tr/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +11 -0
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/tr/packages/intlayer/getTranslation.md +2 -0
- package/docs/tr/packages/next-intlayer/t.md +20 -0
- package/docs/tr/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/tr/packages/next-intlayer/useLocale.md +2 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/tr/packages/react-intlayer/useI18n.md +31 -0
- package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/tr/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/tr/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/tr/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/tr/per_locale_file.md +13 -13
- package/docs/tr/readme.md +3 -2
- package/docs/tr/releases/v6.md +16 -2
- package/docs/tr/self_hosting.md +68 -25
- package/docs/uk/CI_CD.md +2 -0
- package/docs/uk/agent_skills.md +5 -5
- package/docs/uk/analytics.md +28 -5
- package/docs/uk/benchmark/tanstack.md +6 -0
- package/docs/uk/bundle_optimization.md +2 -2
- package/docs/uk/cli/ci.md +2 -0
- package/docs/uk/cli/doc-review.md +9 -1
- package/docs/uk/cli/fill.md +0 -8
- package/docs/uk/cli/index.md +2 -0
- package/docs/uk/cli/login.md +28 -0
- package/docs/uk/compiler.md +14 -0
- package/docs/uk/configuration.md +19 -17
- package/docs/uk/custom_domains.md +35 -0
- package/docs/uk/custom_url_rewrites.md +7 -5
- package/docs/uk/dictionary/file.md +0 -166
- package/docs/uk/dictionary/gender.md +0 -212
- package/docs/uk/dictionary/html.md +134 -16
- package/docs/uk/dictionary/markdown.md +31 -14
- package/docs/uk/dictionary/plurial.md +85 -116
- package/docs/uk/dynamic_dictionaries/variants.md +24 -0
- package/docs/uk/formatters.md +0 -139
- package/docs/uk/how_works_intlayer.md +2 -0
- package/docs/uk/interest_of_intlayer.md +1 -3
- package/docs/uk/intlayer_with_adonisjs.md +5 -3
- package/docs/uk/intlayer_with_analog.md +3 -1
- package/docs/uk/intlayer_with_angular_19.md +1 -1
- package/docs/uk/intlayer_with_angular_21.md +1 -1
- package/docs/uk/intlayer_with_astro.md +25 -1
- package/docs/uk/intlayer_with_astro_lit.md +1 -1
- package/docs/uk/intlayer_with_astro_preact.md +7 -1
- package/docs/uk/intlayer_with_astro_react.md +1 -1
- package/docs/uk/intlayer_with_astro_solid.md +1 -1
- package/docs/uk/intlayer_with_astro_svelte.md +1 -1
- package/docs/uk/intlayer_with_astro_vanilla.md +1 -1
- package/docs/uk/intlayer_with_astro_vue.md +1 -1
- package/docs/uk/intlayer_with_create_react_app.md +43 -0
- package/docs/uk/intlayer_with_elysia.md +343 -0
- package/docs/uk/intlayer_with_express.md +5 -3
- package/docs/uk/intlayer_with_fastify.md +5 -3
- package/docs/uk/intlayer_with_hono.md +44 -3
- package/docs/uk/intlayer_with_lynx+react.md +1 -3
- package/docs/uk/intlayer_with_nestjs.md +5 -3
- package/docs/uk/intlayer_with_nextjs_14.md +127 -8
- package/docs/uk/intlayer_with_nextjs_15.md +103 -243
- package/docs/uk/intlayer_with_nextjs_16.md +106 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +126 -5
- package/docs/uk/intlayer_with_nextjs_page_router.md +5 -29
- package/docs/uk/intlayer_with_nuxt.md +30 -1
- package/docs/uk/intlayer_with_react_native+expo.md +1 -1
- package/docs/uk/intlayer_with_react_router_v7.md +29 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/uk/intlayer_with_solid_start.md +13 -1
- package/docs/uk/intlayer_with_storybook.md +1 -1
- package/docs/uk/intlayer_with_svelte_kit.md +3 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +234 -8
- package/docs/uk/intlayer_with_tanstack.md +382 -160
- package/docs/uk/intlayer_with_vanilla.md +1 -1
- package/docs/uk/intlayer_with_vite+lit.md +5 -1
- package/docs/uk/intlayer_with_vite+preact.md +7 -5
- package/docs/uk/intlayer_with_vite+react.md +5 -1
- package/docs/uk/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/uk/intlayer_with_vite+solid.md +12 -28
- package/docs/uk/intlayer_with_vite+svelte.md +5 -1
- package/docs/uk/intlayer_with_vite+vanilla.md +3 -1
- package/docs/uk/intlayer_with_vite+vue.md +9 -3
- package/docs/uk/introduction.md +1 -1
- package/docs/uk/mcp_server.md +34 -21
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/uk/packages/elysia-intlayer/exports.md +136 -0
- package/docs/uk/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/uk/packages/intlayer/getDictionary.md +155 -0
- package/docs/uk/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/uk/packages/intlayer/getEnumeration.md +2 -0
- package/docs/uk/packages/intlayer/getIntlayer.md +197 -0
- package/docs/uk/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/uk/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/uk/packages/intlayer/getTranslation.md +2 -0
- package/docs/uk/packages/next-intlayer/t.md +20 -2
- package/docs/uk/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/uk/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/uk/packages/react-intlayer/useI18n.md +31 -0
- package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/uk/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/uk/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/uk/readme.md +3 -2
- package/docs/uk/releases/v8.md +2 -4
- package/docs/uk/releases/v9.md +2 -0
- package/docs/uk/self_hosting.md +61 -29
- package/docs/ur/bundle_optimization.md +2 -2
- package/docs/ur/configuration.md +12 -9
- package/docs/ur/intlayer_with_fastify.md +5 -3
- package/docs/ur/intlayer_with_hono.md +5 -3
- package/docs/ur/introduction.md +1 -1
- package/docs/vi/agent_skills.md +6 -6
- package/docs/vi/analytics.md +28 -5
- package/docs/vi/benchmark/tanstack.md +6 -0
- package/docs/vi/bundle_optimization.md +2 -2
- package/docs/vi/cli/ci.md +2 -0
- package/docs/vi/cli/doc-review.md +9 -1
- package/docs/vi/cli/fill.md +0 -8
- package/docs/vi/cli/index.md +2 -0
- package/docs/vi/cli/list_projects.md +0 -2
- package/docs/vi/cli/login.md +28 -2
- package/docs/vi/compiler.md +14 -0
- package/docs/vi/configuration.md +19 -17
- package/docs/vi/custom_domains.md +33 -0
- package/docs/vi/custom_url_rewrites.md +7 -5
- package/docs/vi/dictionary/file.md +0 -166
- package/docs/vi/dictionary/gender.md +0 -2
- package/docs/vi/dictionary/html.md +134 -16
- package/docs/vi/dictionary/insertion.md +0 -14
- package/docs/vi/dictionary/markdown.md +31 -14
- package/docs/vi/dictionary/plurial.md +81 -113
- package/docs/vi/dynamic_dictionaries/variants.md +24 -0
- package/docs/vi/formatters.md +12 -39
- package/docs/vi/interest_of_intlayer.md +1 -3
- package/docs/vi/intlayer_with_adonisjs.md +5 -3
- package/docs/vi/intlayer_with_analog.md +3 -1
- package/docs/vi/intlayer_with_angular_19.md +1 -1
- package/docs/vi/intlayer_with_angular_21.md +1 -1
- package/docs/vi/intlayer_with_astro.md +25 -1
- package/docs/vi/intlayer_with_astro_lit.md +1 -1
- package/docs/vi/intlayer_with_astro_preact.md +7 -1
- package/docs/vi/intlayer_with_astro_react.md +1 -1
- package/docs/vi/intlayer_with_astro_solid.md +1 -1
- package/docs/vi/intlayer_with_astro_svelte.md +1 -1
- package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/vi/intlayer_with_astro_vue.md +1 -1
- package/docs/vi/intlayer_with_create_react_app.md +43 -0
- package/docs/vi/intlayer_with_elysia.md +343 -0
- package/docs/vi/intlayer_with_fastify.md +5 -3
- package/docs/vi/intlayer_with_hono.md +44 -3
- package/docs/vi/intlayer_with_lynx+react.md +1 -1
- package/docs/vi/intlayer_with_nextjs_14.md +127 -8
- package/docs/vi/intlayer_with_nextjs_15.md +138 -148
- package/docs/vi/intlayer_with_nextjs_16.md +106 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +162 -5
- package/docs/vi/intlayer_with_nextjs_page_router.md +68 -30
- package/docs/vi/intlayer_with_nuxt.md +30 -1
- package/docs/vi/intlayer_with_react_native+expo.md +1 -1
- package/docs/vi/intlayer_with_react_router_v7.md +31 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +148 -53
- package/docs/vi/intlayer_with_solid_start.md +13 -1
- package/docs/vi/intlayer_with_storybook.md +1 -1
- package/docs/vi/intlayer_with_svelte_kit.md +7 -1
- package/docs/vi/intlayer_with_tanstack+solid.md +233 -7
- package/docs/vi/intlayer_with_tanstack.md +413 -168
- package/docs/vi/intlayer_with_vanilla.md +1 -1
- package/docs/vi/intlayer_with_vite+lit.md +5 -1
- package/docs/vi/intlayer_with_vite+preact.md +29 -5
- package/docs/vi/intlayer_with_vite+react.md +6 -4
- package/docs/vi/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/vi/intlayer_with_vite+solid.md +12 -28
- package/docs/vi/intlayer_with_vite+svelte.md +28 -1
- package/docs/vi/intlayer_with_vite+vanilla.md +3 -1
- package/docs/vi/intlayer_with_vite+vue.md +14 -3
- package/docs/vi/mcp_server.md +34 -21
- package/docs/vi/packages/elysia-intlayer/exports.md +136 -0
- package/docs/vi/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/vi/packages/intlayer/getDictionary.md +155 -0
- package/docs/vi/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/vi/packages/intlayer/getEnumeration.md +2 -0
- package/docs/vi/packages/intlayer/getIntlayer.md +197 -0
- package/docs/vi/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/vi/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +11 -32
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/vi/packages/intlayer/getTranslation.md +2 -0
- package/docs/vi/packages/next-intlayer/t.md +20 -0
- package/docs/vi/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/vi/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/vi/packages/react-intlayer/useI18n.md +31 -0
- package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/vi/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/vi/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/vi/per_locale_file.md +13 -13
- package/docs/vi/readme.md +3 -2
- package/docs/vi/self_hosting.md +61 -30
- package/docs/zh/agent_skills.md +7 -7
- package/docs/zh/analytics.md +57 -13
- package/docs/zh/benchmark/tanstack.md +6 -0
- package/docs/zh/bundle_optimization.md +2 -2
- package/docs/zh/cli/ci.md +2 -0
- package/docs/zh/cli/doc-review.md +7 -1
- package/docs/zh/cli/fill.md +0 -8
- package/docs/zh/cli/index.md +2 -0
- package/docs/zh/cli/list_projects.md +0 -2
- package/docs/zh/cli/login.md +28 -0
- package/docs/zh/cli/push.md +0 -15
- package/docs/zh/compiler.md +14 -0
- package/docs/zh/configuration.md +19 -17
- package/docs/zh/custom_domains.md +27 -0
- package/docs/zh/custom_url_rewrites.md +7 -5
- package/docs/zh/dictionary/content_file.md +0 -10
- package/docs/zh/dictionary/html.md +16 -14
- package/docs/zh/dictionary/markdown.md +7 -3
- package/docs/zh/dictionary/plurial.md +79 -110
- package/docs/zh/dynamic_dictionaries/variants.md +24 -0
- package/docs/zh/formatters.md +0 -146
- package/docs/zh/how_works_intlayer.md +5 -0
- package/docs/zh/interest_of_intlayer.md +19 -0
- package/docs/zh/intlayer_visual_editor.md +12 -0
- package/docs/zh/intlayer_with_adonisjs.md +5 -3
- package/docs/zh/intlayer_with_analog.md +20 -1
- package/docs/zh/intlayer_with_angular_19.md +18 -1
- package/docs/zh/intlayer_with_angular_21.md +18 -1
- package/docs/zh/intlayer_with_astro.md +19 -3
- package/docs/zh/intlayer_with_astro_lit.md +31 -9
- package/docs/zh/intlayer_with_astro_preact.md +37 -9
- package/docs/zh/intlayer_with_astro_react.md +31 -9
- package/docs/zh/intlayer_with_astro_solid.md +31 -9
- package/docs/zh/intlayer_with_astro_svelte.md +31 -9
- package/docs/zh/intlayer_with_astro_vanilla.md +31 -9
- package/docs/zh/intlayer_with_astro_vue.md +23 -1
- package/docs/zh/intlayer_with_create_react_app.md +10 -2
- package/docs/zh/intlayer_with_elysia.md +343 -0
- package/docs/zh/intlayer_with_express.md +11 -3
- package/docs/zh/intlayer_with_fastify.md +5 -3
- package/docs/zh/intlayer_with_hono.md +5 -3
- package/docs/zh/intlayer_with_lynx+react.md +66 -1
- package/docs/zh/intlayer_with_nestjs.md +19 -3
- package/docs/zh/intlayer_with_nextjs_14.md +124 -112
- package/docs/zh/intlayer_with_nextjs_15.md +182 -1
- package/docs/zh/intlayer_with_nextjs_16.md +105 -1
- package/docs/zh/intlayer_with_nextjs_compiler.md +51 -9
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +147 -583
- package/docs/zh/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/zh/intlayer_with_nuxt.md +18 -1
- package/docs/zh/intlayer_with_react_native+expo.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7.md +177 -1
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +106 -5
- package/docs/zh/intlayer_with_solid_start.md +13 -1
- package/docs/zh/intlayer_with_storybook.md +18 -1
- package/docs/zh/intlayer_with_svelte_kit.md +18 -1
- package/docs/zh/intlayer_with_tanstack+solid.md +179 -11
- package/docs/zh/intlayer_with_tanstack.md +370 -163
- package/docs/zh/intlayer_with_vanilla.md +18 -1
- package/docs/zh/intlayer_with_vite+lit.md +20 -1
- package/docs/zh/intlayer_with_vite+preact.md +91 -49
- package/docs/zh/intlayer_with_vite+react.md +20 -1
- package/docs/zh/intlayer_with_vite+solid.md +11 -24
- package/docs/zh/intlayer_with_vite+svelte.md +15 -17
- package/docs/zh/intlayer_with_vite+vanilla.md +18 -1
- package/docs/zh/intlayer_with_vite+vue.md +16 -5
- package/docs/zh/live-sync.md +39 -2
- package/docs/zh/mcp_server.md +34 -19
- package/docs/zh/packages/elysia-intlayer/exports.md +136 -0
- package/docs/zh/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/zh/packages/intlayer/getDictionary.md +155 -0
- package/docs/zh/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/zh/packages/intlayer/getEnumeration.md +2 -0
- package/docs/zh/packages/intlayer/getIntlayer.md +197 -0
- package/docs/zh/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/zh/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/zh/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/zh/packages/intlayer/getPrefix.md +0 -2
- package/docs/zh/packages/intlayer/getTranslation.md +2 -0
- package/docs/zh/packages/next-intlayer/t.md +20 -0
- package/docs/zh/packages/next-intlayer/useIntlayer.md +32 -0
- package/docs/zh/packages/next-intlayer/useLocale.md +2 -0
- package/docs/zh/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/zh/packages/react-intlayer/useI18n.md +31 -0
- package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/zh/packages/vite-intlayer/exports.md +0 -6
- package/docs/zh/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/zh/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/zh/per_locale_file.md +13 -13
- package/docs/zh/releases/v6.md +16 -2
- package/docs/zh/self_hosting.md +61 -29
- package/docs/zh-TW/bundle_optimization.md +2 -2
- package/package.json +7 -7
- package/src/generated/docs.entry.ts +140 -0
|
@@ -66,7 +66,7 @@ Determinar el alcance del contenido de su aplicación **facilita el mantenimient
|
|
|
66
66
|
|
|
67
67
|
<Accordion header="Agente de IA">
|
|
68
68
|
|
|
69
|
-
La ubicación conjunta de contenido **reduce el contexto necesario** para los modelos de lenguajes grandes (LLM). Intlayer también viene con un conjunto de herramientas, como una **CLI** para comprobar si faltan traducciones,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** y **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/
|
|
69
|
+
La ubicación conjunta de contenido **reduce el contexto necesario** para los modelos de lenguajes grandes (LLM). Intlayer también viene con un conjunto de herramientas, como una **CLI** para comprobar si faltan traducciones,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** y **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**, para que la experiencia del desarrollador (DX) sea aún más fluida para los agentes de IA.
|
|
70
70
|
|
|
71
71
|
</Accordion>
|
|
72
72
|
|
|
@@ -93,6 +93,33 @@ Más que una simple solución i18n, Intlayer proporciona un **[editor visual] au
|
|
|
93
93
|
|
|
94
94
|
## Guía paso a paso para configurar Intlayer en una aplicación Next.js
|
|
95
95
|
|
|
96
|
+
<Tabs defaultTab="code">
|
|
97
|
+
<Tab label="Código" value="code">
|
|
98
|
+
|
|
99
|
+
<iframe
|
|
100
|
+
src="https://ide.intlayer.org/aymericzip/intlayer-next-14-template?file=intlayer.config.ts"
|
|
101
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
102
|
+
title="Demo CodeSandbox - Cómo internacionalizar tu aplicación usando Intlayer"
|
|
103
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
104
|
+
loading="lazy"
|
|
105
|
+
/>
|
|
106
|
+
|
|
107
|
+
</Tab>
|
|
108
|
+
<Tab label="Demo" value="demo">
|
|
109
|
+
|
|
110
|
+
<iframe
|
|
111
|
+
src="https://intlayer-next-14-template.vercel.app"
|
|
112
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
113
|
+
title="Demo - intlayer-next-14-template"
|
|
114
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
115
|
+
loading="lazy"
|
|
116
|
+
/>
|
|
117
|
+
|
|
118
|
+
</Tab>
|
|
119
|
+
</Tabs>
|
|
120
|
+
|
|
121
|
+
Ver [Application Template](https://github.com/aymericzip/intlayer-next-14-template) en GitHub.
|
|
122
|
+
|
|
96
123
|
<Steps>
|
|
97
124
|
|
|
98
125
|
<Step number={1} title="Instalar dependencias">
|
|
@@ -214,6 +241,15 @@ export default withIntlayer(nextConfig);
|
|
|
214
241
|
|
|
215
242
|
> El plugin `withIntlayer()` de Next.js se utiliza para integrar Intlayer con Next.js. Garantiza la construcción de archivos de declaración de contenido y los supervisa en modo desarrollo. Define variables de entorno de Intlayer dentro de los entornos de [Webpack](https://webpack.js.org/) o [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). Además, proporciona alias para optimizar el rendimiento y asegura la compatibilidad con componentes del servidor.
|
|
216
243
|
|
|
244
|
+
> La función `withIntlayer()` es una función promise. Si deseas usarla con otros plugins, puedes esperar a que se resuelva. Ejemplo:
|
|
245
|
+
>
|
|
246
|
+
> ```tsx
|
|
247
|
+
> const nextConfig = await withIntlayer(nextConfig);
|
|
248
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
249
|
+
>
|
|
250
|
+
> export default nextConfigWithOtherPlugins;
|
|
251
|
+
> ```
|
|
252
|
+
|
|
217
253
|
</Step>
|
|
218
254
|
|
|
219
255
|
<Step number={4} title="Configurar Middleware para la Detección de Idioma">
|
|
@@ -231,8 +267,25 @@ export const config = {
|
|
|
231
267
|
|
|
232
268
|
> El `intlayerMiddleware` se utiliza para detectar la configuración regional preferida del usuario y redirigirlo a la URL apropiada según lo especificado en la [configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md). Además, permite guardar la configuración regional preferida del usuario en una cookie.
|
|
233
269
|
|
|
270
|
+
> Desde Intlayer v9, este middleware respeta la opción `routing.enableProxy` (`true` por defecto). Establece `routing.enableProxy: false` en tu configuración para convertirlo en un pass-through sin eliminar este archivo. Ver las [notas de la versión v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/releases/v9.md).
|
|
271
|
+
|
|
234
272
|
> Adapte el parámetro `matcher` para que coincida con las rutas de su aplicación. Para más detalles, consulte la [documentación de Next.js sobre la configuración del matcher](https://nextjs.org/docs/app/building-your-application/routing/middleware).
|
|
235
273
|
|
|
274
|
+
> Si necesitas encadenar varios middlewares juntos (por ejemplo, `intlayerMiddleware` con autenticación o middlewares personalizados), Intlayer ahora proporciona un helper llamado `multipleMiddlewares`.
|
|
275
|
+
|
|
276
|
+
```ts
|
|
277
|
+
import {
|
|
278
|
+
multipleMiddlewares,
|
|
279
|
+
intlayerMiddleware,
|
|
280
|
+
} from "next-intlayer/middleware";
|
|
281
|
+
import { customMiddleware } from "@utils/customMiddleware";
|
|
282
|
+
|
|
283
|
+
export const middleware = multipleMiddlewares([
|
|
284
|
+
intlayerMiddleware,
|
|
285
|
+
customMiddleware,
|
|
286
|
+
]);
|
|
287
|
+
```
|
|
288
|
+
|
|
236
289
|
</Step>
|
|
237
290
|
|
|
238
291
|
<Step number={5} title="Definir rutas dinámicas por configuración regional">
|
|
@@ -252,11 +305,38 @@ export default RootLayout;
|
|
|
252
305
|
|
|
253
306
|
Para implementar el enrutamiento dinámico, proporcione la ruta para la configuración regional agregando un nuevo layout en su directorio `[locale]`:
|
|
254
307
|
|
|
308
|
+
<Tabs>
|
|
309
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
310
|
+
|
|
255
311
|
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
256
|
-
import {
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
} from "
|
|
312
|
+
import { type Next14LayoutIntlayer } from "next-intlayer";
|
|
313
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
314
|
+
import { Inter } from "next/font/google";
|
|
315
|
+
import { getHTMLTextDir } from "intlayer";
|
|
316
|
+
|
|
317
|
+
const inter = Inter({ subsets: ["latin"] });
|
|
318
|
+
|
|
319
|
+
const LocaleLayout: Next14LayoutIntlayer = ({
|
|
320
|
+
children,
|
|
321
|
+
params: { locale },
|
|
322
|
+
}) => (
|
|
323
|
+
<IntlayerProvider locale={locale}>
|
|
324
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
325
|
+
<body className={inter.className}>{children}</body>
|
|
326
|
+
</html>
|
|
327
|
+
</IntlayerProvider>
|
|
328
|
+
);
|
|
329
|
+
|
|
330
|
+
export default LocaleLayout;
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
> Un único `IntlayerProvider` cubre ambas mitades del árbol: proporciona el contexto del servidor con alcance de solicitud leído por los hooks del servidor y monta el proveedor del cliente para que los componentes del cliente reciban la misma configuración regional.
|
|
334
|
+
|
|
335
|
+
</Tab>
|
|
336
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
337
|
+
|
|
338
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
339
|
+
import { type Next14LayoutIntlayer, IntlayerProvider } from "next-intlayer";
|
|
260
340
|
import { Inter } from "next/font/google";
|
|
261
341
|
import { getHTMLTextDir } from "intlayer";
|
|
262
342
|
|
|
@@ -268,9 +348,7 @@ const LocaleLayout: Next14LayoutIntlayer = ({
|
|
|
268
348
|
}) => (
|
|
269
349
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
270
350
|
<body className={inter.className}>
|
|
271
|
-
<
|
|
272
|
-
{children}
|
|
273
|
-
</IntlayerClientProvider>
|
|
351
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
274
352
|
</body>
|
|
275
353
|
</html>
|
|
276
354
|
);
|
|
@@ -278,6 +356,9 @@ const LocaleLayout: Next14LayoutIntlayer = ({
|
|
|
278
356
|
export default LocaleLayout;
|
|
279
357
|
```
|
|
280
358
|
|
|
359
|
+
</Tab>
|
|
360
|
+
</Tabs>
|
|
361
|
+
|
|
281
362
|
> El segmento de ruta `[locale]` se utiliza para definir la configuración regional. Ejemplo: `/en-US/about` se referirá a `en-US` y `/fr/about` a `fr`.
|
|
282
363
|
|
|
283
364
|
> En esta etapa, encontrará el error: `Error: Missing <html> and <body> tags in the root layout.`. Esto es esperado porque el archivo `/app/page.tsx` ya no se usa y puede eliminarse. En su lugar, el segmento de ruta `[locale]` activará la página `/app/[locale]/page.tsx`. En consecuencia, las páginas serán accesibles a través de rutas como `/en`, `/fr`, `/es` en su navegador. Para establecer la configuración regional predeterminada como la página raíz, consulte la configuración del `middleware` en el paso 4.
|
|
@@ -366,6 +447,9 @@ export default pageContent;
|
|
|
366
447
|
|
|
367
448
|
Accede a tus diccionarios de contenido a lo largo de tu aplicación:
|
|
368
449
|
|
|
450
|
+
<Tabs>
|
|
451
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
452
|
+
|
|
369
453
|
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
370
454
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
371
455
|
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
@@ -398,10 +482,40 @@ export default Page;
|
|
|
398
482
|
|
|
399
483
|
- **`IntlayerClientProvider`** se utiliza para proporcionar la configuración regional a los componentes del lado del cliente. Puede colocarse en cualquier componente padre, incluido el layout. Sin embargo, se recomienda colocarlo en un layout porque Next.js comparte el código del layout entre páginas, lo que lo hace más eficiente. Al usar `IntlayerClientProvider` en el layout, se evita reinicializarlo en cada página, mejorando el rendimiento y manteniendo un contexto de localización consistente en toda su aplicación.
|
|
400
484
|
|
|
485
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
486
|
+
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
487
|
+
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
488
|
+
import { type Next14PageIntlayer } from "next-intlayer";
|
|
489
|
+
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
490
|
+
|
|
491
|
+
const Page: Next14PageIntlayer = ({ params: { locale } }) => {
|
|
492
|
+
const content = useIntlayer("page", locale);
|
|
493
|
+
|
|
494
|
+
return (
|
|
495
|
+
<>
|
|
496
|
+
<p>
|
|
497
|
+
{content.getStarted.main}
|
|
498
|
+
<code>{content.getStarted.pageLink}</code>
|
|
499
|
+
</p>
|
|
500
|
+
|
|
501
|
+
<IntlayerServerProvider locale={locale}>
|
|
502
|
+
<ServerComponentExample />
|
|
503
|
+
<ClientComponentExample />
|
|
504
|
+
</IntlayerServerProvider>
|
|
505
|
+
</>
|
|
506
|
+
);
|
|
507
|
+
};
|
|
508
|
+
|
|
509
|
+
export default Page;
|
|
510
|
+
```
|
|
511
|
+
|
|
401
512
|
- **`IntlayerServerProvider`** se utiliza para proporcionar la configuración regional a los componentes hijos del servidor. No puede establecerse en el layout.
|
|
402
513
|
|
|
403
514
|
> El layout y la página no pueden compartir un contexto de servidor común porque el sistema de contexto de servidor se basa en un almacén de datos por solicitud (a través del mecanismo de [caché de React](https://react.dev/reference/react/cache)), lo que provoca que cada “contexto” se recree para diferentes segmentos de la aplicación. Colocar el proveedor en un layout compartido rompería este aislamiento, impidiendo la correcta propagación de los valores del contexto del servidor a tus componentes de servidor.
|
|
404
515
|
|
|
516
|
+
</Tab>
|
|
517
|
+
</Tabs>
|
|
518
|
+
|
|
405
519
|
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
406
520
|
"use client";
|
|
407
521
|
|
|
@@ -420,6 +534,30 @@ const ClientComponentExample: FC = () => {
|
|
|
420
534
|
};
|
|
421
535
|
```
|
|
422
536
|
|
|
537
|
+
<Tabs>
|
|
538
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
539
|
+
|
|
540
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
541
|
+
import type { FC } from "react";
|
|
542
|
+
import { useIntlayer } from "next-intlayer";
|
|
543
|
+
|
|
544
|
+
const ServerComponentExample: FC = () => {
|
|
545
|
+
const content = useIntlayer("server-component-example"); // Crear declaración de contenido relacionado
|
|
546
|
+
|
|
547
|
+
return (
|
|
548
|
+
<div>
|
|
549
|
+
<h2>{content.title}</h2>
|
|
550
|
+
<p>{content.content}</p>
|
|
551
|
+
</div>
|
|
552
|
+
);
|
|
553
|
+
};
|
|
554
|
+
```
|
|
555
|
+
|
|
556
|
+
> `next-intlayer` es la ruta de importación isomorfa: la condición de exportación `react-server` proporciona a los componentes del servidor la implementación de locale ambiental, mientras que los componentes del cliente obtienen la implementación respaldada por contexto. La misma llamada funciona en ambos lados.
|
|
557
|
+
|
|
558
|
+
</Tab>
|
|
559
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
560
|
+
|
|
423
561
|
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
424
562
|
import type { FC } from "react";
|
|
425
563
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -436,6 +574,9 @@ const ServerComponentExample: FC = () => {
|
|
|
436
574
|
};
|
|
437
575
|
```
|
|
438
576
|
|
|
577
|
+
</Tab>
|
|
578
|
+
</Tabs>
|
|
579
|
+
|
|
439
580
|
> Si deseas usar tu contenido en un atributo de tipo `string`, como `alt`, `title`, `href`, `aria-label`, etc., debes llamar al valor de la función, así:
|
|
440
581
|
|
|
441
582
|
> ```html
|
|
@@ -580,47 +721,6 @@ export const generateMetadata = ({ params: { locale } }) => {
|
|
|
580
721
|
// ... Resto del código
|
|
581
722
|
````
|
|
582
723
|
|
|
583
|
-
````javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
|
|
584
|
-
const { getIntlayer, getMultilingualUrls } = require("intlayer");
|
|
585
|
-
|
|
586
|
-
const generateMetadata = ({ params: { locale } }) => {
|
|
587
|
-
const metadata = getIntlayer("page-metadata", locale);
|
|
588
|
-
|
|
589
|
-
/**
|
|
590
|
-
* Genera un objeto que contiene todas las URLs para cada idioma.
|
|
591
|
-
*
|
|
592
|
-
* Ejemplo:
|
|
593
|
-
* ```ts
|
|
594
|
-
* getMultilingualUrls('/about');
|
|
595
|
-
*
|
|
596
|
-
* // Retorna
|
|
597
|
-
* // {
|
|
598
|
-
* // en: '/about',
|
|
599
|
-
* // fr: '/fr/about',
|
|
600
|
-
* // es: '/es/about'
|
|
601
|
-
* // }
|
|
602
|
-
* ```
|
|
603
|
-
*/
|
|
604
|
-
const multilingualUrls = getMultilingualUrls("/");
|
|
605
|
-
const localizedUrl = multilingualUrls[locale];
|
|
606
|
-
|
|
607
|
-
return {
|
|
608
|
-
...metadata,
|
|
609
|
-
alternates: {
|
|
610
|
-
canonical: localizedUrl,
|
|
611
|
-
languages: { ...multilingualUrls, "x-default": "/" },
|
|
612
|
-
},
|
|
613
|
-
openGraph: {
|
|
614
|
-
url: localizedUrl,
|
|
615
|
-
},
|
|
616
|
-
};
|
|
617
|
-
};
|
|
618
|
-
|
|
619
|
-
module.exports = { generateMetadata };
|
|
620
|
-
|
|
621
|
-
// ... Resto del código
|
|
622
|
-
````
|
|
623
|
-
|
|
624
724
|
> Tenga en cuenta que la función `getIntlayer` importada desde `next-intlayer` devuelve su contenido envuelto en un `IntlayerNode`, lo que permite la integración con el editor visual. En contraste, la función `getIntlayer` importada desde `intlayer` devuelve su contenido directamente sin propiedades adicionales.
|
|
625
725
|
|
|
626
726
|
Alternativamente, puede usar la función `getTranslation` para declarar sus metadatos. Sin embargo, se recomienda usar archivos de declaración de contenido para automatizar la traducción de sus metadatos y externalizar el contenido en algún momento.
|
|
@@ -889,6 +989,33 @@ Al integrar este componente `Link` en toda tu aplicación, mantienes una experie
|
|
|
889
989
|
|
|
890
990
|
<Step number={12} title="Optimiza el tamaño de tu paquete" isOptional={true}>
|
|
891
991
|
|
|
992
|
+
Si necesitas la configuración regional activa dentro de una Server Action (por ejemplo, para localizar correos electrónicos o ejecutar lógica consciente de la configuración regional), llama a `getLocale` desde `next-intlayer/server`:
|
|
993
|
+
|
|
994
|
+
```tsx fileName="src/app/actions/getLocale.ts" codeFormat="typescript"
|
|
995
|
+
"use server";
|
|
996
|
+
|
|
997
|
+
import { getLocale } from "next-intlayer/server";
|
|
998
|
+
|
|
999
|
+
export const myServerAction = async () => {
|
|
1000
|
+
const locale = await getLocale();
|
|
1001
|
+
|
|
1002
|
+
// Hacer algo con la locale
|
|
1003
|
+
};
|
|
1004
|
+
```
|
|
1005
|
+
|
|
1006
|
+
> La función `getLocale` sigue una estrategia en cascada para determinar la locale del usuario:
|
|
1007
|
+
>
|
|
1008
|
+
> 1. Primero, verifica los encabezados de la solicitud en busca de un valor de locale que el middleware haya establecido
|
|
1009
|
+
> 2. Si no se encuentra una locale en los encabezados, busca una locale almacenada en cookies
|
|
1010
|
+
> 3. Si no se encuentra ninguna cookie, intenta detectar el idioma preferido del usuario desde la configuración del navegador
|
|
1011
|
+
> 4. Como último recurso, utiliza la locale por defecto configurada en la aplicación
|
|
1012
|
+
>
|
|
1013
|
+
> Esto garantiza que se seleccione la locale más apropiada en función del contexto disponible.
|
|
1014
|
+
|
|
1015
|
+
</Step>
|
|
1016
|
+
|
|
1017
|
+
<Step number={13} title="Optimizar el tamaño de tu bundle" isOptional={true}>
|
|
1018
|
+
|
|
892
1019
|
Al usar `next-intlayer`, los diccionarios se incluyen en el paquete para cada página por defecto. Para optimizar el tamaño del bundle, Intlayer proporciona un plugin SWC opcional que reemplaza inteligentemente las llamadas a `useIntlayer` usando macros. Esto asegura que los diccionarios solo se incluyan en los paquetes de las páginas que realmente los usan.
|
|
893
1020
|
|
|
894
1021
|
Para habilitar esta optimización, instala el paquete `@intlayer/swc`. Una vez instalado, `next-intlayer` detectará y usará automáticamente el plugin:
|
|
@@ -914,6 +1041,9 @@ bun add @intlayer/swc --dev
|
|
|
914
1041
|
> Nota: Este paquete no se instala por defecto porque los plugins SWC aún son experimentales en Next.js. Esto podría cambiar en el futuro.
|
|
915
1042
|
> </Step>
|
|
916
1043
|
|
|
1044
|
+
> Nota: Si estableces la opción como `importMode: 'dynamic'` o `importMode: 'fetch'` (en la configuración de `dictionary`), dependerá de Suspense, por lo que tendrás que envolver tus llamadas a `useIntlayer` en un límite de `Suspense`. Esto significa que no podrás usar `useIntlayer` directamente en el nivel superior de tu componente Page / Layout.
|
|
1045
|
+
> </Step>
|
|
1046
|
+
|
|
917
1047
|
</Steps>
|
|
918
1048
|
|
|
919
1049
|
### Configurar TypeScript
|
|
@@ -962,8 +1092,6 @@ Esta extensión proporciona:
|
|
|
962
1092
|
|
|
963
1093
|
Para más detalles sobre cómo usar la extensión, consulta la [documentación de la extensión Intlayer para VS Code](https://intlayer.org/doc/vs-code-extension).
|
|
964
1094
|
|
|
965
|
-
---
|
|
966
|
-
|
|
967
1095
|
### Ir más allá
|
|
968
1096
|
|
|
969
1097
|
Para ir más allá, puedes implementar el [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_visual_editor.md) o externalizar tu contenido usando el [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md).
|
|
@@ -67,7 +67,7 @@ Determinar el alcance del contenido de su aplicación **facilita el mantenimient
|
|
|
67
67
|
|
|
68
68
|
<Accordion header="Agente de IA">
|
|
69
69
|
|
|
70
|
-
La ubicación conjunta de contenido **reduce el contexto necesario** para los modelos de lenguajes grandes (LLM). Intlayer también viene con un conjunto de herramientas, como una **CLI** para comprobar si faltan traducciones,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** y **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/
|
|
70
|
+
La ubicación conjunta de contenido **reduce el contexto necesario** para los modelos de lenguajes grandes (LLM). Intlayer también viene con un conjunto de herramientas, como una **CLI** para comprobar si faltan traducciones,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** y **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**, para que la experiencia del desarrollador (DX) sea aún más fluida para los agentes de IA.
|
|
71
71
|
|
|
72
72
|
</Accordion>
|
|
73
73
|
|
|
@@ -94,6 +94,38 @@ Más que una simple solución i18n, Intlayer proporciona un **[editor visual] au
|
|
|
94
94
|
|
|
95
95
|
## Guía paso a paso para configurar Intlayer en una aplicación Next.js
|
|
96
96
|
|
|
97
|
+
<Tabs defaultTab="video">
|
|
98
|
+
<Tab label="Video" value="video">
|
|
99
|
+
|
|
100
|
+
<iframe title="¿La mejor solución i18n para Next.js? Descubre Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
101
|
+
|
|
102
|
+
</Tab>
|
|
103
|
+
<Tab label="Code" value="code">
|
|
104
|
+
|
|
105
|
+
<iframe
|
|
106
|
+
src="https://ide.intlayer.org/aymericzip/intlayer-next-15-template?file=intlayer.config.ts"
|
|
107
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
108
|
+
title="Demo CodeSandbox - Cómo internacionalizar tu aplicación usando Intlayer"
|
|
109
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
110
|
+
loading="lazy"
|
|
111
|
+
/>
|
|
112
|
+
|
|
113
|
+
</Tab>
|
|
114
|
+
<Tab label="Demo" value="demo">
|
|
115
|
+
|
|
116
|
+
<iframe
|
|
117
|
+
src="https://next-15-intlayer-template-xt83.vercel.app"
|
|
118
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
119
|
+
title="Demo - intlayer-next-15-template"
|
|
120
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
121
|
+
loading="lazy"
|
|
122
|
+
/>
|
|
123
|
+
|
|
124
|
+
</Tab>
|
|
125
|
+
</Tabs>
|
|
126
|
+
|
|
127
|
+
Consulta [Application Template](https://github.com/aymericzip/intlayer-next-15-template) en GitHub.
|
|
128
|
+
|
|
97
129
|
<Steps>
|
|
98
130
|
|
|
99
131
|
<Step number={1} title="Instalar dependencias">
|
|
@@ -215,6 +247,24 @@ export default withIntlayer(nextConfig);
|
|
|
215
247
|
|
|
216
248
|
> El plugin `withIntlayer()` de Next.js se utiliza para integrar Intlayer con Next.js. Garantiza la construcción de archivos de declaración de contenido y los supervisa en modo de desarrollo. Define variables de entorno de Intlayer dentro de los entornos de [Webpack](https://webpack.js.org/) o [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). Además, proporciona alias para optimizar el rendimiento y asegura la compatibilidad con componentes del servidor.
|
|
217
249
|
|
|
250
|
+
> La función `withIntlayer()` es una función promise. Permite preparar los diccionarios de intlayer antes de que comience la compilación. Si deseas utilizarla con otros plugins, puedes esperar a que se complete. Ejemplo:
|
|
251
|
+
>
|
|
252
|
+
> ```tsx
|
|
253
|
+
> const nextConfig = await withIntlayer(nextConfig);
|
|
254
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
255
|
+
>
|
|
256
|
+
> export default nextConfigWithOtherPlugins;
|
|
257
|
+
> ```
|
|
258
|
+
>
|
|
259
|
+
> Si deseas utilizarla de forma síncrona, puedes usar la función `withIntlayerSync()`. Ejemplo:
|
|
260
|
+
>
|
|
261
|
+
> ```tsx
|
|
262
|
+
> const nextConfig = withIntlayerSync(nextConfig);
|
|
263
|
+
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
264
|
+
>
|
|
265
|
+
> export default nextConfigWithOtherPlugins;
|
|
266
|
+
> ```
|
|
267
|
+
|
|
218
268
|
</Step>
|
|
219
269
|
|
|
220
270
|
<Step number={4} title="Definir Rutas Dinámicas de Localización">
|
|
@@ -234,6 +284,36 @@ export default RootLayout;
|
|
|
234
284
|
|
|
235
285
|
Para implementar el enrutamiento dinámico, proporcione la ruta para la localización agregando un nuevo layout en su directorio `[locale]`:
|
|
236
286
|
|
|
287
|
+
<Tabs>
|
|
288
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
289
|
+
|
|
290
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
291
|
+
import { type NextLayoutIntlayer } from "next-intlayer";
|
|
292
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
293
|
+
import { Inter } from "next/font/google";
|
|
294
|
+
import { getHTMLTextDir } from "intlayer";
|
|
295
|
+
|
|
296
|
+
const inter = Inter({ subsets: ["latin"] });
|
|
297
|
+
|
|
298
|
+
const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
299
|
+
const { locale } = await params;
|
|
300
|
+
return (
|
|
301
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
302
|
+
<body className={inter.className}>
|
|
303
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
304
|
+
</body>
|
|
305
|
+
</html>
|
|
306
|
+
);
|
|
307
|
+
};
|
|
308
|
+
|
|
309
|
+
export default LocaleLayout;
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
> Un único `IntlayerProvider` cubre ambas mitades del árbol: alimenta el contexto del servidor con alcance de solicitud leído por los hooks del servidor, y monta el proveedor del cliente para que los componentes del cliente reciban la misma configuración regional.
|
|
313
|
+
|
|
314
|
+
</Tab>
|
|
315
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
316
|
+
|
|
237
317
|
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
238
318
|
import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
|
|
239
319
|
import { Inter } from "next/font/google";
|
|
@@ -257,6 +337,9 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
257
337
|
export default LocaleLayout;
|
|
258
338
|
```
|
|
259
339
|
|
|
340
|
+
</Tab>
|
|
341
|
+
</Tabs>
|
|
342
|
+
|
|
260
343
|
> El segmento de ruta `[locale]` se utiliza para definir la configuración regional. Ejemplo: `/en-US/about` se referirá a `en-US` y `/fr/about` a `fr`.
|
|
261
344
|
|
|
262
345
|
> En esta etapa, encontrará el error: `Error: Missing <html> and <body> tags in the root layout.`. Esto es esperado porque el archivo `/app/page.tsx` ya no se usa y puede eliminarse. En su lugar, el segmento de ruta `[locale]` activará la página `/app/[locale]/page.tsx`. En consecuencia, las páginas serán accesibles a través de rutas como `/en`, `/fr`, `/es` en su navegador. Para establecer la configuración regional predeterminada como la página raíz, consulte la configuración del `middleware` en el paso 7.
|
|
@@ -275,6 +358,8 @@ export default LocaleLayout;
|
|
|
275
358
|
|
|
276
359
|
> `generateStaticParams` asegura que su aplicación preconstruya las páginas necesarias para todos los locales, reduciendo el cálculo en runtime y mejorando la experiencia del usuario. Para más detalles, consulte la [documentación de Next.js sobre generateStaticParams](https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic-rendering#generate-static-params).
|
|
277
360
|
|
|
361
|
+
> Intlayer funciona con `export const dynamic = 'force-static';` para garantizar que las páginas se pre-construyen para todas las locales.
|
|
362
|
+
|
|
278
363
|
</Step>
|
|
279
364
|
|
|
280
365
|
<Step number={5} title="Declare Su Contenido">
|
|
@@ -329,6 +414,44 @@ export default pageContent;
|
|
|
329
414
|
|
|
330
415
|
Acceda a sus diccionarios de contenido a lo largo de su aplicación:
|
|
331
416
|
|
|
417
|
+
<Tabs>
|
|
418
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
419
|
+
|
|
420
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
421
|
+
import type { FC } from "react";
|
|
422
|
+
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
423
|
+
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
424
|
+
import { type NextPageIntlayer, useIntlayer } from "next-intlayer";
|
|
425
|
+
|
|
426
|
+
const PageContent: FC = () => {
|
|
427
|
+
const content = useIntlayer("page");
|
|
428
|
+
|
|
429
|
+
return (
|
|
430
|
+
<>
|
|
431
|
+
<p>{content.getStarted.main}</p>
|
|
432
|
+
<code>{content.getStarted.pageLink}</code>
|
|
433
|
+
</>
|
|
434
|
+
);
|
|
435
|
+
};
|
|
436
|
+
|
|
437
|
+
const Page: NextPageIntlayer = () => (
|
|
438
|
+
<>
|
|
439
|
+
<PageContent />
|
|
440
|
+
<ServerComponentExample />
|
|
441
|
+
|
|
442
|
+
<ClientComponentExample />
|
|
443
|
+
</>
|
|
444
|
+
);
|
|
445
|
+
|
|
446
|
+
export default Page;
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
- **`IntlayerProvider`** se monta una vez, en el layout de locale. Proporciona el locale tanto a componentes de servidor como de cliente, por lo que las páginas ya no se envuelven a sí mismas.
|
|
450
|
+
- Los server hooks resuelven el locale en este orden: el locale pasado en el sitio de la llamada, luego el contexto del servidor sembrado por el provider, luego el locale llevado por la solicitud (el header `x-intlayer-locale` establecido por el proxy de Intlayer, luego la cookie de locale). Este último paso es lo que mantiene el contenido correcto en una navegación del lado del cliente que solo re-renderiza el segmento de página, donde el layout — y con él el provider — no se ejecuta nuevamente.
|
|
451
|
+
|
|
452
|
+
</Tab>
|
|
453
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
454
|
+
|
|
332
455
|
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
333
456
|
import type { FC } from "react";
|
|
334
457
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
@@ -388,6 +511,30 @@ export const ClientComponentExample: FC = () => {
|
|
|
388
511
|
};
|
|
389
512
|
```
|
|
390
513
|
|
|
514
|
+
<Tabs>
|
|
515
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
516
|
+
|
|
517
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
518
|
+
import type { FC } from "react";
|
|
519
|
+
import { useIntlayer } from "next-intlayer";
|
|
520
|
+
|
|
521
|
+
export const ServerComponentExample: FC = () => {
|
|
522
|
+
const content = useIntlayer("server-component-example"); // Crear declaración de contenido relacionada
|
|
523
|
+
|
|
524
|
+
return (
|
|
525
|
+
<div>
|
|
526
|
+
<h2>{content.title}</h2>
|
|
527
|
+
<p>{content.content}</p>
|
|
528
|
+
</div>
|
|
529
|
+
);
|
|
530
|
+
};
|
|
531
|
+
```
|
|
532
|
+
|
|
533
|
+
> `next-intlayer` es la ruta de importación isomórfica: la condición de exportación `react-server` proporciona a los componentes de servidor la implementación de locale ambiental, mientras que los componentes de cliente obtienen la implementación respaldada por contexto. La misma llamada funciona en ambos lados.
|
|
534
|
+
|
|
535
|
+
</Tab>
|
|
536
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
537
|
+
|
|
391
538
|
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
392
539
|
import type { FC } from "react";
|
|
393
540
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -404,6 +551,9 @@ export const ServerComponentExample: FC = () => {
|
|
|
404
551
|
};
|
|
405
552
|
```
|
|
406
553
|
|
|
554
|
+
</Tab>
|
|
555
|
+
</Tabs>
|
|
556
|
+
|
|
407
557
|
> Si deseas usar tu contenido en un atributo de tipo `string`, como `alt`, `title`, `href`, `aria-label`, etc., debes llamar al valor de la función, así:
|
|
408
558
|
|
|
409
559
|
> ```html
|
|
@@ -431,6 +581,23 @@ export const config = {
|
|
|
431
581
|
|
|
432
582
|
> El `intlayerMiddleware` se utiliza para detectar la configuración regional preferida del usuario y redirigirlo a la URL apropiada según lo especificado en la [configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md). Además, permite guardar la configuración regional preferida del usuario en una cookie.
|
|
433
583
|
|
|
584
|
+
> Desde Intlayer v9, este middleware respeta la opción `routing.enableProxy` (`true` por defecto). Establece `routing.enableProxy: false` en tu configuración para convertirlo en un pass-through sin eliminar este archivo. Consulta las [notas de la versión v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/releases/v9.md).
|
|
585
|
+
|
|
586
|
+
> Si necesitas encadenar varios middlewares juntos (por ejemplo, `intlayerMiddleware` con autenticación o middlewares personalizados), Intlayer ahora proporciona un helper llamado `multipleMiddlewares`.
|
|
587
|
+
|
|
588
|
+
```ts
|
|
589
|
+
import {
|
|
590
|
+
multipleMiddlewares,
|
|
591
|
+
intlayerMiddleware,
|
|
592
|
+
} from "next-intlayer/middleware";
|
|
593
|
+
import { customMiddleware } from "@utils/customMiddleware";
|
|
594
|
+
|
|
595
|
+
export const middleware = multipleMiddlewares([
|
|
596
|
+
intlayerMiddleware,
|
|
597
|
+
customMiddleware,
|
|
598
|
+
]);
|
|
599
|
+
```
|
|
600
|
+
|
|
434
601
|
</Step>
|
|
435
602
|
|
|
436
603
|
<Step number={8} title="Internacionalización de tus metadatos" isOptional={true}>
|
|
@@ -804,6 +971,33 @@ Al integrar este componente `Link` en toda su aplicación, mantiene una experien
|
|
|
804
971
|
|
|
805
972
|
<Step number={12} title="Optimice el tamaño de su paquete" isOptional={true}>
|
|
806
973
|
|
|
974
|
+
Si necesitas la configuración regional activa dentro de una Server Action (por ejemplo, para localizar correos electrónicos o ejecutar lógica consciente de la configuración regional), llama a `getLocale` desde `next-intlayer/server`:
|
|
975
|
+
|
|
976
|
+
```tsx fileName="src/app/actions/getLocale.ts" codeFormat="typescript"
|
|
977
|
+
"use server";
|
|
978
|
+
|
|
979
|
+
import { getLocale } from "next-intlayer/server";
|
|
980
|
+
|
|
981
|
+
export const myServerAction = async () => {
|
|
982
|
+
const locale = await getLocale();
|
|
983
|
+
|
|
984
|
+
// Hacer algo con la locale
|
|
985
|
+
};
|
|
986
|
+
```
|
|
987
|
+
|
|
988
|
+
> La función `getLocale` sigue una estrategia en cascada para determinar la locale del usuario:
|
|
989
|
+
>
|
|
990
|
+
> 1. Primero, comprueba los encabezados de solicitud para buscar un valor de locale que pueda haber sido establecido por el middleware
|
|
991
|
+
> 2. Si no se encuentra ninguna locale en los encabezados, busca una locale almacenada en cookies
|
|
992
|
+
> 3. Si no se encuentra ninguna cookie, intenta detectar el idioma preferido del usuario desde la configuración de su navegador
|
|
993
|
+
> 4. Como último recurso, utiliza la locale predeterminada configurada de la aplicación
|
|
994
|
+
>
|
|
995
|
+
> Esto asegura que se seleccione la locale más apropiada en función del contexto disponible.
|
|
996
|
+
|
|
997
|
+
</Step>
|
|
998
|
+
|
|
999
|
+
<Step number={13} title="Optimiza el tamaño de tu bundle" isOptional={true}>
|
|
1000
|
+
|
|
807
1001
|
Al usar `next-intlayer`, los diccionarios se incluyen en el paquete para cada página de forma predeterminada. Para optimizar el tamaño del bundle, Intlayer proporciona un plugin SWC opcional que reemplaza inteligentemente las llamadas a `useIntlayer` utilizando macros. Esto asegura que los diccionarios solo se incluyan en los paquetes de las páginas que realmente los usan.
|
|
808
1002
|
|
|
809
1003
|
Para habilitar esta optimización, instale el paquete `@intlayer/swc`. Una vez instalado, `next-intlayer` detectará y usará automáticamente el plugin:
|
|
@@ -829,6 +1023,9 @@ bun add @intlayer/swc --dev
|
|
|
829
1023
|
> Nota: Este paquete no se instala por defecto porque los plugins SWC aún son experimentales en Next.js. Esto podría cambiar en el futuro.
|
|
830
1024
|
> </Step>
|
|
831
1025
|
|
|
1026
|
+
> Nota: Si establece la opción como `importMode: 'dynamic'` o `importMode: 'fetch'` (en la configuración `dictionary`), dependerá de Suspense, por lo que tendrá que envolver sus llamadas `useIntlayer` en un límite `Suspense`. Esto significa que no podrá usar `useIntlayer` directamente en el nivel superior de su componente Page / Layout.
|
|
1027
|
+
> </Step>
|
|
1028
|
+
|
|
832
1029
|
</Steps>
|
|
833
1030
|
|
|
834
1031
|
### Monitorear cambios de diccionarios en Turbopack
|