@intlayer/docs 9.5.5 → 9.5.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/blog/ar/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/de/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/en/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/en-GB/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/es/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/fr/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/hi/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/id/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/it/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/ja/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/ko/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/pl/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/pt/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/ru/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/tr/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/uk/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/vi/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/zh/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/docs/ar/intlayer_with_astro.md +19 -32
- package/docs/ar/intlayer_with_astro_lit.md +32 -36
- package/docs/ar/intlayer_with_astro_preact.md +32 -36
- package/docs/ar/intlayer_with_astro_react.md +32 -36
- package/docs/ar/intlayer_with_astro_solid.md +32 -36
- package/docs/ar/intlayer_with_astro_svelte.md +32 -36
- package/docs/ar/intlayer_with_astro_vue.md +32 -36
- package/docs/ar/intlayer_with_react_router_v7.md +12 -1
- package/docs/ar/intlayer_with_solid_start.md +14 -7
- package/docs/ar/intlayer_with_svelte_kit.md +12 -1
- package/docs/ar/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ar/intlayer_with_tanstack.md +13 -6
- package/docs/ar/intlayer_with_vite+lit.md +75 -3
- package/docs/ar/intlayer_with_vite+preact.md +27 -19
- package/docs/ar/intlayer_with_vite+react.md +27 -19
- package/docs/ar/intlayer_with_vite+solid.md +27 -19
- package/docs/ar/intlayer_with_vite+svelte.md +27 -19
- package/docs/ar/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ar/intlayer_with_vite+vue.md +27 -19
- package/docs/ar/introduction.md +0 -1
- package/docs/ar/readme.md +0 -1
- package/docs/ar/releases/v8.md +1 -5
- package/docs/bn/intlayer_with_vite+lit.md +75 -3
- package/docs/bn/intlayer_with_vite+vanilla.md +16 -3
- package/docs/bn/introduction.md +0 -1
- package/docs/cs/intlayer_with_vite+lit.md +75 -3
- package/docs/cs/intlayer_with_vite+vanilla.md +16 -3
- package/docs/cs/introduction.md +0 -1
- package/docs/de/intlayer_with_astro.md +12 -25
- package/docs/de/intlayer_with_astro_lit.md +23 -27
- package/docs/de/intlayer_with_astro_preact.md +23 -27
- package/docs/de/intlayer_with_astro_react.md +23 -27
- package/docs/de/intlayer_with_astro_solid.md +23 -27
- package/docs/de/intlayer_with_astro_svelte.md +23 -27
- package/docs/de/intlayer_with_astro_vue.md +23 -27
- package/docs/de/intlayer_with_react_router_v7.md +12 -1
- package/docs/de/intlayer_with_solid_start.md +14 -7
- package/docs/de/intlayer_with_svelte_kit.md +12 -1
- package/docs/de/intlayer_with_tanstack+solid.md +13 -2
- package/docs/de/intlayer_with_tanstack.md +13 -6
- package/docs/de/intlayer_with_vite+lit.md +75 -3
- package/docs/de/intlayer_with_vite+preact.md +16 -3
- package/docs/de/intlayer_with_vite+react.md +16 -3
- package/docs/de/intlayer_with_vite+solid.md +16 -3
- package/docs/de/intlayer_with_vite+svelte.md +16 -3
- package/docs/de/intlayer_with_vite+vanilla.md +16 -3
- package/docs/de/intlayer_with_vite+vue.md +16 -3
- package/docs/de/introduction.md +0 -1
- package/docs/de/readme.md +0 -1
- package/docs/de/releases/v8.md +1 -5
- package/docs/en/intlayer_with_astro.md +5 -20
- package/docs/en/intlayer_with_astro_lit.md +22 -26
- package/docs/en/intlayer_with_astro_preact.md +22 -26
- package/docs/en/intlayer_with_astro_react.md +22 -26
- package/docs/en/intlayer_with_astro_solid.md +22 -26
- package/docs/en/intlayer_with_astro_svelte.md +22 -26
- package/docs/en/intlayer_with_astro_vanilla.md +20 -13
- package/docs/en/intlayer_with_astro_vue.md +22 -26
- package/docs/en/intlayer_with_react_router_v7.md +12 -1
- package/docs/en/intlayer_with_solid_start.md +14 -7
- package/docs/en/intlayer_with_svelte_kit.md +12 -1
- package/docs/en/intlayer_with_tanstack+solid.md +13 -2
- package/docs/en/intlayer_with_tanstack.md +12 -5
- package/docs/en/intlayer_with_vite+lit.md +75 -3
- package/docs/en/intlayer_with_vite+preact.md +16 -3
- package/docs/en/intlayer_with_vite+react.md +16 -3
- package/docs/en/intlayer_with_vite+solid.md +16 -3
- package/docs/en/intlayer_with_vite+svelte.md +16 -3
- package/docs/en/intlayer_with_vite+vanilla.md +16 -3
- package/docs/en/intlayer_with_vite+vue.md +16 -3
- package/docs/en/introduction.md +0 -1
- package/docs/en/readme.md +0 -1
- package/docs/en/releases/v8.md +1 -5
- package/docs/en-GB/intlayer_with_astro.md +12 -25
- package/docs/en-GB/intlayer_with_astro_lit.md +23 -27
- package/docs/en-GB/intlayer_with_astro_preact.md +23 -27
- package/docs/en-GB/intlayer_with_astro_react.md +23 -27
- package/docs/en-GB/intlayer_with_astro_solid.md +23 -27
- package/docs/en-GB/intlayer_with_astro_svelte.md +23 -27
- package/docs/en-GB/intlayer_with_astro_vue.md +23 -27
- package/docs/en-GB/intlayer_with_react_router_v7.md +12 -1
- package/docs/en-GB/intlayer_with_solid_start.md +14 -7
- package/docs/en-GB/intlayer_with_svelte_kit.md +12 -1
- package/docs/en-GB/intlayer_with_tanstack+solid.md +13 -2
- package/docs/en-GB/intlayer_with_tanstack.md +13 -6
- package/docs/en-GB/intlayer_with_vite+lit.md +75 -3
- package/docs/en-GB/intlayer_with_vite+preact.md +16 -3
- package/docs/en-GB/intlayer_with_vite+react.md +16 -3
- package/docs/en-GB/intlayer_with_vite+solid.md +25 -15
- package/docs/en-GB/intlayer_with_vite+svelte.md +16 -3
- package/docs/en-GB/intlayer_with_vite+vanilla.md +16 -3
- package/docs/en-GB/intlayer_with_vite+vue.md +16 -3
- package/docs/en-GB/introduction.md +0 -1
- package/docs/en-GB/readme.md +0 -1
- package/docs/en-GB/releases/v8.md +1 -5
- package/docs/es/intlayer_with_astro.md +12 -25
- package/docs/es/intlayer_with_astro_lit.md +23 -27
- package/docs/es/intlayer_with_astro_preact.md +23 -27
- package/docs/es/intlayer_with_astro_react.md +23 -27
- package/docs/es/intlayer_with_astro_solid.md +23 -27
- package/docs/es/intlayer_with_astro_svelte.md +23 -27
- package/docs/es/intlayer_with_astro_vue.md +23 -27
- package/docs/es/intlayer_with_react_router_v7.md +12 -1
- package/docs/es/intlayer_with_solid_start.md +14 -7
- package/docs/es/intlayer_with_svelte_kit.md +12 -1
- package/docs/es/intlayer_with_tanstack+solid.md +13 -2
- package/docs/es/intlayer_with_tanstack.md +13 -6
- package/docs/es/intlayer_with_vite+lit.md +75 -3
- package/docs/es/intlayer_with_vite+preact.md +16 -3
- package/docs/es/intlayer_with_vite+react.md +16 -3
- package/docs/es/intlayer_with_vite+solid.md +16 -3
- package/docs/es/intlayer_with_vite+svelte.md +16 -3
- package/docs/es/intlayer_with_vite+vanilla.md +16 -3
- package/docs/es/intlayer_with_vite+vue.md +16 -3
- package/docs/es/introduction.md +0 -1
- package/docs/es/readme.md +0 -1
- package/docs/es/releases/v8.md +1 -5
- package/docs/fr/intlayer_with_astro.md +13 -26
- package/docs/fr/intlayer_with_astro_lit.md +24 -28
- package/docs/fr/intlayer_with_astro_preact.md +24 -28
- package/docs/fr/intlayer_with_astro_react.md +24 -28
- package/docs/fr/intlayer_with_astro_solid.md +24 -28
- package/docs/fr/intlayer_with_astro_svelte.md +24 -28
- package/docs/fr/intlayer_with_astro_vue.md +24 -28
- package/docs/fr/intlayer_with_react_router_v7.md +15 -4
- package/docs/fr/intlayer_with_solid_start.md +14 -7
- package/docs/fr/intlayer_with_svelte_kit.md +15 -4
- package/docs/fr/intlayer_with_tanstack+solid.md +15 -4
- package/docs/fr/intlayer_with_tanstack.md +13 -6
- package/docs/fr/intlayer_with_vite+lit.md +75 -3
- package/docs/fr/intlayer_with_vite+preact.md +19 -6
- package/docs/fr/intlayer_with_vite+react.md +19 -6
- package/docs/fr/intlayer_with_vite+solid.md +19 -6
- package/docs/fr/intlayer_with_vite+svelte.md +19 -6
- package/docs/fr/intlayer_with_vite+vanilla.md +19 -6
- package/docs/fr/intlayer_with_vite+vue.md +19 -6
- package/docs/fr/introduction.md +0 -1
- package/docs/fr/readme.md +0 -1
- package/docs/fr/releases/v8.md +1 -5
- package/docs/hi/intlayer_with_astro.md +15 -31
- package/docs/hi/intlayer_with_astro_lit.md +26 -33
- package/docs/hi/intlayer_with_astro_preact.md +26 -33
- package/docs/hi/intlayer_with_astro_react.md +26 -33
- package/docs/hi/intlayer_with_astro_solid.md +26 -33
- package/docs/hi/intlayer_with_astro_svelte.md +26 -33
- package/docs/hi/intlayer_with_astro_vue.md +26 -33
- package/docs/hi/intlayer_with_react_router_v7.md +20 -12
- package/docs/hi/intlayer_with_solid_start.md +14 -7
- package/docs/hi/intlayer_with_svelte_kit.md +20 -12
- package/docs/hi/intlayer_with_tanstack+solid.md +13 -2
- package/docs/hi/intlayer_with_tanstack.md +21 -17
- package/docs/hi/intlayer_with_vite+lit.md +75 -3
- package/docs/hi/intlayer_with_vite+preact.md +24 -14
- package/docs/hi/intlayer_with_vite+react.md +24 -14
- package/docs/hi/intlayer_with_vite+solid.md +24 -14
- package/docs/hi/intlayer_with_vite+svelte.md +24 -14
- package/docs/hi/intlayer_with_vite+vanilla.md +16 -3
- package/docs/hi/intlayer_with_vite+vue.md +24 -14
- package/docs/hi/introduction.md +0 -1
- package/docs/hi/readme.md +0 -1
- package/docs/hi/releases/v8.md +1 -5
- package/docs/id/intlayer_with_astro.md +12 -25
- package/docs/id/intlayer_with_astro_lit.md +23 -27
- package/docs/id/intlayer_with_astro_preact.md +23 -27
- package/docs/id/intlayer_with_astro_react.md +23 -27
- package/docs/id/intlayer_with_astro_solid.md +23 -27
- package/docs/id/intlayer_with_astro_svelte.md +23 -27
- package/docs/id/intlayer_with_astro_vue.md +23 -27
- package/docs/id/intlayer_with_react_router_v7.md +12 -1
- package/docs/id/intlayer_with_solid_start.md +14 -7
- package/docs/id/intlayer_with_svelte_kit.md +12 -1
- package/docs/id/intlayer_with_tanstack+solid.md +13 -2
- package/docs/id/intlayer_with_tanstack.md +13 -6
- package/docs/id/intlayer_with_vite+lit.md +75 -3
- package/docs/id/intlayer_with_vite+preact.md +16 -3
- package/docs/id/intlayer_with_vite+react.md +16 -3
- package/docs/id/intlayer_with_vite+solid.md +16 -3
- package/docs/id/intlayer_with_vite+svelte.md +16 -3
- package/docs/id/intlayer_with_vite+vanilla.md +16 -3
- package/docs/id/intlayer_with_vite+vue.md +16 -3
- package/docs/id/introduction.md +0 -1
- package/docs/id/readme.md +0 -1
- package/docs/id/releases/v8.md +1 -5
- package/docs/it/intlayer_with_astro.md +12 -25
- package/docs/it/intlayer_with_astro_lit.md +23 -27
- package/docs/it/intlayer_with_astro_preact.md +23 -27
- package/docs/it/intlayer_with_astro_react.md +23 -27
- package/docs/it/intlayer_with_astro_solid.md +23 -27
- package/docs/it/intlayer_with_astro_svelte.md +23 -27
- package/docs/it/intlayer_with_astro_vue.md +23 -27
- package/docs/it/intlayer_with_react_router_v7.md +12 -1
- package/docs/it/intlayer_with_solid_start.md +14 -7
- package/docs/it/intlayer_with_svelte_kit.md +12 -1
- package/docs/it/intlayer_with_tanstack+solid.md +13 -2
- package/docs/it/intlayer_with_tanstack.md +13 -6
- package/docs/it/intlayer_with_vite+lit.md +75 -3
- package/docs/it/intlayer_with_vite+preact.md +16 -3
- package/docs/it/intlayer_with_vite+react.md +16 -3
- package/docs/it/intlayer_with_vite+solid.md +16 -3
- package/docs/it/intlayer_with_vite+svelte.md +16 -3
- package/docs/it/intlayer_with_vite+vanilla.md +16 -3
- package/docs/it/intlayer_with_vite+vue.md +16 -3
- package/docs/it/introduction.md +0 -1
- package/docs/it/readme.md +0 -1
- package/docs/it/releases/v8.md +1 -5
- package/docs/ja/intlayer_with_astro.md +12 -25
- package/docs/ja/intlayer_with_astro_lit.md +23 -27
- package/docs/ja/intlayer_with_astro_preact.md +23 -27
- package/docs/ja/intlayer_with_astro_react.md +23 -27
- package/docs/ja/intlayer_with_astro_solid.md +23 -27
- package/docs/ja/intlayer_with_astro_svelte.md +23 -27
- package/docs/ja/intlayer_with_astro_vue.md +23 -27
- package/docs/ja/intlayer_with_react_router_v7.md +12 -1
- package/docs/ja/intlayer_with_solid_start.md +14 -7
- package/docs/ja/intlayer_with_svelte_kit.md +21 -15
- package/docs/ja/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ja/intlayer_with_tanstack.md +13 -6
- package/docs/ja/intlayer_with_vite+lit.md +75 -3
- package/docs/ja/intlayer_with_vite+preact.md +16 -3
- package/docs/ja/intlayer_with_vite+react.md +16 -3
- package/docs/ja/intlayer_with_vite+solid.md +16 -3
- package/docs/ja/intlayer_with_vite+svelte.md +16 -3
- package/docs/ja/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ja/intlayer_with_vite+vue.md +16 -3
- package/docs/ja/introduction.md +0 -1
- package/docs/ja/readme.md +0 -1
- package/docs/ja/releases/v8.md +1 -5
- package/docs/ko/intlayer_with_astro.md +6 -21
- package/docs/ko/intlayer_with_astro_lit.md +23 -27
- package/docs/ko/intlayer_with_astro_preact.md +23 -27
- package/docs/ko/intlayer_with_astro_react.md +23 -27
- package/docs/ko/intlayer_with_astro_solid.md +23 -27
- package/docs/ko/intlayer_with_astro_svelte.md +23 -27
- package/docs/ko/intlayer_with_astro_vue.md +23 -27
- package/docs/ko/intlayer_with_react_router_v7.md +12 -1
- package/docs/ko/intlayer_with_solid_start.md +14 -7
- package/docs/ko/intlayer_with_svelte_kit.md +12 -1
- package/docs/ko/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ko/intlayer_with_tanstack.md +13 -6
- package/docs/ko/intlayer_with_vite+lit.md +75 -3
- package/docs/ko/intlayer_with_vite+preact.md +16 -3
- package/docs/ko/intlayer_with_vite+react.md +16 -3
- package/docs/ko/intlayer_with_vite+solid.md +26 -16
- package/docs/ko/intlayer_with_vite+svelte.md +16 -3
- package/docs/ko/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ko/intlayer_with_vite+vue.md +16 -3
- package/docs/ko/introduction.md +0 -1
- package/docs/ko/readme.md +0 -1
- package/docs/ko/releases/v8.md +1 -5
- package/docs/nl/intlayer_with_vite+lit.md +75 -3
- package/docs/nl/intlayer_with_vite+vanilla.md +16 -3
- package/docs/nl/introduction.md +0 -1
- package/docs/pl/intlayer_with_astro.md +6 -21
- package/docs/pl/intlayer_with_astro_lit.md +23 -27
- package/docs/pl/intlayer_with_astro_preact.md +23 -27
- package/docs/pl/intlayer_with_astro_react.md +23 -27
- package/docs/pl/intlayer_with_astro_solid.md +23 -27
- package/docs/pl/intlayer_with_astro_svelte.md +23 -27
- package/docs/pl/intlayer_with_astro_vue.md +23 -27
- package/docs/pl/intlayer_with_react_router_v7.md +12 -1
- package/docs/pl/intlayer_with_solid_start.md +14 -7
- package/docs/pl/intlayer_with_svelte_kit.md +12 -1
- package/docs/pl/intlayer_with_tanstack+solid.md +13 -2
- package/docs/pl/intlayer_with_tanstack.md +13 -6
- package/docs/pl/intlayer_with_vite+lit.md +75 -3
- package/docs/pl/intlayer_with_vite+preact.md +16 -3
- package/docs/pl/intlayer_with_vite+react.md +16 -3
- package/docs/pl/intlayer_with_vite+solid.md +16 -3
- package/docs/pl/intlayer_with_vite+svelte.md +16 -3
- package/docs/pl/intlayer_with_vite+vanilla.md +16 -3
- package/docs/pl/intlayer_with_vite+vue.md +16 -3
- package/docs/pl/introduction.md +0 -1
- package/docs/pl/readme.md +0 -1
- package/docs/pl/releases/v8.md +1 -5
- package/docs/pt/intlayer_with_astro.md +6 -21
- package/docs/pt/intlayer_with_astro_lit.md +23 -27
- package/docs/pt/intlayer_with_astro_preact.md +23 -27
- package/docs/pt/intlayer_with_astro_react.md +23 -27
- package/docs/pt/intlayer_with_astro_solid.md +23 -27
- package/docs/pt/intlayer_with_astro_svelte.md +23 -27
- package/docs/pt/intlayer_with_astro_vue.md +23 -27
- package/docs/pt/intlayer_with_react_router_v7.md +12 -1
- package/docs/pt/intlayer_with_solid_start.md +14 -7
- package/docs/pt/intlayer_with_svelte_kit.md +12 -1
- package/docs/pt/intlayer_with_tanstack+solid.md +13 -2
- package/docs/pt/intlayer_with_tanstack.md +13 -6
- package/docs/pt/intlayer_with_vite+lit.md +75 -3
- package/docs/pt/intlayer_with_vite+preact.md +16 -3
- package/docs/pt/intlayer_with_vite+react.md +16 -3
- package/docs/pt/intlayer_with_vite+solid.md +16 -3
- package/docs/pt/intlayer_with_vite+svelte.md +16 -3
- package/docs/pt/intlayer_with_vite+vanilla.md +16 -3
- package/docs/pt/intlayer_with_vite+vue.md +16 -3
- package/docs/pt/introduction.md +0 -1
- package/docs/pt/readme.md +0 -1
- package/docs/pt/releases/v8.md +1 -5
- package/docs/ru/intlayer_with_astro.md +12 -25
- package/docs/ru/intlayer_with_astro_lit.md +23 -27
- package/docs/ru/intlayer_with_astro_preact.md +23 -27
- package/docs/ru/intlayer_with_astro_react.md +23 -27
- package/docs/ru/intlayer_with_astro_solid.md +23 -27
- package/docs/ru/intlayer_with_astro_svelte.md +23 -27
- package/docs/ru/intlayer_with_astro_vue.md +23 -27
- package/docs/ru/intlayer_with_react_router_v7.md +12 -1
- package/docs/ru/intlayer_with_solid_start.md +14 -7
- package/docs/ru/intlayer_with_svelte_kit.md +12 -1
- package/docs/ru/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ru/intlayer_with_tanstack.md +13 -6
- package/docs/ru/intlayer_with_vite+lit.md +75 -3
- package/docs/ru/intlayer_with_vite+preact.md +16 -3
- package/docs/ru/intlayer_with_vite+react.md +16 -3
- package/docs/ru/intlayer_with_vite+solid.md +16 -3
- package/docs/ru/intlayer_with_vite+svelte.md +16 -3
- package/docs/ru/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ru/intlayer_with_vite+vue.md +16 -3
- package/docs/ru/introduction.md +0 -1
- package/docs/ru/readme.md +0 -1
- package/docs/ru/releases/v8.md +1 -5
- package/docs/tr/intlayer_with_astro.md +12 -25
- package/docs/tr/intlayer_with_astro_lit.md +24 -28
- package/docs/tr/intlayer_with_astro_preact.md +24 -28
- package/docs/tr/intlayer_with_astro_react.md +24 -28
- package/docs/tr/intlayer_with_astro_solid.md +24 -28
- package/docs/tr/intlayer_with_astro_svelte.md +24 -28
- package/docs/tr/intlayer_with_astro_vue.md +24 -28
- package/docs/tr/intlayer_with_react_router_v7.md +12 -1
- package/docs/tr/intlayer_with_solid_start.md +14 -7
- package/docs/tr/intlayer_with_svelte_kit.md +12 -1
- package/docs/tr/intlayer_with_tanstack+solid.md +13 -2
- package/docs/tr/intlayer_with_tanstack.md +13 -6
- package/docs/tr/intlayer_with_vite+lit.md +75 -3
- package/docs/tr/intlayer_with_vite+preact.md +16 -3
- package/docs/tr/intlayer_with_vite+react.md +16 -3
- package/docs/tr/intlayer_with_vite+solid.md +16 -3
- package/docs/tr/intlayer_with_vite+svelte.md +16 -3
- package/docs/tr/intlayer_with_vite+vanilla.md +16 -3
- package/docs/tr/intlayer_with_vite+vue.md +16 -3
- package/docs/tr/introduction.md +0 -1
- package/docs/tr/readme.md +0 -1
- package/docs/tr/releases/v8.md +1 -5
- package/docs/uk/intlayer_with_astro.md +12 -25
- package/docs/uk/intlayer_with_astro_lit.md +23 -27
- package/docs/uk/intlayer_with_astro_preact.md +23 -27
- package/docs/uk/intlayer_with_astro_react.md +23 -27
- package/docs/uk/intlayer_with_astro_solid.md +23 -27
- package/docs/uk/intlayer_with_astro_svelte.md +23 -27
- package/docs/uk/intlayer_with_astro_vue.md +23 -27
- package/docs/uk/intlayer_with_react_router_v7.md +12 -1
- package/docs/uk/intlayer_with_solid_start.md +14 -7
- package/docs/uk/intlayer_with_svelte_kit.md +12 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +13 -2
- package/docs/uk/intlayer_with_tanstack.md +13 -6
- package/docs/uk/intlayer_with_vite+lit.md +75 -3
- package/docs/uk/intlayer_with_vite+preact.md +16 -3
- package/docs/uk/intlayer_with_vite+react.md +16 -3
- package/docs/uk/intlayer_with_vite+solid.md +16 -3
- package/docs/uk/intlayer_with_vite+svelte.md +16 -3
- package/docs/uk/intlayer_with_vite+vanilla.md +16 -3
- package/docs/uk/intlayer_with_vite+vue.md +16 -3
- package/docs/uk/introduction.md +0 -1
- package/docs/uk/readme.md +0 -1
- package/docs/uk/releases/v8.md +1 -5
- package/docs/ur/intlayer_with_vite+lit.md +75 -3
- package/docs/ur/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ur/introduction.md +0 -1
- package/docs/vi/intlayer_with_astro.md +12 -25
- package/docs/vi/intlayer_with_astro_lit.md +23 -27
- package/docs/vi/intlayer_with_astro_preact.md +23 -27
- package/docs/vi/intlayer_with_astro_react.md +23 -27
- package/docs/vi/intlayer_with_astro_solid.md +23 -27
- package/docs/vi/intlayer_with_astro_svelte.md +23 -27
- package/docs/vi/intlayer_with_astro_vue.md +23 -27
- package/docs/vi/intlayer_with_react_router_v7.md +12 -1
- package/docs/vi/intlayer_with_solid_start.md +14 -7
- package/docs/vi/intlayer_with_svelte_kit.md +12 -1
- package/docs/vi/intlayer_with_tanstack+solid.md +13 -2
- package/docs/vi/intlayer_with_tanstack.md +13 -6
- package/docs/vi/intlayer_with_vite+lit.md +75 -3
- package/docs/vi/intlayer_with_vite+preact.md +16 -3
- package/docs/vi/intlayer_with_vite+react.md +16 -3
- package/docs/vi/intlayer_with_vite+solid.md +16 -3
- package/docs/vi/intlayer_with_vite+svelte.md +16 -3
- package/docs/vi/intlayer_with_vite+vanilla.md +16 -3
- package/docs/vi/intlayer_with_vite+vue.md +16 -3
- package/docs/vi/introduction.md +0 -1
- package/docs/vi/readme.md +0 -1
- package/docs/vi/releases/v8.md +1 -5
- package/docs/zh/intlayer_with_astro.md +6 -21
- package/docs/zh/intlayer_with_astro_lit.md +23 -27
- package/docs/zh/intlayer_with_astro_preact.md +23 -27
- package/docs/zh/intlayer_with_astro_react.md +23 -27
- package/docs/zh/intlayer_with_astro_solid.md +23 -27
- package/docs/zh/intlayer_with_astro_svelte.md +23 -27
- package/docs/zh/intlayer_with_astro_vue.md +23 -27
- package/docs/zh/intlayer_with_react_router_v7.md +12 -1
- package/docs/zh/intlayer_with_solid_start.md +14 -7
- package/docs/zh/intlayer_with_svelte_kit.md +12 -1
- package/docs/zh/intlayer_with_tanstack+solid.md +13 -2
- package/docs/zh/intlayer_with_tanstack.md +13 -6
- package/docs/zh/intlayer_with_vite+lit.md +75 -3
- package/docs/zh/intlayer_with_vite+preact.md +16 -3
- package/docs/zh/intlayer_with_vite+react.md +16 -3
- package/docs/zh/intlayer_with_vite+solid.md +16 -3
- package/docs/zh/intlayer_with_vite+svelte.md +16 -3
- package/docs/zh/intlayer_with_vite+vanilla.md +16 -3
- package/docs/zh/intlayer_with_vite+vue.md +16 -3
- package/docs/zh/introduction.md +0 -1
- package/docs/zh/readme.md +0 -1
- package/docs/zh/releases/v8.md +1 -5
- package/docs/zh-TW/introduction.md +0 -1
- package/package.json +6 -6
- package/docs/ar/intlayer_with_astro_vanilla.md +0 -709
- package/docs/de/intlayer_with_astro_vanilla.md +0 -705
- package/docs/en-GB/intlayer_with_astro_vanilla.md +0 -709
- package/docs/es/intlayer_with_astro_vanilla.md +0 -701
- package/docs/fr/intlayer_with_astro_vanilla.md +0 -701
- package/docs/hi/intlayer_with_astro_vanilla.md +0 -720
- package/docs/id/intlayer_with_astro_vanilla.md +0 -705
- package/docs/it/intlayer_with_astro_vanilla.md +0 -705
- package/docs/ja/intlayer_with_astro_vanilla.md +0 -708
- package/docs/ko/intlayer_with_astro_vanilla.md +0 -720
- package/docs/pl/intlayer_with_astro_vanilla.md +0 -705
- package/docs/pt/intlayer_with_astro_vanilla.md +0 -705
- package/docs/ru/intlayer_with_astro_vanilla.md +0 -716
- package/docs/tr/intlayer_with_astro_vanilla.md +0 -705
- package/docs/uk/intlayer_with_astro_vanilla.md +0 -705
- package/docs/vi/intlayer_with_astro_vanilla.md +0 -705
- package/docs/zh/intlayer_with_astro_vanilla.md +0 -704
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Solid i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения Astro + Solid. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Использование хуков useIntlayer / useLocale из astro-intlayer на странице Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Обновление использования API useIntlayer в Solid для прямого доступа к свойствам"
|
|
@@ -162,7 +165,7 @@ bun x intlayer init
|
|
|
162
165
|
Основной пакет, предоставляющий инструменты интернационализации для управления конфигурацией, переводами, [объявлением контента](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/dictionary/content_file.md), транспиляцией и [командами CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/cli/index.md).
|
|
163
166
|
|
|
164
167
|
- **astro-intlayer**
|
|
165
|
-
Включает плагин интеграции
|
|
168
|
+
Включает плагин интеграции Astro для интеграции Intlayer с [бандлером Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware, разрешающее локаль каждого запроса в `Astro.locals.intlayer`, и хуки `useIntlayer` / `useDictionary` / `useLocale`. Тот же путь импорта разрешается в серверную реализацию во фронтматтере `.astro` и в клиентскую (на базе `vanilla-intlayer`) в блоках `<script>`.
|
|
166
169
|
|
|
167
170
|
- **solid-js**
|
|
168
171
|
Основной пакет Solid.
|
|
@@ -250,19 +253,21 @@ export default appContent;
|
|
|
250
253
|
</Step>
|
|
251
254
|
<Step number={5} title="Использование контента в Astro">
|
|
252
255
|
|
|
253
|
-
|
|
256
|
+
Используйте ваши словари в файлах `.astro` с помощью хуков, экспортируемых `astro-intlayer`. Они имеют те же сигнатуры, что и `react-intlayer`: `useIntlayer("key")` возвращает содержимое словаря, а `useLocale()` текущую локаль, без необходимости передавать аргументы.
|
|
257
|
+
|
|
258
|
+
Локаль поступает из middleware `astro-intlayer`, которое интеграция регистрирует автоматически перед вашим собственным `src/middleware.ts`. Оно разрешает ее для каждого запроса, на основе префикса URL, затем сохраненной клиентом локали (cookie или заголовок), затем `Accept-Language`, и сохраняет в `Astro.locals.intlayer`. Предварительно отрендеренные страницы используют только URL, так как рендерятся один раз для каждого посетителя.
|
|
259
|
+
|
|
260
|
+
Вам также следует добавить SEO-метаданные, такие как hreflang и канонические ссылки, на каждую страницу и встроить остров Solid для интерактивного контента на стороне клиента.
|
|
254
261
|
|
|
255
262
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
256
263
|
---
|
|
264
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
257
265
|
import {
|
|
258
|
-
getIntlayer,
|
|
259
|
-
getLocaleFromPath,
|
|
260
266
|
getLocalizedUrl,
|
|
261
|
-
getHTMLTextDir,
|
|
262
267
|
getPrefix,
|
|
263
268
|
localeMap,
|
|
264
269
|
defaultLocale,
|
|
265
|
-
|
|
270
|
+
getHTMLTextDir,
|
|
266
271
|
} from "intlayer";
|
|
267
272
|
import { SolidIsland } from "../../components/solid/SolidIsland";
|
|
268
273
|
|
|
@@ -272,8 +277,11 @@ export const getStaticPaths = () => {
|
|
|
272
277
|
}));
|
|
273
278
|
};
|
|
274
279
|
|
|
275
|
-
|
|
276
|
-
const {
|
|
280
|
+
// Локаль, разрешенная middleware (напр. /ru/about -> 'ru')
|
|
281
|
+
const { locale } = useLocale();
|
|
282
|
+
|
|
283
|
+
// Содержимое словаря 'app' для этой локали
|
|
284
|
+
const { title } = useIntlayer("app");
|
|
277
285
|
---
|
|
278
286
|
|
|
279
287
|
<!doctype html>
|
|
@@ -329,6 +337,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
329
337
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
330
338
|
> ```
|
|
331
339
|
|
|
340
|
+
> `Astro.locals.intlayer` также предоставляет доступ к `locale`, `defaultLocale` и `availableLocales` в ваших собственных middleware и эндпоинтах. Передайте локаль или селектор вторым аргументом (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`), чтобы переопределить локаль запроса для одного вызова.
|
|
341
|
+
|
|
332
342
|
> **Примечание по конфигурации маршрутизации:**
|
|
333
343
|
> Структура каталогов, которую вы используете, зависит от настройки `middleware.routing` в вашем `intlayer.config.ts`:
|
|
334
344
|
>
|
|
@@ -445,10 +455,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
445
455
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
446
456
|
];
|
|
447
457
|
|
|
448
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
449
|
-
|
|
450
458
|
export const GET: APIRoute = async ({ site }) => {
|
|
451
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
459
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
460
|
+
siteUrl: "https://example.com",
|
|
461
|
+
});
|
|
452
462
|
|
|
453
463
|
return new Response(xmlOutput, {
|
|
454
464
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -548,21 +558,7 @@ bun x intlayer extract
|
|
|
548
558
|
</Tab>
|
|
549
559
|
<Tab value='Компилятор Babel'>
|
|
550
560
|
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
Обновите ваш `vite.config.ts`, чтобы включить плагин `intlayerCompiler`:
|
|
554
|
-
|
|
555
|
-
```ts fileName="vite.config.ts"
|
|
556
|
-
import { defineConfig } from "vite";
|
|
557
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
558
|
-
|
|
559
|
-
export default defineConfig({
|
|
560
|
-
plugins: [
|
|
561
|
-
intlayer(),
|
|
562
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
563
|
-
],
|
|
564
|
-
});
|
|
565
|
-
```
|
|
561
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
566
562
|
|
|
567
563
|
```bash packageManager="npm"
|
|
568
564
|
npm run build # Или npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Svelte i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения Astro + Svelte. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Использование хуков useIntlayer / useLocale из astro-intlayer на странице Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Обновление использования API useIntlayer в Solid для прямого доступа к свойствам"
|
|
@@ -162,7 +165,7 @@ bun x intlayer init
|
|
|
162
165
|
Основной пакет, предоставляющий инструменты интернационализации для управления конфигурацией, переводами, [объявлением контента](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/dictionary/content_file.md), транспиляцией и [командами CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/cli/index.md).
|
|
163
166
|
|
|
164
167
|
- **astro-intlayer**
|
|
165
|
-
Включает плагин интеграции
|
|
168
|
+
Включает плагин интеграции Astro для интеграции Intlayer с [бандлером Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware, разрешающее локаль каждого запроса в `Astro.locals.intlayer`, и хуки `useIntlayer` / `useDictionary` / `useLocale`. Тот же путь импорта разрешается в серверную реализацию во фронтматтере `.astro` и в клиентскую (на базе `vanilla-intlayer`) в блоках `<script>`.
|
|
166
169
|
|
|
167
170
|
- **svelte**
|
|
168
171
|
Основной пакет Svelte.
|
|
@@ -250,19 +253,21 @@ export default appContent;
|
|
|
250
253
|
</Step>
|
|
251
254
|
<Step number={5} title="Использование контента в Astro">
|
|
252
255
|
|
|
253
|
-
|
|
256
|
+
Используйте ваши словари в файлах `.astro` с помощью хуков, экспортируемых `astro-intlayer`. Они имеют те же сигнатуры, что и `react-intlayer`: `useIntlayer("key")` возвращает содержимое словаря, а `useLocale()` текущую локаль, без необходимости передавать аргументы.
|
|
257
|
+
|
|
258
|
+
Локаль поступает из middleware `astro-intlayer`, которое интеграция регистрирует автоматически перед вашим собственным `src/middleware.ts`. Оно разрешает ее для каждого запроса, на основе префикса URL, затем сохраненной клиентом локали (cookie или заголовок), затем `Accept-Language`, и сохраняет в `Astro.locals.intlayer`. Предварительно отрендеренные страницы используют только URL, так как рендерятся один раз для каждого посетителя.
|
|
259
|
+
|
|
260
|
+
Вам также следует добавить SEO-метаданные, такие как hreflang и канонические ссылки, на каждую страницу и встроить остров Svelte для интерактивного контента на стороне клиента.
|
|
254
261
|
|
|
255
262
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
256
263
|
---
|
|
264
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
257
265
|
import {
|
|
258
|
-
getIntlayer,
|
|
259
|
-
getLocaleFromPath,
|
|
260
266
|
getLocalizedUrl,
|
|
261
|
-
getHTMLTextDir,
|
|
262
267
|
getPrefix,
|
|
263
268
|
localeMap,
|
|
264
269
|
defaultLocale,
|
|
265
|
-
|
|
270
|
+
getHTMLTextDir,
|
|
266
271
|
} from "intlayer";
|
|
267
272
|
import SvelteIsland from "../../components/svelte/SvelteIsland.svelte";
|
|
268
273
|
|
|
@@ -272,8 +277,11 @@ export const getStaticPaths = () => {
|
|
|
272
277
|
}));
|
|
273
278
|
};
|
|
274
279
|
|
|
275
|
-
|
|
276
|
-
const {
|
|
280
|
+
// Локаль, разрешенная middleware (напр. /ru/about -> 'ru')
|
|
281
|
+
const { locale } = useLocale();
|
|
282
|
+
|
|
283
|
+
// Содержимое словаря 'app' для этой локали
|
|
284
|
+
const { title } = useIntlayer("app");
|
|
277
285
|
---
|
|
278
286
|
|
|
279
287
|
<!doctype html>
|
|
@@ -329,6 +337,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
329
337
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
330
338
|
> ```
|
|
331
339
|
|
|
340
|
+
> `Astro.locals.intlayer` также предоставляет доступ к `locale`, `defaultLocale` и `availableLocales` в ваших собственных middleware и эндпоинтах. Передайте локаль или селектор вторым аргументом (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`), чтобы переопределить локаль запроса для одного вызова.
|
|
341
|
+
|
|
332
342
|
> **Примечание по конфигурации маршрутизации:**
|
|
333
343
|
> Структура каталогов, которую вы используете, зависит от настройки `middleware.routing` в вашем `intlayer.config.ts`:
|
|
334
344
|
>
|
|
@@ -449,10 +459,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
449
459
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
450
460
|
];
|
|
451
461
|
|
|
452
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
453
|
-
|
|
454
462
|
export const GET: APIRoute = async ({ site }) => {
|
|
455
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
463
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
464
|
+
siteUrl: "https://example.com",
|
|
465
|
+
});
|
|
456
466
|
|
|
457
467
|
return new Response(xmlOutput, {
|
|
458
468
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -552,21 +562,7 @@ bun x intlayer extract
|
|
|
552
562
|
</Tab>
|
|
553
563
|
<Tab value='Компилятор Babel'>
|
|
554
564
|
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
Обновите ваш `vite.config.ts`, чтобы включить плагин `intlayerCompiler`:
|
|
558
|
-
|
|
559
|
-
```ts fileName="vite.config.ts"
|
|
560
|
-
import { defineConfig } from "vite";
|
|
561
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
562
|
-
|
|
563
|
-
export default defineConfig({
|
|
564
|
-
plugins: [
|
|
565
|
-
intlayer(),
|
|
566
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
567
|
-
],
|
|
568
|
-
});
|
|
569
|
-
```
|
|
565
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
570
566
|
|
|
571
567
|
```bash packageManager="npm"
|
|
572
568
|
npm run build # Или npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Vue i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения Astro + Vue. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Использование хуков useIntlayer / useLocale из astro-intlayer на странице Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Обновление использования API useIntlayer в Solid для прямого доступа к свойствам"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer vue vue-intlayer @astrojs/vue
|
|
|
150
153
|
Основной пакет, предоставляющий инструменты интернационализации для управления конфигурацией, переводами, [объявлением контента](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/dictionary/content_file.md), транспиляцией и [командами CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
Включает плагин интеграции
|
|
156
|
+
Включает плагин интеграции Astro для интеграции Intlayer с [бандлером Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware, разрешающее локаль каждого запроса в `Astro.locals.intlayer`, и хуки `useIntlayer` / `useDictionary` / `useLocale`. Тот же путь импорта разрешается в серверную реализацию во фронтматтере `.astro` и в клиентскую (на базе `vanilla-intlayer`) в блоках `<script>`.
|
|
154
157
|
|
|
155
158
|
- **vue**
|
|
156
159
|
Основной пакет Vue.
|
|
@@ -238,19 +241,21 @@ export default appContent;
|
|
|
238
241
|
</Step>
|
|
239
242
|
<Step number={5} title="Использование контента в Astro">
|
|
240
243
|
|
|
241
|
-
|
|
244
|
+
Используйте ваши словари в файлах `.astro` с помощью хуков, экспортируемых `astro-intlayer`. Они имеют те же сигнатуры, что и `react-intlayer`: `useIntlayer("key")` возвращает содержимое словаря, а `useLocale()` текущую локаль, без необходимости передавать аргументы.
|
|
245
|
+
|
|
246
|
+
Локаль поступает из middleware `astro-intlayer`, которое интеграция регистрирует автоматически перед вашим собственным `src/middleware.ts`. Оно разрешает ее для каждого запроса, на основе префикса URL, затем сохраненной клиентом локали (cookie или заголовок), затем `Accept-Language`, и сохраняет в `Astro.locals.intlayer`. Предварительно отрендеренные страницы используют только URL, так как рендерятся один раз для каждого посетителя.
|
|
247
|
+
|
|
248
|
+
Вам также следует добавить SEO-метаданные, такие как hreflang и канонические ссылки, на каждую страницу и встроить остров Vue для интерактивного контента на стороне клиента.
|
|
242
249
|
|
|
243
250
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
244
251
|
---
|
|
252
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
245
253
|
import {
|
|
246
|
-
getIntlayer,
|
|
247
|
-
getLocaleFromPath,
|
|
248
254
|
getLocalizedUrl,
|
|
249
|
-
getHTMLTextDir,
|
|
250
255
|
getPrefix,
|
|
251
256
|
localeMap,
|
|
252
257
|
defaultLocale,
|
|
253
|
-
|
|
258
|
+
getHTMLTextDir,
|
|
254
259
|
} from "intlayer";
|
|
255
260
|
import VueIsland from "../../components/vue/VueIsland.vue";
|
|
256
261
|
|
|
@@ -260,8 +265,11 @@ export const getStaticPaths = () => {
|
|
|
260
265
|
}));
|
|
261
266
|
};
|
|
262
267
|
|
|
263
|
-
|
|
264
|
-
const {
|
|
268
|
+
// Локаль, разрешенная middleware (напр. /ru/about -> 'ru')
|
|
269
|
+
const { locale } = useLocale();
|
|
270
|
+
|
|
271
|
+
// Содержимое словаря 'app' для этой локали
|
|
272
|
+
const { title } = useIntlayer("app");
|
|
265
273
|
---
|
|
266
274
|
|
|
267
275
|
<!doctype html>
|
|
@@ -309,6 +317,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
309
317
|
</html>
|
|
310
318
|
```
|
|
311
319
|
|
|
320
|
+
> `Astro.locals.intlayer` также предоставляет доступ к `locale`, `defaultLocale` и `availableLocales` в ваших собственных middleware и эндпоинтах. Передайте локаль или селектор вторым аргументом (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`), чтобы переопределить локаль запроса для одного вызова.
|
|
321
|
+
|
|
312
322
|
> **Примечание по конфигурации маршрутизации:**
|
|
313
323
|
> Структура каталогов, которую вы используете, зависит от настройки `middleware.routing` в вашем `intlayer.config.ts`:
|
|
314
324
|
>
|
|
@@ -447,10 +457,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
447
457
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
448
458
|
];
|
|
449
459
|
|
|
450
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
451
|
-
|
|
452
460
|
export const GET: APIRoute = async ({ site }) => {
|
|
453
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
461
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
462
|
+
siteUrl: "https://example.com",
|
|
463
|
+
});
|
|
454
464
|
|
|
455
465
|
return new Response(xmlOutput, {
|
|
456
466
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -550,21 +560,7 @@ bun x intlayer extract
|
|
|
550
560
|
</Tab>
|
|
551
561
|
<Tab value='Компилятор Babel'>
|
|
552
562
|
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
Обновите ваш `vite.config.ts`, чтобы включить плагин `intlayerCompiler`:
|
|
556
|
-
|
|
557
|
-
```ts fileName="vite.config.ts"
|
|
558
|
-
import { defineConfig } from "vite";
|
|
559
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
560
|
-
|
|
561
|
-
export default defineConfig({
|
|
562
|
-
plugins: [
|
|
563
|
-
intlayer(),
|
|
564
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
565
|
-
],
|
|
566
|
-
});
|
|
567
|
-
```
|
|
563
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
568
564
|
|
|
569
565
|
```bash packageManager="npm"
|
|
570
566
|
npm run build # Или npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-04
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "React Router v7 i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения React Router v7. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -888,8 +888,14 @@ bun x intlayer extract
|
|
|
888
888
|
</Tab>
|
|
889
889
|
<Tab value='Компилятор Babel'>
|
|
890
890
|
|
|
891
|
+
<Tabs>
|
|
892
|
+
<Tab value='intlayer >= 9'>
|
|
893
|
+
|
|
891
894
|
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
892
895
|
|
|
896
|
+
</Tab>
|
|
897
|
+
<Tab value='intlayer < 9'>
|
|
898
|
+
|
|
893
899
|
Обновите ваш `vite.config.ts`, чтобы включить плагин `intlayerCompiler`:
|
|
894
900
|
|
|
895
901
|
```ts fileName="vite.config.ts"
|
|
@@ -904,6 +910,11 @@ export default defineConfig({
|
|
|
904
910
|
});
|
|
905
911
|
```
|
|
906
912
|
|
|
913
|
+
</Tab>
|
|
914
|
+
</Tabs>
|
|
915
|
+
|
|
916
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
917
|
+
|
|
907
918
|
```bash packageManager="npm"
|
|
908
919
|
npm run build # Или npm run dev
|
|
909
920
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-08-06
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Solid Start i18n — полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Забудьте про i18next. Руководство 2026 года по созданию многоязычного (i18n) приложения на SolidStart. Серверная маршрутизация локалей, hreflang, sitemap и перевод с помощью ИИ."
|
|
6
6
|
keywords:
|
|
@@ -748,15 +748,13 @@ SolidStart превращает файл, экспортирующий HTTP-ме
|
|
|
748
748
|
import type { APIEvent } from "@solidjs/start/server";
|
|
749
749
|
import { generateSitemap } from "intlayer";
|
|
750
750
|
|
|
751
|
-
const SITE_URL = process.env.SITE_URL ?? "http://localhost:3000";
|
|
752
|
-
|
|
753
751
|
export const GET = (_event: APIEvent) => {
|
|
754
752
|
const sitemap = generateSitemap(
|
|
755
753
|
[
|
|
756
754
|
{ path: "/", changefreq: "daily", priority: 1.0 },
|
|
757
755
|
{ path: "/about", changefreq: "monthly", priority: 0.8 },
|
|
758
756
|
],
|
|
759
|
-
{ siteUrl:
|
|
757
|
+
{ siteUrl: "https://example.com" }
|
|
760
758
|
);
|
|
761
759
|
|
|
762
760
|
return new Response(sitemap, {
|
|
@@ -790,8 +788,6 @@ export const GET = (_event: APIEvent) => {
|
|
|
790
788
|
```typescript fileName="src/routes/robots.txt.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
791
789
|
import { getMultilingualUrls } from "intlayer";
|
|
792
790
|
|
|
793
|
-
const SITE_URL = process.env.SITE_URL ?? "http://localhost:3000";
|
|
794
|
-
|
|
795
791
|
const disallowedPaths = ["/admin", "/private"].flatMap((path) =>
|
|
796
792
|
Object.values(getMultilingualUrls(path))
|
|
797
793
|
);
|
|
@@ -803,7 +799,7 @@ export const GET = () =>
|
|
|
803
799
|
"Allow: /",
|
|
804
800
|
...disallowedPaths.map((path) => `Disallow: ${path}`),
|
|
805
801
|
"",
|
|
806
|
-
`Sitemap:
|
|
802
|
+
`Sitemap: https://example.com/sitemap.xml`,
|
|
807
803
|
].join("\n"),
|
|
808
804
|
{ headers: { "Content-Type": "text/plain" } }
|
|
809
805
|
);
|
|
@@ -922,8 +918,14 @@ bun x intlayer extract
|
|
|
922
918
|
</Tab>
|
|
923
919
|
<Tab value='Babel compiler'>
|
|
924
920
|
|
|
921
|
+
<Tabs>
|
|
922
|
+
<Tab value='intlayer >= 9'>
|
|
923
|
+
|
|
925
924
|
> Начиная с v9, `intlayerCompiler` включён в плагин `intlayer`. Так что добавлять его вручную не нужно.
|
|
926
925
|
|
|
926
|
+
</Tab>
|
|
927
|
+
<Tab value='intlayer < 9'>
|
|
928
|
+
|
|
927
929
|
Обновите ваш `vite.config.ts`, включив плагин `intlayerCompiler`:
|
|
928
930
|
|
|
929
931
|
```ts fileName="vite.config.ts"
|
|
@@ -942,6 +944,11 @@ export default defineConfig({
|
|
|
942
944
|
});
|
|
943
945
|
```
|
|
944
946
|
|
|
947
|
+
</Tab>
|
|
948
|
+
</Tabs>
|
|
949
|
+
|
|
950
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
951
|
+
|
|
945
952
|
```bash packageManager="npm"
|
|
946
953
|
npm run build # Или npm run dev
|
|
947
954
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-11-20
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "SvelteKit i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения SvelteKit. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -707,8 +707,14 @@ bun x intlayer extract
|
|
|
707
707
|
</Tab>
|
|
708
708
|
<Tab value='Компилятор Babel'>
|
|
709
709
|
|
|
710
|
+
<Tabs>
|
|
711
|
+
<Tab value='intlayer >= 9'>
|
|
712
|
+
|
|
710
713
|
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
711
714
|
|
|
715
|
+
</Tab>
|
|
716
|
+
<Tab value='intlayer < 9'>
|
|
717
|
+
|
|
712
718
|
Обновите ваш `vite.config.ts`, чтобы включить плагин `intlayerCompiler`:
|
|
713
719
|
|
|
714
720
|
```ts fileName="vite.config.ts"
|
|
@@ -723,6 +729,11 @@ export default defineConfig({
|
|
|
723
729
|
});
|
|
724
730
|
```
|
|
725
731
|
|
|
732
|
+
</Tab>
|
|
733
|
+
</Tabs>
|
|
734
|
+
|
|
735
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
736
|
+
|
|
726
737
|
```bash packageManager="npm"
|
|
727
738
|
npm run build # Или npm run dev
|
|
728
739
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-03-25
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "TanStack Start + Solid i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения TanStack Start + Solid. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -987,8 +987,14 @@ bun x intlayer extract
|
|
|
987
987
|
</Tab>
|
|
988
988
|
<Tab value='Babel-компилятор'>
|
|
989
989
|
|
|
990
|
+
<Tabs>
|
|
991
|
+
<Tab value='intlayer >= 9'>
|
|
992
|
+
|
|
990
993
|
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
991
994
|
|
|
995
|
+
</Tab>
|
|
996
|
+
<Tab value='intlayer < 9'>
|
|
997
|
+
|
|
992
998
|
Обновите ваш `vite.config.ts`, включив плагин `intlayerCompiler`:
|
|
993
999
|
|
|
994
1000
|
```ts fileName="vite.config.ts"
|
|
@@ -1014,6 +1020,11 @@ export default defineConfig({
|
|
|
1014
1020
|
});
|
|
1015
1021
|
```
|
|
1016
1022
|
|
|
1023
|
+
</Tab>
|
|
1024
|
+
</Tabs>
|
|
1025
|
+
|
|
1026
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
1027
|
+
|
|
1017
1028
|
```bash packageManager="npm"
|
|
1018
1029
|
npm run build # Или npm run dev
|
|
1019
1030
|
```
|
|
@@ -1093,7 +1104,7 @@ export const Route = createFileRoute("/sitemap.xml")({
|
|
|
1093
1104
|
{ path: "/", changefreq: "daily", priority: 1.0 },
|
|
1094
1105
|
{ path: "/about", changefreq: "monthly", priority: 0.8 },
|
|
1095
1106
|
],
|
|
1096
|
-
{ siteUrl:
|
|
1107
|
+
{ siteUrl: "https://example.com" }
|
|
1097
1108
|
);
|
|
1098
1109
|
|
|
1099
1110
|
return new Response(sitemap, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-09
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "TanStack Start i18n - Полное руководство по переводу вашего приложения"
|
|
5
5
|
description: "Больше никакого i18next. Руководство 2026 по созданию многоязычного (i18n) приложения TanStack Start. Переводите с помощью ИИ-агентов и оптимизируйте размер бандла, SEO и производительность."
|
|
6
6
|
keywords:
|
|
@@ -1069,8 +1069,14 @@ bun x intlayer extract
|
|
|
1069
1069
|
</Tab>
|
|
1070
1070
|
<Tab value="Компилятор Babel">
|
|
1071
1071
|
|
|
1072
|
+
<Tabs>
|
|
1073
|
+
<Tab value='intlayer >= 9'>
|
|
1074
|
+
|
|
1072
1075
|
> Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
|
|
1073
1076
|
|
|
1077
|
+
</Tab>
|
|
1078
|
+
<Tab value='intlayer < 9'>
|
|
1079
|
+
|
|
1074
1080
|
Обновите ваш `vite.config.ts`, чтобы включить плагин `intlayerCompiler`:
|
|
1075
1081
|
|
|
1076
1082
|
```ts fileName="vite.config.ts"
|
|
@@ -1085,6 +1091,11 @@ export default defineConfig({
|
|
|
1085
1091
|
});
|
|
1086
1092
|
```
|
|
1087
1093
|
|
|
1094
|
+
</Tab>
|
|
1095
|
+
</Tabs>
|
|
1096
|
+
|
|
1097
|
+
Соберите приложение, чтобы преобразовать ваши компоненты и извлечь контент
|
|
1098
|
+
|
|
1088
1099
|
```bash packageManager="npm"
|
|
1089
1100
|
npm run build # Или npm run dev
|
|
1090
1101
|
```
|
|
@@ -1153,10 +1164,6 @@ export default defineConfig({
|
|
|
1153
1164
|
import { createFileRoute } from "@tanstack/react-router";
|
|
1154
1165
|
import { generateSitemap } from "intlayer";
|
|
1155
1166
|
|
|
1156
|
-
const SITE_URL = (
|
|
1157
|
-
import.meta.env.VITE_SITE_URL ?? "http://localhost:3000"
|
|
1158
|
-
).replace(/\/$/, "");
|
|
1159
|
-
|
|
1160
1167
|
export const Route = createFileRoute("/sitemap.xml")({
|
|
1161
1168
|
server: {
|
|
1162
1169
|
handlers: {
|
|
@@ -1166,7 +1173,7 @@ export const Route = createFileRoute("/sitemap.xml")({
|
|
|
1166
1173
|
{ path: "/", changefreq: "daily", priority: 1.0 },
|
|
1167
1174
|
{ path: "/about", changefreq: "monthly", priority: 0.8 },
|
|
1168
1175
|
],
|
|
1169
|
-
{ siteUrl:
|
|
1176
|
+
{ siteUrl: "https://example.com" }
|
|
1170
1177
|
);
|
|
1171
1178
|
|
|
1172
1179
|
return new Response(sitemap, {
|