@intlayer/docs 9.0.0-canary.6 → 9.0.0-canary.8
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 -20
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +80 -20
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +4 -1
- 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/dynamic_dictionaries/index.md +24 -18
- package/docs/ar/dynamic_dictionaries/variants.md +280 -22
- 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/plugins/sync-json.md +0 -1
- package/docs/ar/releases/v9.md +79 -12
- 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/dynamic_dictionaries/index.md +22 -22
- package/docs/de/dynamic_dictionaries/variants.md +272 -14
- 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/plugins/sync-json.md +0 -1
- package/docs/de/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +20 -14
- package/docs/en/dynamic_dictionaries/variants.md +266 -8
- 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/plugins/sync-json.md +0 -1
- package/docs/en/releases/v9.md +59 -12
- 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/dynamic_dictionaries/index.md +21 -15
- package/docs/en-GB/dynamic_dictionaries/variants.md +268 -10
- 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/plugins/sync-json.md +0 -1
- package/docs/en-GB/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +25 -19
- package/docs/es/dynamic_dictionaries/variants.md +275 -17
- 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/plugins/sync-json.md +0 -1
- package/docs/es/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +26 -20
- package/docs/fr/dynamic_dictionaries/variants.md +273 -15
- 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/plugins/sync-json.md +0 -1
- package/docs/fr/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +28 -22
- package/docs/hi/dynamic_dictionaries/variants.md +282 -24
- 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/plugins/sync-json.md +0 -1
- package/docs/hi/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +25 -19
- package/docs/id/dynamic_dictionaries/variants.md +274 -16
- 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/plugins/sync-json.md +0 -1
- package/docs/id/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +26 -20
- package/docs/it/dynamic_dictionaries/variants.md +273 -15
- 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/plugins/sync-json.md +0 -1
- package/docs/it/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +27 -21
- package/docs/ja/dynamic_dictionaries/variants.md +276 -18
- 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/plugins/sync-json.md +0 -1
- package/docs/ja/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +23 -17
- package/docs/ko/dynamic_dictionaries/variants.md +273 -15
- 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/plugins/sync-json.md +0 -1
- package/docs/ko/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +26 -20
- package/docs/pl/dynamic_dictionaries/variants.md +275 -17
- 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/plugins/sync-json.md +0 -1
- package/docs/pl/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +25 -19
- package/docs/pt/dynamic_dictionaries/variants.md +276 -18
- 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/plugins/sync-json.md +0 -1
- package/docs/pt/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +25 -19
- package/docs/ru/dynamic_dictionaries/variants.md +277 -19
- 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/plugins/sync-json.md +0 -1
- package/docs/ru/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +27 -21
- package/docs/tr/dynamic_dictionaries/variants.md +274 -16
- 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/plugins/sync-json.md +0 -1
- package/docs/tr/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +25 -19
- package/docs/uk/dynamic_dictionaries/variants.md +277 -19
- 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/plugins/sync-json.md +0 -1
- package/docs/uk/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +28 -22
- package/docs/vi/dynamic_dictionaries/variants.md +278 -20
- 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/plugins/sync-json.md +0 -1
- package/docs/vi/releases/v9.md +57 -12
- 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/dynamic_dictionaries/index.md +24 -18
- package/docs/zh/dynamic_dictionaries/variants.md +274 -16
- 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/plugins/sync-json.md +0 -1
- package/docs/zh/releases/v9.md +57 -12
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +80 -20
- package/docs/ar/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/de/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/en/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/en-GB/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/es/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/fr/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/hi/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/id/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/it/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/ja/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/ko/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/pl/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/pt/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/ru/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/tr/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/uk/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/vi/dynamic_dictionaries/dynamic_content.md +0 -271
- package/docs/zh/dynamic_dictionaries/dynamic_content.md +0 -271
package/docs/de/releases/v9.md
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-06-14
|
|
3
|
-
updatedAt: 2026-06-
|
|
3
|
+
updatedAt: 2026-06-26
|
|
4
4
|
title: Neues Intlayer v9 – Was ist neu?
|
|
5
|
-
description: Entdecken Sie die Neuerungen in Intlayer v9. Einführung von Drop-in-Kompatibilitätspaketen für beliebte i18n-Bibliotheken und Unterstützung für Collections
|
|
5
|
+
description: Entdecken Sie die Neuerungen in Intlayer v9. Einführung von Drop-in-Kompatibilitätspaketen für beliebte i18n-Bibliotheken und Unterstützung für Collections und Variants.
|
|
6
6
|
keywords:
|
|
7
7
|
- Intlayer
|
|
8
8
|
- Compatibility
|
|
9
9
|
- Migration
|
|
10
10
|
- Collections
|
|
11
11
|
- Variants
|
|
12
|
-
- Dynamic Records
|
|
13
12
|
- i18next
|
|
14
13
|
- next-intl
|
|
15
14
|
- vue-i18n
|
|
@@ -22,7 +21,7 @@ author: aymericzip
|
|
|
22
21
|
|
|
23
22
|
# Neues Intlayer v9 – Was ist neu?
|
|
24
23
|
|
|
25
|
-
Willkommen bei Intlayer v9! Dieses Major Release markiert einen riesigen Meilenstein bei der Vereinfachung des Migrationspfads zu Intlayer mit **Compat Adapter Packages** für wichtige i18n-Bibliotheken (`react-i18next`, `next-intl`, `vue-i18n`, etc.) und fügt Unterstützung für reichhaltige Inhaltsstrukturen hinzu: **Collections
|
|
24
|
+
Willkommen bei Intlayer v9! Dieses Major Release markiert einen riesigen Meilenstein bei der Vereinfachung des Migrationspfads zu Intlayer mit **Compat Adapter Packages** für wichtige i18n-Bibliotheken (`react-i18next`, `next-intl`, `vue-i18n`, etc.) und fügt Unterstützung für reichhaltige Inhaltsstrukturen hinzu: **Collections** und **Variants**.
|
|
26
25
|
|
|
27
26
|
## Inhaltsverzeichnis
|
|
28
27
|
|
|
@@ -41,8 +40,10 @@ Durch das Ersetzen von Imports erhalten Sie alle Vorteile von Intlayer (einschli
|
|
|
41
40
|
- `@intlayer/i18next`
|
|
42
41
|
- `@intlayer/react-i18next`
|
|
43
42
|
- `@intlayer/next-intl`
|
|
43
|
+
- `@intlayer/react-intl`
|
|
44
44
|
- `@intlayer/next-i18next`
|
|
45
45
|
- `@intlayer/vue-i18n`
|
|
46
|
+
- `@intlayer/lingui`
|
|
46
47
|
|
|
47
48
|
Ändern Sie zum Beispiel einfach:
|
|
48
49
|
|
|
@@ -100,7 +101,7 @@ Alle Kompatibilitätsadapter leiten die Übersetzungsauflösung nun über einen
|
|
|
100
101
|
|
|
101
102
|
---
|
|
102
103
|
|
|
103
|
-
## Feature Spec: Collections
|
|
104
|
+
## Feature Spec: Collections & Variants
|
|
104
105
|
|
|
105
106
|
Intlayer v9 geht über statische Schlüssel-Wert-Objekte hinaus und ermöglicht es Dictionaries, dynamische Layout-Strukturen zu deklarieren, die End-to-End vollständig typisiert sind.
|
|
106
107
|
|
|
@@ -144,6 +145,8 @@ const faq = useIntlayer("faq", { item: 1 }); // -> { question: string, answer: s
|
|
|
144
145
|
|
|
145
146
|
Liefern Sie A/B-Tests, saisonale Header, Feature Flags oder benutzerdefinierte Landing Pages:
|
|
146
147
|
|
|
148
|
+
#### String-Varianten (z. B. A/B-Tests)
|
|
149
|
+
|
|
147
150
|
```ts fileName="hero.content.ts"
|
|
148
151
|
import { t, type Dictionary } from "intlayer";
|
|
149
152
|
|
|
@@ -167,16 +170,14 @@ export default {
|
|
|
167
170
|
const banner = useIntlayer("hero-banner", { variant: "black_friday" });
|
|
168
171
|
```
|
|
169
172
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
Definieren Sie Dictionaries, deren Einträge zur Laufzeit dynamisch über Query-IDs geladen werden:
|
|
173
|
+
#### Objekt-Varianten (z. B. Dynamic Records)
|
|
173
174
|
|
|
174
175
|
```ts fileName="product.content.ts"
|
|
175
176
|
import { t, type Dictionary } from "intlayer";
|
|
176
177
|
|
|
177
178
|
export default {
|
|
178
179
|
key: "product-copy",
|
|
179
|
-
|
|
180
|
+
variant: {
|
|
180
181
|
id: "prod_123",
|
|
181
182
|
category: "books",
|
|
182
183
|
},
|
|
@@ -229,7 +230,7 @@ export default defineConfig({
|
|
|
229
230
|
});
|
|
230
231
|
```
|
|
231
232
|
|
|
232
|
-
- **Compiler**: Aktiviert sich automatisch, wenn `compiler.enabled` gesetzt ist und ein `compiler.output` Pfad konfiguriert ist. Sie müssen `intlayerCompiler()` nicht mehr separat registrieren.
|
|
233
|
+
- **Compiler**: Aktiviert sich automatisch, wenn `compiler.enabled` auf `true` gesetzt ist und ein `compiler.output` Pfad konfiguriert ist. Sie müssen `intlayerCompiler()` nicht mehr separat registrieren.
|
|
233
234
|
- **Proxy**: Aktiviert sich automatisch basierend auf der neuen `routing.enableProxy` Option (`true` standardmäßig). Es verbindet die Locale-Erkennung / Umleitung / Rewrite Middleware in Entwicklung, Preview und Production SSR. Sie müssen `intlayerProxy()` nicht mehr separat registrieren.
|
|
234
235
|
|
|
235
236
|
### `routing.enableProxy` Option
|
|
@@ -252,17 +253,61 @@ Die eigenständigen `intlayerCompiler()` und `intlayerProxy()` Plugins bleiben f
|
|
|
252
253
|
|
|
253
254
|
---
|
|
254
255
|
|
|
256
|
+
## Compiler standardmäßig deaktiviert
|
|
257
|
+
|
|
258
|
+
Ab Intlayer v9 ist der **Compiler standardmäßig deaktiviert** (`compiler.enabled` ist jetzt standardmäßig `false`). Um die Extraktion Ihrer `.content.ts`-Dateien zur Build-Zeit zu aktivieren, setzen Sie `compiler.enabled: true` in Ihrer Konfiguration:
|
|
259
|
+
|
|
260
|
+
```ts fileName="intlayer.config.ts"
|
|
261
|
+
import type { IntlayerConfig } from "intlayer";
|
|
262
|
+
|
|
263
|
+
const config: IntlayerConfig = {
|
|
264
|
+
compiler: {
|
|
265
|
+
enabled: true, // Standard: false — seit v9 erforderlich, um den Compiler zu aktivieren
|
|
266
|
+
output: ({ fileName }) => `./${fileName}.content.ts`,
|
|
267
|
+
},
|
|
268
|
+
};
|
|
269
|
+
|
|
270
|
+
export default config;
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
Wenn der Compiler deaktiviert ist, überspringt Intlayer den Extraktionsschritt zur Build-Zeit und verlässt sich auf Ihre bereits deklarierten Dictionaries. Aktivieren Sie ihn nur, wenn das Bundler-Plugin (`@intlayer/swc`, `@intlayer/babel` oder das `intlayer()` Vite-Plugin) den Inhalt automatisch extrahieren soll.
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## React Native: Importe aus einem einzigen Paket
|
|
278
|
+
|
|
279
|
+
In einer React Native- oder Expo-App müssen Sie nicht mehr beide Pakete `react-intlayer` und `react-native-intlayer` jonglieren. Das Paket `react-native-intlayer` **re-exportiert nun die vollständige `react-intlayer` API** (Hooks, Utilities sowie die Subpfade `/format`, `/html` und `/markdown`), und sein `IntlayerProvider` wendet automatisch die React Native Polyfills an.
|
|
280
|
+
|
|
281
|
+
Importieren Sie alles aus dem einzigen Paket `react-native-intlayer`:
|
|
282
|
+
|
|
283
|
+
```tsx
|
|
284
|
+
import {
|
|
285
|
+
IntlayerProvider,
|
|
286
|
+
useIntlayer,
|
|
287
|
+
useLocale,
|
|
288
|
+
} from "react-native-intlayer";
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
npm install intlayer react-native-intlayer
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
> Importe aus `react-intlayer` funktionieren weiterhin, aber `react-native-intlayer` ist nun der empfohlene einzige Einstiegspunkt für React Native — sein Provider liefert die Polyfills, die der weborientierte `react-intlayer`-Provider nicht enthält.
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
255
299
|
## Migrationshinweise von v8
|
|
256
300
|
|
|
257
301
|
Wenn Sie von v8 upgraden, beachten Sie, dass v9 keine Breaking Changes enthält. Hier sind jedoch die wichtigsten Änderungen:
|
|
258
302
|
|
|
303
|
+
- **Compiler standardmäßig deaktiviert**: `compiler.enabled` ist jetzt standardmäßig `false`. Wenn Sie auf die Extraktion Ihrer `.content.ts`-Dateien zur Build-Zeit angewiesen sind, setzen Sie `compiler.enabled: true` in Ihrer `intlayer.config.ts`.
|
|
259
304
|
- **Locales & Dialects**: Wenn Sie externe i18n-Abhängigkeiten verwenden, fügen Sie deren entsprechende Kompatibilitätsadapter-Plugins in Ihrer Konfiguration oder Ihrem Bundler-Setup hinzu, um Imports automatisch umzuschreiben.
|
|
260
|
-
- **Custom Selectors**: Beim Aufruf von `useIntlayer` ist der zweite Parameter nun für ein Options-Objekt reserviert, das `{ locale, item, variant
|
|
305
|
+
- **Custom Selectors**: Beim Aufruf von `useIntlayer` ist der zweite Parameter nun für ein Options-Objekt reserviert, das `{ locale, item, variant }` enthält. Wenn Sie zuvor direkt einen Locale-String übergeben haben, können Sie dies weiterhin tun, aber die Verwendung des Options-Objekts wird für erweiterte Auswahlen empfohlen.
|
|
261
306
|
|
|
262
307
|
---
|
|
263
308
|
|
|
264
309
|
## Nützliche Links
|
|
265
310
|
|
|
266
311
|
- [Leitfaden für Compat Adapter Packages](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/compat/index.md)
|
|
267
|
-
- [Dynamische Dictionaries – Collections
|
|
312
|
+
- [Dynamische Dictionaries – Collections & Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/dynamic_dictionaries/index.md)
|
|
268
313
|
- [Konfigurationsreferenz](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/configuration.md)
|
package/docs/en/compiler.md
CHANGED
|
@@ -92,7 +92,11 @@ import { intlayer } from "vite-intlayer";
|
|
|
92
92
|
|
|
93
93
|
export default defineConfig({
|
|
94
94
|
plugins: [
|
|
95
|
-
intlayer(
|
|
95
|
+
intlayer({
|
|
96
|
+
proxy: {
|
|
97
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
98
|
+
},
|
|
99
|
+
}),
|
|
96
100
|
],
|
|
97
101
|
});
|
|
98
102
|
```
|
|
@@ -169,10 +169,16 @@ The `intlayerProxy` Vite plugin applies the same logic during development:
|
|
|
169
169
|
|
|
170
170
|
```typescript fileName="vite.config.ts"
|
|
171
171
|
import { defineConfig } from "vite";
|
|
172
|
-
import {
|
|
172
|
+
import { intlayer } from "vite-intlayer";
|
|
173
173
|
|
|
174
174
|
export default defineConfig({
|
|
175
|
-
plugins: [
|
|
175
|
+
plugins: [
|
|
176
|
+
intlayer({
|
|
177
|
+
proxy: {
|
|
178
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
179
|
+
},
|
|
180
|
+
}),
|
|
181
|
+
],
|
|
176
182
|
});
|
|
177
183
|
```
|
|
178
184
|
|
|
@@ -344,10 +344,16 @@ For SolidJS, Vue, and Svelte, the `intlayerProxy` Vite plugin manages the rewrit
|
|
|
344
344
|
|
|
345
345
|
```typescript fileName="vite.config.ts"
|
|
346
346
|
import { defineConfig } from "vite";
|
|
347
|
-
import {
|
|
347
|
+
import { intlayer } from "vite-intlayer";
|
|
348
348
|
|
|
349
349
|
export default defineConfig({
|
|
350
|
-
plugins: [
|
|
350
|
+
plugins: [
|
|
351
|
+
intlayer({
|
|
352
|
+
proxy: {
|
|
353
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
354
|
+
},
|
|
355
|
+
}),
|
|
356
|
+
],
|
|
351
357
|
});
|
|
352
358
|
```
|
|
353
359
|
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-06-12
|
|
3
|
-
updatedAt: 2026-06-
|
|
3
|
+
updatedAt: 2026-06-26
|
|
4
4
|
title: Dynamic Dictionaries
|
|
5
|
-
description: Overview of Intlayer's
|
|
5
|
+
description: Overview of Intlayer's dynamic dictionary features — collections and variants — for building flexible, runtime-driven i18n content.
|
|
6
6
|
keywords:
|
|
7
7
|
- Dynamic Dictionaries
|
|
8
8
|
- Collections
|
|
9
9
|
- Variants
|
|
10
|
-
- Dynamic Records
|
|
11
10
|
- Intlayer
|
|
12
11
|
- Internationalization
|
|
13
12
|
slugs:
|
|
@@ -18,31 +17,38 @@ history:
|
|
|
18
17
|
- version: 9.0.0
|
|
19
18
|
date: 2026-06-12
|
|
20
19
|
changes: "Release of the dynamic dictionaries feature"
|
|
20
|
+
- version: 9.1.0
|
|
21
|
+
date: 2026-06-26
|
|
22
|
+
changes: "Merged dynamic records into variants — `variant` now accepts a string or an object"
|
|
21
23
|
author: aymericzip
|
|
22
24
|
---
|
|
23
25
|
|
|
24
26
|
# Dynamic Dictionaries
|
|
25
27
|
|
|
26
|
-
Intlayer supports
|
|
28
|
+
Intlayer supports two mechanisms for expressing content that goes beyond a single static dictionary per key. Each is declared through a **top-level metadata field** in the content file; no wrapper function is needed.
|
|
27
29
|
|
|
28
|
-
| Feature
|
|
29
|
-
|
|
|
30
|
-
| [Collections](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/collections.md)
|
|
31
|
-
| [Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/variants.md)
|
|
32
|
-
| [Dynamic Records](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/dynamic_content.md) | `meta: { id, … }` | `{ id, … }` |
|
|
30
|
+
| Feature | Metadata field | Selector in `useIntlayer` |
|
|
31
|
+
| ---------------------------------------------------------------------------------------------------------------- | --------------------------------------- | ----------------------------------------------- |
|
|
32
|
+
| [Collections](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/collections.md) | `item: N` | `{ item: N }` |
|
|
33
|
+
| [Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/variants.md) | `variant: "name"` _or_ `variant: { … }` | `{ variant: "name" }` _or_ `{ variant: { … } }` |
|
|
33
34
|
|
|
34
|
-
|
|
35
|
+
Both compose with the locale argument and support selective / lazy loading via `importMode`.
|
|
35
36
|
|
|
36
37
|
## When to use which
|
|
37
38
|
|
|
38
39
|
- **Collections** — ordered list of items managed in separate files (FAQ entries, blog posts, products).
|
|
39
|
-
- **Variants** — named content alternatives
|
|
40
|
-
-
|
|
40
|
+
- **Variants** — named or structured content alternatives:
|
|
41
|
+
- a **string** variant for A/B tests, seasonal banners, or feature flags;
|
|
42
|
+
- an **object** variant for CMS records, user-specific copy, or any content addressed by a set of fields (the former "dynamic records").
|
|
43
|
+
|
|
44
|
+
> Earlier versions exposed a separate `meta` field for record-keyed content. It has been merged into `variant`: pass an **object** to `variant` instead of using `meta`.
|
|
41
45
|
|
|
42
46
|
## Selector disambiguation
|
|
43
47
|
|
|
44
|
-
|
|
48
|
+
A key may declare both dimensions at once (e.g. a collection whose items each have a variant). They are resolved in the order:
|
|
45
49
|
|
|
46
50
|
```
|
|
47
|
-
variant →
|
|
51
|
+
variant → item
|
|
48
52
|
```
|
|
53
|
+
|
|
54
|
+
So `{ variant: "promo" }` on a variant × item key returns every promo item as an array, and adding `{ item: 2 }` narrows it to a single entry.
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-06-12
|
|
3
|
-
updatedAt: 2026-06-
|
|
3
|
+
updatedAt: 2026-06-26
|
|
4
4
|
title: Variants
|
|
5
|
-
description: Use the variant metadata field in Intlayer content files to declare named content alternatives — A/B tests, seasonal banners, feature-flagged copy — and switch between them at runtime without code changes.
|
|
5
|
+
description: Use the variant metadata field in Intlayer content files to declare named or structured content alternatives — A/B tests, seasonal banners, feature-flagged copy, CMS records, user-specific content — and switch between them at runtime without code changes.
|
|
6
6
|
keywords:
|
|
7
7
|
- Variants
|
|
8
8
|
- A/B Testing
|
|
9
9
|
- Feature Flags
|
|
10
10
|
- Dynamic Content
|
|
11
|
+
- Dynamic Records
|
|
12
|
+
- CMS
|
|
11
13
|
- Intlayer
|
|
12
14
|
- Internationalization
|
|
13
15
|
slugs:
|
|
@@ -18,14 +20,24 @@ history:
|
|
|
18
20
|
- version: 9.0.0
|
|
19
21
|
date: 2026-06-12
|
|
20
22
|
changes: "Release of the variants feature"
|
|
23
|
+
- version: 9.1.0
|
|
24
|
+
date: 2026-06-26
|
|
25
|
+
changes: "`variant` now accepts a string or an object — the former `meta` / dynamic records are declared as object variants"
|
|
21
26
|
author: aymericzip
|
|
22
27
|
---
|
|
23
28
|
|
|
24
29
|
# Variants
|
|
25
30
|
|
|
26
|
-
A **variant** is a set of content files that share the same dictionary `key` but each carry a different `variant`
|
|
31
|
+
A **variant** is a set of content files that share the same dictionary `key` but each carry a different `variant` value. Intlayer serves the appropriate file based on the selector passed to `useIntlayer`.
|
|
27
32
|
|
|
28
|
-
|
|
33
|
+
The `variant` value can take **two forms**:
|
|
34
|
+
|
|
35
|
+
- **A string** — a single named alternative (A/B tests, seasonal banners, feature flags).
|
|
36
|
+
- **An object** — a structured discriminator addressed by a set of fields (CMS records, user-specific copy, any content keyed by an opaque ID). The whole object is the identity: the selector must provide an **equal** object to resolve the entry.
|
|
37
|
+
|
|
38
|
+
> The object form replaces the former `meta` field. Anywhere you previously wrote `meta: { id, … }`, write `variant: { id, … }`, and select it with `{ variant: { id, … } }`.
|
|
39
|
+
|
|
40
|
+
## Named (string) variants
|
|
29
41
|
|
|
30
42
|
Each file represents one named alternative. Omitting `variant` (or setting it to `"default"`) marks it as the fallback.
|
|
31
43
|
|
|
@@ -65,9 +77,9 @@ const dictionary = {
|
|
|
65
77
|
export default dictionary;
|
|
66
78
|
```
|
|
67
79
|
|
|
68
|
-
|
|
80
|
+
### Consuming named variants
|
|
69
81
|
|
|
70
|
-
|
|
82
|
+
#### Default variant
|
|
71
83
|
|
|
72
84
|
<Tabs group="framework">
|
|
73
85
|
<Tab label="React" value="react">
|
|
@@ -209,7 +221,7 @@ export default dictionary;
|
|
|
209
221
|
</Tab>
|
|
210
222
|
</Tabs>
|
|
211
223
|
|
|
212
|
-
|
|
224
|
+
#### Named variant
|
|
213
225
|
|
|
214
226
|
```tsx
|
|
215
227
|
const { headline, cta } = useIntlayer("hero-banner", {
|
|
@@ -217,7 +229,7 @@ const { headline, cta } = useIntlayer("hero-banner", {
|
|
|
217
229
|
});
|
|
218
230
|
```
|
|
219
231
|
|
|
220
|
-
|
|
232
|
+
#### Named variant with explicit locale
|
|
221
233
|
|
|
222
234
|
```tsx
|
|
223
235
|
const content = useIntlayer("hero-banner", {
|
|
@@ -226,9 +238,255 @@ const content = useIntlayer("hero-banner", {
|
|
|
226
238
|
});
|
|
227
239
|
```
|
|
228
240
|
|
|
241
|
+
## Object (structured) variants
|
|
242
|
+
|
|
243
|
+
An object variant addresses content by an arbitrary set of key-value pairs declared in the `variant` field — making it possible to model CMS records, user-specific copy, or any content whose key is an opaque ID. The **whole object** is the identity: the selector must provide an equal object for the entry to resolve.
|
|
244
|
+
|
|
245
|
+
```ts fileName="product.abc.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
246
|
+
import { t, type Dictionary } from "intlayer";
|
|
247
|
+
|
|
248
|
+
const dictionary = {
|
|
249
|
+
key: "product",
|
|
250
|
+
variant: { id: "prod_abc", userId: "user_123" },
|
|
251
|
+
content: {
|
|
252
|
+
name: t({ en: "Widget Pro", fr: "Widget Pro" }),
|
|
253
|
+
description: t({ en: "The best widget.", fr: "Le meilleur widget." }),
|
|
254
|
+
},
|
|
255
|
+
} satisfies Dictionary;
|
|
256
|
+
|
|
257
|
+
export default dictionary;
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
```ts fileName="product.abcd.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
261
|
+
import { t, type Dictionary } from "intlayer";
|
|
262
|
+
|
|
263
|
+
const dictionary = {
|
|
264
|
+
key: "product",
|
|
265
|
+
variant: { id: "prod_abcd", userId: "user_123" },
|
|
266
|
+
content: {
|
|
267
|
+
name: t({ en: "Widget Lite", fr: "Widget Lite" }),
|
|
268
|
+
description: t({ en: "A lighter option.", fr: "Une option plus légère." }),
|
|
269
|
+
},
|
|
270
|
+
} satisfies Dictionary;
|
|
271
|
+
|
|
272
|
+
export default dictionary;
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
### Consuming object variants
|
|
276
|
+
|
|
277
|
+
Pass the matching object to `variant`. Every field declared on the dictionary must be provided and equal; otherwise the result is `null`. Field order does not matter.
|
|
278
|
+
|
|
279
|
+
<Tabs group="framework">
|
|
280
|
+
<Tab label="React" value="react">
|
|
281
|
+
```tsx fileName="Product.tsx" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
282
|
+
import { useIntlayer } from "react-intlayer";
|
|
283
|
+
|
|
284
|
+
export const Product = ({
|
|
285
|
+
productId,
|
|
286
|
+
userId,
|
|
287
|
+
}: {
|
|
288
|
+
productId: string;
|
|
289
|
+
userId: string;
|
|
290
|
+
}) => {
|
|
291
|
+
const content = useIntlayer("product", {
|
|
292
|
+
variant: { id: productId, userId },
|
|
293
|
+
});
|
|
294
|
+
|
|
295
|
+
if (!content) return null;
|
|
296
|
+
|
|
297
|
+
return <p>{content.description}</p>;
|
|
298
|
+
};
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
</Tab>
|
|
302
|
+
<Tab label="Next.js" value="nextjs">
|
|
303
|
+
```tsx fileName="Product.tsx" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
304
|
+
import { useIntlayer } from "next-intlayer";
|
|
305
|
+
|
|
306
|
+
export const Product = ({
|
|
307
|
+
productId,
|
|
308
|
+
userId,
|
|
309
|
+
}: {
|
|
310
|
+
productId: string;
|
|
311
|
+
userId: string;
|
|
312
|
+
}) => {
|
|
313
|
+
const content = useIntlayer("product", {
|
|
314
|
+
variant: { id: productId, userId },
|
|
315
|
+
});
|
|
316
|
+
|
|
317
|
+
if (!content) return null;
|
|
318
|
+
|
|
319
|
+
return <p>{content.description}</p>;
|
|
320
|
+
};
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
</Tab>
|
|
324
|
+
<Tab label="Vue" value="vue">
|
|
325
|
+
```vue fileName="Product.vue" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
326
|
+
<script setup>
|
|
327
|
+
import { useIntlayer } from "vue-intlayer";
|
|
328
|
+
|
|
329
|
+
const props = defineProps({
|
|
330
|
+
productId: String,
|
|
331
|
+
userId: String,
|
|
332
|
+
});
|
|
333
|
+
|
|
334
|
+
const content = useIntlayer("product", {
|
|
335
|
+
variant: { id: props.productId, userId: props.userId },
|
|
336
|
+
});
|
|
337
|
+
</script>
|
|
338
|
+
|
|
339
|
+
<template>
|
|
340
|
+
<p v-if="content">{{ content.description }}</p>
|
|
341
|
+
</template>
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
</Tab>
|
|
345
|
+
<Tab label="Svelte" value="svelte">
|
|
346
|
+
```svelte fileName="Product.svelte" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
347
|
+
<script lang="ts">
|
|
348
|
+
import { useIntlayer } from "svelte-intlayer";
|
|
349
|
+
|
|
350
|
+
export let productId: string;
|
|
351
|
+
export let userId: string;
|
|
352
|
+
|
|
353
|
+
const content = useIntlayer("product", {
|
|
354
|
+
variant: { id: productId, userId },
|
|
355
|
+
});
|
|
356
|
+
</script>
|
|
357
|
+
|
|
358
|
+
{#if $content}
|
|
359
|
+
<p>{$content.description}</p>
|
|
360
|
+
{/if}
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
</Tab>
|
|
364
|
+
<Tab label="Preact" value="preact">
|
|
365
|
+
```tsx fileName="Product.tsx" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
366
|
+
import { useIntlayer } from "preact-intlayer";
|
|
367
|
+
|
|
368
|
+
export const Product = ({
|
|
369
|
+
productId,
|
|
370
|
+
userId,
|
|
371
|
+
}: {
|
|
372
|
+
productId: string;
|
|
373
|
+
userId: string;
|
|
374
|
+
}) => {
|
|
375
|
+
const content = useIntlayer("product", {
|
|
376
|
+
variant: { id: productId, userId },
|
|
377
|
+
});
|
|
378
|
+
|
|
379
|
+
if (!content) return null;
|
|
380
|
+
|
|
381
|
+
return <p>{content.description}</p>;
|
|
382
|
+
};
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
</Tab>
|
|
386
|
+
<Tab label="Solid" value="solid">
|
|
387
|
+
```tsx fileName="Product.tsx" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
388
|
+
import { useIntlayer } from "solid-intlayer";
|
|
389
|
+
|
|
390
|
+
export const Product = (props: {
|
|
391
|
+
productId: string;
|
|
392
|
+
userId: string;
|
|
393
|
+
}) => {
|
|
394
|
+
const content = useIntlayer("product", {
|
|
395
|
+
variant: { id: props.productId, userId: props.userId },
|
|
396
|
+
});
|
|
397
|
+
|
|
398
|
+
return (
|
|
399
|
+
<>
|
|
400
|
+
{content() && <p>{content().description}</p>}
|
|
401
|
+
</>
|
|
402
|
+
);
|
|
403
|
+
};
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
</Tab>
|
|
407
|
+
<Tab label="Angular" value="angular">
|
|
408
|
+
```typescript fileName="product.component.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
409
|
+
import { Component, Input, OnInit } from "@angular/core";
|
|
410
|
+
import { useIntlayer } from "angular-intlayer";
|
|
411
|
+
|
|
412
|
+
@Component({
|
|
413
|
+
selector: "app-product",
|
|
414
|
+
template: `
|
|
415
|
+
@if (content()) {
|
|
416
|
+
<p>{{ content().description }}</p>
|
|
417
|
+
}
|
|
418
|
+
`,
|
|
419
|
+
})
|
|
420
|
+
export class ProductComponent implements OnInit {
|
|
421
|
+
@Input() productId!: string;
|
|
422
|
+
@Input() userId!: string;
|
|
423
|
+
|
|
424
|
+
content: any;
|
|
425
|
+
|
|
426
|
+
ngOnInit() {
|
|
427
|
+
this.content = useIntlayer("product", {
|
|
428
|
+
variant: { id: this.productId, userId: this.userId },
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
</Tab>
|
|
435
|
+
<Tab label="Vanilla JS" value="vanilla">
|
|
436
|
+
```javascript fileName="product.js"
|
|
437
|
+
import { useIntlayer } from "vanilla-intlayer";
|
|
438
|
+
|
|
439
|
+
const content = useIntlayer("product", {
|
|
440
|
+
variant: { id: "prod_abcd", userId: "user_123" },
|
|
441
|
+
});
|
|
442
|
+
|
|
443
|
+
if (content) {
|
|
444
|
+
document.body.innerHTML = `<p>${content.description}</p>`;
|
|
445
|
+
}
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
</Tab>
|
|
449
|
+
</Tabs>
|
|
450
|
+
|
|
451
|
+
#### With explicit locale
|
|
452
|
+
|
|
453
|
+
```tsx
|
|
454
|
+
const content = useIntlayer("product", {
|
|
455
|
+
variant: { id: "prod_abc", userId: "user_123" },
|
|
456
|
+
locale: "fr",
|
|
457
|
+
});
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
#### Missing field — no match
|
|
461
|
+
|
|
462
|
+
```ts
|
|
463
|
+
// Returns null: `userId` is missing, so the object does not match the declared variant
|
|
464
|
+
const content = useIntlayer("product", { variant: { id: "prod_abc" } });
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
## Loading mode
|
|
468
|
+
|
|
469
|
+
Object variants are often loaded lazily. Set `importMode` on the dictionary to control this:
|
|
470
|
+
|
|
471
|
+
```ts contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
472
|
+
const dictionary = {
|
|
473
|
+
key: "product",
|
|
474
|
+
importMode: "fetch", // or "dynamic"
|
|
475
|
+
variant: { id: "prod_abc", userId: "user_123" },
|
|
476
|
+
content: { … },
|
|
477
|
+
} satisfies Dictionary;
|
|
478
|
+
|
|
479
|
+
export default dictionary;
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
See [bundle optimization](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/bundle_optimization.md) for details on `static`, `dynamic`, and `fetch` modes.
|
|
483
|
+
|
|
229
484
|
## Typical use-cases
|
|
230
485
|
|
|
231
486
|
- A/B copy tests driven by an experiment key
|
|
232
487
|
- Seasonal or promotional banners
|
|
233
488
|
- Feature-flagged messaging
|
|
234
489
|
- Locale-specific marketing campaigns
|
|
490
|
+
- Per-product marketing copy managed in a CMS
|
|
491
|
+
- User-specific or account-specific content
|
|
492
|
+
- Any content keyed by an opaque runtime ID
|
|
@@ -207,7 +207,11 @@ import analog from "@analogjs/platform";
|
|
|
207
207
|
export default defineConfig(() => ({
|
|
208
208
|
plugins: [
|
|
209
209
|
analog(),
|
|
210
|
-
intlayer(
|
|
210
|
+
intlayer({
|
|
211
|
+
proxy: {
|
|
212
|
+
ignore: (req) => req.url?.startsWith("/api"),
|
|
213
|
+
},
|
|
214
|
+
}),
|
|
211
215
|
],
|
|
212
216
|
}));
|
|
213
217
|
```
|
|
@@ -601,9 +601,9 @@ bun x intlayer extract
|
|
|
601
601
|
</Tab>
|
|
602
602
|
<Tab value='Babel compiler'>
|
|
603
603
|
|
|
604
|
-
|
|
604
|
+
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
605
605
|
|
|
606
|
-
|
|
606
|
+
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
607
607
|
|
|
608
608
|
```ts fileName="vite.config.ts"
|
|
609
609
|
import { defineConfig } from "vite";
|
|
@@ -605,9 +605,9 @@ bun x intlayer extract
|
|
|
605
605
|
</Tab>
|
|
606
606
|
<Tab value='Babel compiler'>
|
|
607
607
|
|
|
608
|
-
|
|
608
|
+
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
609
609
|
|
|
610
|
-
|
|
610
|
+
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
611
611
|
|
|
612
612
|
```ts fileName="vite.config.ts"
|
|
613
613
|
import { defineConfig } from "vite";
|
|
@@ -560,9 +560,9 @@ bun x intlayer extract
|
|
|
560
560
|
</Tab>
|
|
561
561
|
<Tab value='Babel compiler'>
|
|
562
562
|
|
|
563
|
-
|
|
563
|
+
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
564
564
|
|
|
565
|
-
|
|
565
|
+
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
566
566
|
|
|
567
567
|
```ts fileName="vite.config.ts"
|
|
568
568
|
import { defineConfig } from "vite";
|
|
@@ -557,9 +557,9 @@ bun x intlayer extract
|
|
|
557
557
|
</Tab>
|
|
558
558
|
<Tab value='Babel compiler'>
|
|
559
559
|
|
|
560
|
-
|
|
560
|
+
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
561
561
|
|
|
562
|
-
|
|
562
|
+
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
563
563
|
|
|
564
564
|
```ts fileName="vite.config.ts"
|
|
565
565
|
import { defineConfig } from "vite";
|