@intlayer/docs 7.4.0 → 7.5.0-canary.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 (298) hide show
  1. package/blog/ar/intlayer_with_i18next.md +2 -0
  2. package/blog/ar/intlayer_with_next-i18next.md +2 -0
  3. package/blog/ar/intlayer_with_next-intl.md +2 -0
  4. package/blog/ar/intlayer_with_react-i18next.md +2 -0
  5. package/blog/ar/intlayer_with_react-intl.md +2 -0
  6. package/blog/ar/intlayer_with_vue-i18n.md +2 -0
  7. package/blog/de/intlayer_with_i18next.md +2 -0
  8. package/blog/de/intlayer_with_next-i18next.md +1 -0
  9. package/blog/de/intlayer_with_next-intl.md +2 -0
  10. package/blog/de/intlayer_with_react-i18next.md +2 -0
  11. package/blog/de/intlayer_with_react-intl.md +2 -0
  12. package/blog/de/intlayer_with_vue-i18n.md +2 -0
  13. package/blog/en/intlayer_with_i18next.md +6 -0
  14. package/blog/en/intlayer_with_next-i18next.md +3 -0
  15. package/blog/en/intlayer_with_next-intl.md +3 -0
  16. package/blog/en/intlayer_with_react-i18next.md +3 -0
  17. package/blog/en/intlayer_with_react-intl.md +3 -0
  18. package/blog/en/intlayer_with_vue-i18n.md +3 -0
  19. package/blog/en-GB/intlayer_with_i18next.md +2 -0
  20. package/blog/en-GB/intlayer_with_next-i18next.md +2 -0
  21. package/blog/en-GB/intlayer_with_next-intl.md +2 -0
  22. package/blog/en-GB/intlayer_with_react-i18next.md +2 -0
  23. package/blog/en-GB/intlayer_with_react-intl.md +2 -0
  24. package/blog/en-GB/intlayer_with_vue-i18n.md +2 -0
  25. package/blog/es/intlayer_with_i18next.md +2 -0
  26. package/blog/es/intlayer_with_next-i18next.md +2 -0
  27. package/blog/es/intlayer_with_next-intl.md +2 -0
  28. package/blog/es/intlayer_with_react-i18next.md +2 -0
  29. package/blog/es/intlayer_with_react-intl.md +2 -0
  30. package/blog/es/intlayer_with_vue-i18n.md +2 -0
  31. package/blog/fr/intlayer_with_i18next.md +2 -0
  32. package/blog/fr/intlayer_with_next-i18next.md +2 -0
  33. package/blog/fr/intlayer_with_next-intl.md +2 -0
  34. package/blog/fr/intlayer_with_react-i18next.md +2 -0
  35. package/blog/fr/intlayer_with_react-intl.md +2 -0
  36. package/blog/fr/intlayer_with_vue-i18n.md +2 -0
  37. package/blog/hi/intlayer_with_i18next.md +2 -0
  38. package/blog/hi/intlayer_with_next-i18next.md +2 -0
  39. package/blog/hi/intlayer_with_next-intl.md +2 -0
  40. package/blog/hi/intlayer_with_react-i18next.md +2 -0
  41. package/blog/hi/intlayer_with_react-intl.md +2 -0
  42. package/blog/hi/intlayer_with_vue-i18n.md +2 -0
  43. package/blog/id/intlayer_with_i18next.md +2 -0
  44. package/blog/id/intlayer_with_next-i18next.md +2 -0
  45. package/blog/id/intlayer_with_next-intl.md +2 -0
  46. package/blog/id/intlayer_with_react-i18next.md +2 -0
  47. package/blog/id/intlayer_with_react-intl.md +2 -0
  48. package/blog/id/intlayer_with_vue-i18n.md +2 -0
  49. package/blog/it/intlayer_with_i18next.md +2 -0
  50. package/blog/it/intlayer_with_next-i18next.md +2 -0
  51. package/blog/it/intlayer_with_next-intl.md +2 -0
  52. package/blog/it/intlayer_with_react-i18next.md +2 -0
  53. package/blog/it/intlayer_with_react-intl.md +2 -0
  54. package/blog/it/intlayer_with_vue-i18n.md +2 -0
  55. package/blog/ja/intlayer_with_i18next.md +2 -0
  56. package/blog/ja/intlayer_with_next-i18next.md +1 -0
  57. package/blog/ja/intlayer_with_next-intl.md +2 -0
  58. package/blog/ja/intlayer_with_react-i18next.md +2 -0
  59. package/blog/ja/intlayer_with_react-intl.md +2 -0
  60. package/blog/ja/intlayer_with_vue-i18n.md +2 -0
  61. package/blog/ko/intlayer_with_i18next.md +2 -0
  62. package/blog/ko/intlayer_with_next-i18next.md +2 -0
  63. package/blog/ko/intlayer_with_next-intl.md +2 -0
  64. package/blog/ko/intlayer_with_react-i18next.md +2 -0
  65. package/blog/ko/intlayer_with_react-intl.md +2 -0
  66. package/blog/ko/intlayer_with_vue-i18n.md +2 -0
  67. package/blog/pl/intlayer_with_i18next.md +2 -0
  68. package/blog/pl/intlayer_with_next-i18next.md +2 -0
  69. package/blog/pl/intlayer_with_next-intl.md +2 -0
  70. package/blog/pl/intlayer_with_react-i18next.md +2 -0
  71. package/blog/pl/intlayer_with_react-intl.md +2 -0
  72. package/blog/pl/intlayer_with_vue-i18n.md +2 -0
  73. package/blog/pt/intlayer_with_i18next.md +2 -0
  74. package/blog/pt/intlayer_with_next-i18next.md +2 -0
  75. package/blog/pt/intlayer_with_next-intl.md +2 -0
  76. package/blog/pt/intlayer_with_react-i18next.md +2 -0
  77. package/blog/pt/intlayer_with_react-intl.md +2 -0
  78. package/blog/pt/intlayer_with_vue-i18n.md +2 -0
  79. package/blog/ru/intlayer_with_i18next.md +2 -0
  80. package/blog/ru/intlayer_with_next-i18next.md +2 -0
  81. package/blog/ru/intlayer_with_next-intl.md +2 -0
  82. package/blog/ru/intlayer_with_react-i18next.md +2 -0
  83. package/blog/ru/intlayer_with_react-intl.md +2 -0
  84. package/blog/ru/intlayer_with_vue-i18n.md +2 -0
  85. package/blog/tr/intlayer_with_i18next.md +2 -0
  86. package/blog/tr/intlayer_with_next-i18next.md +2 -0
  87. package/blog/tr/intlayer_with_next-intl.md +2 -0
  88. package/blog/tr/intlayer_with_react-i18next.md +2 -0
  89. package/blog/tr/intlayer_with_react-intl.md +2 -0
  90. package/blog/tr/intlayer_with_vue-i18n.md +2 -0
  91. package/blog/vi/intlayer_with_i18next.md +2 -0
  92. package/blog/vi/intlayer_with_next-i18next.md +2 -0
  93. package/blog/vi/intlayer_with_next-intl.md +2 -0
  94. package/blog/vi/intlayer_with_react-i18next.md +2 -0
  95. package/blog/vi/intlayer_with_react-intl.md +2 -0
  96. package/blog/vi/intlayer_with_vue-i18n.md +2 -0
  97. package/blog/zh/intlayer_with_i18next.md +2 -0
  98. package/blog/zh/intlayer_with_next-i18next.md +2 -0
  99. package/blog/zh/intlayer_with_next-intl.md +2 -0
  100. package/blog/zh/intlayer_with_react-i18next.md +2 -0
  101. package/blog/zh/intlayer_with_react-intl.md +2 -0
  102. package/blog/zh/intlayer_with_vue-i18n.md +2 -0
  103. package/dist/cjs/generated/docs.entry.cjs +19 -0
  104. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  105. package/dist/esm/generated/docs.entry.mjs +19 -0
  106. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  107. package/dist/types/generated/docs.entry.d.ts +1 -0
  108. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  109. package/docs/ar/cli/index.md +5 -0
  110. package/docs/ar/cli/login.md +157 -0
  111. package/docs/ar/configuration.md +12 -0
  112. package/docs/ar/dictionary/content_file.md +24 -1
  113. package/docs/ar/intlayer_with_astro.md +1 -1
  114. package/docs/ar/intlayer_with_express.md +1 -1
  115. package/docs/ar/intlayer_with_nestjs.md +1 -1
  116. package/docs/ar/intlayer_with_next-i18next.md +1 -0
  117. package/docs/ar/intlayer_with_next-intl.md +1 -0
  118. package/docs/ar/intlayer_with_tanstack.md +1 -12
  119. package/docs/ar/plugins/sync-json.md +27 -2
  120. package/docs/de/cli/index.md +5 -0
  121. package/docs/de/cli/login.md +160 -0
  122. package/docs/de/configuration.md +12 -0
  123. package/docs/de/dictionary/content_file.md +24 -1
  124. package/docs/de/intlayer_with_astro.md +1 -1
  125. package/docs/de/intlayer_with_express.md +1 -1
  126. package/docs/de/intlayer_with_nestjs.md +1 -1
  127. package/docs/de/intlayer_with_next-i18next.md +1 -0
  128. package/docs/de/intlayer_with_next-intl.md +1 -0
  129. package/docs/de/intlayer_with_tanstack.md +1 -12
  130. package/docs/de/plugins/sync-json.md +27 -2
  131. package/docs/en/cli/index.md +5 -0
  132. package/docs/en/cli/login.md +157 -0
  133. package/docs/en/configuration.md +13 -0
  134. package/docs/en/dictionary/content_file.md +24 -1
  135. package/docs/en/index.md +1 -0
  136. package/docs/en/intlayer_with_astro.md +1 -1
  137. package/docs/en/intlayer_with_express.md +1 -1
  138. package/docs/en/intlayer_with_nestjs.md +1 -2
  139. package/docs/en/intlayer_with_next-i18next.md +1 -0
  140. package/docs/en/intlayer_with_next-intl.md +1 -0
  141. package/docs/en/intlayer_with_tanstack.md +7 -17
  142. package/docs/en/plugins/sync-json.md +53 -2
  143. package/docs/en-GB/cli/index.md +5 -0
  144. package/docs/en-GB/cli/login.md +181 -0
  145. package/docs/en-GB/configuration.md +12 -0
  146. package/docs/en-GB/dictionary/content_file.md +24 -1
  147. package/docs/en-GB/intlayer_with_astro.md +1 -1
  148. package/docs/en-GB/intlayer_with_express.md +1 -1
  149. package/docs/en-GB/intlayer_with_nestjs.md +1 -1
  150. package/docs/en-GB/intlayer_with_next-i18next.md +1 -0
  151. package/docs/en-GB/intlayer_with_next-intl.md +1 -0
  152. package/docs/en-GB/intlayer_with_tanstack.md +1 -12
  153. package/docs/en-GB/plugins/sync-json.md +26 -1
  154. package/docs/es/cli/index.md +5 -0
  155. package/docs/es/cli/login.md +182 -0
  156. package/docs/es/configuration.md +12 -0
  157. package/docs/es/dictionary/content_file.md +24 -1
  158. package/docs/es/intlayer_with_astro.md +1 -1
  159. package/docs/es/intlayer_with_express.md +1 -1
  160. package/docs/es/intlayer_with_nestjs.md +1 -1
  161. package/docs/es/intlayer_with_next-i18next.md +1 -0
  162. package/docs/es/intlayer_with_next-intl.md +1 -0
  163. package/docs/es/intlayer_with_tanstack.md +1 -12
  164. package/docs/es/plugins/sync-json.md +27 -2
  165. package/docs/fr/cli/index.md +5 -0
  166. package/docs/fr/cli/login.md +185 -0
  167. package/docs/fr/configuration.md +12 -0
  168. package/docs/fr/dictionary/content_file.md +24 -1
  169. package/docs/fr/intlayer_with_astro.md +1 -1
  170. package/docs/fr/intlayer_with_express.md +1 -1
  171. package/docs/fr/intlayer_with_nestjs.md +1 -1
  172. package/docs/fr/intlayer_with_next-i18next.md +1 -0
  173. package/docs/fr/intlayer_with_next-intl.md +1 -0
  174. package/docs/fr/intlayer_with_tanstack.md +1 -12
  175. package/docs/fr/plugins/sync-json.md +27 -2
  176. package/docs/hi/cli/index.md +5 -0
  177. package/docs/hi/cli/login.md +181 -0
  178. package/docs/hi/configuration.md +12 -0
  179. package/docs/hi/dictionary/content_file.md +24 -1
  180. package/docs/hi/intlayer_with_astro.md +1 -1
  181. package/docs/hi/intlayer_with_express.md +1 -1
  182. package/docs/hi/intlayer_with_nestjs.md +1 -1
  183. package/docs/hi/intlayer_with_next-i18next.md +1 -0
  184. package/docs/hi/intlayer_with_next-intl.md +1 -0
  185. package/docs/hi/intlayer_with_tanstack.md +1 -12
  186. package/docs/hi/plugins/sync-json.md +27 -2
  187. package/docs/id/cli/index.md +5 -0
  188. package/docs/id/cli/login.md +157 -0
  189. package/docs/id/configuration.md +12 -0
  190. package/docs/id/dictionary/content_file.md +24 -1
  191. package/docs/id/intlayer_with_astro.md +1 -1
  192. package/docs/id/intlayer_with_express.md +1 -1
  193. package/docs/id/intlayer_with_nestjs.md +1 -1
  194. package/docs/id/intlayer_with_next-i18next.md +1 -0
  195. package/docs/id/intlayer_with_next-intl.md +1 -0
  196. package/docs/id/intlayer_with_tanstack.md +1 -12
  197. package/docs/id/plugins/sync-json.md +27 -2
  198. package/docs/it/cli/index.md +5 -0
  199. package/docs/it/cli/login.md +157 -0
  200. package/docs/it/configuration.md +12 -0
  201. package/docs/it/dictionary/content_file.md +24 -1
  202. package/docs/it/intlayer_with_astro.md +1 -1
  203. package/docs/it/intlayer_with_express.md +1 -1
  204. package/docs/it/intlayer_with_nestjs.md +1 -1
  205. package/docs/it/intlayer_with_next-i18next.md +1 -0
  206. package/docs/it/intlayer_with_next-intl.md +1 -0
  207. package/docs/it/intlayer_with_tanstack.md +1 -12
  208. package/docs/it/plugins/sync-json.md +27 -2
  209. package/docs/ja/cli/index.md +5 -0
  210. package/docs/ja/cli/login.md +159 -0
  211. package/docs/ja/configuration.md +12 -0
  212. package/docs/ja/dictionary/content_file.md +24 -1
  213. package/docs/ja/intlayer_with_astro.md +1 -1
  214. package/docs/ja/intlayer_with_express.md +1 -1
  215. package/docs/ja/intlayer_with_nestjs.md +1 -1
  216. package/docs/ja/intlayer_with_next-i18next.md +1 -0
  217. package/docs/ja/intlayer_with_next-intl.md +1 -0
  218. package/docs/ja/intlayer_with_tanstack.md +1 -12
  219. package/docs/ja/plugins/sync-json.md +27 -2
  220. package/docs/ko/cli/index.md +5 -0
  221. package/docs/ko/cli/login.md +188 -0
  222. package/docs/ko/configuration.md +12 -0
  223. package/docs/ko/dictionary/content_file.md +44 -1
  224. package/docs/ko/intlayer_with_astro.md +1 -1
  225. package/docs/ko/intlayer_with_express.md +1 -1
  226. package/docs/ko/intlayer_with_nestjs.md +1 -1
  227. package/docs/ko/intlayer_with_next-i18next.md +1 -0
  228. package/docs/ko/intlayer_with_next-intl.md +1 -0
  229. package/docs/ko/intlayer_with_tanstack.md +1 -12
  230. package/docs/ko/plugins/sync-json.md +27 -2
  231. package/docs/pl/cli/index.md +5 -0
  232. package/docs/pl/cli/login.md +187 -0
  233. package/docs/pl/configuration.md +12 -0
  234. package/docs/pl/dictionary/content_file.md +24 -1
  235. package/docs/pl/intlayer_with_astro.md +2 -2
  236. package/docs/pl/intlayer_with_express.md +1 -1
  237. package/docs/pl/intlayer_with_nestjs.md +1 -1
  238. package/docs/pl/intlayer_with_next-i18next.md +1 -0
  239. package/docs/pl/intlayer_with_next-intl.md +1 -0
  240. package/docs/pl/intlayer_with_tanstack.md +1 -12
  241. package/docs/pl/plugins/sync-json.md +24 -2
  242. package/docs/pt/cli/index.md +5 -0
  243. package/docs/pt/cli/login.md +186 -0
  244. package/docs/pt/configuration.md +12 -0
  245. package/docs/pt/dictionary/content_file.md +24 -1
  246. package/docs/pt/intlayer_with_astro.md +1 -1
  247. package/docs/pt/intlayer_with_express.md +1 -1
  248. package/docs/pt/intlayer_with_nestjs.md +1 -1
  249. package/docs/pt/intlayer_with_next-i18next.md +1 -0
  250. package/docs/pt/intlayer_with_next-intl.md +1 -0
  251. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +570 -0
  252. package/docs/pt/intlayer_with_tanstack.md +1 -12
  253. package/docs/pt/plugins/sync-json.md +27 -2
  254. package/docs/ru/cli/index.md +5 -0
  255. package/docs/ru/cli/login.md +181 -0
  256. package/docs/ru/configuration.md +12 -0
  257. package/docs/ru/dictionary/content_file.md +44 -1
  258. package/docs/ru/intlayer_with_astro.md +1 -1
  259. package/docs/ru/intlayer_with_express.md +1 -1
  260. package/docs/ru/intlayer_with_nestjs.md +1 -1
  261. package/docs/ru/intlayer_with_next-i18next.md +1 -0
  262. package/docs/ru/intlayer_with_next-intl.md +1 -0
  263. package/docs/ru/intlayer_with_tanstack.md +1 -12
  264. package/docs/ru/plugins/sync-json.md +27 -2
  265. package/docs/tr/cli/index.md +5 -0
  266. package/docs/tr/cli/login.md +171 -0
  267. package/docs/tr/configuration.md +12 -0
  268. package/docs/tr/dictionary/content_file.md +44 -1
  269. package/docs/tr/intlayer_with_astro.md +1 -1
  270. package/docs/tr/intlayer_with_express.md +1 -1
  271. package/docs/tr/intlayer_with_next-i18next.md +1 -0
  272. package/docs/tr/intlayer_with_next-intl.md +1 -0
  273. package/docs/tr/intlayer_with_tanstack.md +1 -12
  274. package/docs/tr/plugins/sync-json.md +27 -2
  275. package/docs/vi/cli/index.md +5 -0
  276. package/docs/vi/cli/login.md +186 -0
  277. package/docs/vi/configuration.md +12 -0
  278. package/docs/vi/dictionary/content_file.md +24 -1
  279. package/docs/vi/intlayer_with_astro.md +1 -1
  280. package/docs/vi/intlayer_with_express.md +1 -1
  281. package/docs/vi/intlayer_with_nestjs.md +1 -1
  282. package/docs/vi/intlayer_with_next-i18next.md +1 -0
  283. package/docs/vi/intlayer_with_next-intl.md +1 -0
  284. package/docs/vi/intlayer_with_tanstack.md +1 -12
  285. package/docs/vi/plugins/sync-json.md +27 -2
  286. package/docs/zh/cli/index.md +5 -0
  287. package/docs/zh/cli/login.md +182 -0
  288. package/docs/zh/configuration.md +12 -0
  289. package/docs/zh/dictionary/content_file.md +44 -1
  290. package/docs/zh/intlayer_with_astro.md +1 -1
  291. package/docs/zh/intlayer_with_express.md +1 -1
  292. package/docs/zh/intlayer_with_nestjs.md +1 -1
  293. package/docs/zh/intlayer_with_next-i18next.md +1 -0
  294. package/docs/zh/intlayer_with_next-intl.md +1 -0
  295. package/docs/zh/intlayer_with_tanstack.md +1 -12
  296. package/docs/zh/plugins/sync-json.md +27 -2
  297. package/package.json +9 -9
  298. package/src/generated/docs.entry.ts +19 -0
@@ -0,0 +1,182 @@
1
+ ---
2
+ createdAt: 2025-12-16
3
+ updatedAt: 2025-12-16
4
+ title: CLI - Inicio de sesión
5
+ description: Aprende a usar el comando login del CLI de Intlayer para autenticarte con el CMS de Intlayer y obtener credenciales de acceso.
6
+ keywords:
7
+ - CLI
8
+ - Login
9
+ - Authentication
10
+ - CMS
11
+ - Intlayer
12
+ - Credentials
13
+ slugs:
14
+ - doc
15
+ - concept
16
+ - cli
17
+ - login
18
+ ---
19
+
20
+ # Comando 'login' del CLI de Intlayer
21
+
22
+ ---
23
+
24
+ ## Descripción
25
+
26
+ El comando `login` del CLI de Intlayer te permite autenticarte con el CMS de Intlayer. Este comando abre automáticamente tu navegador por defecto para completar el proceso de autenticación y recibir las credenciales necesarias (Client ID y Client Secret) para usar los servicios de Intlayer.
27
+
28
+ ## Uso
29
+
30
+ ```bash
31
+ npx intlayer login [options]
32
+ ```
33
+
34
+ o
35
+
36
+ ```bash
37
+ intlayer login [options]
38
+ ```
39
+
40
+ ## Opciones
41
+
42
+ ### `--cms-url <url>`
43
+
44
+ Especifica la URL del CMS de Intlayer con la que conectarse para la autenticación.
45
+
46
+ - **Tipo**: `string`
47
+ - **Por defecto**: El valor configurado en `intlayer.config.*` o `https://intlayer.org`
48
+ - **Ejemplo**:
49
+
50
+ ```bash
51
+ npx intlayer login --cms-url https://intlayer.org
52
+ ```
53
+
54
+ ### Opciones de configuración
55
+
56
+ También puedes usar opciones de configuración comunes:
57
+
58
+ - `--env-file <path>`: Ruta al archivo de entorno
59
+ - `-e, --env <env>`: Entorno de ejecución
60
+ - `--base-dir <dir>`: Directorio base del proyecto
61
+ - `--verbose`: Habilitar salida detallada (por defecto: true)
62
+ - `--prefix <prefix>`: Prefijo para los logs
63
+
64
+ ## Cómo funciona
65
+
66
+ 1. **Inicio de servidor local**: El comando inicia un servidor HTTP local en un puerto aleatorio para recibir las credenciales desde el CMS
67
+
68
+ Especifica la URL del CMS de Intlayer al que conectarse para la autenticación.
69
+
70
+ - **Tipo**: `string`
71
+ - **Por defecto**: El valor configurado en `intlayer.config.*` o `https://intlayer.org`
72
+ - **Ejemplo**:
73
+
74
+ ```bash
75
+ npx intlayer login --cms-url https://intlayer.org
76
+ ```
77
+
78
+ ### Opciones de configuración
79
+
80
+ También puedes usar las opciones de configuración comunes:
81
+
82
+ - `--env-file <path>`: Ruta al archivo de entorno
83
+ - `-e, --env <env>`: Entorno de ejecución
84
+ - `--base-dir <dir>`: Directorio base del proyecto
85
+ - `--verbose`: Habilitar salida detallada (por defecto: true)
86
+ - `--prefix <prefix>`: Prefijo para los logs
87
+
88
+ ## Cómo funciona
89
+
90
+ 1. **Inicio del servidor local**: El comando inicia un servidor HTTP local en un puerto aleatorio para recibir credenciales del CMS
91
+ 2. **Apertura del navegador**: El comando abre automáticamente tu navegador predeterminado en la URL de inicio de sesión del CMS
92
+ 3. **Autenticación**: Completa la autenticación en el navegador usando tu cuenta de Intlayer
93
+ 4. **Recepción de credenciales**: El servidor local recibe el Client ID y el Client Secret desde el CMS
94
+ 5. **Instrucciones**: El comando muestra instrucciones para configurar las credenciales en tu proyecto
95
+
96
+ ## Salida
97
+
98
+ Después de un inicio de sesión exitoso, el comando mostrará:
99
+
100
+ 1. **Las credenciales recibidas** (Client ID y Client Secret)
101
+ 2. **Instrucciones para el archivo `.env`**:
102
+
103
+ ```bash
104
+ INTLAYER_CLIENT_ID=your_client_id
105
+ INTLAYER_CLIENT_SECRET=your_client_secret
106
+ ```
107
+
108
+ 3. **Instrucciones para el archivo de configuración de Intlayer**:
109
+
110
+ ```typescript
111
+ {
112
+ editor: {
113
+ cmsURL: 'https://intlayer.org',
114
+ clientId: process.env.INTLAYER_CLIENT_ID,
115
+ clientSecret: process.env.INTLAYER_CLIENT_SECRET,
116
+ },
117
+ }
118
+ ```
119
+
120
+ ## Configuración manual
121
+
122
+ Si el navegador no se abre automáticamente, puedes visitar manualmente la URL que se muestra en el terminal.
123
+
124
+ ## Ejemplos
125
+
126
+ ### Iniciar sesión con URL de CMS personalizada
127
+
128
+ ```bash
129
+ npx intlayer login --cms-url https://custom-cms.example.com
130
+ ```
131
+
132
+ ### Iniciar sesión con archivo de entorno específico
133
+
134
+ ```bash
135
+ npx intlayer login --env-file .env.production
136
+ ```
137
+
138
+ ### Iniciar sesión en modo verbose
139
+
140
+ ```bash
141
+ npx intlayer login --verbose
142
+ ```
143
+
144
+ ## Solución de problemas
145
+
146
+ ### El navegador no se abre
147
+
148
+ Si el navegador no se abre automáticamente, copia la URL que se muestra en el terminal y ábrela manualmente en tu navegador.
149
+
150
+ ### Problemas de conexión
151
+
152
+ Si encuentras problemas de conexión, verifica:
153
+
154
+ 1. Que la URL del CMS sea correcta
155
+ 2. Que tu conexión a internet funcione correctamente
156
+ 3. Que no haya firewalls que bloqueen la conexión
157
+
158
+ ### Credenciales no recibidas
159
+
160
+ Si no se reciben las credenciales:
161
+
162
+ 1. Asegúrate de haber completado el proceso de autenticación en el navegador
163
+ 2. Verifica que el puerto local no esté bloqueado
164
+ 3. Intenta ejecutar el comando de nuevo
165
+
166
+ ## Próximos pasos
167
+
168
+ Después de completar el inicio de sesión:
169
+
170
+ 1. Añade las credenciales a tu archivo `.env`
171
+ 2. Configura tu archivo `intlayer.config.*` con las credenciales
172
+ 3. Usa los comandos de la CLI para gestionar tus diccionarios:
173
+ - [`npx intlayer push`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/push.md) - Enviar diccionarios al CMS
174
+ - [`npx intlayer pull`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/pull.md) - Extraer diccionarios del CMS
175
+
176
+ - [`npx intlayer fill`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/fill.md) - Rellenar traducciones faltantes
177
+
178
+ ## Véase también
179
+
180
+ - [Documentación del CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md)
181
+ - [Configuración de Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md)
182
+ - [Intlayer CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md)
@@ -14,6 +14,9 @@ slugs:
14
14
  - concept
15
15
  - configuration
16
16
  history:
17
+ - version: 7.5.0
18
+ date: 2025-12-17
19
+ changes: Añadir opción `buildMode`
17
20
  - version: 6.0.0
18
21
  date: 2025-09-16
19
22
  changes: Añadido modo de importación `live`
@@ -524,6 +527,15 @@ Las opciones de compilación se aplican a los plugins `@intlayer/babel` y `@intl
524
527
 
525
528
  #### Propiedades
526
529
 
530
+ - **mode**:
531
+ - _Tipo_: `'auto' | 'manual'`
532
+ - _Por defecto_: `'auto'`
533
+ - _Descripción_: Controla el modo de la compilación.
534
+ - _Ejemplo_: `'manual'`
535
+ - _Nota_: Si 'auto', la compilación se habilitará automáticamente cuando se construya la aplicación.
536
+ - _Nota_: Si 'manual', la compilación se establecerá solo cuando se ejecute el comando de compilación.
537
+ - _Nota_: Puede usarse para deshabilitar la compilación de diccionarios, por ejemplo cuando se debe evitar la ejecución en un entorno Node.js.
538
+
527
539
  - **optimize**:
528
540
  - _Tipo_: `boolean`
529
541
  - _Por defecto_: `process.env.NODE_ENV === 'production'`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-02-07
3
- updatedAt: 2025-09-20
3
+ updatedAt: 2025-12-13
4
4
  title: Archivo de Contenido
5
5
  description: Aprende a personalizar las extensiones para tus archivos de declaración de contenido. Sigue esta documentación para implementar condiciones de manera eficiente en tu proyecto.
6
6
  keywords:
@@ -12,6 +12,9 @@ slugs:
12
12
  - concept
13
13
  - content
14
14
  history:
15
+ - version: 7.5.0
16
+ date: 2025-12-13
17
+ changes: Añadido soporte para formatos ICU e i18next
15
18
  - version: 6.0.0
16
19
  date: 2025-09-20
17
20
  changes: Añadida documentación de campos
@@ -385,6 +388,26 @@ Array de cadenas para categorizar y organizar diccionarios. Las etiquetas propor
385
388
  }
386
389
  ```
387
390
 
391
+ #### `format` ('intlayer' | 'icu' | 'i18next')
392
+
393
+ Especifica el formateador a utilizar para el contenido del diccionario. Esto permite usar diferentes sintaxis de formateo de mensajes.
394
+
395
+ - `'intlayer'`: El formateador Intlayer por defecto.
396
+ - `'icu'`: Usa el formateo de mensajes ICU.
397
+ - `'i18next'`: Usa el formateo de mensajes i18next.
398
+
399
+ **Ejemplo:**
400
+
401
+ ```typescript
402
+ {
403
+ key: "my-dictionary",
404
+ format: "icu",
405
+ content: {
406
+ message: "Hello {name}, you have {count, plural, one {# message} other {# messages}}"
407
+ }
408
+ }
409
+ ```
410
+
388
411
  #### `locale` (LocalesValues)
389
412
 
390
413
  Transforma el diccionario en un diccionario por localización donde cada campo declarado en el contenido se transformará automáticamente en un nodo de traducción. Cuando esta propiedad está establecida:
@@ -2,7 +2,7 @@
2
2
  createdAt: 2024-03-07
3
3
  updatedAt: 2025-10-03
4
4
  title: Cómo traducir tu Astro – guía i18n 2025
5
- description: Aprende cómo agregar internacionalización (i18n) a tu aplicación Vite y React usando Intlayer. Sigue esta guía para hacer tu aplicación multilingüe.
5
+ description: Aprende cómo agregar internacionalización (i18n) a tu sitio web Astro usando Intlayer. Sigue esta guía para hacer tu sitio multilingüe.
6
6
  keywords:
7
7
  - Internacionalización
8
8
  - Documentación
@@ -2,7 +2,7 @@
2
2
  createdAt: 2024-08-11
3
3
  updatedAt: 2025-06-29
4
4
  title: Cómo traducir tu Express backend – guía i18n 2025
5
- description: Descubre cómo hacer que tu backend de vite sea multilingüe. Sigue la documentación para internacionalizar (i18n) y traducirlo.
5
+ description: Descubre cómo hacer que tu backend de Express sea multilingüe. Sigue la documentación para internacionalizar (i18n) y traducirlo.
6
6
  keywords:
7
7
  - Internacionalización
8
8
  - Documentación
@@ -2,7 +2,7 @@
2
2
  createdAt: 2025-09-09
3
3
  updatedAt: 2025-09-09
4
4
  title: Cómo traducir tu Nest backend – guía i18n 2025
5
- description: Descubre cómo hacer que tu backend vite sea multilingüe. Sigue la documentación para internacionalizar (i18n) y traducirlo.
5
+ description: Descubre cómo hacer que tu backend NestJS sea multilingüe. Sigue la documentación para internacionalizar (i18n) y traducirlo.
6
6
  keywords:
7
7
  - Internacionalización
8
8
  - Documentación
@@ -581,6 +581,7 @@ const config: IntlayerConfig = {
581
581
  },
582
582
  plugins: [
583
583
  syncJSON({
584
+ format: "i18next",
584
585
  source: ({ locale }) => `./locales/${locale}.json`,
585
586
  }),
586
587
  ],
@@ -419,6 +419,7 @@ const config: IntlayerConfig = {
419
419
  plugins: [
420
420
  // Mantén la estructura de carpetas por namespace sincronizada con Intlayer
421
421
  syncJSON({
422
+ format: "icu",
422
423
  source: ({ key, locale }) => `./locales/${locale}/${key}.json`,
423
424
  }),
424
425
  ],
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2025-09-09
3
+ updatedAt: 2025-12-11
4
4
  title: Cómo traducir tu Tanstack Start – guía i18n 2025
5
5
  description: Aprende cómo agregar internacionalización (i18n) a tu aplicación Tanstack Start usando Intlayer. Sigue esta guía completa para hacer que tu aplicación sea multilingüe con enrutamiento consciente de la configuración regional.
6
6
  keywords:
@@ -639,17 +639,6 @@ export function NotFoundComponent() {
639
639
  }
640
640
  ```
641
641
 
642
- ```tsx fileName="src/routes/__root.tsx"
643
- import { createRootRoute } from "@tanstack/react-router";
644
-
645
- // La ruta raíz sirve como el diseño de nivel superior
646
- // No maneja los 404 directamente - eso se delega a las rutas hijas
647
- // Esto mantiene la raíz simple y permite que las rutas conscientes de la configuración regional gestionen su propia lógica 404
648
- export const Route = createRootRoute({
649
- component: Outlet,
650
- });
651
- ```
652
-
653
642
  ```tsx fileName="src/routes/{-$locale}/route.tsx"
654
643
  import { createFileRoute, Outlet, redirect } from "@tanstack/react-router";
655
644
  import { validatePrefix } from "intlayer";
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-03-13
3
- updatedAt: 2025-10-05
3
+ updatedAt: 2025-12-13
4
4
  title: Plugin de sincronización JSON
5
5
  description: Sincroniza los diccionarios de Intlayer con archivos JSON i18n de terceros (i18next, next-intl, react-intl, vue-i18n y más). Mantén tu i18n existente mientras usas Intlayer para gestionar, traducir y probar tus mensajes.
6
6
  keywords:
@@ -24,12 +24,15 @@ slugs:
24
24
  - sync-json
25
25
  youtubeVideo: https://www.youtube.com/watch?v=MpGMxniDHNg
26
26
  history:
27
+ - version: 7.5.0
28
+ date: 2025-12-13
29
+ changes: Añadido soporte para formatos ICU e i18next
27
30
  - version: 6.1.6
28
31
  date: 2025-10-05
29
32
  changes: Documentación inicial del plugin de sincronización JSON
30
33
  ---
31
34
 
32
- ## Sincronización JSON (puentes i18n)
35
+ # Sincronización JSON (puentes i18n) - Sincronización JSON con soporte ICU / i18next
33
36
 
34
37
  <iframe title="Cómo mantener tus traducciones JSON sincronizadas con Intlayer" class="m-auto aspect-[16/9] w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
35
38
 
@@ -105,9 +108,27 @@ syncJSON({
105
108
  source: ({ key, locale }) => string, // requerido
106
109
  location?: string, // etiqueta opcional, por defecto: "plugin"
107
110
  priority?: number, // prioridad opcional para resolución de conflictos, por defecto: 0
111
+ format?: 'intlayer' | 'icu' | 'i18next', // formateador opcional, por defecto: 'intlayer'
108
112
  });
109
113
  ```
110
114
 
115
+ #### `format` ('intlayer' | 'icu' | 'i18next')
116
+
117
+ Especifica el formateador a utilizar para el contenido del diccionario al sincronizar archivos JSON. Esto permite usar diferentes sintaxis de formateo de mensajes compatibles con varias bibliotecas i18n.
118
+
119
+ - `'intlayer'`: El formateador Intlayer por defecto (por defecto).
120
+ - `'icu'`: Usa el formateo de mensajes ICU (compatible con bibliotecas como react-intl, vue-i18n).
121
+ - `'i18next'`: Usa el formateo de mensajes i18next (compatible con i18next, next-i18next, Solid-i18next).
122
+
123
+ **Ejemplo:**
124
+
125
+ ```ts
126
+ syncJSON({
127
+ source: ({ key, locale }) => `./locales/${locale}/${key}.json`,
128
+ format: "i18next", // Usar formateo i18next para compatibilidad
129
+ }),
130
+ ```
131
+
111
132
  ## Múltiples fuentes JSON y prioridad
112
133
 
113
134
  Puedes agregar múltiples plugins `syncJSON` para sincronizar diferentes fuentes JSON. Esto es útil cuando tienes múltiples bibliotecas i18n o diferentes estructuras JSON en tu proyecto.
@@ -134,6 +155,7 @@ export default defineConfig({
134
155
  plugins: [
135
156
  // Fuente JSON principal (mayor prioridad)
136
157
  syncJSON({
158
+ format: "i18next",
137
159
  source: ({ key, locale }) => `./locales/${locale}/${key}.json`,
138
160
  location: "main-translations",
139
161
  priority: 10,
@@ -141,6 +163,7 @@ export default defineConfig({
141
163
 
142
164
  // Fuente JSON de respaldo (menor prioridad)
143
165
  syncJSON({
166
+ format: "i18next",
144
167
  source: ({ locale }) => `./fallback-locales/${locale}.json`,
145
168
  location: "fallback-translations",
146
169
  priority: 5,
@@ -148,6 +171,7 @@ export default defineConfig({
148
171
 
149
172
  // Fuente JSON heredada (prioridad más baja)
150
173
  syncJSON({
174
+ format: "i18next",
151
175
  source: ({ locale }) => `/my/other/app/legacy/${locale}/messages.json`,
152
176
  location: "legacy-translations",
153
177
  priority: 1,
@@ -178,6 +202,7 @@ import { syncJSON } from "@intlayer/sync-json-plugin";
178
202
  export default {
179
203
  plugins: [
180
204
  syncJSON({
205
+ format: "i18next",
181
206
  source: ({ key, locale }) => `./locales/${locale}/${key}.json`,
182
207
  }),
183
208
  ],
@@ -103,6 +103,10 @@ Pour voir comment configurer les locales disponibles, ou d'autres paramètres, r
103
103
 
104
104
  ## Exécuter les commandes intlayer
105
105
 
106
+ ### Authentification
107
+
108
+ - **[Connexion](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/login.md)** - S'authentifier avec le CMS Intlayer et obtenir les identifiants d'accès
109
+
106
110
  ### Commandes principales
107
111
 
108
112
  - **[Construire les dictionnaires](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/build.md)** - Construisez vos dictionnaires à partir des fichiers de déclaration de contenu
@@ -144,6 +148,7 @@ Pour voir comment configurer les locales disponibles, ou d'autres paramètres, r
144
148
 
145
149
  ```json fileName="package.json"
146
150
  "scripts": {
151
+ "intlayer:login": "npx intlayer login",
147
152
  "intlayer:build": "npx intlayer build",
148
153
  "intlayer:watch": "npx intlayer build --watch",
149
154
  "intlayer:push": "npx intlayer push",
@@ -0,0 +1,185 @@
1
+ ---
2
+ createdAt: 2025-12-16
3
+ updatedAt: 2025-12-16
4
+ title: CLI - Connexion
5
+ description: Apprenez à utiliser la commande login de l'Intlayer CLI pour vous authentifier auprès du CMS Intlayer et obtenir des identifiants d'accès.
6
+ keywords:
7
+ - CLI
8
+ - Connexion
9
+ - Authentification
10
+ - CMS
11
+ - Intlayer
12
+ - Identifiants
13
+ slugs:
14
+ - doc
15
+ - concept
16
+ - cli
17
+ - login
18
+ ---
19
+
20
+ # Commande `login` de l'Intlayer CLI
21
+
22
+ ---
23
+
24
+ ## Description
25
+
26
+ La commande `login` de l'Intlayer CLI vous permet de vous authentifier auprès du CMS Intlayer. Cette commande ouvre automatiquement votre navigateur par défaut pour compléter le processus d'authentification et recevoir les identifiants nécessaires (Client ID et Client Secret) pour utiliser les services Intlayer.
27
+
28
+ ## Utilisation
29
+
30
+ ```bash
31
+ npx intlayer login [options]
32
+ ```
33
+
34
+ ou
35
+
36
+ ```bash
37
+ intlayer login [options]
38
+ ```
39
+
40
+ ## Options
41
+
42
+ ### `--cms-url <url>`
43
+
44
+ Spécifie l'URL du CMS Intlayer auquel se connecter pour l'authentification.
45
+
46
+ - **Type**: `string`
47
+ - **Par défaut**: la valeur configurée dans `intlayer.config.*` ou `https://intlayer.org`
48
+ - **Exemple**:
49
+
50
+ ```bash
51
+ npx intlayer login --cms-url https://intlayer.org
52
+ ```
53
+
54
+ ### Options de configuration
55
+
56
+ Vous pouvez également utiliser les options de configuration communes :
57
+
58
+ - `--env-file <path>` : Chemin vers le fichier d'environnement
59
+ - `-e, --env <env>` : Environnement d'exécution
60
+ - `--base-dir <dir>` : Répertoire de base du projet
61
+ - `--verbose` : Active la sortie détaillée (par défaut : true)
62
+ - `--prefix <prefix>` : Préfixe pour les logs
63
+
64
+ ## Fonctionnement
65
+
66
+ 1. **Démarrage d'un serveur local** : La commande démarre un serveur HTTP local sur un port aléatoire pour recevoir les identifiants depuis le CMS
67
+
68
+ Spécifiez l'URL du CMS Intlayer auquel se connecter pour l'authentification.
69
+
70
+ - **Type**: `string`
71
+ - **Par défaut**: La valeur configurée dans `intlayer.config.*` ou `https://intlayer.org`
72
+ - **Exemple**:
73
+
74
+ ```bash
75
+ npx intlayer login --cms-url https://intlayer.org
76
+ ```
77
+
78
+ ### Options de configuration
79
+
80
+ Vous pouvez également utiliser les options de configuration courantes :
81
+
82
+ - `--env-file <path>` : Chemin vers le fichier d'environnement
83
+ - `-e, --env <env>` : Environnement d'exécution
84
+ - `--base-dir <dir>` : Répertoire de base du projet
85
+ - `--verbose` : Activer la sortie détaillée (par défaut : true)
86
+ - `--prefix <prefix>` : Préfixe pour les logs
87
+
88
+ ## Fonctionnement
89
+
90
+ 1. **Démarrage du serveur local** : la commande lance un serveur HTTP local sur un port aléatoire pour recevoir les identifiants depuis le CMS
91
+ 2. **Ouverture du navigateur** : La commande ouvre automatiquement votre navigateur par défaut à l'URL de connexion du CMS
92
+ 3. **Authentification** : Complétez l'authentification dans le navigateur en utilisant votre compte Intlayer
93
+ 4. **Réception des identifiants** : Le serveur local reçoit le Client ID et le Client Secret depuis le CMS
94
+ 5. **Instructions** : La commande affiche des instructions pour configurer les identifiants dans votre projet
95
+
96
+ ## Sortie
97
+
98
+ Après une connexion réussie, la commande affichera :
99
+
100
+ 1. **Les identifiants reçus** (Client ID et Client Secret)
101
+ 2. **Instructions pour le fichier `.env`** :
102
+
103
+ ```bash
104
+ INTLAYER_CLIENT_ID=your_client_id
105
+ INTLAYER_CLIENT_SECRET=your_client_secret
106
+ ```
107
+
108
+ 3. **Instructions pour le fichier de configuration Intlayer** :
109
+
110
+ ```typescript
111
+ {
112
+ editor: {
113
+ cmsURL: 'https://intlayer.org',
114
+ clientId: process.env.INTLAYER_CLIENT_ID,
115
+ clientSecret: process.env.INTLAYER_CLIENT_SECRET,
116
+ },
117
+ }
118
+ clientId: process.env.INTLAYER_CLIENT_ID,
119
+ clientSecret: process.env.INTLAYER_CLIENT_SECRET,
120
+ },
121
+ }
122
+ ```
123
+
124
+ ## Configuration manuelle
125
+
126
+ Si le navigateur ne s'ouvre pas automatiquement, vous pouvez visiter manuellement l'URL affichée dans le terminal.
127
+
128
+ ## Exemples
129
+
130
+ ### Connexion avec une URL CMS personnalisée
131
+
132
+ ```bash
133
+ npx intlayer login --cms-url https://custom-cms.example.com
134
+ ```
135
+
136
+ ### Connexion avec un fichier d'environnement spécifique
137
+
138
+ ```bash
139
+ npx intlayer login --env-file .env.production
140
+ ```
141
+
142
+ ### Connexion en mode verbeux
143
+
144
+ ```bash
145
+ npx intlayer login --verbose
146
+ ```
147
+
148
+ ## Dépannage
149
+
150
+ ### Le navigateur ne s'ouvre pas
151
+
152
+ Si le navigateur ne s'ouvre pas automatiquement, copiez l'URL affichée dans le terminal et ouvrez-la manuellement dans votre navigateur.
153
+
154
+ ### Problèmes de connexion
155
+
156
+ Si vous rencontrez des problèmes de connexion, vérifiez :
157
+
158
+ 1. Que l'URL du CMS est correcte
159
+ 2. Que votre connexion internet fonctionne correctement
160
+ 3. Qu'aucun pare-feu ne bloque la connexion
161
+
162
+ ### Identifiants non reçus
163
+
164
+ Si les identifiants ne sont pas reçus :
165
+
166
+ 1. Assurez-vous d'avoir complété le processus d'authentification dans le navigateur
167
+ 2. Vérifiez que le port local n'est pas bloqué
168
+ 3. Réessayez la commande
169
+
170
+ ## Étapes suivantes
171
+
172
+ Après avoir terminé la connexion :
173
+
174
+ 1. Ajoutez les identifiants à votre fichier `.env`
175
+ 2. Configurez votre fichier `intlayer.config.*` avec les identifiants
176
+ 3. Utilisez les commandes CLI pour gérer vos dictionnaires :
177
+ - [`npx intlayer push`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/push.md) - Pousser les dictionnaires vers le CMS
178
+ - [`npx intlayer pull`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/pull.md) - Récupérer les dictionnaires depuis le CMS
179
+ - [`npx intlayer fill`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/fill.md) - Remplir les traductions manquantes
180
+
181
+ ## Voir aussi
182
+
183
+ - [Documentation CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/index.md)
184
+ - [Configuration d'Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/configuration.md)
185
+ - [CMS Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_CMS.md)
@@ -14,6 +14,9 @@ slugs:
14
14
  - concept
15
15
  - configuration
16
16
  history:
17
+ - version: 7.5.0
18
+ date: 2025-12-17
19
+ changes: Ajout de l'option `buildMode`
17
20
  - version: 6.0.0
18
21
  date: 2025-09-16
19
22
  changes: Ajout du mode d'importation `live`
@@ -528,6 +531,15 @@ Les options de compilation s'appliquent aux plugins `@intlayer/babel` et `@intla
528
531
 
529
532
  #### Propriétés
530
533
 
534
+ - **mode** :
535
+ - _Type_ : `'auto' | 'manual'`
536
+ - _Par défaut_ : `'auto'`
537
+ - _Description_ : Contrôle le mode de la compilation.
538
+ - _Exemple_ : `'manual'`
539
+ - _Note_ : Si 'auto', la compilation sera activée automatiquement lors de la construction de l'application.
540
+ - _Note_ : Si 'manual', la compilation sera définie uniquement lorsque la commande de compilation est exécutée.
541
+ - _Note_ : Peut être utilisé pour désactiver la compilation des dictionnaires, par exemple lorsque l'exécution dans un environnement Node.js doit être évitée.
542
+
531
543
  - **optimize** :
532
544
  - _Type_ : `boolean`
533
545
  - _Par défaut_ : `process.env.NODE_ENV === 'production'`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-02-07
3
- updatedAt: 2025-09-20
3
+ updatedAt: 2025-12-13
4
4
  title: Fichier de Contenu
5
5
  description: Apprenez à personnaliser les extensions pour vos fichiers de déclaration de contenu. Suivez cette documentation pour implémenter efficacement des conditions dans votre projet.
6
6
  keywords:
@@ -12,6 +12,9 @@ slugs:
12
12
  - concept
13
13
  - content
14
14
  history:
15
+ - version: 7.5.0
16
+ date: 2025-12-13
17
+ changes: Ajout du support des formats ICU et i18next
15
18
  - version: 6.0.0
16
19
  date: 2025-09-20
17
20
  changes: Ajout de la documentation des champs
@@ -384,6 +387,26 @@ Tableau de chaînes de caractères pour catégoriser et organiser les dictionnai
384
387
  }
385
388
  ```
386
389
 
390
+ #### `format` ('intlayer' | 'icu' | 'i18next')
391
+
392
+ Spécifie le formateur à utiliser pour le contenu du dictionnaire. Cela permet d'utiliser différentes syntaxes de formatage de messages.
393
+
394
+ - `'intlayer'`: Le formateur Intlayer par défaut.
395
+ - `'icu'`: Utilise le formatage de messages ICU.
396
+ - `'i18next'`: Utilise le formatage de messages i18next.
397
+
398
+ **Exemple :**
399
+
400
+ ```typescript
401
+ {
402
+ key: "my-dictionary",
403
+ format: "icu",
404
+ content: {
405
+ message: "Hello {name}, you have {count, plural, one {# message} other {# messages}}"
406
+ }
407
+ }
408
+ ```
409
+
387
410
  #### `locale` (LocalesValues)
388
411
 
389
412
  Transforme le dictionnaire en un dictionnaire par locale où chaque champ déclaré dans le contenu sera automatiquement transformé en un nœud de traduction. Lorsque cette propriété est définie :