@intlayer/docs 8.3.0-canary.4 → 8.3.1

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.
Files changed (240) hide show
  1. package/docs/ar/compiler.md +84 -49
  2. package/docs/ar/configuration.md +80 -37
  3. package/docs/ar/intlayer_with_nextjs_16.md +174 -1
  4. package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
  5. package/docs/ar/intlayer_with_react_router_v7.md +224 -1
  6. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
  7. package/docs/ar/intlayer_with_svelte_kit.md +175 -2
  8. package/docs/ar/intlayer_with_tanstack.md +176 -1
  9. package/docs/ar/intlayer_with_vite+preact.md +174 -1
  10. package/docs/ar/intlayer_with_vite+react.md +174 -1
  11. package/docs/ar/intlayer_with_vite+solid.md +174 -1
  12. package/docs/ar/intlayer_with_vite+svelte.md +174 -1
  13. package/docs/ar/intlayer_with_vite+vue.md +174 -1
  14. package/docs/de/compiler.md +83 -48
  15. package/docs/de/configuration.md +434 -212
  16. package/docs/de/intlayer_with_nextjs_16.md +176 -1
  17. package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
  18. package/docs/de/intlayer_with_react_router_v7.md +225 -2
  19. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
  20. package/docs/de/intlayer_with_svelte_kit.md +158 -2
  21. package/docs/de/intlayer_with_tanstack.md +159 -1
  22. package/docs/de/intlayer_with_vite+preact.md +157 -1
  23. package/docs/de/intlayer_with_vite+react.md +157 -1
  24. package/docs/de/intlayer_with_vite+solid.md +159 -3
  25. package/docs/de/intlayer_with_vite+svelte.md +157 -1
  26. package/docs/de/intlayer_with_vite+vue.md +157 -1
  27. package/docs/en/compiler.md +60 -33
  28. package/docs/en/configuration.md +80 -57
  29. package/docs/en/intlayer_with_nextjs_16.md +176 -0
  30. package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
  31. package/docs/en/intlayer_with_react_router_v7.md +159 -0
  32. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
  33. package/docs/en/intlayer_with_svelte_kit.md +159 -0
  34. package/docs/en/intlayer_with_tanstack.md +160 -1
  35. package/docs/en/intlayer_with_vite+preact.md +159 -0
  36. package/docs/en/intlayer_with_vite+react.md +159 -0
  37. package/docs/en/intlayer_with_vite+solid.md +148 -27
  38. package/docs/en/intlayer_with_vite+svelte.md +159 -0
  39. package/docs/en/intlayer_with_vite+vue.md +142 -41
  40. package/docs/en-GB/compiler.md +66 -34
  41. package/docs/en-GB/configuration.md +78 -36
  42. package/docs/es/compiler.md +83 -48
  43. package/docs/es/configuration.md +429 -206
  44. package/docs/es/intlayer_with_adonisjs.md +1 -1
  45. package/docs/es/intlayer_with_express.md +1 -1
  46. package/docs/es/intlayer_with_fastify.md +1 -1
  47. package/docs/es/intlayer_with_hono.md +1 -1
  48. package/docs/es/intlayer_with_nestjs.md +1 -1
  49. package/docs/es/intlayer_with_nextjs_16.md +176 -3
  50. package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
  51. package/docs/es/intlayer_with_nuxt.md +1 -1
  52. package/docs/es/intlayer_with_react_router_v7.md +227 -4
  53. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
  54. package/docs/es/intlayer_with_svelte_kit.md +158 -2
  55. package/docs/es/intlayer_with_tanstack.md +160 -2
  56. package/docs/es/intlayer_with_vite+preact.md +162 -6
  57. package/docs/es/intlayer_with_vite+react.md +160 -4
  58. package/docs/es/intlayer_with_vite+solid.md +163 -7
  59. package/docs/es/intlayer_with_vite+svelte.md +157 -1
  60. package/docs/es/intlayer_with_vite+vue.md +165 -9
  61. package/docs/fr/compiler.md +81 -46
  62. package/docs/fr/configuration.md +355 -134
  63. package/docs/fr/intlayer_with_adonisjs.md +1 -1
  64. package/docs/fr/intlayer_with_express.md +1 -1
  65. package/docs/fr/intlayer_with_fastify.md +1 -1
  66. package/docs/fr/intlayer_with_hono.md +1 -1
  67. package/docs/fr/intlayer_with_nestjs.md +1 -1
  68. package/docs/fr/intlayer_with_nextjs_16.md +183 -7
  69. package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
  70. package/docs/fr/intlayer_with_react_router_v7.md +229 -3
  71. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
  72. package/docs/fr/intlayer_with_svelte_kit.md +158 -2
  73. package/docs/fr/intlayer_with_tanstack.md +159 -1
  74. package/docs/fr/intlayer_with_vite+preact.md +164 -8
  75. package/docs/fr/intlayer_with_vite+react.md +162 -6
  76. package/docs/fr/intlayer_with_vite+solid.md +163 -7
  77. package/docs/fr/intlayer_with_vite+svelte.md +157 -1
  78. package/docs/fr/intlayer_with_vite+vue.md +164 -8
  79. package/docs/hi/compiler.md +81 -46
  80. package/docs/hi/configuration.md +87 -44
  81. package/docs/hi/intlayer_with_nextjs_16.md +174 -1
  82. package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
  83. package/docs/hi/intlayer_with_react_router_v7.md +224 -1
  84. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  85. package/docs/hi/intlayer_with_svelte_kit.md +158 -2
  86. package/docs/hi/intlayer_with_tanstack.md +159 -1
  87. package/docs/hi/intlayer_with_vite+preact.md +157 -1
  88. package/docs/hi/intlayer_with_vite+react.md +157 -1
  89. package/docs/hi/intlayer_with_vite+solid.md +157 -1
  90. package/docs/hi/intlayer_with_vite+svelte.md +157 -1
  91. package/docs/hi/intlayer_with_vite+vue.md +157 -1
  92. package/docs/id/compiler.md +84 -51
  93. package/docs/id/configuration.md +83 -45
  94. package/docs/id/intlayer_with_nextjs_16.md +174 -1
  95. package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
  96. package/docs/id/intlayer_with_react_router_v7.md +224 -1
  97. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
  98. package/docs/id/intlayer_with_svelte_kit.md +158 -2
  99. package/docs/id/intlayer_with_tanstack.md +159 -1
  100. package/docs/id/intlayer_with_vite+preact.md +157 -1
  101. package/docs/id/intlayer_with_vite+react.md +157 -1
  102. package/docs/id/intlayer_with_vite+solid.md +157 -1
  103. package/docs/id/intlayer_with_vite+svelte.md +157 -1
  104. package/docs/id/intlayer_with_vite+vue.md +157 -1
  105. package/docs/it/compiler.md +81 -46
  106. package/docs/it/configuration.md +426 -204
  107. package/docs/it/intlayer_with_nextjs_16.md +174 -1
  108. package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
  109. package/docs/it/intlayer_with_react_router_v7.md +225 -2
  110. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
  111. package/docs/it/intlayer_with_svelte_kit.md +158 -2
  112. package/docs/it/intlayer_with_tanstack.md +159 -1
  113. package/docs/it/intlayer_with_vite+preact.md +157 -1
  114. package/docs/it/intlayer_with_vite+react.md +157 -1
  115. package/docs/it/intlayer_with_vite+solid.md +159 -3
  116. package/docs/it/intlayer_with_vite+svelte.md +157 -1
  117. package/docs/it/intlayer_with_vite+vue.md +157 -1
  118. package/docs/ja/compiler.md +94 -58
  119. package/docs/ja/configuration.md +88 -45
  120. package/docs/ja/intlayer_with_nextjs_16.md +174 -1
  121. package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
  122. package/docs/ja/intlayer_with_react_router_v7.md +184 -394
  123. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
  124. package/docs/ja/intlayer_with_svelte_kit.md +119 -595
  125. package/docs/ja/intlayer_with_tanstack.md +131 -642
  126. package/docs/ja/intlayer_with_vite+preact.md +111 -1231
  127. package/docs/ja/intlayer_with_vite+react.md +129 -1304
  128. package/docs/ja/intlayer_with_vite+solid.md +159 -3
  129. package/docs/ja/intlayer_with_vite+svelte.md +157 -1
  130. package/docs/ja/intlayer_with_vite+vue.md +157 -1
  131. package/docs/ko/compiler.md +88 -52
  132. package/docs/ko/configuration.md +87 -44
  133. package/docs/ko/intlayer_with_nextjs_16.md +174 -1
  134. package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
  135. package/docs/ko/intlayer_with_react_router_v7.md +225 -2
  136. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
  137. package/docs/ko/intlayer_with_svelte_kit.md +158 -2
  138. package/docs/ko/intlayer_with_tanstack.md +159 -1
  139. package/docs/ko/intlayer_with_vite+preact.md +157 -1
  140. package/docs/ko/intlayer_with_vite+react.md +157 -1
  141. package/docs/ko/intlayer_with_vite+solid.md +159 -3
  142. package/docs/ko/intlayer_with_vite+svelte.md +157 -1
  143. package/docs/ko/intlayer_with_vite+vue.md +157 -1
  144. package/docs/pl/compiler.md +84 -51
  145. package/docs/pl/configuration.md +83 -37
  146. package/docs/pl/intlayer_with_nextjs_16.md +174 -1
  147. package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
  148. package/docs/pl/intlayer_with_react_router_v7.md +224 -1
  149. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
  150. package/docs/pl/intlayer_with_svelte_kit.md +158 -2
  151. package/docs/pl/intlayer_with_tanstack.md +159 -1
  152. package/docs/pl/intlayer_with_vite+preact.md +157 -1
  153. package/docs/pl/intlayer_with_vite+react.md +157 -1
  154. package/docs/pl/intlayer_with_vite+solid.md +157 -1
  155. package/docs/pl/intlayer_with_vite+svelte.md +157 -1
  156. package/docs/pl/intlayer_with_vite+vue.md +157 -1
  157. package/docs/pt/compiler.md +81 -46
  158. package/docs/pt/configuration.md +404 -194
  159. package/docs/pt/intlayer_with_nextjs_16.md +174 -1
  160. package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
  161. package/docs/pt/intlayer_with_react_router_v7.md +224 -1
  162. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
  163. package/docs/pt/intlayer_with_svelte_kit.md +158 -2
  164. package/docs/pt/intlayer_with_tanstack.md +159 -1
  165. package/docs/pt/intlayer_with_vite+preact.md +157 -1
  166. package/docs/pt/intlayer_with_vite+react.md +157 -1
  167. package/docs/pt/intlayer_with_vite+solid.md +157 -1
  168. package/docs/pt/intlayer_with_vite+svelte.md +157 -1
  169. package/docs/pt/intlayer_with_vite+vue.md +157 -1
  170. package/docs/ru/compiler.md +90 -57
  171. package/docs/ru/configuration.md +76 -46
  172. package/docs/ru/intlayer_with_nextjs_16.md +174 -1
  173. package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
  174. package/docs/ru/intlayer_with_react_router_v7.md +224 -1
  175. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
  176. package/docs/ru/intlayer_with_svelte_kit.md +158 -2
  177. package/docs/ru/intlayer_with_tanstack.md +159 -1
  178. package/docs/ru/intlayer_with_vite+preact.md +157 -1
  179. package/docs/ru/intlayer_with_vite+react.md +157 -1
  180. package/docs/ru/intlayer_with_vite+solid.md +157 -1
  181. package/docs/ru/intlayer_with_vite+svelte.md +157 -1
  182. package/docs/ru/intlayer_with_vite+vue.md +157 -1
  183. package/docs/tr/compiler.md +85 -52
  184. package/docs/tr/configuration.md +83 -40
  185. package/docs/tr/intlayer_with_nextjs_16.md +174 -1
  186. package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
  187. package/docs/tr/intlayer_with_react_router_v7.md +224 -1
  188. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
  189. package/docs/tr/intlayer_with_svelte_kit.md +158 -2
  190. package/docs/tr/intlayer_with_tanstack.md +159 -1
  191. package/docs/tr/intlayer_with_vite+preact.md +157 -1
  192. package/docs/tr/intlayer_with_vite+react.md +157 -1
  193. package/docs/tr/intlayer_with_vite+solid.md +157 -1
  194. package/docs/tr/intlayer_with_vite+svelte.md +157 -1
  195. package/docs/tr/intlayer_with_vite+vue.md +157 -1
  196. package/docs/uk/compiler.md +96 -61
  197. package/docs/uk/configuration.md +83 -37
  198. package/docs/uk/intlayer_with_nextjs_16.md +174 -1
  199. package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
  200. package/docs/uk/intlayer_with_react_router_v7.md +224 -1
  201. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
  202. package/docs/uk/intlayer_with_svelte_kit.md +157 -1
  203. package/docs/uk/intlayer_with_tanstack.md +159 -1
  204. package/docs/uk/intlayer_with_vite+preact.md +157 -1
  205. package/docs/uk/intlayer_with_vite+react.md +157 -1
  206. package/docs/uk/intlayer_with_vite+solid.md +157 -1
  207. package/docs/uk/intlayer_with_vite+svelte.md +157 -1
  208. package/docs/uk/intlayer_with_vite+vue.md +157 -1
  209. package/docs/vi/compiler.md +85 -50
  210. package/docs/vi/configuration.md +85 -39
  211. package/docs/vi/intlayer_with_nextjs_16.md +174 -1
  212. package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
  213. package/docs/vi/intlayer_with_react_router_v7.md +224 -1
  214. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  215. package/docs/vi/intlayer_with_svelte_kit.md +158 -2
  216. package/docs/vi/intlayer_with_tanstack.md +159 -1
  217. package/docs/vi/intlayer_with_vite+preact.md +157 -1
  218. package/docs/vi/intlayer_with_vite+react.md +157 -1
  219. package/docs/vi/intlayer_with_vite+solid.md +157 -1
  220. package/docs/vi/intlayer_with_vite+svelte.md +157 -1
  221. package/docs/vi/intlayer_with_vite+vue.md +157 -1
  222. package/docs/zh/compiler.md +84 -49
  223. package/docs/zh/configuration.md +80 -37
  224. package/docs/zh/intlayer_with_adonisjs.md +1 -1
  225. package/docs/zh/intlayer_with_express.md +1 -1
  226. package/docs/zh/intlayer_with_fastify.md +1 -1
  227. package/docs/zh/intlayer_with_hono.md +1 -1
  228. package/docs/zh/intlayer_with_nestjs.md +1 -1
  229. package/docs/zh/intlayer_with_nextjs_16.md +174 -1
  230. package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
  231. package/docs/zh/intlayer_with_react_router_v7.md +227 -4
  232. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
  233. package/docs/zh/intlayer_with_svelte_kit.md +158 -2
  234. package/docs/zh/intlayer_with_tanstack.md +159 -1
  235. package/docs/zh/intlayer_with_vite+preact.md +159 -3
  236. package/docs/zh/intlayer_with_vite+react.md +157 -1
  237. package/docs/zh/intlayer_with_vite+solid.md +161 -5
  238. package/docs/zh/intlayer_with_vite+svelte.md +157 -1
  239. package/docs/zh/intlayer_with_vite+vue.md +158 -2
  240. package/package.json +6 -6
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Tanstack Start i18n - Cara menerjemahkan aplikasi Tanstack Start di 2026
5
5
  description: Pelajari cara menambahkan internasionalisasi (i18n) ke aplikasi TanStack Start Anda menggunakan Intlayer. Ikuti panduan komprehensif ini untuk membuat aplikasi Anda multibahasa dengan routing yang mendukung locale.
6
6
  keywords:
@@ -773,6 +773,164 @@ Pastikan konfigurasi TypeScript Anda menyertakan tipe yang dihasilkan secara oto
773
773
 
774
774
  ---
775
775
 
776
+ ### (Opsional) Langkah 1 : Ekstrak konten komponen Anda
777
+
778
+ Jika Anda memiliki basis kode yang ada, mengubah ribuan file bisa memakan waktu lama.
779
+
780
+ Untuk memudahkan proses ini, Intlayer mengusulkan [compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/compiler.md) / [extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/extract.md) untuk mengubah komponen Anda dan mengekstrak kontennya.
781
+
782
+ Untuk mengaturnya, Anda dapat menambahkan bagian `compiler` di file `intlayer.config.ts` Anda:
783
+
784
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
785
+ import { type IntlayerConfig } from "intlayer";
786
+
787
+ const config: IntlayerConfig = {
788
+ // ... Sisa konfigurasi Anda
789
+ compiler: {
790
+ /**
791
+ * Menunjukkan apakah compiler harus diaktifkan.
792
+ */
793
+ enabled: true,
794
+
795
+ /**
796
+ * Menentukan jalur file output
797
+ */
798
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
799
+
800
+ /**
801
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
802
+ */
803
+ saveComponents: false,
804
+
805
+ /**
806
+ * Prefiks kunci kamus
807
+ */
808
+ dictionaryKeyPrefix: "",
809
+ },
810
+ };
811
+
812
+ export default config;
813
+ ```
814
+
815
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
816
+ /** @type {import('intlayer').IntlayerConfig} */
817
+ const config = {
818
+ // ... Sisa konfigurasi Anda
819
+ compiler: {
820
+ /**
821
+ * Menunjukkan apakah compiler harus diaktifkan.
822
+ */
823
+ enabled: true,
824
+
825
+ /**
826
+ * Menentukan jalur file output
827
+ */
828
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
829
+
830
+ /**
831
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
832
+ */
833
+ saveComponents: false,
834
+
835
+ /**
836
+ * Prefiks kunci kamus
837
+ */
838
+ dictionaryKeyPrefix: "",
839
+ },
840
+ };
841
+
842
+ export default config;
843
+ ```
844
+
845
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
846
+ /** @type {import('intlayer').IntlayerConfig} */
847
+ const config = {
848
+ // ... Sisa konfigurasi Anda
849
+ compiler: {
850
+ /**
851
+ * Menunjukkan apakah compiler harus diaktifkan.
852
+ */
853
+ enabled: true,
854
+
855
+ /**
856
+ * Menentukan jalur file output
857
+ */
858
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
859
+
860
+ /**
861
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
862
+ */
863
+ saveComponents: false,
864
+
865
+ /**
866
+ * Prefiks kunci kamus
867
+ */
868
+ dictionaryKeyPrefix: "",
869
+ },
870
+ };
871
+
872
+ module.exports = config;
873
+ ```
874
+
875
+ <Tabs>
876
+ <Tab value='Perintah ekstrak'>
877
+
878
+ Jalankan extractor untuk mengubah komponen Anda dan mengekstrak kontennya
879
+
880
+ ```bash packageManager="npm"
881
+ npx intlayer extract
882
+ ```
883
+
884
+ ```bash packageManager="pnpm"
885
+ pnpm intlayer extract
886
+ ```
887
+
888
+ ```bash packageManager="yarn"
889
+ yarn intlayer extract
890
+ ```
891
+
892
+ ```bash packageManager="bun"
893
+ bunx intlayer extract
894
+ ```
895
+
896
+ </Tab>
897
+ <Tab value='Compiler Babel'>
898
+
899
+ Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
900
+
901
+ ```ts fileName="vite.config.ts"
902
+ import { defineConfig } from "vite";
903
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
904
+
905
+ export default defineConfig({
906
+ plugins: [
907
+ intlayer(),
908
+ intlayerCompiler(), // Menambahkan plugin compiler
909
+ ],
910
+ });
911
+ ```
912
+
913
+ ```bash packageManager="npm"
914
+ npm run build # Atau npm run dev
915
+ ```
916
+
917
+ ```bash packageManager="pnpm"
918
+ pnpm run build # Or pnpm run dev
919
+ ```
920
+
921
+ ```bash packageManager="yarn"
922
+ yarn build # Or yarn dev
923
+ ```
924
+
925
+ ```bash packageManager="bun"
926
+ bun run build # Or bun run dev
927
+ ```
928
+
929
+ </Tab>
930
+ </Tabs>
931
+
932
+ ---
933
+
776
934
  ### Konfigurasi Git
777
935
 
778
936
  Disarankan untuk mengabaikan file yang dihasilkan oleh Intlayer. Ini memungkinkan Anda menghindari melakukan commit ke repositori Git Anda.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Vite + Preact i18n - Cara menerjemahkan aplikasi Preact di 2026
5
5
  description: Temukan cara membuat situs web Vite dan Preact Anda menjadi multibahasa. Ikuti dokumentasi untuk melakukan internasionalisasi (i18n) dan menerjemahkannya.
6
6
  keywords:
@@ -1364,6 +1364,162 @@ Ekstensi ini menyediakan:
1364
1364
 
1365
1365
  ---
1366
1366
 
1367
+ ### (Opsional) Langkah 1 : Ekstrak konten komponen Anda
1368
+
1369
+ Jika Anda memiliki basis kode yang ada, mengubah ribuan file bisa memakan waktu lama.
1370
+
1371
+ Untuk memudahkan proses ini, Intlayer mengusulkan [compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/compiler.md) / [extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/extract.md) untuk mengubah komponen Anda dan mengekstrak kontennya.
1372
+
1373
+ Untuk mengaturnya, Anda dapat menambahkan bagian `compiler` di file `intlayer.config.ts` Anda:
1374
+
1375
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
1376
+ import { type IntlayerConfig } from "intlayer";
1377
+
1378
+ const config: IntlayerConfig = {
1379
+ // ... Sisa konfigurasi Anda
1380
+ compiler: {
1381
+ /**
1382
+ * Menunjukkan apakah compiler harus diaktifkan.
1383
+ */
1384
+ enabled: true,
1385
+
1386
+ /**
1387
+ * Menentukan jalur file output
1388
+ */
1389
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1390
+
1391
+ /**
1392
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
1393
+ */
1394
+ saveComponents: false,
1395
+
1396
+ /**
1397
+ * Prefiks kunci kamus
1398
+ */
1399
+ dictionaryKeyPrefix: "",
1400
+ },
1401
+ };
1402
+
1403
+ export default config;
1404
+ ```
1405
+
1406
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
1407
+ /** @type {import('intlayer').IntlayerConfig} */
1408
+ const config = {
1409
+ // ... Sisa konfigurasi Anda
1410
+ compiler: {
1411
+ /**
1412
+ * Menunjukkan apakah compiler harus diaktifkan.
1413
+ */
1414
+ enabled: true,
1415
+
1416
+ /**
1417
+ * Menentukan jalur file output
1418
+ */
1419
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1420
+
1421
+ /**
1422
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
1423
+ */
1424
+ saveComponents: false,
1425
+
1426
+ /**
1427
+ * Prefiks kunci kamus
1428
+ */
1429
+ dictionaryKeyPrefix: "",
1430
+ },
1431
+ };
1432
+
1433
+ export default config;
1434
+ ```
1435
+
1436
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
1437
+ /** @type {import('intlayer').IntlayerConfig} */
1438
+ const config = {
1439
+ // ... Sisa konfigurasi Anda
1440
+ compiler: {
1441
+ /**
1442
+ * Menunjukkan apakah compiler harus diaktifkan.
1443
+ */
1444
+ enabled: true,
1445
+
1446
+ /**
1447
+ * Menentukan jalur file output
1448
+ */
1449
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1450
+
1451
+ /**
1452
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
1453
+ */
1454
+ saveComponents: false,
1455
+
1456
+ /**
1457
+ * Prefiks kunci kamus
1458
+ */
1459
+ dictionaryKeyPrefix: "",
1460
+ },
1461
+ };
1462
+
1463
+ module.exports = config;
1464
+ ```
1465
+
1466
+ <Tabs>
1467
+ <Tab value='Perintah ekstrak'>
1468
+
1469
+ Jalankan extractor untuk mengubah komponen Anda dan mengekstrak kontennya
1470
+
1471
+ ```bash packageManager="npm"
1472
+ npx intlayer extract
1473
+ ```
1474
+
1475
+ ```bash packageManager="pnpm"
1476
+ pnpm intlayer extract
1477
+ ```
1478
+
1479
+ ```bash packageManager="yarn"
1480
+ yarn intlayer extract
1481
+ ```
1482
+
1483
+ ```bash packageManager="bun"
1484
+ bunx intlayer extract
1485
+ ```
1486
+
1487
+ </Tab>
1488
+ <Tab value='Compiler Babel'>
1489
+
1490
+ Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
1491
+
1492
+ ```ts fileName="vite.config.ts"
1493
+ import { defineConfig } from "vite";
1494
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
1495
+
1496
+ export default defineConfig({
1497
+ plugins: [
1498
+ intlayer(),
1499
+ intlayerCompiler(), // Menambahkan plugin compiler
1500
+ ],
1501
+ });
1502
+ ```
1503
+
1504
+ ```bash packageManager="npm"
1505
+ npm run build # Atau npm run dev
1506
+ ```
1507
+
1508
+ ```bash packageManager="pnpm"
1509
+ pnpm run build # Or pnpm run dev
1510
+ ```
1511
+
1512
+ ```bash packageManager="yarn"
1513
+ yarn build # Or yarn dev
1514
+ ```
1515
+
1516
+ ```bash packageManager="bun"
1517
+ bun run build # Or bun run dev
1518
+ ```
1519
+
1520
+ </Tab>
1521
+ </Tabs>
1522
+
1367
1523
  ### Melangkah Lebih Jauh
1368
1524
 
1369
1525
  Để đi xa hơn, bạn có thể triển khai [trình soạn thảo trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_visual_editor.md) hoặc mengeksternalisasi konten Anda menggunakan [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_CMS.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-03-07
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Vite + React i18n - Cara menerjemahkan aplikasi React di 2026
5
5
  description: Pelajari cara menambahkan internasionalisasi (i18n) ke aplikasi Vite dan React Anda menggunakan Intlayer. Ikuti panduan ini untuk membuat aplikasi Anda multibahasa.
6
6
  keywords:
@@ -1416,6 +1416,162 @@ Untuk detail lebih lanjut tentang cara menggunakan ekstensi ini, lihat [dokument
1416
1416
 
1417
1417
  ---
1418
1418
 
1419
+ ### (Opsional) Langkah 1 : Ekstrak konten komponen Anda
1420
+
1421
+ Jika Anda memiliki basis kode yang ada, mengubah ribuan file bisa memakan waktu lama.
1422
+
1423
+ Untuk memudahkan proses ini, Intlayer mengusulkan [compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/compiler.md) / [extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/extract.md) untuk mengubah komponen Anda dan mengekstrak kontennya.
1424
+
1425
+ Untuk mengaturnya, Anda dapat menambahkan bagian `compiler` di file `intlayer.config.ts` Anda:
1426
+
1427
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
1428
+ import { type IntlayerConfig } from "intlayer";
1429
+
1430
+ const config: IntlayerConfig = {
1431
+ // ... Sisa konfigurasi Anda
1432
+ compiler: {
1433
+ /**
1434
+ * Menunjukkan apakah compiler harus diaktifkan.
1435
+ */
1436
+ enabled: true,
1437
+
1438
+ /**
1439
+ * Menentukan jalur file output
1440
+ */
1441
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1442
+
1443
+ /**
1444
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
1445
+ */
1446
+ saveComponents: false,
1447
+
1448
+ /**
1449
+ * Prefiks kunci kamus
1450
+ */
1451
+ dictionaryKeyPrefix: "",
1452
+ },
1453
+ };
1454
+
1455
+ export default config;
1456
+ ```
1457
+
1458
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
1459
+ /** @type {import('intlayer').IntlayerConfig} */
1460
+ const config = {
1461
+ // ... Sisa konfigurasi Anda
1462
+ compiler: {
1463
+ /**
1464
+ * Menunjukkan apakah compiler harus diaktifkan.
1465
+ */
1466
+ enabled: true,
1467
+
1468
+ /**
1469
+ * Menentukan jalur file output
1470
+ */
1471
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1472
+
1473
+ /**
1474
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
1475
+ */
1476
+ saveComponents: false,
1477
+
1478
+ /**
1479
+ * Prefiks kunci kamus
1480
+ */
1481
+ dictionaryKeyPrefix: "",
1482
+ },
1483
+ };
1484
+
1485
+ export default config;
1486
+ ```
1487
+
1488
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
1489
+ /** @type {import('intlayer').IntlayerConfig} */
1490
+ const config = {
1491
+ // ... Sisa konfigurasi Anda
1492
+ compiler: {
1493
+ /**
1494
+ * Menunjukkan apakah compiler harus diaktifkan.
1495
+ */
1496
+ enabled: true,
1497
+
1498
+ /**
1499
+ * Menentukan jalur file output
1500
+ */
1501
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1502
+
1503
+ /**
1504
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
1505
+ */
1506
+ saveComponents: false,
1507
+
1508
+ /**
1509
+ * Prefiks kunci kamus
1510
+ */
1511
+ dictionaryKeyPrefix: "",
1512
+ },
1513
+ };
1514
+
1515
+ module.exports = config;
1516
+ ```
1517
+
1518
+ <Tabs>
1519
+ <Tab value='Perintah ekstrak'>
1520
+
1521
+ Jalankan extractor untuk mengubah komponen Anda dan mengekstrak kontennya
1522
+
1523
+ ```bash packageManager="npm"
1524
+ npx intlayer extract
1525
+ ```
1526
+
1527
+ ```bash packageManager="pnpm"
1528
+ pnpm intlayer extract
1529
+ ```
1530
+
1531
+ ```bash packageManager="yarn"
1532
+ yarn intlayer extract
1533
+ ```
1534
+
1535
+ ```bash packageManager="bun"
1536
+ bunx intlayer extract
1537
+ ```
1538
+
1539
+ </Tab>
1540
+ <Tab value='Compiler Babel'>
1541
+
1542
+ Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
1543
+
1544
+ ```ts fileName="vite.config.ts"
1545
+ import { defineConfig } from "vite";
1546
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
1547
+
1548
+ export default defineConfig({
1549
+ plugins: [
1550
+ intlayer(),
1551
+ intlayerCompiler(), // Menambahkan plugin compiler
1552
+ ],
1553
+ });
1554
+ ```
1555
+
1556
+ ```bash packageManager="npm"
1557
+ npm run build # Atau npm run dev
1558
+ ```
1559
+
1560
+ ```bash packageManager="pnpm"
1561
+ pnpm run build # Or pnpm run dev
1562
+ ```
1563
+
1564
+ ```bash packageManager="yarn"
1565
+ yarn build # Or yarn dev
1566
+ ```
1567
+
1568
+ ```bash packageManager="bun"
1569
+ bun run build # Or bun run dev
1570
+ ```
1571
+
1572
+ </Tab>
1573
+ </Tabs>
1574
+
1419
1575
  ### Melangkah Lebih Jauh
1420
1576
 
1421
1577
  Untuk melangkah lebih jauh, Anda dapat mengimplementasikan [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_visual_editor.md) atau mengeksternalisasi konten Anda menggunakan [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_CMS.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Vite + Solid i18n - Cara menerjemahkan aplikasi Solid di 2026
5
5
  description: Temukan cara membuat situs web Vite dan Solid Anda menjadi multibahasa. Ikuti dokumentasi untuk melakukan internasionalisasi (i18n) dan menerjemahkannya.
6
6
  keywords:
@@ -576,6 +576,162 @@ Untuk detail lebih lanjut tentang cara menggunakan ekstensi ini, lihat [dokument
576
576
 
577
577
  ---
578
578
 
579
+ ### (Opsional) Langkah 1 : Ekstrak konten komponen Anda
580
+
581
+ Jika Anda memiliki basis kode yang ada, mengubah ribuan file bisa memakan waktu lama.
582
+
583
+ Untuk memudahkan proses ini, Intlayer mengusulkan [compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/compiler.md) / [extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/cli/extract.md) untuk mengubah komponen Anda dan mengekstrak kontennya.
584
+
585
+ Untuk mengaturnya, Anda dapat menambahkan bagian `compiler` di file `intlayer.config.ts` Anda:
586
+
587
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
588
+ import { type IntlayerConfig } from "intlayer";
589
+
590
+ const config: IntlayerConfig = {
591
+ // ... Sisa konfigurasi Anda
592
+ compiler: {
593
+ /**
594
+ * Menunjukkan apakah compiler harus diaktifkan.
595
+ */
596
+ enabled: true,
597
+
598
+ /**
599
+ * Menentukan jalur file output
600
+ */
601
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
602
+
603
+ /**
604
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
605
+ */
606
+ saveComponents: false,
607
+
608
+ /**
609
+ * Prefiks kunci kamus
610
+ */
611
+ dictionaryKeyPrefix: "",
612
+ },
613
+ };
614
+
615
+ export default config;
616
+ ```
617
+
618
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
619
+ /** @type {import('intlayer').IntlayerConfig} */
620
+ const config = {
621
+ // ... Sisa konfigurasi Anda
622
+ compiler: {
623
+ /**
624
+ * Menunjukkan apakah compiler harus diaktifkan.
625
+ */
626
+ enabled: true,
627
+
628
+ /**
629
+ * Menentukan jalur file output
630
+ */
631
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
632
+
633
+ /**
634
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
635
+ */
636
+ saveComponents: false,
637
+
638
+ /**
639
+ * Prefiks kunci kamus
640
+ */
641
+ dictionaryKeyPrefix: "",
642
+ },
643
+ };
644
+
645
+ export default config;
646
+ ```
647
+
648
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
649
+ /** @type {import('intlayer').IntlayerConfig} */
650
+ const config = {
651
+ // ... Sisa konfigurasi Anda
652
+ compiler: {
653
+ /**
654
+ * Menunjukkan apakah compiler harus diaktifkan.
655
+ */
656
+ enabled: true,
657
+
658
+ /**
659
+ * Menentukan jalur file output
660
+ */
661
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
662
+
663
+ /**
664
+ * Menunjukkan apakah komponen harus disimpan setelah diubah. Dengan begitu, compiler dapat dijalankan satu kali saja untuk mengubah aplikasi, lalu dapat dihapus.
665
+ */
666
+ saveComponents: false,
667
+
668
+ /**
669
+ * Prefiks kunci kamus
670
+ */
671
+ dictionaryKeyPrefix: "",
672
+ },
673
+ };
674
+
675
+ module.exports = config;
676
+ ```
677
+
678
+ <Tabs>
679
+ <Tab value='Perintah ekstrak'>
680
+
681
+ Jalankan extractor untuk mengubah komponen Anda dan mengekstrak kontennya
682
+
683
+ ```bash packageManager="npm"
684
+ npx intlayer extract
685
+ ```
686
+
687
+ ```bash packageManager="pnpm"
688
+ pnpm intlayer extract
689
+ ```
690
+
691
+ ```bash packageManager="yarn"
692
+ yarn intlayer extract
693
+ ```
694
+
695
+ ```bash packageManager="bun"
696
+ bunx intlayer extract
697
+ ```
698
+
699
+ </Tab>
700
+ <Tab value='Compiler Babel'>
701
+
702
+ Perbarui `vite.config.ts` Anda untuk menyertakan plugin `intlayerCompiler`:
703
+
704
+ ```ts fileName="vite.config.ts"
705
+ import { defineConfig } from "vite";
706
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
707
+
708
+ export default defineConfig({
709
+ plugins: [
710
+ intlayer(),
711
+ intlayerCompiler(), // Menambahkan plugin compiler
712
+ ],
713
+ });
714
+ ```
715
+
716
+ ```bash packageManager="npm"
717
+ npm run build # Atau npm run dev
718
+ ```
719
+
720
+ ```bash packageManager="pnpm"
721
+ pnpm run build # Or pnpm run dev
722
+ ```
723
+
724
+ ```bash packageManager="yarn"
725
+ yarn build # Or yarn dev
726
+ ```
727
+
728
+ ```bash packageManager="bun"
729
+ bun run build # Or bun run dev
730
+ ```
731
+
732
+ </Tab>
733
+ </Tabs>
734
+
579
735
  ### Melangkah Lebih Jauh
580
736
 
581
737
  Untuk melangkah lebih jauh, Anda dapat mengimplementasikan [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_visual_editor.md) atau mengeksternalisasi konten Anda menggunakan [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/id/intlayer_CMS.md).