@intlayer/docs 9.0.0-canary.6 → 9.0.0-canary.7
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/dist/cjs/generated/docs.entry.cjs +80 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +80 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +4 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/compiler.md +6 -3
- package/docs/ar/custom_domains.md +8 -2
- package/docs/ar/custom_url_rewrites.md +8 -2
- package/docs/ar/intlayer_with_analog.md +5 -1
- package/docs/ar/intlayer_with_astro.md +2 -0
- package/docs/ar/intlayer_with_astro_lit.md +2 -0
- package/docs/ar/intlayer_with_astro_preact.md +2 -0
- package/docs/ar/intlayer_with_astro_react.md +2 -0
- package/docs/ar/intlayer_with_astro_solid.md +2 -0
- package/docs/ar/intlayer_with_astro_svelte.md +2 -0
- package/docs/ar/intlayer_with_astro_vanilla.md +2 -0
- package/docs/ar/intlayer_with_astro_vue.md +2 -0
- package/docs/ar/intlayer_with_lynx+react.md +6 -1
- package/docs/ar/intlayer_with_nextjs_16.md +2 -0
- package/docs/ar/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/ar/intlayer_with_react_native+expo.md +6 -1
- package/docs/ar/intlayer_with_react_router_v7.md +3 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/ar/intlayer_with_storybook.md +7 -1
- package/docs/ar/intlayer_with_svelte_kit.md +8 -3
- package/docs/ar/intlayer_with_tanstack+solid.md +18 -11
- package/docs/ar/intlayer_with_tanstack.md +16 -7
- package/docs/ar/intlayer_with_vite+lit.md +8 -2
- package/docs/ar/intlayer_with_vite+preact.md +2 -0
- package/docs/ar/intlayer_with_vite+react.md +8 -3
- package/docs/ar/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/ar/intlayer_with_vite+solid.md +2 -0
- package/docs/ar/intlayer_with_vite+svelte.md +4 -2
- package/docs/ar/intlayer_with_vite+vanilla.md +16 -5
- package/docs/ar/intlayer_with_vite+vue.md +8 -3
- package/docs/ar/packages/@intlayer_babel/export.md +131 -0
- package/docs/ar/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ar/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ar/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ar/releases/v9.md +45 -1
- package/docs/bn/custom_domains.md +8 -2
- package/docs/bn/intlayer_with_storybook.md +7 -1
- package/docs/bn/intlayer_with_vite+lit.md +8 -2
- package/docs/bn/intlayer_with_vite+vanilla.md +16 -5
- package/docs/cs/custom_domains.md +8 -2
- package/docs/cs/intlayer_with_storybook.md +7 -1
- package/docs/cs/intlayer_with_vite+lit.md +8 -2
- package/docs/cs/intlayer_with_vite+vanilla.md +16 -5
- package/docs/de/compiler.md +6 -3
- package/docs/de/custom_domains.md +8 -2
- package/docs/de/custom_url_rewrites.md +8 -2
- package/docs/de/intlayer_with_analog.md +5 -1
- package/docs/de/intlayer_with_astro.md +3 -1
- package/docs/de/intlayer_with_astro_lit.md +3 -1
- package/docs/de/intlayer_with_astro_preact.md +3 -1
- package/docs/de/intlayer_with_astro_react.md +3 -1
- package/docs/de/intlayer_with_astro_solid.md +3 -1
- package/docs/de/intlayer_with_astro_svelte.md +3 -1
- package/docs/de/intlayer_with_astro_vanilla.md +3 -1
- package/docs/de/intlayer_with_astro_vue.md +3 -1
- package/docs/de/intlayer_with_lynx+react.md +6 -1
- package/docs/de/intlayer_with_nextjs_16.md +2 -0
- package/docs/de/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/de/intlayer_with_react_native+expo.md +6 -1
- package/docs/de/intlayer_with_react_router_v7.md +3 -1
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +8 -3
- package/docs/de/intlayer_with_storybook.md +7 -1
- package/docs/de/intlayer_with_svelte_kit.md +9 -4
- package/docs/de/intlayer_with_tanstack+solid.md +18 -11
- package/docs/de/intlayer_with_tanstack.md +17 -8
- package/docs/de/intlayer_with_vite+lit.md +13 -4
- package/docs/de/intlayer_with_vite+preact.md +3 -1
- package/docs/de/intlayer_with_vite+react.md +9 -4
- package/docs/de/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/de/intlayer_with_vite+solid.md +3 -1
- package/docs/de/intlayer_with_vite+svelte.md +9 -4
- package/docs/de/intlayer_with_vite+vanilla.md +16 -5
- package/docs/de/intlayer_with_vite+vue.md +9 -4
- package/docs/de/packages/@intlayer_babel/export.md +131 -0
- package/docs/de/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/de/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/de/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/de/releases/v9.md +23 -1
- package/docs/en/compiler.md +5 -1
- package/docs/en/custom_domains.md +8 -2
- package/docs/en/custom_url_rewrites.md +8 -2
- package/docs/en/intlayer_with_analog.md +5 -1
- package/docs/en/intlayer_with_astro.md +2 -2
- package/docs/en/intlayer_with_astro_lit.md +2 -2
- package/docs/en/intlayer_with_astro_preact.md +2 -2
- package/docs/en/intlayer_with_astro_react.md +2 -2
- package/docs/en/intlayer_with_astro_solid.md +2 -2
- package/docs/en/intlayer_with_astro_svelte.md +2 -2
- package/docs/en/intlayer_with_astro_vanilla.md +2 -2
- package/docs/en/intlayer_with_astro_vue.md +2 -2
- package/docs/en/intlayer_with_lynx+react.md +6 -1
- package/docs/en/intlayer_with_nextjs_16.md +2 -0
- package/docs/en/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/en/intlayer_with_react_native+expo.md +6 -1
- package/docs/en/intlayer_with_react_router_v7.md +8 -3
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +8 -3
- package/docs/en/intlayer_with_storybook.md +7 -1
- package/docs/en/intlayer_with_svelte_kit.md +8 -5
- package/docs/en/intlayer_with_tanstack+solid.md +18 -9
- package/docs/en/intlayer_with_tanstack.md +16 -7
- package/docs/en/intlayer_with_vite+lit.md +13 -4
- package/docs/en/intlayer_with_vite+preact.md +8 -3
- package/docs/en/intlayer_with_vite+react.md +8 -3
- package/docs/en/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/en/intlayer_with_vite+solid.md +8 -3
- package/docs/en/intlayer_with_vite+svelte.md +8 -3
- package/docs/en/intlayer_with_vite+vanilla.md +15 -6
- package/docs/en/intlayer_with_vite+vue.md +8 -3
- package/docs/en/packages/@intlayer_babel/export.md +131 -0
- package/docs/en/packages/vite-intlayer/exports.md +38 -13
- package/docs/en/packages/vite-intlayer/intlayer.md +133 -14
- package/docs/en/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/en/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/en/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/en/packages/vite-intlayer/intlayerPrune.md +90 -12
- package/docs/en/releases/v9.md +25 -1
- package/docs/en-GB/compiler.md +6 -3
- package/docs/en-GB/custom_domains.md +8 -2
- package/docs/en-GB/custom_url_rewrites.md +8 -2
- package/docs/en-GB/intlayer_with_analog.md +5 -1
- package/docs/en-GB/intlayer_with_astro.md +2 -0
- package/docs/en-GB/intlayer_with_astro_lit.md +2 -0
- package/docs/en-GB/intlayer_with_astro_preact.md +2 -0
- package/docs/en-GB/intlayer_with_astro_react.md +2 -0
- package/docs/en-GB/intlayer_with_astro_solid.md +2 -0
- package/docs/en-GB/intlayer_with_astro_svelte.md +2 -0
- package/docs/en-GB/intlayer_with_astro_vanilla.md +2 -0
- package/docs/en-GB/intlayer_with_astro_vue.md +2 -0
- package/docs/en-GB/intlayer_with_lynx+react.md +6 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +6 -1
- package/docs/en-GB/intlayer_with_react_router_v7.md +6 -3
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +6 -3
- package/docs/en-GB/intlayer_with_storybook.md +7 -1
- package/docs/en-GB/intlayer_with_svelte_kit.md +6 -3
- package/docs/en-GB/intlayer_with_tanstack+solid.md +18 -11
- package/docs/en-GB/intlayer_with_tanstack.md +14 -7
- package/docs/en-GB/intlayer_with_vite+lit.md +13 -4
- package/docs/en-GB/intlayer_with_vite+react.md +6 -3
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/en-GB/intlayer_with_vite+svelte.md +6 -3
- package/docs/en-GB/intlayer_with_vite+vanilla.md +15 -4
- package/docs/en-GB/intlayer_with_vite+vue.md +6 -3
- package/docs/en-GB/packages/@intlayer_babel/export.md +131 -0
- package/docs/en-GB/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/en-GB/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/en-GB/releases/v9.md +23 -1
- package/docs/es/compiler.md +6 -3
- package/docs/es/custom_domains.md +8 -2
- package/docs/es/custom_url_rewrites.md +8 -2
- package/docs/es/intlayer_with_analog.md +5 -1
- package/docs/es/intlayer_with_astro.md +3 -1
- package/docs/es/intlayer_with_astro_lit.md +3 -1
- package/docs/es/intlayer_with_astro_preact.md +3 -1
- package/docs/es/intlayer_with_astro_react.md +3 -1
- package/docs/es/intlayer_with_astro_solid.md +3 -1
- package/docs/es/intlayer_with_astro_svelte.md +3 -1
- package/docs/es/intlayer_with_astro_vanilla.md +3 -1
- package/docs/es/intlayer_with_astro_vue.md +3 -1
- package/docs/es/intlayer_with_lynx+react.md +6 -1
- package/docs/es/intlayer_with_nextjs_16.md +2 -0
- package/docs/es/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/es/intlayer_with_react_native+expo.md +6 -1
- package/docs/es/intlayer_with_react_router_v7.md +3 -1
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +9 -4
- package/docs/es/intlayer_with_storybook.md +7 -1
- package/docs/es/intlayer_with_svelte_kit.md +9 -4
- package/docs/es/intlayer_with_tanstack+solid.md +18 -11
- package/docs/es/intlayer_with_tanstack.md +17 -8
- package/docs/es/intlayer_with_vite+lit.md +13 -4
- package/docs/es/intlayer_with_vite+preact.md +3 -1
- package/docs/es/intlayer_with_vite+react.md +9 -4
- package/docs/es/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/es/intlayer_with_vite+solid.md +3 -1
- package/docs/es/intlayer_with_vite+svelte.md +4 -2
- package/docs/es/intlayer_with_vite+vanilla.md +16 -5
- package/docs/es/intlayer_with_vite+vue.md +9 -4
- package/docs/es/packages/@intlayer_babel/export.md +131 -0
- package/docs/es/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/es/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/es/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/es/releases/v9.md +23 -1
- package/docs/fr/compiler.md +6 -3
- package/docs/fr/custom_domains.md +8 -2
- package/docs/fr/custom_url_rewrites.md +8 -2
- package/docs/fr/intlayer_with_analog.md +5 -1
- package/docs/fr/intlayer_with_astro.md +3 -1
- package/docs/fr/intlayer_with_astro_lit.md +3 -1
- package/docs/fr/intlayer_with_astro_preact.md +3 -1
- package/docs/fr/intlayer_with_astro_react.md +3 -1
- package/docs/fr/intlayer_with_astro_solid.md +3 -1
- package/docs/fr/intlayer_with_astro_svelte.md +3 -1
- package/docs/fr/intlayer_with_astro_vanilla.md +3 -1
- package/docs/fr/intlayer_with_astro_vue.md +3 -1
- package/docs/fr/intlayer_with_lynx+react.md +6 -1
- package/docs/fr/intlayer_with_nextjs_16.md +2 -0
- package/docs/fr/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/fr/intlayer_with_react_native+expo.md +6 -1
- package/docs/fr/intlayer_with_react_router_v7.md +3 -1
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/fr/intlayer_with_storybook.md +7 -1
- package/docs/fr/intlayer_with_svelte_kit.md +9 -4
- package/docs/fr/intlayer_with_tanstack+solid.md +18 -11
- package/docs/fr/intlayer_with_tanstack.md +17 -8
- package/docs/fr/intlayer_with_vite+lit.md +13 -4
- package/docs/fr/intlayer_with_vite+preact.md +3 -1
- package/docs/fr/intlayer_with_vite+react.md +9 -4
- package/docs/fr/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/fr/intlayer_with_vite+solid.md +3 -1
- package/docs/fr/intlayer_with_vite+svelte.md +9 -4
- package/docs/fr/intlayer_with_vite+vanilla.md +16 -5
- package/docs/fr/intlayer_with_vite+vue.md +9 -4
- package/docs/fr/packages/@intlayer_babel/export.md +131 -0
- package/docs/fr/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/fr/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/fr/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/fr/releases/v9.md +23 -1
- package/docs/hi/compiler.md +6 -3
- package/docs/hi/custom_domains.md +8 -2
- package/docs/hi/custom_url_rewrites.md +8 -2
- package/docs/hi/intlayer_with_analog.md +5 -1
- package/docs/hi/intlayer_with_astro.md +6 -3
- package/docs/hi/intlayer_with_astro_lit.md +6 -3
- package/docs/hi/intlayer_with_astro_preact.md +6 -3
- package/docs/hi/intlayer_with_astro_react.md +6 -3
- package/docs/hi/intlayer_with_astro_solid.md +6 -3
- package/docs/hi/intlayer_with_astro_svelte.md +6 -3
- package/docs/hi/intlayer_with_astro_vanilla.md +6 -3
- package/docs/hi/intlayer_with_astro_vue.md +6 -3
- package/docs/hi/intlayer_with_lynx+react.md +6 -1
- package/docs/hi/intlayer_with_react_native+expo.md +6 -1
- package/docs/hi/intlayer_with_react_router_v7.md +6 -3
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +6 -3
- package/docs/hi/intlayer_with_storybook.md +7 -1
- package/docs/hi/intlayer_with_svelte_kit.md +12 -6
- package/docs/hi/intlayer_with_tanstack+solid.md +18 -11
- package/docs/hi/intlayer_with_tanstack.md +20 -10
- package/docs/hi/intlayer_with_vite+lit.md +8 -2
- package/docs/hi/intlayer_with_vite+preact.md +6 -3
- package/docs/hi/intlayer_with_vite+react.md +12 -6
- package/docs/hi/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/hi/intlayer_with_vite+solid.md +6 -3
- package/docs/hi/intlayer_with_vite+svelte.md +7 -4
- package/docs/hi/intlayer_with_vite+vanilla.md +16 -5
- package/docs/hi/intlayer_with_vite+vue.md +12 -6
- package/docs/hi/packages/@intlayer_babel/export.md +131 -0
- package/docs/hi/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/hi/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/hi/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/hi/releases/v9.md +23 -1
- package/docs/id/compiler.md +6 -3
- package/docs/id/custom_domains.md +8 -2
- package/docs/id/custom_url_rewrites.md +8 -2
- package/docs/id/intlayer_with_analog.md +5 -1
- package/docs/id/intlayer_with_astro.md +3 -1
- package/docs/id/intlayer_with_astro_lit.md +3 -1
- package/docs/id/intlayer_with_astro_preact.md +3 -1
- package/docs/id/intlayer_with_astro_react.md +3 -1
- package/docs/id/intlayer_with_astro_solid.md +3 -1
- package/docs/id/intlayer_with_astro_svelte.md +3 -1
- package/docs/id/intlayer_with_astro_vanilla.md +3 -1
- package/docs/id/intlayer_with_astro_vue.md +3 -1
- package/docs/id/intlayer_with_lynx+react.md +6 -1
- package/docs/id/intlayer_with_nextjs_16.md +2 -0
- package/docs/id/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/id/intlayer_with_react_native+expo.md +6 -1
- package/docs/id/intlayer_with_react_router_v7.md +3 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +9 -4
- package/docs/id/intlayer_with_storybook.md +7 -1
- package/docs/id/intlayer_with_svelte_kit.md +9 -4
- package/docs/id/intlayer_with_tanstack+solid.md +18 -11
- package/docs/id/intlayer_with_tanstack.md +17 -8
- package/docs/id/intlayer_with_vite+lit.md +8 -2
- package/docs/id/intlayer_with_vite+preact.md +3 -1
- package/docs/id/intlayer_with_vite+react.md +9 -4
- package/docs/id/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/id/intlayer_with_vite+solid.md +3 -1
- package/docs/id/intlayer_with_vite+svelte.md +5 -3
- package/docs/id/intlayer_with_vite+vanilla.md +16 -5
- package/docs/id/intlayer_with_vite+vue.md +9 -4
- package/docs/id/packages/@intlayer_babel/export.md +131 -0
- package/docs/id/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/id/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/id/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/id/releases/v9.md +23 -1
- package/docs/it/compiler.md +6 -3
- package/docs/it/custom_domains.md +8 -2
- package/docs/it/custom_url_rewrites.md +8 -2
- package/docs/it/intlayer_with_analog.md +5 -1
- package/docs/it/intlayer_with_astro.md +3 -1
- package/docs/it/intlayer_with_astro_lit.md +3 -1
- package/docs/it/intlayer_with_astro_preact.md +3 -1
- package/docs/it/intlayer_with_astro_react.md +3 -1
- package/docs/it/intlayer_with_astro_solid.md +3 -1
- package/docs/it/intlayer_with_astro_svelte.md +3 -1
- package/docs/it/intlayer_with_astro_vanilla.md +3 -1
- package/docs/it/intlayer_with_astro_vue.md +3 -1
- package/docs/it/intlayer_with_lynx+react.md +6 -1
- package/docs/it/intlayer_with_nextjs_16.md +2 -0
- package/docs/it/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/it/intlayer_with_react_native+expo.md +6 -1
- package/docs/it/intlayer_with_react_router_v7.md +3 -1
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/it/intlayer_with_storybook.md +7 -1
- package/docs/it/intlayer_with_svelte_kit.md +9 -4
- package/docs/it/intlayer_with_tanstack+solid.md +18 -11
- package/docs/it/intlayer_with_tanstack.md +17 -8
- package/docs/it/intlayer_with_vite+lit.md +13 -4
- package/docs/it/intlayer_with_vite+preact.md +3 -1
- package/docs/it/intlayer_with_vite+react.md +9 -4
- package/docs/it/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/it/intlayer_with_vite+solid.md +3 -1
- package/docs/it/intlayer_with_vite+svelte.md +4 -2
- package/docs/it/intlayer_with_vite+vanilla.md +16 -5
- package/docs/it/intlayer_with_vite+vue.md +9 -4
- package/docs/it/packages/@intlayer_babel/export.md +131 -0
- package/docs/it/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/it/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/it/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/it/releases/v9.md +23 -1
- package/docs/ja/compiler.md +6 -3
- package/docs/ja/custom_domains.md +8 -2
- package/docs/ja/custom_url_rewrites.md +8 -2
- package/docs/ja/intlayer_with_analog.md +5 -1
- package/docs/ja/intlayer_with_astro.md +2 -0
- package/docs/ja/intlayer_with_astro_lit.md +2 -0
- package/docs/ja/intlayer_with_astro_preact.md +2 -0
- package/docs/ja/intlayer_with_astro_react.md +2 -0
- package/docs/ja/intlayer_with_astro_solid.md +2 -0
- package/docs/ja/intlayer_with_astro_svelte.md +2 -0
- package/docs/ja/intlayer_with_astro_vanilla.md +2 -0
- package/docs/ja/intlayer_with_astro_vue.md +2 -0
- package/docs/ja/intlayer_with_lynx+react.md +6 -1
- package/docs/ja/intlayer_with_nextjs_16.md +2 -0
- package/docs/ja/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/ja/intlayer_with_react_native+expo.md +6 -1
- package/docs/ja/intlayer_with_react_router_v7.md +8 -3
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/ja/intlayer_with_storybook.md +7 -1
- package/docs/ja/intlayer_with_svelte_kit.md +2 -0
- package/docs/ja/intlayer_with_tanstack+solid.md +18 -11
- package/docs/ja/intlayer_with_tanstack.md +18 -11
- package/docs/ja/intlayer_with_vite+lit.md +13 -4
- package/docs/ja/intlayer_with_vite+preact.md +8 -3
- package/docs/ja/intlayer_with_vite+react.md +3 -1
- package/docs/ja/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/ja/intlayer_with_vite+solid.md +3 -1
- package/docs/ja/intlayer_with_vite+svelte.md +5 -3
- package/docs/ja/intlayer_with_vite+vanilla.md +16 -5
- package/docs/ja/intlayer_with_vite+vue.md +9 -4
- package/docs/ja/packages/@intlayer_babel/export.md +131 -0
- package/docs/ja/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ja/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ja/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ja/releases/v9.md +23 -1
- package/docs/ko/compiler.md +6 -3
- package/docs/ko/custom_domains.md +8 -2
- package/docs/ko/custom_url_rewrites.md +8 -2
- package/docs/ko/intlayer_with_analog.md +5 -1
- package/docs/ko/intlayer_with_astro.md +3 -1
- package/docs/ko/intlayer_with_astro_lit.md +3 -1
- package/docs/ko/intlayer_with_astro_preact.md +3 -1
- package/docs/ko/intlayer_with_astro_react.md +3 -1
- package/docs/ko/intlayer_with_astro_solid.md +3 -1
- package/docs/ko/intlayer_with_astro_svelte.md +3 -1
- package/docs/ko/intlayer_with_astro_vanilla.md +3 -1
- package/docs/ko/intlayer_with_astro_vue.md +3 -1
- package/docs/ko/intlayer_with_lynx+react.md +6 -1
- package/docs/ko/intlayer_with_nextjs_16.md +2 -0
- package/docs/ko/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/ko/intlayer_with_react_native+expo.md +6 -1
- package/docs/ko/intlayer_with_react_router_v7.md +3 -1
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/ko/intlayer_with_storybook.md +7 -1
- package/docs/ko/intlayer_with_svelte_kit.md +9 -4
- package/docs/ko/intlayer_with_tanstack+solid.md +18 -11
- package/docs/ko/intlayer_with_tanstack.md +17 -8
- package/docs/ko/intlayer_with_vite+lit.md +13 -4
- package/docs/ko/intlayer_with_vite+preact.md +3 -1
- package/docs/ko/intlayer_with_vite+react.md +3 -1
- package/docs/ko/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/ko/intlayer_with_vite+svelte.md +5 -3
- package/docs/ko/intlayer_with_vite+vanilla.md +16 -5
- package/docs/ko/intlayer_with_vite+vue.md +9 -4
- package/docs/ko/packages/@intlayer_babel/export.md +131 -0
- package/docs/ko/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ko/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ko/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ko/releases/v9.md +23 -1
- package/docs/nl/custom_domains.md +8 -2
- package/docs/nl/intlayer_with_storybook.md +7 -1
- package/docs/nl/intlayer_with_vite+lit.md +8 -2
- package/docs/nl/intlayer_with_vite+vanilla.md +16 -5
- package/docs/pl/compiler.md +6 -3
- package/docs/pl/custom_domains.md +8 -2
- package/docs/pl/custom_url_rewrites.md +8 -2
- package/docs/pl/intlayer_with_analog.md +5 -1
- package/docs/pl/intlayer_with_astro.md +6 -4
- package/docs/pl/intlayer_with_astro_lit.md +3 -1
- package/docs/pl/intlayer_with_astro_preact.md +3 -1
- package/docs/pl/intlayer_with_astro_react.md +3 -1
- package/docs/pl/intlayer_with_astro_solid.md +3 -1
- package/docs/pl/intlayer_with_astro_svelte.md +3 -1
- package/docs/pl/intlayer_with_astro_vanilla.md +3 -1
- package/docs/pl/intlayer_with_astro_vue.md +3 -1
- package/docs/pl/intlayer_with_lynx+react.md +6 -1
- package/docs/pl/intlayer_with_nextjs_16.md +2 -0
- package/docs/pl/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/pl/intlayer_with_react_native+expo.md +6 -1
- package/docs/pl/intlayer_with_react_router_v7.md +3 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/pl/intlayer_with_storybook.md +7 -1
- package/docs/pl/intlayer_with_svelte_kit.md +9 -4
- package/docs/pl/intlayer_with_tanstack+solid.md +18 -9
- package/docs/pl/intlayer_with_tanstack.md +17 -8
- package/docs/pl/intlayer_with_vite+lit.md +8 -2
- package/docs/pl/intlayer_with_vite+preact.md +3 -1
- package/docs/pl/intlayer_with_vite+react.md +9 -4
- package/docs/pl/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/pl/intlayer_with_vite+solid.md +3 -1
- package/docs/pl/intlayer_with_vite+svelte.md +4 -2
- package/docs/pl/intlayer_with_vite+vanilla.md +16 -5
- package/docs/pl/intlayer_with_vite+vue.md +9 -4
- package/docs/pl/packages/@intlayer_babel/export.md +131 -0
- package/docs/pl/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/pl/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/pl/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/pl/releases/v9.md +23 -1
- package/docs/pt/compiler.md +6 -3
- package/docs/pt/custom_domains.md +8 -2
- package/docs/pt/custom_url_rewrites.md +8 -2
- package/docs/pt/intlayer_with_analog.md +5 -1
- package/docs/pt/intlayer_with_astro.md +6 -4
- package/docs/pt/intlayer_with_astro_lit.md +3 -1
- package/docs/pt/intlayer_with_astro_preact.md +3 -1
- package/docs/pt/intlayer_with_astro_react.md +3 -1
- package/docs/pt/intlayer_with_astro_solid.md +3 -1
- package/docs/pt/intlayer_with_astro_svelte.md +3 -1
- package/docs/pt/intlayer_with_astro_vanilla.md +3 -1
- package/docs/pt/intlayer_with_astro_vue.md +3 -1
- package/docs/pt/intlayer_with_lynx+react.md +6 -1
- package/docs/pt/intlayer_with_nextjs_16.md +2 -0
- package/docs/pt/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/pt/intlayer_with_react_native+expo.md +6 -1
- package/docs/pt/intlayer_with_react_router_v7.md +8 -3
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/pt/intlayer_with_storybook.md +7 -1
- package/docs/pt/intlayer_with_svelte_kit.md +9 -4
- package/docs/pt/intlayer_with_tanstack+solid.md +18 -9
- package/docs/pt/intlayer_with_tanstack.md +17 -8
- package/docs/pt/intlayer_with_vite+lit.md +13 -4
- package/docs/pt/intlayer_with_vite+preact.md +3 -1
- package/docs/pt/intlayer_with_vite+react.md +9 -4
- package/docs/pt/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/pt/intlayer_with_vite+solid.md +3 -1
- package/docs/pt/intlayer_with_vite+svelte.md +4 -2
- package/docs/pt/intlayer_with_vite+vanilla.md +16 -5
- package/docs/pt/intlayer_with_vite+vue.md +9 -4
- package/docs/pt/packages/@intlayer_babel/export.md +131 -0
- package/docs/pt/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/pt/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/pt/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/pt/releases/v9.md +23 -1
- package/docs/ru/compiler.md +6 -3
- package/docs/ru/custom_domains.md +8 -2
- package/docs/ru/custom_url_rewrites.md +8 -2
- package/docs/ru/intlayer_with_analog.md +5 -1
- package/docs/ru/intlayer_with_astro.md +3 -1
- package/docs/ru/intlayer_with_astro_lit.md +3 -1
- package/docs/ru/intlayer_with_astro_preact.md +3 -1
- package/docs/ru/intlayer_with_astro_react.md +3 -1
- package/docs/ru/intlayer_with_astro_solid.md +3 -1
- package/docs/ru/intlayer_with_astro_svelte.md +3 -1
- package/docs/ru/intlayer_with_astro_vanilla.md +3 -1
- package/docs/ru/intlayer_with_astro_vue.md +3 -1
- package/docs/ru/intlayer_with_lynx+react.md +6 -1
- package/docs/ru/intlayer_with_nextjs_16.md +2 -0
- package/docs/ru/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/ru/intlayer_with_react_native+expo.md +6 -1
- package/docs/ru/intlayer_with_react_router_v7.md +3 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/ru/intlayer_with_storybook.md +7 -1
- package/docs/ru/intlayer_with_svelte_kit.md +9 -4
- package/docs/ru/intlayer_with_tanstack+solid.md +18 -11
- package/docs/ru/intlayer_with_tanstack.md +17 -8
- package/docs/ru/intlayer_with_vite+lit.md +13 -4
- package/docs/ru/intlayer_with_vite+preact.md +3 -1
- package/docs/ru/intlayer_with_vite+react.md +9 -4
- package/docs/ru/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/ru/intlayer_with_vite+solid.md +3 -1
- package/docs/ru/intlayer_with_vite+svelte.md +4 -2
- package/docs/ru/intlayer_with_vite+vanilla.md +16 -5
- package/docs/ru/intlayer_with_vite+vue.md +9 -4
- package/docs/ru/packages/@intlayer_babel/export.md +131 -0
- package/docs/ru/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/ru/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/ru/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/ru/releases/v9.md +23 -1
- package/docs/tr/compiler.md +6 -3
- package/docs/tr/custom_domains.md +8 -2
- package/docs/tr/custom_url_rewrites.md +8 -2
- package/docs/tr/intlayer_with_analog.md +5 -1
- package/docs/tr/intlayer_with_astro_lit.md +3 -1
- package/docs/tr/intlayer_with_astro_preact.md +3 -1
- package/docs/tr/intlayer_with_astro_react.md +3 -1
- package/docs/tr/intlayer_with_astro_solid.md +3 -1
- package/docs/tr/intlayer_with_astro_svelte.md +3 -1
- package/docs/tr/intlayer_with_astro_vanilla.md +3 -1
- package/docs/tr/intlayer_with_astro_vue.md +3 -1
- package/docs/tr/intlayer_with_lynx+react.md +6 -1
- package/docs/tr/intlayer_with_nextjs_16.md +2 -0
- package/docs/tr/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/tr/intlayer_with_react_native+expo.md +6 -1
- package/docs/tr/intlayer_with_react_router_v7.md +3 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/tr/intlayer_with_storybook.md +7 -1
- package/docs/tr/intlayer_with_svelte_kit.md +9 -4
- package/docs/tr/intlayer_with_tanstack+solid.md +18 -11
- package/docs/tr/intlayer_with_tanstack.md +17 -8
- package/docs/tr/intlayer_with_vite+lit.md +8 -2
- package/docs/tr/intlayer_with_vite+preact.md +3 -1
- package/docs/tr/intlayer_with_vite+react.md +9 -4
- package/docs/tr/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/tr/intlayer_with_vite+solid.md +3 -1
- package/docs/tr/intlayer_with_vite+svelte.md +4 -2
- package/docs/tr/intlayer_with_vite+vanilla.md +16 -5
- package/docs/tr/intlayer_with_vite+vue.md +9 -4
- package/docs/tr/packages/@intlayer_babel/export.md +131 -0
- package/docs/tr/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/tr/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/tr/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/tr/releases/v9.md +23 -1
- package/docs/uk/compiler.md +6 -3
- package/docs/uk/custom_domains.md +8 -2
- package/docs/uk/custom_url_rewrites.md +8 -2
- package/docs/uk/intlayer_with_analog.md +5 -1
- package/docs/uk/intlayer_with_astro.md +3 -1
- package/docs/uk/intlayer_with_astro_lit.md +3 -1
- package/docs/uk/intlayer_with_astro_preact.md +3 -1
- package/docs/uk/intlayer_with_astro_react.md +3 -1
- package/docs/uk/intlayer_with_astro_solid.md +3 -1
- package/docs/uk/intlayer_with_astro_svelte.md +3 -1
- package/docs/uk/intlayer_with_astro_vanilla.md +3 -1
- package/docs/uk/intlayer_with_astro_vue.md +3 -1
- package/docs/uk/intlayer_with_lynx+react.md +6 -1
- package/docs/uk/intlayer_with_nextjs_16.md +2 -0
- package/docs/uk/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/uk/intlayer_with_react_native+expo.md +6 -1
- package/docs/uk/intlayer_with_react_router_v7.md +3 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/uk/intlayer_with_storybook.md +7 -1
- package/docs/uk/intlayer_with_svelte_kit.md +9 -4
- package/docs/uk/intlayer_with_tanstack+solid.md +18 -11
- package/docs/uk/intlayer_with_tanstack.md +17 -8
- package/docs/uk/intlayer_with_vite+lit.md +8 -2
- package/docs/uk/intlayer_with_vite+preact.md +3 -1
- package/docs/uk/intlayer_with_vite+react.md +9 -4
- package/docs/uk/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/uk/intlayer_with_vite+solid.md +3 -1
- package/docs/uk/intlayer_with_vite+svelte.md +9 -4
- package/docs/uk/intlayer_with_vite+vanilla.md +16 -5
- package/docs/uk/intlayer_with_vite+vue.md +9 -4
- package/docs/uk/packages/@intlayer_babel/export.md +131 -0
- package/docs/uk/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/uk/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/uk/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/uk/releases/v9.md +23 -1
- package/docs/ur/custom_domains.md +8 -2
- package/docs/ur/intlayer_with_storybook.md +7 -1
- package/docs/ur/intlayer_with_vite+lit.md +8 -2
- package/docs/ur/intlayer_with_vite+vanilla.md +16 -5
- package/docs/vi/compiler.md +6 -3
- package/docs/vi/custom_domains.md +8 -2
- package/docs/vi/custom_url_rewrites.md +8 -2
- package/docs/vi/intlayer_with_analog.md +5 -1
- package/docs/vi/intlayer_with_astro.md +3 -1
- package/docs/vi/intlayer_with_astro_lit.md +3 -1
- package/docs/vi/intlayer_with_astro_preact.md +3 -1
- package/docs/vi/intlayer_with_astro_react.md +3 -1
- package/docs/vi/intlayer_with_astro_solid.md +3 -1
- package/docs/vi/intlayer_with_astro_svelte.md +3 -1
- package/docs/vi/intlayer_with_astro_vanilla.md +3 -1
- package/docs/vi/intlayer_with_astro_vue.md +3 -1
- package/docs/vi/intlayer_with_lynx+react.md +6 -1
- package/docs/vi/intlayer_with_nextjs_15.md +2 -0
- package/docs/vi/intlayer_with_nextjs_16.md +2 -0
- package/docs/vi/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/vi/intlayer_with_react_native+expo.md +6 -1
- package/docs/vi/intlayer_with_react_router_v7.md +3 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +9 -4
- package/docs/vi/intlayer_with_storybook.md +7 -1
- package/docs/vi/intlayer_with_svelte_kit.md +9 -4
- package/docs/vi/intlayer_with_tanstack+solid.md +18 -11
- package/docs/vi/intlayer_with_tanstack.md +17 -8
- package/docs/vi/intlayer_with_vite+lit.md +8 -2
- package/docs/vi/intlayer_with_vite+preact.md +3 -1
- package/docs/vi/intlayer_with_vite+react.md +9 -4
- package/docs/vi/intlayer_with_vite+react_compiler.md +9 -2
- package/docs/vi/intlayer_with_vite+solid.md +3 -1
- package/docs/vi/intlayer_with_vite+svelte.md +9 -4
- package/docs/vi/intlayer_with_vite+vanilla.md +16 -5
- package/docs/vi/intlayer_with_vite+vue.md +9 -4
- package/docs/vi/packages/@intlayer_babel/export.md +131 -0
- package/docs/vi/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/vi/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/vi/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/vi/releases/v9.md +23 -1
- package/docs/zh/compiler.md +6 -3
- package/docs/zh/custom_domains.md +8 -2
- package/docs/zh/custom_url_rewrites.md +8 -2
- package/docs/zh/intlayer_with_astro.md +3 -1
- package/docs/zh/intlayer_with_astro_lit.md +3 -1
- package/docs/zh/intlayer_with_astro_preact.md +3 -1
- package/docs/zh/intlayer_with_astro_react.md +3 -1
- package/docs/zh/intlayer_with_astro_solid.md +3 -1
- package/docs/zh/intlayer_with_astro_svelte.md +3 -1
- package/docs/zh/intlayer_with_astro_vanilla.md +3 -1
- package/docs/zh/intlayer_with_astro_vue.md +3 -1
- package/docs/zh/intlayer_with_nextjs_16.md +2 -0
- package/docs/zh/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/zh/intlayer_with_react_native+expo.md +6 -1
- package/docs/zh/intlayer_with_react_router_v7.md +3 -1
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +3 -1
- package/docs/zh/intlayer_with_storybook.md +7 -1
- package/docs/zh/intlayer_with_svelte_kit.md +9 -4
- package/docs/zh/intlayer_with_vite+preact.md +3 -1
- package/docs/zh/intlayer_with_vite+react.md +9 -4
- package/docs/zh/intlayer_with_vite+svelte.md +9 -4
- package/docs/zh/intlayer_with_vite+vue.md +9 -4
- package/docs/zh/packages/@intlayer_babel/export.md +131 -0
- package/docs/zh/packages/vite-intlayer/intlayerCompiler.md +120 -0
- package/docs/zh/packages/vite-intlayer/intlayerMinify.md +92 -0
- package/docs/zh/packages/vite-intlayer/intlayerProxy.md +172 -0
- package/docs/zh/releases/v9.md +23 -1
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +80 -0
|
@@ -1,31 +1,35 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-01-21
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
4
|
title: intlayer Vite Plugin Documentation | vite-intlayer
|
|
5
|
-
description:
|
|
5
|
+
description: Complete guide to the intlayer() Vite plugin – dictionary preparation, aliases, dev watcher, locale-routing proxy, and compiler.
|
|
6
6
|
keywords:
|
|
7
7
|
- intlayer
|
|
8
8
|
- vite
|
|
9
9
|
- plugin
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
10
|
+
- proxy
|
|
11
|
+
- compiler
|
|
12
|
+
- internationalization
|
|
13
|
+
- i18n
|
|
14
|
+
- routing
|
|
14
15
|
slugs:
|
|
15
16
|
- doc
|
|
16
17
|
- packages
|
|
17
18
|
- vite-intlayer
|
|
18
19
|
- intlayer
|
|
19
20
|
history:
|
|
21
|
+
- version: 9.0.0
|
|
22
|
+
date: 2026-06-25
|
|
23
|
+
changes: "Proxy and compiler bundled into intlayer(); added proxy option, compatCallers, routing.enableProxy"
|
|
20
24
|
- version: 8.0.0
|
|
21
25
|
date: 2026-01-21
|
|
22
26
|
changes: "Init doc"
|
|
23
27
|
author: aymericzip
|
|
24
28
|
---
|
|
25
29
|
|
|
26
|
-
# intlayer Vite Plugin
|
|
30
|
+
# intlayer Vite Plugin
|
|
27
31
|
|
|
28
|
-
The `intlayer`
|
|
32
|
+
The `intlayer` plugin is the single entry-point for integrating Intlayer into a Vite application. Register it once and everything works out of the box: dictionary compilation, module aliases, dev-server watching, locale-routing middleware, and production build optimisations.
|
|
29
33
|
|
|
30
34
|
## Usage
|
|
31
35
|
|
|
@@ -39,11 +43,126 @@ export default defineConfig({
|
|
|
39
43
|
});
|
|
40
44
|
```
|
|
41
45
|
|
|
42
|
-
##
|
|
46
|
+
## Options
|
|
47
|
+
|
|
48
|
+
```ts
|
|
49
|
+
import type { IntlayerPluginOptions } from "vite-intlayer";
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
`IntlayerPluginOptions` extends `GetConfigurationOptions` (see `@intlayer/config`) with the following additional fields:
|
|
53
|
+
|
|
54
|
+
| Option | Type | Default | Description |
|
|
55
|
+
| --------------- | ------------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------- |
|
|
56
|
+
| `compatCallers` | `CompatCallerConfig[]` | `[]` | Extra caller patterns for compat-adapter packages (e.g. `@intlayer/react-i18next`). Passed to the field-usage analyser at build time. |
|
|
57
|
+
| `proxy` | `{ ignore?: (req) => boolean }` | `undefined` | Options forwarded to the bundled locale-routing proxy. Use `ignore` to exclude specific paths (e.g. API routes) from locale routing. |
|
|
58
|
+
|
|
59
|
+
All other options (`override`, `configFile`, …) are forwarded directly to `getConfiguration()`.
|
|
60
|
+
|
|
61
|
+
### Examples
|
|
62
|
+
|
|
63
|
+
#### Ignore API routes from locale routing
|
|
64
|
+
|
|
65
|
+
```ts
|
|
66
|
+
// vite.config.ts
|
|
67
|
+
import { defineConfig } from "vite";
|
|
68
|
+
import { intlayer } from "vite-intlayer";
|
|
69
|
+
|
|
70
|
+
export default defineConfig({
|
|
71
|
+
plugins: [
|
|
72
|
+
intlayer({
|
|
73
|
+
proxy: {
|
|
74
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
75
|
+
},
|
|
76
|
+
}),
|
|
77
|
+
],
|
|
78
|
+
});
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
#### With a custom config file path
|
|
82
|
+
|
|
83
|
+
```ts
|
|
84
|
+
export default defineConfig({
|
|
85
|
+
plugins: [
|
|
86
|
+
intlayer({
|
|
87
|
+
configFile: "./config/intlayer.config.ts",
|
|
88
|
+
}),
|
|
89
|
+
],
|
|
90
|
+
});
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
#### With compat-adapter callers
|
|
94
|
+
|
|
95
|
+
```ts
|
|
96
|
+
import { intlayer } from "vite-intlayer";
|
|
97
|
+
import { reactI18nextCallerConfig } from "@intlayer/react-i18next/plugin";
|
|
98
|
+
|
|
99
|
+
export default defineConfig({
|
|
100
|
+
plugins: [
|
|
101
|
+
intlayer({
|
|
102
|
+
compatCallers: [reactI18nextCallerConfig],
|
|
103
|
+
}),
|
|
104
|
+
],
|
|
105
|
+
});
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## What the plugin does
|
|
109
|
+
|
|
110
|
+
### 1. Dictionary preparation
|
|
111
|
+
|
|
112
|
+
Before the build starts (and once per hour in dev), `intlayer` calls `prepareIntlayer` to compile all `.content.ts` files into optimised JSON dictionaries stored in `.intlayer/`.
|
|
113
|
+
|
|
114
|
+
### 2. Module aliases
|
|
115
|
+
|
|
116
|
+
The plugin adds Vite resolve aliases so that `import { myDict } from 'intlayer/dictionaries/my-dict'` resolves to the compiled JSON file on disk. SSR builds use `ssr.noExternal` to ensure all `@intlayer/*` packages are bundled with aliases applied.
|
|
117
|
+
|
|
118
|
+
### 3. Dev-server watcher
|
|
119
|
+
|
|
120
|
+
In development mode a `chokidar` watcher is started. When a `.content.ts` file changes the dictionaries are recompiled and Vite's HMR propagates the update to the browser.
|
|
121
|
+
|
|
122
|
+
### 4. Bundled locale-routing proxy (v9+)
|
|
123
|
+
|
|
124
|
+
Since Intlayer v9 the `intlayerProxy` middleware is registered automatically inside `intlayer()`. It handles:
|
|
125
|
+
|
|
126
|
+
- Locale detection from URL prefix, cookies, and `Accept-Language` header.
|
|
127
|
+
- 301 redirects when the detected locale does not match the current URL.
|
|
128
|
+
- Internal URL rewrites so the framework sees the correct `[locale]` route parameter.
|
|
129
|
+
|
|
130
|
+
The proxy is controlled by `routing.enableProxy` (default `true`) in your Intlayer config. To disable it completely:
|
|
131
|
+
|
|
132
|
+
```ts
|
|
133
|
+
// intlayer.config.ts
|
|
134
|
+
import { defineConfig } from "intlayer";
|
|
135
|
+
|
|
136
|
+
export default defineConfig({
|
|
137
|
+
routing: { enableProxy: false },
|
|
138
|
+
});
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
To customise proxy behaviour without a separate `intlayerProxy()` call, pass `proxy` options to the main plugin:
|
|
142
|
+
|
|
143
|
+
```ts
|
|
144
|
+
intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api") } });
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
See the [intlayerProxy documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/vite-intlayer/intlayerProxy.md) for the full routing behaviour reference.
|
|
148
|
+
|
|
149
|
+
### 5. Bundled compiler (v9+)
|
|
150
|
+
|
|
151
|
+
When `compiler.enabled` is `true` **and** `compiler.output` is set in your Intlayer config, `intlayer()` registers `intlayerCompiler` automatically. The compiler extracts inline content declarations written directly inside component files and writes them to dictionaries at transform time. See [intlayerCompiler documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/vite-intlayer/intlayerCompiler.md).
|
|
152
|
+
|
|
153
|
+
### 6. Build optimisations
|
|
154
|
+
|
|
155
|
+
During a production build the plugin adds:
|
|
156
|
+
|
|
157
|
+
- **intlayerOptimize** – Babel transform that rewrites `useIntlayer('key')` → `useDictionary(hash)` and injects direct JSON imports.
|
|
158
|
+
- **intlayerPrune** – removes unused content fields from dictionary JSON.
|
|
159
|
+
- **intlayerMinify** – compacts dictionary JSON and optionally mangles field names.
|
|
160
|
+
|
|
161
|
+
These are inactive in development mode.
|
|
43
162
|
|
|
44
|
-
|
|
163
|
+
## Deprecated aliases
|
|
45
164
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
165
|
+
| Deprecated export | Replacement |
|
|
166
|
+
| ----------------- | ----------- |
|
|
167
|
+
| `intlayerPlugin` | `intlayer` |
|
|
168
|
+
| `intLayerPlugin` | `intlayer` |
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: intlayerCompiler Vite Plugin Documentation | vite-intlayer
|
|
5
|
+
description: Vite plugin that extracts inline Intlayer content declarations from component files and writes them to dictionary JSON files at build/transform time.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayerCompiler
|
|
8
|
+
- vite
|
|
9
|
+
- plugin
|
|
10
|
+
- compiler
|
|
11
|
+
- content
|
|
12
|
+
- dictionary
|
|
13
|
+
- internationalization
|
|
14
|
+
- i18n
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- packages
|
|
18
|
+
- vite-intlayer
|
|
19
|
+
- intlayerCompiler
|
|
20
|
+
history:
|
|
21
|
+
- version: 9.0.0
|
|
22
|
+
date: 2026-06-25
|
|
23
|
+
changes: "Bundled into intlayer(); init doc"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# intlayerCompiler
|
|
28
|
+
|
|
29
|
+
`intlayerCompiler` is a Vite plugin that scans component source files for **inline Intlayer content declarations** — content defined directly inside a component rather than in a separate `.content.ts` file — and writes them to dictionary JSON files during the transform phase.
|
|
30
|
+
|
|
31
|
+
> **Since Intlayer v9** `intlayerCompiler` is automatically included inside the main [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/vite-intlayer/intlayer.md) plugin when both `compiler.enabled` is `true` and `compiler.output` is set in your Intlayer config. You only need to register it separately when you want full control over compiler-specific configuration.
|
|
32
|
+
|
|
33
|
+
## Usage
|
|
34
|
+
|
|
35
|
+
### As part of `intlayer()` (recommended, v9+)
|
|
36
|
+
|
|
37
|
+
Enable the compiler through your Intlayer config:
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
// intlayer.config.ts
|
|
41
|
+
import { defineConfig } from "intlayer";
|
|
42
|
+
|
|
43
|
+
export default defineConfig({
|
|
44
|
+
compiler: {
|
|
45
|
+
enabled: true,
|
|
46
|
+
output: "./src/dictionaries", // where extracted dictionaries are written
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Then use the standard plugin with no extra registration:
|
|
52
|
+
|
|
53
|
+
```ts
|
|
54
|
+
// vite.config.ts
|
|
55
|
+
import { defineConfig } from "vite";
|
|
56
|
+
import { intlayer } from "vite-intlayer";
|
|
57
|
+
|
|
58
|
+
export default defineConfig({
|
|
59
|
+
plugins: [intlayer()],
|
|
60
|
+
});
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Standalone (when needed)
|
|
64
|
+
|
|
65
|
+
```ts
|
|
66
|
+
// vite.config.ts
|
|
67
|
+
import { defineConfig } from "vite";
|
|
68
|
+
import { intlayerCompiler } from "vite-intlayer";
|
|
69
|
+
|
|
70
|
+
export default defineConfig({
|
|
71
|
+
plugins: [intlayerCompiler()],
|
|
72
|
+
});
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Options
|
|
76
|
+
|
|
77
|
+
```ts
|
|
78
|
+
import type { IntlayerCompilerOptions } from "vite-intlayer";
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
| Option | Type | Description |
|
|
82
|
+
| ---------------- | ------------------------- | ------------------------------------------------------------------------------------------- |
|
|
83
|
+
| `configOptions` | `GetConfigurationOptions` | Intlayer configuration overrides forwarded to `getConfiguration()`. |
|
|
84
|
+
| `compilerConfig` | `Partial<CompilerConfig>` | Overrides for the compiler-specific config section (e.g. `enabled`, `output`, `filesList`). |
|
|
85
|
+
|
|
86
|
+
### Example
|
|
87
|
+
|
|
88
|
+
```ts
|
|
89
|
+
intlayerCompiler({
|
|
90
|
+
configOptions: { configFile: "./config/intlayer.config.ts" },
|
|
91
|
+
compilerConfig: { enabled: true, output: "./src/dictionaries" },
|
|
92
|
+
});
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## How it works
|
|
96
|
+
|
|
97
|
+
### Transform phase
|
|
98
|
+
|
|
99
|
+
For every source file that matches `compiler.filesList`, the compiler plugin:
|
|
100
|
+
|
|
101
|
+
1. Passes the file content through `extractContent` from `@intlayer/babel`.
|
|
102
|
+
2. Calls `onExtract` for each declaration found, which writes the resulting dictionary JSON to `compiler.output`.
|
|
103
|
+
3. Returns the transformed source code with inline declarations replaced by standard `useIntlayer('key')` / `getIntlayer('key')` calls.
|
|
104
|
+
|
|
105
|
+
Supported file types: `.ts`, `.tsx`, `.js`, `.jsx`, `.vue`, `.svelte`, `.astro`.
|
|
106
|
+
|
|
107
|
+
### HMR (Hot Module Replacement)
|
|
108
|
+
|
|
109
|
+
When a component file is saved in development mode, the compiler:
|
|
110
|
+
|
|
111
|
+
1. Detects the file change via Vite's `handleHotUpdate` hook.
|
|
112
|
+
2. Re-extracts content from the updated file.
|
|
113
|
+
3. Writes the updated dictionary JSON.
|
|
114
|
+
4. Triggers a full page reload (`server.ws.send({ type: 'full-reload' })`).
|
|
115
|
+
|
|
116
|
+
A 500 ms debounce prevents the dictionary write itself (which also triggers a file-change event) from causing an infinite re-extraction loop.
|
|
117
|
+
|
|
118
|
+
### Deduplication
|
|
119
|
+
|
|
120
|
+
`intlayerCompiler` uses the same `createPrimaryInstanceGuard` deduplication mechanism as the other bundled plugins. When both `intlayer()` (which bundles the compiler) and a manual `intlayerCompiler()` call are present, only the first registered instance runs — no dictionaries are written twice.
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: intlayerMinify Vite Plugin Documentation | vite-intlayer
|
|
5
|
+
description: Vite plugin that minifies compiled Intlayer dictionary JSON files and optionally mangles content field names to reduce bundle size.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayerMinify
|
|
8
|
+
- vite
|
|
9
|
+
- plugin
|
|
10
|
+
- minify
|
|
11
|
+
- bundle size
|
|
12
|
+
- dictionary
|
|
13
|
+
- internationalization
|
|
14
|
+
- i18n
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- packages
|
|
18
|
+
- vite-intlayer
|
|
19
|
+
- intlayerMinify
|
|
20
|
+
history:
|
|
21
|
+
- version: 9.0.0
|
|
22
|
+
date: 2026-06-25
|
|
23
|
+
changes: "Init doc"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# intlayerMinify
|
|
28
|
+
|
|
29
|
+
`intlayerMinify` is a Vite plugin that minifies compiled dictionary JSON files during a production build. It strips all unnecessary whitespace and, when combined with `intlayerPrune`, optionally renames content field names to short alphabetic aliases (`a`, `b`, `c`, …) to further reduce bundle size.
|
|
30
|
+
|
|
31
|
+
> The plugin is already included and configured automatically when you use [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/vite-intlayer/intlayer.md). You only need to register it manually if you are composing the plugin stack yourself.
|
|
32
|
+
|
|
33
|
+
## Usage
|
|
34
|
+
|
|
35
|
+
```ts
|
|
36
|
+
// vite.config.ts
|
|
37
|
+
import { defineConfig } from "vite";
|
|
38
|
+
import { intlayerMinify, intlayerPrune } from "vite-intlayer";
|
|
39
|
+
import { createPruneContext } from "@intlayer/babel";
|
|
40
|
+
|
|
41
|
+
const pruneContext = createPruneContext();
|
|
42
|
+
|
|
43
|
+
export default defineConfig({
|
|
44
|
+
plugins: [
|
|
45
|
+
intlayerPrune(intlayerConfig, pruneContext),
|
|
46
|
+
intlayerMinify(intlayerConfig, pruneContext),
|
|
47
|
+
],
|
|
48
|
+
});
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Activation conditions
|
|
52
|
+
|
|
53
|
+
`intlayerMinify` is active **only** when all three of the following are true:
|
|
54
|
+
|
|
55
|
+
1. The Vite command is `build` (not `serve` / dev).
|
|
56
|
+
2. `build.optimize` is `true` (or `undefined`, which defaults to `true` for builds).
|
|
57
|
+
3. `build.minify` is `true` in your Intlayer config.
|
|
58
|
+
|
|
59
|
+
It is automatically **disabled** when `editor.enabled` is `true` because the editor needs the full, human-readable dictionary content.
|
|
60
|
+
|
|
61
|
+
## What gets minified
|
|
62
|
+
|
|
63
|
+
The plugin targets two dictionary locations (as resolved from `intlayer.system`):
|
|
64
|
+
|
|
65
|
+
- `dictionariesDir` — static all-locale dictionaries (e.g. `.intlayer/dictionaries/*.json`)
|
|
66
|
+
- `dynamicDictionariesDir` — per-locale dynamic dictionaries
|
|
67
|
+
|
|
68
|
+
> Fetch-mode dictionaries (`fetchDictionariesDir`) are **never** minified because they are served from a remote API at runtime using their original field names. Renaming fields would create a mismatch between the server response and client-side property accesses.
|
|
69
|
+
|
|
70
|
+
## Field-name mangling (property minification)
|
|
71
|
+
|
|
72
|
+
When `intlayerPrune` has analysed the codebase and populated `pruneContext.dictionaryKeyToFieldRenameMap`, `intlayerMinify` also renames content field names to short aliases. For example:
|
|
73
|
+
|
|
74
|
+
```json
|
|
75
|
+
// before
|
|
76
|
+
{ "key": "myDict", "content": { "title": "Hello", "description": "World" } }
|
|
77
|
+
|
|
78
|
+
// after (with mangling)
|
|
79
|
+
{ "key": "myDict", "content": { "a": "Hello", "b": "World" } }
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
The corresponding source-file property accesses are renamed by the Babel pass inside `intlayerOptimize`, so runtime behaviour is unchanged.
|
|
83
|
+
|
|
84
|
+
Internal Intlayer fields (`nodeType`, `translation`, etc.) are never renamed.
|
|
85
|
+
|
|
86
|
+
## Edge-case dictionaries
|
|
87
|
+
|
|
88
|
+
Dictionaries flagged in `pruneContext.dictionariesWithEdgeCases` (structural anomalies detected during the prune phase) are skipped entirely — neither minified nor mangled — to avoid shipping broken data.
|
|
89
|
+
|
|
90
|
+
## Qualified groups (collections / variants / meta records)
|
|
91
|
+
|
|
92
|
+
For dictionaries with a `qualifierTypes` array (collections, variants, and meta records), the plugin preserves the `qualifierTypes` array and the `meta` side-map verbatim. Only the `content` entries have their field names mangled. The composite keys (used for selector matching at runtime) are never touched.
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: intlayerProxy Vite Plugin Documentation | vite-intlayer
|
|
5
|
+
description: Locale-routing middleware for Vite dev/preview servers and production SSR. Handles locale detection, URL redirects, and internal rewrites.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayerProxy
|
|
8
|
+
- vite
|
|
9
|
+
- plugin
|
|
10
|
+
- middleware
|
|
11
|
+
- locale
|
|
12
|
+
- routing
|
|
13
|
+
- internationalization
|
|
14
|
+
- i18n
|
|
15
|
+
- SSR
|
|
16
|
+
slugs:
|
|
17
|
+
- doc
|
|
18
|
+
- packages
|
|
19
|
+
- vite-intlayer
|
|
20
|
+
- intlayerProxy
|
|
21
|
+
history:
|
|
22
|
+
- version: 9.0.0
|
|
23
|
+
date: 2026-06-25
|
|
24
|
+
changes: "Merged configOptions into single options object; proxy bundled into intlayer()"
|
|
25
|
+
author: aymericzip
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# intlayerProxy
|
|
29
|
+
|
|
30
|
+
`intlayerProxy` is a Vite plugin that registers locale-routing middleware for **every environment**: dev server, preview server, and production SSR (Nitro / TanStack Start).
|
|
31
|
+
|
|
32
|
+
> **Since Intlayer v9** `intlayerProxy` is automatically included inside the main [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/vite-intlayer/intlayer.md) plugin and enabled by default via `routing.enableProxy: true`. You only need to register it separately if you need lower-level control or are using it outside the standard `intlayer()` setup.
|
|
33
|
+
|
|
34
|
+
## Usage
|
|
35
|
+
|
|
36
|
+
### As part of `intlayer()` (recommended, v9+)
|
|
37
|
+
|
|
38
|
+
Pass `proxy` options to the main plugin instead of registering `intlayerProxy` separately:
|
|
39
|
+
|
|
40
|
+
```ts
|
|
41
|
+
// vite.config.ts
|
|
42
|
+
import { defineConfig } from "vite";
|
|
43
|
+
import { intlayer } from "vite-intlayer";
|
|
44
|
+
|
|
45
|
+
export default defineConfig({
|
|
46
|
+
plugins: [
|
|
47
|
+
intlayer({
|
|
48
|
+
proxy: {
|
|
49
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
50
|
+
},
|
|
51
|
+
}),
|
|
52
|
+
],
|
|
53
|
+
});
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Standalone (when needed)
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
// vite.config.ts
|
|
60
|
+
import { defineConfig } from "vite";
|
|
61
|
+
import { intlayer } from "vite-intlayer";
|
|
62
|
+
|
|
63
|
+
export default defineConfig({
|
|
64
|
+
plugins: [intlayer()],
|
|
65
|
+
});
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Options
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
import type { IntlayerProxyPluginOptions } from "vite-intlayer";
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
All options are optional and passed as a single object:
|
|
75
|
+
|
|
76
|
+
| Option | Type | Description |
|
|
77
|
+
| --------------- | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
78
|
+
| `ignore` | `(req: IncomingMessage) => boolean` | Predicate that excludes requests from locale routing. Return `true` to skip a request (e.g. API routes, health checks). |
|
|
79
|
+
| `configOptions` | `GetConfigurationOptions` | Intlayer configuration overrides forwarded to `getConfiguration()`. Use when you need the proxy to read a specific config file or override values. |
|
|
80
|
+
|
|
81
|
+
### Example
|
|
82
|
+
|
|
83
|
+
```ts
|
|
84
|
+
intlayerProxy({
|
|
85
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
86
|
+
configOptions: { configFile: "./config/intlayer.config.ts" },
|
|
87
|
+
});
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## createIntlayerProxyHandler
|
|
91
|
+
|
|
92
|
+
`createIntlayerProxyHandler` creates a standalone, framework-agnostic Node.js `(req, res, next)` middleware that contains all the locale-routing logic. It is useful in environments where the Vite plugin API is unavailable (e.g. a plain Node.js server or a custom Nitro module).
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
import { createIntlayerProxyHandler } from "vite-intlayer";
|
|
96
|
+
|
|
97
|
+
const handler = createIntlayerProxyHandler({
|
|
98
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
99
|
+
configOptions: { configFile: "./config/intlayer.config.ts" },
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
// Express / Connect
|
|
103
|
+
app.use(handler);
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Production SSR (TanStack Start / Nitro via h3)
|
|
107
|
+
|
|
108
|
+
```ts
|
|
109
|
+
// server/middleware/intlayerProxy.ts
|
|
110
|
+
import { fromNodeMiddleware } from "h3";
|
|
111
|
+
import { createIntlayerProxyHandler } from "vite-intlayer";
|
|
112
|
+
|
|
113
|
+
export default fromNodeMiddleware(
|
|
114
|
+
createIntlayerProxyHandler({
|
|
115
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
116
|
+
})
|
|
117
|
+
);
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Routing behaviour
|
|
121
|
+
|
|
122
|
+
The middleware mirrors the routing logic from `next-intlayer` middleware and supports all Intlayer routing modes.
|
|
123
|
+
|
|
124
|
+
### Routing modes
|
|
125
|
+
|
|
126
|
+
| Mode | URL visible in browser | Behaviour |
|
|
127
|
+
| --------------- | ------------------------ | ------------------------------------------------------------------------------------------------------- |
|
|
128
|
+
| `prefix` | `/en/about` | Default. Locale prefix in the URL. Default locale redirects to the un-prefixed URL unless `prefix-all`. |
|
|
129
|
+
| `prefix-all` | `/en/about`, `/fr/about` | All locales — including default — are always prefixed. |
|
|
130
|
+
| `no-prefix` | `/about` | No locale in the URL. Locale is stored in cookies only; URL rewrites happen internally. |
|
|
131
|
+
| `search-params` | `/about?locale=en` | Locale passed as a query parameter. Redirects to add/update the `locale` param when missing or stale. |
|
|
132
|
+
|
|
133
|
+
### Detection priority
|
|
134
|
+
|
|
135
|
+
1. URL path prefix (e.g. `/fr/about` → `fr`).
|
|
136
|
+
2. Cookie / localStorage value (`intlayer-locale`).
|
|
137
|
+
3. `Accept-Language` header.
|
|
138
|
+
4. `defaultLocale` from config.
|
|
139
|
+
|
|
140
|
+
### Automatic bypass
|
|
141
|
+
|
|
142
|
+
The middleware always passes these requests straight through without locale handling:
|
|
143
|
+
|
|
144
|
+
- Requests matching the `ignore` predicate.
|
|
145
|
+
- `/node_modules/**`
|
|
146
|
+
- `/@**` – Vite internals (`@vite/`, `@fs/`, `@id/`, etc.).
|
|
147
|
+
- `/_**` – server internals (`__vite_ping`, `__manifest`, etc.).
|
|
148
|
+
- Requests whose path ends with a file extension (static assets). If a locale prefix is present on a static asset path (e.g. `/fr/logo.png`), it is stripped so the file can be served correctly.
|
|
149
|
+
|
|
150
|
+
### Domain routing
|
|
151
|
+
|
|
152
|
+
When `routing.domains` is configured in your Intlayer config, the middleware handles cross-domain locale routing:
|
|
153
|
+
|
|
154
|
+
- A request for `/zh/about` on `intlayer.org` is redirected to `https://intlayer.zh/about` when `domains.zh = "intlayer.zh"`.
|
|
155
|
+
- A request to `intlayer.zh/about` is rewritten internally to `/zh/about` so the `[locale]` route parameter is populated.
|
|
156
|
+
|
|
157
|
+
### Redirect loop protection
|
|
158
|
+
|
|
159
|
+
The middleware tracks redirect counts per `originalUrl → newUrl` pair within a 2-second sliding window. More than 10 redirects within that window returns a `500` response with a descriptive error instead of looping forever.
|
|
160
|
+
|
|
161
|
+
## Nitro / production SSR (automatic injection, v9+)
|
|
162
|
+
|
|
163
|
+
When `intlayerProxy` is used as a Vite plugin, it carries a `.nitro` property. The `nitro/vite` build plugin reads this property and pushes it into `nitroConfig.modules`, so `intlayerNitroHandler` is registered as a Nitro server middleware automatically — no manual configuration is needed for production SSR.
|
|
164
|
+
|
|
165
|
+
The Nitro handler uses h3 v2's Web Fetch API event model (not `fromNodeMiddleware`) so it is compatible with all Nitro presets: Node, Bun, Deno, edge runtimes.
|
|
166
|
+
|
|
167
|
+
## Deprecated aliases
|
|
168
|
+
|
|
169
|
+
| Deprecated export | Replacement |
|
|
170
|
+
| -------------------------- | --------------- |
|
|
171
|
+
| `intlayerMiddleware` | `intlayerProxy` |
|
|
172
|
+
| `intLayerMiddlewarePlugin` | `intlayerProxy` |
|