@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 + Lit - الدليل الكامل لترجمة تطبيقك"
|
|
5
5
|
description: "لا مزيد من i18next. دليل 2026 لبناء تطبيق Astro + Lit متعدد اللغات (i18n). ترجم باستخدام وكلاء الذكاء الاصطناعي وحسّن حجم الحزمة وتحسين محركات البحث والأداء."
|
|
6
6
|
keywords:
|
|
@@ -20,6 +20,9 @@ slugs:
|
|
|
20
20
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
21
21
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
22
22
|
history:
|
|
23
|
+
- version: 9.5.5
|
|
24
|
+
date: 2026-09-19
|
|
25
|
+
changes: "استخدام خطافات useIntlayer / useLocale لـ astro-intlayer في صفحة Astro"
|
|
23
26
|
- version: 8.9.0
|
|
24
27
|
date: 2026-05-04
|
|
25
28
|
changes: "تحديث استخدام واجهة برمجة تطبيقات useIntlayer في Solid للوصول المباشر إلى الخصائص"
|
|
@@ -151,7 +154,7 @@ bun add intlayer astro-intlayer lit lit-intlayer @astrojs/lit
|
|
|
151
154
|
الحزمة الأساسية التي توفر أدوات i18n لإدارة التكوين، الترجمات، [تعريف المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_file.md)، التحويل، و[أوامر CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/index.md).
|
|
152
155
|
|
|
153
156
|
- **astro-intlayer**
|
|
154
|
-
|
|
157
|
+
يتضمن ملحق تكامل Astro لدمج Intlayer مع [حازم Vite](https://vite.dev/guide/why.html#why-bundle-for-production)، ووسيطاً برمجياً يحدد لغة كل طلب في `Astro.locals.intlayer`، وخطافات `useIntlayer` / `useDictionary` / `useLocale`. يحل نفس مسار الاستيراد إلى تنفيذ الخادم في واجهة `.astro` وإلى تنفيذ العميل (المدعوم بـ `vanilla-intlayer`) في كتل `<script>`.
|
|
155
158
|
|
|
156
159
|
- **lit**
|
|
157
160
|
حزمة Lit الأساسية لبناء مكونات ويب (Web Components) سريعة وخفيفة.
|
|
@@ -246,29 +249,34 @@ export default litDemoContent;
|
|
|
246
249
|
</Step>
|
|
247
250
|
<Step number={5} title="استخدام المحتوى في Astro">
|
|
248
251
|
|
|
249
|
-
|
|
252
|
+
استخدم قواميسك في ملفات `.astro` باستخدام الخطافات المصدرة بواسطة `astro-intlayer`. تشترك هذه الخطافات في نفس تواقيع روابط إطار العمل: يُرجع `useIntlayer("key")` محتوى القاموس ويُرجع `useLocale()` اللغة الحالية، دون الحاجة إلى تمرير أي وسيطات.
|
|
253
|
+
|
|
254
|
+
تأتي اللغة من الوسيط البرمجي `astro-intlayer`، والذي يسجله التكامل تلقائياً قبل `src/middleware.ts` الخاص بك. يحدد الوسيط اللغة لكل طلب، بدءاً من بادئة عنوان URL، ثم اللغة المحفوظة بواسطة العميل (ملف تعريف الارتباط أو الترويسة)، ثم `Accept-Language`، ويخزنها في `Astro.locals.intlayer`. تستخدم الصفحات المعروضة مسبقاً عنوان URL فقط، حيث يتم عرضها مرة واحدة لكل زائر.
|
|
255
|
+
|
|
256
|
+
يجب عليك أيضاً إضافة بيانات تعريف SEO مثل hreflang والروابط الأساسية (canonical) إلى كل صفحة. يتم بعد ذلك استيراد عنصر Lit المخصص عبر `<script>` من جانب العميل ووضعه في النص الأساسي (body).
|
|
250
257
|
|
|
251
258
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
252
259
|
---
|
|
260
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
253
261
|
import {
|
|
254
|
-
getIntlayer,
|
|
255
|
-
getLocaleFromPath,
|
|
256
262
|
getLocalizedUrl,
|
|
257
|
-
getHTMLTextDir,
|
|
258
263
|
getPrefix,
|
|
259
264
|
localeMap,
|
|
260
265
|
defaultLocale,
|
|
261
|
-
|
|
266
|
+
getHTMLTextDir,
|
|
262
267
|
} from "intlayer";
|
|
263
268
|
|
|
264
269
|
export const getStaticPaths = () => {
|
|
265
|
-
return
|
|
266
|
-
params: { locale
|
|
270
|
+
return defaultLocale.map((locale) => ({
|
|
271
|
+
params: { locale },
|
|
267
272
|
}));
|
|
268
273
|
};
|
|
269
274
|
|
|
270
|
-
|
|
271
|
-
const {
|
|
275
|
+
// اللغة المحددة بواسطة الوسيط البرمجي (مثال: /ar/about -> 'ar')
|
|
276
|
+
const { locale } = useLocale();
|
|
277
|
+
|
|
278
|
+
// محتوى قاموس 'lit-demo' لتلك اللغة
|
|
279
|
+
const { greeting } = useIntlayer("lit-demo");
|
|
272
280
|
---
|
|
273
281
|
|
|
274
282
|
<!doctype html>
|
|
@@ -327,6 +335,8 @@ const { greeting } = getIntlayer("lit-demo", locale);
|
|
|
327
335
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
328
336
|
> ```
|
|
329
337
|
|
|
338
|
+
> يعرض `Astro.locals.intlayer` أيضاً `locale` و `defaultLocale` و `availableLocales` للوسطاء البرمجيين ونقاط النهاية الخاصة بك. مرر لغة أو محدداً كوسيط ثانٍ (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) لتجاوز لغة الطلب لاستدعاء واحد.
|
|
339
|
+
|
|
330
340
|
> **ملاحظة حول إعداد التوجيه:**
|
|
331
341
|
> تعتمد بنية الدليل التي تستخدمها على إعداد `middleware.routing` في `intlayer.config.ts`:
|
|
332
342
|
>
|
|
@@ -468,9 +478,9 @@ override render() {
|
|
|
468
478
|
|
|
469
479
|
#### خريطة الموقع (Sitemap)
|
|
470
480
|
|
|
471
|
-
Intlayer
|
|
481
|
+
يأتي Intlayer مع مولد خريطة موقع مدمج لمساعدتك في إنشاء خريطة موقع لتطبيقك بسهولة. يتعامل مع المسارات المترجمة ويضيف البيانات الوصفية اللازمة لمحركات البحث.
|
|
472
482
|
|
|
473
|
-
>
|
|
483
|
+
> تدعم خريطة الموقع المُنشأة من قِبل Intlayer مساحة الأسماء `xhtml:link` (Hreflang XML Extensions). على عكس مولدات خرائط الموقع الافتراضية التي تُدرج عناوين URL الخام فقط، ينشئ Intlayer تلقائياً الروابط ثنائية الاتجاه المطلوبة بين جميع إصدارات الصفحة باللغات المختلفة (على سبيل المثال، `/about` و `/about?lang=fr` و `/about?lang=es`). هذا يضمن أن محركات البحث تفهرس بشكل صحيح وتقدم النسخة الصحيحة من اللغة للجمهور المناسب.
|
|
474
484
|
|
|
475
485
|
أنشئ `src/pages/sitemap.xml.ts` لإنشاء خريطة موقع تتضمن جميع مساراتك المترجمة.
|
|
476
486
|
|
|
@@ -483,10 +493,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
483
493
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
484
494
|
];
|
|
485
495
|
|
|
486
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
487
|
-
|
|
488
496
|
export const GET: APIRoute = async ({ site }) => {
|
|
489
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
497
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
498
|
+
siteUrl: "https://example.com",
|
|
499
|
+
});
|
|
490
500
|
|
|
491
501
|
return new Response(xmlOutput, {
|
|
492
502
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -523,13 +533,13 @@ export const GET: APIRoute = ({ site }) => {
|
|
|
523
533
|
```
|
|
524
534
|
|
|
525
535
|
</Step>
|
|
526
|
-
<Step number={15} title="
|
|
536
|
+
<Step number={15} title="استخراج محتوى مكوناتك" isOptional={true}>
|
|
527
537
|
|
|
528
|
-
|
|
538
|
+
إذا كان لديك كود برمجي موجود بالفعل، فقد يستغرق تحويل آلاف الملفات وقتاً طويلاً.
|
|
529
539
|
|
|
530
|
-
|
|
540
|
+
لتسهيل هذه العملية، يقترح Intlayer [مترجمًا](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/compiler.md) / [مستخرجًا](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/extract.md) لتحويل مكوناتك واستخراج المحتوى.
|
|
531
541
|
|
|
532
|
-
|
|
542
|
+
لإعداده، يمكنك إضافة قسم `compiler` في ملف `intlayer.config.ts` الخاص بك:
|
|
533
543
|
|
|
534
544
|
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
535
545
|
import { type IntlayerConfig } from "intlayer";
|
|
@@ -569,7 +579,7 @@ export default config;
|
|
|
569
579
|
<Tabs>
|
|
570
580
|
<Tab value='Extract command'>
|
|
571
581
|
|
|
572
|
-
|
|
582
|
+
قم بتشغيل المستخرج لتحويل مكوناتك واستخراج المحتوى
|
|
573
583
|
|
|
574
584
|
```bash packageManager="npm"
|
|
575
585
|
npx intlayer extract
|
|
@@ -590,21 +600,7 @@ bun x intlayer extract
|
|
|
590
600
|
</Tab>
|
|
591
601
|
<Tab value='Babel compiler'>
|
|
592
602
|
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
596
|
-
|
|
597
|
-
```ts fileName="vite.config.ts"
|
|
598
|
-
import { defineConfig } from "vite";
|
|
599
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
600
|
-
|
|
601
|
-
export default defineConfig({
|
|
602
|
-
plugins: [
|
|
603
|
-
intlayer(),
|
|
604
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
605
|
-
],
|
|
606
|
-
});
|
|
607
|
-
```
|
|
603
|
+
قم ببناء تطبيقك لتحويل مكوناتك واستخراج المحتوى
|
|
608
604
|
|
|
609
605
|
```bash packageManager="npm"
|
|
610
606
|
npm run build # Or 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 + Preact - الدليل الكامل لترجمة تطبيقك"
|
|
5
5
|
description: "لا مزيد من i18next. دليل 2026 لبناء تطبيق Astro + Preact متعدد اللغات (i18n). ترجم باستخدام وكلاء الذكاء الاصطناعي وحسّن حجم الحزمة وتحسين محركات البحث والأداء."
|
|
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: "تحديث استخدام واجهة برمجة تطبيقات useIntlayer في Solid للوصول المباشر إلى الخصائص"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer preact preact-intlayer @astrojs/preact
|
|
|
150
153
|
الحزمة الأساسية التي توفر أدوات i18n لإدارة التكوين، الترجمات، [تعريف المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_file.md)، التحويل، و[أوامر CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
|
|
156
|
+
يتضمن ملحق تكامل Astro لدمج Intlayer مع [حازم Vite](https://vite.dev/guide/why.html#why-bundle-for-production)، ووسيطاً برمجياً يحدد لغة كل طلب في `Astro.locals.intlayer`، وخطافات `useIntlayer` / `useDictionary` / `useLocale`. يحل نفس مسار الاستيراد إلى تنفيذ الخادم في واجهة `.astro` وإلى تنفيذ العميل (المدعوم بـ `vanilla-intlayer`) في كتل `<script>`.
|
|
154
157
|
|
|
155
158
|
- **preact**
|
|
156
159
|
حزمة Preact الأساسية - بديل سريع وخفيف لـ React.
|
|
@@ -243,30 +246,35 @@ export default appContent;
|
|
|
243
246
|
</Step>
|
|
244
247
|
<Step number={5} title="استخدام المحتوى في Astro">
|
|
245
248
|
|
|
246
|
-
|
|
249
|
+
استخدم قواميسك في ملفات `.astro` باستخدام الخطافات المصدرة بواسطة `astro-intlayer`. تشترك هذه الخطافات في نفس تواقيع روابط إطار العمل: يُرجع `useIntlayer("key")` محتوى القاموس ويُرجع `useLocale()` اللغة الحالية، دون الحاجة إلى تمرير أي وسيطات.
|
|
250
|
+
|
|
251
|
+
تأتي اللغة من الوسيط البرمجي `astro-intlayer`، والذي يسجله التكامل تلقائياً قبل `src/middleware.ts` الخاص بك. يحدد الوسيط اللغة لكل طلب، بدءاً من بادئة عنوان URL، ثم اللغة المحفوظة بواسطة العميل (ملف تعريف الارتباط أو الترويسة)، ثم `Accept-Language`، ويخزنها في `Astro.locals.intlayer`. تستخدم الصفحات المعروضة مسبقاً عنوان URL فقط، حيث يتم عرضها مرة واحدة لكل زائر.
|
|
252
|
+
|
|
253
|
+
يجب عليك أيضاً إضافة بيانات تعريف SEO مثل hreflang والروابط الأساسية (canonical) إلى كل صفحة وتضمين جزيرة Preact للمحتوى التفاعلي من جانب العميل.
|
|
247
254
|
|
|
248
255
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
249
256
|
---
|
|
257
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
250
258
|
import {
|
|
251
|
-
getIntlayer,
|
|
252
|
-
getLocaleFromPath,
|
|
253
259
|
getLocalizedUrl,
|
|
254
|
-
getHTMLTextDir,
|
|
255
260
|
getPrefix,
|
|
256
261
|
localeMap,
|
|
257
262
|
defaultLocale,
|
|
258
|
-
|
|
263
|
+
getHTMLTextDir,
|
|
259
264
|
} from "intlayer";
|
|
260
265
|
import { PreactIsland } from "../../components/preact/PreactIsland";
|
|
261
266
|
|
|
262
267
|
export const getStaticPaths = () => {
|
|
263
|
-
return
|
|
264
|
-
params: { locale
|
|
268
|
+
return defaultLocale.map((locale) => ({
|
|
269
|
+
params: { locale },
|
|
265
270
|
}));
|
|
266
271
|
};
|
|
267
272
|
|
|
268
|
-
|
|
269
|
-
const {
|
|
273
|
+
// اللغة المحددة بواسطة الوسيط البرمجي (مثال: /ar/about -> 'ar')
|
|
274
|
+
const { locale } = useLocale();
|
|
275
|
+
|
|
276
|
+
// محتوى قاموس 'app' لتلك اللغة
|
|
277
|
+
const { title } = useIntlayer("app");
|
|
270
278
|
---
|
|
271
279
|
|
|
272
280
|
<!doctype html>
|
|
@@ -322,6 +330,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
322
330
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
323
331
|
> ```
|
|
324
332
|
|
|
333
|
+
> يعرض `Astro.locals.intlayer` أيضاً `locale` و `defaultLocale` و `availableLocales` للوسطاء البرمجيين ونقاط النهاية الخاصة بك. مرر لغة أو محدداً كوسيط ثانٍ (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) لتجاوز لغة الطلب لاستدعاء واحد.
|
|
334
|
+
|
|
325
335
|
> **ملاحظة حول إعداد التوجيه:**
|
|
326
336
|
> تعتمد بنية الدليل التي تستخدمها على إعداد `middleware.routing` في `intlayer.config.ts`:
|
|
327
337
|
>
|
|
@@ -423,9 +433,9 @@ export const LocaleSwitcher: FunctionalComponent = () => {
|
|
|
423
433
|
|
|
424
434
|
#### خريطة الموقع (Sitemap)
|
|
425
435
|
|
|
426
|
-
Intlayer
|
|
436
|
+
يأتي Intlayer مع مولد خريطة موقع مدمج لمساعدتك في إنشاء خريطة موقع لتطبيقك بسهولة. يتعامل مع المسارات المترجمة ويضيف البيانات الوصفية اللازمة لمحركات البحث.
|
|
427
437
|
|
|
428
|
-
>
|
|
438
|
+
> تدعم خريطة الموقع المُنشأة من قِبل Intlayer مساحة الأسماء `xhtml:link` (Hreflang XML Extensions). على عكس مولدات خرائط الموقع الافتراضية التي تُدرج عناوين URL الخام فقط، ينشئ Intlayer تلقائياً الروابط ثنائية الاتجاه المطلوبة بين جميع إصدارات الصفحة باللغات المختلفة (على سبيل المثال، `/about` و `/about?lang=fr` و `/about?lang=es`). هذا يضمن أن محركات البحث تفهرس بشكل صحيح وتقدم النسخة الصحيحة من اللغة للجمهور المناسب.
|
|
429
439
|
|
|
430
440
|
أنشئ `src/pages/sitemap.xml.ts` لإنشاء خريطة موقع تتضمن جميع مساراتك المترجمة.
|
|
431
441
|
|
|
@@ -438,10 +448,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
438
448
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
439
449
|
];
|
|
440
450
|
|
|
441
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
442
|
-
|
|
443
451
|
export const GET: APIRoute = async ({ site }) => {
|
|
444
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
452
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
453
|
+
siteUrl: "https://example.com",
|
|
454
|
+
});
|
|
445
455
|
|
|
446
456
|
return new Response(xmlOutput, {
|
|
447
457
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -478,13 +488,13 @@ export const GET: APIRoute = ({ site }) => {
|
|
|
478
488
|
```
|
|
479
489
|
|
|
480
490
|
</Step>
|
|
481
|
-
<Step number={15} title="
|
|
491
|
+
<Step number={15} title="استخراج محتوى مكوناتك" isOptional={true}>
|
|
482
492
|
|
|
483
|
-
|
|
493
|
+
إذا كان لديك كود برمجي موجود بالفعل، فقد يستغرق تحويل آلاف الملفات وقتاً طويلاً.
|
|
484
494
|
|
|
485
|
-
|
|
495
|
+
لتسهيل هذه العملية، يقترح Intlayer [مترجمًا](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/compiler.md) / [مستخرجًا](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/extract.md) لتحويل مكوناتك واستخراج المحتوى.
|
|
486
496
|
|
|
487
|
-
|
|
497
|
+
لإعداده، يمكنك إضافة قسم `compiler` في ملف `intlayer.config.ts` الخاص بك:
|
|
488
498
|
|
|
489
499
|
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
490
500
|
import { type IntlayerConfig } from "intlayer";
|
|
@@ -524,7 +534,7 @@ export default config;
|
|
|
524
534
|
<Tabs>
|
|
525
535
|
<Tab value='Extract command'>
|
|
526
536
|
|
|
527
|
-
|
|
537
|
+
قم بتشغيل المستخرج لتحويل مكوناتك واستخراج المحتوى
|
|
528
538
|
|
|
529
539
|
```bash packageManager="npm"
|
|
530
540
|
npx intlayer extract
|
|
@@ -545,21 +555,7 @@ bun x intlayer extract
|
|
|
545
555
|
</Tab>
|
|
546
556
|
<Tab value='Babel compiler'>
|
|
547
557
|
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
551
|
-
|
|
552
|
-
```ts fileName="vite.config.ts"
|
|
553
|
-
import { defineConfig } from "vite";
|
|
554
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
555
|
-
|
|
556
|
-
export default defineConfig({
|
|
557
|
-
plugins: [
|
|
558
|
-
intlayer(),
|
|
559
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
560
|
-
],
|
|
561
|
-
});
|
|
562
|
-
```
|
|
558
|
+
قم ببناء تطبيقك لتحويل مكوناتك واستخراج المحتوى
|
|
563
559
|
|
|
564
560
|
```bash packageManager="npm"
|
|
565
561
|
npm run build # Or npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-03-07
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "تدويل Astro + React - الدليل الكامل لترجمة تطبيقك"
|
|
5
5
|
description: "لا مزيد من i18next. دليل 2026 لبناء تطبيق Astro + React متعدد اللغات (i18n). ترجم باستخدام وكلاء الذكاء الاصطناعي وحسّن حجم الحزمة وتحسين محركات البحث والأداء."
|
|
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: "تحديث استخدام واجهة برمجة تطبيقات useIntlayer في Solid للوصول المباشر إلى الخصائص"
|
|
@@ -153,7 +156,7 @@ bun add intlayer astro-intlayer react react-dom react-intlayer @astrojs/react
|
|
|
153
156
|
الحزمة الأساسية التي توفر أدوات i18n لإدارة التكوين، الترجمات، [تعريف المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_file.md)، التحويل، و[أوامر CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/index.md).
|
|
154
157
|
|
|
155
158
|
- **astro-intlayer**
|
|
156
|
-
|
|
159
|
+
يتضمن ملحق تكامل Astro لدمج Intlayer مع [حازم Vite](https://vite.dev/guide/why.html#why-bundle-for-production)، ووسيطاً برمجياً يحدد لغة كل طلب في `Astro.locals.intlayer`، وخطافات `useIntlayer` / `useDictionary` / `useLocale`. يحل نفس مسار الاستيراد إلى تنفيذ الخادم في واجهة `.astro` وإلى تنفيذ العميل (المدعوم بـ `vanilla-intlayer`) في كتل `<script>`.
|
|
157
160
|
|
|
158
161
|
- **react**, **react-dom**
|
|
159
162
|
حزم React الأساسية المطلوبة لرندر مكونات React في المتصفح.
|
|
@@ -243,30 +246,35 @@ export default appContent;
|
|
|
243
246
|
</Step>
|
|
244
247
|
<Step number={5} title="استخدام المحتوى في Astro">
|
|
245
248
|
|
|
246
|
-
|
|
249
|
+
استخدم قواميسك في ملفات `.astro` باستخدام الخطافات المصدرة بواسطة `astro-intlayer`. تشترك هذه الخطافات في نفس تواقيع روابط إطار العمل: يُرجع `useIntlayer("key")` محتوى القاموس ويُرجع `useLocale()` اللغة الحالية، دون الحاجة إلى تمرير أي وسيطات.
|
|
250
|
+
|
|
251
|
+
تأتي اللغة من الوسيط البرمجي `astro-intlayer`، والذي يسجله التكامل تلقائياً قبل `src/middleware.ts` الخاص بك. يحدد الوسيط اللغة لكل طلب، بدءاً من بادئة عنوان URL، ثم اللغة المحفوظة بواسطة العميل (ملف تعريف الارتباط أو الترويسة)، ثم `Accept-Language`، ويخزنها في `Astro.locals.intlayer`. تستخدم الصفحات المعروضة مسبقاً عنوان URL فقط، حيث يتم عرضها مرة واحدة لكل زائر.
|
|
252
|
+
|
|
253
|
+
يجب عليك أيضاً إضافة بيانات تعريف SEO مثل hreflang والروابط الأساسية (canonical) إلى كل صفحة وتضمين جزيرة React للمحتوى التفاعلي من جانب العميل.
|
|
247
254
|
|
|
248
255
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
249
256
|
---
|
|
257
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
250
258
|
import {
|
|
251
|
-
getIntlayer,
|
|
252
|
-
getLocaleFromPath,
|
|
253
259
|
getLocalizedUrl,
|
|
254
|
-
getHTMLTextDir,
|
|
255
260
|
getPrefix,
|
|
256
261
|
localeMap,
|
|
257
262
|
defaultLocale,
|
|
258
|
-
|
|
263
|
+
getHTMLTextDir,
|
|
259
264
|
} from "intlayer";
|
|
260
265
|
import { ReactIsland } from "../../components/react/ReactIsland";
|
|
261
266
|
|
|
262
267
|
export const getStaticPaths = () => {
|
|
263
|
-
return
|
|
264
|
-
params: { locale
|
|
268
|
+
return defaultLocale.map((locale) => ({
|
|
269
|
+
params: { locale },
|
|
265
270
|
}));
|
|
266
271
|
};
|
|
267
272
|
|
|
268
|
-
|
|
269
|
-
const {
|
|
273
|
+
// اللغة المحددة بواسطة الوسيط البرمجي (مثال: /ar/about -> 'ar')
|
|
274
|
+
const { locale } = useLocale();
|
|
275
|
+
|
|
276
|
+
// محتوى قاموس 'app' لتلك اللغة
|
|
277
|
+
const { title } = useIntlayer("app");
|
|
270
278
|
---
|
|
271
279
|
|
|
272
280
|
<!doctype html>
|
|
@@ -322,6 +330,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
322
330
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
323
331
|
> ```
|
|
324
332
|
|
|
333
|
+
> يعرض `Astro.locals.intlayer` أيضاً `locale` و `defaultLocale` و `availableLocales` للوسطاء البرمجيين ونقاط النهاية الخاصة بك. مرر لغة أو محدداً كوسيط ثانٍ (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) لتجاوز لغة الطلب لاستدعاء واحد.
|
|
334
|
+
|
|
325
335
|
> **ملاحظة حول إعداد التوجيه:**
|
|
326
336
|
> تعتمد بنية الدليل التي تستخدمها على إعداد `middleware.routing` في `intlayer.config.ts`:
|
|
327
337
|
>
|
|
@@ -419,9 +429,9 @@ export function LocaleSwitcher() {
|
|
|
419
429
|
|
|
420
430
|
#### خريطة الموقع (Sitemap)
|
|
421
431
|
|
|
422
|
-
Intlayer
|
|
432
|
+
يأتي Intlayer مع مولد خريطة موقع مدمج لمساعدتك في إنشاء خريطة موقع لتطبيقك بسهولة. يتعامل مع المسارات المترجمة ويضيف البيانات الوصفية اللازمة لمحركات البحث.
|
|
423
433
|
|
|
424
|
-
>
|
|
434
|
+
> تدعم خريطة الموقع المُنشأة من قِبل Intlayer مساحة الأسماء `xhtml:link` (Hreflang XML Extensions). على عكس مولدات خرائط الموقع الافتراضية التي تُدرج عناوين URL الخام فقط، ينشئ Intlayer تلقائياً الروابط ثنائية الاتجاه المطلوبة بين جميع إصدارات الصفحة باللغات المختلفة (على سبيل المثال، `/about` و `/about?lang=fr` و `/about?lang=es`). هذا يضمن أن محركات البحث تفهرس بشكل صحيح وتقدم النسخة الصحيحة من اللغة للجمهور المناسب.
|
|
425
435
|
|
|
426
436
|
أنشئ `src/pages/sitemap.xml.ts` لإنشاء خريطة موقع تتضمن جميع مساراتك المترجمة.
|
|
427
437
|
|
|
@@ -434,10 +444,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
434
444
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
435
445
|
];
|
|
436
446
|
|
|
437
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
438
|
-
|
|
439
447
|
export const GET: APIRoute = async ({ site }) => {
|
|
440
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
448
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
449
|
+
siteUrl: "https://example.com",
|
|
450
|
+
});
|
|
441
451
|
|
|
442
452
|
return new Response(xmlOutput, {
|
|
443
453
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -474,13 +484,13 @@ export const GET: APIRoute = ({ site }) => {
|
|
|
474
484
|
```
|
|
475
485
|
|
|
476
486
|
</Step>
|
|
477
|
-
<Step number={15} title="
|
|
487
|
+
<Step number={15} title="استخراج محتوى مكوناتك" isOptional={true}>
|
|
478
488
|
|
|
479
|
-
|
|
489
|
+
إذا كان لديك كود برمجي موجود بالفعل، فقد يستغرق تحويل آلاف الملفات وقتاً طويلاً.
|
|
480
490
|
|
|
481
|
-
|
|
491
|
+
لتسهيل هذه العملية، يقترح Intlayer [مترجمًا](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/compiler.md) / [مستخرجًا](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/extract.md) لتحويل مكوناتك واستخراج المحتوى.
|
|
482
492
|
|
|
483
|
-
|
|
493
|
+
لإعداده، يمكنك إضافة قسم `compiler` في ملف `intlayer.config.ts` الخاص بك:
|
|
484
494
|
|
|
485
495
|
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
486
496
|
import { type IntlayerConfig } from "intlayer";
|
|
@@ -520,7 +530,7 @@ export default config;
|
|
|
520
530
|
<Tabs>
|
|
521
531
|
<Tab value='Extract command'>
|
|
522
532
|
|
|
523
|
-
|
|
533
|
+
قم بتشغيل المستخرج لتحويل مكوناتك واستخراج المحتوى
|
|
524
534
|
|
|
525
535
|
```bash packageManager="npm"
|
|
526
536
|
npx intlayer extract
|
|
@@ -541,21 +551,7 @@ bun x intlayer extract
|
|
|
541
551
|
</Tab>
|
|
542
552
|
<Tab value='Babel compiler'>
|
|
543
553
|
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
Update your `vite.config.ts` to include the `intlayerCompiler` plugin:
|
|
547
|
-
|
|
548
|
-
```ts fileName="vite.config.ts"
|
|
549
|
-
import { defineConfig } from "vite";
|
|
550
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
551
|
-
|
|
552
|
-
export default defineConfig({
|
|
553
|
-
plugins: [
|
|
554
|
-
intlayer(),
|
|
555
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
556
|
-
],
|
|
557
|
-
});
|
|
558
|
-
```
|
|
554
|
+
قم ببناء تطبيقك لتحويل مكوناتك واستخراج المحتوى
|
|
559
555
|
|
|
560
556
|
```bash packageManager="npm"
|
|
561
557
|
npm run build # Or npm run dev
|