@intlayer/docs 8.12.5-canary.0 → 9.0.0-canary.2

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 (411) hide show
  1. package/dist/cjs/generated/docs.entry.cjs +320 -0
  2. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  3. package/dist/esm/generated/docs.entry.mjs +320 -0
  4. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  5. package/dist/types/generated/docs.entry.d.ts +16 -0
  6. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  7. package/docs/ar/cli/doc-review.md +110 -4
  8. package/docs/ar/cli/index.md +1 -1
  9. package/docs/ar/cli/scan.md +1 -1
  10. package/docs/ar/configuration.md +36 -3
  11. package/docs/ar/dictionary/condition.md +167 -5
  12. package/docs/ar/dictionary/enumeration.md +540 -6
  13. package/docs/ar/dictionary/file.md +151 -1
  14. package/docs/ar/dictionary/gender.md +168 -7
  15. package/docs/ar/dictionary/nesting.md +173 -65
  16. package/docs/ar/dictionary/plurial.md +174 -5
  17. package/docs/ar/dictionary/translation.md +156 -2
  18. package/docs/ar/dynamic_dictionaries/collections.md +1 -1
  19. package/docs/ar/dynamic_dictionaries/dynamic_content.md +1 -1
  20. package/docs/ar/dynamic_dictionaries/index.md +1 -1
  21. package/docs/ar/dynamic_dictionaries/variants.md +1 -1
  22. package/docs/ar/intlayer_with_vite+react.md +31 -31
  23. package/docs/ar/releases/v8.md +187 -1
  24. package/docs/ar/releases/v9.md +232 -0
  25. package/docs/bn/cli/index.md +1 -1
  26. package/docs/bn/cli/scan.md +1 -1
  27. package/docs/bn/configuration.md +36 -3
  28. package/docs/cs/cli/index.md +1 -1
  29. package/docs/cs/cli/scan.md +1 -1
  30. package/docs/cs/configuration.md +35 -2
  31. package/docs/de/cli/doc-review.md +110 -4
  32. package/docs/de/cli/index.md +1 -1
  33. package/docs/de/cli/scan.md +1 -1
  34. package/docs/de/configuration.md +35 -2
  35. package/docs/de/dictionary/condition.md +167 -5
  36. package/docs/de/dictionary/enumeration.md +777 -7
  37. package/docs/de/dictionary/file.md +151 -1
  38. package/docs/de/dictionary/gender.md +168 -7
  39. package/docs/de/dictionary/nesting.md +173 -65
  40. package/docs/de/dictionary/plurial.md +347 -7
  41. package/docs/de/dictionary/translation.md +156 -2
  42. package/docs/de/dynamic_dictionaries/collections.md +1 -1
  43. package/docs/de/dynamic_dictionaries/dynamic_content.md +1 -1
  44. package/docs/de/dynamic_dictionaries/index.md +1 -1
  45. package/docs/de/dynamic_dictionaries/variants.md +1 -1
  46. package/docs/de/intlayer_with_vite+react.md +48 -48
  47. package/docs/de/migration_from_i18next_to_intlayer.md +1 -1
  48. package/docs/de/migration_from_next-i18next_to_intlayer.md +1 -1
  49. package/docs/de/migration_from_next-intl_to_intlayer.md +1 -1
  50. package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  51. package/docs/de/migration_from_react-i18next_to_intlayer.md +1 -1
  52. package/docs/de/migration_from_vue-i18n_to_intlayer.md +1 -1
  53. package/docs/de/releases/v8.md +197 -1
  54. package/docs/de/releases/v9.md +232 -0
  55. package/docs/en/CI_CD.md +7 -7
  56. package/docs/en/cli/ci.md +62 -8
  57. package/docs/en/cli/doc-review.md +110 -4
  58. package/docs/en/cli/index.md +1 -1
  59. package/docs/en/cli/scan.md +1 -1
  60. package/docs/en/compat/i18n-js.md +44 -0
  61. package/docs/en/compat/i18next.md +59 -0
  62. package/docs/en/compat/index.md +51 -0
  63. package/docs/en/compat/lingui.md +44 -0
  64. package/docs/en/compat/next-i18next.md +57 -0
  65. package/docs/en/compat/next-intl.md +59 -0
  66. package/docs/en/compat/next-translate.md +45 -0
  67. package/docs/en/compat/ngx-translate.md +45 -0
  68. package/docs/en/compat/nuxtjs-i18n.md +46 -0
  69. package/docs/en/compat/polyglot.md +45 -0
  70. package/docs/en/compat/react-i18next.md +58 -0
  71. package/docs/en/compat/react-intl.md +55 -0
  72. package/docs/en/compat/svelte-i18n.md +47 -0
  73. package/docs/en/compat/transloco.md +45 -0
  74. package/docs/en/compat/vue-i18n.md +58 -0
  75. package/docs/en/configuration.md +35 -2
  76. package/docs/en/dictionary/condition.md +163 -1
  77. package/docs/en/dictionary/enumeration.md +309 -7
  78. package/docs/en/dictionary/file.md +151 -1
  79. package/docs/en/dictionary/gender.md +162 -1
  80. package/docs/en/dictionary/nesting.md +173 -9
  81. package/docs/en/dictionary/plurial.md +155 -10
  82. package/docs/en/dictionary/translation.md +145 -52
  83. package/docs/en/dynamic_dictionaries/collections.md +1 -1
  84. package/docs/en/dynamic_dictionaries/dynamic_content.md +1 -1
  85. package/docs/en/dynamic_dictionaries/index.md +1 -1
  86. package/docs/en/dynamic_dictionaries/variants.md +1 -1
  87. package/docs/en/migration_from_i18next_to_intlayer.md +1 -1
  88. package/docs/en/migration_from_next-i18next_to_intlayer.md +1 -1
  89. package/docs/en/migration_from_next-intl_to_intlayer.md +1 -1
  90. package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  91. package/docs/en/migration_from_react-i18next_to_intlayer.md +1 -1
  92. package/docs/en/migration_from_vue-i18n_to_intlayer.md +1 -1
  93. package/docs/en/releases/v8.md +187 -1
  94. package/docs/en/releases/v9.md +220 -0
  95. package/docs/en-GB/cli/doc-review.md +110 -4
  96. package/docs/en-GB/cli/index.md +1 -1
  97. package/docs/en-GB/cli/scan.md +1 -1
  98. package/docs/en-GB/configuration.md +35 -2
  99. package/docs/en-GB/dictionary/condition.md +364 -1
  100. package/docs/en-GB/dictionary/enumeration.md +577 -5
  101. package/docs/en-GB/dictionary/file.md +317 -1
  102. package/docs/en-GB/dictionary/gender.md +375 -2
  103. package/docs/en-GB/dictionary/nesting.md +368 -71
  104. package/docs/en-GB/dictionary/plurial.md +347 -7
  105. package/docs/en-GB/dictionary/translation.md +320 -32
  106. package/docs/en-GB/dynamic_dictionaries/collections.md +1 -1
  107. package/docs/en-GB/dynamic_dictionaries/dynamic_content.md +1 -1
  108. package/docs/en-GB/dynamic_dictionaries/index.md +1 -1
  109. package/docs/en-GB/dynamic_dictionaries/variants.md +1 -1
  110. package/docs/en-GB/releases/v8.md +1 -1
  111. package/docs/en-GB/releases/v9.md +220 -0
  112. package/docs/es/cli/doc-review.md +110 -4
  113. package/docs/es/cli/index.md +1 -1
  114. package/docs/es/cli/scan.md +1 -1
  115. package/docs/es/configuration.md +36 -3
  116. package/docs/es/dictionary/condition.md +167 -5
  117. package/docs/es/dictionary/enumeration.md +537 -12
  118. package/docs/es/dictionary/file.md +151 -1
  119. package/docs/es/dictionary/gender.md +168 -7
  120. package/docs/es/dictionary/nesting.md +173 -65
  121. package/docs/es/dictionary/plurial.md +347 -7
  122. package/docs/es/dictionary/translation.md +156 -2
  123. package/docs/es/dynamic_dictionaries/collections.md +1 -1
  124. package/docs/es/dynamic_dictionaries/dynamic_content.md +1 -1
  125. package/docs/es/dynamic_dictionaries/index.md +1 -1
  126. package/docs/es/dynamic_dictionaries/variants.md +1 -1
  127. package/docs/es/migration_from_i18next_to_intlayer.md +1 -1
  128. package/docs/es/migration_from_next-i18next_to_intlayer.md +1 -1
  129. package/docs/es/migration_from_next-intl_to_intlayer.md +1 -1
  130. package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  131. package/docs/es/migration_from_react-i18next_to_intlayer.md +1 -1
  132. package/docs/es/migration_from_vue-i18n_to_intlayer.md +1 -1
  133. package/docs/es/releases/v8.md +187 -1
  134. package/docs/es/releases/v9.md +228 -0
  135. package/docs/fr/cli/doc-review.md +110 -4
  136. package/docs/fr/cli/index.md +1 -1
  137. package/docs/fr/cli/scan.md +1 -1
  138. package/docs/fr/configuration.md +49 -16
  139. package/docs/fr/dictionary/condition.md +369 -6
  140. package/docs/fr/dictionary/enumeration.md +540 -6
  141. package/docs/fr/dictionary/file.md +151 -1
  142. package/docs/fr/dictionary/gender.md +168 -7
  143. package/docs/fr/dictionary/nesting.md +357 -86
  144. package/docs/fr/dictionary/plurial.md +174 -5
  145. package/docs/fr/dictionary/translation.md +156 -2
  146. package/docs/fr/dynamic_dictionaries/collections.md +1 -1
  147. package/docs/fr/dynamic_dictionaries/dynamic_content.md +1 -1
  148. package/docs/fr/dynamic_dictionaries/index.md +1 -1
  149. package/docs/fr/dynamic_dictionaries/variants.md +1 -1
  150. package/docs/fr/migration_from_i18next_to_intlayer.md +1 -1
  151. package/docs/fr/migration_from_next-i18next_to_intlayer.md +1 -1
  152. package/docs/fr/migration_from_next-intl_to_intlayer.md +1 -1
  153. package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  154. package/docs/fr/migration_from_react-i18next_to_intlayer.md +1 -1
  155. package/docs/fr/migration_from_vue-i18n_to_intlayer.md +1 -1
  156. package/docs/fr/releases/v8.md +187 -1
  157. package/docs/fr/releases/v9.md +220 -0
  158. package/docs/hi/cli/doc-review.md +110 -4
  159. package/docs/hi/cli/index.md +1 -1
  160. package/docs/hi/cli/scan.md +1 -1
  161. package/docs/hi/configuration.md +49 -16
  162. package/docs/hi/dictionary/condition.md +167 -5
  163. package/docs/hi/dictionary/enumeration.md +540 -6
  164. package/docs/hi/dictionary/file.md +151 -1
  165. package/docs/hi/dictionary/gender.md +168 -7
  166. package/docs/hi/dictionary/nesting.md +173 -65
  167. package/docs/hi/dictionary/plurial.md +174 -5
  168. package/docs/hi/dictionary/translation.md +155 -5
  169. package/docs/hi/dynamic_dictionaries/collections.md +1 -1
  170. package/docs/hi/dynamic_dictionaries/dynamic_content.md +1 -1
  171. package/docs/hi/dynamic_dictionaries/index.md +1 -1
  172. package/docs/hi/dynamic_dictionaries/variants.md +1 -1
  173. package/docs/hi/releases/v8.md +188 -2
  174. package/docs/hi/releases/v9.md +232 -0
  175. package/docs/id/cli/doc-review.md +110 -4
  176. package/docs/id/cli/index.md +1 -1
  177. package/docs/id/cli/scan.md +1 -1
  178. package/docs/id/configuration.md +35 -2
  179. package/docs/id/dictionary/condition.md +167 -5
  180. package/docs/id/dictionary/enumeration.md +540 -6
  181. package/docs/id/dictionary/file.md +318 -2
  182. package/docs/id/dictionary/gender.md +381 -8
  183. package/docs/id/dictionary/nesting.md +357 -86
  184. package/docs/id/dictionary/plurial.md +174 -5
  185. package/docs/id/dictionary/translation.md +156 -2
  186. package/docs/id/dynamic_dictionaries/collections.md +1 -1
  187. package/docs/id/dynamic_dictionaries/dynamic_content.md +1 -1
  188. package/docs/id/dynamic_dictionaries/index.md +1 -1
  189. package/docs/id/dynamic_dictionaries/variants.md +1 -1
  190. package/docs/id/releases/v8.md +191 -2
  191. package/docs/id/releases/v9.md +232 -0
  192. package/docs/it/cli/doc-review.md +110 -4
  193. package/docs/it/cli/index.md +1 -1
  194. package/docs/it/cli/scan.md +1 -1
  195. package/docs/it/configuration.md +49 -16
  196. package/docs/it/dictionary/condition.md +167 -5
  197. package/docs/it/dictionary/enumeration.md +540 -6
  198. package/docs/it/dictionary/file.md +318 -2
  199. package/docs/it/dictionary/gender.md +168 -7
  200. package/docs/it/dictionary/nesting.md +173 -65
  201. package/docs/it/dictionary/plurial.md +347 -7
  202. package/docs/it/dictionary/translation.md +156 -2
  203. package/docs/it/dynamic_dictionaries/collections.md +1 -1
  204. package/docs/it/dynamic_dictionaries/dynamic_content.md +1 -1
  205. package/docs/it/dynamic_dictionaries/index.md +1 -1
  206. package/docs/it/dynamic_dictionaries/variants.md +1 -1
  207. package/docs/it/intlayer_with_vite+react.md +0 -48
  208. package/docs/it/migration_from_i18next_to_intlayer.md +1 -1
  209. package/docs/it/migration_from_next-i18next_to_intlayer.md +1 -1
  210. package/docs/it/migration_from_next-intl_to_intlayer.md +1 -1
  211. package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  212. package/docs/it/migration_from_react-i18next_to_intlayer.md +1 -1
  213. package/docs/it/migration_from_vue-i18n_to_intlayer.md +1 -1
  214. package/docs/it/releases/v8.md +200 -2
  215. package/docs/it/releases/v9.md +232 -0
  216. package/docs/ja/cli/doc-review.md +110 -4
  217. package/docs/ja/cli/index.md +1 -1
  218. package/docs/ja/cli/scan.md +1 -1
  219. package/docs/ja/configuration.md +50 -17
  220. package/docs/ja/dictionary/condition.md +167 -5
  221. package/docs/ja/dictionary/enumeration.md +540 -6
  222. package/docs/ja/dictionary/file.md +151 -1
  223. package/docs/ja/dictionary/gender.md +168 -7
  224. package/docs/ja/dictionary/nesting.md +173 -65
  225. package/docs/ja/dictionary/plurial.md +174 -5
  226. package/docs/ja/dictionary/translation.md +169 -8
  227. package/docs/ja/dynamic_dictionaries/collections.md +1 -1
  228. package/docs/ja/dynamic_dictionaries/dynamic_content.md +1 -1
  229. package/docs/ja/dynamic_dictionaries/index.md +1 -1
  230. package/docs/ja/dynamic_dictionaries/variants.md +1 -1
  231. package/docs/ja/intlayer_with_vite+react.md +290 -0
  232. package/docs/ja/migration_from_i18next_to_intlayer.md +1 -1
  233. package/docs/ja/migration_from_next-i18next_to_intlayer.md +1 -1
  234. package/docs/ja/migration_from_next-intl_to_intlayer.md +1 -1
  235. package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  236. package/docs/ja/migration_from_react-i18next_to_intlayer.md +1 -1
  237. package/docs/ja/migration_from_vue-i18n_to_intlayer.md +1 -1
  238. package/docs/ja/releases/v8.md +193 -4
  239. package/docs/ja/releases/v9.md +232 -0
  240. package/docs/ko/cli/doc-review.md +110 -4
  241. package/docs/ko/cli/index.md +1 -1
  242. package/docs/ko/cli/scan.md +1 -1
  243. package/docs/ko/configuration.md +49 -16
  244. package/docs/ko/dictionary/condition.md +167 -5
  245. package/docs/ko/dictionary/enumeration.md +540 -6
  246. package/docs/ko/dictionary/file.md +151 -1
  247. package/docs/ko/dictionary/gender.md +168 -7
  248. package/docs/ko/dictionary/nesting.md +173 -65
  249. package/docs/ko/dictionary/plurial.md +174 -5
  250. package/docs/ko/dictionary/translation.md +169 -8
  251. package/docs/ko/dynamic_dictionaries/collections.md +1 -1
  252. package/docs/ko/dynamic_dictionaries/dynamic_content.md +1 -1
  253. package/docs/ko/dynamic_dictionaries/index.md +1 -1
  254. package/docs/ko/dynamic_dictionaries/variants.md +1 -1
  255. package/docs/ko/intlayer_with_vite+react.md +48 -490
  256. package/docs/ko/migration_from_i18next_to_intlayer.md +1 -1
  257. package/docs/ko/migration_from_next-i18next_to_intlayer.md +1 -1
  258. package/docs/ko/migration_from_next-intl_to_intlayer.md +1 -1
  259. package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  260. package/docs/ko/migration_from_react-i18next_to_intlayer.md +1 -1
  261. package/docs/ko/migration_from_vue-i18n_to_intlayer.md +1 -1
  262. package/docs/ko/releases/v8.md +192 -1
  263. package/docs/ko/releases/v9.md +232 -0
  264. package/docs/nl/cli/index.md +1 -1
  265. package/docs/nl/cli/scan.md +1 -1
  266. package/docs/nl/configuration.md +36 -3
  267. package/docs/pl/cli/doc-review.md +110 -4
  268. package/docs/pl/cli/index.md +1 -1
  269. package/docs/pl/cli/scan.md +1 -1
  270. package/docs/pl/configuration.md +35 -2
  271. package/docs/pl/dictionary/condition.md +167 -5
  272. package/docs/pl/dictionary/enumeration.md +540 -6
  273. package/docs/pl/dictionary/file.md +318 -2
  274. package/docs/pl/dictionary/gender.md +168 -7
  275. package/docs/pl/dictionary/nesting.md +173 -65
  276. package/docs/pl/dictionary/plurial.md +174 -5
  277. package/docs/pl/dictionary/translation.md +156 -2
  278. package/docs/pl/dynamic_dictionaries/collections.md +1 -1
  279. package/docs/pl/dynamic_dictionaries/dynamic_content.md +1 -1
  280. package/docs/pl/dynamic_dictionaries/index.md +1 -1
  281. package/docs/pl/dynamic_dictionaries/variants.md +1 -1
  282. package/docs/pl/releases/v8.md +188 -2
  283. package/docs/pl/releases/v9.md +232 -0
  284. package/docs/pt/cli/doc-review.md +110 -4
  285. package/docs/pt/cli/index.md +1 -1
  286. package/docs/pt/cli/scan.md +1 -1
  287. package/docs/pt/configuration.md +49 -16
  288. package/docs/pt/dictionary/condition.md +167 -5
  289. package/docs/pt/dictionary/enumeration.md +540 -6
  290. package/docs/pt/dictionary/file.md +151 -1
  291. package/docs/pt/dictionary/gender.md +168 -7
  292. package/docs/pt/dictionary/nesting.md +173 -65
  293. package/docs/pt/dictionary/plurial.md +347 -7
  294. package/docs/pt/dictionary/translation.md +156 -2
  295. package/docs/pt/dynamic_dictionaries/collections.md +1 -1
  296. package/docs/pt/dynamic_dictionaries/dynamic_content.md +1 -1
  297. package/docs/pt/dynamic_dictionaries/index.md +1 -1
  298. package/docs/pt/dynamic_dictionaries/variants.md +1 -1
  299. package/docs/pt/migration_from_i18next_to_intlayer.md +1 -1
  300. package/docs/pt/migration_from_next-i18next_to_intlayer.md +1 -1
  301. package/docs/pt/migration_from_next-intl_to_intlayer.md +1 -1
  302. package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  303. package/docs/pt/migration_from_react-i18next_to_intlayer.md +1 -1
  304. package/docs/pt/migration_from_vue-i18n_to_intlayer.md +1 -1
  305. package/docs/pt/releases/v8.md +187 -1
  306. package/docs/pt/releases/v9.md +232 -0
  307. package/docs/ru/cli/doc-review.md +110 -4
  308. package/docs/ru/cli/index.md +1 -1
  309. package/docs/ru/cli/scan.md +1 -1
  310. package/docs/ru/configuration.md +35 -2
  311. package/docs/ru/dictionary/condition.md +366 -39
  312. package/docs/ru/dictionary/enumeration.md +777 -7
  313. package/docs/ru/dictionary/file.md +318 -2
  314. package/docs/ru/dictionary/gender.md +168 -7
  315. package/docs/ru/dictionary/nesting.md +368 -71
  316. package/docs/ru/dictionary/plurial.md +347 -7
  317. package/docs/ru/dictionary/translation.md +321 -33
  318. package/docs/ru/dynamic_dictionaries/collections.md +1 -1
  319. package/docs/ru/dynamic_dictionaries/dynamic_content.md +1 -1
  320. package/docs/ru/dynamic_dictionaries/index.md +1 -1
  321. package/docs/ru/dynamic_dictionaries/variants.md +1 -1
  322. package/docs/ru/intlayer_with_vite+react.md +48 -47
  323. package/docs/ru/migration_from_i18next_to_intlayer.md +1 -1
  324. package/docs/ru/migration_from_next-i18next_to_intlayer.md +1 -1
  325. package/docs/ru/migration_from_next-intl_to_intlayer.md +1 -1
  326. package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  327. package/docs/ru/migration_from_react-i18next_to_intlayer.md +1 -1
  328. package/docs/ru/migration_from_vue-i18n_to_intlayer.md +1 -1
  329. package/docs/ru/releases/v8.md +194 -2
  330. package/docs/ru/releases/v9.md +232 -0
  331. package/docs/tr/cli/doc-review.md +110 -4
  332. package/docs/tr/cli/index.md +1 -1
  333. package/docs/tr/cli/scan.md +1 -1
  334. package/docs/tr/configuration.md +35 -2
  335. package/docs/tr/dictionary/condition.md +167 -5
  336. package/docs/tr/dictionary/enumeration.md +540 -6
  337. package/docs/tr/dictionary/file.md +151 -1
  338. package/docs/tr/dictionary/gender.md +168 -7
  339. package/docs/tr/dictionary/nesting.md +173 -65
  340. package/docs/tr/dictionary/plurial.md +174 -5
  341. package/docs/tr/dictionary/translation.md +156 -2
  342. package/docs/tr/dynamic_dictionaries/collections.md +1 -1
  343. package/docs/tr/dynamic_dictionaries/dynamic_content.md +1 -1
  344. package/docs/tr/dynamic_dictionaries/index.md +1 -1
  345. package/docs/tr/dynamic_dictionaries/variants.md +1 -1
  346. package/docs/tr/migration_from_i18next_to_intlayer.md +1 -1
  347. package/docs/tr/migration_from_next-i18next_to_intlayer.md +1 -1
  348. package/docs/tr/migration_from_next-intl_to_intlayer.md +1 -1
  349. package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  350. package/docs/tr/migration_from_react-i18next_to_intlayer.md +1 -1
  351. package/docs/tr/migration_from_vue-i18n_to_intlayer.md +1 -1
  352. package/docs/tr/releases/v8.md +187 -1
  353. package/docs/tr/releases/v9.md +232 -0
  354. package/docs/uk/cli/doc-review.md +110 -4
  355. package/docs/uk/cli/index.md +1 -1
  356. package/docs/uk/cli/scan.md +1 -1
  357. package/docs/uk/configuration.md +35 -2
  358. package/docs/uk/dictionary/condition.md +167 -5
  359. package/docs/uk/dictionary/enumeration.md +540 -6
  360. package/docs/uk/dictionary/file.md +318 -2
  361. package/docs/uk/dictionary/gender.md +381 -8
  362. package/docs/uk/dictionary/nesting.md +173 -65
  363. package/docs/uk/dictionary/plurial.md +174 -5
  364. package/docs/uk/dictionary/translation.md +156 -2
  365. package/docs/uk/dynamic_dictionaries/collections.md +1 -1
  366. package/docs/uk/dynamic_dictionaries/dynamic_content.md +1 -1
  367. package/docs/uk/dynamic_dictionaries/index.md +1 -1
  368. package/docs/uk/dynamic_dictionaries/variants.md +1 -1
  369. package/docs/uk/releases/v8.md +191 -3
  370. package/docs/uk/releases/v9.md +232 -0
  371. package/docs/ur/cli/index.md +1 -1
  372. package/docs/ur/cli/scan.md +1 -1
  373. package/docs/ur/configuration.md +36 -3
  374. package/docs/vi/cli/doc-review.md +110 -4
  375. package/docs/vi/cli/index.md +1 -1
  376. package/docs/vi/cli/scan.md +1 -1
  377. package/docs/vi/configuration.md +50 -17
  378. package/docs/vi/dictionary/condition.md +167 -5
  379. package/docs/vi/dictionary/enumeration.md +591 -14
  380. package/docs/vi/dictionary/file.md +318 -2
  381. package/docs/vi/dictionary/gender.md +168 -7
  382. package/docs/vi/dictionary/nesting.md +357 -86
  383. package/docs/vi/dictionary/plurial.md +174 -5
  384. package/docs/vi/dictionary/translation.md +156 -2
  385. package/docs/vi/dynamic_dictionaries/collections.md +1 -1
  386. package/docs/vi/dynamic_dictionaries/dynamic_content.md +1 -1
  387. package/docs/vi/dynamic_dictionaries/index.md +1 -1
  388. package/docs/vi/dynamic_dictionaries/variants.md +1 -1
  389. package/docs/vi/releases/v8.md +190 -1
  390. package/docs/vi/releases/v9.md +232 -0
  391. package/docs/zh/cli/doc-review.md +110 -4
  392. package/docs/zh/cli/index.md +1 -1
  393. package/docs/zh/cli/scan.md +1 -1
  394. package/docs/zh/configuration.md +49 -16
  395. package/docs/zh/dictionary/condition.md +167 -5
  396. package/docs/zh/dictionary/enumeration.md +540 -6
  397. package/docs/zh/dictionary/file.md +151 -1
  398. package/docs/zh/dictionary/gender.md +168 -7
  399. package/docs/zh/dictionary/nesting.md +173 -65
  400. package/docs/zh/dictionary/plurial.md +174 -5
  401. package/docs/zh/dictionary/translation.md +169 -8
  402. package/docs/zh/dynamic_dictionaries/collections.md +1 -1
  403. package/docs/zh/dynamic_dictionaries/dynamic_content.md +1 -1
  404. package/docs/zh/dynamic_dictionaries/index.md +1 -1
  405. package/docs/zh/dynamic_dictionaries/variants.md +1 -1
  406. package/docs/zh/intlayer_with_vite+react.md +48 -288
  407. package/docs/zh/releases/v8.md +1 -1
  408. package/docs/zh/releases/v9.md +220 -0
  409. package/package.json +7 -7
  410. package/src/generated/docs.entry.ts +320 -0
  411. package/dist/esm/_virtual/_rolldown/runtime.mjs +0 -8
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-22
3
- updatedAt: 2026-01-26
3
+ updatedAt: 2026-06-14
4
4
  title: Nuevo Intlayer v8 - ¿Qué hay de nuevo?
5
5
  description: Descubre qué hay de nuevo en Intlayer v8. Mejoras importantes en la experiencia del desarrollador, validación de contenido y gestión de diccionarios.
6
6
  keywords:
@@ -409,6 +409,16 @@ Para más detalles, consulte la [Documentación de Contenido HTML](https://githu
409
409
 
410
410
  ---
411
411
 
412
+ ## Archivos de Contenido YAML y Markdown (v8.10.0)
413
+
414
+ Ahora puede declarar contenido directamente utilizando las extensiones de archivo `.content.md` y `.content.yaml`. Esto es perfecto para contenido de formato largo, blogs, documentación y políticas de privacidad.
415
+
416
+ Estos archivos son completamente editables desde el Editor Visual, lo que proporciona un flujo de trabajo optimizado para los miembros del equipo no técnicos.
417
+
418
+ Para más detalles, consulte la [Documentación de Archivos de Contenido YAML](https://intlayer.org/doc/concept/content#yaml-content-file) y la [Documentación de Archivos de Contenido Markdown](https://intlayer.org/doc/concept/content/markdown).
419
+
420
+ ---
421
+
412
422
  ## Reescrituras de URL personalizadas
413
423
 
414
424
  Intlayer v8 introduce el soporte para **Reescrituras de URL personalizadas**, lo que le permite definir rutas específicas de locale que difieren de la estructura estándar `/locale/path`. Esta es una característica poderosa para mejorar el SEO local y proporcionar una experiencia de usuario más natural para los hablantes no ingleses.
@@ -753,6 +763,58 @@ export default {
753
763
  </Tab>
754
764
  </Tabs>
755
765
 
766
+ ## Reglas de Pluralización Unicode CLDR (v8.8.0)
767
+
768
+ Se ha introducido un nuevo helper de nodo `plural` basado en las reglas de pluralización definidas por el Proyecto Unicode CLDR, mejorando el soporte para idiomas complejos.
769
+
770
+ ```typescript fileName="src/openings.content.ts"
771
+ import { plural, t, type Dictionary } from "intlayer";
772
+
773
+ const openingsContent = {
774
+ key: "total_openings",
775
+ content: {
776
+ totalOpenings: t({
777
+ en: plural({
778
+ one: "{{count}} opening",
779
+ other: "{{count}} openings",
780
+ }),
781
+ fr: plural({
782
+ one: "{{count}} offre",
783
+ other: "{{count}} offres",
784
+ }),
785
+ }),
786
+ },
787
+ } satisfies Dictionary;
788
+
789
+ export default openingsContent;
790
+ ```
791
+
792
+ Luego puede pasar el conteo dinámicamente en el componente de su framework:
793
+
794
+ ```tsx
795
+ import type { FC } from "react";
796
+ import { useIntlayer } from "react-intlayer";
797
+
798
+ const OpeningsComponent: FC<{ count: number }> = ({ count }) => {
799
+ const { totalOpenings } = useIntlayer("total_openings");
800
+
801
+ return (
802
+ <div>
803
+ {/* En inglés: */}
804
+ {/* count=0 → "0 openings" (other) */}
805
+ {/* count=1 → "1 opening" (one) */}
806
+ {/* count=2 → "2 openings" (other) */}
807
+ {/* count=21 → "21 openings" (other) */}
808
+ <p>{totalOpenings(count)}</p>
809
+ </div>
810
+ );
811
+ };
812
+ ```
813
+
814
+ Para más información, consulte la [Documentación de Pluralización](https://intlayer.org/doc/concept/content/plural).
815
+
816
+ ---
817
+
756
818
  ## Validación del esquema de contenido
757
819
 
758
820
  Intlayer v8 introduce la validación de esquemas para diccionarios. Ahora puede definir esquemas de validación reutilizables en su configuración utilizando Zod y aplicarlos a sus archivos de contenido. Esto garantiza que su contenido siempre se adhiera a la estructura esperada, detectando errores en el momento de la construcción.
@@ -797,6 +859,34 @@ Si el contenido no coincide con el esquema (por ejemplo, el título es demasiado
797
859
 
798
860
  ---
799
861
 
862
+ ## TypeScript: Accesores Primitivos de IntlayerNode
863
+
864
+ El tipo `IntlayerNode` ha sido actualizado para permitir llamar métodos primitivos de JavaScript directamente en los nodos de contenido. Esto hace posible interactuar con su contenido localizado directamente como si fuera un primitivo estándar de cadena, número, booleano o array.
865
+
866
+ Compatible con React, Preact, Solid, Svelte, Vue y Angular.
867
+
868
+ ### Ejemplo de Cadena
869
+
870
+ ```typescript
871
+ content.placeholder; // Returns IntlayerNode<string>
872
+ content.placeholder.value; // Returns string
873
+ content.placeholder.toString(); // Returns string
874
+ content.placeholder.toLowerCase(); // Returns string
875
+ String(content.placeholder); // Returns string
876
+ content.placeholder.toUpperCase(); // Returns uppercased string
877
+ content.placeholder.replace("a", "b"); // Returns modified string
878
+ ```
879
+
880
+ ### Ejemplo de Array
881
+
882
+ ```typescript
883
+ content.myArrayOfString // Returns IntlayerNode<Array<string>>
884
+ content.myArrayOfString.find(...) // Returns element
885
+ content.myArrayOfString.join(', ') // Returns joined string
886
+ ```
887
+
888
+ ---
889
+
800
890
  ### Detección automática de contenido mejorada
801
891
 
802
892
  En la v8, Intlayer detecta inteligentemente la sintaxis Markdown, las etiquetas HTML y las inserciones de variables en sus cadenas de contenido. Esto significa que a menudo puede omitir funciones auxiliares como `md()`, `html()` o `insert()`.
@@ -1002,6 +1092,17 @@ La extensión de Intlayer para VSCode recibe actualizaciones importantes en la v
1002
1092
 
1003
1093
  ---
1004
1094
 
1095
+ ## Herramientas: Watcher de C++ y LSP basado en OXC (v8.12.0)
1096
+
1097
+ Intlayer v8.12.0 trae importantes mejoras a la experiencia del desarrollador:
1098
+
1099
+ - **Parcel Watcher**: El observador de contenido ha sido migrado de `chokidar` a `@parcel/watcher`, aprovechando la observación de archivos nativa de C++ para proporcionar actualizaciones más rápidas y un consumo de memoria significativamente menor.
1100
+ - **Nuevo Protocolo de Servidor de Lenguaje (LSP)**: Un LSP completamente nuevo ya está disponible. Construido con parsing basado en OXC, ayuda a su IDE y agentes de IA a vincular sin problemas las llamadas a `useIntlayer('my-key')` con sus archivos `.content` correspondientes, y viceversa.
1101
+
1102
+ Para más detalles, consulte la [Documentación de LSP](https://intlayer.org/doc/lsp).
1103
+
1104
+ ---
1105
+
1005
1106
  ## Optimizaciones del compilador
1006
1107
 
1007
1108
  Intlayer v8 incluye una nueva capa de almacenamiento en caché para el compilador de Markdown y HTML. Esto garantiza que las cadenas de contenido idénticas con la misma configuración solo se analicen una vez, lo que reduce significativamente la sobrecarga durante los re-renderizados o cuando se utiliza el mismo contenido en varios lugares.
@@ -1057,6 +1158,48 @@ Intlayer v8 incluye una nueva capa de almacenamiento en caché para el compilado
1057
1158
 
1058
1159
  ---
1059
1160
 
1161
+ ## Optimizaciones Experimentales de Construcción: Minify y Purge (v8.7.0)
1162
+
1163
+ Intlayer v8.7.0 introduce nuevas características experimentales de construcción en su `intlayer.config.ts` diseñadas para optimizar su bundle de producción:
1164
+
1165
+ - **Minificación de Diccionarios**: Minifica los archivos de diccionario para reducir su tamaño.
1166
+ - **Purga de Claves No Utilizadas**: Escanea y elimina las claves de traducción no utilizadas de los diccionarios, renombrando las claves activas a caracteres cortos (por ejemplo, `"products" -> "a"`, `"pricing" -> "b"`). Esto reduce el tamaño del bundle hasta en un 5%.
1167
+ - **Deshabilitar Verificaciones de TypeScript**: Acelera las construcciones deshabilitando la verificación de tipos de TypeScript durante el paso de compilación.
1168
+
1169
+ ```typescript fileName="intlayer.config.ts"
1170
+ import { Locales, type IntlayerConfig } from "intlayer";
1171
+
1172
+ const config: IntlayerConfig = {
1173
+ internationalization: {
1174
+ locales: [Locales.ENGLISH, Locales.FRENCH],
1175
+ defaultLocale: Locales.ENGLISH,
1176
+ },
1177
+ dictionary: {
1178
+ importMode: "dynamic",
1179
+ },
1180
+ build: {
1181
+ /**
1182
+ * Minify the dictionaries to reduce the bundle size.
1183
+ */
1184
+ minify: true,
1185
+
1186
+ /**
1187
+ * Purge the unused keys in dictionaries
1188
+ */
1189
+ purge: true,
1190
+
1191
+ /**
1192
+ * Indicates if the build should check TypeScript types
1193
+ */
1194
+ checkTypes: false,
1195
+ },
1196
+ };
1197
+
1198
+ export default config;
1199
+ ```
1200
+
1201
+ ---
1202
+
1060
1203
  ## Flexibilidad: Modo de Importación Unificado
1061
1204
 
1062
1205
  La propiedad booleana `live` ha sido marcada como obsoleta en favor de una propiedad `importMode` más completa. Esto permite una definición explícita de cómo deben cargarse los diccionarios: de forma estática, dinámica o mediante sincronización en vivo.
@@ -1204,6 +1347,49 @@ El contenido Markdown y HTML en Svelte ahora se analiza automáticamente a HTML
1204
1347
 
1205
1348
  ---
1206
1349
 
1350
+ ## Soporte para Angular: Bundler Vite (v8.11.0)
1351
+
1352
+ Para los usuarios de Angular, Intlayer ahora soporta de forma nativa el bundler Vite a través de un nuevo plugin personalizado de esbuild, acelerando los tiempos de desarrollo y construcción.
1353
+
1354
+ Para detalles sobre la configuración, consulte la [Documentación del Entorno de Angular](https://intlayer.org/doc/environment/angular).
1355
+
1356
+ ---
1357
+
1358
+ ## Generación de Sitemap (v8.6.0)
1359
+
1360
+ Intlayer ahora genera sitemaps automáticamente basándose en sus locales y modo de enrutamiento. Esto es particularmente útil para la optimización SEO en arquitecturas de enrutadores como TanStack Router:
1361
+
1362
+ ```typescript fileName="src/routes/sitemap.xml.ts"
1363
+ import { createFileRoute } from "@tanstack/react-router";
1364
+ import { generateSitemap } from "intlayer";
1365
+
1366
+ const SITE_URL = (
1367
+ import.meta.env.VITE_SITE_URL ?? "http://localhost:3000"
1368
+ ).replace(/\/$/, "");
1369
+
1370
+ export const Route = createFileRoute("/sitemap.xml")({
1371
+ server: {
1372
+ handlers: {
1373
+ GET: async () => {
1374
+ const sitemap = generateSitemap(
1375
+ [
1376
+ { path: "/", changefreq: "daily", priority: 1.0 },
1377
+ { path: "/about", changefreq: "monthly", priority: 0.8 },
1378
+ ],
1379
+ { siteUrl: SITE_URL }
1380
+ );
1381
+
1382
+ return new Response(sitemap, {
1383
+ headers: { "Content-Type": "application/xml" },
1384
+ });
1385
+ },
1386
+ },
1387
+ },
1388
+ });
1389
+ ```
1390
+
1391
+ ---
1392
+
1207
1393
  ## Notas de migración desde v7
1208
1394
 
1209
1395
  ### Cambios en la configuración
@@ -0,0 +1,228 @@
1
+ ---
2
+ createdAt: 2026-06-14
3
+ updatedAt: 2026-06-14
4
+ title: Nuevo Intlayer v9 - ¿Qué hay de nuevo?
5
+ description: Descubre las novedades de Intlayer v9. Presentamos paquetes de compatibilidad directos para librerías i18n populares y soporte para Colecciones, Variantes y Registros Dinámicos.
6
+ keywords:
7
+ - Intlayer
8
+ - Compatibility
9
+ - Migration
10
+ - Collections
11
+ - Variants
12
+ - Dynamic Records
13
+ - i18next
14
+ - next-intl
15
+ - vue-i18n
16
+ slugs:
17
+ - doc
18
+ - releases
19
+ - v9
20
+ author: aymericzip
21
+ ---
22
+
23
+ # Nuevo Intlayer v9 - ¿Qué hay de nuevo?
24
+
25
+ ¡Bienvenido a Intlayer v9! Esta importante versión marca un gran hito al simplificar la ruta de migración a Intlayer con **Paquetes Adaptadores de Compatibilidad** para las principales librerías i18n (`react-i18next`, `next-intl`, `vue-i18n`, etc.) y añade soporte para estructuras de contenido enriquecido: **Colecciones**, **Variantes** y **Registros Dinámicos**.
26
+
27
+ ## Tabla de contenidos
28
+
29
+ <TOC levels={[2]} maxDepth={1} />
30
+
31
+ ---
32
+
33
+ ## Paquetes Adaptadores de Compatibilidad
34
+
35
+ Migrar a Intlayer desde librerías i18n populares es ahora más fácil que nunca. Hemos creado cinco paquetes de compatibilidad que exponen las **mismas APIs públicas exactas** que las librerías i18n estándar, pero delegan todo el trabajo de traducción a Intlayer en tiempo de ejecución.
36
+
37
+ ### Exponer la Misma API Pública con Tipado Estricto
38
+
39
+ Al reemplazar los imports, obtienes todos los beneficios de Intlayer (incluida la seguridad de tipos en tiempo de compilación contra tus diccionarios reales) con cambios mínimos en el código:
40
+
41
+ - `@intlayer/i18next`
42
+ - `@intlayer/react-i18next`
43
+ - `@intlayer/next-intl`
44
+ - `@intlayer/next-i18next`
45
+ - `@intlayer/vue-i18n`
46
+
47
+ Por ejemplo, simplemente cambia:
48
+
49
+ ```ts
50
+ import { useTranslation } from "react-i18next";
51
+ ```
52
+
53
+ a:
54
+
55
+ ```ts
56
+ import { useTranslation } from "@intlayer/react-i18next";
57
+ ```
58
+
59
+ ¡Tus claves ahora estarán **estrictamente tipadas** contra tus diccionarios de Intlayer, ofreciendo auto-completado completo de rutas con puntos en tu IDE!
60
+
61
+ ### Plugins de Alias de Bundler (Vite, Next.js, Turbopack)
62
+
63
+ Para permitir la migración sin reescribir manualmente todas tus declaraciones de importación, cada paquete adaptador de compatibilidad incluye un **plugin de bundler personalizado** (Vite o Next.js) bajo la subruta `/plugin`.
64
+
65
+ Estos plugins reescriben automáticamente los imports existentes (por ejemplo, `react-i18next` o `next-intl`) a sus equivalentes `@intlayer/*` en tiempo de compilación.
66
+
67
+ #### Ejemplo de Next.js (Webpack / Turbopack)
68
+
69
+ En lugar de `withIntlayer`, envuelve tu configuración de Next.js con el plugin de compatibilidad:
70
+
71
+ ```ts fileName="next.config.ts"
72
+ import { createNextI18nPlugin } from "@intlayer/next-i18next/plugin";
73
+ import type { NextConfig } from "next";
74
+
75
+ const withIntlayer = createNextI18nPlugin();
76
+ const nextConfig: NextConfig = {};
77
+
78
+ export default withIntlayer(nextConfig);
79
+ ```
80
+
81
+ #### Ejemplo de Vite (React, Vue, Solid, Svelte)
82
+
83
+ ```ts fileName="vite.config.ts"
84
+ import vueI18nVitePlugin from "@intlayer/vue-i18n/plugin";
85
+
86
+ export default defineConfig({
87
+ plugins: [vueI18nVitePlugin()],
88
+ });
89
+ ```
90
+
91
+ ---
92
+
93
+ ## Resolvedor de Tiempo de Ejecución Mutualizado
94
+
95
+ Todos los adaptadores de compatibilidad ahora enrutan la resolución de traducciones a través de un único parser de tiempo de ejecución altamente optimizado: `@intlayer/core/messageFormat`.
96
+
97
+ - **Interpolación de Mensajes**: Resuelve `{{var}}` estándar (espacios en blanco y rutas con puntos), argumentos formateados ICU (`{v, number, percent}` etc.) y plantillas `{var}` simples.
98
+ - **Resolvedor de Nodos de Mensaje**: Resuelve nodos anidados: `insert()`, `plural()` (reglas de plural CLDR), `enu()` (enumeración), `gender()`, etiquetas HTML, arrays y nodos de función invocables.
99
+ - **Parser de Etiquetas Tokenizadas**: Soporta etiquetas XML/HTML en línea y etiquetas numeradas (por ejemplo, `<1>children</1>`) para potenciar la renderización de texto enriquecido de forma predeterminada.
100
+
101
+ ---
102
+
103
+ ## Especificación de Características: Colecciones, Variantes y Registros Dinámicos
104
+
105
+ Intlayer v9 se expande más allá de los objetos estáticos clave-valor, permitiendo que los diccionarios declaren estructuras de diseño dinámicas que están completamente tipadas de principio a fin.
106
+
107
+ ### 1. Colecciones
108
+
109
+ Define una lista de elementos ordenados gestionada por CMS (por ejemplo, FAQs, productos o listas de blogs):
110
+
111
+ ```ts fileName="faq.content.ts"
112
+ import { t, type Dictionary } from "intlayer";
113
+
114
+ export default {
115
+ key: "faq",
116
+ content: [
117
+ {
118
+ question: t({
119
+ es: "¿Qué es Intlayer?",
120
+ en: "What is Intlayer?",
121
+ fr: "Qu'est-ce qu'Intlayer ?",
122
+ }),
123
+ answer: t({
124
+ es: "Un toolkit i18n.",
125
+ en: "An i18n toolkit.",
126
+ fr: "Une boîte à outils i18n.",
127
+ }),
128
+ },
129
+ ],
130
+ } satisfies Dictionary;
131
+ ```
132
+
133
+ #### Uso:
134
+
135
+ ```ts
136
+ // Fetch all items
137
+ const allFaqs = useIntlayer("faq"); // -> { question: string, answer: string }[]
138
+
139
+ // Fetch single item by index
140
+ const faq = useIntlayer("faq", { item: 1 }); // -> { question: string, answer: string }
141
+ ```
142
+
143
+ ### 2. Variantes
144
+
145
+ Ofrece pruebas A/B, encabezados de temporada, feature flags o landing pages personalizadas:
146
+
147
+ ```ts fileName="hero.content.ts"
148
+ import { t, type Dictionary } => "intlayer";
149
+
150
+ export default {
151
+ key: "hero-banner",
152
+ variant: "default",
153
+ content: {
154
+ control: t({ es: "Bienvenido", en: "Welcome", fr: "Bienvenue" }),
155
+ black_friday: t({ es: "Comprar ahora", en: "Shop now", fr: "Acheter maintenant" }),
156
+ },
157
+ } satisfies Dictionary;
158
+ ```
159
+
160
+ #### Uso:
161
+
162
+ ```ts
163
+ const banner = useIntlayer("hero-banner", { variant: "black_friday" });
164
+ ```
165
+
166
+ ### 3. Registros Dinámicos
167
+
168
+ Define diccionarios cuyas entradas se cargan dinámicamente en tiempo de ejecución a través de IDs de consulta:
169
+
170
+ ```ts fileName="product.content.ts"
171
+ import { t, type Dictionary } from "intlayer";
172
+
173
+ export default {
174
+ key: "product-copy",
175
+ meta: {
176
+ id: "prod_123",
177
+ category: "books",
178
+ },
179
+ content: {
180
+ title: t({ es: "Código Limpio", en: "Clean Code", fr: "Code Propre" }),
181
+ },
182
+ } satisfies Dictionary;
183
+ ```
184
+
185
+ #### Uso:
186
+
187
+ ```ts
188
+ // Fetches only the requested item dynamically (requires Suspense)
189
+ const product = useIntlayer("product-copy", {
190
+ id: "prod_123",
191
+ category: "books",
192
+ });
193
+ ```
194
+
195
+ ---
196
+
197
+ ## Carga Dinámica y Optimizaciones del Tamaño del Bundle
198
+
199
+ Para mantener los bundles extremadamente pequeños, Intlayer v9 soporta la carga perezosa dinámica.
200
+
201
+ En tu configuración, establece `importMode` a `'dynamic'` o `'fetch'`::
202
+
203
+ ```ts fileName="intlayer.config.ts"
204
+ export default {
205
+ dictionary: {
206
+ importMode: "dynamic", // "static" | "dynamic" | "fetch"
207
+ },
208
+ };
209
+ ```
210
+
211
+ En tiempo de compilación, `@intlayer/swc` y `@intlayer/babel` escanean tus archivos y reemplazan las llamadas a `useIntlayer` / `getIntlayer` con wrappers tree-shakeable (`useDictionary` / `useDictionaryDynamic`). Solo se carga el contenido requerido para el elemento de colección, variante o locale seleccionado, evitando que tu bundle de producción contenga traducciones no utilizadas.
212
+
213
+ ---
214
+
215
+ ## Notas de migración desde v8
216
+
217
+ Si estás actualizando desde v8, ten en cuenta que la v9 no incluye cambios disruptivos. Pero aquí están los cambios clave:
218
+
219
+ - **Locales y Dialectos**: Si utilizas dependencias i18n externas, añade sus respectivos plugins adaptadores de compatibilidad en tu configuración o setup del bundler para reescribir automáticamente los imports.
220
+ - **Selectores Personalizados**: Al llamar a `useIntlayer`, el segundo parámetro ahora está reservado para un objeto de opciones que contiene `{ locale, item, variant, id }`. Si anteriormente pasabas una cadena de locale directamente, aún puedes hacerlo, pero se recomienda usar el objeto de opciones para selecciones avanzadas.
221
+
222
+ ---
223
+
224
+ ## Enlaces útiles
225
+
226
+ - [Guía de Paquetes Adaptadores de Compatibilidad](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compat/index.md)
227
+ - [Diccionarios Dinámicos - Colecciones, Variantes y Registros Dinámicos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dynamic_dictionaries/index.md)
228
+ - [Referencia de Configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md)
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-08-11
3
- updatedAt: 2025-11-22
3
+ updatedAt: 2026-06-17
4
4
  title: Revue de Document
5
5
  description: Apprenez comment revoir les fichiers de documentation pour la qualité, la cohérence et l'exhaustivité à travers différentes locales.
6
6
  keywords:
@@ -15,6 +15,10 @@ slugs:
15
15
  - concept
16
16
  - cli
17
17
  - doc-review
18
+ history:
19
+ - version: 9.0.0
20
+ date: 2026-06-17
21
+ changes: "Ajout de l'option --log"
18
22
  author: aymericzip
19
23
  ---
20
24
 
@@ -55,8 +59,110 @@ Pour la plupart des cas d'utilisation,
55
59
 
56
60
  ## Arguments :
57
61
 
58
- La commande `doc review` accepte les mêmes arguments que `doc translate`, vous permettant de revoir des fichiers de documentation spécifiques et d'appliquer des contrôles de qualité.
62
+ **Options de liste de fichiers :**
59
63
 
60
- Si vous avez activé l'une des options git, la commande ne passera en revue que la partie des fichiers qui est modifiée. Le script traitera le fichier par découpage en chunks et examinera chaque chunk. S'il n'y a pas de modifications dans le chunk, le script le sautera pour accélérer le processus de revue et limiter le coût de l'API du fournisseur d'IA.
64
+ - **`--doc-pattern [docPattern...]`** : Motifs glob pour sélectionner les fichiers de documentation à revoir.
61
65
 
62
- Pour une liste complète des arguments, consultez la documentation de la commande [Translate Document](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/doc-translate.md).
66
+ > Exemple : `npx intlayer doc review --doc-pattern "docs/**/*.md" "src/**/*.mdx"`
67
+
68
+ - **`--excluded-glob-pattern [excludedGlobPattern...]`** : Motifs glob à exclure de la revue.
69
+
70
+ > Exemple : `npx intlayer doc review --excluded-glob-pattern "docs/internal/**"`
71
+
72
+ - **`--skip-if-modified-before [skipIfModifiedBefore]`** : Ignorer le fichier s'il a été modifié avant l'heure donnée.
73
+ - Peut être une heure absolue comme "2025-12-05" (string ou Date)
74
+ - Peut être un temps relatif en ms `1 * 60 * 60 * 1000` (1 heure)
75
+ - Cette option vérifie la date de mise à jour du fichier en utilisant la méthode `fs.stat`. Elle peut donc être impactée par Git ou d'autres outils qui modifient le fichier.
76
+
77
+ > Exemple : `npx intlayer doc review --skip-if-modified-before "2025-12-05"`
78
+
79
+ - **`--skip-if-modified-after [skipIfModifiedAfter]`** : Ignorer le fichier s'il a été modifié dans le délai donné.
80
+ - Peut être une heure absolue comme "2025-12-05" (string ou Date)
81
+ - Peut être un temps relatif en ms `1 * 60 * 60 * 1000` (1 heure)
82
+ - Cette option vérifie la date de mise à jour du fichier en utilisant la méthode `fs.stat`. Elle peut donc être impactée par Git ou d'autres outils qui modifient le fichier.
83
+
84
+ > Exemple : `npx intlayer doc review --skip-if-modified-after "2025-12-05"`
85
+
86
+ - **`--skip-if-exists`** : Ignorer le fichier s'il existe déjà.
87
+
88
+ > Exemple : `npx intlayer doc review --skip-if-exists`
89
+
90
+ **Options de mode de revue :**
91
+
92
+ - **`--log`** : Mode journalisation uniquement. Ne traduit pas avec l'IA ; à la place, journalise les blocs qui nécessitent une attention (avec les numéros de ligne et le contenu) pour les locales de base et cibles, afin d'aider un autre agent à générer les traductions.
93
+
94
+ > Exemple : `npx intlayer doc review --log`
95
+
96
+ **Options de sortie des entrées :**
97
+
98
+ - **`--locales [locales...]`** : Locales cibles pour lesquelles revoir la documentation.
99
+
100
+ > Exemple : `npx intlayer doc review --locales fr es de`
101
+
102
+ - **`--base-locale [baseLocale]`** : Locale source (document de base) à comparer.
103
+
104
+ > Exemple : `npx intlayer doc review --base-locale en`
105
+
106
+ **Options de traitement des fichiers :**
107
+
108
+ - **`--nb-simultaneous-file-processed [nbSimultaneousFileProcessed]`** : Nombre de fichiers à traiter simultanément pour la revue.
109
+
110
+ > Exemple : `npx intlayer doc review --nb-simultaneous-file-processed 5`
111
+
112
+ **Options AI :**
113
+
114
+ - **`--model [model]`** : Modèle d'IA à utiliser pour la revue (par exemple, `gpt-3.5-turbo`).
115
+ - **`--provider [provider]`** : Fournisseur d'IA à utiliser pour la revue.
116
+ - **`--temperature [temperature]`** : Paramètre de température pour le modèle d'IA.
117
+ - **`--api-key [apiKey]`** : Fournir votre propre clé API pour le service d'IA.
118
+ - **`--application-context [applicationContext]`** : Fournir un contexte supplémentaire pour la revue par IA.
119
+ - **`--data-serialization [dataSerialization]`** : Le format de sérialisation des données à utiliser pour les fonctionnalités d'IA d'Intlayer. Options : `json` (standard, fiable), `toon` (moins de tokens, moins cohérent).
120
+ - **`--custom-prompt [prompt]`** : Personnalisez le prompt de base utilisé pour la revue. (Remarque : Pour la plupart des cas d'utilisation, l'option `--custom-instructions` est recommandée car elle offre un meilleur contrôle.)
121
+
122
+ > Exemple : `npx intlayer doc review --model deepseek-chat --provider deepseek --temperature 0.5 --api-key sk-1234567890 --application-context "Mon application est une boutique de chats"`
123
+
124
+ **Options des variables d'environnement :**
125
+
126
+ - **`--env`** : Spécifiez l'environnement (par exemple, `development`, `production`).
127
+ - **`--env-file [envFile]`** : Fournissez un fichier d'environnement personnalisé pour charger les variables.
128
+ - **`--base-dir`** : Spécifiez le répertoire de base du projet.
129
+ - **`--no-cache`** : Désactive le cache.
130
+
131
+ > Exemple : `npx intlayer doc review --base-dir ./docs --env-file .env.production.local`
132
+
133
+ **Options de journalisation :**
134
+
135
+ - **`--verbose`** : Active la journalisation détaillée pour le débogage. (par défaut à true en utilisant la CLI)
136
+
137
+ > Exemple : `npx intlayer doc review --verbose`
138
+
139
+ **Options d'instructions personnalisées :**
140
+
141
+ - **`--custom-instructions [customInstructions]`** : Instructions personnalisées ajoutées au prompt. Utile pour appliquer des règles spécifiques concernant le formatage, la traduction des URLs, etc.
142
+
143
+ > Exemple : `npx intlayer doc review --custom-instructions "Évitez de traduire les URLs et conservez le format markdown"`
144
+
145
+ > Exemple : `npx intlayer doc review --custom-instructions "$(cat ./instructions.md)"`
146
+
147
+ **Options Git :**
148
+
149
+ - **`--git-diff`** : Ne s'exécute que sur les fichiers qui incluent des modifications depuis la base (par défaut `origin/main`) vers la branche courante (par défaut : `HEAD`).
150
+ - **`--git-diff-base`** : Spécifie la référence de base pour le git diff (par défaut `origin/main`).
151
+ - **`--git-diff-current`** : Spécifie la référence courante pour le git diff (par défaut : `HEAD`).
152
+ - **`--uncommitted`** : Inclut les modifications non commises.
153
+ - **`--unpushed`** : Inclut les modifications non poussées.
154
+ - **`--untracked`** : Inclut les fichiers non suivis.
155
+
156
+ > Exemple : `npx intlayer doc review --git-diff --git-diff-base origin/main --git-diff-current HEAD`
157
+
158
+ > Exemple : `npx intlayer doc review --uncommitted --unpushed --untracked`
159
+
160
+ > Notez que le chemin du fichier de sortie sera déterminé en remplaçant les motifs suivants :
161
+ >
162
+ > - `/{{baseLocale}}/` par `/{{locale}}/` (Unix)
163
+ > - `\{{baseLocale}}\` par `\{{locale}}\` (Windows)
164
+ > - `_{{baseLocale}}.` par `_{{locale}}.`
165
+ > - `{{baseLocale}}_` par `{{locale}}_`
166
+ > - `.{{baseLocaleName}}.` par `.{{localeName}}.`
167
+ >
168
+ > Si le motif n'est pas trouvé, le fichier de sortie ajoutera `.{{locale}}` à l'extension du fichier. Par exemple, `./my/file.md` sera revu et mis à jour en `./my/file.fr.md` pour la locale française.
@@ -17,7 +17,7 @@ slugs:
17
17
  - concept
18
18
  - cli
19
19
  history:
20
- - version: 8.13.0
20
+ - version: 9.0.0
21
21
  date: 2026-06-11
22
22
  changes: "Ajout de la commande scan"
23
23
  - version: 8.6.4
@@ -18,7 +18,7 @@ slugs:
18
18
  - cli
19
19
  - scan
20
20
  history:
21
- - version: 8.13.0
21
+ - version: 9.0.0
22
22
  date: 2026-06-11
23
23
  changes: "Ajout de la commande scan"
24
24
  author: aymericzip