@focus-reactive/payload-plugin-translator 0.6.1 → 0.6.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 (460) hide show
  1. package/dist/client/app/cache/CacheProvider.d.ts +1 -1
  2. package/dist/client/app/cache/CacheProvider.export.d.ts +1 -1
  3. package/dist/client/app/cache/CacheProvider.export.js +2 -2
  4. package/dist/client/app/cache/CacheProvider.js +5 -5
  5. package/dist/client/app/config/TranslateKitConfigContext.d.ts +1 -1
  6. package/dist/client/app/config/TranslateKitConfigContext.js +3 -3
  7. package/dist/client/app/config/index.d.ts +2 -2
  8. package/dist/client/app/config/index.js +1 -1
  9. package/dist/client/entities/translation/api/mutations/useCancelCollectionTranslations.js +7 -7
  10. package/dist/client/entities/translation/api/mutations/useCancelDocumentTranslation.js +7 -7
  11. package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslation.d.ts +1 -1
  12. package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslation.js +8 -8
  13. package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslations.js +6 -6
  14. package/dist/client/entities/translation/api/mutations/useRunDocumentTranslation.js +7 -7
  15. package/dist/client/entities/translation/api/mutations/useTranslateField.d.ts +1 -1
  16. package/dist/client/entities/translation/api/queries/useCollectionTranslationStatus.d.ts +2 -2
  17. package/dist/client/entities/translation/api/queries/useCollectionTranslationStatus.js +9 -10
  18. package/dist/client/entities/translation/api/queries/useDocumentTranslation.d.ts +2 -2
  19. package/dist/client/entities/translation/api/queries/useDocumentTranslation.js +9 -10
  20. package/dist/client/entities/translation/index.d.ts +12 -12
  21. package/dist/client/entities/translation/index.js +11 -11
  22. package/dist/client/entities/translation/model/types.d.ts +1 -1
  23. package/dist/client/entities/translation/ui/CompletedTranslationStatus/CompletedTranslationStatus.js +12 -12
  24. package/dist/client/entities/translation/ui/CompletedTranslationStatus/index.d.ts +1 -1
  25. package/dist/client/entities/translation/ui/CompletedTranslationStatus/index.js +1 -1
  26. package/dist/client/entities/translation/ui/CompletedTranslationStatus/styles.module.scss +1 -1
  27. package/dist/client/entities/translation/ui/FailedTranslationStatus/FailedTranslationStatus.js +8 -8
  28. package/dist/client/entities/translation/ui/FailedTranslationStatus/index.d.ts +1 -1
  29. package/dist/client/entities/translation/ui/FailedTranslationStatus/index.js +1 -1
  30. package/dist/client/entities/translation/ui/FailedTranslationStatus/styles.module.scss +1 -1
  31. package/dist/client/entities/translation/ui/PendingTranslationStatus/PendingTranslationStatus.js +14 -14
  32. package/dist/client/entities/translation/ui/PendingTranslationStatus/index.d.ts +1 -1
  33. package/dist/client/entities/translation/ui/PendingTranslationStatus/index.js +1 -1
  34. package/dist/client/entities/translation/ui/RunningTranslationStatus/RunningTranslationStatus.js +13 -13
  35. package/dist/client/entities/translation/ui/RunningTranslationStatus/index.d.ts +1 -1
  36. package/dist/client/entities/translation/ui/RunningTranslationStatus/index.js +1 -1
  37. package/dist/client/entities/translation/ui/TranslationDirection/TranslationDirection.d.ts +1 -1
  38. package/dist/client/entities/translation/ui/TranslationDirection/TranslationDirection.js +2 -2
  39. package/dist/client/entities/translation/ui/TranslationDirection/index.d.ts +1 -1
  40. package/dist/client/entities/translation/ui/TranslationDirection/index.js +1 -1
  41. package/dist/client/entities/translation/ui/TranslationDirection/styles.module.scss +1 -1
  42. package/dist/client/features/collection-translation-form/index.client.d.ts +1 -1
  43. package/dist/client/features/collection-translation-form/index.client.js +1 -1
  44. package/dist/client/features/collection-translation-form/index.d.ts +3 -3
  45. package/dist/client/features/collection-translation-form/index.js +2 -2
  46. package/dist/client/features/collection-translation-form/model/constants.d.ts +1 -1
  47. package/dist/client/features/collection-translation-form/model/constants.js +9 -9
  48. package/dist/client/features/collection-translation-form/model/form-model.d.ts +1 -1
  49. package/dist/client/features/collection-translation-form/model/index.d.ts +1 -1
  50. package/dist/client/features/collection-translation-form/model/index.js +1 -1
  51. package/dist/client/features/collection-translation-form/model/schema.d.ts +1 -1
  52. package/dist/client/features/collection-translation-form/model/schema.js +6 -6
  53. package/dist/client/features/collection-translation-form/ui/CollectionTranslationForm.d.ts +1 -1
  54. package/dist/client/features/collection-translation-form/ui/index.d.ts +1 -1
  55. package/dist/client/features/collection-translation-form/ui/index.js +1 -1
  56. package/dist/client/features/collection-translation-form/ui/styles.module.scss +1 -1
  57. package/dist/client/features/collection-translation-popup/index.d.ts +1 -1
  58. package/dist/client/features/collection-translation-popup/index.js +1 -1
  59. package/dist/client/features/collection-translation-popup/ui/CollectionTranslationPopup.d.ts +1 -1
  60. package/dist/client/features/collection-translation-popup/ui/styles.module.scss +1 -1
  61. package/dist/client/features/collection-translation-progress/index.d.ts +1 -1
  62. package/dist/client/features/collection-translation-progress/index.js +1 -1
  63. package/dist/client/features/collection-translation-progress/ui/CollectionTranslationProgress.d.ts +2 -2
  64. package/dist/client/features/collection-translation-progress/ui/CollectionTranslationProgress.js +13 -13
  65. package/dist/client/features/collection-translation-progress/ui/styles.module.scss +1 -1
  66. package/dist/client/features/document-translation-progress-failed/index.d.ts +1 -1
  67. package/dist/client/features/document-translation-progress-failed/index.js +1 -1
  68. package/dist/client/features/document-translation-progress-failed/ui/DocumentTranslationProgressFailed.d.ts +2 -2
  69. package/dist/client/features/document-translation-progress-failed/ui/DocumentTranslationProgressFailed.js +3 -3
  70. package/dist/client/features/document-translation-progress-pending/index.d.ts +1 -1
  71. package/dist/client/features/document-translation-progress-pending/index.js +1 -1
  72. package/dist/client/features/document-translation-progress-pending/ui/DocumentTranslationProgressPending.d.ts +2 -2
  73. package/dist/client/features/document-translation-progress-pending/ui/DocumentTranslationProgressPending.js +5 -5
  74. package/dist/client/features/document-translation-progress-running/index.d.ts +1 -1
  75. package/dist/client/features/document-translation-progress-running/index.js +1 -1
  76. package/dist/client/features/document-translation-progress-running/ui/DocumentTranslationProgressRunning.d.ts +2 -2
  77. package/dist/client/features/document-translation-progress-running/ui/DocumentTranslationProgressRunning.js +3 -3
  78. package/dist/client/features/open-document-translation-popup/index.d.ts +1 -1
  79. package/dist/client/features/open-document-translation-popup/index.js +1 -1
  80. package/dist/client/features/open-document-translation-popup/ui/styles.module.scss +1 -1
  81. package/dist/client/features/translate-document-form/index.client.d.ts +1 -1
  82. package/dist/client/features/translate-document-form/index.client.js +1 -1
  83. package/dist/client/features/translate-document-form/index.d.ts +3 -3
  84. package/dist/client/features/translate-document-form/index.js +2 -2
  85. package/dist/client/features/translate-document-form/model/constants.d.ts +1 -1
  86. package/dist/client/features/translate-document-form/model/constants.js +11 -11
  87. package/dist/client/features/translate-document-form/model/form-model.d.ts +1 -1
  88. package/dist/client/features/translate-document-form/model/index.d.ts +1 -1
  89. package/dist/client/features/translate-document-form/model/index.js +1 -1
  90. package/dist/client/features/translate-document-form/model/schema.d.ts +1 -1
  91. package/dist/client/features/translate-document-form/model/schema.js +5 -5
  92. package/dist/client/features/translate-document-form/ui/DocumentTranslationForm.d.ts +1 -1
  93. package/dist/client/features/translate-document-form/ui/index.d.ts +1 -1
  94. package/dist/client/features/translate-document-form/ui/index.js +1 -1
  95. package/dist/client/features/translate-document-form/ui/styles.module.scss +1 -1
  96. package/dist/client/shared/lib/errors/handleApiError.d.ts +1 -1
  97. package/dist/client/shared/lib/errors/handleApiError.js +2 -2
  98. package/dist/client/shared/lib/forms/handle-form-error.d.ts +1 -1
  99. package/dist/client/shared/lib/forms/handle-form-error.js +6 -6
  100. package/dist/client/shared/lib/payload/hooks/useCollectionDashboardUrlParams.d.ts +1 -1
  101. package/dist/client/shared/lib/payload/hooks/useCollectionDashboardUrlParams.js +1 -1
  102. package/dist/client/shared/lib/payload/hooks/useCollectionDocumentUrlParams.d.ts +1 -1
  103. package/dist/client/shared/lib/payload/hooks/useCollectionDocumentUrlParams.js +2 -2
  104. package/dist/client/shared/lib/payload/hooks/useLocaleOptions.js +2 -2
  105. package/dist/client/shared/lib/utils/errors/handleApiError.d.ts +1 -1
  106. package/dist/client/shared/lib/utils/errors/handleApiError.js +2 -2
  107. package/dist/client/shared/lib/utils/react/useToggle.js +1 -1
  108. package/dist/client/shared/providers/CacheClientProvider/CacheClientProvider.factory.d.ts +2 -2
  109. package/dist/client/shared/providers/CacheClientProvider/CacheClientProvider.factory.js +3 -3
  110. package/dist/client/shared/providers/CacheClientProvider/index.d.ts +1 -1
  111. package/dist/client/shared/providers/CacheClientProvider/index.js +1 -1
  112. package/dist/client/shared/types/AccessGuard.d.ts +1 -1
  113. package/dist/client/shared/ui/Alert/Alert.d.ts +2 -2
  114. package/dist/client/shared/ui/Alert/Alert.js +18 -18
  115. package/dist/client/shared/ui/Alert/index.d.ts +1 -1
  116. package/dist/client/shared/ui/Alert/index.js +1 -1
  117. package/dist/client/shared/ui/Alert/styles.module.scss +1 -1
  118. package/dist/client/shared/ui/Button/index.d.ts +1 -1
  119. package/dist/client/shared/ui/Button/index.js +1 -1
  120. package/dist/client/shared/ui/Button/styles.module.scss +6 -3
  121. package/dist/client/shared/ui/Checkbox/Checkbox.d.ts +2 -2
  122. package/dist/client/shared/ui/Checkbox/Checkbox.js +4 -4
  123. package/dist/client/shared/ui/Checkbox/index.d.ts +1 -1
  124. package/dist/client/shared/ui/Checkbox/index.js +1 -1
  125. package/dist/client/shared/ui/Checkbox/styles.module.scss +1 -1
  126. package/dist/client/shared/ui/ColorIndicator/ColorIndicator.d.ts +2 -2
  127. package/dist/client/shared/ui/ColorIndicator/ColorIndicator.js +2 -2
  128. package/dist/client/shared/ui/ColorIndicator/index.d.ts +1 -1
  129. package/dist/client/shared/ui/ColorIndicator/index.js +1 -1
  130. package/dist/client/shared/ui/ColorIndicator/styles.module.scss +1 -1
  131. package/dist/client/shared/ui/Description/Description.d.ts +3 -3
  132. package/dist/client/shared/ui/Description/Description.js +4 -4
  133. package/dist/client/shared/ui/Description/index.d.ts +1 -1
  134. package/dist/client/shared/ui/Description/index.js +1 -1
  135. package/dist/client/shared/ui/Description/styles.module.scss +1 -1
  136. package/dist/client/shared/ui/Divider/Divider.d.ts +4 -4
  137. package/dist/client/shared/ui/Divider/Divider.js +4 -4
  138. package/dist/client/shared/ui/Divider/index.d.ts +1 -1
  139. package/dist/client/shared/ui/Divider/index.js +1 -1
  140. package/dist/client/shared/ui/Divider/styles.module.scss +1 -1
  141. package/dist/client/shared/ui/Label/Label.d.ts +2 -2
  142. package/dist/client/shared/ui/Label/Label.js +3 -3
  143. package/dist/client/shared/ui/Label/index.d.ts +1 -1
  144. package/dist/client/shared/ui/Label/index.js +1 -1
  145. package/dist/client/shared/ui/Label/styles.module.scss +1 -1
  146. package/dist/client/shared/ui/Loading/Loading.d.ts +1 -1
  147. package/dist/client/shared/ui/Loading/Loading.js +9 -9
  148. package/dist/client/shared/ui/Loading/index.d.ts +1 -1
  149. package/dist/client/shared/ui/Loading/index.js +1 -1
  150. package/dist/client/shared/ui/Loading/styles.module.scss +2 -2
  151. package/dist/client/shared/ui/Popup/Popup.d.ts +1 -1
  152. package/dist/client/shared/ui/Popup/index.d.ts +1 -1
  153. package/dist/client/shared/ui/Popup/index.js +1 -1
  154. package/dist/client/shared/ui/Popup/styles.module.scss +1 -1
  155. package/dist/client/shared/ui/ProgressBar/ProgressBar.d.ts +2 -2
  156. package/dist/client/shared/ui/ProgressBar/ProgressBar.js +3 -3
  157. package/dist/client/shared/ui/ProgressBar/index.d.ts +1 -1
  158. package/dist/client/shared/ui/ProgressBar/index.js +1 -1
  159. package/dist/client/shared/ui/ProgressBar/styles.module.scss +1 -1
  160. package/dist/client/shared/ui/Select/index.d.ts +1 -1
  161. package/dist/client/shared/ui/Select/index.js +1 -1
  162. package/dist/client/shared/ui/Select/styles.module.scss +1 -1
  163. package/dist/client/shared/ui/StatusCounter/StatusCounter.d.ts +2 -2
  164. package/dist/client/shared/ui/StatusCounter/StatusCounter.js +13 -13
  165. package/dist/client/shared/ui/StatusCounter/index.d.ts +1 -1
  166. package/dist/client/shared/ui/StatusCounter/index.js +1 -1
  167. package/dist/client/shared/ui/StatusCounter/styles.module.scss +1 -1
  168. package/dist/client/shared/ui/StatusIndicator/StatusIndicator.d.ts +3 -3
  169. package/dist/client/shared/ui/StatusIndicator/StatusIndicator.js +4 -4
  170. package/dist/client/shared/ui/StatusIndicator/index.d.ts +1 -1
  171. package/dist/client/shared/ui/StatusIndicator/index.js +1 -1
  172. package/dist/client/shared/ui/StatusIndicator/styles.module.scss +1 -1
  173. package/dist/client/shared/ui/Tooltip/Tooltip.d.ts +2 -2
  174. package/dist/client/shared/ui/Tooltip/Tooltip.js +4 -4
  175. package/dist/client/shared/ui/Tooltip/index.d.ts +1 -1
  176. package/dist/client/shared/ui/Tooltip/index.js +1 -1
  177. package/dist/client/shared/ui/Tooltip/styles.module.scss +5 -5
  178. package/dist/client/shared/ui/form/FormCheckbox/FormCheckbox.d.ts +1 -1
  179. package/dist/client/shared/ui/form/FormCheckbox/FormCheckbox.js +6 -6
  180. package/dist/client/shared/ui/form/FormCheckbox/index.d.ts +1 -1
  181. package/dist/client/shared/ui/form/FormCheckbox/index.js +1 -1
  182. package/dist/client/shared/ui/form/FormCheckbox/styles.module.scss +1 -1
  183. package/dist/client/shared/ui/form/FormCheckboxPublish/FormCheckboxPublish.js +5 -5
  184. package/dist/client/shared/ui/form/FormCheckboxPublish/index.d.ts +1 -1
  185. package/dist/client/shared/ui/form/FormCheckboxPublish/index.js +1 -1
  186. package/dist/client/shared/ui/form/FormCheckboxPublish/styles.module.scss +1 -1
  187. package/dist/client/shared/ui/form/FormSelect/FormSelect.d.ts +5 -5
  188. package/dist/client/shared/ui/form/FormSelect/FormSelect.js +9 -9
  189. package/dist/client/shared/ui/form/FormSelect/index.d.ts +1 -1
  190. package/dist/client/shared/ui/form/FormSelect/index.js +1 -1
  191. package/dist/client/shared/ui/form/FormSelectLocale/FormSelectLocale.d.ts +1 -1
  192. package/dist/client/shared/ui/form/FormSelectLocale/FormSelectLocale.js +2 -2
  193. package/dist/client/shared/ui/form/FormSelectLocale/index.d.ts +1 -1
  194. package/dist/client/shared/ui/form/FormSelectLocale/index.js +1 -1
  195. package/dist/client/shared/ui/form/FormSelectStrategy/FormSelectStrategy.d.ts +2 -2
  196. package/dist/client/shared/ui/form/FormSelectStrategy/FormSelectStrategy.js +9 -9
  197. package/dist/client/shared/ui/form/FormSelectStrategy/index.d.ts +2 -2
  198. package/dist/client/shared/ui/form/FormSelectStrategy/index.js +1 -1
  199. package/dist/client/shared/ui/form/FormSelectStrategy/styles.module.scss +1 -1
  200. package/dist/client/shared/utils/componentPath.js +1 -1
  201. package/dist/client/widgets/bulk-translation-dashboard/index.d.ts +1 -1
  202. package/dist/client/widgets/bulk-translation-dashboard/index.js +1 -1
  203. package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.export.d.ts +2 -2
  204. package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.export.js +3 -3
  205. package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.js +11 -11
  206. package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.server.d.ts +2 -2
  207. package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.server.js +3 -3
  208. package/dist/client/widgets/bulk-translation-dashboard/ui/index.d.ts +1 -1
  209. package/dist/client/widgets/bulk-translation-dashboard/ui/index.js +1 -1
  210. package/dist/client/widgets/translate-document/index.d.ts +1 -1
  211. package/dist/client/widgets/translate-document/index.js +1 -1
  212. package/dist/client/widgets/translate-document/ui/TranslateDocument.export.d.ts +3 -3
  213. package/dist/client/widgets/translate-document/ui/TranslateDocument.export.js +3 -3
  214. package/dist/client/widgets/translate-document/ui/TranslateDocument.js +16 -16
  215. package/dist/client/widgets/translate-document/ui/TranslateDocument.server.d.ts +2 -2
  216. package/dist/client/widgets/translate-document/ui/TranslateDocument.server.js +3 -3
  217. package/dist/client/widgets/translate-document/ui/index.d.ts +1 -1
  218. package/dist/client/widgets/translate-document/ui/index.js +1 -1
  219. package/dist/client/widgets/translate-field-control/ui/TranslateFieldControl.export.d.ts +1 -1
  220. package/dist/client/widgets/translate-field-control/ui/styles.module.scss +1 -1
  221. package/dist/{server/modules/translation-levels → composition/levels}/collectionLevel.d.ts +1 -1
  222. package/dist/{server/modules/translation-levels → composition/levels}/collectionLevel.js +1 -1
  223. package/dist/{server/modules/translation-levels → composition/levels}/documentLevel.d.ts +1 -1
  224. package/dist/{server/modules/translation-levels → composition/levels}/documentLevel.js +1 -1
  225. package/dist/{server/modules/translation-levels → composition/levels}/fieldLevel.d.ts +1 -1
  226. package/dist/{server/modules/translation-levels → composition/levels}/fieldLevel.js +1 -1
  227. package/dist/composition/levels/index.d.ts +3 -0
  228. package/dist/composition/levels/index.js +5 -0
  229. package/dist/{server/modules/translation-levels → composition/levels}/useDocTranslationApi.d.ts +1 -1
  230. package/dist/{server/modules/translation-levels → composition/levels}/useDocTranslationApi.js +1 -1
  231. package/dist/core/content-projection/contentProjector.d.ts +28 -0
  232. package/dist/core/content-projection/contentProjector.js +97 -0
  233. package/dist/core/content-projection/fingerprinter.d.ts +28 -0
  234. package/dist/core/content-projection/fingerprinter.js +29 -0
  235. package/dist/core/content-projection/idPath.d.ts +48 -0
  236. package/dist/core/content-projection/idPath.js +64 -0
  237. package/dist/core/content-projection/translatableLeaf.d.ts +27 -0
  238. package/dist/core/content-projection/translatableLeaf.js +37 -0
  239. package/dist/core/field-config/getFieldConfig.d.ts +23 -0
  240. package/dist/{server/shared → core}/field-config/getFieldConfig.js +5 -5
  241. package/dist/{server/shared → core}/field-config/index.d.ts +3 -3
  242. package/dist/core/field-config/index.js +4 -0
  243. package/dist/{server/shared → core}/field-traversal/findFieldByPath.d.ts +2 -3
  244. package/dist/core/field-traversal/guards.d.ts +19 -0
  245. package/dist/core/field-traversal/guards.js +20 -0
  246. package/dist/core/field-traversal/index.d.ts +7 -0
  247. package/dist/core/field-traversal/index.js +7 -0
  248. package/dist/{server/shared → core}/field-traversal/kernel.d.ts +7 -8
  249. package/dist/{server/shared → core}/field-traversal/kernel.js +6 -6
  250. package/dist/core/field-traversal/predicates.d.ts +24 -0
  251. package/dist/core/field-traversal/predicates.js +17 -0
  252. package/dist/{server/shared → core}/field-traversal/types.d.ts +129 -27
  253. package/dist/{server/shared → core}/field-traversal/types.js +6 -0
  254. package/dist/{server/shared → core}/field-traversal/walkFields.d.ts +2 -3
  255. package/dist/core/index.d.ts +10 -0
  256. package/dist/core/index.js +14 -0
  257. package/dist/{server/shared → core}/lexical/collectTextNodes.d.ts +1 -1
  258. package/dist/{server/shared → core}/lexical/collectTextNodes.js +1 -1
  259. package/dist/{server/shared → core}/lexical/guards.d.ts +1 -1
  260. package/dist/{server/shared → core}/lexical/guards.js +4 -4
  261. package/dist/core/lexical/index.d.ts +6 -0
  262. package/dist/core/lexical/index.js +6 -0
  263. package/dist/{server/shared → core}/lexical/isEmptyRichText.d.ts +1 -1
  264. package/dist/{server/shared → core}/lexical/isEmptyRichText.js +3 -3
  265. package/dist/{server/shared → core}/lexical/traverseLexicalTree.d.ts +1 -1
  266. package/dist/{server/shared → core}/lexical/traverseLexicalTree.js +1 -1
  267. package/dist/core/lexical/types.d.ts +33 -0
  268. package/dist/core/lexical/types.js +11 -0
  269. package/dist/{server/modules → core}/translation-pipeline/TranslationPipeline.d.ts +4 -4
  270. package/dist/{server/modules → core}/translation-pipeline/TranslationPipeline.js +1 -1
  271. package/dist/{server/modules → core}/translation-pipeline/stages/data-reconciler/DataReconciler.d.ts +2 -2
  272. package/dist/{server/modules → core}/translation-pipeline/stages/data-reconciler/DataReconciler.js +3 -2
  273. package/dist/core/translation-pipeline/stages/data-reconciler/index.d.ts +2 -0
  274. package/dist/core/translation-pipeline/stages/data-reconciler/index.js +4 -0
  275. package/dist/{server/modules → core}/translation-pipeline/stages/field-collector/FieldChunkCollector.d.ts +2 -2
  276. package/dist/{server/modules → core}/translation-pipeline/stages/field-collector/FieldChunkCollector.js +18 -4
  277. package/dist/{server/modules → core}/translation-pipeline/stages/field-collector/FieldChunkCollector.stage.d.ts +2 -2
  278. package/dist/{server/modules → core}/translation-pipeline/stages/field-collector/FieldChunkCollector.stage.js +2 -2
  279. package/dist/core/translation-pipeline/stages/field-collector/index.d.ts +2 -0
  280. package/dist/core/translation-pipeline/stages/field-collector/index.js +4 -0
  281. package/dist/core/translation-pipeline/stages/index.d.ts +6 -0
  282. package/dist/core/translation-pipeline/stages/index.js +7 -0
  283. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/PlainTextExpander.d.ts +2 -2
  284. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/PlainTextExpander.js +2 -2
  285. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/RichTextExpander.d.ts +2 -2
  286. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/RichTextExpander.js +3 -3
  287. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/TextChunkExpander.d.ts +2 -2
  288. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/TextChunkExpander.stage.d.ts +2 -2
  289. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/TextChunkExpander.stage.js +4 -4
  290. package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/TextExpander.interface.d.ts +1 -1
  291. package/dist/core/translation-pipeline/stages/text-expander/index.d.ts +6 -0
  292. package/dist/core/translation-pipeline/stages/text-expander/index.js +6 -0
  293. package/dist/{server/modules → core}/translation-pipeline/stages/translation/Translation.stage.d.ts +2 -2
  294. package/dist/{server/modules → core}/translation-pipeline/stages/translation/Translation.stage.js +1 -1
  295. package/dist/core/translation-pipeline/stages/translation/index.d.ts +1 -0
  296. package/dist/core/translation-pipeline/stages/translation/index.js +3 -0
  297. package/dist/{server/modules → core}/translation-pipeline/stages/translation-applicator/TranslationMutator.d.ts +1 -1
  298. package/dist/{server/modules → core}/translation-pipeline/stages/translation-applicator/TranslationMutator.js +1 -1
  299. package/dist/{server/modules → core}/translation-pipeline/stages/translation-applicator/TranslationMutator.stage.d.ts +1 -1
  300. package/dist/{server/modules → core}/translation-pipeline/stages/translation-applicator/TranslationMutator.stage.js +2 -2
  301. package/dist/core/translation-pipeline/stages/translation-applicator/index.d.ts +2 -0
  302. package/dist/core/translation-pipeline/stages/translation-applicator/index.js +4 -0
  303. package/dist/{server/modules → core}/translation-pipeline/strategies/Overwrite.strategy.d.ts +1 -1
  304. package/dist/{server/modules → core}/translation-pipeline/strategies/Overwrite.strategy.js +1 -1
  305. package/dist/{server/modules → core}/translation-pipeline/strategies/SkipExisting.strategy.d.ts +1 -1
  306. package/dist/{server/modules → core}/translation-pipeline/strategies/SkipExisting.strategy.js +3 -1
  307. package/dist/core/translation-pipeline/strategies/index.d.ts +13 -0
  308. package/dist/{server/modules → core}/translation-pipeline/strategies/index.js +4 -4
  309. package/dist/{server/modules → core}/translation-pipeline/translateContent.d.ts +2 -2
  310. package/dist/{server/modules → core}/translation-pipeline/types/FieldChunk.d.ts +3 -3
  311. package/dist/{server/modules → core}/translation-pipeline/types/Pipeline.d.ts +2 -2
  312. package/dist/{server/modules → core}/translation-pipeline/types/PipelineContext.d.ts +4 -4
  313. package/dist/{server/modules → core}/translation-pipeline/types/TextChunk.d.ts +3 -3
  314. package/dist/{server/modules → core}/translation-pipeline/types/TextChunk.js +2 -2
  315. package/dist/core/translation-pipeline/types/index.d.ts +5 -0
  316. package/dist/core/translation-pipeline/types/index.js +3 -0
  317. package/dist/core/translation-providers/index.d.ts +1 -0
  318. package/dist/core/translation-providers/index.js +5 -0
  319. package/dist/core/utils/index.d.ts +2 -0
  320. package/dist/core/utils/index.js +4 -0
  321. package/dist/{server/shared → core}/utils/isEmpty.js +2 -2
  322. package/dist/{server/shared → core}/utils/isObject.js +1 -1
  323. package/dist/field-actions.d.ts +1 -1
  324. package/dist/field-config.d.ts +1 -1
  325. package/dist/field-config.js +1 -1
  326. package/dist/index.d.ts +5 -4
  327. package/dist/index.js +4 -4
  328. package/dist/plugin.d.ts +1 -1
  329. package/dist/plugin.js +1 -1
  330. package/dist/server/features/_lib/collection-utils.d.ts +1 -1
  331. package/dist/server/features/_lib/index.d.ts +1 -1
  332. package/dist/server/features/_lib/index.js +1 -1
  333. package/dist/server/features/cancel/index.d.ts +1 -1
  334. package/dist/server/features/cancel/index.js +1 -1
  335. package/dist/server/features/cancel-by-collection/index.d.ts +1 -1
  336. package/dist/server/features/cancel-by-collection/index.js +1 -1
  337. package/dist/server/features/cancel-by-collection/model.d.ts +2 -2
  338. package/dist/server/features/cancel-by-collection/model.js +1 -1
  339. package/dist/server/features/createTranslationRoutes.d.ts +1 -1
  340. package/dist/server/features/enqueue-translation/index.d.ts +1 -1
  341. package/dist/server/features/enqueue-translation/index.js +1 -1
  342. package/dist/server/features/enqueue-translation/model.d.ts +2 -2
  343. package/dist/server/features/enqueue-translation/model.js +4 -4
  344. package/dist/server/features/get-collection-status/index.d.ts +1 -1
  345. package/dist/server/features/get-collection-status/index.js +1 -1
  346. package/dist/server/features/get-collection-status/model.d.ts +3 -3
  347. package/dist/server/features/get-collection-status/model.js +1 -1
  348. package/dist/server/features/get-document-status/index.d.ts +2 -2
  349. package/dist/server/features/get-document-status/index.js +2 -2
  350. package/dist/server/features/run-translation/index.d.ts +1 -1
  351. package/dist/server/features/run-translation/index.js +1 -1
  352. package/dist/server/features/translate-document/handler.d.ts +3 -2
  353. package/dist/server/features/translate-document/handler.js +1 -1
  354. package/dist/server/features/translate-document/index.d.ts +1 -1
  355. package/dist/server/features/translate-document/model.d.ts +2 -7
  356. package/dist/server/features/translate-document/model.js +1 -2
  357. package/dist/server/features/translate-field/handler.js +1 -1
  358. package/dist/server/features/translate-field/index.d.ts +2 -1
  359. package/dist/server/features/translate-field/model.d.ts +2 -19
  360. package/dist/server/features/translate-field/resolveFieldSubtree.js +1 -1
  361. package/dist/server/features/translate-field/route.d.ts +1 -1
  362. package/dist/server/index.d.ts +3 -3
  363. package/dist/server/index.js +3 -3
  364. package/dist/server/modules/index.d.ts +2 -2
  365. package/dist/server/modules/index.js +2 -2
  366. package/dist/server/modules/task-runner/TaskRunner.interface.d.ts +2 -2
  367. package/dist/server/modules/task-runner/TaskRunnerProvider.interface.d.ts +1 -1
  368. package/dist/server/modules/task-runner/index.d.ts +1 -1
  369. package/dist/server/modules/task-runner/payload-jobs-runner/index.d.ts +2 -2
  370. package/dist/server/modules/task-runner/payload-jobs-runner/index.js +1 -1
  371. package/dist/server/modules/task-runner/sync-runner/index.d.ts +1 -1
  372. package/dist/server/modules/task-runner/sync-runner/index.js +1 -1
  373. package/dist/server/modules/translation-levels/PluginConfigBuilder.d.ts +3 -3
  374. package/dist/server/modules/translation-levels/index.d.ts +1 -4
  375. package/dist/server/modules/translation-levels/index.js +1 -3
  376. package/dist/server/modules/translation-levels/types.d.ts +3 -3
  377. package/dist/server/shared/access/AnyAccessGuard.d.ts +1 -1
  378. package/dist/server/shared/access/handler.d.ts +1 -1
  379. package/dist/server/shared/access/index.d.ts +3 -3
  380. package/dist/server/shared/access/index.js +1 -1
  381. package/dist/server/shared/access/types.d.ts +1 -1
  382. package/dist/server/shared/guards/collection-guards.d.ts +1 -1
  383. package/dist/server/shared/guards/collection-guards.js +2 -2
  384. package/dist/server/shared/guards/field-guards.d.ts +9 -20
  385. package/dist/server/shared/guards/field-guards.js +5 -20
  386. package/dist/server/shared/guards/index.d.ts +3 -3
  387. package/dist/server/shared/guards/index.js +2 -2
  388. package/dist/server/shared/http/ServerResponse.js +15 -15
  389. package/dist/server/shared/http/index.d.ts +3 -3
  390. package/dist/server/shared/http/index.js +3 -3
  391. package/dist/server/shared/http/withAccessCheck.d.ts +2 -2
  392. package/dist/server/shared/http/withAccessCheck.js +1 -1
  393. package/dist/server/shared/http/withErrorHandler.js +3 -3
  394. package/dist/server/shared/index.d.ts +6 -5
  395. package/dist/server/shared/index.js +4 -3
  396. package/dist/server/shared/utils/filterLocalizedFields.js +2 -2
  397. package/dist/server/shared/utils/getByPath.js +2 -2
  398. package/dist/server/shared/utils/index.d.ts +9 -9
  399. package/dist/server/shared/utils/index.js +8 -8
  400. package/dist/server/shared/utils/normalizePath.js +3 -3
  401. package/dist/server/shared/utils/setByPath.js +2 -2
  402. package/dist/translation-providers/index.d.ts +2 -0
  403. package/dist/translation-providers/index.js +10 -0
  404. package/dist/{server/modules/translation-providers → translation-providers/openai}/OpenAITranslation.provider.d.ts +1 -1
  405. package/dist/{server/modules/translation-providers → translation-providers/openai}/OpenAITranslation.provider.js +1 -1
  406. package/dist/translation-providers/openai/index.d.ts +1 -0
  407. package/dist/translation-providers/openai/index.js +5 -0
  408. package/dist/types/CollectionSchemaMap.d.ts +6 -0
  409. package/dist/types/CollectionSchemaMap.js +6 -0
  410. package/dist/{client/shared/types → types}/PayloadComponentExport.d.ts +1 -1
  411. package/dist/types/index.d.ts +4 -1
  412. package/dist/types/wire/field-translation.d.ts +17 -0
  413. package/dist/types/wire/field-translation.js +7 -0
  414. package/package.json +3 -1
  415. package/dist/server/modules/translation-pipeline/stages/data-reconciler/index.d.ts +0 -2
  416. package/dist/server/modules/translation-pipeline/stages/data-reconciler/index.js +0 -4
  417. package/dist/server/modules/translation-pipeline/stages/field-collector/index.d.ts +0 -2
  418. package/dist/server/modules/translation-pipeline/stages/field-collector/index.js +0 -4
  419. package/dist/server/modules/translation-pipeline/stages/index.d.ts +0 -6
  420. package/dist/server/modules/translation-pipeline/stages/index.js +0 -7
  421. package/dist/server/modules/translation-pipeline/stages/text-expander/index.d.ts +0 -6
  422. package/dist/server/modules/translation-pipeline/stages/text-expander/index.js +0 -6
  423. package/dist/server/modules/translation-pipeline/stages/translation/index.d.ts +0 -1
  424. package/dist/server/modules/translation-pipeline/stages/translation/index.js +0 -3
  425. package/dist/server/modules/translation-pipeline/stages/translation-applicator/index.d.ts +0 -2
  426. package/dist/server/modules/translation-pipeline/stages/translation-applicator/index.js +0 -4
  427. package/dist/server/modules/translation-pipeline/strategies/index.d.ts +0 -13
  428. package/dist/server/modules/translation-pipeline/types/index.d.ts +0 -5
  429. package/dist/server/modules/translation-pipeline/types/index.js +0 -3
  430. package/dist/server/modules/translation-providers/index.d.ts +0 -2
  431. package/dist/server/modules/translation-providers/index.js +0 -3
  432. package/dist/server/shared/field-config/getFieldConfig.d.ts +0 -20
  433. package/dist/server/shared/field-config/index.js +0 -4
  434. package/dist/server/shared/field-traversal/index.d.ts +0 -5
  435. package/dist/server/shared/field-traversal/index.js +0 -5
  436. package/dist/server/shared/lexical/index.d.ts +0 -6
  437. package/dist/server/shared/lexical/index.js +0 -6
  438. package/dist/server/shared/lexical/types.d.ts +0 -19
  439. package/dist/server/shared/lexical/types.js +0 -8
  440. /package/dist/{server/shared → core}/field-config/types.d.ts +0 -0
  441. /package/dist/{server/shared → core}/field-config/types.js +0 -0
  442. /package/dist/{server/shared → core}/field-traversal/findFieldByPath.js +0 -0
  443. /package/dist/{server/shared → core}/field-traversal/walkFields.js +0 -0
  444. /package/dist/{server/modules → core}/translation-pipeline/index.d.ts +0 -0
  445. /package/dist/{server/modules → core}/translation-pipeline/index.js +0 -0
  446. /package/dist/{server/modules → core}/translation-pipeline/stages/data-reconciler/DataReconciler.stage.d.ts +0 -0
  447. /package/dist/{server/modules → core}/translation-pipeline/stages/data-reconciler/DataReconciler.stage.js +0 -0
  448. /package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/TextChunkExpander.js +0 -0
  449. /package/dist/{server/modules → core}/translation-pipeline/stages/text-expander/TextExpander.interface.js +0 -0
  450. /package/dist/{server/modules → core}/translation-pipeline/strategies/TranslationStrategy.interface.d.ts +0 -0
  451. /package/dist/{server/modules → core}/translation-pipeline/strategies/TranslationStrategy.interface.js +0 -0
  452. /package/dist/{server/modules → core}/translation-pipeline/translateContent.js +0 -0
  453. /package/dist/{server/modules → core}/translation-pipeline/types/FieldChunk.js +0 -0
  454. /package/dist/{server/modules → core}/translation-pipeline/types/Pipeline.js +0 -0
  455. /package/dist/{server/modules → core}/translation-pipeline/types/PipelineContext.js +0 -0
  456. /package/dist/{server/modules → core}/translation-providers/TranslationProvider.interface.d.ts +0 -0
  457. /package/dist/{server/modules → core}/translation-providers/TranslationProvider.interface.js +0 -0
  458. /package/dist/{server/shared → core}/utils/isEmpty.d.ts +0 -0
  459. /package/dist/{server/shared → core}/utils/isObject.d.ts +0 -0
  460. /package/dist/{client/shared/types → types}/PayloadComponentExport.js +0 -0
@@ -0,0 +1,6 @@
1
+ export { isSerializedLexicalRoot, isSerializedLexicalTextNode, hasChildren } from "./guards";
2
+ export { isEmptyRichText } from "./isEmptyRichText";
3
+ export { traverseLexicalTree } from "./traverseLexicalTree";
4
+ export { collectSerializedLexicalTextNodes } from "./collectTextNodes";
5
+
6
+ //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import type { SerializedLexicalRoot } from './types';
1
+ import type { SerializedLexicalRoot } from "./types";
2
2
  /**
3
3
  * Checks if a serialized Lexical richText structure is empty.
4
4
  *
@@ -1,5 +1,5 @@
1
- import { traverseLexicalTree } from './traverseLexicalTree';
2
- import { isSerializedLexicalTextNode } from './guards';
1
+ import { traverseLexicalTree } from "./traverseLexicalTree";
2
+ import { isSerializedLexicalTextNode } from "./guards";
3
3
  /**
4
4
  * Checks if a serialized Lexical richText structure is empty.
5
5
  *
@@ -14,7 +14,7 @@ import { isSerializedLexicalTextNode } from './guards';
14
14
  let hasContent = false;
15
15
  traverseLexicalTree(value.root, (node)=>{
16
16
  const { type } = node;
17
- if (type !== 'paragraph' && type !== 'text' && type !== 'root') {
17
+ if (type !== "paragraph" && type !== "text" && type !== "root") {
18
18
  hasContent = true;
19
19
  return false;
20
20
  }
@@ -1,4 +1,4 @@
1
- import type { SerializedLexicalNode } from './types';
1
+ import type { SerializedLexicalNode } from "./types";
2
2
  /**
3
3
  * Traverses serialized Lexical tree depth-first and calls visitor for each node.
4
4
  * Stops early if visitor returns false.
@@ -1,4 +1,4 @@
1
- import { hasChildren } from './guards';
1
+ import { hasChildren } from "./guards";
2
2
  /**
3
3
  * Traverses serialized Lexical tree depth-first and calls visitor for each node.
4
4
  * Stops early if visitor returns false.
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Locally-owned structural views of the serialized Lexical JSON stored in Payload richText
3
+ * fields. Defined here (rather than imported from `@payloadcms/richtext-lexical`) so this layer
4
+ * stays framework-agnostic for the `@repo/translator-core` extraction. They are intentionally a
5
+ * structural SUPERSET of what this package reads (`type`, `text`, `children`) — Payload's concrete
6
+ * `Serialized*` nodes remain assignable to them (guarded by `types.conformance.test.ts`).
7
+ */
8
+ /** Base serialized Lexical node. `version` is carried by real nodes but never read here. */
9
+ export type SerializedLexicalNode = {
10
+ type: string;
11
+ version?: number;
12
+ };
13
+ /** A serialized text node — the only node whose `text` this package translates (and mutates). */
14
+ export type SerializedTextNode = SerializedLexicalNode & {
15
+ text: string;
16
+ };
17
+ /** An element node that carries children (e.g. the editor root, paragraphs). */
18
+ export type SerializedRootNode = SerializedLexicalNode & {
19
+ children: SerializedLexicalNode[];
20
+ };
21
+ /**
22
+ * Serialized Lexical root structure as stored in Payload CMS richText fields.
23
+ * Wraps the root node in a { root: ... } object.
24
+ */
25
+ export type SerializedLexicalRoot = {
26
+ root: SerializedLexicalNode;
27
+ };
28
+ /**
29
+ * Reference to a serialized text node for mutation during translation.
30
+ */
31
+ export type SerializedTextNodeRef = {
32
+ node: SerializedTextNode;
33
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Locally-owned structural views of the serialized Lexical JSON stored in Payload richText
3
+ * fields. Defined here (rather than imported from `@payloadcms/richtext-lexical`) so this layer
4
+ * stays framework-agnostic for the `@repo/translator-core` extraction. They are intentionally a
5
+ * structural SUPERSET of what this package reads (`type`, `text`, `children`) — Payload's concrete
6
+ * `Serialized*` nodes remain assignable to them (guarded by `types.conformance.test.ts`).
7
+ */ /** Base serialized Lexical node. `version` is carried by real nodes but never read here. */ /**
8
+ * Reference to a serialized text node for mutation during translation.
9
+ */ export { };
10
+
11
+ //# sourceMappingURL=types.js.map
@@ -1,7 +1,7 @@
1
- import type { TranslationProvider } from '../translation-providers';
2
- import type { PipelineConfig, PipelineResult } from './types';
3
- import type { TranslationStrategy } from './strategies';
4
- import type { TextExpander } from './stages';
1
+ import type { TranslationProvider } from "../translation-providers";
2
+ import type { PipelineConfig, PipelineResult } from "./types";
3
+ import type { TranslationStrategy } from "./strategies";
4
+ import type { TextExpander } from "./stages";
5
5
  /**
6
6
  * Options for TranslationPipeline.
7
7
  */
@@ -1,4 +1,4 @@
1
- import { DataReconcilerStage, FieldChunkCollectorStage, TranslationStage, TextChunkExpanderStage, TranslationMutatorStage } from './stages';
1
+ import { DataReconcilerStage, FieldChunkCollectorStage, TranslationStage, TextChunkExpanderStage, TranslationMutatorStage } from "./stages";
2
2
  /**
3
3
  * Main orchestrator for the translation pipeline.
4
4
  * Coordinates all stages in sequence via PipelineContext.
@@ -1,4 +1,4 @@
1
- import type { Field } from "payload";
1
+ import type { FieldLike } from "../../../field-traversal";
2
2
  /**
3
3
  * Deep-merges source and target data with target priority, producing the full document shape
4
4
  * Payload validation needs. Built on the shared {@link walkFields} engine.
@@ -7,7 +7,7 @@ import type { Field } from "payload";
7
7
  */
8
8
  export declare class DataReconciler {
9
9
  private readonly schema;
10
- constructor(schema: Field[]);
10
+ constructor(schema: FieldLike[]);
11
11
  /**
12
12
  * Reconciles source and target data into a complete document shape.
13
13
  *
@@ -1,5 +1,6 @@
1
- import { isEmpty, isObject } from "../../../../shared";
2
- import { matchElementById, resolveBlockFields, walkFields } from "../../../../shared/field-traversal";
1
+ import { isEmpty } from "../../../utils/isEmpty";
2
+ import { isObject } from "../../../utils/isObject";
3
+ import { matchElementById, resolveBlockFields, walkFields } from "../../../field-traversal";
3
4
  const asObject = (value)=>isObject(value) ? value : {};
4
5
  /**
5
6
  * Reconcile walker: produces the full document shape from source + target, with target
@@ -0,0 +1,2 @@
1
+ export { DataReconciler } from "./DataReconciler";
2
+ export { DataReconcilerStage } from "./DataReconciler.stage";
@@ -0,0 +1,4 @@
1
+ export { DataReconciler } from "./DataReconciler";
2
+ export { DataReconcilerStage } from "./DataReconciler.stage";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import type { Field } from "payload";
1
+ import type { FieldLike } from "../../../field-traversal";
2
2
  import type { TranslationStrategy } from "../../strategies";
3
3
  import type { FieldChunk } from "../../types";
4
4
  /**
@@ -22,7 +22,7 @@ export declare class FieldChunkCollector {
22
22
  private readonly sourceData;
23
23
  private readonly targetData;
24
24
  private readonly strategy;
25
- constructor(schema: Field[], filteredData: Record<string, unknown>, sourceData: Record<string, unknown>, targetData: Record<string, unknown>, strategy: TranslationStrategy);
25
+ constructor(schema: FieldLike[], filteredData: Record<string, unknown>, sourceData: Record<string, unknown>, targetData: Record<string, unknown>, strategy: TranslationStrategy);
26
26
  /** Collects translatable field chunks that need translation. */
27
27
  collect(): FieldChunk[];
28
28
  }
@@ -1,5 +1,6 @@
1
- import { isFieldExcludedFromTranslation, isLocalizedField, isObject, isTranslatableField } from "../../../../shared";
2
- import { matchElementById, resolveBlockFields, walkFields } from "../../../../shared/field-traversal";
1
+ import { isTranslatableLeaf } from "../../../content-projection/translatableLeaf";
2
+ import { matchElementById, resolveBlockFields, walkFields } from "../../../field-traversal";
3
+ import { isObject } from "../../../utils/isObject";
3
4
  const asObject = (value)=>isObject(value) ? value : {};
4
5
  /**
5
6
  * Collects FieldChunks by walking schema + data with the shared {@link walkFields} engine.
@@ -29,6 +30,10 @@ const asObject = (value)=>isObject(value) ? value : {};
29
30
  this.strategy = strategy;
30
31
  }
31
32
  /** Collects translatable field chunks that need translation. */ collect() {
33
+ // The read walk SELECTS translatable leaves (via the shared selection core) and records, per
34
+ // selected leaf, the source value to translate plus its write target. The mutation is applied
35
+ // in a separate explicit pass below — read and write are no longer fused inside the walk.
36
+ const selected = [];
32
37
  const chunks = [];
33
38
  const { strategy } = this;
34
39
  const walker = {
@@ -83,11 +88,15 @@ const asObject = (value)=>isObject(value) ? value : {};
83
88
  if (value === undefined || value === null) return undefined;
84
89
  const sourceValue = cursor.source[field.name];
85
90
  const targetValue = cursor.target[field.name];
86
- if (isTranslatableField(field) && isLocalizedField(field) && !isFieldExcludedFromTranslation(field) && strategy.shouldTranslate({
91
+ if (isTranslatableLeaf(field) && strategy.shouldTranslate({
87
92
  sourceValue,
88
93
  targetValue
89
94
  })) {
90
- cursor.data[field.name] = sourceValue; // write source value into filteredData — this is what gets translated
95
+ selected.push({
96
+ dataRef: cursor.data,
97
+ key: field.name,
98
+ sourceValue
99
+ });
91
100
  chunks.push({
92
101
  schema: field,
93
102
  dataRef: cursor.data,
@@ -110,6 +119,11 @@ const asObject = (value)=>isObject(value) ? value : {};
110
119
  target: this.targetData,
111
120
  path: []
112
121
  }, walker);
122
+ // Apply pass: write each selected leaf's source value into filteredData — this is what gets
123
+ // translated. Kept separate from the read walk above so selection stays read-only.
124
+ for (const { dataRef, key, sourceValue } of selected){
125
+ dataRef[key] = sourceValue;
126
+ }
113
127
  return chunks;
114
128
  }
115
129
  }
@@ -1,5 +1,5 @@
1
- import type { PipelineContext, PipelineStage } from '../../types';
2
- import type { TranslationStrategy } from '../../strategies';
1
+ import type { PipelineContext, PipelineStage } from "../../types";
2
+ import type { TranslationStrategy } from "../../strategies";
3
3
  /**
4
4
  * Collects FieldChunks with schema metadata and data references.
5
5
  * Applies all filtering logic including strategy.shouldTranslate().
@@ -1,4 +1,4 @@
1
- import { FieldChunkCollector } from './FieldChunkCollector';
1
+ import { FieldChunkCollector } from "./FieldChunkCollector";
2
2
  /**
3
3
  * Collects FieldChunks with schema metadata and data references.
4
4
  * Applies all filtering logic including strategy.shouldTranslate().
@@ -10,7 +10,7 @@ import { FieldChunkCollector } from './FieldChunkCollector';
10
10
  }
11
11
  execute(ctx) {
12
12
  if (!ctx.filteredData) {
13
- throw new Error('FieldChunkCollectorStage requires filteredData from previous stage');
13
+ throw new Error("FieldChunkCollectorStage requires filteredData from previous stage");
14
14
  }
15
15
  const collector = new FieldChunkCollector(ctx.schema, ctx.filteredData, ctx.sourceData, ctx.targetData, this.strategy);
16
16
  return {
@@ -0,0 +1,2 @@
1
+ export { FieldChunkCollector } from "./FieldChunkCollector";
2
+ export { FieldChunkCollectorStage } from "./FieldChunkCollector.stage";
@@ -0,0 +1,4 @@
1
+ export { FieldChunkCollector } from "./FieldChunkCollector";
2
+ export { FieldChunkCollectorStage } from "./FieldChunkCollector.stage";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ export { DataReconciler, DataReconcilerStage } from "./data-reconciler";
2
+ export { FieldChunkCollector, FieldChunkCollectorStage } from "./field-collector";
3
+ export { TextChunkExpander, PlainTextExpander, RichTextExpander, TextChunkExpanderStage, } from "./text-expander";
4
+ export type { TextExpansionResult, TextExpander, ExpansionResult } from "./text-expander";
5
+ export { TranslationStage } from "./translation";
6
+ export { TranslationMutator, TranslationMutatorStage } from "./translation-applicator";
@@ -0,0 +1,7 @@
1
+ export { DataReconciler, DataReconcilerStage } from "./data-reconciler";
2
+ export { FieldChunkCollector, FieldChunkCollectorStage } from "./field-collector";
3
+ export { TextChunkExpander, PlainTextExpander, RichTextExpander, TextChunkExpanderStage } from "./text-expander";
4
+ export { TranslationStage } from "./translation";
5
+ export { TranslationMutator, TranslationMutatorStage } from "./translation-applicator";
6
+
7
+ //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import type { FieldChunk } from '../../types';
2
- import type { ExpansionResult, TextExpander } from './TextExpander.interface';
1
+ import type { FieldChunk } from "../../types";
2
+ import type { ExpansionResult, TextExpander } from "./TextExpander.interface";
3
3
  /**
4
4
  * Expands plain text and textarea fields into PlainTextChunks.
5
5
  */
@@ -2,12 +2,12 @@
2
2
  * Expands plain text and textarea fields into PlainTextChunks.
3
3
  */ export class PlainTextExpander {
4
4
  canExpand(_chunk, value) {
5
- return typeof value === 'string' && value.trim().length > 0;
5
+ return typeof value === "string" && value.trim().length > 0;
6
6
  }
7
7
  expand(chunk, value, startIndex) {
8
8
  const text = value;
9
9
  const textChunk = {
10
- type: 'plain',
10
+ type: "plain",
11
11
  index: startIndex,
12
12
  text,
13
13
  dataRef: chunk.dataRef,
@@ -1,5 +1,5 @@
1
- import type { FieldChunk } from '../../types';
2
- import type { ExpansionResult, TextExpander } from './TextExpander.interface';
1
+ import type { FieldChunk } from "../../types";
2
+ import type { ExpansionResult, TextExpander } from "./TextExpander.interface";
3
3
  /**
4
4
  * Expands richText fields into multiple RichTextChunks (one per text node).
5
5
  */
@@ -1,9 +1,9 @@
1
- import { isSerializedLexicalRoot, collectSerializedLexicalTextNodes } from '../../../../shared/lexical';
1
+ import { isSerializedLexicalRoot, collectSerializedLexicalTextNodes } from "../../../lexical";
2
2
  /**
3
3
  * Expands richText fields into multiple RichTextChunks (one per text node).
4
4
  */ export class RichTextExpander {
5
5
  canExpand(chunk, value) {
6
- return chunk.schema.type === 'richText' && isSerializedLexicalRoot(value);
6
+ return chunk.schema.type === "richText" && isSerializedLexicalRoot(value);
7
7
  }
8
8
  expand(_chunk, value, startIndex) {
9
9
  const root = value;
@@ -13,7 +13,7 @@ import { isSerializedLexicalRoot, collectSerializedLexicalTextNodes } from '../.
13
13
  let index = startIndex;
14
14
  for (const ref of textNodeRefs){
15
15
  chunks.push({
16
- type: 'richText',
16
+ type: "richText",
17
17
  index,
18
18
  text: ref.node.text,
19
19
  nodeRef: ref.node
@@ -1,5 +1,5 @@
1
- import type { FieldChunk, TextChunk } from '../../types';
2
- import type { TextExpander } from './TextExpander.interface';
1
+ import type { FieldChunk, TextChunk } from "../../types";
2
+ import type { TextExpander } from "./TextExpander.interface";
3
3
  /**
4
4
  * Result of text chunk expansion.
5
5
  */
@@ -1,5 +1,5 @@
1
- import type { PipelineContext, PipelineStage } from '../../types';
2
- import type { TextExpander } from './TextExpander.interface';
1
+ import type { PipelineContext, PipelineStage } from "../../types";
2
+ import type { TextExpander } from "./TextExpander.interface";
3
3
  /**
4
4
  * Expands FieldChunks to TextChunks (schema-free).
5
5
  */
@@ -1,6 +1,6 @@
1
- import { TextChunkExpander } from './TextChunkExpander';
2
- import { RichTextExpander } from './RichTextExpander';
3
- import { PlainTextExpander } from './PlainTextExpander';
1
+ import { TextChunkExpander } from "./TextChunkExpander";
2
+ import { RichTextExpander } from "./RichTextExpander";
3
+ import { PlainTextExpander } from "./PlainTextExpander";
4
4
  const defaultExpanders = [
5
5
  new RichTextExpander(),
6
6
  new PlainTextExpander()
@@ -14,7 +14,7 @@ const defaultExpanders = [
14
14
  }
15
15
  execute(ctx) {
16
16
  if (!ctx.fieldChunks) {
17
- throw new Error('TextChunkExpanderStage requires fieldChunks from previous stage');
17
+ throw new Error("TextChunkExpanderStage requires fieldChunks from previous stage");
18
18
  }
19
19
  const expander = new TextChunkExpander(this.expanders);
20
20
  const { textChunks, textMap } = expander.expand(ctx.fieldChunks);
@@ -1,4 +1,4 @@
1
- import type { FieldChunk, TextChunk } from '../../types';
1
+ import type { FieldChunk, TextChunk } from "../../types";
2
2
  /**
3
3
  * Result of text expansion for a single FieldChunk.
4
4
  */
@@ -0,0 +1,6 @@
1
+ export { TextChunkExpander } from "./TextChunkExpander";
2
+ export type { TextExpansionResult } from "./TextChunkExpander";
3
+ export type { TextExpander, ExpansionResult } from "./TextExpander.interface";
4
+ export { PlainTextExpander } from "./PlainTextExpander";
5
+ export { RichTextExpander } from "./RichTextExpander";
6
+ export { TextChunkExpanderStage } from "./TextChunkExpander.stage";
@@ -0,0 +1,6 @@
1
+ export { TextChunkExpander } from "./TextChunkExpander";
2
+ export { PlainTextExpander } from "./PlainTextExpander";
3
+ export { RichTextExpander } from "./RichTextExpander";
4
+ export { TextChunkExpanderStage } from "./TextChunkExpander.stage";
5
+
6
+ //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import type { PipelineContext, PipelineStage } from '../../types';
2
- import type { TranslationProvider } from '../../../translation-providers';
1
+ import type { PipelineContext, PipelineStage } from "../../types";
2
+ import type { TranslationProvider } from "../../../translation-providers";
3
3
  /**
4
4
  * Calls translation provider to translate text.
5
5
  */
@@ -11,7 +11,7 @@
11
11
  }
12
12
  const translations = await this.provider.translate(ctx.textMap, ctx.sourceLng, ctx.targetLng);
13
13
  if (!translations) {
14
- throw new Error('Translation provider returned null');
14
+ throw new Error("Translation provider returned null");
15
15
  }
16
16
  return {
17
17
  ...ctx,
@@ -0,0 +1 @@
1
+ export { TranslationStage } from "./Translation.stage";
@@ -0,0 +1,3 @@
1
+ export { TranslationStage } from "./Translation.stage";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import type { TextChunk } from '../../types';
1
+ import type { TextChunk } from "../../types";
2
2
  /**
3
3
  * Applies translations by mutating data through TextChunk references.
4
4
  * This is the simplest stage - just direct mutation.
@@ -1,4 +1,4 @@
1
- import { isPlainTextChunk, isRichTextChunk } from '../../types';
1
+ import { isPlainTextChunk, isRichTextChunk } from "../../types";
2
2
  /**
3
3
  * Applies translations by mutating data through TextChunk references.
4
4
  * This is the simplest stage - just direct mutation.
@@ -1,4 +1,4 @@
1
- import type { PipelineContext, PipelineStage } from '../../types';
1
+ import type { PipelineContext, PipelineStage } from "../../types";
2
2
  /**
3
3
  * Applies translations to data via mutation.
4
4
  */
@@ -1,10 +1,10 @@
1
- import { TranslationMutator } from './TranslationMutator';
1
+ import { TranslationMutator } from "./TranslationMutator";
2
2
  /**
3
3
  * Applies translations to data via mutation.
4
4
  */ export class TranslationMutatorStage {
5
5
  execute(ctx) {
6
6
  if (!ctx.textChunks || !ctx.translations) {
7
- throw new Error('TranslationMutatorStage requires textChunks and translations');
7
+ throw new Error("TranslationMutatorStage requires textChunks and translations");
8
8
  }
9
9
  const mutator = new TranslationMutator();
10
10
  mutator.apply(ctx.textChunks, ctx.translations);
@@ -0,0 +1,2 @@
1
+ export { TranslationMutator } from "./TranslationMutator";
2
+ export { TranslationMutatorStage } from "./TranslationMutator.stage";
@@ -0,0 +1,4 @@
1
+ export { TranslationMutator } from "./TranslationMutator";
2
+ export { TranslationMutatorStage } from "./TranslationMutator.stage";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import type { TranslationStrategy, StrategyContext } from './TranslationStrategy.interface';
1
+ import type { TranslationStrategy, StrategyContext } from "./TranslationStrategy.interface";
2
2
  /**
3
3
  * Translates all fields, overwriting existing translations.
4
4
  * This is the default strategy.
@@ -1,4 +1,4 @@
1
- import { isEmpty } from '../../../shared';
1
+ import { isEmpty } from "../../utils/isEmpty";
2
2
  /**
3
3
  * Translates all fields, overwriting existing translations.
4
4
  * This is the default strategy.
@@ -1,4 +1,4 @@
1
- import type { TranslationStrategy, StrategyContext } from './TranslationStrategy.interface';
1
+ import type { TranslationStrategy, StrategyContext } from "./TranslationStrategy.interface";
2
2
  /**
3
3
  * Only translates fields that are empty or missing in the target locale.
4
4
  * Existing translations are preserved.
@@ -1,4 +1,6 @@
1
- import { isSerializedLexicalRoot, isEmptyRichText, isEmpty } from '../../../shared';
1
+ import { isEmptyRichText } from "../../lexical/isEmptyRichText";
2
+ import { isSerializedLexicalRoot } from "../../lexical/guards";
3
+ import { isEmpty } from "../../utils/isEmpty";
2
4
  /**
3
5
  * Only translates fields that are empty or missing in the target locale.
4
6
  * Existing translations are preserved.
@@ -0,0 +1,13 @@
1
+ import type { TranslationStrategy } from "./TranslationStrategy.interface";
2
+ import { OverwriteStrategy } from "./Overwrite.strategy";
3
+ import { SkipExistingStrategy } from "./SkipExisting.strategy";
4
+ export type { TranslationStrategy, StrategyContext } from "./TranslationStrategy.interface";
5
+ export { OverwriteStrategy, SkipExistingStrategy };
6
+ /**
7
+ * Strategy names for runtime selection.
8
+ */
9
+ export type TranslationStrategyName = "overwrite" | "skip_existing";
10
+ /**
11
+ * Creates a TranslationStrategy instance by name.
12
+ */
13
+ export declare function createTranslationStrategy(name: TranslationStrategyName): TranslationStrategy;
@@ -1,13 +1,13 @@
1
- import { OverwriteStrategy } from './Overwrite.strategy';
2
- import { SkipExistingStrategy } from './SkipExisting.strategy';
1
+ import { OverwriteStrategy } from "./Overwrite.strategy";
2
+ import { SkipExistingStrategy } from "./SkipExisting.strategy";
3
3
  export { OverwriteStrategy, SkipExistingStrategy };
4
4
  /**
5
5
  * Creates a TranslationStrategy instance by name.
6
6
  */ export function createTranslationStrategy(name) {
7
7
  switch(name){
8
- case 'skip_existing':
8
+ case "skip_existing":
9
9
  return new SkipExistingStrategy();
10
- case 'overwrite':
10
+ case "overwrite":
11
11
  default:
12
12
  return new OverwriteStrategy();
13
13
  }
@@ -1,9 +1,9 @@
1
- import type { Field } from "payload";
1
+ import type { FieldLike } from "../field-traversal";
2
2
  import type { TranslationProvider } from "../translation-providers";
3
3
  import type { TranslationStrategyName } from "./strategies";
4
4
  export type TranslateContentArgs = {
5
5
  /** Schema subtree to translate (e.g. `[declaredFieldConfig]`). */
6
- schema: Field[];
6
+ schema: FieldLike[];
7
7
  /** Source values, rooted to match `schema` (e.g. `{ [fieldName]: value }`). */
8
8
  sourceData: Record<string, unknown>;
9
9
  /**
@@ -1,4 +1,4 @@
1
- import type { Field } from 'payload';
1
+ import type { LeafFieldLike } from "../../field-traversal/types";
2
2
  /**
3
3
  * Represents a field-level chunk containing schema metadata.
4
4
  * Used in stages 1-3 where schema awareness is needed.
@@ -6,8 +6,8 @@ import type { Field } from 'payload';
6
6
  * Contains a reference to the parent data object for later mutation.
7
7
  */
8
8
  export type FieldChunk = {
9
- /** The field schema from Payload CMS */
10
- schema: Field;
9
+ /** The leaf field schema (only `type`/`name` are read downstream). */
10
+ schema: LeafFieldLike;
11
11
  /** Reference to the parent data object (for mutation) */
12
12
  dataRef: Record<string, unknown>;
13
13
  /** The key in the dataRef object */
@@ -1,10 +1,10 @@
1
- import type { Field } from 'payload';
1
+ import type { FieldLike } from "../../field-traversal";
2
2
  /**
3
3
  * Pipeline configuration for translation execution.
4
4
  * Contains only data transformation inputs — no persistence concerns.
5
5
  */
6
6
  export type PipelineConfig = {
7
- schema: Field[];
7
+ schema: FieldLike[];
8
8
  sourceData: Record<string, unknown>;
9
9
  targetData: Record<string, unknown>;
10
10
  sourceLng: string;
@@ -1,12 +1,12 @@
1
- import type { Field } from 'payload';
2
- import type { FieldChunk } from './FieldChunk';
3
- import type { TextChunk } from './TextChunk';
1
+ import type { FieldLike } from "../../field-traversal";
2
+ import type { FieldChunk } from "./FieldChunk";
3
+ import type { TextChunk } from "./TextChunk";
4
4
  /**
5
5
  * Pipeline context passed through all stages.
6
6
  * Each stage reads from context and writes its results back.
7
7
  */
8
8
  export type PipelineContext = {
9
- readonly schema: Field[];
9
+ readonly schema: FieldLike[];
10
10
  readonly sourceData: Record<string, unknown>;
11
11
  readonly targetData: Record<string, unknown>;
12
12
  readonly sourceLng: string;
@@ -1,10 +1,10 @@
1
- import type { SerializedTextNode } from '../../../shared/lexical';
1
+ import type { SerializedTextNode } from "../../lexical";
2
2
  /**
3
3
  * Text chunk for plain text/textarea fields.
4
4
  * Mutates dataRef[key] directly.
5
5
  */
6
6
  export type PlainTextChunk = {
7
- type: 'plain';
7
+ type: "plain";
8
8
  /** Unique index for translation mapping */
9
9
  index: number;
10
10
  /** Original text value */
@@ -19,7 +19,7 @@ export type PlainTextChunk = {
19
19
  * Mutates nodeRef.text directly.
20
20
  */
21
21
  export type RichTextChunk = {
22
- type: 'richText';
22
+ type: "richText";
23
23
  /** Unique index for translation mapping */
24
24
  index: number;
25
25
  /** Original text value */