@skedulo/integration-sdk 0.3.4 → 0.4.0

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 (225) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +38 -19
  3. package/dist/actions/action-registry.d.ts.map +1 -1
  4. package/dist/actions/action-registry.js +27 -23
  5. package/dist/actions/action-registry.js.map +1 -1
  6. package/dist/actions/data-flow/activate.action.d.ts +10 -0
  7. package/dist/actions/data-flow/activate.action.d.ts.map +1 -0
  8. package/dist/actions/data-flow/activate.action.js +22 -0
  9. package/dist/actions/data-flow/activate.action.js.map +1 -0
  10. package/dist/actions/data-flow/create.action.d.ts +9 -0
  11. package/dist/actions/data-flow/create.action.d.ts.map +1 -0
  12. package/dist/actions/data-flow/create.action.js +55 -0
  13. package/dist/actions/data-flow/create.action.js.map +1 -0
  14. package/dist/actions/data-flow/deactivate.action.d.ts +9 -0
  15. package/dist/actions/data-flow/deactivate.action.d.ts.map +1 -0
  16. package/dist/actions/data-flow/deactivate.action.js +21 -0
  17. package/dist/actions/data-flow/deactivate.action.js.map +1 -0
  18. package/dist/actions/data-flow/delete.action.d.ts +10 -0
  19. package/dist/actions/data-flow/delete.action.d.ts.map +1 -0
  20. package/dist/actions/data-flow/delete.action.js +33 -0
  21. package/dist/actions/data-flow/delete.action.js.map +1 -0
  22. package/dist/actions/data-flow/get.action.d.ts +5 -0
  23. package/dist/actions/data-flow/get.action.d.ts.map +1 -0
  24. package/dist/actions/data-flow/get.action.js +22 -0
  25. package/dist/actions/data-flow/get.action.js.map +1 -0
  26. package/dist/actions/data-flow/index.d.ts +9 -0
  27. package/dist/actions/data-flow/index.d.ts.map +1 -0
  28. package/dist/actions/data-flow/index.js +33 -0
  29. package/dist/actions/data-flow/index.js.map +1 -0
  30. package/dist/actions/data-flow/list.action.d.ts +6 -0
  31. package/dist/actions/data-flow/list.action.d.ts.map +1 -0
  32. package/dist/actions/data-flow/list.action.js +25 -0
  33. package/dist/actions/data-flow/list.action.js.map +1 -0
  34. package/dist/actions/data-flow/shared.d.ts +3 -0
  35. package/dist/actions/data-flow/shared.d.ts.map +1 -0
  36. package/dist/actions/data-flow/shared.js +16 -0
  37. package/dist/actions/data-flow/shared.js.map +1 -0
  38. package/dist/actions/data-flow/types.d.ts +21 -0
  39. package/dist/actions/data-flow/types.d.ts.map +1 -0
  40. package/dist/actions/data-flow/types.js +3 -0
  41. package/dist/actions/data-flow/types.js.map +1 -0
  42. package/dist/actions/data-flow/update.action.d.ts +16 -0
  43. package/dist/actions/data-flow/update.action.d.ts.map +1 -0
  44. package/dist/actions/data-flow/update.action.js +62 -0
  45. package/dist/actions/data-flow/update.action.js.map +1 -0
  46. package/dist/actions/data-flow.action.d.ts.map +1 -1
  47. package/dist/actions/data-flow.action.js +5 -9
  48. package/dist/actions/data-flow.action.js.map +1 -1
  49. package/dist/actions/event/index.d.ts +4 -0
  50. package/dist/actions/event/index.d.ts.map +1 -0
  51. package/dist/actions/event/index.js +23 -0
  52. package/dist/actions/event/index.js.map +1 -0
  53. package/dist/actions/event/on-skedulo.action.d.ts +4 -0
  54. package/dist/actions/event/on-skedulo.action.d.ts.map +1 -0
  55. package/dist/actions/event/on-skedulo.action.js +81 -0
  56. package/dist/actions/event/on-skedulo.action.js.map +1 -0
  57. package/dist/actions/event/on-vendor.action.d.ts +4 -0
  58. package/dist/actions/event/on-vendor.action.d.ts.map +1 -0
  59. package/dist/actions/event/on-vendor.action.js +39 -0
  60. package/dist/actions/event/on-vendor.action.js.map +1 -0
  61. package/dist/actions/event/types.d.ts +28 -0
  62. package/dist/actions/event/types.d.ts.map +1 -0
  63. package/dist/actions/event/types.js +3 -0
  64. package/dist/actions/event/types.js.map +1 -0
  65. package/dist/actions/metadata/get-fields.action.d.ts +5 -0
  66. package/dist/actions/metadata/get-fields.action.d.ts.map +1 -0
  67. package/dist/actions/metadata/get-fields.action.js +26 -0
  68. package/dist/actions/metadata/get-fields.action.js.map +1 -0
  69. package/dist/actions/metadata/get-objects.action.d.ts +5 -0
  70. package/dist/actions/metadata/get-objects.action.d.ts.map +1 -0
  71. package/dist/actions/metadata/get-objects.action.js +18 -0
  72. package/dist/actions/metadata/get-objects.action.js.map +1 -0
  73. package/dist/actions/metadata/get-sample-apis.action.d.ts +5 -0
  74. package/dist/actions/metadata/get-sample-apis.action.d.ts.map +1 -0
  75. package/dist/actions/metadata/get-sample-apis.action.js +19 -0
  76. package/dist/actions/metadata/get-sample-apis.action.js.map +1 -0
  77. package/dist/actions/metadata/get-sample-records.action.d.ts +5 -0
  78. package/dist/actions/metadata/get-sample-records.action.d.ts.map +1 -0
  79. package/dist/actions/metadata/get-sample-records.action.js +33 -0
  80. package/dist/actions/metadata/get-sample-records.action.js.map +1 -0
  81. package/dist/actions/metadata/get-templates.action.d.ts +5 -0
  82. package/dist/actions/metadata/get-templates.action.d.ts.map +1 -0
  83. package/dist/actions/metadata/get-templates.action.js +19 -0
  84. package/dist/actions/metadata/get-templates.action.js.map +1 -0
  85. package/dist/actions/metadata/index.d.ts +7 -0
  86. package/dist/actions/metadata/index.d.ts.map +1 -0
  87. package/dist/actions/metadata/index.js +29 -0
  88. package/dist/actions/metadata/index.js.map +1 -0
  89. package/dist/actions/metadata/shared.d.ts +6 -0
  90. package/dist/actions/metadata/shared.d.ts.map +1 -0
  91. package/dist/actions/metadata/shared.js +11 -0
  92. package/dist/actions/metadata/shared.js.map +1 -0
  93. package/dist/actions/metadata/types.d.ts +38 -0
  94. package/dist/actions/metadata/types.d.ts.map +1 -0
  95. package/dist/actions/metadata/types.js +3 -0
  96. package/dist/actions/metadata/types.js.map +1 -0
  97. package/dist/actions/scheduled-job/create.action.d.ts +5 -0
  98. package/dist/actions/scheduled-job/create.action.d.ts.map +1 -0
  99. package/dist/actions/scheduled-job/create.action.js +53 -0
  100. package/dist/actions/scheduled-job/create.action.js.map +1 -0
  101. package/dist/actions/scheduled-job/delete.action.d.ts +15 -0
  102. package/dist/actions/scheduled-job/delete.action.d.ts.map +1 -0
  103. package/dist/actions/scheduled-job/delete.action.js +42 -0
  104. package/dist/actions/scheduled-job/delete.action.js.map +1 -0
  105. package/dist/actions/scheduled-job/get.action.d.ts +7 -0
  106. package/dist/actions/scheduled-job/get.action.d.ts.map +1 -0
  107. package/dist/actions/scheduled-job/get.action.js +23 -0
  108. package/dist/actions/scheduled-job/get.action.js.map +1 -0
  109. package/dist/actions/scheduled-job/index.d.ts +7 -0
  110. package/dist/actions/scheduled-job/index.d.ts.map +1 -0
  111. package/dist/actions/scheduled-job/index.js +29 -0
  112. package/dist/actions/scheduled-job/index.js.map +1 -0
  113. package/dist/actions/scheduled-job/list.action.d.ts +5 -0
  114. package/dist/actions/scheduled-job/list.action.d.ts.map +1 -0
  115. package/dist/actions/scheduled-job/list.action.js +18 -0
  116. package/dist/actions/scheduled-job/list.action.js.map +1 -0
  117. package/dist/actions/scheduled-job/shared.d.ts +30 -0
  118. package/dist/actions/scheduled-job/shared.d.ts.map +1 -0
  119. package/dist/actions/scheduled-job/shared.js +129 -0
  120. package/dist/actions/scheduled-job/shared.js.map +1 -0
  121. package/dist/actions/scheduled-job/types.d.ts +23 -0
  122. package/dist/actions/scheduled-job/types.d.ts.map +1 -0
  123. package/dist/actions/scheduled-job/types.js +3 -0
  124. package/dist/actions/scheduled-job/types.js.map +1 -0
  125. package/dist/actions/scheduled-job/update.action.d.ts +5 -0
  126. package/dist/actions/scheduled-job/update.action.d.ts.map +1 -0
  127. package/dist/actions/scheduled-job/update.action.js +64 -0
  128. package/dist/actions/scheduled-job/update.action.js.map +1 -0
  129. package/dist/actions/scheduled-job.action.d.ts +73 -0
  130. package/dist/actions/scheduled-job.action.d.ts.map +1 -0
  131. package/dist/actions/scheduled-job.action.js +355 -0
  132. package/dist/actions/scheduled-job.action.js.map +1 -0
  133. package/dist/actions/setup.action.js +1 -1
  134. package/dist/actions/setup.action.js.map +1 -1
  135. package/dist/actions/sync/index.d.ts +4 -0
  136. package/dist/actions/sync/index.d.ts.map +1 -0
  137. package/dist/actions/sync/index.js +23 -0
  138. package/dist/actions/sync/index.js.map +1 -0
  139. package/dist/actions/sync/run-flow.action.d.ts +8 -0
  140. package/dist/actions/sync/run-flow.action.d.ts.map +1 -0
  141. package/dist/actions/sync/run-flow.action.js +81 -0
  142. package/dist/actions/sync/run-flow.action.js.map +1 -0
  143. package/dist/actions/sync/run-job.action.d.ts +11 -0
  144. package/dist/actions/sync/run-job.action.d.ts.map +1 -0
  145. package/dist/actions/sync/run-job.action.js +75 -0
  146. package/dist/actions/sync/run-job.action.js.map +1 -0
  147. package/dist/actions/sync/types.d.ts +41 -0
  148. package/dist/actions/sync/types.d.ts.map +1 -0
  149. package/dist/actions/sync/types.js +3 -0
  150. package/dist/actions/sync/types.js.map +1 -0
  151. package/dist/actions/sync.action.d.ts +8 -47
  152. package/dist/actions/sync.action.d.ts.map +1 -1
  153. package/dist/actions/sync.action.js +29 -162
  154. package/dist/actions/sync.action.js.map +1 -1
  155. package/dist/actions/utils/action-names.d.ts +19 -6
  156. package/dist/actions/utils/action-names.d.ts.map +1 -1
  157. package/dist/actions/utils/action-names.js +19 -6
  158. package/dist/actions/utils/action-names.js.map +1 -1
  159. package/dist/actions/utils/define-action.d.ts +36 -0
  160. package/dist/actions/utils/define-action.d.ts.map +1 -0
  161. package/dist/actions/utils/define-action.js +43 -0
  162. package/dist/actions/utils/define-action.js.map +1 -0
  163. package/dist/actions/utils/errors.d.ts +54 -8
  164. package/dist/actions/utils/errors.d.ts.map +1 -1
  165. package/dist/actions/utils/errors.js +104 -14
  166. package/dist/actions/utils/errors.js.map +1 -1
  167. package/dist/actions/utils/helpers.d.ts.map +1 -1
  168. package/dist/actions/utils/helpers.js +2 -1
  169. package/dist/actions/utils/helpers.js.map +1 -1
  170. package/dist/actions/utils/metrics.d.ts +12 -0
  171. package/dist/actions/utils/metrics.d.ts.map +1 -0
  172. package/dist/actions/utils/metrics.js +12 -0
  173. package/dist/actions/utils/metrics.js.map +1 -0
  174. package/dist/actions/utils/middleware.d.ts +39 -0
  175. package/dist/actions/utils/middleware.d.ts.map +1 -0
  176. package/dist/actions/utils/middleware.js +85 -0
  177. package/dist/actions/utils/middleware.js.map +1 -0
  178. package/dist/actions/utils/types.d.ts +5 -4
  179. package/dist/actions/utils/types.d.ts.map +1 -1
  180. package/dist/adapters/base-adapter-handler.d.ts +10 -0
  181. package/dist/adapters/base-adapter-handler.d.ts.map +1 -1
  182. package/dist/adapters/base-adapter-handler.js +18 -34
  183. package/dist/adapters/base-adapter-handler.js.map +1 -1
  184. package/dist/browser.d.ts +2 -0
  185. package/dist/browser.d.ts.map +1 -1
  186. package/dist/browser.js +3 -1
  187. package/dist/browser.js.map +1 -1
  188. package/dist/clients/integration-config.client.d.ts +21 -0
  189. package/dist/clients/integration-config.client.d.ts.map +1 -0
  190. package/dist/clients/integration-config.client.js +44 -0
  191. package/dist/clients/integration-config.client.js.map +1 -0
  192. package/dist/context.d.ts +18 -3
  193. package/dist/context.d.ts.map +1 -1
  194. package/dist/context.js +21 -5
  195. package/dist/context.js.map +1 -1
  196. package/dist/index.d.ts +11 -0
  197. package/dist/index.d.ts.map +1 -1
  198. package/dist/index.js +30 -1
  199. package/dist/index.js.map +1 -1
  200. package/dist/interfaces/data-flow-spec.interface.d.ts +14 -21
  201. package/dist/interfaces/data-flow-spec.interface.d.ts.map +1 -1
  202. package/dist/interfaces/data-flow-spec.interface.js +10 -26
  203. package/dist/interfaces/data-flow-spec.interface.js.map +1 -1
  204. package/dist/interfaces/integration-capabilities.interface.d.ts +2 -2
  205. package/dist/interfaces/scheduled-job.interface.d.ts +40 -0
  206. package/dist/interfaces/scheduled-job.interface.d.ts.map +1 -0
  207. package/dist/interfaces/scheduled-job.interface.js +38 -0
  208. package/dist/interfaces/scheduled-job.interface.js.map +1 -0
  209. package/dist/services/dataflow.service.d.ts +13 -6
  210. package/dist/services/dataflow.service.d.ts.map +1 -1
  211. package/dist/services/dataflow.service.js +34 -57
  212. package/dist/services/dataflow.service.js.map +1 -1
  213. package/dist/services/sync-runner.d.ts +1 -0
  214. package/dist/services/sync-runner.d.ts.map +1 -1
  215. package/dist/services/sync-runner.js +7 -27
  216. package/dist/services/sync-runner.js.map +1 -1
  217. package/dist/types.d.ts +2 -0
  218. package/dist/types.d.ts.map +1 -1
  219. package/dist/types.js +4 -1
  220. package/dist/types.js.map +1 -1
  221. package/dist/utils/artifact-builder.d.ts +40 -15
  222. package/dist/utils/artifact-builder.d.ts.map +1 -1
  223. package/dist/utils/artifact-builder.js +92 -17
  224. package/dist/utils/artifact-builder.js.map +1 -1
  225. package/package.json +1 -1
@@ -3,51 +3,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TriggerType = exports.SyncStrategy = void 0;
4
4
  exports.asSyncConfig = asSyncConfig;
5
5
  /**
6
- * How a data flow's sync is triggered. Direction (source/target) determines
7
- * push vs pull — the strategy only describes *when* it fires:
8
- *
9
- * - `scheduled` — periodic poll on an interval (push if outbound, pull if inbound).
10
- * - `realtime` — event-driven (triggered action on Skedulo change, or vendor webhook).
6
+ * How a data flow's sync is triggered. As of Phase 2 the only per-flow strategy
7
+ * is `realtime` (event-driven). Scheduled syncs are no longer per-flow — they
8
+ * are integration-level **scheduled jobs** (see `scheduled-job.interface.ts`),
9
+ * so a batch-only flow carries no `sync_config` at all.
11
10
  */
12
11
  exports.SyncStrategy = {
13
- SCHEDULED: 'scheduled',
14
12
  REALTIME: 'realtime',
15
13
  };
16
14
  /** Kind of Skedulo-side artifact the SDK provisions for a flow. */
17
15
  exports.TriggerType = {
18
- WEBHOOK: 'webhook',
19
16
  TRIGGERED_ACTION: 'triggered_action',
20
17
  };
21
18
  /**
22
19
  * Narrow a loosely typed `triggerConfig` JSONB value into a `SyncConfig`.
23
20
  *
24
- * Reads the canonical `{ sync_config: { strategy, interval_minutes, ... } }`
25
- * shape. Returns `null` for `null`/`undefined` input, a missing/non-object
26
- * `sync_config`, an unknown strategy, or a scheduled strategy without a numeric
27
- * `interval_minutes`.
21
+ * Reads the canonical `{ sync_config: { strategy, ... } }` shape. Returns `null`
22
+ * for `null`/`undefined` input, a missing/non-object `sync_config`, or any
23
+ * strategy other than `realtime` (batch-only flows have no `sync_config`).
28
24
  */
29
25
  function asSyncConfig(value) {
30
26
  const nested = value === null || value === void 0 ? void 0 : value.sync_config;
31
27
  if (!nested || typeof nested !== 'object')
32
28
  return null;
33
- const strategyRaw = nested.strategy;
34
- const strategy = strategyRaw === exports.SyncStrategy.SCHEDULED
35
- ? exports.SyncStrategy.SCHEDULED
36
- : strategyRaw === exports.SyncStrategy.REALTIME
37
- ? exports.SyncStrategy.REALTIME
38
- : null;
39
- if (!strategy)
29
+ if (nested.strategy !== exports.SyncStrategy.REALTIME)
40
30
  return null;
41
- const sc = { strategy };
42
- if (strategy === exports.SyncStrategy.SCHEDULED) {
43
- if (typeof nested.interval_minutes !== 'number')
44
- return null;
45
- sc.interval_minutes = nested.interval_minutes;
46
- }
31
+ const sc = { strategy: exports.SyncStrategy.REALTIME };
47
32
  if (typeof nested.trigger_name === 'string')
48
33
  sc.trigger_name = nested.trigger_name;
49
- if (nested.trigger_type === exports.TriggerType.WEBHOOK ||
50
- nested.trigger_type === exports.TriggerType.TRIGGERED_ACTION) {
34
+ if (nested.trigger_type === exports.TriggerType.TRIGGERED_ACTION) {
51
35
  sc.trigger_type = nested.trigger_type;
52
36
  }
53
37
  return sc;
@@ -1 +1 @@
1
- {"version":3,"file":"data-flow-spec.interface.js","sourceRoot":"","sources":["../../src/interfaces/data-flow-spec.interface.ts"],"names":[],"mappings":";;;AAuDA,oCA0BC;AA9ED;;;;;;GAMG;AACU,QAAA,YAAY,GAAG;IAC1B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,mEAAmE;AACtD,QAAA,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC;AA2BX;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,KAAiD;IAC5E,MAAM,MAAM,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAkD,CAAC;IACzE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEvD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC;IACpC,MAAM,QAAQ,GACZ,WAAW,KAAK,oBAAY,CAAC,SAAS;QACpC,CAAC,CAAC,oBAAY,CAAC,SAAS;QACxB,CAAC,CAAC,WAAW,KAAK,oBAAY,CAAC,QAAQ;YACrC,CAAC,CAAC,oBAAY,CAAC,QAAQ;YACvB,CAAC,CAAC,IAAI,CAAC;IACb,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,EAAE,GAAe,EAAE,QAAQ,EAAE,CAAC;IACpC,IAAI,QAAQ,KAAK,oBAAY,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,OAAO,MAAM,CAAC,gBAAgB,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC7D,EAAE,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ;QAAE,EAAE,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IACnF,IACE,MAAM,CAAC,YAAY,KAAK,mBAAW,CAAC,OAAO;QAC3C,MAAM,CAAC,YAAY,KAAK,mBAAW,CAAC,gBAAgB,EACpD,CAAC;QACD,EAAE,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IACxC,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"data-flow-spec.interface.js","sourceRoot":"","sources":["../../src/interfaces/data-flow-spec.interface.ts"],"names":[],"mappings":";;;AAiDA,oCAYC;AA1DD;;;;;GAKG;AACU,QAAA,YAAY,GAAG;IAC1B,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,mEAAmE;AACtD,QAAA,WAAW,GAAG;IACzB,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC;AAyBX;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,KAAiD;IAC5E,MAAM,MAAM,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAkD,CAAC;IACzE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEvD,IAAI,MAAM,CAAC,QAAQ,KAAK,oBAAY,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3D,MAAM,EAAE,GAAe,EAAE,QAAQ,EAAE,oBAAY,CAAC,QAAQ,EAAE,CAAC;IAC3D,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ;QAAE,EAAE,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IACnF,IAAI,MAAM,CAAC,YAAY,KAAK,mBAAW,CAAC,gBAAgB,EAAE,CAAC;QACzD,EAAE,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IACxC,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -20,8 +20,8 @@ export interface IntegrationCapabilities {
20
20
  *
21
21
  * - outbound = Skedulo → this vendor (this integration is the TARGET).
22
22
  * Default when omitted: true if the adapter advertises a TARGET role.
23
- * The SDK creates a Skedulo triggered action that calls the integration's
24
- * dispatcher with action="onSkeduloEvent" when a Skedulo record changes.
23
+ * The SDK creates a Skedulo triggered action that calls the dispatcher
24
+ * with the `event.on-skedulo` action when a Skedulo record changes.
25
25
  *
26
26
  * - inbound = this vendor → Skedulo (this integration is the SOURCE).
27
27
  * Default when omitted: false. Requires the adapter to implement
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Integration-level scheduled jobs (Phase 2). A job drives an ES scheduled
3
+ * webhook that fires `sync.run-job`, which runs the job's `flow_ids` in order.
4
+ * Job config lives in the `config` JSONB column on `tenant_integration` (IS),
5
+ * which the SDK treats as `IntegrationConfig`.
6
+ */
7
+ /** Interval unit for a scheduled job. */
8
+ export declare const JobIntervalUnit: {
9
+ readonly MINUTES: "minutes";
10
+ readonly HOURS: "hours";
11
+ };
12
+ export type JobIntervalUnit = (typeof JobIntervalUnit)[keyof typeof JobIntervalUnit];
13
+ /**
14
+ * One scheduled job (snake_case, persisted in `tenant_integration.config`).
15
+ *
16
+ * `webhook_name` is the job's identity — both the config lookup key and the ES
17
+ * artifact name. It is derived from `name` on create and then immutable
18
+ * (renaming `name` keeps the original `webhook_name`).
19
+ */
20
+ export interface ScheduledJob {
21
+ /** Identity + ES artifact name, e.g. `sked-int-hubspot-job-nightly-crm`. */
22
+ webhook_name: string;
23
+ /** User-facing label (renamable). */
24
+ name: string;
25
+ interval_value: number;
26
+ interval_unit: JobIntervalUnit;
27
+ /** ORDERED list of flow ids; unique across all jobs (J5). */
28
+ flow_ids: number[];
29
+ enabled: boolean;
30
+ }
31
+ /** Opaque `tenant_integration.config` shape the SDK owns. */
32
+ export interface IntegrationConfig {
33
+ scheduled_jobs: ScheduledJob[];
34
+ }
35
+ /**
36
+ * Narrow a loosely typed `config` JSONB value into an `IntegrationConfig`.
37
+ * Returns `{ scheduled_jobs: [] }` for null/garbage; drops malformed job entries.
38
+ */
39
+ export declare function asIntegrationConfig(value: Record<string, unknown> | null | undefined): IntegrationConfig;
40
+ //# sourceMappingURL=scheduled-job.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled-job.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/scheduled-job.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,yCAAyC;AACzC,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AACX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,eAAe,CAAC;IAC/B,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,6DAA6D;AAC7D,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,YAAY,EAAE,CAAC;CAChC;AAgBD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAChD,iBAAiB,CAInB"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /**
3
+ * Integration-level scheduled jobs (Phase 2). A job drives an ES scheduled
4
+ * webhook that fires `sync.run-job`, which runs the job's `flow_ids` in order.
5
+ * Job config lives in the `config` JSONB column on `tenant_integration` (IS),
6
+ * which the SDK treats as `IntegrationConfig`.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.JobIntervalUnit = void 0;
10
+ exports.asIntegrationConfig = asIntegrationConfig;
11
+ /** Interval unit for a scheduled job. */
12
+ exports.JobIntervalUnit = {
13
+ MINUTES: 'minutes',
14
+ HOURS: 'hours',
15
+ };
16
+ function isScheduledJob(value) {
17
+ if (!value || typeof value !== 'object')
18
+ return false;
19
+ const j = value;
20
+ return (typeof j.webhook_name === 'string' &&
21
+ typeof j.name === 'string' &&
22
+ typeof j.interval_value === 'number' &&
23
+ (j.interval_unit === exports.JobIntervalUnit.MINUTES || j.interval_unit === exports.JobIntervalUnit.HOURS) &&
24
+ Array.isArray(j.flow_ids) &&
25
+ j.flow_ids.every((id) => Number.isInteger(id)) &&
26
+ typeof j.enabled === 'boolean');
27
+ }
28
+ /**
29
+ * Narrow a loosely typed `config` JSONB value into an `IntegrationConfig`.
30
+ * Returns `{ scheduled_jobs: [] }` for null/garbage; drops malformed job entries.
31
+ */
32
+ function asIntegrationConfig(value) {
33
+ const jobs = value === null || value === void 0 ? void 0 : value.scheduled_jobs;
34
+ if (!Array.isArray(jobs))
35
+ return { scheduled_jobs: [] };
36
+ return { scheduled_jobs: jobs.filter(isScheduledJob) };
37
+ }
38
+ //# sourceMappingURL=scheduled-job.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled-job.interface.js","sourceRoot":"","sources":["../../src/interfaces/scheduled-job.interface.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAmDH,kDAMC;AAvDD,yCAAyC;AAC5B,QAAA,eAAe,GAAG;IAC7B,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;CACN,CAAC;AA2BX,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,OAAO,CACL,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ;QAClC,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;QAC1B,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ;QACpC,CAAC,CAAC,CAAC,aAAa,KAAK,uBAAe,CAAC,OAAO,IAAI,CAAC,CAAC,aAAa,KAAK,uBAAe,CAAC,KAAK,CAAC;QAC1F,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,CAAC,OAAO,KAAK,SAAS,CAC/B,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,mBAAmB,CACjC,KAAiD;IAEjD,MAAM,IAAI,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;IACxD,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;AACzD,CAAC"}
@@ -22,15 +22,22 @@ export declare class DataFlowService {
22
22
  update(id: number, patch: UpdateDataFlowPatch): Promise<DataFlow>;
23
23
  delete(id: number): Promise<void>;
24
24
  /**
25
- * Idempotent activate. Two-phase fail-closed semantics:
26
- * 1. Upsert the PSS artifact (Webhook or TriggeredAction) under a deterministic name.
27
- * 2. PATCH `triggerConfig.sync_config` on IS (records the artifact), then mark IS ACTIVE.
28
- * If step 2 fails the artifact is compensatingly deleted.
25
+ * Idempotent activate.
26
+ *
27
+ * Realtime flows (those carrying a `sync_config`) get a triggered action,
28
+ * two-phase fail-closed:
29
+ * 1. Upsert the triggered action under a deterministic name.
30
+ * 2. PATCH `triggerConfig.sync_config` (records the artifact), then mark ACTIVE.
31
+ * If step 2 fails the artifact is compensatingly deleted.
32
+ *
33
+ * Batch-only flows (no `sync_config` — they're driven by integration-level
34
+ * scheduled jobs, not a per-flow artifact) are just marked ACTIVE on IS.
29
35
  */
30
36
  activate(id: number, ctx: IntegrationContext): Promise<DataFlow>;
31
37
  /**
32
- * Inverse of `activate`. Deletes the PSS artifact (404-tolerant), transitions
33
- * IS to INACTIVE, and clears the artifact reference from `sync_config`.
38
+ * Inverse of `activate`. For a realtime flow, deletes the triggered action
39
+ * (404-tolerant) and clears the artifact reference from `sync_config`. Always
40
+ * transitions IS to INACTIVE.
34
41
  */
35
42
  deactivate(id: number, ctx: IntegrationContext): Promise<DataFlow>;
36
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dataflow.service.d.ts","sourceRoot":"","sources":["../../src/services/dataflow.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAIrD,OAAO,EAIL,KAAK,QAAQ,EAEd,MAAM,wCAAwC,CAAC;AAmBhD,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,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,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhE,UAAU,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAajB,IAAI,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAIhE,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIjE,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;;OAKG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;IA6EtE;;;OAGG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAgCzE"}
1
+ {"version":3,"file":"dataflow.service.d.ts","sourceRoot":"","sources":["../../src/services/dataflow.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD,OAAO,EAGL,KAAK,QAAQ,EAEd,MAAM,wCAAwC,CAAC;AAUhD,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,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,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhE,UAAU,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAajB,IAAI,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAIhE,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIjE,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;;;;;;;;OAWG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAyDtE;;;;OAIG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;CA4BzE"}
@@ -13,18 +13,10 @@ var __rest = (this && this.__rest) || function (s, e) {
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.DataFlowService = void 0;
15
15
  const pulse_solution_services_1 = require("@skedulo/pulse-solution-services");
16
- const action_names_1 = require("../actions/utils/action-names");
17
16
  const errors_1 = require("../actions/utils/errors");
18
17
  const constants_1 = require("../constants");
19
18
  const data_flow_spec_interface_1 = require("../interfaces/data-flow-spec.interface");
20
19
  const artifact_builder_1 = require("../utils/artifact-builder");
21
- /**
22
- * The `{{ SKEDULO_API_URL }}` token is substituted with the tenant API host by the
23
- * platform when the artifact fires.
24
- */
25
- function functionCallbackUrl(integrationType) {
26
- return `{{ SKEDULO_API_URL }}/function/${integrationType}/${integrationType}`;
27
- }
28
20
  class DataFlowService {
29
21
  constructor(client) {
30
22
  this.client = client;
@@ -73,20 +65,29 @@ class DataFlowService {
73
65
  await this.client.delete(id);
74
66
  }
75
67
  /**
76
- * Idempotent activate. Two-phase fail-closed semantics:
77
- * 1. Upsert the PSS artifact (Webhook or TriggeredAction) under a deterministic name.
78
- * 2. PATCH `triggerConfig.sync_config` on IS (records the artifact), then mark IS ACTIVE.
79
- * If step 2 fails the artifact is compensatingly deleted.
68
+ * Idempotent activate.
69
+ *
70
+ * Realtime flows (those carrying a `sync_config`) get a triggered action,
71
+ * two-phase fail-closed:
72
+ * 1. Upsert the triggered action under a deterministic name.
73
+ * 2. PATCH `triggerConfig.sync_config` (records the artifact), then mark ACTIVE.
74
+ * If step 2 fails the artifact is compensatingly deleted.
75
+ *
76
+ * Batch-only flows (no `sync_config` — they're driven by integration-level
77
+ * scheduled jobs, not a per-flow artifact) are just marked ACTIVE on IS.
80
78
  */
81
79
  async activate(id, ctx) {
82
- var _a, _b;
80
+ var _a;
83
81
  const flow = await this.client.getById(id);
84
82
  if (!flow) {
85
- throw new errors_1.ActionError('FLOW_NOT_FOUND', `Flow ${id} not found`);
83
+ throw new errors_1.NotFoundError('FLOW_NOT_FOUND', `Flow ${id} not found`);
86
84
  }
87
85
  const sc = (0, data_flow_spec_interface_1.asSyncConfig)((_a = flow.triggerConfig) !== null && _a !== void 0 ? _a : null);
86
+ // Batch-only flow: no artifact to provision — scheduled jobs drive these.
88
87
  if (!sc) {
89
- throw new errors_1.ActionError('MISSING_SYNC_STRATEGY', `Flow ${id} has no valid sync strategy in triggerConfig`);
88
+ await this.client.activate(id);
89
+ const updated = await this.client.getById(id);
90
+ return updated !== null && updated !== void 0 ? updated : flow;
90
91
  }
91
92
  if (sc.trigger_name) {
92
93
  // Already provisioned — just (re)activate on IS.
@@ -95,42 +96,20 @@ class DataFlowService {
95
96
  return updated !== null && updated !== void 0 ? updated : flow;
96
97
  }
97
98
  const name = (0, artifact_builder_1.buildArtifactName)(flow, ctx.integrationType);
98
- const url = functionCallbackUrl(ctx.integrationType);
99
- let kind;
100
- let artifactType;
101
- let artifact;
102
- if (sc.strategy === data_flow_spec_interface_1.SyncStrategy.SCHEDULED) {
103
- // Direction decides push vs pull: outbound (Skedulo source) pushes to the
104
- // vendor; inbound pulls from it.
105
- const isOutbound = flow.sourceSystem === constants_1.SKEDULO_SYSTEM;
106
- kind = data_flow_spec_interface_1.TriggerType.WEBHOOK;
107
- artifactType = pulse_solution_services_1.ArtifactType.WEBHOOK;
108
- artifact = (0, artifact_builder_1.buildScheduledWebhookArtifact)({
109
- name,
110
- url,
111
- cron: (0, artifact_builder_1.intervalMinutesToCron)((_b = sc.interval_minutes) !== null && _b !== void 0 ? _b : 0),
112
- action: isOutbound ? action_names_1.ACTIONS.sync.push : action_names_1.ACTIONS.sync.scheduledPull,
113
- dataFlowId: flow.id,
114
- });
115
- }
116
- else {
117
- kind = data_flow_spec_interface_1.TriggerType.TRIGGERED_ACTION;
118
- artifactType = pulse_solution_services_1.ArtifactType.TRIGGERED_ACTION;
119
- artifact = (0, artifact_builder_1.buildTriggeredActionArtifact)({
120
- name,
121
- url,
122
- schemaName: flow.sourceObject,
123
- query: (0, artifact_builder_1.buildSkeduloQuery)(flow),
124
- dataFlowId: flow.id,
125
- });
126
- }
127
- const client = ctx.newArtifactClient(artifactType);
99
+ const url = (0, artifact_builder_1.functionCallbackUrl)(ctx.integrationType);
100
+ const artifact = (0, artifact_builder_1.buildTriggeredActionArtifact)({
101
+ name,
102
+ url,
103
+ schemaName: flow.sourceObject,
104
+ query: (0, artifact_builder_1.buildSkeduloQuery)(flow),
105
+ dataFlowId: flow.id,
106
+ });
107
+ const client = ctx.newArtifactClient(pulse_solution_services_1.ArtifactType.TRIGGERED_ACTION);
128
108
  await (0, artifact_builder_1.upsertArtifact)(client, name, artifact);
129
109
  try {
130
- // Clean replacement — never merge legacy top-level keys back in. This
131
- // write is also the lazy migration of pre-rename rows.
110
+ // Clean replacement — never merge legacy top-level keys back in.
132
111
  const nextTriggerConfig = {
133
- sync_config: Object.assign(Object.assign({}, sc), { trigger_name: name, trigger_type: kind }),
112
+ sync_config: Object.assign(Object.assign({}, sc), { trigger_name: name, trigger_type: data_flow_spec_interface_1.TriggerType.TRIGGERED_ACTION }),
134
113
  };
135
114
  await this.client.update(id, {
136
115
  triggerConfig: nextTriggerConfig,
@@ -141,7 +120,7 @@ class DataFlowService {
141
120
  try {
142
121
  await (0, artifact_builder_1.deleteArtifactIfExists)(client, name);
143
122
  }
144
- catch (_c) {
123
+ catch (_b) {
145
124
  // best-effort compensating delete; surface the original error
146
125
  }
147
126
  throw err;
@@ -150,26 +129,24 @@ class DataFlowService {
150
129
  return updated !== null && updated !== void 0 ? updated : flow;
151
130
  }
152
131
  /**
153
- * Inverse of `activate`. Deletes the PSS artifact (404-tolerant), transitions
154
- * IS to INACTIVE, and clears the artifact reference from `sync_config`.
132
+ * Inverse of `activate`. For a realtime flow, deletes the triggered action
133
+ * (404-tolerant) and clears the artifact reference from `sync_config`. Always
134
+ * transitions IS to INACTIVE.
155
135
  */
156
136
  async deactivate(id, ctx) {
157
137
  var _a;
158
138
  const flow = await this.client.getById(id);
159
139
  if (!flow) {
160
- throw new errors_1.ActionError('FLOW_NOT_FOUND', `Flow ${id} not found`);
140
+ throw new errors_1.NotFoundError('FLOW_NOT_FOUND', `Flow ${id} not found`);
161
141
  }
162
142
  const sc = (0, data_flow_spec_interface_1.asSyncConfig)((_a = flow.triggerConfig) !== null && _a !== void 0 ? _a : null);
163
143
  if (sc === null || sc === void 0 ? void 0 : sc.trigger_name) {
164
- const artifactType = sc.trigger_type === data_flow_spec_interface_1.TriggerType.WEBHOOK
165
- ? pulse_solution_services_1.ArtifactType.WEBHOOK
166
- : pulse_solution_services_1.ArtifactType.TRIGGERED_ACTION;
167
- const client = ctx.newArtifactClient(artifactType);
144
+ const client = ctx.newArtifactClient(pulse_solution_services_1.ArtifactType.TRIGGERED_ACTION);
168
145
  await (0, artifact_builder_1.deleteArtifactIfExists)(client, sc.trigger_name);
169
146
  }
170
147
  await this.client.deactivate(id);
171
148
  if (sc) {
172
- // Clean replacement: drop trigger_name/trigger_type, keep strategy/interval.
149
+ // Clean replacement: drop trigger_name/trigger_type, keep strategy.
173
150
  const { trigger_name: _n, trigger_type: _t } = sc, rest = __rest(sc, ["trigger_name", "trigger_type"]);
174
151
  void _n;
175
152
  void _t;
@@ -1 +1 @@
1
- {"version":3,"file":"dataflow.service.js","sourceRoot":"","sources":["../../src/services/dataflow.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataflow.service.js","sourceRoot":"","sources":["../../src/services/dataflow.service.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export declare class SyncRunner {
18
18
  run(args: {
19
19
  flowId: number;
20
20
  since: Date | null;
21
+ overrideSince?: Date | null;
21
22
  sourceSystem?: string;
22
23
  targetSystem?: string;
23
24
  options?: SyncRunOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"sync-runner.d.ts","sourceRoot":"","sources":["../../src/services/sync-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,WAAW,EAAkB,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,EAAoB,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AA+B/D,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW;CAI1D;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,UAAU,EAAE,MAAM;CAI/B;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;gBAI/B,QAAQ,CAAC,EAAE,eAAe;IAItC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAQ9C,GAAG,CACP,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,cAAc,CAAC;KAC1B,EACD,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,WAAW,CAAC;IA8DjB,WAAW,CACf,IAAI,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAAE,EACtD,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,UAAU,EAAE,CAAC;IA8BlB,eAAe,CACnB,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAAE,EACtE,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,UAAU,CAAC;YASR,iBAAiB;IAqB/B,OAAO,CAAC,QAAQ;CAejB"}
1
+ {"version":3,"file":"sync-runner.d.ts","sourceRoot":"","sources":["../../src/services/sync-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,WAAW,EAAkB,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,EAAoB,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAU/D,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW;CAI1D;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,UAAU,EAAE,MAAM;CAI/B;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;gBAI/B,QAAQ,CAAC,EAAE,eAAe;IAItC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAQ9C,GAAG,CACP,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;QAInB,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,cAAc,CAAC;KAC1B,EACD,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,WAAW,CAAC;IAgEjB,WAAW,CACf,IAAI,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAAE,EACtD,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,UAAU,EAAE,CAAC;IA8BlB,eAAe,CACnB,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAAE,EACtE,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,UAAU,CAAC;YASR,iBAAiB;IAqB/B,OAAO,CAAC,QAAQ;CAejB"}
@@ -7,30 +7,9 @@ const external_id_sync_strategy_1 = require("./external-id-sync.strategy");
7
7
  const id_mapping_sync_strategy_1 = require("./id-mapping-sync.strategy");
8
8
  const id_mapping_service_1 = require("./id-mapping.service");
9
9
  const sync_service_1 = require("./sync.service");
10
- // SyncRunner is the high-level entry point for integration packages.
11
- //
12
- // It owns:
13
- // - Adapter registration (keyed by system name, e.g. 'hubspot', 'skedulo')
14
- // - Flow fetch by ID or by filter (for event-driven paths)
15
- // - Adapter resolution from flow.sourceSystem / flow.targetSystem
16
- // - Strategy creation based on SyncRunOptions.lookupStrategy
17
- // - Delegation to SyncService for the actual pipeline
18
- //
19
- // Integration packages register their adapters at startup, then call
20
- // run() or handleEvent() with minimal info (flowId or MappedEvent).
21
- //
22
- // runner = new SyncRunner()
23
- // runner.register('hubspot', new HubSpotAdapter())
24
- // runner.register('skedulo', new SkeduloAdapter())
25
- //
26
- // // Scheduled / Run Now (ExternalId strategy — default):
27
- // await runner.run({ flowId, since }, ctx)
28
- //
29
- // // Scheduled / Run Now (IdMapping strategy):
30
- // await runner.run({ flowId, since, options: { lookupStrategy: 'idMapping' } }, ctx)
31
- //
32
- // // Event-driven:
33
- // await runner.handleEvent({ event, options: { lookupStrategy: 'idMapping' } }, ctx)
10
+ // High-level entry point: resolves adapters and a strategy from the flow, then
11
+ // delegates to SyncService. `run()` drives batch/scheduled syncs; `handleEvent`
12
+ // and `handleFlowEvent` drive event-driven ones.
34
13
  class AdapterRoleError extends Error {
35
14
  constructor(systemName, requiredRole) {
36
15
  super(`adapter "${systemName}" does not support role: "${requiredRole}"`);
@@ -69,10 +48,11 @@ class SyncRunner {
69
48
  const source = this._resolve((_b = (_a = flow.sourceSystem) !== null && _a !== void 0 ? _a : args.sourceSystem) !== null && _b !== void 0 ? _b : null, constants_1.AdapterRole.SOURCE);
70
49
  const target = this._resolve((_d = (_c = flow.targetSystem) !== null && _c !== void 0 ? _c : args.targetSystem) !== null && _d !== void 0 ? _d : null, constants_1.AdapterRole.TARGET);
71
50
  const strategy = createSyncStrategy((_e = args.options) !== null && _e !== void 0 ? _e : {}, ctx);
72
- // Cursor computation: prefer flow.lastRunAt over caller-supplied since.
73
- // When lastRunAt is set, args.since is ignored entirely.
51
+ // Cursor computation: an explicit overrideSince (manual backfill) wins;
52
+ // otherwise prefer flow.lastRunAt over caller-supplied since, and when
53
+ // lastRunAt is set args.since is ignored entirely.
74
54
  const runStartedAt = new Date();
75
- const lastRunAt = (_f = flow.lastRunAt) !== null && _f !== void 0 ? _f : args.since;
55
+ const lastRunAt = args.overrideSince !== undefined ? args.overrideSince : ((_f = flow.lastRunAt) !== null && _f !== void 0 ? _f : args.since);
76
56
  const overlapMs = (_h = (_g = args.options) === null || _g === void 0 ? void 0 : _g.cursorOverlapMs) !== null && _h !== void 0 ? _h : 60000;
77
57
  const effectiveCursor = lastRunAt ? new Date(lastRunAt.getTime() - overlapMs) : null; // null = full sync (no prior run)
78
58
  const result = await new sync_service_1.SyncService(source, target, strategy).run({ flow, since: effectiveCursor }, ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"sync-runner.js","sourceRoot":"","sources":["../../src/services/sync-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-runner.js","sourceRoot":"","sources":["../../src/services/sync-runner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -4,6 +4,8 @@ export type { FilterOperator, FilterOperatorOption, FilterRule, FilterSpec, } fr
4
4
  export { FILTER_OPERATORS } from './interfaces/filter.interface';
5
5
  export type { DataFlow, SyncConfig, TriggerConfig } from './interfaces/data-flow-spec.interface';
6
6
  export { asSyncConfig, SyncStrategy, TriggerType } from './interfaces/data-flow-spec.interface';
7
+ export type { ScheduledJob, IntegrationConfig } from './interfaces/scheduled-job.interface';
8
+ export { asIntegrationConfig, JobIntervalUnit } from './interfaces/scheduled-job.interface';
7
9
  export type { MappedEvent } from './interfaces/mapped-event.interface';
8
10
  export type { SyncResult, BatchResult, PreviewResult } from './interfaces/sync-result.interface';
9
11
  export type { SampleFetcher } from './interfaces/sample-fetcher.interface';
@@ -1 +1 @@
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,UAAU,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAChG,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
+ {"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,UAAU,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAChG,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5F,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"}
package/dist/types.js CHANGED
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TriggerType = exports.SyncStrategy = exports.asSyncConfig = exports.FILTER_OPERATORS = void 0;
3
+ exports.JobIntervalUnit = exports.asIntegrationConfig = exports.TriggerType = exports.SyncStrategy = exports.asSyncConfig = exports.FILTER_OPERATORS = void 0;
4
4
  var filter_interface_1 = require("./interfaces/filter.interface");
5
5
  Object.defineProperty(exports, "FILTER_OPERATORS", { enumerable: true, get: function () { return filter_interface_1.FILTER_OPERATORS; } });
6
6
  var data_flow_spec_interface_1 = require("./interfaces/data-flow-spec.interface");
7
7
  Object.defineProperty(exports, "asSyncConfig", { enumerable: true, get: function () { return data_flow_spec_interface_1.asSyncConfig; } });
8
8
  Object.defineProperty(exports, "SyncStrategy", { enumerable: true, get: function () { return data_flow_spec_interface_1.SyncStrategy; } });
9
9
  Object.defineProperty(exports, "TriggerType", { enumerable: true, get: function () { return data_flow_spec_interface_1.TriggerType; } });
10
+ var scheduled_job_interface_1 = require("./interfaces/scheduled-job.interface");
11
+ Object.defineProperty(exports, "asIntegrationConfig", { enumerable: true, get: function () { return scheduled_job_interface_1.asIntegrationConfig; } });
12
+ Object.defineProperty(exports, "JobIntervalUnit", { enumerable: true, get: function () { return scheduled_job_interface_1.JobIntervalUnit; } });
10
13
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAQA,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA;AAEzB,kFAAgG;AAAvF,wHAAA,YAAY,OAAA;AAAE,wHAAA,YAAY,OAAA;AAAE,uHAAA,WAAW,OAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAQA,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA;AAEzB,kFAAgG;AAAvF,wHAAA,YAAY,OAAA;AAAE,wHAAA,YAAY,OAAA;AAAE,uHAAA,WAAW,OAAA;AAEhD,gFAA4F;AAAnF,8HAAA,mBAAmB,OAAA;AAAE,0HAAA,eAAe,OAAA"}