@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
|
@@ -645,14 +645,17 @@ import LocaleSwitcher from "@components/LocaleSwitcher.vue";
|
|
|
645
645
|
```typescript {3,7} fileName="vite.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
646
646
|
import { defineConfig } from "vite";
|
|
647
647
|
import vue from "@vitejs/plugin-vue";
|
|
648
|
-
import { intlayer
|
|
648
|
+
import { intlayer } from "vite-intlayer";
|
|
649
649
|
|
|
650
650
|
// https://vitejs.dev/config/
|
|
651
651
|
export default defineConfig({
|
|
652
652
|
plugins: [
|
|
653
|
-
intlayerProxy(), // should be placed first
|
|
654
653
|
vue(),
|
|
655
|
-
intlayer(
|
|
654
|
+
intlayer({
|
|
655
|
+
proxy: {
|
|
656
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
657
|
+
},
|
|
658
|
+
}),
|
|
656
659
|
],
|
|
657
660
|
});
|
|
658
661
|
```
|
|
@@ -977,6 +980,8 @@ bun x intlayer extract
|
|
|
977
980
|
</Tab>
|
|
978
981
|
<Tab value='Компілятор Babel'>
|
|
979
982
|
|
|
983
|
+
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
984
|
+
|
|
980
985
|
Оновіть свій `vite.config.ts`, щоб включити плагін `intlayerCompiler`:
|
|
981
986
|
|
|
982
987
|
```ts fileName="vite.config.ts"
|
|
@@ -986,7 +991,7 @@ import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
|
986
991
|
export default defineConfig({
|
|
987
992
|
plugins: [
|
|
988
993
|
intlayer(),
|
|
989
|
-
intlayerCompiler(), //
|
|
994
|
+
intlayerCompiler(), // Adds the compiler plugin
|
|
990
995
|
],
|
|
991
996
|
});
|
|
992
997
|
```
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: "Документація пакета @intlayer/babel"
|
|
5
|
+
description: Плагіни Babel для Intlayer, що керують вилученням вмісту, оптимізацією імпорту, очищенням невикористовуваних полів та приховуванням імен полів під час збірки.
|
|
6
|
+
keywords:
|
|
7
|
+
- "@intlayer/babel"
|
|
8
|
+
- babel
|
|
9
|
+
- plugin
|
|
10
|
+
- інтернаціоналізація
|
|
11
|
+
- i18n
|
|
12
|
+
- компілятор
|
|
13
|
+
- оптимізація
|
|
14
|
+
- очищення
|
|
15
|
+
- мінімізація
|
|
16
|
+
slugs:
|
|
17
|
+
- doc
|
|
18
|
+
- packages
|
|
19
|
+
- "@intlayer/babel"
|
|
20
|
+
- export
|
|
21
|
+
history:
|
|
22
|
+
- version: 9.0.0
|
|
23
|
+
date: 2026-06-25
|
|
24
|
+
changes: "Об'єднання документації для всіх експортованих модулів"
|
|
25
|
+
author: aymericzip
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# Пакет @intlayer/babel
|
|
29
|
+
|
|
30
|
+
Пакет `@intlayer/babel` надає набір спеціалізованих плагінів Babel для Intlayer. Ці плагіни охоплюють весь цикл збірки: вилучення оголошень вмісту, перезапис викликів `useIntlayer` / `getIntlayer` в оптимізований імпорт словників, очищення невикористовуваних полів та мінімізація імен полів.
|
|
31
|
+
|
|
32
|
+
## Встановлення
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npm install @intlayer/babel
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Експортовані модулі
|
|
39
|
+
|
|
40
|
+
Імпорт:
|
|
41
|
+
|
|
42
|
+
```ts
|
|
43
|
+
import { ... } from "@intlayer/babel";
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
### Плагіни
|
|
49
|
+
|
|
50
|
+
| Функція / Класс | Опис |
|
|
51
|
+
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
52
|
+
| `intlayerExtractBabelPlugin` | Плагін Babel, який вилучає вміст для перекладу з вихідних файлів і автоматично впроваджує хуки `useIntlayer` / `getIntlayer`. Розроблений для використання з Next.js та інструментами збірки на базі Babel. |
|
|
53
|
+
| `intlayerOptimizeBabelPlugin` | Плагін Babel, который перетворює виклики `useIntlayer` та `getIntlayer` і перезаписує їх імпорт в оптимізований імпорт JSON-словників (статичний, динамічний або через fetch). |
|
|
54
|
+
| `intlayerPurgeBabelPlugin` | Плагін Babel, який аналізує вихідні файли та перезаписує зкомпільовані JSON-файли словників для вилучення невикористовуваних полів (`build.purge`) або їх перейменування на короткі аліаси (`build.minify`). |
|
|
55
|
+
| `intlayerMinifyBabelPlugin` | Плагін Babel, який перезаписує вихідні файли для використання коротких аліасів полів, призначених на етапі мінімізації (наприклад, `content.title` ← `content.a`). Залежить від `intlayerPurgeBabelPlugin`. |
|
|
56
|
+
| `makeFieldRenameBabelPlugin` | Фабрична функція, що створює плагін Babel для перейменування звернень до полів вмісту словника у вихідних файлах відповідно до `dictionaryKeyToFieldRenameMap`, заповненої в `PruneContext`. |
|
|
57
|
+
| `makeUsageAnalyzerBabelPlugin` | Фабрична функция, що створює плагін Babel для аналізу використання `useIntlayer` / `getIntlayer` у вихідному коді та агрегування даних про використання полів у спільному `PruneContext`. |
|
|
58
|
+
| `getSharedPruneContext` | Допоміжна функція, яка повертає спільний об'єкт `PruneContext` для вказаного базового каталогу або `null`, якщо він ще не був ініціалізований. |
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
### Утиліти налаштування плагінів
|
|
63
|
+
|
|
64
|
+
| Функція | Опис |
|
|
65
|
+
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
66
|
+
| `getExtractPluginOptions` | Завантажує конфігурацію Intlayer і повертає `ExtractPluginOptions`, готові для використання з `intlayerExtractBabelPlugin`. |
|
|
67
|
+
| `getOptimizePluginOptions` | Завантажує конфігурацію Intlayer та зкомпільовані словники, і повертає `OptimizePluginOptions`, готові для використання з `intlayerOptimizeBabelPlugin`. |
|
|
68
|
+
| `getPurgePluginOptions` | Завантажує конфігурацію Intlayer і повертає `PurgePluginOptions`, готові для використання з `intlayerPurgeBabelPlugin`. |
|
|
69
|
+
| `getMinifyPluginOptions` | Завантажує конфігурацію Intlayer і повертає `MinifyPluginOptions`, готові для використання з `intlayerMinifyBabelPlugin`. |
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
### Типи
|
|
74
|
+
|
|
75
|
+
| Тип | Опис |
|
|
76
|
+
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
|
77
|
+
| `CompilerMode` | Режим компілятора: `'dev'` для розробки з підтримкою HMR або `'build'` для продакшен-збірок. |
|
|
78
|
+
| `ExtractPluginOptions` | Параметри для `intlayerExtractBabelPlugin`: список файлів, конфігурація, callback `onExtract` тощо. |
|
|
79
|
+
| `ExtractResult` | Результат вилучення: ключ словника, шлях до файлу, вміст та локаль. |
|
|
80
|
+
| `OptimizePluginOptions` | Параметри для `intlayerOptimizeBabelPlugin`: шляхи до словників, режим імпорту, зіставлення режимів для кожного словника тощо. |
|
|
81
|
+
| `PurgePluginOptions` | Параметри для `intlayerPurgeBabelPlugin`: базовий каталог, прапорці purge/minify/optimize, список файлів компонентів. |
|
|
82
|
+
| `MinifyPluginOptions` | Параметри для `intlayerMinifyBabelPlugin`: базовий каталог, прапорці minify/optimize/editorEnabled. |
|
|
83
|
+
| `PruneContext` | Спільний стан між плагінами аналізу та очищення: карти використання полів, карти перейменування тощо. |
|
|
84
|
+
| `DictionaryFieldUsage` | Результат використання полів для одного словника: `Set<string>` або `'all'`, коли статичний аналіз не дає однозначної відповіді. |
|
|
85
|
+
| `NestedRenameEntry` | Вузол у дереві перейменування: `shortName` та карта дочірніх елементів. |
|
|
86
|
+
| `NestedRenameMap` | Один рівень у дереві перейменування: `Map<string, NestedRenameEntry>`. |
|
|
87
|
+
| `CompatCallerConfig` | Конфігурація сумісного аналізатора використання для пакетів `compat-adapter` (ім'я викликаючого модуля та параметри обробки). |
|
|
88
|
+
| `ScriptBlock` | Блок скрипта, вилучений із SFC-файлу (Vue або Svelte): вміст, зміщення початку та зміщення кінця. |
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
### Допоміжні функції
|
|
93
|
+
|
|
94
|
+
| Функція | Опис |
|
|
95
|
+
| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
96
|
+
| `generateShortFieldName` | Перетворює ціле число (починаючи з нуля) на короткий буквений ідентифікатор: `0` → `'a'`, `25` → `'z'`, `26` → `'aa'`, тощо. |
|
|
97
|
+
| `buildNestedRenameMapFromContent` | Рекурсивно будує `NestedRenameMap` на основі значень вмісту зкомпільованого словника з урахуванням структур вузлів Intlayer (translation, enumeration тощо). |
|
|
98
|
+
| `createPruneContext` | Створює новий порожній об'єкт `PruneContext`, ініціалізований значеннями за замовчуванням. |
|
|
99
|
+
| `extractScriptBlocks` | Вилучає блоки `<script>` із SFC-файлів (Vue / Svelte) для подальшого аналізу в Babel. |
|
|
100
|
+
| `BABEL_PARSER_OPTIONS` | Константа, що представляє параметри парсера Babel, які охоплюють підтримувані фреймворки (React/Vue/Svelte/Angular/...). |
|
|
101
|
+
| `INTLAYER_CALLER_NAMES` | Константний список оригінальних імен викликаючих модулів Intlayer: `['useIntlayer', 'getIntlayer']`. |
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Приклад використання
|
|
106
|
+
|
|
107
|
+
```js
|
|
108
|
+
// babel.config.js
|
|
109
|
+
const {
|
|
110
|
+
intlayerExtractBabelPlugin,
|
|
111
|
+
intlayerPurgeBabelPlugin,
|
|
112
|
+
intlayerMinifyBabelPlugin,
|
|
113
|
+
intlayerOptimizeBabelPlugin,
|
|
114
|
+
getExtractPluginOptions,
|
|
115
|
+
getPurgePluginOptions,
|
|
116
|
+
getMinifyPluginOptions,
|
|
117
|
+
getOptimizePluginOptions,
|
|
118
|
+
} = require("@intlayer/babel");
|
|
119
|
+
|
|
120
|
+
module.exports = {
|
|
121
|
+
presets: ["next/babel"],
|
|
122
|
+
plugins: [
|
|
123
|
+
[intlayerExtractBabelPlugin, getExtractPluginOptions()],
|
|
124
|
+
[intlayerPurgeBabelPlugin, getPurgePluginOptions()],
|
|
125
|
+
[intlayerMinifyBabelPlugin, getMinifyPluginOptions()],
|
|
126
|
+
[intlayerOptimizeBabelPlugin, getOptimizePluginOptions()],
|
|
127
|
+
],
|
|
128
|
+
};
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
> **Примітка:** Плагін `intlayerPurgeBabelPlugin` має бути оголошений **перед** `intlayerMinifyBabelPlugin`, оскільки останній зчитує карту перейменування, створену першим. Крім того, обом має передувати плагін `intlayerOptimizeBabelPlugin`, щоб він міг бачити ключі словників до перезапису викликів `useIntlayer`.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: Документація плагина Vite intlayerCompiler | vite-intlayer
|
|
5
|
+
description: Плагін Vite, який витягує вбудовані оголошення контенту Intlayer з файлів компонентів і записує їх у файли JSON словника під час збірки/трансформації.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayerCompiler
|
|
8
|
+
- vite
|
|
9
|
+
- плагін
|
|
10
|
+
- компілятор
|
|
11
|
+
- контент
|
|
12
|
+
- словник
|
|
13
|
+
- інтернаціоналізація
|
|
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: "Інтегровано в intlayer(); ініціалізація доки"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# intlayerCompiler
|
|
28
|
+
|
|
29
|
+
`intlayerCompiler` — це плагін Vite, який сканує вихідні файли компонентів на наявність **вбудованих оголошень контенту Intlayer** (inline declarations) — контенту, визначеного безпосередньо всередині компонента, а не в окремому файлі `.content.ts`, — і записує їх у файли JSON словника під час фази трансформації.
|
|
30
|
+
|
|
31
|
+
> **Починаючи з Intlayer v9**, `intlayerCompiler` автоматично включається в основний плагін [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/packages/vite-intlayer/intlayer.md), якщо в конфігурації Intlayer увімкнено компілятор (`compiler.enabled: true`) і вказано шлях виводу (`compiler.output`). Вам потрібно реєструвати його окремо лише в тому випадку, якщо ви хочете повністю контролювати конфігурацію компілятора.
|
|
32
|
+
|
|
33
|
+
## Використання
|
|
34
|
+
|
|
35
|
+
### У складі `intlayer()` (рекомендовано, v9+)
|
|
36
|
+
|
|
37
|
+
Увімкніть компілятор у конфігурації Intlayer:
|
|
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", // куди записуються витягнуті словники
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Потім використовуйте стандартний плагін без додаткової реєстрації:
|
|
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
|
+
### Окремо (за необхідності)
|
|
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
|
+
## Опції
|
|
76
|
+
|
|
77
|
+
```ts
|
|
78
|
+
import type { IntlayerCompilerOptions } from "vite-intlayer";
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
| Опція | Тип | Опис |
|
|
82
|
+
| ---------------- | ------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
83
|
+
| `configOptions` | `GetConfigurationOptions` | Перевизначення конфігурації Intlayer, що передається в `getConfiguration()`. |
|
|
84
|
+
| `compilerConfig` | `Partial<CompilerConfig>` | Перевизначення специфічних налаштувань компілятора (наприклад, `enabled`, `output`, `filesList`). |
|
|
85
|
+
|
|
86
|
+
### Приклад
|
|
87
|
+
|
|
88
|
+
```ts
|
|
89
|
+
intlayerCompiler({
|
|
90
|
+
configOptions: { configFile: "./config/intlayer.config.ts" },
|
|
91
|
+
compilerConfig: { enabled: true, output: "./src/dictionaries" },
|
|
92
|
+
});
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Як це працює
|
|
96
|
+
|
|
97
|
+
### Фаза трансформації
|
|
98
|
+
|
|
99
|
+
Для кожного вихідного файлу, що відповідає `compiler.filesList`, плагін компілятора:
|
|
100
|
+
|
|
101
|
+
1. Пропускає вміст файлу через `extractContent` із `@intlayer/babel`.
|
|
102
|
+
2. Викликає `onExtract` для кожного знайденого оголошення, записуючи результуючий JSON словника в `compiler.output`.
|
|
103
|
+
3. Повертає трансформований вихідний код із вбудованими оголошеннями, заміненими стандартними викликами `useIntlayer('key')` / `getIntlayer('key')`.
|
|
104
|
+
|
|
105
|
+
Підтримувані типи файлів: `.ts`, `.tsx`, `.js`, `.jsx`, `.vue`, `.svelte`, `.astro`.
|
|
106
|
+
|
|
107
|
+
### HMR (Hot Module Replacement)
|
|
108
|
+
|
|
109
|
+
Коли файл компонента зберігається в режимі розробки, компілятор:
|
|
110
|
+
|
|
111
|
+
1. Виявляє зміну файлу через хук `handleHotUpdate` у Vite.
|
|
112
|
+
2. Повторно витягує контент з оновленого файлу.
|
|
113
|
+
3. Записує оновлений JSON словника.
|
|
114
|
+
4. Запускає повне перезавантаження сторінки (`server.ws.send({ type: 'full-reload' })`).
|
|
115
|
+
|
|
116
|
+
Затримка (debounce) у 500 мс запобігає нескінченному циклу повторного витягування, викликаному самим записом словника (який також запускає подію зміни файлу).
|
|
117
|
+
|
|
118
|
+
### Дедуплікація
|
|
119
|
+
|
|
120
|
+
`intlayerCompiler` використовує той самий механізм дедуплікації `createPrimaryInstanceGuard`, що й інші вбудовані плагіни. Коли присутні як `intlayer()` (який включає компілятор), так і ручний виклик `intlayerCompiler()`, запускається тільки перший зареєстрований екземпляр — словники не записуються двічі.
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: Документація плагина Vite intlayerMinify | vite-intlayer
|
|
5
|
+
description: Плагін Vite, який мінімізує зкомпільовані файли JSON словника Intlayer та опціонально приховує імена полів вмісту для зменшення розміру бандлу.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayerMinify
|
|
8
|
+
- vite
|
|
9
|
+
- плагін
|
|
10
|
+
- мінімізація
|
|
11
|
+
- розмір бандлу
|
|
12
|
+
- словник
|
|
13
|
+
- інтернаціоналізація
|
|
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: "Ініціалізація доки"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# intlayerMinify
|
|
28
|
+
|
|
29
|
+
`intlayerMinify` — це плагін Vite, який мінімізує зкомпільовані файли JSON словників під час збірки для продакшену. Він видаляє всі непотрібні пробіли і, у поєднанні з `intlayerPrune`, опціонально перейменовує поля вмісту на короткі буквені аліаси (`a`, `b`, `c`, …) для додаткового зменшення розміру бандлу.
|
|
30
|
+
|
|
31
|
+
> Плагін вже автоматично включений та налаштований, якщо ви використовуєте [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/packages/vite-intlayer/intlayer.md). Вам потрібно реєструвати його вручну тільки в тому випадку, если ви самостійно збираєте стек плагінів.
|
|
32
|
+
|
|
33
|
+
## Використання
|
|
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
|
+
## Умови активації
|
|
52
|
+
|
|
53
|
+
`intlayerMinify` активний **тільки** за виконання всіх трьох наступних умов:
|
|
54
|
+
|
|
55
|
+
1. Команда Vite — `build` (не `serve` / dev).
|
|
56
|
+
2. `build.optimize` має значення `true` (або `undefined`, що за замовчуванням дорівнює `true` для збірок).
|
|
57
|
+
3. `build.minify` має значення `true` у вашій конфігурації Intlayer.
|
|
58
|
+
|
|
59
|
+
Він автоматично **вимикається**, коли `editor.enabled` має значення `true`, оскільки редактору потрібен повний, зрозумілий людині вміст словників.
|
|
60
|
+
|
|
61
|
+
## Що мінімізується
|
|
62
|
+
|
|
63
|
+
Плагін обробляє два шляхи зберігання словників (що визначаються з `intlayer.system`):
|
|
64
|
+
|
|
65
|
+
- `dictionariesDir` — статичні словники для всіх мов (наприклад, `.intlayer/dictionaries/*.json`)
|
|
66
|
+
- `dynamicDictionariesDir` — динамічні словники для конкретних мов
|
|
67
|
+
|
|
68
|
+
> Словники в режимі fetch (`fetchDictionariesDir`) **ніколи** не мінімізуються, оскільки вони завантажуються з віддаленого API під час виконання з використанням оригінальних імен полів. Перейменування полів призвело б до невідповідності між відповіддю сервера та зверненнями до властивостей на стороні клієнта.
|
|
69
|
+
|
|
70
|
+
## Приховування імен полів (мінімізація властивостей)
|
|
71
|
+
|
|
72
|
+
Коли `intlayerPrune` аналізує кодову базу і заповнює карту `pruneContext.dictionaryKeyToFieldRenameMap`, `intlayerMinify` також перейменовує імена полів контенту на короткі аліаси. Наприклад:
|
|
73
|
+
|
|
74
|
+
```json
|
|
75
|
+
// до
|
|
76
|
+
{ "key": "myDict", "content": { "title": "Hello", "description": "World" } }
|
|
77
|
+
|
|
78
|
+
// після (з приховуванням)
|
|
79
|
+
{ "key": "myDict", "content": { "a": "Hello", "b": "World" } }
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Відповідні звернення до властивостей у вихідних файлах перейменовуються на кроці Babel в `intlayerOptimize`, тому поведінка в рантаймі залишається незмінною.
|
|
83
|
+
|
|
84
|
+
Внутрішні поля Intlayer (`nodeType`, `translation` тощо) ніколи не перейменовуються.
|
|
85
|
+
|
|
86
|
+
## Граничні випадки (Edge-cases)
|
|
87
|
+
|
|
88
|
+
Словники, позначені в `pruneContext.dictionariesWithEdgeCases` (структурні аномалії, виявлені під час фази очищення), повністю пропускаються — вони не мінімізуються і не приховуються, щоб уникнути відправки пошкоджених даних.
|
|
89
|
+
|
|
90
|
+
## Кваліфіковані групи (колекції / варіанти / метадані)
|
|
91
|
+
|
|
92
|
+
Для словників із масивом `qualifierTypes` (колекції, варіанти та метадані) плагін зберігає масив `qualifierTypes` та карту `meta` без змін. Маскуються лише імена полів усередині записів `content`. Композитні ключі (що використовуються для зіставлення селекторів під час виконання) ніколи не змінюються.
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-25
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
|
+
title: Документація плагина Vite intlayerProxy | vite-intlayer
|
|
5
|
+
description: Middleware локалізації роутингу для серверів dev/preview у Vite та серверного рендерингу (SSR) у продакшені. Обробляє визначення мови, перенаправлення URL та внутрішні перезаписи шляхів.
|
|
6
|
+
keywords:
|
|
7
|
+
- intlayerProxy
|
|
8
|
+
- vite
|
|
9
|
+
- плагін
|
|
10
|
+
- middleware
|
|
11
|
+
- локаль
|
|
12
|
+
- роутинг
|
|
13
|
+
- інтернаціоналізація
|
|
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: "Параметр configOptions об'єднано в один об'єкт налаштувань; проксі вбудовано в intlayer()"
|
|
25
|
+
author: aymericzip
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# intlayerProxy
|
|
29
|
+
|
|
30
|
+
`intlayerProxy` — це плагін Vite, який реєструє проміжне програмне забезпечення (middleware) локалізації роутингу для **будь-якого середовища**: dev-сервера, preview-сервера та продакшен SSR (Nitro / TanStack Start).
|
|
31
|
+
|
|
32
|
+
> **Починаючи з Intlayer v9**, `intlayerProxy` автоматично включається в основний плагін [`intlayer()`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/packages/vite-intlayer/intlayer.md) і активований за замовчуванням за допомогою налаштування `routing.enableProxy: true`. Вам потрібно реєструвати його окремо лише в тому випадку, якщо вам потрібен низькорівневий контроль або якщо ви використовуєте його за межами стандартної конфігурації `intlayer()`.
|
|
33
|
+
|
|
34
|
+
## Використання
|
|
35
|
+
|
|
36
|
+
### У складі `intlayer()` (рекомендовано, v9+)
|
|
37
|
+
|
|
38
|
+
Передайте параметри `proxy` в основний плагін замість окремої реєстрації `intlayerProxy`:
|
|
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
|
+
### Окремо (за необхідності)
|
|
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
|
+
## Параметри
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
import type { IntlayerProxyPluginOptions } from "vite-intlayer";
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Усі параметри є необов'язковими і передаються у вигляді єдиного об'єкта:
|
|
75
|
+
|
|
76
|
+
| Параметр | Тип | Опис |
|
|
77
|
+
| --------------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
78
|
+
| `ignore` | `(req: IncomingMessage) => boolean` | Предикат, який виключає запити з локалізації роутингу. Поверніть `true`, щоб пропустити запит (наприклад, для роутів API, health check-ів). |
|
|
79
|
+
| `configOptions` | `GetConfigurationOptions` | Перевизначення конфігурації Intlayer, що передаються в `getConfiguration()`. Використовуйте, коли вам потрібно, щоб проксі читав конкретний конфігураційний файл або перевизначав значення. |
|
|
80
|
+
|
|
81
|
+
### Приклад
|
|
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` створює незалежний від фреймворку Node.js middleware `(req, res, next)`, який містить всю логіку локалізації роутингу. Це корисно в середовищах, де API плагінів Vite недоступний (наприклад, на звичайному сервері Node.js або в кастомному модулі Nitro).
|
|
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
|
+
### Продакшен SSR (TanStack Start / Nitro через 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
|
+
## Поведінка роутингу
|
|
121
|
+
|
|
122
|
+
Цей middleware дублює логіку роутингу з middleware `next-intlayer` і підтримує всі режими роутингу Intlayer.
|
|
123
|
+
|
|
124
|
+
### Режими роутингу
|
|
125
|
+
|
|
126
|
+
| Режим | URL видно в браузері | Поведінка |
|
|
127
|
+
| --------------- | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
|
|
128
|
+
| `prefix` | `/uk/about` | За замовчуванням. Префікс мови в URL. Мова за замовчуванням перенаправляє на URL без префікса, якщо не активний `prefix-all`. |
|
|
129
|
+
| `prefix-all` | `/en/about`, `/uk/about` | Усі мови (включаючи мову за замовчуванням) завжди мають префікс в URL. |
|
|
130
|
+
| `no-prefix` | `/about` | Немає мови в URL. Мова зберігається тільки в cookies; перезапис URL відбувається на внутрішньому рівні. |
|
|
131
|
+
| `search-params` | `/about?locale=uk` | Мова передається як query-параметр. Перенаправляє для додавання/оновлення параметра `locale`, якщо він відсутній або застарів. |
|
|
132
|
+
|
|
133
|
+
### Пріоритет визначення
|
|
134
|
+
|
|
135
|
+
1. Префікс шляху URL (наприклад, `/uk/about` → `uk`).
|
|
136
|
+
2. Значення в cookie / localStorage (`intlayer-locale`).
|
|
137
|
+
3. Заголовок `Accept-Language`.
|
|
138
|
+
4. `defaultLocale` з конфігурації.
|
|
139
|
+
|
|
140
|
+
### Автоматичний обхід (Bypass)
|
|
141
|
+
|
|
142
|
+
Цей middleware завжди пропускає наступні запити безпосередньо без обробки локалі:
|
|
143
|
+
|
|
144
|
+
- Запити, що відповідають предикату `ignore`.
|
|
145
|
+
- `/node_modules/**`
|
|
146
|
+
- `/@**` — внутрішні запити Vite (`@vite/`, `@fs/`, `@id/` тощо).
|
|
147
|
+
- `/_**` — внутрішні запити сервера (`__vite_ping`, `__manifest` тощо).
|
|
148
|
+
- Запити, шлях яких закінчується розширенням файлу (статичні файли). Якщо в шляху статичного файлу присутній мовний префікс (наприклад, `/uk/logo.png`), він видаляється, щоб файл міг бути відданий коректно.
|
|
149
|
+
|
|
150
|
+
### Роутинг по доменах
|
|
151
|
+
|
|
152
|
+
Коли у вашій конфігурації Intlayer налаштовано параметр `routing.domains`, цей middleware обробляє роутинг мов між різними доменами:
|
|
153
|
+
|
|
154
|
+
- Запит для `/zh/about` на домені `intlayer.org` перенаправляється на `https://intlayer.zh/about`, коли `domains.zh = "intlayer.zh"`.
|
|
155
|
+
- Запит до `intlayer.zh/about` внутрішньо переписується в `/zh/about`, щоб заповнився параметр маршруту `[locale]`.
|
|
156
|
+
|
|
157
|
+
### Захист від нескінченного редиректу
|
|
158
|
+
|
|
159
|
+
Цей middleware відстежує кількість перенаправлень для пари `originalUrl → newUrl` у рухомому 2-секундному вікні. Більше 10 перенаправлень у цьому вікні повертають помилку `500` із докладним описом замість нескінченного циклу.
|
|
160
|
+
|
|
161
|
+
## Nitro / SSR у продакшені (автоматичне впровадження, v9+)
|
|
162
|
+
|
|
163
|
+
Коли `intlayerProxy` використовується як плагін Vite, він містить властивість `.nitro`. Плагін збірки `nitro/vite` зчитує цю властивість і поміщає її в `nitroConfig.modules`, завдяки чому `intlayerNitroHandler` реєструється як middleware сервера Nitro автоматично — для продакшен SSR не потрібне ручне налаштування.
|
|
164
|
+
|
|
165
|
+
Обробник Nitro використовує модель подій Web Fetch API h3 v2 (а не `fromNodeMiddleware`), тому він сумісний з усіма пресетами Nitro: Node, Bun, Deno, edge runtimes.
|
|
166
|
+
|
|
167
|
+
## Застарілі аліаси
|
|
168
|
+
|
|
169
|
+
| Застарілий експорт | Заміна |
|
|
170
|
+
| -------------------------- | --------------- |
|
|
171
|
+
| `intlayerMiddleware` | `intlayerProxy` |
|
|
172
|
+
| `intLayerMiddlewarePlugin` | `intlayerProxy` |
|
package/docs/uk/releases/v9.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-06-14
|
|
3
|
-
updatedAt: 2026-06-
|
|
3
|
+
updatedAt: 2026-06-25
|
|
4
4
|
title: Новий Intlayer v9 - Що нового?
|
|
5
5
|
description: Дізнайтеся, що нового в Intlayer v9. Представляємо сумісні пакети швидкої заміни (drop-in) для популярних бібліотек i18n та підтримку Collections, Variants та Dynamic Records.
|
|
6
6
|
keywords:
|
|
@@ -252,6 +252,28 @@ export default config;
|
|
|
252
252
|
|
|
253
253
|
---
|
|
254
254
|
|
|
255
|
+
## React Native: імпорт з одного пакета
|
|
256
|
+
|
|
257
|
+
У програмі React Native або Expo вам більше не потрібно жонглювати `react-intlayer` та `react-native-intlayer`. Пакет `react-native-intlayer` тепер **реекспортує весь API `react-intlayer`** (хуки, утиліти та підшляхи `/format`, `/html` і `/markdown`), а його `IntlayerProvider` автоматично застосовує поліфіли React Native.
|
|
258
|
+
|
|
259
|
+
Імпортуйте все з єдиного пакета `react-native-intlayer`:
|
|
260
|
+
|
|
261
|
+
```tsx
|
|
262
|
+
import {
|
|
263
|
+
IntlayerProvider,
|
|
264
|
+
useIntlayer,
|
|
265
|
+
useLocale,
|
|
266
|
+
} from "react-native-intlayer";
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
```bash
|
|
270
|
+
npm install intlayer react-native-intlayer
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
> Імпорт з `react-intlayer` продовжує працювати, але `react-native-intlayer` тепер є рекомендованою єдиною точкою входу для React Native — його провайдер містить поліфіли, яких не має веб-орієнтований провайдер `react-intlayer`.
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
255
277
|
## Примітки щодо міграції з v8
|
|
256
278
|
|
|
257
279
|
Якщо ви оновлюєтеся з v8, зверніть увагу, що v9 не містить критичних змін (breaking changes). Проте ось ключові зміни:
|
|
@@ -172,10 +172,16 @@ Vite پلگ ان `intlayerProxy` ڈیولپمنٹ کے دوران اسی منط
|
|
|
172
172
|
|
|
173
173
|
```typescript fileName="vite.config.ts"
|
|
174
174
|
import { defineConfig } from "vite";
|
|
175
|
-
import {
|
|
175
|
+
import { intlayer } from "vite-intlayer";
|
|
176
176
|
|
|
177
177
|
export default defineConfig({
|
|
178
|
-
plugins: [
|
|
178
|
+
plugins: [
|
|
179
|
+
intlayer({
|
|
180
|
+
proxy: {
|
|
181
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
182
|
+
},
|
|
183
|
+
}),
|
|
184
|
+
],
|
|
179
185
|
});
|
|
180
186
|
```
|
|
181
187
|
|
|
@@ -152,7 +152,13 @@ const config: StorybookConfig = {
|
|
|
152
152
|
} as const;
|
|
153
153
|
|
|
154
154
|
const viteConfig = defineConfig(() => ({
|
|
155
|
-
plugins: [
|
|
155
|
+
plugins: [
|
|
156
|
+
intlayer({
|
|
157
|
+
proxy: {
|
|
158
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
159
|
+
},
|
|
160
|
+
}),
|
|
161
|
+
],
|
|
156
162
|
}));
|
|
157
163
|
|
|
158
164
|
return mergeConfig(baseConfig, viteConfig(env));
|