@skedulo/integration-sdk 0.2.2 → 0.2.4

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 (341) hide show
  1. package/.claude/worktrees/agent-a16acadaf5412dffd/jest.config.js +12 -0
  2. package/.claude/worktrees/agent-a33c3e4636d488e49/jest.config.js +12 -0
  3. package/.claude/worktrees/agent-a5b1d2ffa4ceef4a6/jest.config.js +12 -0
  4. package/.claude/worktrees/agent-aa1db4c22eabbde8e/jest.config.js +12 -0
  5. package/.claude/worktrees/agent-ac197ae8c69d7061c/jest.config.js +12 -0
  6. package/dist/adapters/skedulo.adapter.d.ts.map +1 -1
  7. package/dist/adapters/skedulo.adapter.js +8 -1
  8. package/dist/adapters/skedulo.adapter.js.map +1 -1
  9. package/dist/clients/dataflow.client.d.ts +1 -0
  10. package/dist/clients/dataflow.client.d.ts.map +1 -1
  11. package/dist/clients/dataflow.client.js +7 -0
  12. package/dist/clients/dataflow.client.js.map +1 -1
  13. package/dist/interfaces/adapter.interface.d.ts +20 -1
  14. package/dist/interfaces/adapter.interface.d.ts.map +1 -1
  15. package/dist/interfaces/data-flow-spec.interface.d.ts +2 -0
  16. package/dist/interfaces/data-flow-spec.interface.d.ts.map +1 -1
  17. package/dist/interfaces/sync-flow-strategy.interface.d.ts +6 -0
  18. package/dist/interfaces/sync-flow-strategy.interface.d.ts.map +1 -1
  19. package/dist/interfaces/sync-result.interface.d.ts +2 -1
  20. package/dist/interfaces/sync-result.interface.d.ts.map +1 -1
  21. package/dist/services/dataflow.service.d.ts +1 -0
  22. package/dist/services/dataflow.service.d.ts.map +1 -1
  23. package/dist/services/dataflow.service.js +3 -0
  24. package/dist/services/dataflow.service.js.map +1 -1
  25. package/dist/services/external-id-sync.strategy.js +1 -1
  26. package/dist/services/external-id-sync.strategy.js.map +1 -1
  27. package/dist/services/field-mapping.service.d.ts +1 -0
  28. package/dist/services/field-mapping.service.d.ts.map +1 -1
  29. package/dist/services/id-mapping-sync.strategy.d.ts.map +1 -1
  30. package/dist/services/id-mapping-sync.strategy.js +8 -4
  31. package/dist/services/id-mapping-sync.strategy.js.map +1 -1
  32. package/dist/services/sync-runner.d.ts.map +1 -1
  33. package/dist/services/sync-runner.js +20 -4
  34. package/dist/services/sync-runner.js.map +1 -1
  35. package/dist/services/sync.service.d.ts.map +1 -1
  36. package/dist/services/sync.service.js +52 -9
  37. package/dist/services/sync.service.js.map +1 -1
  38. package/dist/utils/normalizeDataFlow.d.ts.map +1 -1
  39. package/dist/utils/normalizeDataFlow.js +8 -1
  40. package/dist/utils/normalizeDataFlow.js.map +1 -1
  41. package/package.json +1 -1
  42. package/dist/adapters/skedulo-metadata-adapter.d.ts +0 -3
  43. package/dist/adapters/skedulo-metadata-adapter.d.ts.map +0 -1
  44. package/dist/adapters/skedulo-metadata-adapter.js +0 -57
  45. package/dist/adapters/skedulo-metadata-adapter.js.map +0 -1
  46. package/dist/adapters/skedulo-metadata.adapter.d.ts +0 -3
  47. package/dist/adapters/skedulo-metadata.adapter.d.ts.map +0 -1
  48. package/dist/adapters/skedulo-metadata.adapter.js +0 -57
  49. package/dist/adapters/skedulo-metadata.adapter.js.map +0 -1
  50. package/dist/clients/dataflow-client.d.ts +0 -18
  51. package/dist/clients/dataflow-client.d.ts.map +0 -1
  52. package/dist/clients/dataflow-client.js +0 -43
  53. package/dist/clients/dataflow-client.js.map +0 -1
  54. package/dist/clients/proxy-client.d.ts +0 -13
  55. package/dist/clients/proxy-client.d.ts.map +0 -1
  56. package/dist/clients/proxy-client.js +0 -20
  57. package/dist/clients/proxy-client.js.map +0 -1
  58. package/dist/dist/adapters/skedulo-metadata-adapter.d.ts +0 -3
  59. package/dist/dist/adapters/skedulo-metadata-adapter.d.ts.map +0 -1
  60. package/dist/dist/adapters/skedulo-metadata-adapter.js +0 -57
  61. package/dist/dist/adapters/skedulo-metadata-adapter.js.map +0 -1
  62. package/dist/dist/adapters/skedulo-metadata.adapter.d.ts +0 -3
  63. package/dist/dist/adapters/skedulo-metadata.adapter.d.ts.map +0 -1
  64. package/dist/dist/adapters/skedulo-metadata.adapter.js +0 -57
  65. package/dist/dist/adapters/skedulo-metadata.adapter.js.map +0 -1
  66. package/dist/dist/adapters/skedulo.adapter.d.ts +0 -15
  67. package/dist/dist/adapters/skedulo.adapter.d.ts.map +0 -1
  68. package/dist/dist/adapters/skedulo.adapter.js +0 -213
  69. package/dist/dist/adapters/skedulo.adapter.js.map +0 -1
  70. package/dist/dist/browser.d.ts +0 -12
  71. package/dist/dist/browser.d.ts.map +0 -1
  72. package/dist/dist/browser.js +0 -9
  73. package/dist/dist/browser.js.map +0 -1
  74. package/dist/dist/clients/dataflow-client.d.ts +0 -18
  75. package/dist/dist/clients/dataflow-client.d.ts.map +0 -1
  76. package/dist/dist/clients/dataflow-client.js +0 -43
  77. package/dist/dist/clients/dataflow-client.js.map +0 -1
  78. package/dist/dist/clients/dataflow.client.d.ts +0 -19
  79. package/dist/dist/clients/dataflow.client.d.ts.map +0 -1
  80. package/dist/dist/clients/dataflow.client.js +0 -28
  81. package/dist/dist/clients/dataflow.client.js.map +0 -1
  82. package/dist/dist/clients/proxy-client.d.ts +0 -13
  83. package/dist/dist/clients/proxy-client.d.ts.map +0 -1
  84. package/dist/dist/clients/proxy-client.js +0 -20
  85. package/dist/dist/clients/proxy-client.js.map +0 -1
  86. package/dist/dist/clients/proxy.client.d.ts +0 -13
  87. package/dist/dist/clients/proxy.client.d.ts.map +0 -1
  88. package/dist/dist/clients/proxy.client.js +0 -21
  89. package/dist/dist/clients/proxy.client.js.map +0 -1
  90. package/dist/dist/constants.d.ts +0 -17
  91. package/dist/dist/constants.d.ts.map +0 -1
  92. package/dist/dist/constants.js +0 -20
  93. package/dist/dist/constants.js.map +0 -1
  94. package/dist/dist/context.d.ts +0 -19
  95. package/dist/dist/context.d.ts.map +0 -1
  96. package/dist/dist/context.js +0 -40
  97. package/dist/dist/context.js.map +0 -1
  98. package/dist/dist/handlers/metadata.handler.d.ts +0 -17
  99. package/dist/dist/handlers/metadata.handler.d.ts.map +0 -1
  100. package/dist/dist/handlers/metadata.handler.js +0 -50
  101. package/dist/dist/handlers/metadata.handler.js.map +0 -1
  102. package/dist/dist/index.d.ts +0 -18
  103. package/dist/dist/index.d.ts.map +0 -1
  104. package/dist/dist/index.js +0 -48
  105. package/dist/dist/index.js.map +0 -1
  106. package/dist/dist/interfaces/adapter.interface.d.ts +0 -122
  107. package/dist/dist/interfaces/adapter.interface.d.ts.map +0 -1
  108. package/dist/dist/interfaces/adapter.interface.js +0 -3
  109. package/dist/dist/interfaces/adapter.interface.js.map +0 -1
  110. package/dist/dist/interfaces/data-flow-spec.interface.d.ts +0 -22
  111. package/dist/dist/interfaces/data-flow-spec.interface.d.ts.map +0 -1
  112. package/dist/dist/interfaces/data-flow-spec.interface.js +0 -3
  113. package/dist/dist/interfaces/data-flow-spec.interface.js.map +0 -1
  114. package/dist/dist/interfaces/field-mapping.interface.d.ts +0 -26
  115. package/dist/dist/interfaces/field-mapping.interface.d.ts.map +0 -1
  116. package/dist/dist/interfaces/field-mapping.interface.js +0 -3
  117. package/dist/dist/interfaces/field-mapping.interface.js.map +0 -1
  118. package/dist/dist/interfaces/filter.interface.d.ts +0 -19
  119. package/dist/dist/interfaces/filter.interface.d.ts.map +0 -1
  120. package/dist/dist/interfaces/filter.interface.js +0 -20
  121. package/dist/dist/interfaces/filter.interface.js.map +0 -1
  122. package/dist/dist/interfaces/integration-capabilities.interface.d.ts +0 -13
  123. package/dist/dist/interfaces/integration-capabilities.interface.d.ts.map +0 -1
  124. package/dist/dist/interfaces/integration-capabilities.interface.js +0 -3
  125. package/dist/dist/interfaces/integration-capabilities.interface.js.map +0 -1
  126. package/dist/dist/interfaces/lookup-rule.interface.d.ts +0 -14
  127. package/dist/dist/interfaces/lookup-rule.interface.d.ts.map +0 -1
  128. package/dist/dist/interfaces/lookup-rule.interface.js +0 -3
  129. package/dist/dist/interfaces/lookup-rule.interface.js.map +0 -1
  130. package/dist/dist/interfaces/mapped-event.interface.d.ts +0 -9
  131. package/dist/dist/interfaces/mapped-event.interface.d.ts.map +0 -1
  132. package/dist/dist/interfaces/mapped-event.interface.js +0 -3
  133. package/dist/dist/interfaces/mapped-event.interface.js.map +0 -1
  134. package/dist/dist/interfaces/mapping-config.interface.d.ts +0 -26
  135. package/dist/dist/interfaces/mapping-config.interface.d.ts.map +0 -1
  136. package/dist/dist/interfaces/mapping-config.interface.js +0 -3
  137. package/dist/dist/interfaces/mapping-config.interface.js.map +0 -1
  138. package/dist/dist/interfaces/metadata-adapter.interface.d.ts +0 -26
  139. package/dist/dist/interfaces/metadata-adapter.interface.d.ts.map +0 -1
  140. package/dist/dist/interfaces/metadata-adapter.interface.js +0 -3
  141. package/dist/dist/interfaces/metadata-adapter.interface.js.map +0 -1
  142. package/dist/dist/interfaces/pull-adapter.interface.d.ts +0 -50
  143. package/dist/dist/interfaces/pull-adapter.interface.d.ts.map +0 -1
  144. package/dist/dist/interfaces/pull-adapter.interface.js +0 -3
  145. package/dist/dist/interfaces/pull-adapter.interface.js.map +0 -1
  146. package/dist/dist/interfaces/push-adapter.interface.d.ts +0 -28
  147. package/dist/dist/interfaces/push-adapter.interface.d.ts.map +0 -1
  148. package/dist/dist/interfaces/push-adapter.interface.js +0 -3
  149. package/dist/dist/interfaces/push-adapter.interface.js.map +0 -1
  150. package/dist/dist/interfaces/sample-fetcher.interface.d.ts +0 -4
  151. package/dist/dist/interfaces/sample-fetcher.interface.d.ts.map +0 -1
  152. package/dist/dist/interfaces/sample-fetcher.interface.js +0 -3
  153. package/dist/dist/interfaces/sample-fetcher.interface.js.map +0 -1
  154. package/dist/dist/interfaces/sync-result.interface.d.ts +0 -19
  155. package/dist/dist/interfaces/sync-result.interface.d.ts.map +0 -1
  156. package/dist/dist/interfaces/sync-result.interface.js +0 -3
  157. package/dist/dist/interfaces/sync-result.interface.js.map +0 -1
  158. package/dist/dist/interfaces/target-adapter.interface.d.ts +0 -10
  159. package/dist/dist/interfaces/target-adapter.interface.d.ts.map +0 -1
  160. package/dist/dist/interfaces/target-adapter.interface.js +0 -3
  161. package/dist/dist/interfaces/target-adapter.interface.js.map +0 -1
  162. package/dist/dist/mocks/hubspot.d.ts +0 -4
  163. package/dist/dist/mocks/hubspot.d.ts.map +0 -1
  164. package/dist/dist/mocks/hubspot.js +0 -61
  165. package/dist/dist/mocks/hubspot.js.map +0 -1
  166. package/dist/dist/provenance.d.ts +0 -3
  167. package/dist/dist/provenance.d.ts.map +0 -1
  168. package/dist/dist/provenance.js +0 -12
  169. package/dist/dist/provenance.js.map +0 -1
  170. package/dist/dist/services/dataflow-service.d.ts +0 -21
  171. package/dist/dist/services/dataflow-service.d.ts.map +0 -1
  172. package/dist/dist/services/dataflow-service.js +0 -47
  173. package/dist/dist/services/dataflow-service.js.map +0 -1
  174. package/dist/dist/services/dataflow.service.d.ts +0 -20
  175. package/dist/dist/services/dataflow.service.d.ts.map +0 -1
  176. package/dist/dist/services/dataflow.service.js +0 -52
  177. package/dist/dist/services/dataflow.service.js.map +0 -1
  178. package/dist/dist/services/eql.d.ts +0 -2
  179. package/dist/dist/services/eql.d.ts.map +0 -1
  180. package/dist/dist/services/eql.js +0 -10
  181. package/dist/dist/services/eql.js.map +0 -1
  182. package/dist/dist/services/mapping-service.d.ts +0 -14
  183. package/dist/dist/services/mapping-service.d.ts.map +0 -1
  184. package/dist/dist/services/mapping-service.js +0 -88
  185. package/dist/dist/services/mapping-service.js.map +0 -1
  186. package/dist/dist/services/mapping.service.d.ts +0 -14
  187. package/dist/dist/services/mapping.service.d.ts.map +0 -1
  188. package/dist/dist/services/mapping.service.js +0 -89
  189. package/dist/dist/services/mapping.service.js.map +0 -1
  190. package/dist/dist/services/outbound-service.d.ts +0 -14
  191. package/dist/dist/services/outbound-service.d.ts.map +0 -1
  192. package/dist/dist/services/outbound-service.js +0 -65
  193. package/dist/dist/services/outbound-service.js.map +0 -1
  194. package/dist/dist/services/paragon-workflow-service.d.ts +0 -7
  195. package/dist/dist/services/paragon-workflow-service.d.ts.map +0 -1
  196. package/dist/dist/services/paragon-workflow-service.js +0 -68
  197. package/dist/dist/services/paragon-workflow-service.js.map +0 -1
  198. package/dist/dist/services/paragon-workflow.service.d.ts +0 -8
  199. package/dist/dist/services/paragon-workflow.service.d.ts.map +0 -1
  200. package/dist/dist/services/paragon-workflow.service.js +0 -31
  201. package/dist/dist/services/paragon-workflow.service.js.map +0 -1
  202. package/dist/dist/services/preview-service.d.ts +0 -11
  203. package/dist/dist/services/preview-service.d.ts.map +0 -1
  204. package/dist/dist/services/preview-service.js +0 -66
  205. package/dist/dist/services/preview-service.js.map +0 -1
  206. package/dist/dist/services/preview.service.d.ts +0 -11
  207. package/dist/dist/services/preview.service.d.ts.map +0 -1
  208. package/dist/dist/services/preview.service.js +0 -74
  209. package/dist/dist/services/preview.service.js.map +0 -1
  210. package/dist/dist/services/pull-service.d.ts +0 -9
  211. package/dist/dist/services/pull-service.d.ts.map +0 -1
  212. package/dist/dist/services/pull-service.js +0 -207
  213. package/dist/dist/services/pull-service.js.map +0 -1
  214. package/dist/dist/services/pull.service.d.ts +0 -11
  215. package/dist/dist/services/pull.service.d.ts.map +0 -1
  216. package/dist/dist/services/pull.service.js +0 -200
  217. package/dist/dist/services/pull.service.js.map +0 -1
  218. package/dist/dist/services/push-service.d.ts +0 -16
  219. package/dist/dist/services/push-service.d.ts.map +0 -1
  220. package/dist/dist/services/push-service.js +0 -76
  221. package/dist/dist/services/push-service.js.map +0 -1
  222. package/dist/dist/services/push.service.d.ts +0 -19
  223. package/dist/dist/services/push.service.d.ts.map +0 -1
  224. package/dist/dist/services/push.service.js +0 -186
  225. package/dist/dist/services/push.service.js.map +0 -1
  226. package/dist/dist/services/scheduled-pull-service.d.ts +0 -7
  227. package/dist/dist/services/scheduled-pull-service.d.ts.map +0 -1
  228. package/dist/dist/services/scheduled-pull-service.js +0 -58
  229. package/dist/dist/services/scheduled-pull-service.js.map +0 -1
  230. package/dist/dist/services/split-filter.d.ts +0 -3
  231. package/dist/dist/services/split-filter.d.ts.map +0 -1
  232. package/dist/dist/services/split-filter.js +0 -50
  233. package/dist/dist/services/split-filter.js.map +0 -1
  234. package/dist/dist/services/sync-runner.d.ts +0 -22
  235. package/dist/dist/services/sync-runner.d.ts.map +0 -1
  236. package/dist/dist/services/sync-runner.js +0 -110
  237. package/dist/dist/services/sync-runner.js.map +0 -1
  238. package/dist/dist/services/sync.service.d.ts +0 -21
  239. package/dist/dist/services/sync.service.d.ts.map +0 -1
  240. package/dist/dist/services/sync.service.js +0 -166
  241. package/dist/dist/services/sync.service.js.map +0 -1
  242. package/dist/dist/types.d.ts +0 -11
  243. package/dist/dist/types.d.ts.map +0 -1
  244. package/dist/dist/types.js +0 -6
  245. package/dist/dist/types.js.map +0 -1
  246. package/dist/dist/utils/compileFilter.d.ts +0 -3
  247. package/dist/dist/utils/compileFilter.d.ts.map +0 -1
  248. package/dist/dist/utils/compileFilter.js +0 -73
  249. package/dist/dist/utils/compileFilter.js.map +0 -1
  250. package/dist/dist/utils/normalizeDataFlow.d.ts +0 -3
  251. package/dist/dist/utils/normalizeDataFlow.d.ts.map +0 -1
  252. package/dist/dist/utils/normalizeDataFlow.js +0 -30
  253. package/dist/dist/utils/normalizeDataFlow.js.map +0 -1
  254. package/dist/dist/utils.d.ts +0 -2
  255. package/dist/dist/utils.d.ts.map +0 -1
  256. package/dist/dist/utils.js +0 -10
  257. package/dist/dist/utils.js.map +0 -1
  258. package/dist/interfaces/mapping-config.interface.d.ts +0 -26
  259. package/dist/interfaces/mapping-config.interface.d.ts.map +0 -1
  260. package/dist/interfaces/mapping-config.interface.js +0 -3
  261. package/dist/interfaces/mapping-config.interface.js.map +0 -1
  262. package/dist/interfaces/metadata-adapter.interface.d.ts +0 -26
  263. package/dist/interfaces/metadata-adapter.interface.d.ts.map +0 -1
  264. package/dist/interfaces/metadata-adapter.interface.js +0 -3
  265. package/dist/interfaces/metadata-adapter.interface.js.map +0 -1
  266. package/dist/interfaces/pull-adapter.interface.d.ts +0 -50
  267. package/dist/interfaces/pull-adapter.interface.d.ts.map +0 -1
  268. package/dist/interfaces/pull-adapter.interface.js +0 -3
  269. package/dist/interfaces/pull-adapter.interface.js.map +0 -1
  270. package/dist/interfaces/push-adapter.interface.d.ts +0 -28
  271. package/dist/interfaces/push-adapter.interface.d.ts.map +0 -1
  272. package/dist/interfaces/push-adapter.interface.js +0 -3
  273. package/dist/interfaces/push-adapter.interface.js.map +0 -1
  274. package/dist/interfaces/target-adapter.interface.d.ts +0 -10
  275. package/dist/interfaces/target-adapter.interface.d.ts.map +0 -1
  276. package/dist/interfaces/target-adapter.interface.js +0 -3
  277. package/dist/interfaces/target-adapter.interface.js.map +0 -1
  278. package/dist/mocks/hubspot.d.ts +0 -4
  279. package/dist/mocks/hubspot.d.ts.map +0 -1
  280. package/dist/mocks/hubspot.js +0 -61
  281. package/dist/mocks/hubspot.js.map +0 -1
  282. package/dist/provenance.d.ts +0 -3
  283. package/dist/provenance.d.ts.map +0 -1
  284. package/dist/provenance.js +0 -12
  285. package/dist/provenance.js.map +0 -1
  286. package/dist/services/dataflow-service.d.ts +0 -21
  287. package/dist/services/dataflow-service.d.ts.map +0 -1
  288. package/dist/services/dataflow-service.js +0 -47
  289. package/dist/services/dataflow-service.js.map +0 -1
  290. package/dist/services/eql.d.ts +0 -2
  291. package/dist/services/eql.d.ts.map +0 -1
  292. package/dist/services/eql.js +0 -10
  293. package/dist/services/eql.js.map +0 -1
  294. package/dist/services/mapping-service.d.ts +0 -14
  295. package/dist/services/mapping-service.d.ts.map +0 -1
  296. package/dist/services/mapping-service.js +0 -88
  297. package/dist/services/mapping-service.js.map +0 -1
  298. package/dist/services/mapping.service.d.ts +0 -14
  299. package/dist/services/mapping.service.d.ts.map +0 -1
  300. package/dist/services/mapping.service.js +0 -89
  301. package/dist/services/mapping.service.js.map +0 -1
  302. package/dist/services/outbound-service.d.ts +0 -14
  303. package/dist/services/outbound-service.d.ts.map +0 -1
  304. package/dist/services/outbound-service.js +0 -65
  305. package/dist/services/outbound-service.js.map +0 -1
  306. package/dist/services/paragon-workflow-service.d.ts +0 -7
  307. package/dist/services/paragon-workflow-service.d.ts.map +0 -1
  308. package/dist/services/paragon-workflow-service.js +0 -68
  309. package/dist/services/paragon-workflow-service.js.map +0 -1
  310. package/dist/services/paragon-workflow.service.d.ts +0 -8
  311. package/dist/services/paragon-workflow.service.d.ts.map +0 -1
  312. package/dist/services/paragon-workflow.service.js +0 -31
  313. package/dist/services/paragon-workflow.service.js.map +0 -1
  314. package/dist/services/preview-service.d.ts +0 -11
  315. package/dist/services/preview-service.d.ts.map +0 -1
  316. package/dist/services/preview-service.js +0 -66
  317. package/dist/services/preview-service.js.map +0 -1
  318. package/dist/services/pull-service.d.ts +0 -9
  319. package/dist/services/pull-service.d.ts.map +0 -1
  320. package/dist/services/pull-service.js +0 -207
  321. package/dist/services/pull-service.js.map +0 -1
  322. package/dist/services/pull.service.d.ts +0 -11
  323. package/dist/services/pull.service.d.ts.map +0 -1
  324. package/dist/services/pull.service.js +0 -200
  325. package/dist/services/pull.service.js.map +0 -1
  326. package/dist/services/push-service.d.ts +0 -16
  327. package/dist/services/push-service.d.ts.map +0 -1
  328. package/dist/services/push-service.js +0 -76
  329. package/dist/services/push-service.js.map +0 -1
  330. package/dist/services/push.service.d.ts +0 -19
  331. package/dist/services/push.service.d.ts.map +0 -1
  332. package/dist/services/push.service.js +0 -186
  333. package/dist/services/push.service.js.map +0 -1
  334. package/dist/services/scheduled-pull-service.d.ts +0 -7
  335. package/dist/services/scheduled-pull-service.d.ts.map +0 -1
  336. package/dist/services/scheduled-pull-service.js +0 -58
  337. package/dist/services/scheduled-pull-service.js.map +0 -1
  338. package/dist/services/split-filter.d.ts +0 -3
  339. package/dist/services/split-filter.d.ts.map +0 -1
  340. package/dist/services/split-filter.js +0 -50
  341. package/dist/services/split-filter.js.map +0 -1
@@ -1,50 +0,0 @@
1
- import type { IntegrationContext } from '../context';
2
- import type { DataFlowSpec } from './data-flow-spec.interface';
3
- import type { FilterSpec } from './filter.interface';
4
- export interface EnrichmentPair {
5
- /** Normalized vendor record — output of normalize() (or fetch() if normalize is absent). */
6
- raw: Record<string, unknown>;
7
- /**
8
- * Mapped Skedulo record with lookup UIDs already resolved.
9
- * Length and order must be preserved if returned from `enrich`.
10
- */
11
- mapped: Record<string, unknown>;
12
- }
13
- export interface PullAdapter<TRecord = Record<string, unknown>> {
14
- /**
15
- * Yield batches of records from the source system.
16
- * since=null → initial sync (all records); since=Date → delta (modified since).
17
- * The adapter receives the full FilterSpec and decides internally what to push
18
- * to the vendor API (e.g. lastmodifieddate range) vs. what to ignore.
19
- * Records yielded here are the raw vendor response — normalize() converts them
20
- * to the canonical shape before local filtering and mapping.
21
- */
22
- fetch(ctx: IntegrationContext, flow: DataFlowSpec, since: Date | null, filter: FilterSpec | null): AsyncIterable<TRecord[]>;
23
- /**
24
- * Optional. Called once per batch immediately after fetch(), before local
25
- * filtering and field mapping.
26
- *
27
- * Responsible for two things:
28
- * 1. Structural normalization — convert the vendor format to a flat
29
- * Record<string, unknown> the mapping engine can operate on.
30
- * Examples: XML → JSON, flatten HubSpot `properties.*` to top-level keys.
31
- * 2. Transformation — inject synthetic / computed fields that mapping
32
- * expressions can reference but that don't exist in the vendor payload.
33
- *
34
- * The output is the canonical record shape. This is also the shape that
35
- * fetchSampleRecords should return, so field names visible in the mapping UI
36
- * match what arrives here at runtime.
37
- *
38
- * Must return one record per input, same order.
39
- */
40
- normalize?(ctx: IntegrationContext, spec: DataFlowSpec, records: TRecord[]): Promise<Record<string, unknown>[]>;
41
- /**
42
- * Optional. Called once per batch after lookup resolution, before upsert.
43
- * Receives (normalized vendor record, mapped Skedulo record with lookup UIDs
44
- * already resolved) pairs. Must return one enriched record per input pair,
45
- * same order. Length mismatch is a programming error and causes an upsert
46
- * shape mismatch.
47
- */
48
- enrich?(ctx: IntegrationContext, spec: DataFlowSpec, pairs: EnrichmentPair[]): Promise<Record<string, unknown>[]>;
49
- }
50
- //# sourceMappingURL=pull-adapter.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pull-adapter.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/pull-adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,cAAc;IAC7B,4FAA4F;IAC5F,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC5D;;;;;;;OAOG;IACH,KAAK,CACH,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,IAAI,GAAG,IAAI,EAClB,MAAM,EAAE,UAAU,GAAG,IAAI,GACxB,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAE5B;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,CACR,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAEtC;;;;;;OAMG;IACH,MAAM,CAAC,CACL,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,cAAc,EAAE,GACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;CACvC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=pull-adapter.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pull-adapter.interface.js","sourceRoot":"","sources":["../../src/interfaces/pull-adapter.interface.ts"],"names":[],"mappings":""}
@@ -1,28 +0,0 @@
1
- import type { IntegrationContext } from '../context';
2
- import type { DataFlowSpec } from './data-flow-spec.interface';
3
- export type PushClassification = 'ok' | 'transient' | 'permanent';
4
- export interface PushOutcome {
5
- status: PushClassification;
6
- externalId?: string;
7
- error?: string;
8
- }
9
- export interface PushAdapter {
10
- /**
11
- * Upsert/delete one record on the vendor side.
12
- * Adapter classifies failures: `transient` (retry-worthy — 429/5xx/network)
13
- * vs `permanent` (4xx validation, malformed payload).
14
- */
15
- pushOne(ctx: IntegrationContext, flow: DataFlowSpec, sourceRecordId: string, operation: 'INSERT' | 'UPDATE' | 'DELETE', mappedRecord: Record<string, unknown> | null): Promise<PushOutcome>;
16
- /**
17
- * Optional. Batch upsert of multiple records in one vendor API call.
18
- * When defined, PushService.runFlow() uses this instead of per-record pushOne()
19
- * calls for better throughput. The returned array must preserve input order;
20
- * length mismatch is a programming error.
21
- *
22
- * Adapters that support bulk APIs (e.g. HubSpot batch create/update) should
23
- * implement this. Adapters without bulk support can omit it — PushService
24
- * falls back to calling pushOne() per record.
25
- */
26
- upsert?(ctx: IntegrationContext, flow: DataFlowSpec, records: Record<string, unknown>[]): Promise<PushOutcome[]>;
27
- }
28
- //# sourceMappingURL=push-adapter.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"push-adapter.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/push-adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,WAAW,GAAG,WAAW,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,OAAO,CACL,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,YAAY,EAClB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,EACzC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC3C,OAAO,CAAC,WAAW,CAAC,CAAC;IAExB;;;;;;;;;OASG;IACH,MAAM,CAAC,CACL,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;CAC3B"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=push-adapter.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"push-adapter.interface.js","sourceRoot":"","sources":["../../src/interfaces/push-adapter.interface.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- import type { IntegrationContext } from '../context';
2
- import type { DataFlow } from './data-flow-spec.interface';
3
- export type SampleFetcher = (flow: DataFlow, sampleSize: number, ctx: IntegrationContext) => Promise<Record<string, unknown>[]>;
4
- //# sourceMappingURL=sample-fetcher.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sample-fetcher.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/sample-fetcher.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,kBAAkB,KACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=sample-fetcher.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sample-fetcher.interface.js","sourceRoot":"","sources":["../../src/interfaces/sample-fetcher.interface.ts"],"names":[],"mappings":""}
@@ -1,19 +0,0 @@
1
- export interface SyncResult {
2
- status: 'synced' | 'filtered' | 'skipped' | 'failed';
3
- recordsProcessed: number;
4
- reason?: string;
5
- error?: string;
6
- }
7
- export interface BatchResult {
8
- succeeded: number;
9
- filtered: number;
10
- failed: number;
11
- dlqWrites: number;
12
- }
13
- export interface PreviewResult {
14
- sourceRecord: Record<string, unknown>;
15
- targetRecord: Record<string, unknown> | null;
16
- status: 'will_sync' | 'filtered_out' | 'missing_required_field' | 'transform_error';
17
- reason?: string;
18
- }
19
- //# sourceMappingURL=sync-result.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-result.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/sync-result.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7C,MAAM,EAAE,WAAW,GAAG,cAAc,GAAG,wBAAwB,GAAG,iBAAiB,CAAC;IACpF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=sync-result.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-result.interface.js","sourceRoot":"","sources":["../../src/interfaces/sync-result.interface.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import type { IntegrationContext } from '../context';
2
- import type { DataFlowSpec } from './data-flow-spec.interface';
3
- export interface TargetAdapter {
4
- /**
5
- * Upsert a batch of mapped records into the target system.
6
- * Called by PullService after lookup resolution and optional enrich().
7
- */
8
- upsert(ctx: IntegrationContext, spec: DataFlowSpec, records: Record<string, unknown>[]): Promise<void>;
9
- }
10
- //# sourceMappingURL=target-adapter.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"target-adapter.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/target-adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,MAAM,CACJ,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=target-adapter.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"target-adapter.interface.js","sourceRoot":"","sources":["../../src/interfaces/target-adapter.interface.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- import type { DataFlowSpec } from '../types';
2
- export declare const HUBSPOT_CONTACT_SPEC: DataFlowSpec;
3
- export declare const HUBSPOT_ACCOUNT_SPEC: DataFlowSpec;
4
- //# sourceMappingURL=hubspot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hubspot.d.ts","sourceRoot":"","sources":["../../src/mocks/hubspot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,oBAAoB,EAAE,YA6BlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YA0BlC,CAAC"}
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HUBSPOT_ACCOUNT_SPEC = exports.HUBSPOT_CONTACT_SPEC = void 0;
4
- exports.HUBSPOT_CONTACT_SPEC = {
5
- id: 1,
6
- name: 'HubSpot Contacts → Skedulo Contacts',
7
- tenantIntegrationId: 1,
8
- integrationType: 'hubspot',
9
- sourceObject: 'contacts',
10
- targetObject: 'Contacts',
11
- direction: 'INBOUND',
12
- strategy: 'PARAGON_WORKFLOW',
13
- mappingConfig: {
14
- mappings: [
15
- { target: 'ExternalId', expression: '`id`', label: 'HubSpot contact ID' },
16
- { target: 'FirstName', expression: 'properties.firstname', label: 'First name' },
17
- { target: 'LastName', expression: 'properties.lastname', label: 'Last name' },
18
- { target: 'Email', expression: 'properties.email', label: 'Email address' },
19
- { target: 'Phone', expression: 'properties.phone', label: 'Phone' },
20
- { target: 'MobilePhone', expression: 'properties.mobilephone', label: 'Mobile phone' },
21
- { target: 'Title', expression: 'properties.jobtitle', label: 'Title' },
22
- { target: 'MailingCity', expression: 'properties.city', label: 'Mailing city' },
23
- { target: 'MailingState', expression: 'properties.state', label: 'Mailing state' },
24
- { target: 'MailingStreet', expression: 'properties.address', label: 'Mailing street' },
25
- { target: 'MailingPostalCode', expression: 'properties.zip', label: 'Mailing postal code' },
26
- ],
27
- validations: [
28
- { condition: '$not($exists(`id`))', action: 'ERROR', label: 'required_id', message: 'Required field id is missing' },
29
- ],
30
- },
31
- matchKeyField: 'ExternalId',
32
- provenanceMarker: 'hubspot-sync',
33
- };
34
- exports.HUBSPOT_ACCOUNT_SPEC = {
35
- id: 2,
36
- name: 'HubSpot Companies → Skedulo Accounts',
37
- tenantIntegrationId: 1,
38
- integrationType: 'hubspot',
39
- sourceObject: 'companies',
40
- targetObject: 'Accounts',
41
- direction: 'INBOUND',
42
- strategy: 'PARAGON_WORKFLOW',
43
- mappingConfig: {
44
- mappings: [
45
- { target: 'ExternalId', expression: '`id`', label: 'HubSpot company ID' },
46
- { target: 'Name', expression: 'properties.name', label: 'Company name' },
47
- { target: 'Phone', expression: 'properties.phone', label: 'Phone' },
48
- { target: 'BillingStreet', expression: 'properties.address', label: 'Billing street' },
49
- { target: 'BillingCity', expression: 'properties.city', label: 'Billing city' },
50
- { target: 'BillingState', expression: 'properties.state', label: 'Billing state' },
51
- { target: 'BillingPostalCode', expression: 'properties.zip', label: 'Billing postal code' },
52
- ],
53
- validations: [
54
- { condition: '$not($exists(`id`))', action: 'ERROR', label: 'required_id', message: 'Required field id is missing' },
55
- { condition: '$not($exists(properties.name))', action: 'ERROR', label: 'required_name', message: 'Required field name is missing' },
56
- ],
57
- },
58
- matchKeyField: 'ExternalId',
59
- provenanceMarker: 'hubspot-sync',
60
- };
61
- //# sourceMappingURL=hubspot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hubspot.js","sourceRoot":"","sources":["../../src/mocks/hubspot.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export declare function applyProvenance<T extends Record<string, unknown>>(record: T, marker: string): T;
2
- export declare function hasOwnProvenance(payload: Record<string, unknown>, marker: string): boolean;
3
- //# sourceMappingURL=provenance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provenance.d.ts","sourceRoot":"","sources":["../src/provenance.ts"],"names":[],"mappings":"AAEA,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,GACb,CAAC,CAEH;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,MAAM,EAAE,MAAM,GACb,OAAO,CAET"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.applyProvenance = applyProvenance;
4
- exports.hasOwnProvenance = hasOwnProvenance;
5
- const PROVENANCE_KEY = '__skedulo_provenance';
6
- function applyProvenance(record, marker) {
7
- return Object.assign(Object.assign({}, record), { [PROVENANCE_KEY]: marker });
8
- }
9
- function hasOwnProvenance(payload, marker) {
10
- return payload[PROVENANCE_KEY] === marker;
11
- }
12
- //# sourceMappingURL=provenance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provenance.js","sourceRoot":"","sources":["../src/provenance.ts"],"names":[],"mappings":";;AAEA,0CAKC;AAED,4CAKC;AAdD,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAE9C,SAAgB,eAAe,CAC7B,MAAS,EACT,MAAc;IAEd,uCAAY,MAAM,KAAE,CAAC,cAAc,CAAC,EAAE,MAAM,IAAG;AACjD,CAAC;AAED,SAAgB,gBAAgB,CAC9B,OAAgC,EAChC,MAAc;IAEd,OAAO,OAAO,CAAC,cAAc,CAAC,KAAK,MAAM,CAAC;AAC5C,CAAC"}
@@ -1,21 +0,0 @@
1
- import type { DataFlowClient } from '../clients/dataflow-client';
2
- import type { DataFlowSpec } from '../types';
3
- export declare class DataFlowService {
4
- private readonly client;
5
- private static _mockSpecs;
6
- static registerMockSpec(spec: DataFlowSpec): void;
7
- static clearMockSpecs(): void;
8
- constructor(client: DataFlowClient);
9
- getSpecByFilter(args: {
10
- integrationType: string;
11
- sourceObject: string;
12
- strategy: DataFlowSpec['strategy'];
13
- projectId?: string;
14
- }): Promise<DataFlowSpec | null>;
15
- getSpecById(id: number): Promise<DataFlowSpec | null>;
16
- listActive(filter: {
17
- integrationType: string;
18
- strategy?: DataFlowSpec['strategy'];
19
- }): Promise<DataFlowSpec[]>;
20
- }
21
- //# sourceMappingURL=dataflow-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dataflow-service.d.ts","sourceRoot":"","sources":["../../src/services/dataflow-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,4BAA4B,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,qBAAa,eAAe;IAiBd,OAAO,CAAC,QAAQ,CAAC,MAAM;IAfnC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAsB;IAE/C,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IASjD,MAAM,CAAC,cAAc,IAAI,IAAI;gBAIA,MAAM,EAAE,cAAc;IAE7C,eAAe,CAAC,IAAI,EAAE;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;QACnC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAgB1B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAIrD,UAAU,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;KACrC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CAU5B"}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DataFlowService = void 0;
4
- class DataFlowService {
5
- static registerMockSpec(spec) {
6
- const idx = DataFlowService._mockSpecs.findIndex(s => s.id === spec.id);
7
- if (idx >= 0) {
8
- DataFlowService._mockSpecs[idx] = spec;
9
- }
10
- else {
11
- DataFlowService._mockSpecs.push(spec);
12
- }
13
- }
14
- static clearMockSpecs() {
15
- DataFlowService._mockSpecs = [];
16
- }
17
- constructor(client) {
18
- this.client = client;
19
- }
20
- async getSpecByFilter(args) {
21
- const list = await this.client.list({
22
- integrationType: args.integrationType,
23
- sourceObject: args.sourceObject,
24
- strategy: args.strategy,
25
- status: 'ACTIVE',
26
- projectId: args.projectId,
27
- });
28
- if (list && list.length > 0) {
29
- return this.client.getById(list[0].id);
30
- }
31
- return null;
32
- }
33
- async getSpecById(id) {
34
- return this.client.getById(id);
35
- }
36
- async listActive(filter) {
37
- const list = await this.client.list(Object.assign(Object.assign({ integrationType: filter.integrationType }, (filter.strategy ? { strategy: filter.strategy } : {})), { status: 'ACTIVE' }));
38
- if (!list || list.length === 0)
39
- return [];
40
- const specs = await Promise.all(list.map((item) => this.client.getById(item.id)));
41
- return specs.filter((s) => s !== null);
42
- }
43
- }
44
- exports.DataFlowService = DataFlowService;
45
- // TODO: remove when integration service has real data flows
46
- DataFlowService._mockSpecs = [];
47
- //# sourceMappingURL=dataflow-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dataflow-service.js","sourceRoot":"","sources":["../../src/services/dataflow-service.ts"],"names":[],"mappings":";;;AAGA,MAAa,eAAe;IAI1B,MAAM,CAAC,gBAAgB,CAAC,IAAkB;QACxC,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACb,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,MAAM,CAAC,cAAc;QACnB,eAAe,CAAC,UAAU,GAAG,EAAE,CAAC;IAClC,CAAC;IAED,YAA6B,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAEvD,KAAK,CAAC,eAAe,CAAC,IAKrB;QACC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAClC,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QAEH,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAGhB;QACC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,+BACjC,eAAe,EAAE,MAAM,CAAC,eAAe,IACpC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACzD,MAAM,EAAE,QAAQ,IAChB,CAAC;QACH,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAqB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAC5D,CAAC;;AAxDH,0CAyDC;AAxDC,4DAA4D;AAC7C,0BAAU,GAAmB,EAAE,CAAC"}
@@ -1,20 +0,0 @@
1
- import type { DataFlowClient } from '../clients/dataflow.client';
2
- import type { DataFlow } from '../interfaces/data-flow-spec.interface';
3
- export declare class DataFlowService {
4
- private readonly client;
5
- private static _mockFlows;
6
- static registerMockFlow(flow: DataFlow): void;
7
- static clearMockFlows(): void;
8
- constructor(client: DataFlowClient);
9
- getFlowsByFilter(args: {
10
- integrationType: string;
11
- sourceObject: string;
12
- projectId?: string;
13
- }): Promise<DataFlow[]>;
14
- getFlowById(id: number): Promise<DataFlow | null>;
15
- listActive(filter: {
16
- integrationType: string;
17
- targetSystem?: string;
18
- }): Promise<DataFlow[]>;
19
- }
20
- //# sourceMappingURL=dataflow.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dataflow.service.d.ts","sourceRoot":"","sources":["../../src/services/dataflow.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,4BAA4B,CAAC;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAEvE,qBAAa,eAAe;IAiBd,OAAO,CAAC,QAAQ,CAAC,MAAM;IAfnC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkB;IAE3C,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAS7C,MAAM,CAAC,cAAc,IAAI,IAAI;gBAIA,MAAM,EAAE,cAAc;IAE7C,gBAAgB,CAAC,IAAI,EAAE;QAC3B,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAajB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAIjD,UAAU,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CAYxB"}
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DataFlowService = void 0;
4
- class DataFlowService {
5
- static registerMockFlow(flow) {
6
- const idx = DataFlowService._mockFlows.findIndex((f) => f.id === flow.id);
7
- if (idx >= 0) {
8
- DataFlowService._mockFlows[idx] = flow;
9
- }
10
- else {
11
- DataFlowService._mockFlows.push(flow);
12
- }
13
- }
14
- static clearMockFlows() {
15
- DataFlowService._mockFlows = [];
16
- }
17
- constructor(client) {
18
- this.client = client;
19
- }
20
- async getFlowsByFilter(args) {
21
- const list = await this.client.list({
22
- integrationType: args.integrationType,
23
- sourceObject: args.sourceObject,
24
- status: 'ACTIVE',
25
- projectId: args.projectId,
26
- });
27
- if (!list || list.length === 0)
28
- return [];
29
- const flows = await Promise.all(list.map((item) => this.client.getById(item.id)));
30
- return flows.filter((f) => f !== null);
31
- }
32
- async getFlowById(id) {
33
- return this.client.getById(id);
34
- }
35
- async listActive(filter) {
36
- const params = {
37
- integrationType: filter.integrationType,
38
- status: 'ACTIVE',
39
- };
40
- if (filter.targetSystem)
41
- params.targetSystem = filter.targetSystem;
42
- const list = await this.client.list(params);
43
- if (!list || list.length === 0)
44
- return [];
45
- const flows = await Promise.all(list.map((item) => this.client.getById(item.id)));
46
- return flows.filter((f) => f !== null);
47
- }
48
- }
49
- exports.DataFlowService = DataFlowService;
50
- // TODO: remove when integration service has real data flows
51
- DataFlowService._mockFlows = [];
52
- //# sourceMappingURL=dataflow.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dataflow.service.js","sourceRoot":"","sources":["../../src/services/dataflow.service.ts"],"names":[],"mappings":";;;AAGA,MAAa,eAAe;IAI1B,MAAM,CAAC,gBAAgB,CAAC,IAAc;QACpC,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1E,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACb,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,MAAM,CAAC,cAAc;QACnB,eAAe,CAAC,UAAU,GAAG,EAAE,CAAC;IAClC,CAAC;IAED,YAA6B,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAEvD,KAAK,CAAC,gBAAgB,CAAC,IAItB;QACC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAClC,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAGhB;QACC,MAAM,MAAM,GAAuB;YACjC,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,MAAM,EAAE,QAAQ;SACjB,CAAC;QACF,IAAI,MAAM,CAAC,YAAY;YAAE,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAEnE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACxD,CAAC;;AAtDH,0CAuDC;AAtDC,4DAA4D;AAC7C,0BAAU,GAAe,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function escapeEqlString(value: string): string;
2
- //# sourceMappingURL=eql.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eql.d.ts","sourceRoot":"","sources":["../../src/services/eql.ts"],"names":[],"mappings":"AAGA,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.escapeEqlString = escapeEqlString;
4
- // EQL string literals use single quotes; the resulting filter is embedded in a
5
- // GraphQL string literal that uses double quotes. Escape backslashes and single
6
- // quotes only.
7
- function escapeEqlString(value) {
8
- return value.replace(/\\/g, '\\\\').replace(/'/g, "\\'");
9
- }
10
- //# sourceMappingURL=eql.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eql.js","sourceRoot":"","sources":["../../src/services/eql.ts"],"names":[],"mappings":";;AAGA,0CAEC;AALD,+EAA+E;AAC/E,gFAAgF;AAChF,eAAe;AACf,SAAgB,eAAe,CAAC,KAAa;IAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC"}
@@ -1,14 +0,0 @@
1
- import { MappingEngine } from '@skedulo/field-mapping-engine';
2
- import type { FilterSpec, DataFlowSpec } from '../types';
3
- export declare const engineCache: Map<string, MappingEngine>;
4
- export declare function applyMapping(spec: DataFlowSpec, record: Record<string, unknown>): Promise<Record<string, unknown> | null>;
5
- export declare function executeMapping(spec: DataFlowSpec, record: Record<string, unknown>): Promise<Record<string, unknown> | null>;
6
- export interface MappingDetail {
7
- status: 'success' | 'filtered' | 'required_missing' | 'error';
8
- data: Record<string, unknown> | null;
9
- missingFields?: string[];
10
- errorMessage?: string;
11
- }
12
- export declare function executeMappingDetailed(spec: DataFlowSpec, record: Record<string, unknown>): Promise<MappingDetail>;
13
- export declare function evaluateFilter(filter: FilterSpec | undefined, record: Record<string, unknown>): Promise<boolean>;
14
- //# sourceMappingURL=mapping-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapping-service.d.ts","sourceRoot":"","sources":["../../src/services/mapping-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAiB,MAAM,+BAA+B,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGzD,eAAO,MAAM,WAAW,4BAAmC,CAAC;AAG5D,wBAAsB,YAAY,CAChC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAIzC;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAKzC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAC9D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,aAAa,CAAC,CAgCxB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAOlB"}
@@ -1,88 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.engineCache = void 0;
7
- exports.applyMapping = applyMapping;
8
- exports.executeMapping = executeMapping;
9
- exports.executeMappingDetailed = executeMappingDetailed;
10
- exports.evaluateFilter = evaluateFilter;
11
- const jsonata_1 = __importDefault(require("jsonata"));
12
- const field_mapping_engine_1 = require("@skedulo/field-mapping-engine");
13
- // Cache compiled engines per mapping signature to avoid re-parsing JSONata per event
14
- exports.engineCache = new Map();
15
- // Exported for testing. Not part of the public SDK API (not re-exported from index.ts).
16
- async function applyMapping(spec, record) {
17
- const engine = getEngine(spec);
18
- const result = await engine.processRecord(record);
19
- return result.status === 'SUCCESS' ? result.data : null;
20
- }
21
- async function executeMapping(spec, record) {
22
- // Filter first — cheap short-circuit
23
- if (spec.filter && !(await evaluateFilter(spec.filter, record)))
24
- return null;
25
- return applyMapping(spec, record);
26
- }
27
- async function executeMappingDetailed(spec, record) {
28
- var _a, _b, _c;
29
- if (spec.filter && !(await evaluateFilter(spec.filter, record))) {
30
- return { status: 'filtered', data: null };
31
- }
32
- const engine = getEngine(spec);
33
- const result = await engine.processRecord(record);
34
- if (result.status === 'SUCCESS') {
35
- return { status: 'success', data: result.data };
36
- }
37
- const hasRequiredFieldError = result.errors.some(e => e.includes('Required field') && e.includes('is missing'));
38
- if (hasRequiredFieldError) {
39
- const requiredValidations = (_c = (_b = (_a = spec.mappingConfig) === null || _a === void 0 ? void 0 : _a.validations) === null || _b === void 0 ? void 0 : _b.filter(v => v.action === 'ERROR')) !== null && _c !== void 0 ? _c : [];
40
- const missingFields = requiredValidations
41
- .filter(v => v.message && result.errors.some(e => e === v.message))
42
- .map(v => {
43
- var _a, _b;
44
- const match = (_a = v.message) === null || _a === void 0 ? void 0 : _a.match(/Required field (.+) is missing/);
45
- return match ? match[1] : ((_b = v.label) !== null && _b !== void 0 ? _b : 'unknown');
46
- });
47
- return {
48
- status: 'required_missing',
49
- data: null,
50
- missingFields: missingFields.length > 0 ? missingFields : undefined,
51
- };
52
- }
53
- return { status: 'error', data: null, errorMessage: result.errors.join('; ') };
54
- }
55
- async function evaluateFilter(filter, record) {
56
- if (!filter)
57
- return true;
58
- const exprStr = (0, field_mapping_engine_1.compileFilter)(filter);
59
- if (exprStr === 'true')
60
- return true;
61
- const expr = (0, jsonata_1.default)(exprStr);
62
- const result = await expr.evaluate(record);
63
- return result === true;
64
- }
65
- function getEngine(spec) {
66
- var _a, _b, _c;
67
- const mc = spec.mappingConfig;
68
- if (!mc)
69
- throw new Error(`No mappingConfig for spec ${spec.id}`);
70
- const key = `${spec.id}:${JSON.stringify(mc)}`;
71
- let engine = exports.engineCache.get(key);
72
- if (!engine) {
73
- engine = new field_mapping_engine_1.MappingEngine({
74
- integration_id: `sdk-${spec.id}`,
75
- sourceSystem: '',
76
- sourceObject: '',
77
- destinationSystem: '',
78
- destinationObject: '',
79
- mappings: mc.mappings.map(({ target, expression, label }) => ({ target, expression, label })),
80
- translations: (_a = mc.translations) !== null && _a !== void 0 ? _a : [],
81
- validations: ((_b = mc.validations) !== null && _b !== void 0 ? _b : []).map(v => { var _a; return (Object.assign(Object.assign({}, v), { label: (_a = v.label) !== null && _a !== void 0 ? _a : '' })); }),
82
- variables: (_c = mc.variables) !== null && _c !== void 0 ? _c : [],
83
- });
84
- exports.engineCache.set(key, engine);
85
- }
86
- return engine;
87
- }
88
- //# sourceMappingURL=mapping-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapping-service.js","sourceRoot":"","sources":["../../src/services/mapping-service.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { MappingEngine } from '@skedulo/field-mapping-engine';
2
- import type { FilterSpec, DataFlow } from '../types';
3
- export declare const engineCache: Map<string, MappingEngine>;
4
- export declare function applyMapping(flow: DataFlow, record: Record<string, unknown>): Promise<Record<string, unknown> | null>;
5
- export declare function executeMapping(flow: DataFlow, record: Record<string, unknown>): Promise<Record<string, unknown> | null>;
6
- export interface MappingDetail {
7
- status: 'success' | 'filtered' | 'required_missing' | 'error';
8
- data: Record<string, unknown> | null;
9
- missingFields?: string[];
10
- errorMessage?: string;
11
- }
12
- export declare function executeMappingDetailed(flow: DataFlow, record: Record<string, unknown>): Promise<MappingDetail>;
13
- export declare function evaluateFilter(filter: FilterSpec | undefined, record: Record<string, unknown>): Promise<boolean>;
14
- //# sourceMappingURL=mapping.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapping.service.d.ts","sourceRoot":"","sources":["../../src/services/mapping.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIrD,eAAO,MAAM,WAAW,4BAAmC,CAAC;AAG5D,wBAAsB,YAAY,CAChC,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAIzC;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAKzC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAC9D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,aAAa,CAAC,CAiCxB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAOlB"}