@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: 2024-03-07
|
|
3
|
-
updatedAt: 2026-09-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro i18n - Panduan lengkap menerjemahkan aplikasi Anda"
|
|
5
5
|
description: "Tidak ada lagi i18next. Panduan 2026 untuk membangun aplikasi Astro multibahasa (i18n). Terjemahkan dengan agen AI dan optimalkan ukuran bundle, SEO, dan performa."
|
|
6
6
|
keywords:
|
|
@@ -401,7 +401,7 @@ const pathWithoutLocale = getPathWithoutLocale(Astro.url.pathname);
|
|
|
401
401
|
```
|
|
402
402
|
|
|
403
403
|
> **Catatan tentang Persistensi:**
|
|
404
|
-
> `setLocale` dari `useLocale` sisi klien menyimpan preferensi bahasa pengguna dalam cookie.
|
|
404
|
+
> `setLocale` dari `useLocale` sisi klien menyimpan preferensi bahasa pengguna dalam cookie. Ini memungkinkan Intlayer untuk mengingat pilihan dan secara otomatis mengarahkan pengguna ke bahasa pilihan mereka pada kunjungan berikutnya: halaman yang dirender sesuai permintaan (adaptor dengan `output: 'server'` atau `prerender = false`) dialihkan oleh middleware Intlayer sebelum HTML apa pun dikirim, sementara halaman yang dirender sebelumnya, yang disajikan sebagai file statis, dialihkan oleh skrip kecil yang disuntikkan integrasi di setiap halaman. Atur `routing.enableProxy` ke `false` untuk mematikan keduanya. Di `astro dev`, cookie diabaikan sebagai sumber pengalihan kecuali `routing.enableProxy` disetel ke `true`, sehingga cookie basi tidak dapat membajak halaman yang sedang Anda kerjakan.
|
|
405
405
|
>
|
|
406
406
|
> **Kompatibilitas Server / Klien:**
|
|
407
407
|
> `astro-intlayer` menyelesaikan ke hook server di frontmatter (membaca `Astro.locals`) dan ke hook klien `vanilla-intlayer` di blok `<script>` dan pulau (islands), dengan nama dan bentuk konten yang sama. `setLocale` dan `onChange` hanya bertindak di klien, panggil `installIntlayer()` sekali di sana untuk menginisialisasi penyimpanan klien. `astro-intlayer/client` mengekspos entri klien secara eksplisit.
|
|
@@ -428,10 +428,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
428
428
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
429
429
|
];
|
|
430
430
|
|
|
431
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
432
|
-
|
|
433
431
|
export const GET: APIRoute = async ({ site }) => {
|
|
434
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
432
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
433
|
+
siteUrl: "https://example.com",
|
|
434
|
+
});
|
|
435
435
|
|
|
436
436
|
return new Response(xmlOutput, {
|
|
437
437
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -472,11 +472,12 @@ export const GET: APIRoute = ({ site }) => {
|
|
|
472
472
|
|
|
473
473
|
Lanjutkan membangun aplikasi Anda menggunakan framework pilihan Anda.
|
|
474
474
|
|
|
475
|
-
- Intlayer + React: [Intlayer dengan React](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/
|
|
476
|
-
- Intlayer + Vue: [Intlayer dengan Vue](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/
|
|
477
|
-
- Intlayer + Svelte: [Intlayer dengan Svelte](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/
|
|
478
|
-
- Intlayer + Solid: [Intlayer dengan Solid](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/
|
|
479
|
-
- Intlayer + Preact: [Intlayer dengan Preact](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/
|
|
475
|
+
- Intlayer + React: [Intlayer dengan React](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_with_astro_react.md)
|
|
476
|
+
- Intlayer + Vue: [Intlayer dengan Vue](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_with_astro_vue.md)
|
|
477
|
+
- Intlayer + Svelte: [Intlayer dengan Svelte](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_with_astro_svelte.md)
|
|
478
|
+
- Intlayer + Solid: [Intlayer dengan Solid](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_with_astro_solid.md)
|
|
479
|
+
- Intlayer + Preact: [Intlayer dengan Preact](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_with_astro_preact.md)
|
|
480
|
+
- Intlayer + Lit: [Intlayer dengan Lit](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_with_astro_lit.md)
|
|
480
481
|
</Step>
|
|
481
482
|
|
|
482
483
|
<Step number={15} title="Ekstrak konten komponen Anda" isOptional={true}>
|
|
@@ -542,21 +543,7 @@ bun x intlayer extract
|
|
|
542
543
|
</Tab>
|
|
543
544
|
<Tab value='Compiler Babel'>
|
|
544
545
|
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
|
|
548
|
-
|
|
549
|
-
```ts fileName="vite.config.ts"
|
|
550
|
-
import { defineConfig } from "vite";
|
|
551
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
552
|
-
|
|
553
|
-
export default defineConfig({
|
|
554
|
-
plugins: [
|
|
555
|
-
intlayer(),
|
|
556
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
557
|
-
],
|
|
558
|
-
});
|
|
559
|
-
```
|
|
546
|
+
Build aplikasi Anda untuk mentransformasi komponen Anda dan mengekstrak konten
|
|
560
547
|
|
|
561
548
|
```bash packageManager="npm"
|
|
562
549
|
npm run build # Atau 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 + Lit i18n - Panduan lengkap menerjemahkan aplikasi Anda"
|
|
5
5
|
description: "Tidak ada lagi i18next. Panduan 2026 untuk membangun aplikasi Astro + Lit multibahasa (i18n). Terjemahkan dengan agen AI dan optimalkan ukuran bundle, SEO, dan performa."
|
|
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: "Penggunaan hook useIntlayer / useLocale dari astro-intlayer di halaman Astro"
|
|
23
26
|
- version: 8.9.0
|
|
24
27
|
date: 2026-05-04
|
|
25
28
|
changes: "Perbarui penggunaan API useIntlayer Solid ke akses properti langsung"
|
|
@@ -151,7 +154,7 @@ bun add intlayer astro-intlayer lit lit-intlayer @astrojs/lit
|
|
|
151
154
|
Paket inti yang menyediakan alat i18n untuk manajemen konfigurasi, terjemahan, [deklarasi konten](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/dictionary/content_file.md), transpilasyon, dan [perintah CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/index.md).
|
|
152
155
|
|
|
153
156
|
- **astro-intlayer**
|
|
154
|
-
|
|
157
|
+
Menyertakan plugin integrasi Astro untuk mengintegrasikan Intlayer dengan [bundler Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware yang menyelesaikan lokal setiap permintaan ke dalam `Astro.locals.intlayer`, dan hook `useIntlayer` / `useDictionary` / `useLocale`. Jalur impor yang sama menyelesaikan ke implementasi server di frontmatter `.astro` Anda dan ke implementasi klien (didukung oleh `vanilla-intlayer`) di blok `<script>`.
|
|
155
158
|
|
|
156
159
|
- **lit**
|
|
157
160
|
Paket inti Lit untuk membangun Web Components yang cepat dan ringan.
|
|
@@ -246,19 +249,21 @@ export default litDemoContent;
|
|
|
246
249
|
</Step>
|
|
247
250
|
<Step number={5} title="Menggunakan Konten di Astro">
|
|
248
251
|
|
|
249
|
-
|
|
252
|
+
Gunakan kamus Anda dalam file `.astro` dengan hook yang diekspor oleh `astro-intlayer`. Mereka memiliki tanda tangan yang sama dengan `react-intlayer`: `useIntlayer("key")` mengembalikan konten kamus dan `useLocale()` mengembalikan lokal saat ini, tanpa argumen yang perlu diteruskan.
|
|
253
|
+
|
|
254
|
+
Lokal berasal dari middleware `astro-intlayer`, yang didaftarkan oleh integrasi sebelum `src/middleware.ts` Anda sendiri. Ini menyelesaikannya untuk setiap permintaan, dari awalan URL, kemudian lokal yang disimpan oleh klien (cookie atau header), lalu `Accept-Language`, dan menyimpannya di `Astro.locals.intlayer`. Halaman yang dirender sebelumnya hanya menggunakan URL, karena halaman tersebut dirender sekali untuk setiap pengunjung.
|
|
255
|
+
|
|
256
|
+
Elemen kustom Lit diimpor melalui blok `<script>` sisi klien dan ditempatkan di 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 = () => {
|
|
@@ -267,8 +272,11 @@ export const getStaticPaths = () => {
|
|
|
267
272
|
}));
|
|
268
273
|
};
|
|
269
274
|
|
|
270
|
-
|
|
271
|
-
const {
|
|
275
|
+
// Lokal diselesaikan oleh middleware (mis. /id/about -> 'id')
|
|
276
|
+
const { locale } = useLocale();
|
|
277
|
+
|
|
278
|
+
// Konten kamus 'lit-demo' untuk lokal tersebut
|
|
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` juga mengekspos `locale`, `defaultLocale`, dan `availableLocales` ke middleware dan endpoint Anda sendiri. Teruskan lokal atau pemilih sebagai argumen kedua (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) untuk mengganti lokal permintaan untuk satu panggilan.
|
|
339
|
+
|
|
330
340
|
> **Catatan tentang Penyiapan Perutean:**
|
|
331
341
|
> Struktur direktori yang Anda gunakan bergantung pada pengaturan `middleware.routing` di `intlayer.config.ts`:
|
|
332
342
|
>
|
|
@@ -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" },
|
|
@@ -586,21 +596,7 @@ bun x intlayer extract
|
|
|
586
596
|
</Tab>
|
|
587
597
|
<Tab value='Compiler Babel'>
|
|
588
598
|
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
|
|
592
|
-
|
|
593
|
-
```ts fileName="vite.config.ts"
|
|
594
|
-
import { defineConfig } from "vite";
|
|
595
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
596
|
-
|
|
597
|
-
export default defineConfig({
|
|
598
|
-
plugins: [
|
|
599
|
-
intlayer(),
|
|
600
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
601
|
-
],
|
|
602
|
-
});
|
|
603
|
-
```
|
|
599
|
+
Build aplikasi Anda untuk mentransformasi komponen Anda dan mengekstrak konten
|
|
604
600
|
|
|
605
601
|
```bash packageManager="npm"
|
|
606
602
|
npm run build # Atau 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 i18n - Panduan lengkap menerjemahkan aplikasi Anda"
|
|
5
5
|
description: "Tidak ada lagi i18next. Panduan 2026 untuk membangun aplikasi Astro + Preact multibahasa (i18n). Terjemahkan dengan agen AI dan optimalkan ukuran bundle, SEO, dan performa."
|
|
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: "Penggunaan hook useIntlayer / useLocale dari astro-intlayer di halaman Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Perbarui penggunaan API useIntlayer Solid ke akses properti langsung"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer preact preact-intlayer @astrojs/preact
|
|
|
150
153
|
Paket inti yang menyediakan alat i18n untuk manajemen konfigurasi, terjemahan, [deklarasi konten](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/dictionary/content_file.md), transpilasyon, dan [perintah CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
|
|
156
|
+
Menyertakan plugin integrasi Astro untuk mengintegrasikan Intlayer dengan [bundler Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware yang menyelesaikan lokal setiap permintaan ke dalam `Astro.locals.intlayer`, dan hook `useIntlayer` / `useDictionary` / `useLocale`. Jalur impor yang sama menyelesaikan ke implementasi server di frontmatter `.astro` Anda dan ke implementasi klien (didukung oleh `vanilla-intlayer`) di blok `<script>`.
|
|
154
157
|
|
|
155
158
|
- **preact**
|
|
156
159
|
Paket inti Preact - alternatif yang cepat dan ringan untuk React.
|
|
@@ -243,19 +246,21 @@ export default appContent;
|
|
|
243
246
|
</Step>
|
|
244
247
|
<Step number={5} title="Menggunakan Konten di Astro">
|
|
245
248
|
|
|
246
|
-
|
|
249
|
+
Gunakan kamus Anda dalam file `.astro` dengan hook yang diekspor oleh `astro-intlayer`. Mereka memiliki tanda tangan yang sama dengan `react-intlayer`: `useIntlayer("key")` mengembalikan konten kamus dan `useLocale()` mengembalikan lokal saat ini, tanpa argumen yang perlu diteruskan.
|
|
250
|
+
|
|
251
|
+
Lokal berasal dari middleware `astro-intlayer`, yang didaftarkan oleh integrasi sebelum `src/middleware.ts` Anda sendiri. Ini menyelesaikannya untuk setiap permintaan, dari awalan URL, kemudian lokal yang disimpan oleh klien (cookie atau header), lalu `Accept-Language`, dan menyimpannya di `Astro.locals.intlayer`. Halaman yang dirender sebelumnya hanya menggunakan URL, karena halaman tersebut dirender sekali untuk setiap pengunjung.
|
|
252
|
+
|
|
253
|
+
Anda juga harus menambahkan metadata SEO (seperti hreflang dan tautan kanonikal) di setiap halaman dan memperkenalkan island Preact untuk konten interaktif di sisi klien.
|
|
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/ReactIsland";
|
|
261
266
|
|
|
@@ -265,8 +270,11 @@ export const getStaticPaths = () => {
|
|
|
265
270
|
}));
|
|
266
271
|
};
|
|
267
272
|
|
|
268
|
-
|
|
269
|
-
const {
|
|
273
|
+
// Lokal diselesaikan oleh middleware (mis. /id/about -> 'id')
|
|
274
|
+
const { locale } = useLocale();
|
|
275
|
+
|
|
276
|
+
// Konten kamus 'app' untuk lokal tersebut
|
|
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` juga mengekspos `locale`, `defaultLocale`, dan `availableLocales` ke middleware dan endpoint Anda sendiri. Teruskan lokal atau pemilih sebagai argumen kedua (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) untuk mengganti lokal permintaan untuk satu panggilan.
|
|
334
|
+
|
|
325
335
|
> **Catatan tentang Penyiapan Perutean:**
|
|
326
336
|
> Struktur direktori yang Anda gunakan bergantung pada pengaturan `middleware.routing` di `intlayer.config.ts`:
|
|
327
337
|
>
|
|
@@ -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" },
|
|
@@ -541,21 +551,7 @@ bun x intlayer extract
|
|
|
541
551
|
</Tab>
|
|
542
552
|
<Tab value='Compiler Babel'>
|
|
543
553
|
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
|
|
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
|
+
Build aplikasi Anda untuk mentransformasi komponen Anda dan mengekstrak konten
|
|
559
555
|
|
|
560
556
|
```bash packageManager="npm"
|
|
561
557
|
npm run build # Atau 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 i18n - Panduan lengkap menerjemahkan aplikasi Anda"
|
|
5
5
|
description: "Tidak ada lagi i18next. Panduan 2026 untuk membangun aplikasi Astro + React multibahasa (i18n). Terjemahkan dengan agen AI dan optimalkan ukuran bundle, SEO, dan performa."
|
|
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: "Penggunaan hook useIntlayer / useLocale dari astro-intlayer di halaman Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Perbarui penggunaan API useIntlayer Solid ke akses properti langsung"
|
|
@@ -153,7 +156,7 @@ bun add intlayer astro-intlayer react react-dom react-intlayer @astrojs/react
|
|
|
153
156
|
Paket inti yang menyediakan alat i18n untuk manajemen konfigurasi, terjemahan, [deklarasi konten](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/dictionary/content_file.md), transpilasyon, dan [perintah CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/index.md).
|
|
154
157
|
|
|
155
158
|
- **astro-intlayer**
|
|
156
|
-
|
|
159
|
+
Menyertakan plugin integrasi Astro untuk mengintegrasikan Intlayer dengan [bundler Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware yang menyelesaikan lokal setiap permintaan ke dalam `Astro.locals.intlayer`, dan hook `useIntlayer` / `useDictionary` / `useLocale`. Jalur impor yang sama menyelesaikan ke implementasi server di frontmatter `.astro` Anda dan ke implementasi klien (didukung oleh `vanilla-intlayer`) di blok `<script>`.
|
|
157
160
|
|
|
158
161
|
- **react**, **react-dom**
|
|
159
162
|
Paket inti React yang digunakan untuk merender komponen React di browser.
|
|
@@ -243,19 +246,21 @@ export default appContent;
|
|
|
243
246
|
</Step>
|
|
244
247
|
<Step number={5} title="Menggunakan Konten di Astro">
|
|
245
248
|
|
|
246
|
-
|
|
249
|
+
Gunakan kamus Anda dalam file `.astro` dengan hook yang diekspor oleh `astro-intlayer`. Mereka memiliki tanda tangan yang sama dengan `react-intlayer`: `useIntlayer("key")` mengembalikan konten kamus dan `useLocale()` mengembalikan lokal saat ini, tanpa argumen yang perlu diteruskan.
|
|
250
|
+
|
|
251
|
+
Lokal berasal dari middleware `astro-intlayer`, yang didaftarkan oleh integrasi sebelum `src/middleware.ts` Anda sendiri. Ini menyelesaikannya untuk setiap permintaan, dari awalan URL, kemudian lokal yang disimpan oleh klien (cookie atau header), lalu `Accept-Language`, dan menyimpannya di `Astro.locals.intlayer`. Halaman yang dirender sebelumnya hanya menggunakan URL, karena halaman tersebut dirender sekali untuk setiap pengunjung.
|
|
252
|
+
|
|
253
|
+
Anda juga harus menambahkan metadata SEO (seperti hreflang dan tautan kanonikal) di setiap halaman dan memperkenalkan island React untuk konten interaktif di sisi klien.
|
|
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
|
|
|
@@ -265,8 +270,11 @@ export const getStaticPaths = () => {
|
|
|
265
270
|
}));
|
|
266
271
|
};
|
|
267
272
|
|
|
268
|
-
|
|
269
|
-
const {
|
|
273
|
+
// Lokal diselesaikan oleh middleware (mis. /id/about -> 'id')
|
|
274
|
+
const { locale } = useLocale();
|
|
275
|
+
|
|
276
|
+
// Konten kamus 'app' untuk lokal tersebut
|
|
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` juga mengekspos `locale`, `defaultLocale`, dan `availableLocales` ke middleware dan endpoint Anda sendiri. Teruskan lokal atau pemilih sebagai argumen kedua (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) untuk mengganti lokal permintaan untuk satu panggilan.
|
|
334
|
+
|
|
325
335
|
> **Catatan tentang Penyiapan Perutean:**
|
|
326
336
|
> Struktur direktori yang Anda gunakan bergantung pada pengaturan `middleware.routing` di `intlayer.config.ts`:
|
|
327
337
|
>
|
|
@@ -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" },
|
|
@@ -537,21 +547,7 @@ bun x intlayer extract
|
|
|
537
547
|
</Tab>
|
|
538
548
|
<Tab value='Compiler Babel'>
|
|
539
549
|
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
|
|
543
|
-
|
|
544
|
-
```ts fileName="vite.config.ts"
|
|
545
|
-
import { defineConfig } from "vite";
|
|
546
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
547
|
-
|
|
548
|
-
export default defineConfig({
|
|
549
|
-
plugins: [
|
|
550
|
-
intlayer(),
|
|
551
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
552
|
-
],
|
|
553
|
-
});
|
|
554
|
-
```
|
|
550
|
+
Build aplikasi Anda untuk mentransformasi komponen Anda dan mengekstrak konten
|
|
555
551
|
|
|
556
552
|
```bash packageManager="npm"
|
|
557
553
|
npm run build # Atau 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 + Solid i18n - Panduan lengkap menerjemahkan aplikasi Anda"
|
|
5
5
|
description: "Tidak ada lagi i18next. Panduan 2026 untuk membangun aplikasi Astro + Solid multibahasa (i18n). Terjemahkan dengan agen AI dan optimalkan ukuran bundle, SEO, dan performa."
|
|
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: "Penggunaan hook useIntlayer / useLocale dari astro-intlayer di halaman Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Perbarui penggunaan API useIntlayer Solid ke akses properti langsung"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer solid-js solid-intlayer @astrojs/solid-js
|
|
|
150
153
|
Paket inti yang menyediakan alat i18n untuk manajemen konfigurasi, terjemahan, [deklarasi konten](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/dictionary/content_file.md), transpilasi, dan [perintah CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
|
|
156
|
+
Menyertakan plugin integrasi Astro untuk mengintegrasikan Intlayer dengan [bundler Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware yang menyelesaikan lokal setiap permintaan ke dalam `Astro.locals.intlayer`, dan hook `useIntlayer` / `useDictionary` / `useLocale`. Jalur impor yang sama menyelesaikan ke implementasi server di frontmatter `.astro` Anda dan ke implementasi klien (didukung oleh `vanilla-intlayer`) di blok `<script>`.
|
|
154
157
|
|
|
155
158
|
- **solid-js**
|
|
156
159
|
Paket inti Solid.
|
|
@@ -239,19 +242,21 @@ export default appContent;
|
|
|
239
242
|
</Step>
|
|
240
243
|
<Step number={5} title="Menggunakan Konten di Astro">
|
|
241
244
|
|
|
242
|
-
|
|
245
|
+
Gunakan kamus Anda dalam file `.astro` dengan hook yang diekspor oleh `astro-intlayer`. Mereka memiliki tanda tangan yang sama dengan `react-intlayer`: `useIntlayer("key")` mengembalikan konten kamus dan `useLocale()` mengembalikan lokal saat ini, tanpa argumen yang perlu diteruskan.
|
|
246
|
+
|
|
247
|
+
Lokal berasal dari middleware `astro-intlayer`, yang didaftarkan oleh integrasi sebelum `src/middleware.ts` Anda sendiri. Ini menyelesaikannya untuk setiap permintaan, dari awalan URL, kemudian lokal yang disimpan oleh klien (cookie atau header), lalu `Accept-Language`, dan menyimpannya di `Astro.locals.intlayer`. Halaman yang dirender sebelumnya hanya menggunakan URL, karena halaman tersebut dirender sekali untuk setiap pengunjung.
|
|
248
|
+
|
|
249
|
+
Anda juga harus menambahkan metadata SEO (seperti hreflang dan tautan kanonikal) di setiap halaman dan memperkenalkan island Solid untuk konten interaktif di sisi klien.
|
|
243
250
|
|
|
244
251
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
245
252
|
---
|
|
253
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
246
254
|
import {
|
|
247
|
-
getIntlayer,
|
|
248
|
-
getLocaleFromPath,
|
|
249
255
|
getLocalizedUrl,
|
|
250
|
-
getHTMLTextDir,
|
|
251
256
|
getPrefix,
|
|
252
257
|
localeMap,
|
|
253
258
|
defaultLocale,
|
|
254
|
-
|
|
259
|
+
getHTMLTextDir,
|
|
255
260
|
} from "intlayer";
|
|
256
261
|
import { SolidIsland } from "../../components/solid/SolidIsland";
|
|
257
262
|
|
|
@@ -261,8 +266,11 @@ export const getStaticPaths = () => {
|
|
|
261
266
|
}));
|
|
262
267
|
};
|
|
263
268
|
|
|
264
|
-
|
|
265
|
-
const {
|
|
269
|
+
// Lokal diselesaikan oleh middleware (mis. /id/about -> 'id')
|
|
270
|
+
const { locale } = useLocale();
|
|
271
|
+
|
|
272
|
+
// Konten kamus 'app' untuk lokal tersebut
|
|
273
|
+
const { title } = useIntlayer("app");
|
|
266
274
|
---
|
|
267
275
|
|
|
268
276
|
<!doctype html>
|
|
@@ -318,6 +326,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
318
326
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
319
327
|
> ```
|
|
320
328
|
|
|
329
|
+
> `Astro.locals.intlayer` juga mengekspos `locale`, `defaultLocale`, dan `availableLocales` ke middleware dan endpoint Anda sendiri. Teruskan lokal atau pemilih sebagai argumen kedua (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) untuk mengganti lokal permintaan untuk satu panggilan.
|
|
330
|
+
|
|
321
331
|
> **Catatan tentang Penyiapan Perutean:**
|
|
322
332
|
> Struktur direktori yang Anda gunakan bergantung pada pengaturan `middleware.routing` di `intlayer.config.ts`:
|
|
323
333
|
>
|
|
@@ -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" },
|
|
@@ -537,21 +547,7 @@ bun x intlayer extract
|
|
|
537
547
|
</Tab>
|
|
538
548
|
<Tab value='Compiler Babel'>
|
|
539
549
|
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
|
|
543
|
-
|
|
544
|
-
```ts fileName="vite.config.ts"
|
|
545
|
-
import { defineConfig } from "vite";
|
|
546
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
547
|
-
|
|
548
|
-
export default defineConfig({
|
|
549
|
-
plugins: [
|
|
550
|
-
intlayer(),
|
|
551
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
552
|
-
],
|
|
553
|
-
});
|
|
554
|
-
```
|
|
550
|
+
Build aplikasi Anda untuk mentransformasi komponen Anda dan mengekstrak konten
|
|
555
551
|
|
|
556
552
|
```bash packageManager="npm"
|
|
557
553
|
npm run build # Atau 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 - Panduan lengkap menerjemahkan aplikasi Anda"
|
|
5
5
|
description: "Tidak ada lagi i18next. Panduan 2026 untuk membangun aplikasi Astro + Svelte multibahasa (i18n). Terjemahkan dengan agen AI dan optimalkan ukuran bundle, SEO, dan performa."
|
|
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: "Penggunaan hook useIntlayer / useLocale dari astro-intlayer di halaman Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Perbarui penggunaan API useIntlayer Solid ke akses properti langsung"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer svelte svelte-intlayer @astrojs/svelte
|
|
|
150
153
|
Paket inti yang menyediakan alat i18n untuk manajemen konfigurasi, terjemahan, [deklarasi konten](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/dictionary/content_file.md), transpilasi, dan [perintah CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
|
|
156
|
+
Menyertakan plugin integrasi Astro untuk mengintegrasikan Intlayer dengan [bundler Vite](https://vite.dev/guide/why.html#why-bundle-for-production), middleware yang menyelesaikan lokal setiap permintaan ke dalam `Astro.locals.intlayer`, dan hook `useIntlayer` / `useDictionary` / `useLocale`. Jalur impor yang sama menyelesaikan ke implementasi server di frontmatter `.astro` Anda dan ke implementasi klien (didukung oleh `vanilla-intlayer`) di blok `<script>`.
|
|
154
157
|
|
|
155
158
|
- **svelte**
|
|
156
159
|
Paket inti Svelte.
|
|
@@ -239,19 +242,21 @@ export default appContent;
|
|
|
239
242
|
</Step>
|
|
240
243
|
<Step number={5} title="Menggunakan Konten di Astro">
|
|
241
244
|
|
|
242
|
-
|
|
245
|
+
Gunakan kamus Anda dalam file `.astro` dengan hook yang diekspor oleh `astro-intlayer`. Mereka memiliki tanda tangan yang sama dengan `react-intlayer`: `useIntlayer("key")` mengembalikan konten kamus dan `useLocale()` mengembalikan lokal saat ini, tanpa argumen yang perlu diteruskan.
|
|
246
|
+
|
|
247
|
+
Lokal berasal dari middleware `astro-intlayer`, yang didaftarkan oleh integrasi sebelum `src/middleware.ts` Anda sendiri. Ini menyelesaikannya untuk setiap permintaan, dari awalan URL, kemudian lokal yang disimpan oleh klien (cookie atau header), lalu `Accept-Language`, dan menyimpannya di `Astro.locals.intlayer`. Halaman yang dirender sebelumnya hanya menggunakan URL, karena halaman tersebut dirender sekali untuk setiap pengunjung.
|
|
248
|
+
|
|
249
|
+
Anda juga harus menambahkan metadata SEO (seperti hreflang dan tautan kanonikal) di setiap halaman dan memperkenalkan island Svelte untuk konten interaktif di sisi klien.
|
|
243
250
|
|
|
244
251
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
245
252
|
---
|
|
253
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
246
254
|
import {
|
|
247
|
-
getIntlayer,
|
|
248
|
-
getLocaleFromPath,
|
|
249
255
|
getLocalizedUrl,
|
|
250
|
-
getHTMLTextDir,
|
|
251
256
|
getPrefix,
|
|
252
257
|
localeMap,
|
|
253
258
|
defaultLocale,
|
|
254
|
-
|
|
259
|
+
getHTMLTextDir,
|
|
255
260
|
} from "intlayer";
|
|
256
261
|
import SvelteIsland from "../../components/svelte/SvelteIsland.svelte";
|
|
257
262
|
|
|
@@ -261,8 +266,11 @@ export const getStaticPaths = () => {
|
|
|
261
266
|
}));
|
|
262
267
|
};
|
|
263
268
|
|
|
264
|
-
|
|
265
|
-
const {
|
|
269
|
+
// Lokal diselesaikan oleh middleware (mis. /id/about -> 'id')
|
|
270
|
+
const { locale } = useLocale();
|
|
271
|
+
|
|
272
|
+
// Konten kamus 'app' untuk lokal tersebut
|
|
273
|
+
const { title } = useIntlayer("app");
|
|
266
274
|
---
|
|
267
275
|
|
|
268
276
|
<!doctype html>
|
|
@@ -318,6 +326,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
318
326
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
319
327
|
> ```
|
|
320
328
|
|
|
329
|
+
> `Astro.locals.intlayer` juga mengekspos `locale`, `defaultLocale`, dan `availableLocales` ke middleware dan endpoint Anda sendiri. Teruskan lokal atau pemilih sebagai argumen kedua (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) untuk mengganti lokal permintaan untuk satu panggilan.
|
|
330
|
+
|
|
321
331
|
> **Catatan tentang Penyiapan Perutean:**
|
|
322
332
|
> Struktur direktori yang Anda gunakan bergantung pada pengaturan `middleware.routing` di `intlayer.config.ts`:
|
|
323
333
|
>
|
|
@@ -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" },
|
|
@@ -541,21 +551,7 @@ bun x intlayer extract
|
|
|
541
551
|
</Tab>
|
|
542
552
|
<Tab value='Compiler Babel'>
|
|
543
553
|
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
|
|
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
|
+
Build aplikasi Anda untuk mentransformasi komponen Anda dan mengekstrak konten
|
|
559
555
|
|
|
560
556
|
```bash packageManager="npm"
|
|
561
557
|
npm run build # Atau npm run dev
|