@intlayer/docs 9.5.4 → 9.5.5
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 +2 -1
- package/blog/ar/how_to_pick_react_i18n_library.md +28 -0
- package/blog/ar/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/de/how_to_pick_react_i18n_library.md +28 -0
- package/blog/de/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/en/how_to_pick_react_i18n_library.md +28 -0
- package/blog/en/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/en-GB/how_to_pick_react_i18n_library.md +28 -0
- package/blog/en-GB/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/es/how_to_pick_react_i18n_library.md +28 -0
- package/blog/es/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/fr/how_to_pick_react_i18n_library.md +28 -0
- package/blog/fr/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/hi/how_to_pick_react_i18n_library.md +28 -0
- package/blog/hi/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/id/how_to_pick_react_i18n_library.md +28 -0
- package/blog/id/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/it/how_to_pick_react_i18n_library.md +28 -0
- package/blog/it/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/ja/how_to_pick_react_i18n_library.md +28 -0
- package/blog/ja/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/ko/how_to_pick_react_i18n_library.md +28 -0
- package/blog/ko/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/pl/how_to_pick_react_i18n_library.md +28 -0
- package/blog/pl/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/pt/how_to_pick_react_i18n_library.md +28 -0
- package/blog/pt/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/ru/how_to_pick_react_i18n_library.md +28 -0
- package/blog/ru/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/tr/how_to_pick_react_i18n_library.md +28 -0
- package/blog/tr/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/uk/how_to_pick_react_i18n_library.md +28 -0
- package/blog/uk/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/vi/how_to_pick_react_i18n_library.md +28 -0
- package/blog/vi/how_to_pick_solid_i18n_library.md +19 -5
- package/blog/zh/how_to_pick_react_i18n_library.md +28 -0
- package/blog/zh/how_to_pick_solid_i18n_library.md +19 -5
- package/dist/cjs/generated/docs.entry.cjs +220 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +220 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +11 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/how_works_intlayer.md +86 -14
- package/docs/ar/intlayer_visual_editor.md +7 -0
- package/docs/ar/intlayer_with_astro.md +60 -36
- package/docs/ar/intlayer_with_astro_preact.md +7 -0
- package/docs/ar/intlayer_with_astro_react.md +7 -0
- package/docs/ar/intlayer_with_astro_solid.md +7 -0
- package/docs/ar/intlayer_with_astro_svelte.md +7 -0
- package/docs/ar/intlayer_with_astro_vanilla.md +7 -0
- package/docs/ar/intlayer_with_astro_vue.md +7 -0
- package/docs/ar/intlayer_with_nextjs_14.md +7 -0
- package/docs/ar/intlayer_with_nextjs_15.md +7 -0
- package/docs/ar/intlayer_with_nextjs_16.md +7 -0
- package/docs/ar/intlayer_with_react_router_v7.md +7 -0
- package/docs/ar/intlayer_with_remix_3.md +73 -112
- package/docs/ar/intlayer_with_tanstack+solid.md +7 -0
- package/docs/ar/intlayer_with_tanstack.md +7 -0
- package/docs/ar/intlayer_with_vite+preact.md +7 -0
- package/docs/ar/intlayer_with_vite+react.md +7 -0
- package/docs/ar/intlayer_with_vite+solid.md +7 -0
- package/docs/ar/packages/astro-intlayer/exports.md +161 -9
- package/docs/ar/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/ar/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/ar/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/ar/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/ar/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/ar/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/ar/packages/remix-intlayer/exports.md +80 -0
- package/docs/ar/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/ar/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/ar/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/ar/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/ar/readme.md +2 -1
- package/docs/de/how_works_intlayer.md +86 -14
- package/docs/de/intlayer_visual_editor.md +7 -0
- package/docs/de/intlayer_with_astro.md +60 -36
- package/docs/de/intlayer_with_astro_preact.md +7 -0
- package/docs/de/intlayer_with_astro_react.md +7 -0
- package/docs/de/intlayer_with_astro_solid.md +7 -0
- package/docs/de/intlayer_with_astro_svelte.md +7 -0
- package/docs/de/intlayer_with_astro_vanilla.md +7 -0
- package/docs/de/intlayer_with_astro_vue.md +7 -0
- package/docs/de/intlayer_with_nextjs_14.md +7 -0
- package/docs/de/intlayer_with_nextjs_15.md +7 -0
- package/docs/de/intlayer_with_nextjs_16.md +7 -0
- package/docs/de/intlayer_with_react_router_v7.md +7 -0
- package/docs/de/intlayer_with_remix_3.md +70 -109
- package/docs/de/intlayer_with_tanstack+solid.md +7 -0
- package/docs/de/intlayer_with_tanstack.md +7 -0
- package/docs/de/intlayer_with_vite+preact.md +7 -0
- package/docs/de/intlayer_with_vite+react.md +7 -0
- package/docs/de/intlayer_with_vite+solid.md +7 -0
- package/docs/de/packages/astro-intlayer/exports.md +164 -12
- package/docs/de/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/de/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/de/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/de/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/de/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/de/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/de/packages/remix-intlayer/exports.md +176 -0
- package/docs/de/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/de/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/de/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/de/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/de/readme.md +2 -1
- package/docs/en/how_works_intlayer.md +86 -14
- package/docs/en/intlayer_visual_editor.md +7 -0
- package/docs/en/intlayer_with_astro.md +63 -41
- package/docs/en/intlayer_with_astro_preact.md +7 -0
- package/docs/en/intlayer_with_astro_react.md +7 -0
- package/docs/en/intlayer_with_astro_solid.md +7 -0
- package/docs/en/intlayer_with_astro_svelte.md +7 -0
- package/docs/en/intlayer_with_astro_vanilla.md +7 -0
- package/docs/en/intlayer_with_astro_vue.md +7 -0
- package/docs/en/intlayer_with_nextjs_14.md +7 -0
- package/docs/en/intlayer_with_nextjs_15.md +7 -0
- package/docs/en/intlayer_with_nextjs_16.md +7 -0
- package/docs/en/intlayer_with_react_router_v7.md +7 -0
- package/docs/en/intlayer_with_remix_3.md +74 -122
- package/docs/en/intlayer_with_tanstack+solid.md +7 -0
- package/docs/en/intlayer_with_tanstack.md +7 -0
- package/docs/en/intlayer_with_vite+preact.md +7 -0
- package/docs/en/intlayer_with_vite+react.md +7 -0
- package/docs/en/intlayer_with_vite+solid.md +7 -0
- package/docs/en/introduction.md +2 -1
- package/docs/en/packages/astro-intlayer/exports.md +161 -9
- package/docs/en/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/en/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/en/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/en/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/en/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/en/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/en/packages/remix-intlayer/exports.md +176 -0
- package/docs/en/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/en/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/en/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/en/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/en/readme.md +2 -1
- package/docs/en-GB/how_works_intlayer.md +86 -14
- package/docs/en-GB/intlayer_visual_editor.md +7 -0
- package/docs/en-GB/intlayer_with_astro.md +60 -36
- package/docs/en-GB/intlayer_with_astro_preact.md +7 -0
- package/docs/en-GB/intlayer_with_astro_react.md +7 -0
- package/docs/en-GB/intlayer_with_astro_solid.md +7 -0
- package/docs/en-GB/intlayer_with_astro_svelte.md +7 -0
- package/docs/en-GB/intlayer_with_astro_vanilla.md +7 -0
- package/docs/en-GB/intlayer_with_astro_vue.md +7 -0
- package/docs/en-GB/intlayer_with_nextjs_14.md +7 -0
- package/docs/en-GB/intlayer_with_nextjs_15.md +7 -0
- package/docs/en-GB/intlayer_with_nextjs_16.md +7 -0
- package/docs/en-GB/intlayer_with_react_router_v7.md +7 -0
- package/docs/en-GB/intlayer_with_remix_3.md +66 -105
- package/docs/en-GB/intlayer_with_tanstack+solid.md +7 -0
- package/docs/en-GB/intlayer_with_tanstack.md +7 -0
- package/docs/en-GB/intlayer_with_vite+preact.md +7 -0
- package/docs/en-GB/intlayer_with_vite+react.md +7 -0
- package/docs/en-GB/intlayer_with_vite+solid.md +7 -0
- package/docs/en-GB/packages/astro-intlayer/exports.md +162 -10
- package/docs/en-GB/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/en-GB/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/en-GB/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/en-GB/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/en-GB/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/en-GB/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/en-GB/packages/remix-intlayer/exports.md +176 -0
- package/docs/en-GB/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/en-GB/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/en-GB/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/en-GB/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/en-GB/readme.md +2 -1
- package/docs/es/how_works_intlayer.md +86 -14
- package/docs/es/intlayer_visual_editor.md +7 -0
- package/docs/es/intlayer_with_astro.md +60 -36
- package/docs/es/intlayer_with_astro_preact.md +7 -0
- package/docs/es/intlayer_with_astro_react.md +7 -0
- package/docs/es/intlayer_with_astro_solid.md +7 -0
- package/docs/es/intlayer_with_astro_svelte.md +7 -0
- package/docs/es/intlayer_with_astro_vanilla.md +7 -0
- package/docs/es/intlayer_with_astro_vue.md +7 -0
- package/docs/es/intlayer_with_nextjs_14.md +7 -0
- package/docs/es/intlayer_with_nextjs_15.md +7 -0
- package/docs/es/intlayer_with_nextjs_16.md +7 -0
- package/docs/es/intlayer_with_react_router_v7.md +7 -0
- package/docs/es/intlayer_with_remix_3.md +73 -112
- package/docs/es/intlayer_with_tanstack+solid.md +7 -0
- package/docs/es/intlayer_with_tanstack.md +7 -0
- package/docs/es/intlayer_with_vite+preact.md +7 -0
- package/docs/es/intlayer_with_vite+react.md +7 -0
- package/docs/es/intlayer_with_vite+solid.md +7 -0
- package/docs/es/packages/astro-intlayer/exports.md +162 -10
- package/docs/es/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/es/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/es/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/es/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/es/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/es/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/es/packages/remix-intlayer/exports.md +176 -0
- package/docs/es/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/es/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/es/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/es/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/es/readme.md +2 -1
- package/docs/fr/how_works_intlayer.md +86 -14
- package/docs/fr/intlayer_visual_editor.md +7 -0
- package/docs/fr/intlayer_with_astro.md +60 -36
- package/docs/fr/intlayer_with_astro_preact.md +7 -0
- package/docs/fr/intlayer_with_astro_react.md +7 -0
- package/docs/fr/intlayer_with_astro_solid.md +7 -0
- package/docs/fr/intlayer_with_astro_svelte.md +7 -0
- package/docs/fr/intlayer_with_astro_vanilla.md +7 -0
- package/docs/fr/intlayer_with_astro_vue.md +7 -0
- package/docs/fr/intlayer_with_nextjs_14.md +7 -0
- package/docs/fr/intlayer_with_nextjs_15.md +7 -0
- package/docs/fr/intlayer_with_nextjs_16.md +7 -0
- package/docs/fr/intlayer_with_react_router_v7.md +7 -0
- package/docs/fr/intlayer_with_remix_3.md +74 -122
- package/docs/fr/intlayer_with_tanstack+solid.md +7 -0
- package/docs/fr/intlayer_with_tanstack.md +7 -0
- package/docs/fr/intlayer_with_vite+preact.md +7 -0
- package/docs/fr/intlayer_with_vite+react.md +7 -0
- package/docs/fr/intlayer_with_vite+solid.md +7 -0
- package/docs/fr/packages/astro-intlayer/exports.md +162 -10
- package/docs/fr/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/fr/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/fr/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/fr/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/fr/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/fr/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/fr/packages/remix-intlayer/exports.md +176 -0
- package/docs/fr/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/fr/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/fr/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/fr/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/fr/readme.md +2 -1
- package/docs/hi/how_works_intlayer.md +86 -14
- package/docs/hi/intlayer_visual_editor.md +7 -0
- package/docs/hi/intlayer_with_astro.md +61 -37
- package/docs/hi/intlayer_with_astro_preact.md +7 -0
- package/docs/hi/intlayer_with_astro_react.md +7 -0
- package/docs/hi/intlayer_with_astro_solid.md +7 -0
- package/docs/hi/intlayer_with_astro_svelte.md +7 -0
- package/docs/hi/intlayer_with_astro_vanilla.md +7 -0
- package/docs/hi/intlayer_with_astro_vue.md +7 -0
- package/docs/hi/intlayer_with_nextjs_14.md +7 -0
- package/docs/hi/intlayer_with_nextjs_15.md +7 -0
- package/docs/hi/intlayer_with_nextjs_16.md +7 -0
- package/docs/hi/intlayer_with_react_router_v7.md +7 -0
- package/docs/hi/intlayer_with_remix_3.md +73 -112
- package/docs/hi/intlayer_with_tanstack+solid.md +7 -0
- package/docs/hi/intlayer_with_tanstack.md +7 -0
- package/docs/hi/intlayer_with_vite+preact.md +7 -0
- package/docs/hi/intlayer_with_vite+react.md +7 -0
- package/docs/hi/intlayer_with_vite+solid.md +7 -0
- package/docs/hi/packages/astro-intlayer/exports.md +165 -13
- package/docs/hi/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/hi/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/hi/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/hi/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/hi/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/hi/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/hi/packages/remix-intlayer/exports.md +80 -0
- package/docs/hi/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/hi/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/hi/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/hi/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/hi/readme.md +2 -1
- package/docs/id/how_works_intlayer.md +86 -14
- package/docs/id/intlayer_visual_editor.md +7 -0
- package/docs/id/intlayer_with_astro.md +60 -36
- package/docs/id/intlayer_with_astro_preact.md +7 -0
- package/docs/id/intlayer_with_astro_react.md +7 -0
- package/docs/id/intlayer_with_astro_solid.md +7 -0
- package/docs/id/intlayer_with_astro_svelte.md +7 -0
- package/docs/id/intlayer_with_astro_vanilla.md +7 -0
- package/docs/id/intlayer_with_astro_vue.md +7 -0
- package/docs/id/intlayer_with_nextjs_14.md +7 -0
- package/docs/id/intlayer_with_nextjs_15.md +7 -0
- package/docs/id/intlayer_with_nextjs_16.md +7 -0
- package/docs/id/intlayer_with_react_router_v7.md +7 -0
- package/docs/id/intlayer_with_remix_3.md +101 -148
- package/docs/id/intlayer_with_tanstack+solid.md +7 -0
- package/docs/id/intlayer_with_tanstack.md +7 -0
- package/docs/id/intlayer_with_vite+preact.md +7 -0
- package/docs/id/intlayer_with_vite+react.md +7 -0
- package/docs/id/intlayer_with_vite+solid.md +7 -0
- package/docs/id/packages/astro-intlayer/exports.md +163 -11
- package/docs/id/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/id/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/id/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/id/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/id/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/id/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/id/packages/remix-intlayer/exports.md +80 -0
- package/docs/id/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/id/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/id/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/id/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/id/readme.md +2 -1
- package/docs/it/how_works_intlayer.md +86 -14
- package/docs/it/intlayer_visual_editor.md +7 -0
- package/docs/it/intlayer_with_astro.md +60 -36
- package/docs/it/intlayer_with_astro_preact.md +7 -0
- package/docs/it/intlayer_with_astro_react.md +7 -0
- package/docs/it/intlayer_with_astro_solid.md +7 -0
- package/docs/it/intlayer_with_astro_svelte.md +7 -0
- package/docs/it/intlayer_with_astro_vanilla.md +7 -0
- package/docs/it/intlayer_with_astro_vue.md +7 -0
- package/docs/it/intlayer_with_nextjs_14.md +7 -0
- package/docs/it/intlayer_with_nextjs_15.md +7 -0
- package/docs/it/intlayer_with_nextjs_16.md +7 -0
- package/docs/it/intlayer_with_react_router_v7.md +7 -0
- package/docs/it/intlayer_with_remix_3.md +70 -109
- package/docs/it/intlayer_with_tanstack+solid.md +7 -0
- package/docs/it/intlayer_with_tanstack.md +7 -0
- package/docs/it/intlayer_with_vite+preact.md +7 -0
- package/docs/it/intlayer_with_vite+react.md +7 -0
- package/docs/it/intlayer_with_vite+solid.md +7 -0
- package/docs/it/packages/astro-intlayer/exports.md +161 -9
- package/docs/it/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/it/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/it/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/it/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/it/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/it/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/it/packages/remix-intlayer/exports.md +176 -0
- package/docs/it/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/it/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/it/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/it/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/it/readme.md +2 -1
- package/docs/ja/how_works_intlayer.md +86 -14
- package/docs/ja/intlayer_visual_editor.md +7 -0
- package/docs/ja/intlayer_with_astro.md +61 -37
- package/docs/ja/intlayer_with_astro_preact.md +7 -0
- package/docs/ja/intlayer_with_astro_react.md +7 -0
- package/docs/ja/intlayer_with_astro_solid.md +7 -0
- package/docs/ja/intlayer_with_astro_svelte.md +7 -0
- package/docs/ja/intlayer_with_astro_vanilla.md +7 -0
- package/docs/ja/intlayer_with_astro_vue.md +7 -0
- package/docs/ja/intlayer_with_nextjs_14.md +7 -0
- package/docs/ja/intlayer_with_nextjs_15.md +7 -0
- package/docs/ja/intlayer_with_nextjs_16.md +7 -0
- package/docs/ja/intlayer_with_react_router_v7.md +7 -0
- package/docs/ja/intlayer_with_remix_3.md +73 -112
- package/docs/ja/intlayer_with_tanstack+solid.md +7 -0
- package/docs/ja/intlayer_with_tanstack.md +7 -0
- package/docs/ja/intlayer_with_vite+preact.md +7 -0
- package/docs/ja/intlayer_with_vite+react.md +7 -0
- package/docs/ja/intlayer_with_vite+solid.md +7 -0
- package/docs/ja/packages/astro-intlayer/exports.md +163 -11
- package/docs/ja/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/ja/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/ja/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/ja/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/ja/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/ja/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/ja/packages/remix-intlayer/exports.md +80 -0
- package/docs/ja/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/ja/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/ja/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/ja/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/ja/readme.md +2 -1
- package/docs/ko/how_works_intlayer.md +86 -14
- package/docs/ko/intlayer_visual_editor.md +7 -0
- package/docs/ko/intlayer_with_astro.md +61 -37
- package/docs/ko/intlayer_with_astro_preact.md +7 -0
- package/docs/ko/intlayer_with_astro_react.md +7 -0
- package/docs/ko/intlayer_with_astro_solid.md +7 -0
- package/docs/ko/intlayer_with_astro_svelte.md +7 -0
- package/docs/ko/intlayer_with_astro_vanilla.md +7 -0
- package/docs/ko/intlayer_with_astro_vue.md +7 -0
- package/docs/ko/intlayer_with_nextjs_14.md +7 -0
- package/docs/ko/intlayer_with_nextjs_15.md +7 -0
- package/docs/ko/intlayer_with_nextjs_16.md +7 -0
- package/docs/ko/intlayer_with_react_router_v7.md +7 -0
- package/docs/ko/intlayer_with_remix_3.md +73 -112
- package/docs/ko/intlayer_with_tanstack+solid.md +7 -0
- package/docs/ko/intlayer_with_tanstack.md +7 -0
- package/docs/ko/intlayer_with_vite+preact.md +7 -0
- package/docs/ko/intlayer_with_vite+react.md +7 -0
- package/docs/ko/intlayer_with_vite+solid.md +7 -0
- package/docs/ko/packages/astro-intlayer/exports.md +163 -11
- package/docs/ko/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/ko/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/ko/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/ko/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/ko/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/ko/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/ko/packages/remix-intlayer/exports.md +80 -0
- package/docs/ko/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/ko/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/ko/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/ko/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/ko/readme.md +2 -1
- package/docs/pl/how_works_intlayer.md +86 -14
- package/docs/pl/intlayer_visual_editor.md +7 -0
- package/docs/pl/intlayer_with_astro.md +61 -37
- package/docs/pl/intlayer_with_astro_preact.md +7 -0
- package/docs/pl/intlayer_with_astro_react.md +7 -0
- package/docs/pl/intlayer_with_astro_solid.md +7 -0
- package/docs/pl/intlayer_with_astro_svelte.md +7 -0
- package/docs/pl/intlayer_with_astro_vanilla.md +7 -0
- package/docs/pl/intlayer_with_astro_vue.md +7 -0
- package/docs/pl/intlayer_with_nextjs_14.md +7 -0
- package/docs/pl/intlayer_with_nextjs_15.md +7 -0
- package/docs/pl/intlayer_with_nextjs_16.md +7 -0
- package/docs/pl/intlayer_with_react_router_v7.md +7 -0
- package/docs/pl/intlayer_with_remix_3.md +101 -148
- package/docs/pl/intlayer_with_tanstack+solid.md +7 -0
- package/docs/pl/intlayer_with_tanstack.md +7 -0
- package/docs/pl/intlayer_with_vite+preact.md +7 -0
- package/docs/pl/intlayer_with_vite+react.md +7 -0
- package/docs/pl/intlayer_with_vite+solid.md +7 -0
- package/docs/pl/packages/astro-intlayer/exports.md +162 -10
- package/docs/pl/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/pl/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/pl/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/pl/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/pl/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/pl/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/pl/packages/remix-intlayer/exports.md +80 -0
- package/docs/pl/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/pl/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/pl/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/pl/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/pl/readme.md +2 -1
- package/docs/pt/how_works_intlayer.md +86 -14
- package/docs/pt/intlayer_visual_editor.md +7 -0
- package/docs/pt/intlayer_with_astro.md +61 -37
- package/docs/pt/intlayer_with_astro_preact.md +7 -0
- package/docs/pt/intlayer_with_astro_react.md +7 -0
- package/docs/pt/intlayer_with_astro_solid.md +7 -0
- package/docs/pt/intlayer_with_astro_svelte.md +7 -0
- package/docs/pt/intlayer_with_astro_vanilla.md +7 -0
- package/docs/pt/intlayer_with_astro_vue.md +7 -0
- package/docs/pt/intlayer_with_nextjs_14.md +7 -0
- package/docs/pt/intlayer_with_nextjs_15.md +7 -0
- package/docs/pt/intlayer_with_nextjs_16.md +7 -0
- package/docs/pt/intlayer_with_react_router_v7.md +7 -0
- package/docs/pt/intlayer_with_remix_3.md +73 -112
- package/docs/pt/intlayer_with_tanstack+solid.md +7 -0
- package/docs/pt/intlayer_with_tanstack.md +7 -0
- package/docs/pt/intlayer_with_vite+preact.md +7 -0
- package/docs/pt/intlayer_with_vite+react.md +7 -0
- package/docs/pt/intlayer_with_vite+solid.md +7 -0
- package/docs/pt/packages/astro-intlayer/exports.md +162 -10
- package/docs/pt/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/pt/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/pt/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/pt/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/pt/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/pt/packages/remix-intlayer/Intlayer.md +77 -0
- package/docs/pt/packages/remix-intlayer/exports.md +176 -0
- package/docs/pt/packages/remix-intlayer/intlayerMiddleware.md +101 -0
- package/docs/pt/packages/remix-intlayer/useDictionary.md +94 -0
- package/docs/pt/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/pt/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/pt/readme.md +2 -1
- package/docs/ru/how_works_intlayer.md +86 -14
- package/docs/ru/intlayer_visual_editor.md +7 -0
- package/docs/ru/intlayer_with_astro.md +61 -37
- package/docs/ru/intlayer_with_astro_preact.md +7 -0
- package/docs/ru/intlayer_with_astro_react.md +7 -0
- package/docs/ru/intlayer_with_astro_solid.md +7 -0
- package/docs/ru/intlayer_with_astro_svelte.md +7 -0
- package/docs/ru/intlayer_with_astro_vanilla.md +7 -0
- package/docs/ru/intlayer_with_astro_vue.md +7 -0
- package/docs/ru/intlayer_with_nextjs_14.md +7 -0
- package/docs/ru/intlayer_with_nextjs_15.md +7 -0
- package/docs/ru/intlayer_with_nextjs_16.md +7 -0
- package/docs/ru/intlayer_with_react_router_v7.md +7 -0
- package/docs/ru/intlayer_with_remix_3.md +73 -112
- package/docs/ru/intlayer_with_tanstack+solid.md +7 -0
- package/docs/ru/intlayer_with_tanstack.md +7 -0
- package/docs/ru/intlayer_with_vite+preact.md +7 -0
- package/docs/ru/intlayer_with_vite+react.md +7 -0
- package/docs/ru/intlayer_with_vite+solid.md +7 -0
- package/docs/ru/packages/astro-intlayer/exports.md +164 -12
- package/docs/ru/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/ru/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/ru/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/ru/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/ru/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/ru/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/ru/packages/remix-intlayer/exports.md +80 -0
- package/docs/ru/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/ru/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/ru/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/ru/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/ru/readme.md +2 -1
- package/docs/tr/how_works_intlayer.md +86 -14
- package/docs/tr/intlayer_visual_editor.md +7 -0
- package/docs/tr/intlayer_with_astro.md +60 -36
- package/docs/tr/intlayer_with_astro_preact.md +7 -0
- package/docs/tr/intlayer_with_astro_react.md +7 -0
- package/docs/tr/intlayer_with_astro_solid.md +7 -0
- package/docs/tr/intlayer_with_astro_svelte.md +7 -0
- package/docs/tr/intlayer_with_astro_vanilla.md +7 -0
- package/docs/tr/intlayer_with_astro_vue.md +7 -0
- package/docs/tr/intlayer_with_nextjs_14.md +7 -0
- package/docs/tr/intlayer_with_nextjs_15.md +7 -0
- package/docs/tr/intlayer_with_nextjs_16.md +7 -0
- package/docs/tr/intlayer_with_react_router_v7.md +7 -0
- package/docs/tr/intlayer_with_remix_3.md +101 -148
- package/docs/tr/intlayer_with_tanstack+solid.md +7 -0
- package/docs/tr/intlayer_with_tanstack.md +7 -0
- package/docs/tr/intlayer_with_vite+preact.md +7 -0
- package/docs/tr/intlayer_with_vite+react.md +7 -0
- package/docs/tr/intlayer_with_vite+solid.md +7 -0
- package/docs/tr/packages/astro-intlayer/exports.md +165 -13
- package/docs/tr/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/tr/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/tr/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/tr/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/tr/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/tr/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/tr/packages/remix-intlayer/exports.md +80 -0
- package/docs/tr/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/tr/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/tr/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/tr/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/tr/readme.md +2 -1
- package/docs/uk/how_works_intlayer.md +86 -14
- package/docs/uk/intlayer_visual_editor.md +7 -0
- package/docs/uk/intlayer_with_astro.md +61 -37
- package/docs/uk/intlayer_with_astro_preact.md +7 -0
- package/docs/uk/intlayer_with_astro_react.md +7 -0
- package/docs/uk/intlayer_with_astro_solid.md +7 -0
- package/docs/uk/intlayer_with_astro_svelte.md +7 -0
- package/docs/uk/intlayer_with_astro_vanilla.md +7 -0
- package/docs/uk/intlayer_with_astro_vue.md +7 -0
- package/docs/uk/intlayer_with_nextjs_14.md +7 -0
- package/docs/uk/intlayer_with_nextjs_15.md +7 -0
- package/docs/uk/intlayer_with_nextjs_16.md +7 -0
- package/docs/uk/intlayer_with_react_router_v7.md +7 -0
- package/docs/uk/intlayer_with_remix_3.md +101 -148
- package/docs/uk/intlayer_with_tanstack+solid.md +7 -0
- package/docs/uk/intlayer_with_tanstack.md +7 -0
- package/docs/uk/intlayer_with_vite+preact.md +7 -0
- package/docs/uk/intlayer_with_vite+react.md +7 -0
- package/docs/uk/intlayer_with_vite+solid.md +7 -0
- package/docs/uk/packages/astro-intlayer/exports.md +162 -10
- package/docs/uk/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/uk/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/uk/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/uk/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/uk/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/uk/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/uk/packages/remix-intlayer/exports.md +80 -0
- package/docs/uk/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/uk/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/uk/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/uk/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/uk/readme.md +2 -1
- package/docs/vi/how_works_intlayer.md +86 -14
- package/docs/vi/intlayer_visual_editor.md +7 -0
- package/docs/vi/intlayer_with_astro.md +60 -36
- package/docs/vi/intlayer_with_astro_preact.md +7 -0
- package/docs/vi/intlayer_with_astro_react.md +7 -0
- package/docs/vi/intlayer_with_astro_solid.md +7 -0
- package/docs/vi/intlayer_with_astro_svelte.md +7 -0
- package/docs/vi/intlayer_with_astro_vanilla.md +7 -0
- package/docs/vi/intlayer_with_astro_vue.md +7 -0
- package/docs/vi/intlayer_with_nextjs_14.md +7 -0
- package/docs/vi/intlayer_with_nextjs_15.md +7 -0
- package/docs/vi/intlayer_with_nextjs_16.md +7 -0
- package/docs/vi/intlayer_with_react_router_v7.md +7 -0
- package/docs/vi/intlayer_with_remix_3.md +101 -148
- package/docs/vi/intlayer_with_tanstack+solid.md +7 -0
- package/docs/vi/intlayer_with_tanstack.md +7 -0
- package/docs/vi/intlayer_with_vite+preact.md +7 -0
- package/docs/vi/intlayer_with_vite+react.md +7 -0
- package/docs/vi/intlayer_with_vite+solid.md +7 -0
- package/docs/vi/packages/astro-intlayer/exports.md +167 -15
- package/docs/vi/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/vi/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/vi/packages/astro-intlayer/useDictionary.md +94 -0
- package/docs/vi/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/vi/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/vi/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/vi/packages/remix-intlayer/exports.md +80 -0
- package/docs/vi/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/vi/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/vi/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/vi/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/vi/readme.md +2 -1
- package/docs/zh/how_works_intlayer.md +86 -14
- package/docs/zh/intlayer_visual_editor.md +7 -0
- package/docs/zh/intlayer_with_astro.md +61 -37
- package/docs/zh/intlayer_with_astro_preact.md +7 -0
- package/docs/zh/intlayer_with_astro_react.md +7 -0
- package/docs/zh/intlayer_with_astro_solid.md +7 -0
- package/docs/zh/intlayer_with_astro_svelte.md +7 -0
- package/docs/zh/intlayer_with_astro_vanilla.md +7 -0
- package/docs/zh/intlayer_with_astro_vue.md +7 -0
- package/docs/zh/intlayer_with_nextjs_14.md +7 -0
- package/docs/zh/intlayer_with_nextjs_15.md +7 -0
- package/docs/zh/intlayer_with_nextjs_16.md +7 -0
- package/docs/zh/intlayer_with_react_router_v7.md +7 -0
- package/docs/zh/intlayer_with_remix_3.md +74 -112
- package/docs/zh/intlayer_with_tanstack+solid.md +7 -0
- package/docs/zh/intlayer_with_tanstack.md +7 -0
- package/docs/zh/intlayer_with_vite+preact.md +7 -0
- package/docs/zh/intlayer_with_vite+react.md +7 -0
- package/docs/zh/intlayer_with_vite+solid.md +7 -0
- package/docs/zh/packages/astro-intlayer/exports.md +166 -14
- package/docs/zh/packages/astro-intlayer/intlayer.md +76 -0
- package/docs/zh/packages/astro-intlayer/onRequest.md +76 -0
- package/docs/zh/packages/astro-intlayer/useDictionary.md +95 -0
- package/docs/zh/packages/astro-intlayer/useIntlayer.md +98 -0
- package/docs/zh/packages/astro-intlayer/useLocale.md +126 -0
- package/docs/zh/packages/remix-intlayer/Intlayer.md +55 -0
- package/docs/zh/packages/remix-intlayer/exports.md +80 -0
- package/docs/zh/packages/remix-intlayer/intlayerMiddleware.md +55 -0
- package/docs/zh/packages/remix-intlayer/useDictionary.md +95 -0
- package/docs/zh/packages/remix-intlayer/useIntlayer.md +94 -0
- package/docs/zh/packages/remix-intlayer/useLocale.md +104 -0
- package/docs/zh/readme.md +2 -1
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +223 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-01-21
|
|
3
|
+
updatedAt: 2026-09-19
|
|
4
|
+
title: Documentación de la integración intlayer | astro-intlayer
|
|
5
|
+
description: Aprende a configurar y utilizar la integración de Astro intlayer en astro.config.mjs.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayer
|
|
8
|
+
- astro
|
|
9
|
+
- astro-intlayer
|
|
10
|
+
- integración
|
|
11
|
+
- i18n
|
|
12
|
+
- internacionalización
|
|
13
|
+
- documentación
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- packages
|
|
17
|
+
- astro-intlayer
|
|
18
|
+
- intlayer
|
|
19
|
+
history:
|
|
20
|
+
- version: 9.5.5
|
|
21
|
+
date: 2026-09-19
|
|
22
|
+
changes: "Actualizada documentación de integración con detalles de middleware y hooks"
|
|
23
|
+
- version: 8.0.0
|
|
24
|
+
date: 2026-01-21
|
|
25
|
+
changes: "Doc inicial"
|
|
26
|
+
author: aymericzip
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
# Documentación de la integración de Astro intlayer
|
|
30
|
+
|
|
31
|
+
La integración `intlayer` para Astro configura tu proyecto para la internacionalización (i18n) multilingüe. Se encarga de la preparación de diccionarios en tiempo de compilación, la inyección de plugins de Vite, el registro automático de middleware de solicitudes y la emisión de páginas prerenderizadas localizadas.
|
|
32
|
+
|
|
33
|
+
## Uso
|
|
34
|
+
|
|
35
|
+
Agrega `intlayer()` a tu `astro.config.mjs`:
|
|
36
|
+
|
|
37
|
+
```ts fileName="astro.config.mjs"
|
|
38
|
+
import { defineConfig } from "astro/config";
|
|
39
|
+
import { intlayer } from "astro-intlayer";
|
|
40
|
+
|
|
41
|
+
export default defineConfig({
|
|
42
|
+
integrations: [intlayer()],
|
|
43
|
+
});
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
El codemod del CLI de Astro (`astro add astro-intlayer`) también genera una importación predeterminada que es compatible:
|
|
47
|
+
|
|
48
|
+
```ts
|
|
49
|
+
import intlayer from "astro-intlayer";
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Descripción
|
|
53
|
+
|
|
54
|
+
La integración se conecta al ciclo de vida de compilación y ejecución de Astro:
|
|
55
|
+
|
|
56
|
+
1. **Configuración (`astro:config:setup`)**:
|
|
57
|
+
- **Preparación de diccionarios**: Prepara los diccionarios de Intlayer y los tipos generados antes de que se ejecute la compilación.
|
|
58
|
+
- **Plugins de Vite**: Inyecta plugins para alias de Vite (permitiendo importaciones directas de diccionarios), proxies de enrutamiento de locale y poda de compilación.
|
|
59
|
+
- **Registro de Middleware**: Inyecta automáticamente `astro-intlayer/middleware` en la cadena de middleware de tu proyecto, completando `Astro.locals.intlayer` en cada solicitud entrante.
|
|
60
|
+
2. **Compilación finalizada (`astro:build:done`)**:
|
|
61
|
+
- **Reescritura de páginas**: Inspecciona las reglas de reescritura de URL localizadas y emite páginas HTML prerenderizadas en sus rutas localizadas correspondientes.
|
|
62
|
+
|
|
63
|
+
## Qué se proporciona de forma predeterminada
|
|
64
|
+
|
|
65
|
+
Una vez configurada, tu aplicación Astro puede utilizar inmediatamente:
|
|
66
|
+
|
|
67
|
+
- Los hooks `useIntlayer`, `useDictionary` y `useLocale` dentro del frontmatter de componentes `.astro`.
|
|
68
|
+
- El objeto `Astro.locals.intlayer` en endpoints y páginas de Astro.
|
|
69
|
+
- Importaciones en el cliente en bloques `<script>` que reflejan la misma API con actualizaciones reactivas.
|
|
70
|
+
- Formateadores integrados bajo `astro-intlayer/format` (`useDate`, `useNumber`, `useCurrency`, etc.).
|
|
71
|
+
|
|
72
|
+
## Documentación relacionada
|
|
73
|
+
|
|
74
|
+
- [Hook `useIntlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useIntlayer.md)
|
|
75
|
+
- [Hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useLocale.md)
|
|
76
|
+
- [Middleware `onRequest`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/onRequest.md)
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-19
|
|
3
|
+
updatedAt: 2026-09-19
|
|
4
|
+
title: Documentación del middleware onRequest | astro-intlayer
|
|
5
|
+
description: Descubre cómo usar el middleware onRequest en aplicaciones Astro para resolver el locale de la solicitud y completar Astro.locals.intlayer.
|
|
6
|
+
keywords:
|
|
7
|
+
- onRequest
|
|
8
|
+
- middleware
|
|
9
|
+
- astro
|
|
10
|
+
- astro-intlayer
|
|
11
|
+
- Astro.locals
|
|
12
|
+
- internacionalización
|
|
13
|
+
- documentación
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- packages
|
|
17
|
+
- astro-intlayer
|
|
18
|
+
- onRequest
|
|
19
|
+
history:
|
|
20
|
+
- version: 9.5.5
|
|
21
|
+
date: 2026-09-19
|
|
22
|
+
changes: "Doc inicial"
|
|
23
|
+
author: aymericzip
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
# Documentación del middleware de Astro onRequest
|
|
27
|
+
|
|
28
|
+
El middleware `onRequest` de `astro-intlayer/middleware` resuelve el locale de cada solicitud HTTP entrante y completa `Astro.locals.intlayer`.
|
|
29
|
+
|
|
30
|
+
Cuando registras la integración `intlayer()` en `astro.config.mjs`, este middleware se inyecta automáticamente. Solo necesitas importarlo directamente si estás componiendo manualmente middleware de Astro usando `sequence(...)`.
|
|
31
|
+
|
|
32
|
+
## Uso
|
|
33
|
+
|
|
34
|
+
```ts fileName="src/middleware.ts"
|
|
35
|
+
import { onRequest as intlayer } from "astro-intlayer/middleware";
|
|
36
|
+
import { sequence } from "astro:middleware";
|
|
37
|
+
|
|
38
|
+
export const onRequest = sequence(intlayer, async (context, next) => {
|
|
39
|
+
// Accede al locale resuelto en tu middleware personalizado
|
|
40
|
+
const { locale } = context.locals.intlayer;
|
|
41
|
+
console.log(`Gestionando solicitud para el locale: ${locale}`);
|
|
42
|
+
|
|
43
|
+
return next();
|
|
44
|
+
});
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Descripción
|
|
48
|
+
|
|
49
|
+
El middleware realiza lo siguiente:
|
|
50
|
+
|
|
51
|
+
1. **Detección de Locale**:
|
|
52
|
+
- **URL**: Analiza el prefijo de ruta de la URL o el parámetro de búsqueda `?locale=` (a menos que `routing.mode` esté configurado como `no-prefix`).
|
|
53
|
+
- **Cookies / Encabezados**: Comprueba cookies de locale persistidas o valores de encabezado personalizados.
|
|
54
|
+
- **Accept-Language**: Utiliza como alternativa la negociación de idioma preferida del navegador.
|
|
55
|
+
- Para páginas prerenderizadas (`context.isPrerendered`), el locale se extrae estrictamente de la URL para evitar advertencias de compilación de Astro.
|
|
56
|
+
2. **Población del contexto**: Completa `Astro.locals.intlayer` con:
|
|
57
|
+
- `locale`: El locale resuelto.
|
|
58
|
+
- `defaultLocale`: El locale de respaldo predeterminado.
|
|
59
|
+
- `availableLocales`: La lista de locales configurados.
|
|
60
|
+
3. **Ámbito AsyncLocalStorage**: Envuelve el procesamiento de la solicitud descendente dentro de un ámbito `AsyncLocalStorage`, permitiendo que `useIntlayer()`, `useDictionary()` y `useLocale()` accedan al estado de la solicitud sin pasar argumentos.
|
|
61
|
+
|
|
62
|
+
## Tipo `IntlayerLocals`
|
|
63
|
+
|
|
64
|
+
```ts
|
|
65
|
+
export type IntlayerLocals = {
|
|
66
|
+
locale: DeclaredLocales;
|
|
67
|
+
defaultLocale: DeclaredLocales;
|
|
68
|
+
availableLocales: DeclaredLocales[];
|
|
69
|
+
};
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Documentación relacionada
|
|
73
|
+
|
|
74
|
+
- [Integración `intlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/intlayer.md)
|
|
75
|
+
- [Hook `useIntlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useIntlayer.md)
|
|
76
|
+
- [Hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useLocale.md)
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-19
|
|
3
|
+
updatedAt: 2026-09-19
|
|
4
|
+
title: Documentación del hook useDictionary | astro-intlayer
|
|
5
|
+
description: Descubre cómo usar el hook useDictionary en componentes y scripts de Astro para resolver objetos de diccionario.
|
|
6
|
+
keywords:
|
|
7
|
+
- useDictionary
|
|
8
|
+
- dictionary
|
|
9
|
+
- astro
|
|
10
|
+
- astro-intlayer
|
|
11
|
+
- Intlayer
|
|
12
|
+
- intlayer
|
|
13
|
+
- internacionalización
|
|
14
|
+
- documentación
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- packages
|
|
18
|
+
- astro-intlayer
|
|
19
|
+
- useDictionary
|
|
20
|
+
history:
|
|
21
|
+
- version: 9.5.5
|
|
22
|
+
date: 2026-09-19
|
|
23
|
+
changes: "Doc inicial"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Documentación del hook useDictionary
|
|
28
|
+
|
|
29
|
+
El hook `useDictionary` resuelve un objeto de diccionario importado o en línea y devuelve su contenido para el locale actual en aplicaciones Astro.
|
|
30
|
+
|
|
31
|
+
A diferencia de `useIntlayer`, que recupera diccionarios por clave desde el registro global de diccionarios, `useDictionary` funciona directamente con un objeto de diccionario.
|
|
32
|
+
|
|
33
|
+
## Uso
|
|
34
|
+
|
|
35
|
+
```astro fileName="src/pages/index.astro"
|
|
36
|
+
---
|
|
37
|
+
import { useDictionary } from "astro-intlayer";
|
|
38
|
+
import homeContent from "../content/home.content";
|
|
39
|
+
|
|
40
|
+
const content = useDictionary(homeContent);
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
<main>
|
|
44
|
+
<h1>{content.title}</h1>
|
|
45
|
+
<p>{content.description}</p>
|
|
46
|
+
</main>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
También puedes pasar diccionarios en línea definidos con `t()`:
|
|
50
|
+
|
|
51
|
+
```astro fileName="src/components/Footer.astro"
|
|
52
|
+
---
|
|
53
|
+
import { useDictionary } from "astro-intlayer";
|
|
54
|
+
import { t } from "intlayer";
|
|
55
|
+
|
|
56
|
+
const footer = useDictionary({
|
|
57
|
+
key: "footer",
|
|
58
|
+
content: {
|
|
59
|
+
copyright: t({
|
|
60
|
+
es: "Todos los derechos reservados.",
|
|
61
|
+
en: "All rights reserved.",
|
|
62
|
+
fr: "Tous droits réservés.",
|
|
63
|
+
}),
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
<footer>
|
|
69
|
+
<p>{footer.copyright}</p>
|
|
70
|
+
</footer>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Parámetros
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
useDictionary(dictionary, localeOrSelector?)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
1. **`dictionary`**: Un objeto de diccionario o grupo de diccionarios calificado.
|
|
80
|
+
2. **`localeOrSelector`** (opcional): Un locale específico o un objeto selector (`{ item }`, `{ variant }`, opcionalmente con `locale`).
|
|
81
|
+
|
|
82
|
+
## Descripción
|
|
83
|
+
|
|
84
|
+
El hook realiza las siguientes tareas:
|
|
85
|
+
|
|
86
|
+
1. **Detección de Locale**: En el servidor, obtiene el locale de `Astro.locals.intlayer`. En el navegador, utiliza el locale del store del cliente.
|
|
87
|
+
2. **Procesamiento de contenido**: Resuelve traducciones (`t()`), enumeraciones, condiciones y estructuras anidadas según el locale resuelto.
|
|
88
|
+
3. **Selectores**: Aplica cualquier selector de elemento o variante proporcionado en los argumentos.
|
|
89
|
+
|
|
90
|
+
## Documentación relacionada
|
|
91
|
+
|
|
92
|
+
- [Integración `intlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/intlayer.md)
|
|
93
|
+
- [Hook `useIntlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useIntlayer.md)
|
|
94
|
+
- [Hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useLocale.md)
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-19
|
|
3
|
+
updatedAt: 2026-09-19
|
|
4
|
+
title: Documentación del hook useIntlayer | astro-intlayer
|
|
5
|
+
description: Descubre cómo usar el hook useIntlayer en componentes y scripts de cliente de Astro para acceder a contenido localizado.
|
|
6
|
+
keywords:
|
|
7
|
+
- useIntlayer
|
|
8
|
+
- dictionary
|
|
9
|
+
- astro
|
|
10
|
+
- astro-intlayer
|
|
11
|
+
- Intlayer
|
|
12
|
+
- intlayer
|
|
13
|
+
- internacionalización
|
|
14
|
+
- documentación
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- packages
|
|
18
|
+
- astro-intlayer
|
|
19
|
+
- useIntlayer
|
|
20
|
+
history:
|
|
21
|
+
- version: 9.5.5
|
|
22
|
+
date: 2026-09-19
|
|
23
|
+
changes: "Doc inicial"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Documentación del hook useIntlayer
|
|
28
|
+
|
|
29
|
+
El hook `useIntlayer` te permite obtener contenido de diccionario localizado por clave en aplicaciones Astro.
|
|
30
|
+
|
|
31
|
+
Se puede llamar en dos contextos distintos utilizando la misma ruta de importación:
|
|
32
|
+
|
|
33
|
+
1. **Servidor / Frontmatter**: Dentro de archivos `.astro`, resuelve automáticamente el contenido utilizando el locale de solicitud almacenado en `Astro.locals.intlayer`.
|
|
34
|
+
2. **Navegador / Etiqueta `<script>` del cliente**: En scripts de cliente o componentes de frameworks de UI, resuelve a la implementación del store del lado del cliente (`vanilla-intlayer`).
|
|
35
|
+
|
|
36
|
+
## Uso
|
|
37
|
+
|
|
38
|
+
### En el Frontmatter de componentes Astro
|
|
39
|
+
|
|
40
|
+
```astro fileName="src/pages/index.astro"
|
|
41
|
+
---
|
|
42
|
+
import { useIntlayer } from "astro-intlayer";
|
|
43
|
+
|
|
44
|
+
const content = useIntlayer("home");
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
<main>
|
|
48
|
+
<h1>{content.title}</h1>
|
|
49
|
+
<p>{content.description}</p>
|
|
50
|
+
</main>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### En bloques `<script>` del cliente
|
|
54
|
+
|
|
55
|
+
```astro fileName="src/components/InteractiveWidget.astro"
|
|
56
|
+
---
|
|
57
|
+
import { useIntlayer } from "astro-intlayer";
|
|
58
|
+
|
|
59
|
+
const content = useIntlayer("home");
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
<button id="alert-btn">{content.buttonText}</button>
|
|
63
|
+
|
|
64
|
+
<script>
|
|
65
|
+
import { useIntlayer } from "astro-intlayer";
|
|
66
|
+
|
|
67
|
+
const content = useIntlayer("home");
|
|
68
|
+
|
|
69
|
+
document.getElementById("alert-btn")?.addEventListener("click", () => {
|
|
70
|
+
alert(content.buttonText);
|
|
71
|
+
});
|
|
72
|
+
</script>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Parámetros
|
|
76
|
+
|
|
77
|
+
```ts
|
|
78
|
+
useIntlayer(key, localeOrSelector?)
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
1. **`key`**: La clave única del diccionario (tal como se define en tus archivos de declaración `.content.ts`).
|
|
82
|
+
2. **`localeOrSelector`** (opcional): Un locale específico o un objeto selector (`{ item }`, `{ variant }`, opcionalmente con `locale`). Si se proporciona, anula el locale detectado desde el contexto de la solicitud o el store del cliente.
|
|
83
|
+
|
|
84
|
+
## Descripción
|
|
85
|
+
|
|
86
|
+
El hook realiza las siguientes tareas:
|
|
87
|
+
|
|
88
|
+
1. **Resolución de Locale**:
|
|
89
|
+
- En el servidor, lee el locale activo de `Astro.locals.intlayer` a través de un ámbito `AsyncLocalStorage` inicializado por `astro-intlayer/middleware`.
|
|
90
|
+
- En el navegador, lee el locale activo desde el almacenamiento/store del cliente.
|
|
91
|
+
2. **Obtención del diccionario**: Inyecta el contenido del diccionario que coincide con la clave especificada.
|
|
92
|
+
3. **Procesamiento de traducción**: Resuelve traducciones (`t()`), enumeraciones, condiciones y markdown en contenido listo para renderizar.
|
|
93
|
+
|
|
94
|
+
## Documentación relacionada
|
|
95
|
+
|
|
96
|
+
- [Integración `intlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/intlayer.md)
|
|
97
|
+
- [Hook `useDictionary`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useDictionary.md)
|
|
98
|
+
- [Hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useLocale.md)
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-19
|
|
3
|
+
updatedAt: 2026-09-19
|
|
4
|
+
title: Documentación del hook useLocale | astro-intlayer
|
|
5
|
+
description: Descubre cómo usar el hook useLocale en aplicaciones Astro para acceder y administrar el locale actual.
|
|
6
|
+
keywords:
|
|
7
|
+
- useLocale
|
|
8
|
+
- locale
|
|
9
|
+
- astro
|
|
10
|
+
- astro-intlayer
|
|
11
|
+
- Intlayer
|
|
12
|
+
- intlayer
|
|
13
|
+
- internacionalización
|
|
14
|
+
- documentación
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- packages
|
|
18
|
+
- astro-intlayer
|
|
19
|
+
- useLocale
|
|
20
|
+
history:
|
|
21
|
+
- version: 9.5.5
|
|
22
|
+
date: 2026-09-19
|
|
23
|
+
changes: "Doc inicial"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Documentación del hook useLocale
|
|
28
|
+
|
|
29
|
+
El hook `useLocale` de `astro-intlayer` proporciona acceso al locale de solicitud actual, al locale predeterminado configurado y a todos los locales disponibles en aplicaciones Astro.
|
|
30
|
+
|
|
31
|
+
Se comporta de manera consistente en el frontmatter de `.astro` renderizado en el servidor y en los bloques `<script>` del lado del cliente.
|
|
32
|
+
|
|
33
|
+
## Uso
|
|
34
|
+
|
|
35
|
+
### En el Frontmatter de componentes (Renderizado en Servidor)
|
|
36
|
+
|
|
37
|
+
```astro fileName="src/layouts/Layout.astro"
|
|
38
|
+
---
|
|
39
|
+
import { useLocale } from "astro-intlayer";
|
|
40
|
+
import { getLocalizedUrl, getPathWithoutLocale } from "intlayer";
|
|
41
|
+
|
|
42
|
+
const { locale, defaultLocale, availableLocales } = useLocale();
|
|
43
|
+
const pathWithoutLocale = getPathWithoutLocale(Astro.url.pathname);
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
<!DOCTYPE html>
|
|
47
|
+
<html lang={locale}>
|
|
48
|
+
<head>
|
|
49
|
+
<meta charset="utf-8" />
|
|
50
|
+
<title>Astro + Intlayer</title>
|
|
51
|
+
</head>
|
|
52
|
+
<body>
|
|
53
|
+
<header>
|
|
54
|
+
<span>Actual: {locale}</span>
|
|
55
|
+
<span>Predeterminado: {defaultLocale}</span>
|
|
56
|
+
<nav>
|
|
57
|
+
<ul>
|
|
58
|
+
{availableLocales.map((localeItem) => (
|
|
59
|
+
<li key={localeItem} className="p-1">
|
|
60
|
+
<a
|
|
61
|
+
href={getLocalizedUrl(pathWithoutLocale, localeItem)}
|
|
62
|
+
aria-current={localeItem === locale ? "page" : undefined}
|
|
63
|
+
>
|
|
64
|
+
{localeItem.toUpperCase()}
|
|
65
|
+
</a>
|
|
66
|
+
</li>
|
|
67
|
+
))}
|
|
68
|
+
</ul>
|
|
69
|
+
</nav>
|
|
70
|
+
</header>
|
|
71
|
+
<slot />
|
|
72
|
+
</body>
|
|
73
|
+
</html>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### En `<script>` del cliente (Interactivo)
|
|
77
|
+
|
|
78
|
+
```astro fileName="src/components/LocaleSwitcher.astro"
|
|
79
|
+
---
|
|
80
|
+
import { useLocale } from "astro-intlayer";
|
|
81
|
+
|
|
82
|
+
const { locale, availableLocales } = useLocale();
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
<select id="locale-select">
|
|
86
|
+
{availableLocales.map((loc) => (
|
|
87
|
+
<option value={loc} selected={loc === locale}>
|
|
88
|
+
{loc.toUpperCase()}
|
|
89
|
+
</option>
|
|
90
|
+
))}
|
|
91
|
+
</select>
|
|
92
|
+
|
|
93
|
+
<script>
|
|
94
|
+
import { useLocale, setLocaleInStorage } from "astro-intlayer";
|
|
95
|
+
|
|
96
|
+
const { setLocale } = useLocale();
|
|
97
|
+
|
|
98
|
+
document.getElementById("locale-select")?.addEventListener("change", (e) => {
|
|
99
|
+
const target = e.target as HTMLSelectElement;
|
|
100
|
+
setLocale(target.value);
|
|
101
|
+
});
|
|
102
|
+
</script>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
## Valores de retorno
|
|
106
|
+
|
|
107
|
+
El hook devuelve un objeto de tipo `UseLocaleResult`:
|
|
108
|
+
|
|
109
|
+
| Propiedad | Tipo | Descripción |
|
|
110
|
+
| ------------------ | -------------------------------------- | ------------------------------------------------------------------------------------- |
|
|
111
|
+
| `locale` | `DeclaredLocales` | El locale activo. |
|
|
112
|
+
| `defaultLocale` | `DeclaredLocales` | El locale de respaldo predeterminado configurado en `intlayer.config.ts`. |
|
|
113
|
+
| `availableLocales` | `DeclaredLocales[]` | Matriz de todos los locales admitidos configurados para el proyecto. |
|
|
114
|
+
| `setLocale` | `(locale: LocalesValues) => void` | Función para actualizar el locale. (Interactiva en `<script>`, advierte durante SSR). |
|
|
115
|
+
| `subscribe` | `(callback: () => void) => () => void` | Se suscribe a los cambios de locale en el lado del cliente. |
|
|
116
|
+
|
|
117
|
+
## Comportamiento Servidor vs Cliente
|
|
118
|
+
|
|
119
|
+
- **Durante SSR / Renderizado en Servidor**: Una solicitud se procesa una vez con parámetros fijos. Llamar a `setLocale()` durante un renderizado de servidor no tiene efecto y emite una advertencia; el cambio de locale debe realizarse en el cliente o navegando a la URL del locale de destino.
|
|
120
|
+
- **En scripts de cliente**: `setLocale` actualiza el store del cliente y actualiza las cookies persistidas o el almacenamiento local de acuerdo con tu configuración de Intlayer.
|
|
121
|
+
|
|
122
|
+
## Documentación relacionada
|
|
123
|
+
|
|
124
|
+
- [Integración `intlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/intlayer.md)
|
|
125
|
+
- [Hook `useIntlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useIntlayer.md)
|
|
126
|
+
- [Hook `useDictionary`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/astro-intlayer/useDictionary.md)
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-19
|
|
3
|
+
updatedAt: 2026-09-19
|
|
4
|
+
title: Documentación del contexto Intlayer | remix-intlayer
|
|
5
|
+
description: Vea cómo utilizar la clave y propiedad de contexto de solicitud Intlayer en aplicaciones Remix 3.
|
|
6
|
+
keywords:
|
|
7
|
+
- Intlayer
|
|
8
|
+
- remix
|
|
9
|
+
- remix-3
|
|
10
|
+
- contexto
|
|
11
|
+
- RequestContext
|
|
12
|
+
- Internacionalización
|
|
13
|
+
- Documentación
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- packages
|
|
17
|
+
- remix-intlayer
|
|
18
|
+
- Intlayer
|
|
19
|
+
history:
|
|
20
|
+
- version: 9.5.5
|
|
21
|
+
date: 2026-09-19
|
|
22
|
+
changes: "Init doc"
|
|
23
|
+
author: aymericzip
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
# Documentación del contexto Intlayer
|
|
27
|
+
|
|
28
|
+
En `remix-intlayer`, `Intlayer` es la clave de `RequestContext` utilizada para acceder al estado de internacionalización dentro de los controladores de solicitudes de Remix 3.
|
|
29
|
+
|
|
30
|
+
## Uso
|
|
31
|
+
|
|
32
|
+
Cuando se ejecuta el middleware `intlayer()`, almacena un objeto `IntlayerState` en el contexto de solicitud bajo la clave `Intlayer`. Puedes recuperarlo dentro de cualquier controlador de ruta:
|
|
33
|
+
|
|
34
|
+
```ts fileName="src/server.ts"
|
|
35
|
+
import { createRouter } from "remix/router";
|
|
36
|
+
import { intlayer, Intlayer } from "remix-intlayer";
|
|
37
|
+
|
|
38
|
+
const router = createRouter({
|
|
39
|
+
middleware: [intlayer()],
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
router.get("/api/profile", (context) => {
|
|
43
|
+
// Acceso mediante context.get(Intlayer)
|
|
44
|
+
const { locale, defaultLocale, availableLocales } = context.get(Intlayer);
|
|
45
|
+
|
|
46
|
+
return Response.json({
|
|
47
|
+
locale,
|
|
48
|
+
defaultLocale,
|
|
49
|
+
availableLocales,
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
También puedes acceder utilizando el atajo de propiedad directa `context.intlayer`:
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
router.get("/api/status", (context) => {
|
|
58
|
+
const currentLocale = context.intlayer.locale;
|
|
59
|
+
return Response.json({ status: "ok", locale: currentLocale });
|
|
60
|
+
});
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Estructura de `IntlayerState`
|
|
64
|
+
|
|
65
|
+
El objeto `IntlayerState` contiene:
|
|
66
|
+
|
|
67
|
+
| Propiedad | Tipo | Descripción |
|
|
68
|
+
| ------------------ | ------------------- | ------------------------------------------------------------------------- |
|
|
69
|
+
| `locale` | `DeclaredLocales` | La locale resuelta para la solicitud actual. |
|
|
70
|
+
| `defaultLocale` | `DeclaredLocales` | La locale predeterminada de respaldo configurada en `intlayer.config.ts`. |
|
|
71
|
+
| `availableLocales` | `DeclaredLocales[]` | La lista de todas las locales admitidas configuradas para el proyecto. |
|
|
72
|
+
|
|
73
|
+
## Documentación relacionada
|
|
74
|
+
|
|
75
|
+
- [Middleware `intlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/remix-intlayer/intlayerMiddleware.md)
|
|
76
|
+
- [Hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/remix-intlayer/useLocale.md)
|
|
77
|
+
- [Hook `useIntlayer`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/remix-intlayer/useIntlayer.md)
|