@intlayer/docs 6.1.6-canary.0 → 7.0.0-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +14 -0
- package/blog/en/{intlayer_with_next-i18next.mdx → _intlayer_with_next-i18next.md} +69 -72
- package/blog/en/{intlayer_with_next-intl.mdx → _intlayer_with_next-intl.md} +52 -56
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +85 -80
- package/dist/cjs/_virtual/rolldown_runtime.cjs +25 -0
- package/dist/cjs/blog.cjs +20 -45
- package/dist/cjs/blog.cjs.map +1 -1
- package/dist/cjs/common.cjs +60 -136
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/doc.cjs +20 -45
- package/dist/cjs/doc.cjs.map +1 -1
- package/dist/cjs/frequentQuestions.cjs +20 -45
- package/dist/cjs/frequentQuestions.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs +438 -407
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +1407 -1118
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +286 -254
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +58 -78
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/cjs/index.cjs +33 -29
- package/dist/cjs/legal.cjs +20 -45
- package/dist/cjs/legal.cjs.map +1 -1
- package/dist/esm/blog.mjs +7 -17
- package/dist/esm/blog.mjs.map +1 -1
- package/dist/esm/common.mjs +45 -102
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/doc.mjs +7 -17
- package/dist/esm/doc.mjs.map +1 -1
- package/dist/esm/frequentQuestions.mjs +7 -17
- package/dist/esm/frequentQuestions.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +433 -382
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +1402 -1093
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +281 -229
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +53 -53
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/esm/index.mjs +6 -5
- package/dist/esm/legal.mjs +7 -17
- package/dist/esm/legal.mjs.map +1 -1
- package/dist/types/blog.d.ts +17 -12
- package/dist/types/blog.d.ts.map +1 -1
- package/dist/types/common.d.ts +30 -25
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/doc.d.ts +17 -12
- package/dist/types/doc.d.ts.map +1 -1
- package/dist/types/frequentQuestions.d.ts +17 -12
- package/dist/types/frequentQuestions.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +28 -24
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +79 -69
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts +20 -15
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts +8 -4
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -5
- package/dist/types/legal.d.ts +17 -12
- package/dist/types/legal.d.ts.map +1 -1
- package/docs/ar/CI_CD.md +4 -6
- package/docs/ar/autoFill.md +10 -8
- package/docs/ar/configuration.md +16 -10
- package/docs/ar/dictionary/content_file.md +7 -7
- package/docs/ar/dictionary/enumeration.md +4 -4
- package/docs/ar/dictionary/file.md +4 -4
- package/docs/ar/dictionary/function_fetching.md +4 -4
- package/docs/ar/dictionary/gender.md +4 -6
- package/docs/ar/dictionary/insertion.md +4 -4
- package/docs/ar/dictionary/translation.md +4 -4
- package/docs/ar/formatters.md +19 -33
- package/docs/ar/how_works_intlayer.md +5 -5
- package/docs/ar/index.md +4 -4
- package/docs/ar/interest_of_intlayer.md +7 -7
- package/docs/ar/intlayer_CMS.md +10 -8
- package/docs/ar/intlayer_cli.md +7 -7
- package/docs/ar/intlayer_visual_editor.md +5 -5
- package/docs/ar/intlayer_with_angular.md +8 -8
- package/docs/ar/intlayer_with_astro.md +244 -0
- package/docs/ar/intlayer_with_create_react_app.md +9 -8
- package/docs/ar/intlayer_with_express.md +8 -8
- package/docs/ar/intlayer_with_lynx+react.md +6 -6
- package/docs/ar/intlayer_with_nestjs.md +8 -10
- package/docs/ar/intlayer_with_nextjs_14.md +4 -4
- package/docs/ar/intlayer_with_nextjs_15.md +9 -8
- package/docs/ar/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/ar/intlayer_with_nuxt.md +8 -8
- package/docs/ar/intlayer_with_react_native+expo.md +17 -26
- package/docs/ar/intlayer_with_react_router_v7.md +199 -245
- package/docs/ar/intlayer_with_tanstack.md +203 -279
- package/docs/ar/intlayer_with_vite+preact.md +15 -15
- package/docs/ar/intlayer_with_vite+react.md +14 -14
- package/docs/ar/intlayer_with_vite+solid.md +6 -6
- package/docs/ar/intlayer_with_vite+svelte.md +6 -6
- package/docs/ar/intlayer_with_vite+vue.md +15 -15
- package/docs/ar/introduction.md +4 -4
- package/docs/ar/locale_mapper.md +4 -6
- package/docs/ar/mcp_server.md +13 -9
- package/docs/ar/packages/express-intlayer/t.md +4 -4
- package/docs/ar/packages/intlayer/getConfiguration.md +4 -4
- package/docs/ar/packages/intlayer/getEnumeration.md +4 -4
- package/docs/ar/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/ar/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/ar/packages/intlayer/getLocaleName.md +4 -4
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/ar/packages/intlayer/getTranslation.md +4 -4
- package/docs/ar/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/ar/packages/next-intlayer/t.md +4 -4
- package/docs/ar/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/ar/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/ar/packages/next-intlayer/useLocale.md +4 -4
- package/docs/ar/packages/react-intlayer/t.md +4 -4
- package/docs/ar/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/ar/packages/react-intlayer/useLocale.md +4 -4
- package/docs/ar/per_locale_file.md +4 -4
- package/docs/ar/roadmap.md +7 -5
- package/docs/ar/testing.md +4 -7
- package/docs/ar/vs_code_extension.md +13 -9
- package/docs/de/CI_CD.md +4 -6
- package/docs/de/autoFill.md +10 -8
- package/docs/de/configuration.md +16 -10
- package/docs/de/dictionary/content_file.md +7 -7
- package/docs/de/dictionary/enumeration.md +4 -4
- package/docs/de/dictionary/file.md +4 -4
- package/docs/de/dictionary/function_fetching.md +4 -4
- package/docs/de/dictionary/gender.md +4 -6
- package/docs/de/dictionary/insertion.md +4 -4
- package/docs/de/dictionary/translation.md +4 -4
- package/docs/de/formatters.md +25 -57
- package/docs/de/how_works_intlayer.md +5 -7
- package/docs/de/index.md +4 -4
- package/docs/de/interest_of_intlayer.md +7 -7
- package/docs/de/intlayer_CMS.md +10 -8
- package/docs/de/intlayer_cli.md +7 -7
- package/docs/de/intlayer_visual_editor.md +5 -6
- package/docs/de/intlayer_with_angular.md +8 -8
- package/docs/de/intlayer_with_astro.md +244 -0
- package/docs/de/intlayer_with_create_react_app.md +4 -4
- package/docs/de/intlayer_with_express.md +8 -8
- package/docs/de/intlayer_with_lynx+react.md +6 -6
- package/docs/de/intlayer_with_nestjs.md +8 -10
- package/docs/de/intlayer_with_nextjs_14.md +4 -4
- package/docs/de/intlayer_with_nextjs_15.md +9 -8
- package/docs/de/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/de/intlayer_with_nuxt.md +8 -8
- package/docs/de/intlayer_with_react_native+expo.md +17 -26
- package/docs/de/intlayer_with_react_router_v7.md +197 -246
- package/docs/de/intlayer_with_tanstack.md +198 -272
- package/docs/de/intlayer_with_vite+preact.md +15 -15
- package/docs/de/intlayer_with_vite+react.md +16 -15
- package/docs/de/intlayer_with_vite+solid.md +6 -6
- package/docs/de/intlayer_with_vite+svelte.md +6 -6
- package/docs/de/intlayer_with_vite+vue.md +17 -17
- package/docs/de/introduction.md +4 -4
- package/docs/de/locale_mapper.md +4 -6
- package/docs/de/mcp_server.md +13 -9
- package/docs/de/packages/express-intlayer/t.md +4 -4
- package/docs/de/packages/intlayer/getConfiguration.md +4 -4
- package/docs/de/packages/intlayer/getEnumeration.md +4 -4
- package/docs/de/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/de/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/de/packages/intlayer/getLocaleName.md +4 -4
- package/docs/de/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/de/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/de/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/de/packages/intlayer/getTranslation.md +4 -4
- package/docs/de/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/de/packages/next-intlayer/t.md +4 -4
- package/docs/de/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/de/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/de/packages/next-intlayer/useLocale.md +4 -4
- package/docs/de/packages/react-intlayer/t.md +4 -4
- package/docs/de/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/de/packages/react-intlayer/useI18n.md +4 -4
- package/docs/de/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/de/packages/react-intlayer/useLocale.md +4 -4
- package/docs/de/per_locale_file.md +4 -4
- package/docs/de/roadmap.md +7 -5
- package/docs/de/testing.md +4 -7
- package/docs/de/vs_code_extension.md +13 -9
- package/docs/en/CI_CD.md +4 -6
- package/docs/en/autoFill.md +75 -28
- package/docs/en/configuration.md +214 -56
- package/docs/en/dictionary/condition.md +4 -6
- package/docs/en/dictionary/content_file.md +25 -17
- package/docs/en/dictionary/enumeration.md +4 -6
- package/docs/en/dictionary/file.md +16 -8
- package/docs/en/dictionary/function_fetching.md +4 -6
- package/docs/en/dictionary/gender.md +4 -6
- package/docs/en/dictionary/insertion.md +4 -6
- package/docs/en/dictionary/markdown.md +4 -6
- package/docs/en/dictionary/nesting.md +4 -6
- package/docs/en/dictionary/translation.md +4 -6
- package/docs/en/formatters.md +23 -50
- package/docs/en/how_works_intlayer.md +6 -8
- package/docs/en/index.md +5 -7
- package/docs/en/interest_of_intlayer.md +7 -7
- package/docs/en/intlayer_CMS.md +12 -12
- package/docs/en/intlayer_cli.md +97 -14
- package/docs/en/intlayer_visual_editor.md +14 -10
- package/docs/en/intlayer_with_angular.md +10 -12
- package/docs/en/intlayer_with_astro.md +244 -0
- package/docs/en/intlayer_with_create_react_app.md +10 -12
- package/docs/en/intlayer_with_express.md +9 -11
- package/docs/en/intlayer_with_lynx+react.md +7 -9
- package/docs/en/intlayer_with_nestjs.md +8 -10
- package/docs/en/intlayer_with_next-i18next.md +627 -0
- package/docs/en/intlayer_with_next-intl.md +446 -0
- package/docs/en/intlayer_with_nextjs_14.md +66 -31
- package/docs/en/intlayer_with_nextjs_15.md +81 -35
- package/docs/en/intlayer_with_nextjs_16.md +1586 -0
- package/docs/en/intlayer_with_nextjs_page_router.md +23 -15
- package/docs/en/intlayer_with_nuxt.md +10 -12
- package/docs/en/intlayer_with_react_native+expo.md +49 -27
- package/docs/en/intlayer_with_react_router_v7.md +169 -216
- package/docs/en/intlayer_with_tanstack.md +174 -249
- package/docs/en/intlayer_with_vite+preact.md +18 -20
- package/docs/en/intlayer_with_vite+react.md +68 -317
- package/docs/en/intlayer_with_vite+solid.md +8 -10
- package/docs/en/intlayer_with_vite+svelte.md +8 -10
- package/docs/en/intlayer_with_vite+vue.md +18 -20
- package/docs/en/introduction.md +5 -7
- package/docs/en/locale_mapper.md +4 -6
- package/docs/en/mcp_server.md +13 -9
- package/docs/en/packages/express-intlayer/t.md +4 -6
- package/docs/en/packages/intlayer/getConfiguration.md +4 -6
- package/docs/en/packages/intlayer/getEnumeration.md +4 -6
- package/docs/en/packages/intlayer/getHTMLTextDir.md +4 -6
- package/docs/en/packages/intlayer/getLocaleLang.md +4 -6
- package/docs/en/packages/intlayer/getLocaleName.md +4 -6
- package/docs/en/packages/intlayer/getLocalizedUrl.md +4 -6
- package/docs/en/packages/intlayer/getMultilingualUrls.md +4 -6
- package/docs/en/packages/intlayer/getPathWithoutLocale.md +4 -6
- package/docs/en/packages/intlayer/getTranslation.md +4 -6
- package/docs/en/packages/intlayer/getTranslationContent.md +4 -6
- package/docs/en/packages/next-intlayer/t.md +4 -6
- package/docs/en/packages/next-intlayer/useDictionary.md +5 -7
- package/docs/en/packages/next-intlayer/useIntlayer.md +5 -7
- package/docs/en/packages/next-intlayer/useLocale.md +41 -8
- package/docs/en/packages/react-intlayer/t.md +4 -6
- package/docs/en/packages/react-intlayer/useDictionary.md +5 -7
- package/docs/en/packages/react-intlayer/useI18n.md +5 -5
- package/docs/en/packages/react-intlayer/useIntlayer.md +5 -7
- package/docs/en/packages/react-intlayer/useLocale.md +4 -6
- package/docs/en/per_locale_file.md +4 -6
- package/docs/en/plugins/sync-json.md +244 -0
- package/docs/en/releases/v6.md +7 -0
- package/docs/en/releases/v7.md +486 -0
- package/docs/en/roadmap.md +11 -9
- package/docs/en/testing.md +13 -11
- package/docs/en/vs_code_extension.md +13 -9
- package/docs/en-GB/CI_CD.md +4 -6
- package/docs/en-GB/autoFill.md +10 -8
- package/docs/en-GB/configuration.md +16 -10
- package/docs/en-GB/dictionary/condition.md +4 -4
- package/docs/en-GB/dictionary/content_file.md +7 -7
- package/docs/en-GB/dictionary/enumeration.md +4 -4
- package/docs/en-GB/dictionary/file.md +4 -4
- package/docs/en-GB/dictionary/gender.md +4 -6
- package/docs/en-GB/dictionary/insertion.md +4 -4
- package/docs/en-GB/dictionary/markdown.md +4 -4
- package/docs/en-GB/dictionary/nesting.md +4 -4
- package/docs/en-GB/dictionary/translation.md +4 -4
- package/docs/en-GB/formatters.md +19 -33
- package/docs/en-GB/how_works_intlayer.md +5 -5
- package/docs/en-GB/index.md +4 -4
- package/docs/en-GB/interest_of_intlayer.md +7 -7
- package/docs/en-GB/intlayer_CMS.md +15 -13
- package/docs/en-GB/intlayer_cli.md +7 -7
- package/docs/en-GB/intlayer_visual_editor.md +5 -6
- package/docs/en-GB/intlayer_with_angular.md +8 -8
- package/docs/en-GB/intlayer_with_astro.md +244 -0
- package/docs/en-GB/intlayer_with_create_react_app.md +11 -10
- package/docs/en-GB/intlayer_with_express.md +8 -8
- package/docs/en-GB/intlayer_with_lynx+react.md +5 -5
- package/docs/en-GB/intlayer_with_nestjs.md +7 -9
- package/docs/en-GB/intlayer_with_nextjs_14.md +10 -10
- package/docs/en-GB/intlayer_with_nextjs_15.md +8 -7
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +7 -7
- package/docs/en-GB/intlayer_with_nuxt.md +7 -7
- package/docs/en-GB/intlayer_with_react_native+expo.md +16 -25
- package/docs/en-GB/intlayer_with_react_router_v7.md +175 -224
- package/docs/en-GB/intlayer_with_tanstack.md +181 -255
- package/docs/en-GB/intlayer_with_vite+preact.md +14 -14
- package/docs/en-GB/intlayer_with_vite+react.md +15 -14
- package/docs/en-GB/intlayer_with_vite+solid.md +5 -5
- package/docs/en-GB/intlayer_with_vite+svelte.md +5 -5
- package/docs/en-GB/intlayer_with_vite+vue.md +16 -16
- package/docs/en-GB/introduction.md +4 -4
- package/docs/en-GB/locale_mapper.md +4 -6
- package/docs/en-GB/mcp_server.md +13 -9
- package/docs/en-GB/packages/express-intlayer/t.md +4 -4
- package/docs/en-GB/packages/intlayer/getConfiguration.md +4 -4
- package/docs/en-GB/packages/intlayer/getEnumeration.md +4 -4
- package/docs/en-GB/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/en-GB/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/en-GB/packages/intlayer/getLocaleName.md +4 -4
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/en-GB/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/en-GB/packages/intlayer/getTranslation.md +4 -4
- package/docs/en-GB/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/en-GB/packages/next-intlayer/t.md +4 -4
- package/docs/en-GB/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/en-GB/packages/next-intlayer/useIntlayer.md +5 -5
- package/docs/en-GB/packages/next-intlayer/useLocale.md +4 -4
- package/docs/en-GB/packages/react-intlayer/t.md +4 -4
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/en-GB/packages/react-intlayer/useI18n.md +4 -4
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +5 -5
- package/docs/en-GB/packages/react-intlayer/useLocale.md +4 -4
- package/docs/en-GB/per_locale_file.md +4 -4
- package/docs/en-GB/roadmap.md +7 -5
- package/docs/en-GB/testing.md +4 -7
- package/docs/en-GB/vs_code_extension.md +13 -9
- package/docs/es/CI_CD.md +4 -6
- package/docs/es/autoFill.md +10 -8
- package/docs/es/configuration.md +16 -10
- package/docs/es/dictionary/content_file.md +7 -7
- package/docs/es/dictionary/enumeration.md +4 -4
- package/docs/es/dictionary/file.md +4 -4
- package/docs/es/dictionary/function_fetching.md +4 -4
- package/docs/es/dictionary/gender.md +4 -6
- package/docs/es/dictionary/insertion.md +4 -4
- package/docs/es/dictionary/translation.md +4 -4
- package/docs/es/formatters.md +25 -57
- package/docs/es/how_works_intlayer.md +5 -5
- package/docs/es/index.md +4 -4
- package/docs/es/interest_of_intlayer.md +7 -7
- package/docs/es/intlayer_CMS.md +10 -8
- package/docs/es/intlayer_cli.md +7 -7
- package/docs/es/intlayer_visual_editor.md +5 -7
- package/docs/es/intlayer_with_angular.md +8 -8
- package/docs/es/intlayer_with_astro.md +244 -0
- package/docs/es/intlayer_with_create_react_app.md +9 -8
- package/docs/es/intlayer_with_express.md +8 -8
- package/docs/es/intlayer_with_lynx+react.md +6 -6
- package/docs/es/intlayer_with_nestjs.md +6 -8
- package/docs/es/intlayer_with_nextjs_14.md +8 -8
- package/docs/es/intlayer_with_nextjs_15.md +9 -8
- package/docs/es/intlayer_with_nextjs_page_router.md +6 -6
- package/docs/es/intlayer_with_nuxt.md +6 -6
- package/docs/es/intlayer_with_react_native+expo.md +17 -26
- package/docs/es/intlayer_with_react_router_v7.md +191 -235
- package/docs/es/intlayer_with_tanstack.md +208 -280
- package/docs/es/intlayer_with_vite+preact.md +13 -13
- package/docs/es/intlayer_with_vite+react.md +14 -13
- package/docs/es/intlayer_with_vite+solid.md +6 -6
- package/docs/es/intlayer_with_vite+svelte.md +6 -6
- package/docs/es/intlayer_with_vite+vue.md +15 -15
- package/docs/es/introduction.md +4 -4
- package/docs/es/locale_mapper.md +4 -6
- package/docs/es/mcp_server.md +13 -9
- package/docs/es/packages/express-intlayer/t.md +4 -4
- package/docs/es/packages/intlayer/getConfiguration.md +4 -4
- package/docs/es/packages/intlayer/getEnumeration.md +4 -4
- package/docs/es/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/es/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/es/packages/intlayer/getLocaleName.md +4 -4
- package/docs/es/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/es/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/es/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/es/packages/intlayer/getTranslation.md +4 -4
- package/docs/es/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/es/packages/next-intlayer/index.md +4 -4
- package/docs/es/packages/next-intlayer/t.md +4 -4
- package/docs/es/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/es/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/es/packages/next-intlayer/useLocale.md +4 -4
- package/docs/es/packages/react-intlayer/index.md +4 -4
- package/docs/es/packages/react-intlayer/t.md +4 -4
- package/docs/es/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/es/packages/react-intlayer/useI18n.md +4 -4
- package/docs/es/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/es/packages/react-intlayer/useLocale.md +4 -4
- package/docs/es/per_locale_file.md +4 -4
- package/docs/es/roadmap.md +7 -5
- package/docs/es/testing.md +4 -7
- package/docs/es/vs_code_extension.md +13 -9
- package/docs/fr/CI_CD.md +4 -4
- package/docs/fr/autoFill.md +10 -8
- package/docs/fr/configuration.md +19 -22
- package/docs/fr/dictionary/content_file.md +7 -7
- package/docs/fr/dictionary/enumeration.md +4 -4
- package/docs/fr/dictionary/file.md +4 -4
- package/docs/fr/dictionary/function_fetching.md +4 -4
- package/docs/fr/dictionary/gender.md +4 -6
- package/docs/fr/dictionary/insertion.md +4 -4
- package/docs/fr/dictionary/translation.md +4 -4
- package/docs/fr/formatters.md +25 -57
- package/docs/fr/how_works_intlayer.md +5 -5
- package/docs/fr/index.md +4 -4
- package/docs/fr/interest_of_intlayer.md +7 -7
- package/docs/fr/intlayer_CMS.md +10 -8
- package/docs/fr/intlayer_cli.md +7 -7
- package/docs/fr/intlayer_visual_editor.md +5 -6
- package/docs/fr/intlayer_with_angular.md +8 -8
- package/docs/fr/intlayer_with_astro.md +244 -0
- package/docs/fr/intlayer_with_create_react_app.md +9 -8
- package/docs/fr/intlayer_with_express.md +8 -8
- package/docs/fr/intlayer_with_lynx+react.md +6 -6
- package/docs/fr/intlayer_with_nestjs.md +8 -10
- package/docs/fr/intlayer_with_nextjs_14.md +4 -4
- package/docs/fr/intlayer_with_nextjs_15.md +7 -6
- package/docs/fr/intlayer_with_nextjs_page_router.md +6 -6
- package/docs/fr/intlayer_with_nuxt.md +6 -6
- package/docs/fr/intlayer_with_react_native+expo.md +17 -26
- package/docs/fr/intlayer_with_react_router_v7.md +192 -252
- package/docs/fr/intlayer_with_tanstack.md +197 -272
- package/docs/fr/intlayer_with_vite+preact.md +13 -13
- package/docs/fr/intlayer_with_vite+react.md +13 -13
- package/docs/fr/intlayer_with_vite+solid.md +6 -6
- package/docs/fr/intlayer_with_vite+svelte.md +6 -6
- package/docs/fr/intlayer_with_vite+vue.md +15 -15
- package/docs/fr/introduction.md +4 -4
- package/docs/fr/locale_mapper.md +4 -6
- package/docs/fr/mcp_server.md +13 -9
- package/docs/fr/packages/express-intlayer/t.md +4 -4
- package/docs/fr/packages/intlayer/getConfiguration.md +4 -4
- package/docs/fr/packages/intlayer/getEnumeration.md +4 -4
- package/docs/fr/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/fr/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/fr/packages/intlayer/getLocaleName.md +4 -4
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/fr/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/fr/packages/intlayer/getTranslation.md +4 -4
- package/docs/fr/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/fr/packages/next-intlayer/t.md +4 -4
- package/docs/fr/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/fr/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/fr/packages/next-intlayer/useLocale.md +4 -4
- package/docs/fr/packages/react-intlayer/index.md +4 -4
- package/docs/fr/packages/react-intlayer/t.md +4 -4
- package/docs/fr/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/fr/packages/react-intlayer/useI18n.md +4 -4
- package/docs/fr/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/fr/packages/react-intlayer/useLocale.md +4 -4
- package/docs/fr/per_locale_file.md +4 -4
- package/docs/fr/roadmap.md +7 -5
- package/docs/fr/testing.md +4 -7
- package/docs/fr/vs_code_extension.md +13 -9
- package/docs/hi/CI_CD.md +4 -6
- package/docs/hi/autoFill.md +10 -8
- package/docs/hi/configuration.md +16 -10
- package/docs/hi/dictionary/content_file.md +7 -7
- package/docs/hi/dictionary/enumeration.md +4 -4
- package/docs/hi/dictionary/file.md +4 -4
- package/docs/hi/dictionary/function_fetching.md +4 -4
- package/docs/hi/dictionary/gender.md +4 -6
- package/docs/hi/dictionary/insertion.md +4 -4
- package/docs/hi/dictionary/translation.md +4 -4
- package/docs/hi/formatters.md +19 -33
- package/docs/hi/how_works_intlayer.md +5 -5
- package/docs/hi/index.md +4 -4
- package/docs/hi/interest_of_intlayer.md +7 -7
- package/docs/hi/intlayer_CMS.md +10 -8
- package/docs/hi/intlayer_cli.md +8 -11
- package/docs/hi/intlayer_visual_editor.md +5 -6
- package/docs/hi/intlayer_with_angular.md +8 -8
- package/docs/hi/intlayer_with_astro.md +244 -0
- package/docs/hi/intlayer_with_create_react_app.md +4 -4
- package/docs/hi/intlayer_with_express.md +8 -8
- package/docs/hi/intlayer_with_lynx+react.md +6 -6
- package/docs/hi/intlayer_with_nestjs.md +8 -10
- package/docs/hi/intlayer_with_nextjs_14.md +4 -4
- package/docs/hi/intlayer_with_nextjs_15.md +9 -8
- package/docs/hi/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/hi/intlayer_with_nuxt.md +8 -8
- package/docs/hi/intlayer_with_react_native+expo.md +17 -26
- package/docs/hi/intlayer_with_react_router_v7.md +204 -248
- package/docs/hi/intlayer_with_tanstack.md +215 -290
- package/docs/hi/intlayer_with_vite+preact.md +15 -15
- package/docs/hi/intlayer_with_vite+react.md +16 -15
- package/docs/hi/intlayer_with_vite+solid.md +7 -7
- package/docs/hi/intlayer_with_vite+svelte.md +6 -6
- package/docs/hi/intlayer_with_vite+vue.md +17 -17
- package/docs/hi/introduction.md +4 -4
- package/docs/hi/locale_mapper.md +4 -6
- package/docs/hi/mcp_server.md +13 -9
- package/docs/hi/packages/express-intlayer/t.md +4 -4
- package/docs/hi/packages/intlayer/getConfiguration.md +4 -4
- package/docs/hi/packages/intlayer/getEnumeration.md +4 -4
- package/docs/hi/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/hi/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/hi/packages/intlayer/getLocaleName.md +4 -4
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/hi/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/hi/packages/intlayer/getTranslation.md +4 -4
- package/docs/hi/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/hi/packages/intlayer/index.md +4 -4
- package/docs/hi/packages/next-intlayer/t.md +4 -4
- package/docs/hi/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/hi/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/hi/packages/next-intlayer/useLocale.md +4 -4
- package/docs/hi/packages/react-intlayer/t.md +4 -4
- package/docs/hi/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/hi/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/hi/packages/react-intlayer/useLocale.md +4 -4
- package/docs/hi/per_locale_file.md +4 -4
- package/docs/hi/roadmap.md +7 -5
- package/docs/hi/testing.md +4 -7
- package/docs/hi/vs_code_extension.md +13 -9
- package/docs/it/CI_CD.md +4 -6
- package/docs/it/autoFill.md +10 -8
- package/docs/it/configuration.md +16 -10
- package/docs/it/dictionary/content_file.md +7 -7
- package/docs/it/dictionary/enumeration.md +4 -4
- package/docs/it/dictionary/file.md +4 -4
- package/docs/it/dictionary/function_fetching.md +4 -4
- package/docs/it/dictionary/gender.md +4 -6
- package/docs/it/dictionary/insertion.md +4 -4
- package/docs/it/dictionary/translation.md +4 -4
- package/docs/it/formatters.md +19 -55
- package/docs/it/how_works_intlayer.md +5 -5
- package/docs/it/index.md +4 -4
- package/docs/it/interest_of_intlayer.md +7 -7
- package/docs/it/intlayer_CMS.md +10 -8
- package/docs/it/intlayer_cli.md +7 -7
- package/docs/it/intlayer_visual_editor.md +5 -6
- package/docs/it/intlayer_with_angular.md +8 -8
- package/docs/it/intlayer_with_astro.md +244 -0
- package/docs/it/intlayer_with_create_react_app.md +9 -8
- package/docs/it/intlayer_with_express.md +8 -8
- package/docs/it/intlayer_with_lynx+react.md +6 -6
- package/docs/it/intlayer_with_nestjs.md +8 -10
- package/docs/it/intlayer_with_nextjs_14.md +4 -4
- package/docs/it/intlayer_with_nextjs_15.md +9 -8
- package/docs/it/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/it/intlayer_with_nuxt.md +8 -8
- package/docs/it/intlayer_with_react_native+expo.md +17 -27
- package/docs/it/intlayer_with_react_router_v7.md +198 -245
- package/docs/it/intlayer_with_tanstack.md +207 -271
- package/docs/it/intlayer_with_vite+preact.md +15 -15
- package/docs/it/intlayer_with_vite+react.md +20 -17
- package/docs/it/intlayer_with_vite+solid.md +6 -6
- package/docs/it/intlayer_with_vite+svelte.md +6 -6
- package/docs/it/intlayer_with_vite+vue.md +17 -17
- package/docs/it/introduction.md +4 -4
- package/docs/it/locale_mapper.md +4 -6
- package/docs/it/mcp_server.md +13 -9
- package/docs/it/packages/express-intlayer/t.md +4 -4
- package/docs/it/packages/intlayer/getConfiguration.md +4 -4
- package/docs/it/packages/intlayer/getEnumeration.md +4 -4
- package/docs/it/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/it/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/it/packages/intlayer/getLocaleName.md +4 -4
- package/docs/it/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/it/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/it/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/it/packages/intlayer/getTranslation.md +4 -4
- package/docs/it/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/it/packages/next-intlayer/t.md +4 -4
- package/docs/it/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/it/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/it/packages/next-intlayer/useLocale.md +4 -4
- package/docs/it/packages/react-intlayer/t.md +4 -4
- package/docs/it/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/it/packages/react-intlayer/useI18n.md +4 -4
- package/docs/it/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/it/packages/react-intlayer/useLocale.md +4 -4
- package/docs/it/per_locale_file.md +4 -4
- package/docs/it/roadmap.md +7 -5
- package/docs/it/testing.md +4 -7
- package/docs/it/vs_code_extension.md +13 -9
- package/docs/ja/CI_CD.md +4 -6
- package/docs/ja/autoFill.md +10 -8
- package/docs/ja/configuration.md +19 -22
- package/docs/ja/dictionary/content_file.md +7 -7
- package/docs/ja/dictionary/enumeration.md +4 -4
- package/docs/ja/dictionary/file.md +5 -5
- package/docs/ja/dictionary/function_fetching.md +4 -4
- package/docs/ja/dictionary/gender.md +4 -6
- package/docs/ja/dictionary/insertion.md +4 -4
- package/docs/ja/dictionary/translation.md +4 -4
- package/docs/ja/formatters.md +25 -57
- package/docs/ja/how_works_intlayer.md +5 -5
- package/docs/ja/index.md +4 -4
- package/docs/ja/interest_of_intlayer.md +7 -7
- package/docs/ja/intlayer_CMS.md +10 -9
- package/docs/ja/intlayer_cli.md +7 -7
- package/docs/ja/intlayer_visual_editor.md +5 -6
- package/docs/ja/intlayer_with_angular.md +8 -8
- package/docs/ja/intlayer_with_astro.md +244 -0
- package/docs/ja/intlayer_with_create_react_app.md +9 -8
- package/docs/ja/intlayer_with_express.md +8 -8
- package/docs/ja/intlayer_with_lynx+react.md +6 -6
- package/docs/ja/intlayer_with_nestjs.md +8 -10
- package/docs/ja/intlayer_with_nextjs_14.md +8 -8
- package/docs/ja/intlayer_with_nextjs_15.md +9 -8
- package/docs/ja/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/ja/intlayer_with_nuxt.md +8 -8
- package/docs/ja/intlayer_with_react_native+expo.md +24 -35
- package/docs/ja/intlayer_with_react_router_v7.md +207 -253
- package/docs/ja/intlayer_with_tanstack.md +220 -290
- package/docs/ja/intlayer_with_vite+preact.md +15 -15
- package/docs/ja/intlayer_with_vite+react.md +18 -17
- package/docs/ja/intlayer_with_vite+solid.md +6 -6
- package/docs/ja/intlayer_with_vite+svelte.md +6 -6
- package/docs/ja/intlayer_with_vite+vue.md +17 -17
- package/docs/ja/introduction.md +4 -4
- package/docs/ja/locale_mapper.md +4 -6
- package/docs/ja/mcp_server.md +13 -9
- package/docs/ja/packages/express-intlayer/t.md +4 -4
- package/docs/ja/packages/intlayer/getConfiguration.md +4 -4
- package/docs/ja/packages/intlayer/getEnumeration.md +4 -4
- package/docs/ja/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/ja/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/ja/packages/intlayer/getLocaleName.md +4 -4
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/ja/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/ja/packages/intlayer/getTranslation.md +4 -4
- package/docs/ja/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/ja/packages/next-intlayer/t.md +4 -4
- package/docs/ja/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/ja/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/ja/packages/next-intlayer/useLocale.md +4 -4
- package/docs/ja/packages/react-intlayer/t.md +4 -4
- package/docs/ja/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/ja/packages/react-intlayer/useI18n.md +4 -4
- package/docs/ja/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/ja/packages/react-intlayer/useLocale.md +4 -4
- package/docs/ja/per_locale_file.md +4 -4
- package/docs/ja/roadmap.md +7 -5
- package/docs/ja/testing.md +4 -7
- package/docs/ja/vs_code_extension.md +13 -9
- package/docs/ko/CI_CD.md +4 -6
- package/docs/ko/autoFill.md +10 -8
- package/docs/ko/configuration.md +19 -22
- package/docs/ko/dictionary/content_file.md +7 -7
- package/docs/ko/dictionary/enumeration.md +4 -4
- package/docs/ko/dictionary/file.md +4 -4
- package/docs/ko/dictionary/function_fetching.md +4 -4
- package/docs/ko/dictionary/gender.md +4 -6
- package/docs/ko/dictionary/insertion.md +4 -4
- package/docs/ko/dictionary/translation.md +4 -4
- package/docs/ko/formatters.md +19 -33
- package/docs/ko/how_works_intlayer.md +5 -5
- package/docs/ko/index.md +4 -4
- package/docs/ko/interest_of_intlayer.md +7 -7
- package/docs/ko/intlayer_CMS.md +10 -8
- package/docs/ko/intlayer_cli.md +7 -7
- package/docs/ko/intlayer_visual_editor.md +5 -6
- package/docs/ko/intlayer_with_angular.md +8 -8
- package/docs/ko/intlayer_with_astro.md +244 -0
- package/docs/ko/intlayer_with_create_react_app.md +9 -8
- package/docs/ko/intlayer_with_express.md +8 -8
- package/docs/ko/intlayer_with_lynx+react.md +6 -10
- package/docs/ko/intlayer_with_nestjs.md +8 -10
- package/docs/ko/intlayer_with_nextjs_14.md +8 -8
- package/docs/ko/intlayer_with_nextjs_15.md +9 -8
- package/docs/ko/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/ko/intlayer_with_nuxt.md +8 -8
- package/docs/ko/intlayer_with_react_native+expo.md +25 -34
- package/docs/ko/intlayer_with_react_router_v7.md +195 -249
- package/docs/ko/intlayer_with_tanstack.md +202 -274
- package/docs/ko/intlayer_with_vite+preact.md +15 -15
- package/docs/ko/intlayer_with_vite+react.md +17 -16
- package/docs/ko/intlayer_with_vite+solid.md +6 -6
- package/docs/ko/intlayer_with_vite+svelte.md +6 -6
- package/docs/ko/intlayer_with_vite+vue.md +17 -17
- package/docs/ko/introduction.md +4 -4
- package/docs/ko/locale_mapper.md +4 -6
- package/docs/ko/mcp_server.md +13 -9
- package/docs/ko/packages/express-intlayer/t.md +4 -4
- package/docs/ko/packages/intlayer/getConfiguration.md +4 -4
- package/docs/ko/packages/intlayer/getEnumeration.md +4 -4
- package/docs/ko/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/ko/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/ko/packages/intlayer/getLocaleName.md +4 -4
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +7 -16
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/ko/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/ko/packages/intlayer/getTranslation.md +4 -4
- package/docs/ko/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/ko/packages/next-intlayer/t.md +4 -4
- package/docs/ko/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/ko/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/ko/packages/next-intlayer/useLocale.md +4 -4
- package/docs/ko/packages/react-intlayer/t.md +4 -4
- package/docs/ko/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/ko/packages/react-intlayer/useI18n.md +4 -4
- package/docs/ko/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/ko/packages/react-intlayer/useLocale.md +4 -4
- package/docs/ko/per_locale_file.md +4 -4
- package/docs/ko/roadmap.md +7 -5
- package/docs/ko/testing.md +4 -7
- package/docs/ko/vs_code_extension.md +13 -9
- package/docs/pt/CI_CD.md +4 -6
- package/docs/pt/autoFill.md +10 -8
- package/docs/pt/configuration.md +16 -22
- package/docs/pt/dictionary/content_file.md +7 -7
- package/docs/pt/dictionary/enumeration.md +4 -4
- package/docs/pt/dictionary/file.md +4 -4
- package/docs/pt/dictionary/function_fetching.md +4 -4
- package/docs/pt/dictionary/gender.md +4 -6
- package/docs/pt/dictionary/insertion.md +4 -4
- package/docs/pt/dictionary/translation.md +4 -4
- package/docs/pt/formatters.md +19 -33
- package/docs/pt/how_works_intlayer.md +5 -5
- package/docs/pt/index.md +4 -4
- package/docs/pt/interest_of_intlayer.md +7 -7
- package/docs/pt/intlayer_CMS.md +10 -8
- package/docs/pt/intlayer_cli.md +7 -7
- package/docs/pt/intlayer_visual_editor.md +5 -6
- package/docs/pt/intlayer_with_angular.md +8 -8
- package/docs/pt/intlayer_with_astro.md +244 -0
- package/docs/pt/intlayer_with_create_react_app.md +9 -8
- package/docs/pt/intlayer_with_express.md +8 -8
- package/docs/pt/intlayer_with_lynx+react.md +6 -6
- package/docs/pt/intlayer_with_nestjs.md +8 -10
- package/docs/pt/intlayer_with_nextjs_14.md +4 -4
- package/docs/pt/intlayer_with_nextjs_15.md +9 -8
- package/docs/pt/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/pt/intlayer_with_nuxt.md +8 -8
- package/docs/pt/intlayer_with_react_native+expo.md +17 -26
- package/docs/pt/intlayer_with_react_router_v7.md +10 -18
- package/docs/pt/intlayer_with_tanstack.md +189 -266
- package/docs/pt/intlayer_with_vite+preact.md +15 -15
- package/docs/pt/intlayer_with_vite+react.md +16 -15
- package/docs/pt/intlayer_with_vite+solid.md +6 -6
- package/docs/pt/intlayer_with_vite+svelte.md +6 -6
- package/docs/pt/intlayer_with_vite+vue.md +15 -15
- package/docs/pt/introduction.md +4 -5
- package/docs/pt/locale_mapper.md +4 -6
- package/docs/pt/mcp_server.md +13 -9
- package/docs/pt/packages/express-intlayer/t.md +4 -4
- package/docs/pt/packages/intlayer/getConfiguration.md +4 -4
- package/docs/pt/packages/intlayer/getEnumeration.md +4 -4
- package/docs/pt/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/pt/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/pt/packages/intlayer/getLocaleName.md +4 -4
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/pt/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/pt/packages/intlayer/getTranslation.md +4 -4
- package/docs/pt/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/pt/packages/next-intlayer/t.md +4 -4
- package/docs/pt/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/pt/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/pt/packages/next-intlayer/useLocale.md +4 -4
- package/docs/pt/packages/react-intlayer/t.md +4 -4
- package/docs/pt/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/pt/packages/react-intlayer/useI18n.md +4 -4
- package/docs/pt/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/pt/packages/react-intlayer/useLocale.md +4 -4
- package/docs/pt/per_locale_file.md +4 -4
- package/docs/pt/roadmap.md +7 -5
- package/docs/pt/testing.md +4 -7
- package/docs/pt/vs_code_extension.md +13 -9
- package/docs/ru/CI_CD.md +4 -6
- package/docs/ru/autoFill.md +10 -8
- package/docs/ru/configuration.md +16 -10
- package/docs/ru/dictionary/content_file.md +7 -7
- package/docs/ru/dictionary/enumeration.md +4 -4
- package/docs/ru/dictionary/file.md +4 -4
- package/docs/ru/dictionary/function_fetching.md +4 -4
- package/docs/ru/dictionary/gender.md +4 -6
- package/docs/ru/dictionary/insertion.md +4 -4
- package/docs/ru/dictionary/translation.md +4 -4
- package/docs/ru/formatters.md +20 -77
- package/docs/ru/how_works_intlayer.md +5 -5
- package/docs/ru/index.md +4 -4
- package/docs/ru/interest_of_intlayer.md +7 -7
- package/docs/ru/intlayer_CMS.md +10 -8
- package/docs/ru/intlayer_cli.md +7 -7
- package/docs/ru/intlayer_visual_editor.md +5 -5
- package/docs/ru/intlayer_with_angular.md +8 -8
- package/docs/ru/intlayer_with_astro.md +244 -0
- package/docs/ru/intlayer_with_create_react_app.md +9 -8
- package/docs/ru/intlayer_with_express.md +8 -8
- package/docs/ru/intlayer_with_lynx+react.md +6 -6
- package/docs/ru/intlayer_with_nestjs.md +8 -10
- package/docs/ru/intlayer_with_nextjs_14.md +4 -4
- package/docs/ru/intlayer_with_nextjs_15.md +9 -8
- package/docs/ru/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/ru/intlayer_with_nuxt.md +8 -8
- package/docs/ru/intlayer_with_react_native+expo.md +17 -26
- package/docs/ru/intlayer_with_react_router_v7.md +197 -243
- package/docs/ru/intlayer_with_tanstack.md +203 -277
- package/docs/ru/intlayer_with_vite+preact.md +15 -15
- package/docs/ru/intlayer_with_vite+react.md +16 -15
- package/docs/ru/intlayer_with_vite+solid.md +6 -6
- package/docs/ru/intlayer_with_vite+svelte.md +6 -6
- package/docs/ru/intlayer_with_vite+vue.md +17 -17
- package/docs/ru/introduction.md +4 -4
- package/docs/ru/locale_mapper.md +4 -6
- package/docs/ru/mcp_server.md +13 -9
- package/docs/ru/packages/express-intlayer/t.md +4 -4
- package/docs/ru/packages/intlayer/getConfiguration.md +4 -4
- package/docs/ru/packages/intlayer/getEnumeration.md +4 -4
- package/docs/ru/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/ru/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/ru/packages/intlayer/getLocaleName.md +4 -4
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +4 -4
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/ru/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/ru/packages/intlayer/getTranslation.md +4 -4
- package/docs/ru/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/ru/packages/next-intlayer/t.md +4 -4
- package/docs/ru/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/ru/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/ru/packages/next-intlayer/useLocale.md +4 -4
- package/docs/ru/packages/react-intlayer/t.md +4 -4
- package/docs/ru/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/ru/packages/react-intlayer/useI18n.md +4 -4
- package/docs/ru/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/ru/packages/react-intlayer/useLocale.md +4 -4
- package/docs/ru/per_locale_file.md +4 -4
- package/docs/ru/roadmap.md +7 -5
- package/docs/ru/testing.md +4 -7
- package/docs/ru/vs_code_extension.md +13 -9
- package/docs/tr/CI_CD.md +4 -6
- package/docs/tr/autoFill.md +10 -8
- package/docs/tr/configuration.md +19 -22
- package/docs/tr/dictionary/condition.md +4 -10
- package/docs/tr/dictionary/content_file.md +7 -7
- package/docs/tr/dictionary/enumeration.md +4 -10
- package/docs/tr/dictionary/file.md +4 -10
- package/docs/tr/dictionary/function_fetching.md +4 -10
- package/docs/tr/dictionary/gender.md +4 -10
- package/docs/tr/dictionary/insertion.md +4 -10
- package/docs/tr/dictionary/markdown.md +4 -10
- package/docs/tr/dictionary/nesting.md +4 -10
- package/docs/tr/dictionary/translation.md +4 -10
- package/docs/tr/formatters.md +19 -33
- package/docs/tr/how_works_intlayer.md +6 -8
- package/docs/tr/index.md +5 -7
- package/docs/tr/interest_of_intlayer.md +7 -7
- package/docs/tr/intlayer_CMS.md +10 -8
- package/docs/tr/intlayer_cli.md +8 -8
- package/docs/tr/intlayer_visual_editor.md +5 -7
- package/docs/tr/intlayer_with_angular.md +10 -12
- package/docs/tr/intlayer_with_astro.md +244 -0
- package/docs/tr/intlayer_with_create_react_app.md +10 -12
- package/docs/tr/intlayer_with_express.md +9 -11
- package/docs/tr/intlayer_with_lynx+react.md +7 -9
- package/docs/tr/intlayer_with_nestjs.md +8 -10
- package/docs/tr/intlayer_with_nextjs_14.md +11 -11
- package/docs/tr/intlayer_with_nextjs_15.md +14 -13
- package/docs/tr/intlayer_with_nextjs_page_router.md +14 -14
- package/docs/tr/intlayer_with_nuxt.md +10 -12
- package/docs/tr/intlayer_with_react_native+expo.md +18 -29
- package/docs/tr/intlayer_with_react_router_v7.md +225 -270
- package/docs/tr/intlayer_with_tanstack.md +401 -304
- package/docs/tr/intlayer_with_vite+preact.md +18 -24
- package/docs/tr/intlayer_with_vite+react.md +18 -24
- package/docs/tr/intlayer_with_vite+solid.md +8 -14
- package/docs/tr/intlayer_with_vite+svelte.md +8 -14
- package/docs/tr/intlayer_with_vite+vue.md +18 -24
- package/docs/tr/introduction.md +5 -7
- package/docs/tr/locale_mapper.md +4 -6
- package/docs/tr/mcp_server.md +13 -9
- package/docs/tr/packages/express-intlayer/t.md +4 -6
- package/docs/tr/packages/intlayer/getConfiguration.md +4 -10
- package/docs/tr/packages/intlayer/getEnumeration.md +4 -10
- package/docs/tr/packages/intlayer/getHTMLTextDir.md +4 -10
- package/docs/tr/packages/intlayer/getLocaleLang.md +4 -10
- package/docs/tr/packages/intlayer/getLocaleName.md +4 -10
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +4 -10
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +4 -10
- package/docs/tr/packages/intlayer/getPathWithoutLocale.md +4 -10
- package/docs/tr/packages/intlayer/getTranslation.md +4 -10
- package/docs/tr/packages/intlayer/getTranslationContent.md +4 -10
- package/docs/tr/packages/next-intlayer/t.md +4 -6
- package/docs/tr/packages/next-intlayer/useDictionary.md +4 -6
- package/docs/tr/packages/next-intlayer/useIntlayer.md +4 -6
- package/docs/tr/packages/next-intlayer/useLocale.md +4 -6
- package/docs/tr/packages/react-intlayer/t.md +4 -6
- package/docs/tr/packages/react-intlayer/useDictionary.md +10 -273
- package/docs/tr/packages/react-intlayer/useI18n.md +5 -5
- package/docs/tr/packages/react-intlayer/useIntlayer.md +4 -6
- package/docs/tr/packages/react-intlayer/useLocale.md +4 -6
- package/docs/tr/per_locale_file.md +4 -6
- package/docs/tr/roadmap.md +11 -9
- package/docs/tr/testing.md +4 -7
- package/docs/tr/vs_code_extension.md +13 -9
- package/docs/zh/CI_CD.md +4 -6
- package/docs/zh/autoFill.md +10 -8
- package/docs/zh/configuration.md +19 -22
- package/docs/zh/dictionary/content_file.md +7 -7
- package/docs/zh/dictionary/enumeration.md +4 -4
- package/docs/zh/dictionary/file.md +4 -4
- package/docs/zh/dictionary/function_fetching.md +4 -4
- package/docs/zh/dictionary/gender.md +4 -6
- package/docs/zh/dictionary/insertion.md +4 -4
- package/docs/zh/dictionary/translation.md +4 -4
- package/docs/zh/formatters.md +19 -55
- package/docs/zh/how_works_intlayer.md +5 -5
- package/docs/zh/index.md +4 -4
- package/docs/zh/interest_of_intlayer.md +7 -7
- package/docs/zh/intlayer_CMS.md +10 -9
- package/docs/zh/intlayer_cli.md +7 -7
- package/docs/zh/intlayer_visual_editor.md +5 -6
- package/docs/zh/intlayer_with_angular.md +8 -8
- package/docs/zh/intlayer_with_astro.md +244 -0
- package/docs/zh/intlayer_with_create_react_app.md +9 -8
- package/docs/zh/intlayer_with_express.md +8 -8
- package/docs/zh/intlayer_with_lynx+react.md +6 -6
- package/docs/zh/intlayer_with_nestjs.md +8 -10
- package/docs/zh/intlayer_with_nextjs_14.md +8 -8
- package/docs/zh/intlayer_with_nextjs_15.md +9 -8
- package/docs/zh/intlayer_with_nextjs_page_router.md +8 -8
- package/docs/zh/intlayer_with_nuxt.md +8 -8
- package/docs/zh/intlayer_with_react_native+expo.md +25 -34
- package/docs/zh/intlayer_with_react_router_v7.md +204 -252
- package/docs/zh/intlayer_with_tanstack.md +211 -288
- package/docs/zh/intlayer_with_vite+preact.md +15 -15
- package/docs/zh/intlayer_with_vite+react.md +16 -15
- package/docs/zh/intlayer_with_vite+solid.md +6 -6
- package/docs/zh/intlayer_with_vite+svelte.md +6 -6
- package/docs/zh/intlayer_with_vite+vue.md +15 -15
- package/docs/zh/introduction.md +4 -4
- package/docs/zh/locale_mapper.md +4 -6
- package/docs/zh/mcp_server.md +13 -9
- package/docs/zh/packages/express-intlayer/t.md +4 -4
- package/docs/zh/packages/intlayer/getConfiguration.md +4 -4
- package/docs/zh/packages/intlayer/getEnumeration.md +4 -4
- package/docs/zh/packages/intlayer/getHTMLTextDir.md +4 -4
- package/docs/zh/packages/intlayer/getLocaleLang.md +4 -4
- package/docs/zh/packages/intlayer/getLocaleName.md +4 -4
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +7 -16
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +4 -4
- package/docs/zh/packages/intlayer/getPathWithoutLocale.md +4 -4
- package/docs/zh/packages/intlayer/getTranslation.md +4 -4
- package/docs/zh/packages/intlayer/getTranslationContent.md +4 -4
- package/docs/zh/packages/next-intlayer/t.md +4 -4
- package/docs/zh/packages/next-intlayer/useDictionary.md +4 -4
- package/docs/zh/packages/next-intlayer/useIntlayer.md +4 -4
- package/docs/zh/packages/next-intlayer/useLocale.md +4 -4
- package/docs/zh/packages/react-intlayer/t.md +4 -4
- package/docs/zh/packages/react-intlayer/useDictionary.md +4 -4
- package/docs/zh/packages/react-intlayer/useI18n.md +4 -4
- package/docs/zh/packages/react-intlayer/useIntlayer.md +4 -4
- package/docs/zh/packages/react-intlayer/useLocale.md +4 -4
- package/docs/zh/per_locale_file.md +4 -4
- package/docs/zh/roadmap.md +7 -5
- package/docs/zh/testing.md +4 -7
- package/docs/zh/vs_code_extension.md +13 -9
- package/frequent_questions/ar/bun_set_up.md +54 -0
- package/frequent_questions/de/bun_set_up.md +54 -0
- package/frequent_questions/en/bun_set_up.md +54 -0
- package/frequent_questions/en-GB/bun_set_up.md +54 -0
- package/frequent_questions/es/bun_set_up.md +54 -0
- package/frequent_questions/fr/bun_set_up.md +54 -0
- package/frequent_questions/hi/bun_set_up.md +55 -0
- package/frequent_questions/it/bun_set_up.md +55 -0
- package/frequent_questions/ja/bun_set_up.md +54 -0
- package/frequent_questions/ko/bun_set_up.md +54 -0
- package/frequent_questions/pt/bun_set_up.md +55 -0
- package/frequent_questions/ru/bun_set_up.md +55 -0
- package/frequent_questions/tr/bun_set_up.md +55 -0
- package/frequent_questions/zh/bun_set_up.md +54 -0
- package/package.json +42 -47
- package/src/blog.ts +16 -8
- package/src/common.ts +7 -8
- package/src/doc.ts +18 -8
- package/src/frequentQuestions.ts +23 -8
- package/src/generated/blog.entry.ts +152 -84
- package/src/generated/docs.entry.ts +536 -219
- package/src/generated/frequentQuestions.entry.ts +122 -56
- package/src/generated/legal.entry.ts +32 -24
- package/src/legal.ts +16 -8
- package/LICENSE +0 -202
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/docs/de/packages/@intlayer/api/index.md +0 -56
- package/docs/de/packages/@intlayer/chokidar/index.md +0 -56
- package/docs/de/packages/@intlayer/cli/index.md +0 -45
- package/docs/de/packages/@intlayer/config/index.md +0 -140
- package/docs/de/packages/@intlayer/core/index.md +0 -49
- package/docs/de/packages/@intlayer/design-system/index.md +0 -45
- package/docs/de/packages/@intlayer/dictionary-entry/index.md +0 -45
- package/docs/de/packages/@intlayer/editor/index.md +0 -45
- package/docs/de/packages/@intlayer/editor-react/index.md +0 -45
- package/docs/de/packages/@intlayer/webpack/index.md +0 -59
- package/docs/de/packages/angular-intlayer/index.md +0 -53
- package/docs/de/packages/express-intlayer/index.md +0 -284
- package/docs/de/packages/intlayer/index.md +0 -500
- package/docs/de/packages/intlayer-cli/index.md +0 -65
- package/docs/de/packages/intlayer-editor/index.md +0 -137
- package/docs/de/packages/lynx-intlayer/index.md +0 -83
- package/docs/de/packages/next-intlayer/index.md +0 -285
- package/docs/de/packages/nuxt-intlayer/index.md +0 -53
- package/docs/de/packages/preact-intlayer/index.md +0 -53
- package/docs/de/packages/react-intlayer/index.md +0 -280
- package/docs/de/packages/react-native-intlayer/index.md +0 -83
- package/docs/de/packages/react-scripts-intlayer/index.md +0 -80
- package/docs/de/packages/solid-intlayer/index.md +0 -54
- package/docs/de/packages/svelte-intlayer/index.md +0 -53
- package/docs/de/packages/vite-intlayer/index.md +0 -76
- package/docs/de/packages/vue-intlayer/index.md +0 -53
- package/docs/es/packages/angular-intlayer/index.md +0 -53
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-09
|
|
3
3
|
updatedAt: 2025-09-09
|
|
4
|
-
title:
|
|
4
|
+
title: Como traduzir seu Tanstack Start – guia i18n 2025
|
|
5
5
|
description: Aprenda como adicionar internacionalização (i18n) à sua aplicação Tanstack Start usando Intlayer. Siga este guia completo para tornar seu app multilíngue com roteamento sensível ao locale.
|
|
6
6
|
keywords:
|
|
7
7
|
- Internacionalização
|
|
@@ -15,27 +15,29 @@ keywords:
|
|
|
15
15
|
slugs:
|
|
16
16
|
- doc
|
|
17
17
|
- environment
|
|
18
|
-
- vite-and-react
|
|
19
18
|
- tanstack-start
|
|
20
|
-
applicationTemplate: https://github.com/
|
|
21
|
-
|
|
19
|
+
applicationTemplate: https://github.com/aymericzip/intlayer-tanstack-start-template
|
|
20
|
+
history:
|
|
21
|
+
- version: 5.8.1
|
|
22
|
+
date: 2025-09-09
|
|
23
|
+
changes: Adicionado para Tanstack Start
|
|
22
24
|
---
|
|
23
25
|
|
|
24
|
-
#
|
|
26
|
+
# Traduza seu Tanstack Start com Intlayer | Internacionalização (i18n)
|
|
25
27
|
|
|
26
28
|
Este guia demonstra como integrar o **Intlayer** para uma internacionalização perfeita em projetos Tanstack Start com roteamento sensível ao locale, suporte a TypeScript e práticas modernas de desenvolvimento.
|
|
27
29
|
|
|
28
30
|
## O que é o Intlayer?
|
|
29
31
|
|
|
30
|
-
**Intlayer** é uma biblioteca inovadora e
|
|
32
|
+
**Intlayer** é uma biblioteca inovadora e de código aberto para internacionalização (i18n) projetada para simplificar o suporte multilíngue em aplicações web modernas.
|
|
31
33
|
|
|
32
34
|
Com o Intlayer, você pode:
|
|
33
35
|
|
|
34
36
|
- **Gerenciar traduções facilmente** usando dicionários declarativos no nível do componente.
|
|
35
37
|
- **Localizar dinamicamente metadados**, rotas e conteúdo.
|
|
36
38
|
- **Garantir suporte a TypeScript** com tipos gerados automaticamente, melhorando o autocompletar e a detecção de erros.
|
|
37
|
-
- **
|
|
38
|
-
- **
|
|
39
|
+
- **Aproveitar recursos avançados**, como detecção e troca dinâmica de locale.
|
|
40
|
+
- **Ativar roteamento sensível ao locale** com o sistema de roteamento baseado em arquivos do Tanstack Start.
|
|
39
41
|
|
|
40
42
|
---
|
|
41
43
|
|
|
@@ -43,7 +45,7 @@ Com o Intlayer, você pode:
|
|
|
43
45
|
|
|
44
46
|
### Passo 1: Criar o Projeto
|
|
45
47
|
|
|
46
|
-
Comece criando um novo projeto TanStack Start seguindo o guia [
|
|
48
|
+
Comece criando um novo projeto TanStack Start seguindo o guia [Iniciar novo projeto](https://tanstack.com/start/latest/docs/framework/react/quick-start) no site do TanStack Start.
|
|
47
49
|
|
|
48
50
|
### Passo 2: Instalar os Pacotes do Intlayer
|
|
49
51
|
|
|
@@ -69,13 +71,13 @@ pnpm add vite-intlayer --save-dev
|
|
|
69
71
|
O pacote que integra o Intlayer com aplicações React. Ele fornece provedores de contexto e hooks para internacionalização em React.
|
|
70
72
|
|
|
71
73
|
- **vite-intlayer**
|
|
72
|
-
Inclui o plugin Vite para integrar o Intlayer com o [empacotador Vite](https://vite.dev/guide/why.html#why-bundle-for-production),
|
|
74
|
+
Inclui o plugin Vite para integrar o Intlayer com o [empacotador Vite](https://vite.dev/guide/why.html#why-bundle-for-production), assim como middleware para detectar o locale preferido do usuário, gerenciar cookies e lidar com redirecionamento de URLs.
|
|
73
75
|
|
|
74
76
|
### Passo 3: Configuração do seu projeto
|
|
75
77
|
|
|
76
78
|
Crie um arquivo de configuração para configurar os idiomas da sua aplicação:
|
|
77
79
|
|
|
78
|
-
```typescript fileName="intlayer.config.ts"
|
|
80
|
+
```typescript fileName="intlayer.config.ts"
|
|
79
81
|
import type { IntlayerConfig } from "intlayer";
|
|
80
82
|
|
|
81
83
|
import { Locales } from "intlayer";
|
|
@@ -83,90 +85,40 @@ import { Locales } from "intlayer";
|
|
|
83
85
|
const config: IntlayerConfig = {
|
|
84
86
|
internationalization: {
|
|
85
87
|
defaultLocale: Locales.ENGLISH,
|
|
86
|
-
locales: [
|
|
87
|
-
Locales.ENGLISH,
|
|
88
|
-
Locales.FRENCH,
|
|
89
|
-
Locales.SPANISH,
|
|
90
|
-
// Seus outros idiomas
|
|
91
|
-
],
|
|
88
|
+
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
|
|
92
89
|
},
|
|
93
90
|
};
|
|
94
91
|
|
|
95
92
|
export default config;
|
|
96
93
|
```
|
|
97
94
|
|
|
98
|
-
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
99
|
-
import { Locales } from "intlayer";
|
|
100
|
-
|
|
101
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
102
|
-
const config = {
|
|
103
|
-
internationalization: {
|
|
104
|
-
defaultLocale: Locales.ENGLISH,
|
|
105
|
-
locales: [
|
|
106
|
-
Locales.ENGLISH,
|
|
107
|
-
Locales.FRENCH,
|
|
108
|
-
Locales.SPANISH,
|
|
109
|
-
// Seus outros idiomas
|
|
110
|
-
],
|
|
111
|
-
},
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
export default config;
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
118
|
-
const { Locales } = require("intlayer");
|
|
119
|
-
|
|
120
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
121
|
-
const config = {
|
|
122
|
-
internationalization: {
|
|
123
|
-
defaultLocale: Locales.ENGLISH,
|
|
124
|
-
locales: [
|
|
125
|
-
Locales.ENGLISH,
|
|
126
|
-
Locales.FRENCH,
|
|
127
|
-
Locales.SPANISH,
|
|
128
|
-
// Seus outros idiomas
|
|
129
|
-
],
|
|
130
|
-
},
|
|
131
|
-
};
|
|
132
|
-
|
|
133
|
-
module.exports = config;
|
|
134
|
-
```
|
|
135
|
-
|
|
136
95
|
> Através deste arquivo de configuração, você pode configurar URLs localizadas, redirecionamento de middleware, nomes de cookies, a localização e extensão das suas declarações de conteúdo, desabilitar logs do Intlayer no console, e muito mais. Para uma lista completa dos parâmetros disponíveis, consulte a [documentação de configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md).
|
|
137
96
|
|
|
138
97
|
### Passo 4: Integre o Intlayer na sua Configuração do Vite
|
|
139
98
|
|
|
140
99
|
Adicione o plugin intlayer na sua configuração:
|
|
141
100
|
|
|
142
|
-
```typescript fileName="vite.config.ts"
|
|
101
|
+
```typescript fileName="vite.config.ts"
|
|
143
102
|
import { reactRouter } from "@react-router/dev/vite";
|
|
144
103
|
import { defineConfig } from "vite";
|
|
145
|
-
import {
|
|
104
|
+
import { intlayer } from "vite-intlayer";
|
|
146
105
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
147
106
|
|
|
148
107
|
export default defineConfig({
|
|
149
|
-
plugins: [
|
|
150
|
-
reactRouter(),
|
|
151
|
-
tsconfigPaths(),
|
|
152
|
-
intlayer(),
|
|
153
|
-
intlayerMiddlewarePlugin(),
|
|
154
|
-
],
|
|
108
|
+
plugins: [reactRouter(), tsconfigPaths(), intlayer()],
|
|
155
109
|
});
|
|
156
110
|
```
|
|
157
111
|
|
|
158
|
-
> O plugin `intlayer()`
|
|
112
|
+
> O plugin `intlayer()` para Vite é usado para integrar o Intlayer com o Vite. Ele garante a construção dos arquivos de declaração de conteúdo e os monitora no modo de desenvolvimento. Define as variáveis de ambiente do Intlayer dentro da aplicação Vite. Além disso, fornece aliases para otimizar o desempenho.
|
|
159
113
|
|
|
160
114
|
### Passo 5: Crie Componentes de Layout
|
|
161
115
|
|
|
162
|
-
Configure seu layout raiz e layouts específicos
|
|
116
|
+
Configure seu layout raiz e layouts específicos para cada localidade:
|
|
163
117
|
|
|
164
118
|
#### Layout Raiz
|
|
165
119
|
|
|
166
|
-
```tsx fileName="src/routes/{-$locale}/route.tsx"
|
|
167
|
-
// src/routes/{-$locale}/route.tsx
|
|
120
|
+
```tsx fileName="src/routes/{-$locale}/route.tsx"
|
|
168
121
|
import { createFileRoute, Navigate, Outlet } from "@tanstack/react-router";
|
|
169
|
-
import { configuration } from "intlayer";
|
|
170
122
|
import { IntlayerProvider, useLocale } from "react-intlayer";
|
|
171
123
|
|
|
172
124
|
import { useI18nHTMLAttributes } from "@/hooks/useI18nHTMLAttributes";
|
|
@@ -176,10 +128,11 @@ export const Route = createFileRoute("/{-$locale}")({
|
|
|
176
128
|
});
|
|
177
129
|
|
|
178
130
|
function LayoutComponent() {
|
|
131
|
+
const { defaultLocale } = useLocale();
|
|
179
132
|
const { locale } = Route.useParams();
|
|
180
133
|
|
|
181
134
|
return (
|
|
182
|
-
<IntlayerProvider locale={
|
|
135
|
+
<IntlayerProvider locale={defaultLocale}>
|
|
183
136
|
<Outlet />
|
|
184
137
|
</IntlayerProvider>
|
|
185
138
|
);
|
|
@@ -190,7 +143,7 @@ function LayoutComponent() {
|
|
|
190
143
|
|
|
191
144
|
Crie e gerencie suas declarações de conteúdo para armazenar traduções:
|
|
192
145
|
|
|
193
|
-
```tsx fileName="src/contents/page.content.ts"
|
|
146
|
+
```tsx fileName="src/contents/page.content.ts"
|
|
194
147
|
import type { Dictionary } from "intlayer";
|
|
195
148
|
|
|
196
149
|
import { t } from "intlayer";
|
|
@@ -199,30 +152,31 @@ const appContent = {
|
|
|
199
152
|
content: {
|
|
200
153
|
links: {
|
|
201
154
|
about: t({
|
|
155
|
+
pt: "Sobre",
|
|
202
156
|
en: "About",
|
|
203
157
|
es: "Acerca de",
|
|
204
158
|
fr: "À propos",
|
|
205
159
|
}),
|
|
206
160
|
home: t({
|
|
161
|
+
pt: "Início",
|
|
207
162
|
en: "Home",
|
|
208
163
|
es: "Inicio",
|
|
209
164
|
fr: "Accueil",
|
|
210
|
-
pt: "Início",
|
|
211
165
|
}),
|
|
212
166
|
},
|
|
213
167
|
meta: {
|
|
214
168
|
description: t({
|
|
169
|
+
pt: "Este é um exemplo de uso do Intlayer com TanStack Router",
|
|
215
170
|
en: "This is an example of using Intlayer with TanStack Router",
|
|
216
171
|
es: "Este es un ejemplo de uso de Intlayer con TanStack Router",
|
|
217
172
|
fr: "Ceci est un exemple d'utilisation d'Intlayer avec TanStack Router",
|
|
218
|
-
pt: "Este é um exemplo de uso do Intlayer com TanStack Router",
|
|
219
173
|
}),
|
|
220
174
|
},
|
|
221
175
|
title: t({
|
|
176
|
+
pt: "Bem-vindo ao Intlayer + TanStack Router",
|
|
222
177
|
en: "Welcome to Intlayer + TanStack Router",
|
|
223
178
|
es: "Bienvenido a Intlayer + TanStack Router",
|
|
224
179
|
fr: "Bienvenue à Intlayer + TanStack Router",
|
|
225
|
-
pt: "Bem-vindo ao Intlayer + TanStack Router",
|
|
226
180
|
}),
|
|
227
181
|
},
|
|
228
182
|
key: "app",
|
|
@@ -235,63 +189,103 @@ export default appContent;
|
|
|
235
189
|
|
|
236
190
|
> Para mais detalhes, consulte a [documentação de declaração de conteúdo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/get_started.md).
|
|
237
191
|
|
|
238
|
-
### Passo 7:
|
|
192
|
+
### Passo 7: Crie Componentes e Hooks Sensíveis ao Locale
|
|
239
193
|
|
|
240
194
|
Crie um componente `LocalizedLink` para navegação sensível ao locale:
|
|
241
195
|
|
|
242
|
-
```tsx fileName="src/components/localized-link.tsx"
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
import { Link, type
|
|
246
|
-
import { getLocalizedUrl } from "intlayer";
|
|
196
|
+
```tsx fileName="src/components/localized-link.tsx"
|
|
197
|
+
import type { FC } from "react";
|
|
198
|
+
|
|
199
|
+
import { Link, type LinkComponentProps } from "@tanstack/react-router";
|
|
247
200
|
import { useLocale } from "react-intlayer";
|
|
248
201
|
|
|
202
|
+
export const LOCALE_ROUTE = "{-$locale}" as const;
|
|
203
|
+
|
|
204
|
+
// Utilitário principal
|
|
205
|
+
export type RemoveLocaleParam<T> = T extends string
|
|
206
|
+
? RemoveLocaleFromString<T>
|
|
207
|
+
: T;
|
|
208
|
+
|
|
209
|
+
export type To = RemoveLocaleParam<LinkComponentProps["to"]>;
|
|
210
|
+
|
|
211
|
+
type CollapseDoubleSlashes<S extends string> =
|
|
212
|
+
S extends `${infer H}//${infer T}` ? CollapseDoubleSlashes<`${H}/${T}`> : S;
|
|
213
|
+
|
|
249
214
|
type LocalizedLinkProps = {
|
|
250
|
-
to
|
|
251
|
-
} & Omit<
|
|
215
|
+
to?: To;
|
|
216
|
+
} & Omit<LinkComponentProps, "to">;
|
|
252
217
|
|
|
253
|
-
|
|
254
|
-
|
|
218
|
+
// Auxiliares
|
|
219
|
+
type RemoveAll<
|
|
220
|
+
S extends string,
|
|
221
|
+
Sub extends string,
|
|
222
|
+
> = S extends `${infer H}${Sub}${infer T}` ? RemoveAll<`${H}${T}`, Sub> : S;
|
|
255
223
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
224
|
+
type RemoveLocaleFromString<S extends string> = CollapseDoubleSlashes<
|
|
225
|
+
RemoveAll<S, typeof LOCALE_ROUTE>
|
|
226
|
+
>;
|
|
259
227
|
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
: getLocalizedUrl(props.to, locale);
|
|
228
|
+
export const LocalizedLink: FC<LocalizedLinkProps> = (props) => {
|
|
229
|
+
const { locale } = useLocale();
|
|
263
230
|
|
|
264
|
-
return
|
|
265
|
-
|
|
231
|
+
return (
|
|
232
|
+
<Link
|
|
233
|
+
{...props}
|
|
234
|
+
params={{
|
|
235
|
+
locale,
|
|
236
|
+
...(typeof props?.params === "object" ? props?.params : {}),
|
|
237
|
+
}}
|
|
238
|
+
to={`/${LOCALE_ROUTE}${props.to}` as LinkComponentProps["to"]}
|
|
239
|
+
/>
|
|
240
|
+
);
|
|
241
|
+
};
|
|
266
242
|
```
|
|
267
243
|
|
|
268
|
-
|
|
244
|
+
Este componente tem dois objetivos:
|
|
269
245
|
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
// eslint-disable-next-line no-restricted-imports
|
|
273
|
-
import { NavigateOptions, useNavigate } from "@tanstack/react-router";
|
|
274
|
-
import { getLocalizedUrl } from "intlayer";
|
|
275
|
-
import { useLocale } from "react-intlayer";
|
|
246
|
+
- Remover o prefixo `{-$locale}` desnecessário da URL.
|
|
247
|
+
- Injetar o parâmetro de locale na URL para garantir que o usuário seja redirecionado diretamente para a rota localizada.
|
|
276
248
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
249
|
+
Então, podemos criar um hook `useLocalizedNavigate` para navegação programática:
|
|
250
|
+
|
|
251
|
+
```tsx fileName="src/hooks/useLocalizedNavigate.tsx"
|
|
252
|
+
import { useLocale } from "react-intlayer";
|
|
253
|
+
import { useNavigate } from "@tanstack/react-router";
|
|
254
|
+
import { LOCALE_ROUTE } from "@/components/localized-link";
|
|
255
|
+
import type { FileRouteTypes } from "@/routeTree.gen";
|
|
280
256
|
|
|
281
257
|
export const useLocalizedNavigate = () => {
|
|
282
258
|
const navigate = useNavigate();
|
|
259
|
+
|
|
283
260
|
const { locale } = useLocale();
|
|
284
261
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
262
|
+
type StripLocalePrefix<T extends string> = T extends
|
|
263
|
+
| `/${typeof LOCALE_ROUTE}`
|
|
264
|
+
| `/${typeof LOCALE_ROUTE}/`
|
|
265
|
+
? "/"
|
|
266
|
+
: T extends `/${typeof LOCALE_ROUTE}/${infer Rest}`
|
|
267
|
+
? `/${Rest}`
|
|
268
|
+
: never;
|
|
269
|
+
|
|
270
|
+
type LocalizedTo = StripLocalePrefix<FileRouteTypes["to"]>;
|
|
271
|
+
|
|
272
|
+
interface LocalizedNavigate {
|
|
273
|
+
(to: LocalizedTo): ReturnType<typeof navigate>;
|
|
274
|
+
(
|
|
275
|
+
opts: { to: LocalizedTo } & Record<string, unknown>
|
|
276
|
+
): ReturnType<typeof navigate>;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
const localizedNavigate: LocalizedNavigate = (args: any) => {
|
|
280
|
+
if (typeof args === "string") {
|
|
281
|
+
return navigate({ to: `/${LOCALE_ROUTE}${args}`, params: { locale } });
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
const { to, ...rest } = args;
|
|
288
285
|
|
|
289
|
-
|
|
290
|
-
const to = isExternal(options.to)
|
|
291
|
-
? options.to
|
|
292
|
-
: getLocalizedUrl(options.to, locale);
|
|
286
|
+
const localedTo = `/${LOCALE_ROUTE}${to}` as any;
|
|
293
287
|
|
|
294
|
-
navigate({
|
|
288
|
+
return navigate({ to: localedTo, params: { locale, ...rest } as any });
|
|
295
289
|
};
|
|
296
290
|
|
|
297
291
|
return localizedNavigate;
|
|
@@ -302,23 +296,9 @@ export const useLocalizedNavigate = () => {
|
|
|
302
296
|
|
|
303
297
|
Acesse seus dicionários de conteúdo em toda a sua aplicação:
|
|
304
298
|
|
|
305
|
-
#### Página de Redirecionamento Raiz
|
|
306
|
-
|
|
307
|
-
```tsx fileName="src/routes/page.tsx" codeFormat="typescript"
|
|
308
|
-
// src/routes/page.tsx
|
|
309
|
-
import { useLocale } from "react-intlayer";
|
|
310
|
-
import { Navigate } from "react-router";
|
|
311
|
-
|
|
312
|
-
export default function Page() {
|
|
313
|
-
const { locale } = useLocale();
|
|
314
|
-
|
|
315
|
-
return <Navigate replace to={locale} />;
|
|
316
|
-
}
|
|
317
|
-
```
|
|
318
|
-
|
|
319
299
|
#### Página Inicial Localizada
|
|
320
300
|
|
|
321
|
-
```tsx fileName="src/routes/{-$locale}/index.tsx"
|
|
301
|
+
```tsx fileName="src/routes/{-$locale}/index.tsx"
|
|
322
302
|
import { createFileRoute } from "@tanstack/react-router";
|
|
323
303
|
import { getIntlayer } from "intlayer";
|
|
324
304
|
import { useIntlayer } from "react-intlayer";
|
|
@@ -347,16 +327,15 @@ function RouteComponent() {
|
|
|
347
327
|
const navigate = useLocalizedNavigate();
|
|
348
328
|
|
|
349
329
|
return (
|
|
350
|
-
<div
|
|
351
|
-
<div
|
|
330
|
+
<div>
|
|
331
|
+
<div>
|
|
352
332
|
{content.title}
|
|
353
333
|
<LocaleSwitcher />
|
|
354
|
-
<div
|
|
355
|
-
<a href="/">Índice</a>
|
|
334
|
+
<div>
|
|
356
335
|
<LocalizedLink to="/">{content.links.home}</LocalizedLink>
|
|
357
336
|
<LocalizedLink to="/about">{content.links.about}</LocalizedLink>
|
|
358
337
|
</div>
|
|
359
|
-
<div
|
|
338
|
+
<div>
|
|
360
339
|
<button onClick={() => navigate({ to: "/" })}>
|
|
361
340
|
{content.links.home}
|
|
362
341
|
</button>
|
|
@@ -376,48 +355,56 @@ function RouteComponent() {
|
|
|
376
355
|
|
|
377
356
|
Crie um componente para permitir que os usuários mudem de idioma:
|
|
378
357
|
|
|
379
|
-
```tsx fileName="src/components/locale-switcher.tsx"
|
|
358
|
+
```tsx fileName="src/components/locale-switcher.tsx"
|
|
359
|
+
import type { FC } from "react";
|
|
360
|
+
|
|
380
361
|
import { useLocation } from "@tanstack/react-router";
|
|
381
|
-
import {
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
const {
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
const { availableLocales, locale, setLocale } = useLocale({
|
|
394
|
-
onLocaleChange: (newLocale) => {
|
|
395
|
-
const pathWithLocale = getLocalizedUrl(pathname + searchStr, newLocale);
|
|
396
|
-
location.replace(pathWithLocale);
|
|
397
|
-
},
|
|
398
|
-
});
|
|
362
|
+
import { getHTMLTextDir, getLocaleName, getPathWithoutLocale } from "intlayer";
|
|
363
|
+
import { setLocaleCookie, useIntlayer, useLocale } from "react-intlayer";
|
|
364
|
+
|
|
365
|
+
import { LocalizedLink, To } from "./localized-link";
|
|
366
|
+
|
|
367
|
+
export const LocaleSwitcher: FC = () => {
|
|
368
|
+
const { localeSwitcherLabel } = useIntlayer("locale-switcher");
|
|
369
|
+
const { pathname } = useLocation();
|
|
370
|
+
|
|
371
|
+
const { availableLocales, locale } = useLocale();
|
|
372
|
+
|
|
373
|
+
const pathWithoutLocale = getPathWithoutLocale(pathname);
|
|
399
374
|
|
|
400
375
|
return (
|
|
401
|
-
<
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
376
|
+
<ol>
|
|
377
|
+
{availableLocales.map((localeEl) => (
|
|
378
|
+
<li key={localeEl}>
|
|
379
|
+
<LocalizedLink
|
|
380
|
+
aria-current={localeEl === locale ? "page" : undefined}
|
|
381
|
+
aria-label={`${localeSwitcherLabel.value} ${getLocaleName(localeEl)}`}
|
|
382
|
+
onClick={() => setLocaleCookie(localeEl)}
|
|
383
|
+
params={{ locale: localeEl }}
|
|
384
|
+
to={pathWithoutLocale as To}
|
|
385
|
+
>
|
|
386
|
+
<span>
|
|
387
|
+
{/* Local - ex. FR */}
|
|
388
|
+
{localeItem}
|
|
389
|
+
</span>
|
|
390
|
+
<span>
|
|
391
|
+
{/* Idioma na sua própria Localização - ex. Français */}
|
|
392
|
+
{getLocaleName(localeItem, locale)}
|
|
393
|
+
</span>
|
|
394
|
+
<span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
|
|
395
|
+
{/* Idioma na Localização atual - ex. Francés com a localização atual definida para Locales.SPANISH */}
|
|
396
|
+
{getLocaleName(localeItem)}
|
|
397
|
+
</span>
|
|
398
|
+
<span dir="ltr" lang={Locales.ENGLISH}>
|
|
399
|
+
{/* Idioma em Inglês - ex. French */}
|
|
400
|
+
{getLocaleName(localeItem, Locales.ENGLISH)}
|
|
401
|
+
</span>
|
|
402
|
+
</LocalizedLink>
|
|
403
|
+
</li>
|
|
417
404
|
))}
|
|
418
|
-
</
|
|
405
|
+
</ol>
|
|
419
406
|
);
|
|
420
|
-
}
|
|
407
|
+
};
|
|
421
408
|
```
|
|
422
409
|
|
|
423
410
|
> Para saber mais sobre o hook `useLocale`, consulte a [documentação](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/react-intlayer/useLocale.md).
|
|
@@ -426,7 +413,7 @@ export default function LocaleSwitcher() {
|
|
|
426
413
|
|
|
427
414
|
Crie um hook para gerenciar os atributos lang e dir do HTML:
|
|
428
415
|
|
|
429
|
-
```tsx fileName="src/hooks/useI18nHTMLAttributes.tsx"
|
|
416
|
+
```tsx fileName="src/hooks/useI18nHTMLAttributes.tsx"
|
|
430
417
|
// src/hooks/useI18nHTMLAttributes.tsx
|
|
431
418
|
import { getHTMLTextDir } from "intlayer";
|
|
432
419
|
import { useEffect } from "react";
|
|
@@ -444,9 +431,8 @@ export const useI18nHTMLAttributes = () => {
|
|
|
444
431
|
|
|
445
432
|
Então use-o no seu componente raiz:
|
|
446
433
|
|
|
447
|
-
```tsx fileName="src/routes/{-$locale}/index.tsx"
|
|
434
|
+
```tsx fileName="src/routes/{-$locale}/index.tsx"
|
|
448
435
|
import { createFileRoute, Navigate, Outlet } from "@tanstack/react-router";
|
|
449
|
-
import { configuration } from "intlayer";
|
|
450
436
|
import { IntlayerProvider, useLocale } from "react-intlayer";
|
|
451
437
|
|
|
452
438
|
import { useI18nHTMLAttributes } from "@/hooks/useI18nHTMLAttributes"; // importar o hook
|
|
@@ -456,69 +442,70 @@ export const Route = createFileRoute("/{-$locale}")({
|
|
|
456
442
|
});
|
|
457
443
|
|
|
458
444
|
function LayoutComponent() {
|
|
459
|
-
useI18nHTMLAttributes(); //
|
|
445
|
+
useI18nHTMLAttributes(); // adicionar esta linha
|
|
460
446
|
|
|
447
|
+
const { defaultLocale } = useLocale();
|
|
461
448
|
const { locale } = Route.useParams();
|
|
462
449
|
|
|
463
450
|
return (
|
|
464
|
-
<IntlayerProvider locale={locale}>
|
|
451
|
+
<IntlayerProvider locale={locale ?? defaultLocale}>
|
|
465
452
|
<Outlet />
|
|
466
453
|
</IntlayerProvider>
|
|
467
454
|
);
|
|
468
455
|
}
|
|
469
456
|
```
|
|
470
457
|
|
|
471
|
-
|
|
458
|
+
---
|
|
472
459
|
|
|
473
|
-
|
|
460
|
+
### Passo 11: Adicionar middleware (Opcional)
|
|
474
461
|
|
|
475
|
-
|
|
476
|
-
# Construir os dicionários do Intlayer
|
|
477
|
-
npm run intlayer:build
|
|
462
|
+
Você também pode usar o `intlayerMiddleware` para adicionar roteamento do lado do servidor à sua aplicação. Este plugin detectará automaticamente o idioma atual com base na URL e definirá o cookie de idioma apropriado. Se nenhum idioma for especificado, o plugin determinará o idioma mais adequado com base nas preferências de idioma do navegador do usuário. Se nenhum idioma for detectado, ele redirecionará para o idioma padrão.
|
|
478
463
|
|
|
479
|
-
|
|
480
|
-
npm run dev
|
|
481
|
-
```
|
|
464
|
+
> Observe que, para usar o `intlayerMiddleware` em produção, você precisa mover o pacote `vite-intlayer` de `devDependencies` para `dependencies`.
|
|
482
465
|
|
|
483
|
-
```
|
|
484
|
-
|
|
485
|
-
|
|
466
|
+
```typescript {3,7} fileName="vite.config.ts"
|
|
467
|
+
import { reactRouter } from "@react-router/dev/vite";
|
|
468
|
+
import tailwindcss from "@tailwindcss/vite";
|
|
469
|
+
import { defineConfig } from "vite";
|
|
470
|
+
import { intlayer, intlayerMiddleware } from "vite-intlayer";
|
|
471
|
+
import tsconfigPaths from "vite-tsconfig-paths";
|
|
486
472
|
|
|
487
|
-
|
|
488
|
-
|
|
473
|
+
export default defineConfig({
|
|
474
|
+
plugins: [
|
|
475
|
+
tailwindcss(),
|
|
476
|
+
reactRouter(),
|
|
477
|
+
tsconfigPaths(),
|
|
478
|
+
intlayer(),
|
|
479
|
+
intlayerMiddleware(),
|
|
480
|
+
],
|
|
481
|
+
});
|
|
489
482
|
```
|
|
490
483
|
|
|
491
|
-
|
|
492
|
-
# Construir os dicionários do Intlayer
|
|
493
|
-
yarn intlayer:build
|
|
494
|
-
|
|
495
|
-
# Iniciar o servidor de desenvolvimento
|
|
496
|
-
yarn dev
|
|
497
|
-
```
|
|
484
|
+
---
|
|
498
485
|
|
|
499
486
|
### Passo 12: Configurar o TypeScript (Opcional)
|
|
500
487
|
|
|
501
|
-
Intlayer
|
|
488
|
+
O Intlayer utiliza a ampliação de módulos para aproveitar os benefícios do TypeScript e fortalecer sua base de código.
|
|
502
489
|
|
|
503
490
|
Certifique-se de que sua configuração do TypeScript inclua os tipos gerados automaticamente:
|
|
504
491
|
|
|
505
492
|
```json5 fileName="tsconfig.json"
|
|
506
493
|
{
|
|
507
|
-
|
|
508
|
-
// ... suas configurações existentes do TypeScript
|
|
509
|
-
},
|
|
494
|
+
// ... suas configurações existentes
|
|
510
495
|
include: [
|
|
511
496
|
// ... seus includes existentes
|
|
512
|
-
".intlayer/**/*.ts", //
|
|
497
|
+
".intlayer/**/*.ts", // Incluir os tipos gerados automaticamente
|
|
513
498
|
],
|
|
514
499
|
}
|
|
515
500
|
```
|
|
516
501
|
|
|
502
|
+
---
|
|
503
|
+
|
|
517
504
|
### Configuração do Git
|
|
518
505
|
|
|
519
|
-
É recomendado ignorar os arquivos gerados pelo Intlayer. Isso permite que
|
|
506
|
+
É recomendado ignorar os arquivos gerados pelo Intlayer. Isso permite evitar que eles sejam comitados no seu repositório Git.
|
|
520
507
|
|
|
521
|
-
Para isso, você pode adicionar as seguintes instruções
|
|
508
|
+
Para isso, você pode adicionar as seguintes instruções ao seu arquivo `.gitignore`:
|
|
522
509
|
|
|
523
510
|
```plaintext fileName=".gitignore"
|
|
524
511
|
# Ignorar os arquivos gerados pelo Intlayer
|
|
@@ -527,67 +514,9 @@ Para isso, você pode adicionar as seguintes instruções no seu arquivo `.gitig
|
|
|
527
514
|
|
|
528
515
|
---
|
|
529
516
|
|
|
530
|
-
### Passo 13: Criar Redirecionamento (Opcional)
|
|
531
|
-
|
|
532
|
-
```typescript fileName="src/routes/{-$locale}/rotue.tsx" codeFormat="typescript"
|
|
533
|
-
function LayoutComponent() {
|
|
534
|
-
useI18nHTMLAttributes();
|
|
535
|
-
|
|
536
|
-
const { locale } = Route.useParams();
|
|
537
|
-
const { locale: selectedLocale } = useLocale();
|
|
538
|
-
const { defaultLocale } = configuration.internationalization;
|
|
539
|
-
const { prefixDefault } = configuration.middleware;
|
|
540
|
-
|
|
541
|
-
// Redireciona para o locale padrão se nenhum locale estiver presente na URL quando prefixDefault for verdadeiro
|
|
542
|
-
if (selectedLocale === defaultLocale && !locale && prefixDefault) {
|
|
543
|
-
return <Navigate replace to={defaultLocale} />;
|
|
544
|
-
}
|
|
545
|
-
|
|
546
|
-
// Redireciona para o locale selecionado se o locale na URL não corresponder ao locale selecionado
|
|
547
|
-
if (selectedLocale !== defaultLocale && !locale) {
|
|
548
|
-
return <Navigate replace to={selectedLocale} />;
|
|
549
|
-
}
|
|
550
|
-
|
|
551
|
-
return (
|
|
552
|
-
<IntlayerProvider locale={locale}>
|
|
553
|
-
<Outlet />
|
|
554
|
-
</IntlayerProvider>
|
|
555
|
-
);
|
|
556
|
-
}
|
|
557
|
-
```
|
|
558
|
-
|
|
559
|
-
## Implantação em Produção
|
|
560
|
-
|
|
561
|
-
Ao implantar sua aplicação:
|
|
562
|
-
|
|
563
|
-
1. **Compile sua aplicação:**
|
|
564
|
-
|
|
565
|
-
```bash
|
|
566
|
-
npm run build
|
|
567
|
-
```
|
|
568
|
-
|
|
569
|
-
2. **Compile os dicionários do Intlayer:**
|
|
570
|
-
|
|
571
|
-
```bash
|
|
572
|
-
npm run intlayer:build
|
|
573
|
-
```
|
|
574
|
-
|
|
575
|
-
3. **Mova `vite-intlayer` para as dependências** se estiver usando middleware em produção:
|
|
576
|
-
```bash
|
|
577
|
-
npm install vite-intlayer --save
|
|
578
|
-
```
|
|
579
|
-
|
|
580
|
-
Sua aplicação agora suportará:
|
|
581
|
-
|
|
582
|
-
- **Estrutura de URL**: `/en`, `/en/about`, `/tr`, `/tr/about`
|
|
583
|
-
- **Detecção automática de localidade** baseada nas preferências do navegador
|
|
584
|
-
- **Roteamento consciente da localidade** com Tanstack Start
|
|
585
|
-
- **Suporte a TypeScript** com tipos gerados automaticamente
|
|
586
|
-
- **Renderização no servidor** com tratamento adequado da localidade
|
|
587
|
-
|
|
588
517
|
## Extensão VS Code
|
|
589
518
|
|
|
590
|
-
Para melhorar sua experiência de desenvolvimento com o Intlayer, você pode instalar a
|
|
519
|
+
Para melhorar sua experiência de desenvolvimento com o Intlayer, você pode instalar a **Extensão oficial Intlayer para VS Code**.
|
|
591
520
|
|
|
592
521
|
[Instalar no VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
|
|
593
522
|
|
|
@@ -598,13 +527,13 @@ Esta extensão oferece:
|
|
|
598
527
|
- **Visualizações inline** do conteúdo traduzido.
|
|
599
528
|
- **Ações rápidas** para criar e atualizar traduções facilmente.
|
|
600
529
|
|
|
601
|
-
Para mais detalhes sobre como usar a extensão, consulte a [documentação da
|
|
530
|
+
Para mais detalhes sobre como usar a extensão, consulte a [documentação da Extensão Intlayer para VS Code](https://intlayer.org/doc/vs-code-extension).
|
|
602
531
|
|
|
603
532
|
---
|
|
604
533
|
|
|
605
534
|
## Ir Além
|
|
606
535
|
|
|
607
|
-
Para ir
|
|
536
|
+
Para ir além, você pode implementar o [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_visual_editor.md) ou externalizar seu conteúdo usando o [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md).
|
|
608
537
|
|
|
609
538
|
---
|
|
610
539
|
|
|
@@ -613,14 +542,8 @@ Para ir mais longe, você pode implementar o [editor visual](https://github.com/
|
|
|
613
542
|
- [Documentação do Intlayer](https://intlayer.org)
|
|
614
543
|
- [Documentação do Tanstack Start](https://reactrouter.com/)
|
|
615
544
|
- [Hook useIntlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/react-intlayer/useIntlayer.md)
|
|
616
|
-
- [
|
|
545
|
+
- [useLocale hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/react-intlayer/useLocale.md)
|
|
617
546
|
- [Declaração de Conteúdo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/get_started.md)
|
|
618
547
|
- [Configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md)
|
|
619
548
|
|
|
620
549
|
Este guia abrangente fornece tudo o que você precisa para integrar o Intlayer com o Tanstack Start para uma aplicação totalmente internacionalizada com roteamento sensível ao idioma e suporte a TypeScript.
|
|
621
|
-
|
|
622
|
-
## Histórico da Documentação
|
|
623
|
-
|
|
624
|
-
| Versão | Data | Alterações |
|
|
625
|
-
| ------ | ---------- | ------------------------------ |
|
|
626
|
-
| 5.8.1 | 2025-09-09 | Adicionado para Tanstack Start |
|