@skedulo/integration-sdk 0.2.2 → 0.2.3

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 (337) 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/clients/dataflow.client.d.ts +1 -0
  7. package/dist/clients/dataflow.client.d.ts.map +1 -1
  8. package/dist/clients/dataflow.client.js +7 -0
  9. package/dist/clients/dataflow.client.js.map +1 -1
  10. package/dist/interfaces/adapter.interface.d.ts +19 -0
  11. package/dist/interfaces/adapter.interface.d.ts.map +1 -1
  12. package/dist/interfaces/data-flow-spec.interface.d.ts +2 -0
  13. package/dist/interfaces/data-flow-spec.interface.d.ts.map +1 -1
  14. package/dist/interfaces/sync-flow-strategy.interface.d.ts +6 -0
  15. package/dist/interfaces/sync-flow-strategy.interface.d.ts.map +1 -1
  16. package/dist/interfaces/sync-result.interface.d.ts +1 -0
  17. package/dist/interfaces/sync-result.interface.d.ts.map +1 -1
  18. package/dist/services/dataflow.service.d.ts +1 -0
  19. package/dist/services/dataflow.service.d.ts.map +1 -1
  20. package/dist/services/dataflow.service.js +3 -0
  21. package/dist/services/dataflow.service.js.map +1 -1
  22. package/dist/services/external-id-sync.strategy.js +1 -1
  23. package/dist/services/external-id-sync.strategy.js.map +1 -1
  24. package/dist/services/field-mapping.service.d.ts +1 -0
  25. package/dist/services/field-mapping.service.d.ts.map +1 -1
  26. package/dist/services/id-mapping-sync.strategy.js +1 -1
  27. package/dist/services/id-mapping-sync.strategy.js.map +1 -1
  28. package/dist/services/sync-runner.d.ts.map +1 -1
  29. package/dist/services/sync-runner.js +20 -4
  30. package/dist/services/sync-runner.js.map +1 -1
  31. package/dist/services/sync.service.d.ts.map +1 -1
  32. package/dist/services/sync.service.js +52 -9
  33. package/dist/services/sync.service.js.map +1 -1
  34. package/dist/utils/normalizeDataFlow.d.ts.map +1 -1
  35. package/dist/utils/normalizeDataFlow.js +8 -1
  36. package/dist/utils/normalizeDataFlow.js.map +1 -1
  37. package/package.json +1 -1
  38. package/dist/adapters/skedulo-metadata-adapter.d.ts +0 -3
  39. package/dist/adapters/skedulo-metadata-adapter.d.ts.map +0 -1
  40. package/dist/adapters/skedulo-metadata-adapter.js +0 -57
  41. package/dist/adapters/skedulo-metadata-adapter.js.map +0 -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/clients/dataflow-client.d.ts +0 -18
  47. package/dist/clients/dataflow-client.d.ts.map +0 -1
  48. package/dist/clients/dataflow-client.js +0 -43
  49. package/dist/clients/dataflow-client.js.map +0 -1
  50. package/dist/clients/proxy-client.d.ts +0 -13
  51. package/dist/clients/proxy-client.d.ts.map +0 -1
  52. package/dist/clients/proxy-client.js +0 -20
  53. package/dist/clients/proxy-client.js.map +0 -1
  54. package/dist/dist/adapters/skedulo-metadata-adapter.d.ts +0 -3
  55. package/dist/dist/adapters/skedulo-metadata-adapter.d.ts.map +0 -1
  56. package/dist/dist/adapters/skedulo-metadata-adapter.js +0 -57
  57. package/dist/dist/adapters/skedulo-metadata-adapter.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.adapter.d.ts +0 -15
  63. package/dist/dist/adapters/skedulo.adapter.d.ts.map +0 -1
  64. package/dist/dist/adapters/skedulo.adapter.js +0 -213
  65. package/dist/dist/adapters/skedulo.adapter.js.map +0 -1
  66. package/dist/dist/browser.d.ts +0 -12
  67. package/dist/dist/browser.d.ts.map +0 -1
  68. package/dist/dist/browser.js +0 -9
  69. package/dist/dist/browser.js.map +0 -1
  70. package/dist/dist/clients/dataflow-client.d.ts +0 -18
  71. package/dist/dist/clients/dataflow-client.d.ts.map +0 -1
  72. package/dist/dist/clients/dataflow-client.js +0 -43
  73. package/dist/dist/clients/dataflow-client.js.map +0 -1
  74. package/dist/dist/clients/dataflow.client.d.ts +0 -19
  75. package/dist/dist/clients/dataflow.client.d.ts.map +0 -1
  76. package/dist/dist/clients/dataflow.client.js +0 -28
  77. package/dist/dist/clients/dataflow.client.js.map +0 -1
  78. package/dist/dist/clients/proxy-client.d.ts +0 -13
  79. package/dist/dist/clients/proxy-client.d.ts.map +0 -1
  80. package/dist/dist/clients/proxy-client.js +0 -20
  81. package/dist/dist/clients/proxy-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 -21
  85. package/dist/dist/clients/proxy.client.js.map +0 -1
  86. package/dist/dist/constants.d.ts +0 -17
  87. package/dist/dist/constants.d.ts.map +0 -1
  88. package/dist/dist/constants.js +0 -20
  89. package/dist/dist/constants.js.map +0 -1
  90. package/dist/dist/context.d.ts +0 -19
  91. package/dist/dist/context.d.ts.map +0 -1
  92. package/dist/dist/context.js +0 -40
  93. package/dist/dist/context.js.map +0 -1
  94. package/dist/dist/handlers/metadata.handler.d.ts +0 -17
  95. package/dist/dist/handlers/metadata.handler.d.ts.map +0 -1
  96. package/dist/dist/handlers/metadata.handler.js +0 -50
  97. package/dist/dist/handlers/metadata.handler.js.map +0 -1
  98. package/dist/dist/index.d.ts +0 -18
  99. package/dist/dist/index.d.ts.map +0 -1
  100. package/dist/dist/index.js +0 -48
  101. package/dist/dist/index.js.map +0 -1
  102. package/dist/dist/interfaces/adapter.interface.d.ts +0 -122
  103. package/dist/dist/interfaces/adapter.interface.d.ts.map +0 -1
  104. package/dist/dist/interfaces/adapter.interface.js +0 -3
  105. package/dist/dist/interfaces/adapter.interface.js.map +0 -1
  106. package/dist/dist/interfaces/data-flow-spec.interface.d.ts +0 -22
  107. package/dist/dist/interfaces/data-flow-spec.interface.d.ts.map +0 -1
  108. package/dist/dist/interfaces/data-flow-spec.interface.js +0 -3
  109. package/dist/dist/interfaces/data-flow-spec.interface.js.map +0 -1
  110. package/dist/dist/interfaces/field-mapping.interface.d.ts +0 -26
  111. package/dist/dist/interfaces/field-mapping.interface.d.ts.map +0 -1
  112. package/dist/dist/interfaces/field-mapping.interface.js +0 -3
  113. package/dist/dist/interfaces/field-mapping.interface.js.map +0 -1
  114. package/dist/dist/interfaces/filter.interface.d.ts +0 -19
  115. package/dist/dist/interfaces/filter.interface.d.ts.map +0 -1
  116. package/dist/dist/interfaces/filter.interface.js +0 -20
  117. package/dist/dist/interfaces/filter.interface.js.map +0 -1
  118. package/dist/dist/interfaces/integration-capabilities.interface.d.ts +0 -13
  119. package/dist/dist/interfaces/integration-capabilities.interface.d.ts.map +0 -1
  120. package/dist/dist/interfaces/integration-capabilities.interface.js +0 -3
  121. package/dist/dist/interfaces/integration-capabilities.interface.js.map +0 -1
  122. package/dist/dist/interfaces/lookup-rule.interface.d.ts +0 -14
  123. package/dist/dist/interfaces/lookup-rule.interface.d.ts.map +0 -1
  124. package/dist/dist/interfaces/lookup-rule.interface.js +0 -3
  125. package/dist/dist/interfaces/lookup-rule.interface.js.map +0 -1
  126. package/dist/dist/interfaces/mapped-event.interface.d.ts +0 -9
  127. package/dist/dist/interfaces/mapped-event.interface.d.ts.map +0 -1
  128. package/dist/dist/interfaces/mapped-event.interface.js +0 -3
  129. package/dist/dist/interfaces/mapped-event.interface.js.map +0 -1
  130. package/dist/dist/interfaces/mapping-config.interface.d.ts +0 -26
  131. package/dist/dist/interfaces/mapping-config.interface.d.ts.map +0 -1
  132. package/dist/dist/interfaces/mapping-config.interface.js +0 -3
  133. package/dist/dist/interfaces/mapping-config.interface.js.map +0 -1
  134. package/dist/dist/interfaces/metadata-adapter.interface.d.ts +0 -26
  135. package/dist/dist/interfaces/metadata-adapter.interface.d.ts.map +0 -1
  136. package/dist/dist/interfaces/metadata-adapter.interface.js +0 -3
  137. package/dist/dist/interfaces/metadata-adapter.interface.js.map +0 -1
  138. package/dist/dist/interfaces/pull-adapter.interface.d.ts +0 -50
  139. package/dist/dist/interfaces/pull-adapter.interface.d.ts.map +0 -1
  140. package/dist/dist/interfaces/pull-adapter.interface.js +0 -3
  141. package/dist/dist/interfaces/pull-adapter.interface.js.map +0 -1
  142. package/dist/dist/interfaces/push-adapter.interface.d.ts +0 -28
  143. package/dist/dist/interfaces/push-adapter.interface.d.ts.map +0 -1
  144. package/dist/dist/interfaces/push-adapter.interface.js +0 -3
  145. package/dist/dist/interfaces/push-adapter.interface.js.map +0 -1
  146. package/dist/dist/interfaces/sample-fetcher.interface.d.ts +0 -4
  147. package/dist/dist/interfaces/sample-fetcher.interface.d.ts.map +0 -1
  148. package/dist/dist/interfaces/sample-fetcher.interface.js +0 -3
  149. package/dist/dist/interfaces/sample-fetcher.interface.js.map +0 -1
  150. package/dist/dist/interfaces/sync-result.interface.d.ts +0 -19
  151. package/dist/dist/interfaces/sync-result.interface.d.ts.map +0 -1
  152. package/dist/dist/interfaces/sync-result.interface.js +0 -3
  153. package/dist/dist/interfaces/sync-result.interface.js.map +0 -1
  154. package/dist/dist/interfaces/target-adapter.interface.d.ts +0 -10
  155. package/dist/dist/interfaces/target-adapter.interface.d.ts.map +0 -1
  156. package/dist/dist/interfaces/target-adapter.interface.js +0 -3
  157. package/dist/dist/interfaces/target-adapter.interface.js.map +0 -1
  158. package/dist/dist/mocks/hubspot.d.ts +0 -4
  159. package/dist/dist/mocks/hubspot.d.ts.map +0 -1
  160. package/dist/dist/mocks/hubspot.js +0 -61
  161. package/dist/dist/mocks/hubspot.js.map +0 -1
  162. package/dist/dist/provenance.d.ts +0 -3
  163. package/dist/dist/provenance.d.ts.map +0 -1
  164. package/dist/dist/provenance.js +0 -12
  165. package/dist/dist/provenance.js.map +0 -1
  166. package/dist/dist/services/dataflow-service.d.ts +0 -21
  167. package/dist/dist/services/dataflow-service.d.ts.map +0 -1
  168. package/dist/dist/services/dataflow-service.js +0 -47
  169. package/dist/dist/services/dataflow-service.js.map +0 -1
  170. package/dist/dist/services/dataflow.service.d.ts +0 -20
  171. package/dist/dist/services/dataflow.service.d.ts.map +0 -1
  172. package/dist/dist/services/dataflow.service.js +0 -52
  173. package/dist/dist/services/dataflow.service.js.map +0 -1
  174. package/dist/dist/services/eql.d.ts +0 -2
  175. package/dist/dist/services/eql.d.ts.map +0 -1
  176. package/dist/dist/services/eql.js +0 -10
  177. package/dist/dist/services/eql.js.map +0 -1
  178. package/dist/dist/services/mapping-service.d.ts +0 -14
  179. package/dist/dist/services/mapping-service.d.ts.map +0 -1
  180. package/dist/dist/services/mapping-service.js +0 -88
  181. package/dist/dist/services/mapping-service.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 -89
  185. package/dist/dist/services/mapping.service.js.map +0 -1
  186. package/dist/dist/services/outbound-service.d.ts +0 -14
  187. package/dist/dist/services/outbound-service.d.ts.map +0 -1
  188. package/dist/dist/services/outbound-service.js +0 -65
  189. package/dist/dist/services/outbound-service.js.map +0 -1
  190. package/dist/dist/services/paragon-workflow-service.d.ts +0 -7
  191. package/dist/dist/services/paragon-workflow-service.d.ts.map +0 -1
  192. package/dist/dist/services/paragon-workflow-service.js +0 -68
  193. package/dist/dist/services/paragon-workflow-service.js.map +0 -1
  194. package/dist/dist/services/paragon-workflow.service.d.ts +0 -8
  195. package/dist/dist/services/paragon-workflow.service.d.ts.map +0 -1
  196. package/dist/dist/services/paragon-workflow.service.js +0 -31
  197. package/dist/dist/services/paragon-workflow.service.js.map +0 -1
  198. package/dist/dist/services/preview-service.d.ts +0 -11
  199. package/dist/dist/services/preview-service.d.ts.map +0 -1
  200. package/dist/dist/services/preview-service.js +0 -66
  201. package/dist/dist/services/preview-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 -74
  205. package/dist/dist/services/preview.service.js.map +0 -1
  206. package/dist/dist/services/pull-service.d.ts +0 -9
  207. package/dist/dist/services/pull-service.d.ts.map +0 -1
  208. package/dist/dist/services/pull-service.js +0 -207
  209. package/dist/dist/services/pull-service.js.map +0 -1
  210. package/dist/dist/services/pull.service.d.ts +0 -11
  211. package/dist/dist/services/pull.service.d.ts.map +0 -1
  212. package/dist/dist/services/pull.service.js +0 -200
  213. package/dist/dist/services/pull.service.js.map +0 -1
  214. package/dist/dist/services/push-service.d.ts +0 -16
  215. package/dist/dist/services/push-service.d.ts.map +0 -1
  216. package/dist/dist/services/push-service.js +0 -76
  217. package/dist/dist/services/push-service.js.map +0 -1
  218. package/dist/dist/services/push.service.d.ts +0 -19
  219. package/dist/dist/services/push.service.d.ts.map +0 -1
  220. package/dist/dist/services/push.service.js +0 -186
  221. package/dist/dist/services/push.service.js.map +0 -1
  222. package/dist/dist/services/scheduled-pull-service.d.ts +0 -7
  223. package/dist/dist/services/scheduled-pull-service.d.ts.map +0 -1
  224. package/dist/dist/services/scheduled-pull-service.js +0 -58
  225. package/dist/dist/services/scheduled-pull-service.js.map +0 -1
  226. package/dist/dist/services/split-filter.d.ts +0 -3
  227. package/dist/dist/services/split-filter.d.ts.map +0 -1
  228. package/dist/dist/services/split-filter.js +0 -50
  229. package/dist/dist/services/split-filter.js.map +0 -1
  230. package/dist/dist/services/sync-runner.d.ts +0 -22
  231. package/dist/dist/services/sync-runner.d.ts.map +0 -1
  232. package/dist/dist/services/sync-runner.js +0 -110
  233. package/dist/dist/services/sync-runner.js.map +0 -1
  234. package/dist/dist/services/sync.service.d.ts +0 -21
  235. package/dist/dist/services/sync.service.d.ts.map +0 -1
  236. package/dist/dist/services/sync.service.js +0 -166
  237. package/dist/dist/services/sync.service.js.map +0 -1
  238. package/dist/dist/types.d.ts +0 -11
  239. package/dist/dist/types.d.ts.map +0 -1
  240. package/dist/dist/types.js +0 -6
  241. package/dist/dist/types.js.map +0 -1
  242. package/dist/dist/utils/compileFilter.d.ts +0 -3
  243. package/dist/dist/utils/compileFilter.d.ts.map +0 -1
  244. package/dist/dist/utils/compileFilter.js +0 -73
  245. package/dist/dist/utils/compileFilter.js.map +0 -1
  246. package/dist/dist/utils/normalizeDataFlow.d.ts +0 -3
  247. package/dist/dist/utils/normalizeDataFlow.d.ts.map +0 -1
  248. package/dist/dist/utils/normalizeDataFlow.js +0 -30
  249. package/dist/dist/utils/normalizeDataFlow.js.map +0 -1
  250. package/dist/dist/utils.d.ts +0 -2
  251. package/dist/dist/utils.d.ts.map +0 -1
  252. package/dist/dist/utils.js +0 -10
  253. package/dist/dist/utils.js.map +0 -1
  254. package/dist/interfaces/mapping-config.interface.d.ts +0 -26
  255. package/dist/interfaces/mapping-config.interface.d.ts.map +0 -1
  256. package/dist/interfaces/mapping-config.interface.js +0 -3
  257. package/dist/interfaces/mapping-config.interface.js.map +0 -1
  258. package/dist/interfaces/metadata-adapter.interface.d.ts +0 -26
  259. package/dist/interfaces/metadata-adapter.interface.d.ts.map +0 -1
  260. package/dist/interfaces/metadata-adapter.interface.js +0 -3
  261. package/dist/interfaces/metadata-adapter.interface.js.map +0 -1
  262. package/dist/interfaces/pull-adapter.interface.d.ts +0 -50
  263. package/dist/interfaces/pull-adapter.interface.d.ts.map +0 -1
  264. package/dist/interfaces/pull-adapter.interface.js +0 -3
  265. package/dist/interfaces/pull-adapter.interface.js.map +0 -1
  266. package/dist/interfaces/push-adapter.interface.d.ts +0 -28
  267. package/dist/interfaces/push-adapter.interface.d.ts.map +0 -1
  268. package/dist/interfaces/push-adapter.interface.js +0 -3
  269. package/dist/interfaces/push-adapter.interface.js.map +0 -1
  270. package/dist/interfaces/target-adapter.interface.d.ts +0 -10
  271. package/dist/interfaces/target-adapter.interface.d.ts.map +0 -1
  272. package/dist/interfaces/target-adapter.interface.js +0 -3
  273. package/dist/interfaces/target-adapter.interface.js.map +0 -1
  274. package/dist/mocks/hubspot.d.ts +0 -4
  275. package/dist/mocks/hubspot.d.ts.map +0 -1
  276. package/dist/mocks/hubspot.js +0 -61
  277. package/dist/mocks/hubspot.js.map +0 -1
  278. package/dist/provenance.d.ts +0 -3
  279. package/dist/provenance.d.ts.map +0 -1
  280. package/dist/provenance.js +0 -12
  281. package/dist/provenance.js.map +0 -1
  282. package/dist/services/dataflow-service.d.ts +0 -21
  283. package/dist/services/dataflow-service.d.ts.map +0 -1
  284. package/dist/services/dataflow-service.js +0 -47
  285. package/dist/services/dataflow-service.js.map +0 -1
  286. package/dist/services/eql.d.ts +0 -2
  287. package/dist/services/eql.d.ts.map +0 -1
  288. package/dist/services/eql.js +0 -10
  289. package/dist/services/eql.js.map +0 -1
  290. package/dist/services/mapping-service.d.ts +0 -14
  291. package/dist/services/mapping-service.d.ts.map +0 -1
  292. package/dist/services/mapping-service.js +0 -88
  293. package/dist/services/mapping-service.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 -89
  297. package/dist/services/mapping.service.js.map +0 -1
  298. package/dist/services/outbound-service.d.ts +0 -14
  299. package/dist/services/outbound-service.d.ts.map +0 -1
  300. package/dist/services/outbound-service.js +0 -65
  301. package/dist/services/outbound-service.js.map +0 -1
  302. package/dist/services/paragon-workflow-service.d.ts +0 -7
  303. package/dist/services/paragon-workflow-service.d.ts.map +0 -1
  304. package/dist/services/paragon-workflow-service.js +0 -68
  305. package/dist/services/paragon-workflow-service.js.map +0 -1
  306. package/dist/services/paragon-workflow.service.d.ts +0 -8
  307. package/dist/services/paragon-workflow.service.d.ts.map +0 -1
  308. package/dist/services/paragon-workflow.service.js +0 -31
  309. package/dist/services/paragon-workflow.service.js.map +0 -1
  310. package/dist/services/preview-service.d.ts +0 -11
  311. package/dist/services/preview-service.d.ts.map +0 -1
  312. package/dist/services/preview-service.js +0 -66
  313. package/dist/services/preview-service.js.map +0 -1
  314. package/dist/services/pull-service.d.ts +0 -9
  315. package/dist/services/pull-service.d.ts.map +0 -1
  316. package/dist/services/pull-service.js +0 -207
  317. package/dist/services/pull-service.js.map +0 -1
  318. package/dist/services/pull.service.d.ts +0 -11
  319. package/dist/services/pull.service.d.ts.map +0 -1
  320. package/dist/services/pull.service.js +0 -200
  321. package/dist/services/pull.service.js.map +0 -1
  322. package/dist/services/push-service.d.ts +0 -16
  323. package/dist/services/push-service.d.ts.map +0 -1
  324. package/dist/services/push-service.js +0 -76
  325. package/dist/services/push-service.js.map +0 -1
  326. package/dist/services/push.service.d.ts +0 -19
  327. package/dist/services/push.service.d.ts.map +0 -1
  328. package/dist/services/push.service.js +0 -186
  329. package/dist/services/push.service.js.map +0 -1
  330. package/dist/services/scheduled-pull-service.d.ts +0 -7
  331. package/dist/services/scheduled-pull-service.d.ts.map +0 -1
  332. package/dist/services/scheduled-pull-service.js +0 -58
  333. package/dist/services/scheduled-pull-service.js.map +0 -1
  334. package/dist/services/split-filter.d.ts +0 -3
  335. package/dist/services/split-filter.d.ts.map +0 -1
  336. package/dist/services/split-filter.js +0 -50
  337. package/dist/services/split-filter.js.map +0 -1
@@ -1,166 +0,0 @@
1
- "use strict";
2
- var __asyncValues = (this && this.__asyncValues) || function (o) {
3
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4
- var m = o[Symbol.asyncIterator], i;
5
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
6
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
7
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
8
- };
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.SyncService = void 0;
11
- const mapping_service_1 = require("./mapping.service");
12
- // SyncService runs one DataFlow using a source and target adapter.
13
- //
14
- // Two entrypoints:
15
- //
16
- // run({ flow, since }, ctx)
17
- // Scheduled/batch: source.fetch → normalize? → local filter → mapping
18
- // → target.resolveLookups? → source.enrich? → target.upsert
19
- // source may be null when the caller provides records directly.
20
- //
21
- // handleEvent({ event, flow }, ctx)
22
- // Event-driven: payload already mapped by caller (e.g. Paragon Workflow).
23
- // Skips fetch/normalize/resolveLookups/enrich — maps payload then writes.
24
- //
25
- // Constructor:
26
- // source — adapter that fetches from the source system (null for event-driven)
27
- // target — adapter that writes to the destination system
28
- class SyncService {
29
- constructor(source, target) {
30
- this.source = source;
31
- this.target = target;
32
- }
33
- async run(args, ctx) {
34
- var _a, e_1, _b, _c;
35
- var _d, _e;
36
- if (!((_d = this.source) === null || _d === void 0 ? void 0 : _d.fetch)) {
37
- throw new Error('SyncService.run requires a source adapter with fetch()');
38
- }
39
- const { flow, since } = args;
40
- const totals = { succeeded: 0, filtered: 0, failed: 0, dlqWrites: 0 };
41
- const localFilter = (_e = flow.filter) !== null && _e !== void 0 ? _e : null;
42
- try {
43
- for (var _f = true, _g = __asyncValues(this.source.fetch(ctx, flow, since, localFilter)), _h; _h = await _g.next(), _a = _h.done, !_a; _f = true) {
44
- _c = _h.value;
45
- _f = false;
46
- const batch = _c;
47
- if (!batch || batch.length === 0)
48
- continue;
49
- const normalizedBatch = this.source.normalize
50
- ? await this.source.normalize(ctx, flow, batch)
51
- : batch;
52
- const stats = await this._processBatch(flow, normalizedBatch, localFilter, ctx);
53
- totals.succeeded += stats.succeeded;
54
- totals.filtered += stats.filtered;
55
- totals.failed += stats.failed;
56
- totals.dlqWrites += stats.dlqWrites;
57
- }
58
- }
59
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
60
- finally {
61
- try {
62
- if (!_f && !_a && (_b = _g.return)) await _b.call(_g);
63
- }
64
- finally { if (e_1) throw e_1.error; }
65
- }
66
- return totals;
67
- }
68
- async handleEvent(args, ctx) {
69
- var _a, _b;
70
- const { event, flow } = args;
71
- if (event.operation === 'DELETE') {
72
- await this.target.delete(ctx, flow, [event.recordId]);
73
- return { status: 'synced', recordsProcessed: 1 };
74
- }
75
- const mapped = await (0, mapping_service_1.executeMapping)(flow, event.payload);
76
- if (!mapped) {
77
- return { status: 'filtered', recordsProcessed: 0 };
78
- }
79
- const outcomes = await this.target.upsert(ctx, flow, [mapped]);
80
- const outcome = outcomes[0];
81
- if (outcome.status === 'ok') {
82
- return { status: 'synced', recordsProcessed: 1 };
83
- }
84
- ctx.logger.error(`push_failed: dataFlowId=${flow.id} recordId=${event.recordId} ` +
85
- `class=${outcome.status} error=${(_a = outcome.error) !== null && _a !== void 0 ? _a : 'unknown'}`);
86
- return { status: 'failed', recordsProcessed: 0, error: (_b = outcome.error) !== null && _b !== void 0 ? _b : outcome.status };
87
- }
88
- // Exposed for tests / direct batch processing.
89
- async processBatch(flow, records, ctx) {
90
- var _a;
91
- return this._processBatch(flow, records, (_a = flow.filter) !== null && _a !== void 0 ? _a : null, ctx);
92
- }
93
- async _processBatch(flow, records, localFilter, ctx) {
94
- var _a, _b;
95
- const stats = { succeeded: 0, filtered: 0, failed: 0, dlqWrites: 0 };
96
- const pairs = [];
97
- for (const record of records) {
98
- if (localFilter && !(await (0, mapping_service_1.evaluateFilter)(localFilter, record))) {
99
- stats.filtered++;
100
- continue;
101
- }
102
- try {
103
- const mapped = await (0, mapping_service_1.applyMapping)(flow, record);
104
- if (!mapped) {
105
- stats.filtered++;
106
- continue;
107
- }
108
- pairs.push({ raw: record, mapped });
109
- stats.succeeded++;
110
- }
111
- catch (err) {
112
- stats.failed++;
113
- ctx.logger.error(`dlq_write: dataFlowId=${flow.id} error=${err instanceof Error ? err.message : String(err)}`);
114
- stats.dlqWrites++;
115
- }
116
- }
117
- if (pairs.length === 0)
118
- return stats;
119
- // Resolve lookups via target adapter (e.g. Skedulo ExternalId → UID)
120
- if (this.target.resolveLookups) {
121
- try {
122
- await this.target.resolveLookups(ctx, flow, pairs);
123
- }
124
- catch (err) {
125
- ctx.logger.error(`lookup_failed: ${err instanceof Error ? err.message : String(err)}`);
126
- stats.failed += stats.succeeded;
127
- stats.succeeded = 0;
128
- return stats;
129
- }
130
- }
131
- // Optional enrich from source adapter after lookups resolved
132
- let toUpsert;
133
- if ((_a = this.source) === null || _a === void 0 ? void 0 : _a.enrich) {
134
- try {
135
- toUpsert = await this.source.enrich(ctx, flow, pairs);
136
- }
137
- catch (err) {
138
- ctx.logger.error(`enrich_failed: ${err instanceof Error ? err.message : String(err)}`);
139
- stats.failed += stats.succeeded;
140
- stats.succeeded = 0;
141
- return stats;
142
- }
143
- }
144
- else {
145
- toUpsert = pairs.map((p) => p.mapped);
146
- }
147
- try {
148
- const outcomes = await this.target.upsert(ctx, flow, toUpsert);
149
- for (let i = 0; i < outcomes.length; i++) {
150
- if (outcomes[i].status !== 'ok') {
151
- ctx.logger.error(`upsert_failed: dataFlowId=${flow.id} class=${outcomes[i].status} error=${(_b = outcomes[i].error) !== null && _b !== void 0 ? _b : 'unknown'}`);
152
- stats.succeeded--;
153
- stats.failed++;
154
- }
155
- }
156
- }
157
- catch (err) {
158
- ctx.logger.error(`batch_upsert_failed: dataFlowId=${flow.id} error=${err instanceof Error ? err.message : String(err)}`);
159
- stats.failed += stats.succeeded;
160
- stats.succeeded = 0;
161
- }
162
- return stats;
163
- }
164
- }
165
- exports.SyncService = SyncService;
166
- //# sourceMappingURL=sync.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync.service.js","sourceRoot":"","sources":["../../src/services/sync.service.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- export type { LookupRule } from './interfaces/lookup-rule.interface';
2
- export type { FieldMapping, MappingConfigDto } from './interfaces/field-mapping.interface';
3
- export type { FilterOperator, FilterOperatorOption, FilterRule, FilterSpec, } from './interfaces/filter.interface';
4
- export { FILTER_OPERATORS } from './interfaces/filter.interface';
5
- export type { DataFlow } from './interfaces/data-flow-spec.interface';
6
- export type { MappedEvent } from './interfaces/mapped-event.interface';
7
- export type { SyncResult, BatchResult, PreviewResult } from './interfaces/sync-result.interface';
8
- export type { SampleFetcher } from './interfaces/sample-fetcher.interface';
9
- export type { Adapter, EnrichmentPair, UpsertOutcome, ObjectInfo, FieldInfo, SampleRecord, } from './interfaces/adapter.interface';
10
- export type { IntegrationCapabilities } from './interfaces/integration-capabilities.interface';
11
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC3F,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,UAAU,GACX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,YAAY,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACtE,YAAY,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACjG,YAAY,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAC3E,YAAY,EACV,OAAO,EACP,cAAc,EACd,aAAa,EACb,UAAU,EACV,SAAS,EACT,YAAY,GACb,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FILTER_OPERATORS = void 0;
4
- var filter_interface_1 = require("./interfaces/filter.interface");
5
- Object.defineProperty(exports, "FILTER_OPERATORS", { enumerable: true, get: function () { return filter_interface_1.FILTER_OPERATORS; } });
6
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAQA,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA"}
@@ -1,3 +0,0 @@
1
- import type { FilterSpec } from '../interfaces/filter.interface';
2
- export declare function compileFilter(filter: FilterSpec): string;
3
- //# sourceMappingURL=compileFilter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compileFilter.d.ts","sourceRoot":"","sources":["../../src/utils/compileFilter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAmE7E,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAIxD"}
@@ -1,73 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.compileFilter = compileFilter;
4
- function renderValue(value) {
5
- if (value === null)
6
- return 'null';
7
- if (Array.isArray(value))
8
- return '[' + value.map((item) => renderValue(item)).join(', ') + ']';
9
- if (typeof value === 'object' && value.type === 'expr')
10
- return value.value;
11
- if (typeof value === 'string')
12
- return JSON.stringify(value);
13
- return String(value);
14
- }
15
- function compileRule(rule) {
16
- const { field, op, value } = rule;
17
- switch (op) {
18
- case 'eq':
19
- return `\`${field}\` = ${renderValue(value)}`;
20
- case 'neq':
21
- return `\`${field}\` != ${renderValue(value)}`;
22
- case 'in':
23
- return `\`${field}\` in ${renderValue(value)}`;
24
- case 'nin':
25
- return `$not(\`${field}\` in ${renderValue(value)})`;
26
- case 'contains':
27
- return `$contains(\`${field}\`, ${renderValue(value)})`;
28
- case 'startsWith': {
29
- if (typeof value === 'object' &&
30
- value !== null &&
31
- !Array.isArray(value) &&
32
- value.type === 'expr')
33
- throw new Error('startsWith/endsWith does not support expr values');
34
- return `$contains(\`${field}\`, /^${String(value).replace(/[.*+?^${}()|[\]\/\\]/g, '\\$&')}/)`;
35
- }
36
- case 'endsWith': {
37
- if (typeof value === 'object' &&
38
- value !== null &&
39
- !Array.isArray(value) &&
40
- value.type === 'expr')
41
- throw new Error('startsWith/endsWith does not support expr values');
42
- return `$contains(\`${field}\`, /${String(value).replace(/[.*+?^${}()|[\]\/\\]/g, '\\$&')}$/)`;
43
- }
44
- case 'gt':
45
- return `\`${field}\` > ${renderValue(value)}`;
46
- case 'lt':
47
- return `\`${field}\` < ${renderValue(value)}`;
48
- case 'gte':
49
- return `\`${field}\` >= ${renderValue(value)}`;
50
- case 'lte':
51
- return `\`${field}\` <= ${renderValue(value)}`;
52
- case 'between': {
53
- if (!Array.isArray(value) || value.length !== 2)
54
- throw new Error(`'between' requires a 2-element array, got: ${JSON.stringify(value)}`);
55
- return `\`${field}\` >= ${renderValue(value[0])} and \`${field}\` <= ${renderValue(value[1])}`;
56
- }
57
- case 'notExists':
58
- return `($not($exists(\`${field}\`)) or \`${field}\` = null)`;
59
- case 'exists':
60
- return `($exists(\`${field}\`) and \`${field}\` != null)`;
61
- default: {
62
- const _exhaustive = op;
63
- throw new Error(`Unknown filter operator: ${_exhaustive}`);
64
- }
65
- }
66
- }
67
- function compileFilter(filter) {
68
- if (filter.rules.length === 0)
69
- return 'true';
70
- const joiner = filter.combinator === 'AND' ? ' and ' : ' or ';
71
- return `(${filter.rules.map(compileRule).join(joiner)})`;
72
- }
73
- //# sourceMappingURL=compileFilter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compileFilter.js","sourceRoot":"","sources":["../../src/utils/compileFilter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { DataFlow } from '../interfaces/data-flow-spec.interface';
2
- export declare function normalizeDataFlow(flow: DataFlow): DataFlow;
3
- //# sourceMappingURL=normalizeDataFlow.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalizeDataFlow.d.ts","sourceRoot":"","sources":["../../src/utils/normalizeDataFlow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAqBvE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAE1D"}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.normalizeDataFlow = normalizeDataFlow;
15
- // Older stored flows may have `property` instead of `field` in filter rules.
16
- // Normalize to `field` so the integration service API accepts them on re-save.
17
- function normalizeFilterRule(rule) {
18
- var _a;
19
- const _b = rule, { property, field } = _b, rest = __rest(_b, ["property", "field"]);
20
- return Object.assign({ field: (_a = field !== null && field !== void 0 ? field : property) !== null && _a !== void 0 ? _a : '' }, rest);
21
- }
22
- function normalizeFilter(filter) {
23
- if (!filter)
24
- return filter;
25
- return Object.assign(Object.assign({}, filter), { rules: filter.rules.map((r) => normalizeFilterRule(r)) });
26
- }
27
- function normalizeDataFlow(flow) {
28
- return Object.assign(Object.assign({}, flow), { filter: normalizeFilter(flow.filter) });
29
- }
30
- //# sourceMappingURL=normalizeDataFlow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalizeDataFlow.js","sourceRoot":"","sources":["../../src/utils/normalizeDataFlow.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAqBA,8CAEC;AApBD,6EAA6E;AAC7E,+EAA+E;AAC/E,SAAS,mBAAmB,CAAC,IAA6B;;IACxD,MAAM,KAA+B,IAGpC,EAHK,EAAE,QAAQ,EAAE,KAAK,OAGtB,EAH2B,IAAI,cAA1B,qBAA4B,CAGjC,CAAC;IACF,OAAO,gBAAE,KAAK,EAAE,MAAA,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,QAAQ,mCAAI,EAAE,IAAK,IAAI,CAAgB,CAAC;AACnE,CAAC;AAED,SAAS,eAAe,CAAC,MAA8B;IACrD,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IAC3B,uCACK,MAAM,KACT,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAuC,CAAC,CAAC,IAC5F;AACJ,CAAC;AAED,SAAgB,iBAAiB,CAAC,IAAc;IAC9C,uCAAY,IAAI,KAAE,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,IAAG;AAC3D,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function escapeEqlString(value: string): string;
2
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.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=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.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,26 +0,0 @@
1
- export type ValidationAction = 'SKIP' | 'ERROR' | 'WARN';
2
- export interface TranslationTable {
3
- name: string;
4
- mappings: Record<string, string>;
5
- }
6
- export interface MappingConfigMapping {
7
- target: string;
8
- expression: string;
9
- label?: string;
10
- }
11
- export interface MappingConfigDto {
12
- mappings: MappingConfigMapping[];
13
- version?: string;
14
- translations?: TranslationTable[];
15
- variables?: Array<{
16
- name: string;
17
- expression: string;
18
- }>;
19
- validations?: Array<{
20
- condition: string;
21
- action: ValidationAction;
22
- label?: string;
23
- message?: string;
24
- }>;
25
- }
26
- //# sourceMappingURL=mapping-config.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapping-config.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/mapping-config.interface.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAEzD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,gBAAgB,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=mapping-config.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapping-config.interface.js","sourceRoot":"","sources":["../../src/interfaces/mapping-config.interface.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- import type { IntegrationContext } from '../context';
2
- export interface ObjectInfo {
3
- name: string;
4
- label: string;
5
- }
6
- export interface FieldInfo {
7
- name: string;
8
- label: string;
9
- type: string;
10
- /** Optional JSONata path used by the mapping editor. Defaults to `name`. */
11
- expression?: string;
12
- /** UI excludes read-only fields from the target field picker. */
13
- readOnly?: boolean;
14
- /** UI warns if a required field has no corresponding mapping rule. */
15
- required?: boolean;
16
- }
17
- export interface SampleRecord {
18
- id: string;
19
- properties: Record<string, unknown>;
20
- }
21
- export interface MetadataAdapter {
22
- listObjects(ctx: IntegrationContext): Promise<ObjectInfo[]>;
23
- listFields(ctx: IntegrationContext, objectName: string): Promise<FieldInfo[]>;
24
- fetchSampleRecords(ctx: IntegrationContext, objectName: string, properties: string[], limit: number): Promise<SampleRecord[]>;
25
- }
26
- //# sourceMappingURL=metadata-adapter.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata-adapter.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/metadata-adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC5D,UAAU,CAAC,GAAG,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC9E,kBAAkB,CAChB,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAAE,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CAC5B"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=metadata-adapter.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata-adapter.interface.js","sourceRoot":"","sources":["../../src/interfaces/metadata-adapter.interface.ts"],"names":[],"mappings":""}
@@ -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,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"}