@skedulo/integration-sdk 0.9.0 → 0.10.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 (127) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/actions/action-registry.d.ts.map +1 -1
  3. package/dist/actions/action-registry.js +1 -0
  4. package/dist/actions/action-registry.js.map +1 -1
  5. package/dist/actions/data-flow.action.d.ts +62 -0
  6. package/dist/actions/data-flow.action.d.ts.map +1 -0
  7. package/dist/actions/data-flow.action.js +217 -0
  8. package/dist/actions/data-flow.action.js.map +1 -0
  9. package/dist/actions/event/on-skedulo.action.d.ts.map +1 -1
  10. package/dist/actions/event/on-skedulo.action.js +12 -1
  11. package/dist/actions/event/on-skedulo.action.js.map +1 -1
  12. package/dist/actions/event/types.d.ts +2 -0
  13. package/dist/actions/event/types.d.ts.map +1 -1
  14. package/dist/actions/event.action.d.ts +32 -0
  15. package/dist/actions/event.action.d.ts.map +1 -0
  16. package/dist/actions/event.action.js +113 -0
  17. package/dist/actions/event.action.js.map +1 -0
  18. package/dist/actions/metadata.action.d.ts +44 -0
  19. package/dist/actions/metadata.action.d.ts.map +1 -0
  20. package/dist/actions/metadata.action.js +96 -0
  21. package/dist/actions/metadata.action.js.map +1 -0
  22. package/dist/actions/scheduled-job.action.d.ts +73 -0
  23. package/dist/actions/scheduled-job.action.d.ts.map +1 -0
  24. package/dist/actions/scheduled-job.action.js +355 -0
  25. package/dist/actions/scheduled-job.action.js.map +1 -0
  26. package/dist/actions/sync/index.d.ts +1 -0
  27. package/dist/actions/sync/index.d.ts.map +1 -1
  28. package/dist/actions/sync/index.js +3 -1
  29. package/dist/actions/sync/index.js.map +1 -1
  30. package/dist/actions/sync/retry-failed.action.d.ts +10 -0
  31. package/dist/actions/sync/retry-failed.action.d.ts.map +1 -0
  32. package/dist/actions/sync/retry-failed.action.js +61 -0
  33. package/dist/actions/sync/retry-failed.action.js.map +1 -0
  34. package/dist/actions/sync/types.d.ts +11 -0
  35. package/dist/actions/sync/types.d.ts.map +1 -1
  36. package/dist/actions/sync.action.d.ts +26 -0
  37. package/dist/actions/sync.action.d.ts.map +1 -0
  38. package/dist/actions/sync.action.js +81 -0
  39. package/dist/actions/sync.action.js.map +1 -0
  40. package/dist/actions/utils/action-names.d.ts +1 -0
  41. package/dist/actions/utils/action-names.d.ts.map +1 -1
  42. package/dist/actions/utils/action-names.js +1 -0
  43. package/dist/actions/utils/action-names.js.map +1 -1
  44. package/dist/actions/utils/types.d.ts +2 -0
  45. package/dist/actions/utils/types.d.ts.map +1 -1
  46. package/dist/adapters/base-adapter-handler.d.ts +2 -0
  47. package/dist/adapters/base-adapter-handler.d.ts.map +1 -1
  48. package/dist/adapters/base-adapter-handler.js +4 -1
  49. package/dist/adapters/base-adapter-handler.js.map +1 -1
  50. package/dist/adapters/capabilities-defaults.d.ts.map +1 -1
  51. package/dist/adapters/capabilities-defaults.js +7 -1
  52. package/dist/adapters/capabilities-defaults.js.map +1 -1
  53. package/dist/adapters/skedulo-mutation-result.d.ts +18 -0
  54. package/dist/adapters/skedulo-mutation-result.d.ts.map +1 -0
  55. package/dist/adapters/skedulo-mutation-result.js +124 -0
  56. package/dist/adapters/skedulo-mutation-result.js.map +1 -0
  57. package/dist/adapters/skedulo.adapter.d.ts +5 -0
  58. package/dist/adapters/skedulo.adapter.d.ts.map +1 -1
  59. package/dist/adapters/skedulo.adapter.js +139 -35
  60. package/dist/adapters/skedulo.adapter.js.map +1 -1
  61. package/dist/clients/failed-record.client.d.ts +37 -0
  62. package/dist/clients/failed-record.client.d.ts.map +1 -0
  63. package/dist/clients/failed-record.client.js +48 -0
  64. package/dist/clients/failed-record.client.js.map +1 -0
  65. package/dist/constants.d.ts +6 -0
  66. package/dist/constants.d.ts.map +1 -1
  67. package/dist/constants.js +8 -1
  68. package/dist/constants.js.map +1 -1
  69. package/dist/context.d.ts +3 -0
  70. package/dist/context.d.ts.map +1 -1
  71. package/dist/context.js +5 -0
  72. package/dist/context.js.map +1 -1
  73. package/dist/interfaces/adapter.interface.d.ts +13 -0
  74. package/dist/interfaces/adapter.interface.d.ts.map +1 -1
  75. package/dist/interfaces/integration-capabilities.interface.d.ts +22 -0
  76. package/dist/interfaces/integration-capabilities.interface.d.ts.map +1 -1
  77. package/dist/interfaces/sync-pipeline.interface.d.ts +11 -0
  78. package/dist/interfaces/sync-pipeline.interface.d.ts.map +1 -1
  79. package/dist/services/artifact-builder.d.ts +95 -0
  80. package/dist/services/artifact-builder.d.ts.map +1 -0
  81. package/dist/services/artifact-builder.js +142 -0
  82. package/dist/services/artifact-builder.js.map +1 -0
  83. package/dist/services/external-id-sync.strategy.d.ts.map +1 -1
  84. package/dist/services/external-id-sync.strategy.js +23 -24
  85. package/dist/services/external-id-sync.strategy.js.map +1 -1
  86. package/dist/services/id-mapping-sync.strategy.d.ts.map +1 -1
  87. package/dist/services/id-mapping-sync.strategy.js +35 -21
  88. package/dist/services/id-mapping-sync.strategy.js.map +1 -1
  89. package/dist/services/id-mapping.service.d.ts +2 -0
  90. package/dist/services/id-mapping.service.d.ts.map +1 -1
  91. package/dist/services/id-mapping.service.js +57 -2
  92. package/dist/services/id-mapping.service.js.map +1 -1
  93. package/dist/services/run-log-builder.d.ts +4 -5
  94. package/dist/services/run-log-builder.d.ts.map +1 -1
  95. package/dist/services/run-log-builder.js +4 -5
  96. package/dist/services/run-log-builder.js.map +1 -1
  97. package/dist/services/sync-pipeline-errors.d.ts +24 -0
  98. package/dist/services/sync-pipeline-errors.d.ts.map +1 -0
  99. package/dist/services/sync-pipeline-errors.js +52 -0
  100. package/dist/services/sync-pipeline-errors.js.map +1 -0
  101. package/dist/services/sync-runner.d.ts +15 -0
  102. package/dist/services/sync-runner.d.ts.map +1 -1
  103. package/dist/services/sync-runner.js +250 -10
  104. package/dist/services/sync-runner.js.map +1 -1
  105. package/dist/services/sync.service.d.ts +4 -1
  106. package/dist/services/sync.service.d.ts.map +1 -1
  107. package/dist/services/sync.service.js +3 -2
  108. package/dist/services/sync.service.js.map +1 -1
  109. package/package.json +2 -2
  110. package/yarn.lock +4 -4
  111. package/.claude/worktrees/agent-a16acadaf5412dffd/jest.config.js +0 -12
  112. package/.claude/worktrees/agent-a33c3e4636d488e49/jest.config.js +0 -12
  113. package/.claude/worktrees/agent-a5b1d2ffa4ceef4a6/jest.config.js +0 -12
  114. package/.claude/worktrees/agent-aa1db4c22eabbde8e/jest.config.js +0 -12
  115. package/.claude/worktrees/agent-ac197ae8c69d7061c/jest.config.js +0 -12
  116. package/dist/handlers/metadata.handler.d.ts +0 -17
  117. package/dist/handlers/metadata.handler.d.ts.map +0 -1
  118. package/dist/handlers/metadata.handler.js +0 -50
  119. package/dist/handlers/metadata.handler.js.map +0 -1
  120. package/dist/utils/normalizeDataFlow.d.ts +0 -3
  121. package/dist/utils/normalizeDataFlow.d.ts.map +0 -1
  122. package/dist/utils/normalizeDataFlow.js +0 -37
  123. package/dist/utils/normalizeDataFlow.js.map +0 -1
  124. package/dist/utils.d.ts +0 -2
  125. package/dist/utils.d.ts.map +0 -1
  126. package/dist/utils.js +0 -10
  127. package/dist/utils.js.map +0 -1
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MetadataHandlerError = exports.MetadataHandler = void 0;
4
- const skedulo_adapter_1 = require("../adapters/skedulo.adapter");
5
- class MetadataHandler {
6
- constructor(integrationAdapters) {
7
- this.adapters = Object.assign({ skedulo: new skedulo_adapter_1.SkeduloAdapter() }, integrationAdapters);
8
- }
9
- resolve(system) {
10
- if (!system) {
11
- throw new MetadataHandlerError(400, 'system is required');
12
- }
13
- const adapter = this.adapters[system];
14
- if (!adapter) {
15
- throw new MetadataHandlerError(400, `Unsupported system: "${system}". Must be one of: ${Object.keys(this.adapters).join(', ')}`);
16
- }
17
- return adapter;
18
- }
19
- async getObjects(system, ctx) {
20
- return this.resolve(system).getObjects(ctx);
21
- }
22
- async getFields(system, objectName, ctx) {
23
- return this.resolve(system).getFields(ctx, objectName);
24
- }
25
- async fetchSampleRecords(system, objectName, properties, limit, ctx) {
26
- return this.resolve(system).fetchSampleRecords(ctx, objectName, properties, limit);
27
- }
28
- async getTemplates(system) {
29
- const adapter = this.resolve(system);
30
- if (!adapter.getTemplates)
31
- return [];
32
- return adapter.getTemplates();
33
- }
34
- getSampleAPIs(system) {
35
- const adapter = this.resolve(system);
36
- if (!adapter.getSampleAPIs)
37
- return [];
38
- return adapter.getSampleAPIs();
39
- }
40
- }
41
- exports.MetadataHandler = MetadataHandler;
42
- class MetadataHandlerError extends Error {
43
- constructor(status, message) {
44
- super(message);
45
- this.status = status;
46
- this.name = 'MetadataHandlerError';
47
- }
48
- }
49
- exports.MetadataHandlerError = MetadataHandlerError;
50
- //# sourceMappingURL=metadata.handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata.handler.js","sourceRoot":"","sources":["../../src/handlers/metadata.handler.ts"],"names":[],"mappings":";;;AASA,iEAA6D;AAE7D,MAAa,eAAe;IAG1B,YAAY,mBAA4C;QACtD,IAAI,CAAC,QAAQ,mBACX,OAAO,EAAE,IAAI,gCAAc,EAAE,IAC1B,mBAAmB,CACvB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,MAA0B;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oBAAoB,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,oBAAoB,CAC5B,GAAG,EACH,wBAAwB,MAAM,sBAAsB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5F,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,GAAuB;QACtD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,SAAS,CACb,MAAc,EACd,UAAkB,EAClB,GAAuB;QAEvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,MAAc,EACd,UAAkB,EAClB,UAAoB,EACpB,KAAa,EACb,GAAuB;QAEvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IACrF,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,OAAO,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC,YAAY,EAAE,CAAC;IAChC,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;QACtC,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC;CACF;AAzDD,0CAyDC;AAED,MAAa,oBAAqB,SAAQ,KAAK;IAC7C,YACkB,MAAc,EAC9B,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,WAAM,GAAN,MAAM,CAAQ;QAI9B,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AARD,oDAQC"}
@@ -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,CAW1D"}
@@ -1,37 +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), lastRunAt: (() => {
29
- if (!flow.lastRunAt)
30
- return null;
31
- if (flow.lastRunAt instanceof Date)
32
- return flow.lastRunAt;
33
- const d = new Date(flow.lastRunAt);
34
- return isNaN(d.getTime()) ? null : d;
35
- })() });
36
- }
37
- //# sourceMappingURL=normalizeDataFlow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalizeDataFlow.js","sourceRoot":"","sources":["../../src/utils/normalizeDataFlow.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAqBA,8CAWC;AA7BD,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,uCACK,IAAI,KACP,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EACpC,SAAS,EAAE,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO,IAAI,CAAC;YACjC,IAAI,IAAI,CAAC,SAAS,YAAY,IAAI;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC;YAC1D,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,SAA8B,CAAC,CAAC;YACxD,OAAO,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,EAAE,IACJ;AACJ,CAAC"}
package/dist/utils.d.ts DELETED
@@ -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"}
package/dist/utils.js DELETED
@@ -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
package/dist/utils.js.map DELETED
@@ -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"}