@skedulo/integration-sdk 0.1.2 → 0.2.1

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 (77) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +59 -3
  3. package/dist/adapters/base.adapter.d.ts +61 -0
  4. package/dist/adapters/base.adapter.d.ts.map +1 -0
  5. package/dist/adapters/base.adapter.js +69 -0
  6. package/dist/adapters/base.adapter.js.map +1 -0
  7. package/dist/adapters/skedulo.adapter.d.ts +8 -0
  8. package/dist/adapters/skedulo.adapter.d.ts.map +1 -1
  9. package/dist/adapters/skedulo.adapter.js +79 -4
  10. package/dist/adapters/skedulo.adapter.js.map +1 -1
  11. package/dist/browser.d.ts +3 -2
  12. package/dist/browser.d.ts.map +1 -1
  13. package/dist/browser.js +3 -1
  14. package/dist/browser.js.map +1 -1
  15. package/dist/clients/dataflow.client.d.ts +1 -1
  16. package/dist/clients/dataflow.client.d.ts.map +1 -1
  17. package/dist/clients/dataflow.client.js +6 -4
  18. package/dist/clients/dataflow.client.js.map +1 -1
  19. package/dist/clients/proxy.client.d.ts +1 -0
  20. package/dist/clients/proxy.client.d.ts.map +1 -1
  21. package/dist/clients/proxy.client.js +5 -1
  22. package/dist/clients/proxy.client.js.map +1 -1
  23. package/dist/constants.d.ts +15 -0
  24. package/dist/constants.d.ts.map +1 -1
  25. package/dist/constants.js +14 -1
  26. package/dist/constants.js.map +1 -1
  27. package/dist/context.d.ts +7 -0
  28. package/dist/context.d.ts.map +1 -1
  29. package/dist/context.js.map +1 -1
  30. package/dist/index.d.ts +10 -4
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +13 -5
  33. package/dist/index.js.map +1 -1
  34. package/dist/interfaces/adapter.interface.d.ts +54 -19
  35. package/dist/interfaces/adapter.interface.d.ts.map +1 -1
  36. package/dist/interfaces/field-mapping.interface.d.ts +10 -5
  37. package/dist/interfaces/field-mapping.interface.d.ts.map +1 -1
  38. package/dist/interfaces/integration-capabilities.interface.d.ts +6 -0
  39. package/dist/interfaces/integration-capabilities.interface.d.ts.map +1 -1
  40. package/dist/interfaces/lookup-rule.interface.d.ts +8 -7
  41. package/dist/interfaces/lookup-rule.interface.d.ts.map +1 -1
  42. package/dist/interfaces/sync-flow-strategy.interface.d.ts +15 -0
  43. package/dist/interfaces/sync-flow-strategy.interface.d.ts.map +1 -0
  44. package/dist/interfaces/sync-flow-strategy.interface.js +3 -0
  45. package/dist/interfaces/sync-flow-strategy.interface.js.map +1 -0
  46. package/dist/interfaces/sync-pipeline.interface.d.ts +108 -0
  47. package/dist/interfaces/sync-pipeline.interface.d.ts.map +1 -0
  48. package/dist/interfaces/sync-pipeline.interface.js +12 -0
  49. package/dist/interfaces/sync-pipeline.interface.js.map +1 -0
  50. package/dist/services/external-id-sync.strategy.d.ts +13 -0
  51. package/dist/services/external-id-sync.strategy.d.ts.map +1 -0
  52. package/dist/services/external-id-sync.strategy.js +139 -0
  53. package/dist/services/external-id-sync.strategy.js.map +1 -0
  54. package/dist/services/field-mapping.service.d.ts +30 -0
  55. package/dist/services/field-mapping.service.d.ts.map +1 -0
  56. package/dist/services/field-mapping.service.js +131 -0
  57. package/dist/services/field-mapping.service.js.map +1 -0
  58. package/dist/services/id-mapping-sync.strategy.d.ts +19 -0
  59. package/dist/services/id-mapping-sync.strategy.d.ts.map +1 -0
  60. package/dist/services/id-mapping-sync.strategy.js +389 -0
  61. package/dist/services/id-mapping-sync.strategy.js.map +1 -0
  62. package/dist/services/id-mapping.service.d.ts +38 -0
  63. package/dist/services/id-mapping.service.d.ts.map +1 -0
  64. package/dist/services/id-mapping.service.js +207 -0
  65. package/dist/services/id-mapping.service.js.map +1 -0
  66. package/dist/services/preview.service.js +2 -2
  67. package/dist/services/preview.service.js.map +1 -1
  68. package/dist/services/sync-runner.d.ts +3 -0
  69. package/dist/services/sync-runner.d.ts.map +1 -1
  70. package/dist/services/sync-runner.js +22 -7
  71. package/dist/services/sync-runner.js.map +1 -1
  72. package/dist/services/sync.service.d.ts +3 -2
  73. package/dist/services/sync.service.d.ts.map +1 -1
  74. package/dist/services/sync.service.js +55 -109
  75. package/dist/services/sync.service.js.map +1 -1
  76. package/package.json +2 -1
  77. package/yarn.lock +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.2.1] - 2026-05-13
4
+
5
+ ### Changed
6
+
7
+ - Make `LookupRule.keyField` optional and add `filter` field to `DataFlowTemplate`
8
+
9
+ ## [0.2.0] - 2026-05-12
10
+
11
+ ### Added
12
+
13
+ - **`IdMappingSyncStrategy`** — new sync strategy that resolves cross-system identity via the `IntegrationIdMapping` Skedulo custom object instead of ExternalId fields.
14
+
3
15
  ## [0.1.2] - 2026-05-08
4
16
  - Harden `compileFilter` against backtick and expr injection; guard `LOCAL_INTEGRATION_SERVICE` to localhost only; pre-validate filter spec in `_processBatch` to fail fast
5
17
 
package/README.md CHANGED
@@ -16,18 +16,62 @@ yarn add @skedulo/integration-sdk
16
16
 
17
17
  ```typescript
18
18
  import type { DataFlow, Adapter, SyncResult } from '@skedulo/integration-sdk';
19
- import { SyncService, SyncRunner, PreviewService, MetadataHandler } from '@skedulo/integration-sdk';
19
+ import {
20
+ BaseAdapter,
21
+ SyncService,
22
+ SyncRunner,
23
+ PreviewService,
24
+ MetadataHandler,
25
+ IdMappingService,
26
+ SyncMode,
27
+ AdapterRole,
28
+ SyncStage,
29
+ } from '@skedulo/integration-sdk';
20
30
  ```
21
31
 
22
32
  **Browser/UI (types and constants only, no Node.js deps):**
23
33
 
24
34
  ```typescript
25
- import type { FilterSpec, FilterOperator } from '@skedulo/integration-sdk/browser';
26
- import { FILTER_OPERATORS } from '@skedulo/integration-sdk/browser';
35
+ import type { FilterSpec, FilterOperator, SyncPipelineState } from '@skedulo/integration-sdk/browser';
36
+ import { FILTER_OPERATORS, SyncStage } from '@skedulo/integration-sdk/browser';
27
37
  ```
28
38
 
29
39
  The `/browser` entry point re-exports all types and pure constants without pulling in PSS, FME, or any Node.js built-ins. Use it in browser bundles to avoid bundling server-side dependencies.
30
40
 
41
+ ## Writing an Adapter
42
+
43
+ Extend `BaseAdapter` rather than implementing `Adapter` directly:
44
+
45
+ ```typescript
46
+ import { BaseAdapter } from '@skedulo/integration-sdk';
47
+ import type { IntegrationContext, DataFlow, UpsertOutcome } from '@skedulo/integration-sdk';
48
+
49
+ export class MyAdapter extends BaseAdapter {
50
+ // Required
51
+ async upsert(ctx: IntegrationContext, flow: DataFlow, records: Record<string, unknown>[]): Promise<UpsertOutcome[]> { /* ... */ }
52
+ async delete(ctx: IntegrationContext, flow: DataFlow, ids: string[]): Promise<void> { /* ... */ }
53
+ async getObjects(ctx: IntegrationContext) { /* ... */ }
54
+ async getFields(ctx: IntegrationContext, objectName: string) { /* ... */ }
55
+ async fetchSampleRecords(ctx: IntegrationContext, objectName: string, properties: string[], limit: number) { /* ... */ }
56
+
57
+ // Optional hooks — override only what you need
58
+ async beforeMap(ctx: IntegrationContext): Promise<void> {
59
+ if (this.isSource()) {
60
+ // flatten raw records, add synthetic fields to ctx.pipeline.data[i].raw
61
+ }
62
+ }
63
+
64
+ async afterUpsert(ctx: IntegrationContext): Promise<void> {
65
+ if (this.isTarget()) {
66
+ // write-back: store target IDs back in the source system
67
+ const outcomes = ctx.pipeline?.outcomes ?? [];
68
+ }
69
+ }
70
+ }
71
+ ```
72
+
73
+ See [docs/ADAPTERS.md](./docs/ADAPTERS.md) for the full method reference and lifecycle hook guide.
74
+
31
75
  ## Development
32
76
 
33
77
  ```bash
@@ -36,3 +80,15 @@ yarn test # Run all tests
36
80
  yarn test:coverage # Run tests with coverage
37
81
  yarn format # Format all src/ and test/ files with Prettier
38
82
  ```
83
+
84
+ ## Documentation
85
+
86
+ | Doc | What it covers |
87
+ |---|---|
88
+ | [docs/ADAPTERS.md](./docs/ADAPTERS.md) | Adapter roles, lifecycle hooks, BaseAdapter, implementation guide |
89
+ | [docs/SYNC-PIPELINE.md](./docs/SYNC-PIPELINE.md) | Batch and event-driven sync, pipeline state, error capture |
90
+ | [docs/ARCHITECTURE.md](./docs/ARCHITECTURE.md) | Module map, design decisions, key concepts |
91
+ | [docs/FIELD-MAPPINGS.md](./docs/FIELD-MAPPINGS.md) | Transform types, MappingConfig format, validation |
92
+ | [docs/FILTERS.md](./docs/FILTERS.md) | FilterSpec, operators, two-layer filter architecture |
93
+ | [docs/TEMPLATES.md](./docs/TEMPLATES.md) | Pre-built DataFlowTemplate and SampleAPI definitions |
94
+ | [docs/PREVIEWS.md](./docs/PREVIEWS.md) | PreviewService — dry-run mapping against sample records |
@@ -0,0 +1,61 @@
1
+ import type { IntegrationContext } from '../context';
2
+ import type { DataFlow } from '../interfaces/data-flow-spec.interface';
3
+ import type { Adapter, FieldInfo, ObjectInfo, SampleRecord, UpsertOutcome } from '../interfaces/adapter.interface';
4
+ import { AdapterRole } from '../constants';
5
+ /**
6
+ * Base class for integration adapters. Extend this to get:
7
+ * - Default no-op implementations for all optional lifecycle hooks
8
+ * - Default getRecordIdField() returning 'id'
9
+ * - Abstract declarations for required methods (compile-time enforcement)
10
+ *
11
+ * Override only the methods your adapter needs.
12
+ *
13
+ * Example:
14
+ * export class HubSpotAdapter extends BaseAdapter {
15
+ * async upsert(ctx, flow, records) { ... }
16
+ * async delete(ctx, flow, ids) { ... }
17
+ * async getObjects(ctx) { ... }
18
+ * async getFields(ctx, objectName) { ... }
19
+ * async fetchSampleRecords(ctx, objectName, properties, limit) { ... }
20
+ *
21
+ * // Override only the hooks you need:
22
+ * async beforeMap(ctx) { ... } // flatten properties.*, prefetch related data
23
+ * async afterUpsert(ctx) { ... } // write-back HubSpot IDs
24
+ * }
25
+ */
26
+ export declare abstract class BaseAdapter implements Adapter {
27
+ private _role;
28
+ /** @internal Called by SyncService to assign this adapter's role in the pipeline. */
29
+ _initRole(role: AdapterRole): void;
30
+ abstract upsert(ctx: IntegrationContext, flow: DataFlow, records: Record<string, unknown>[]): Promise<UpsertOutcome[]>;
31
+ abstract delete(ctx: IntegrationContext, flow: DataFlow, ids: string[]): Promise<void>;
32
+ abstract getObjects(ctx: IntegrationContext): Promise<ObjectInfo[]>;
33
+ abstract getFields(ctx: IntegrationContext, objectName: string): Promise<FieldInfo[]>;
34
+ abstract fetchSampleRecords(ctx: IntegrationContext, objectName: string, properties: string[], limit: number): Promise<SampleRecord[]>;
35
+ /** Returns the field name that identifies records in this adapter's native system. */
36
+ getRecordIdField(): string;
37
+ /** True when this adapter is the source (fetching) adapter in the current SyncService. */
38
+ protected isSource(): boolean;
39
+ /** True when this adapter is the target (writing) adapter in the current SyncService. */
40
+ protected isTarget(): boolean;
41
+ /** Before FME mapping. Add synthetic fields to ctx.pipeline.data[].raw. */
42
+ beforeMap(_ctx: IntegrationContext): Promise<void>;
43
+ /** After FME mapping. ctx.pipeline.data[].mapped is populated. */
44
+ afterMap(_ctx: IntegrationContext): Promise<void>;
45
+ /** Before identity/lookup resolution. */
46
+ beforeResolve(_ctx: IntegrationContext): Promise<void>;
47
+ /** After resolution. mapped.__targetUID and lookup UIDs are set. */
48
+ afterResolve(_ctx: IntegrationContext): Promise<void>;
49
+ /** Before write to target. Final chance to shape the payload. */
50
+ beforeUpsert(_ctx: IntegrationContext): Promise<void>;
51
+ /**
52
+ * After upsert. ctx.pipeline.outcomes is populated.
53
+ * Common use: write-back — store target IDs back in the source system.
54
+ */
55
+ afterUpsert(_ctx: IntegrationContext): Promise<void>;
56
+ /** Before delete. ctx.pipeline.deleteIds populated. */
57
+ beforeDelete(_ctx: IntegrationContext): Promise<void>;
58
+ /** After successful delete. */
59
+ afterDelete(_ctx: IntegrationContext): Promise<void>;
60
+ }
61
+ //# sourceMappingURL=base.adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/base.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,UAAU,EACV,YAAY,EACZ,aAAa,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,WAAY,YAAW,OAAO;IAClD,OAAO,CAAC,KAAK,CAA0B;IAEvC,qFAAqF;IACrF,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAMlC,QAAQ,CAAC,MAAM,CACb,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,aAAa,EAAE,CAAC;IAE3B,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtF,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAEnE,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAErF,QAAQ,CAAC,kBAAkB,CACzB,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAAE,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,EAAE,CAAC;IAI1B,sFAAsF;IACtF,gBAAgB,IAAI,MAAM;IAM1B,0FAA0F;IAC1F,SAAS,CAAC,QAAQ,IAAI,OAAO;IAI7B,yFAAyF;IACzF,SAAS,CAAC,QAAQ,IAAI,OAAO;IAQ7B,2EAA2E;IACrE,SAAS,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAExD,kEAAkE;IAC5D,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAEvD,yCAAyC;IACnC,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE5D,oEAAoE;IAC9D,YAAY,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE3D,iEAAiE;IAC3D,YAAY,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE3D;;;OAGG;IACG,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1D,uDAAuD;IACjD,YAAY,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE3D,+BAA+B;IACzB,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;CAC3D"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseAdapter = void 0;
4
+ const constants_1 = require("../constants");
5
+ /**
6
+ * Base class for integration adapters. Extend this to get:
7
+ * - Default no-op implementations for all optional lifecycle hooks
8
+ * - Default getRecordIdField() returning 'id'
9
+ * - Abstract declarations for required methods (compile-time enforcement)
10
+ *
11
+ * Override only the methods your adapter needs.
12
+ *
13
+ * Example:
14
+ * export class HubSpotAdapter extends BaseAdapter {
15
+ * async upsert(ctx, flow, records) { ... }
16
+ * async delete(ctx, flow, ids) { ... }
17
+ * async getObjects(ctx) { ... }
18
+ * async getFields(ctx, objectName) { ... }
19
+ * async fetchSampleRecords(ctx, objectName, properties, limit) { ... }
20
+ *
21
+ * // Override only the hooks you need:
22
+ * async beforeMap(ctx) { ... } // flatten properties.*, prefetch related data
23
+ * async afterUpsert(ctx) { ... } // write-back HubSpot IDs
24
+ * }
25
+ */
26
+ class BaseAdapter {
27
+ /** @internal Called by SyncService to assign this adapter's role in the pipeline. */
28
+ _initRole(role) {
29
+ this._role = role;
30
+ }
31
+ // ── Identity ──────────────────────────────────────────────────────────────────
32
+ /** Returns the field name that identifies records in this adapter's native system. */
33
+ getRecordIdField() {
34
+ return 'id';
35
+ }
36
+ // ── Role helpers — use inside lifecycle hooks ─────────────────────────────────
37
+ /** True when this adapter is the source (fetching) adapter in the current SyncService. */
38
+ isSource() {
39
+ return this._role === constants_1.AdapterRole.SOURCE;
40
+ }
41
+ /** True when this adapter is the target (writing) adapter in the current SyncService. */
42
+ isTarget() {
43
+ return this._role === constants_1.AdapterRole.TARGET;
44
+ }
45
+ // ── Pipeline lifecycle hooks — all no-ops by default ─────────────────────────
46
+ // Override to inject behaviour at specific pipeline steps.
47
+ // ctx.pipeline contains the live pipeline state at each step.
48
+ /** Before FME mapping. Add synthetic fields to ctx.pipeline.data[].raw. */
49
+ async beforeMap(_ctx) { }
50
+ /** After FME mapping. ctx.pipeline.data[].mapped is populated. */
51
+ async afterMap(_ctx) { }
52
+ /** Before identity/lookup resolution. */
53
+ async beforeResolve(_ctx) { }
54
+ /** After resolution. mapped.__targetUID and lookup UIDs are set. */
55
+ async afterResolve(_ctx) { }
56
+ /** Before write to target. Final chance to shape the payload. */
57
+ async beforeUpsert(_ctx) { }
58
+ /**
59
+ * After upsert. ctx.pipeline.outcomes is populated.
60
+ * Common use: write-back — store target IDs back in the source system.
61
+ */
62
+ async afterUpsert(_ctx) { }
63
+ /** Before delete. ctx.pipeline.deleteIds populated. */
64
+ async beforeDelete(_ctx) { }
65
+ /** After successful delete. */
66
+ async afterDelete(_ctx) { }
67
+ }
68
+ exports.BaseAdapter = BaseAdapter;
69
+ //# sourceMappingURL=base.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.adapter.js","sourceRoot":"","sources":["../../src/adapters/base.adapter.ts"],"names":[],"mappings":";;;AASA,4CAA2C;AAE3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAsB,WAAW;IAG/B,qFAAqF;IACrF,SAAS,CAAC,IAAiB;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAuBD,iFAAiF;IAEjF,sFAAsF;IACtF,gBAAgB;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iFAAiF;IAEjF,0FAA0F;IAChF,QAAQ;QAChB,OAAO,IAAI,CAAC,KAAK,KAAK,uBAAW,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,yFAAyF;IAC/E,QAAQ;QAChB,OAAO,IAAI,CAAC,KAAK,KAAK,uBAAW,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,gFAAgF;IAChF,2DAA2D;IAC3D,8DAA8D;IAE9D,2EAA2E;IAC3E,KAAK,CAAC,SAAS,CAAC,IAAwB,IAAkB,CAAC;IAE3D,kEAAkE;IAClE,KAAK,CAAC,QAAQ,CAAC,IAAwB,IAAkB,CAAC;IAE1D,yCAAyC;IACzC,KAAK,CAAC,aAAa,CAAC,IAAwB,IAAkB,CAAC;IAE/D,oEAAoE;IACpE,KAAK,CAAC,YAAY,CAAC,IAAwB,IAAkB,CAAC;IAE9D,iEAAiE;IACjE,KAAK,CAAC,YAAY,CAAC,IAAwB,IAAkB,CAAC;IAE9D;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,IAAwB,IAAkB,CAAC;IAE7D,uDAAuD;IACvD,KAAK,CAAC,YAAY,CAAC,IAAwB,IAAkB,CAAC;IAE9D,+BAA+B;IAC/B,KAAK,CAAC,WAAW,CAAC,IAAwB,IAAkB,CAAC;CAC9D;AA9ED,kCA8EC"}
@@ -6,7 +6,15 @@ export declare class SkeduloAdapter implements Adapter<Record<string, unknown>>
6
6
  fetch(ctx: IntegrationContext, flow: DataFlow, since: Date | null, _filter: FilterSpec | null): AsyncIterable<Record<string, unknown>[]>;
7
7
  resolveLookups(ctx: IntegrationContext, flow: DataFlow, pairs: EnrichmentPair[]): Promise<void>;
8
8
  upsert(ctx: IntegrationContext, flow: DataFlow, records: Record<string, unknown>[]): Promise<UpsertOutcome[]>;
9
+ private _mutate;
9
10
  delete(ctx: IntegrationContext, flow: DataFlow, ids: string[]): Promise<void>;
11
+ /** Delete by Skedulo UID directly — used by IdMappingSyncStrategy after mapping table lookup. */
12
+ deleteById(ctx: IntegrationContext, flow: DataFlow, ids: string[]): Promise<void>;
13
+ getRecordIdField(): string;
14
+ buildMappingEntries(sourceIds: string[], outcomes: UpsertOutcome[]): Array<{
15
+ sourceId: string;
16
+ targetId: string;
17
+ }>;
10
18
  getObjects(ctx: IntegrationContext): Promise<ObjectInfo[]>;
11
19
  getFields(ctx: IntegrationContext, objectName: string): Promise<FieldInfo[]>;
12
20
  fetchSampleRecords(ctx: IntegrationContext, objectName: string, properties: string[], limit: number): Promise<SampleRecord[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"skedulo.adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/skedulo.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,SAAS,EACT,UAAU,EACV,YAAY,EACZ,aAAa,EACd,MAAM,iCAAiC,CAAC;AASzC,qBAAa,cAAe,YAAW,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG9D,KAAK,CACV,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,IAAI,GAAG,IAAI,EAClB,OAAO,EAAE,UAAU,GAAG,IAAI,GACzB,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAqCrC,cAAc,CAClB,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,cAAc,EAAE,GACtB,OAAO,CAAC,IAAI,CAAC;IAwCV,MAAM,CACV,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,aAAa,EAAE,CAAC;IAgBrB,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB7E,UAAU,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAO1D,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAe5E,kBAAkB,CACtB,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAAE,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,EAAE,CAAC;YAaZ,YAAY;CA+B3B"}
1
+ {"version":3,"file":"skedulo.adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/skedulo.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,SAAS,EACT,UAAU,EACV,YAAY,EACZ,aAAa,EACd,MAAM,iCAAiC,CAAC;AASzC,qBAAa,cAAe,YAAW,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG9D,KAAK,CACV,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,IAAI,GAAG,IAAI,EAClB,OAAO,EAAE,UAAU,GAAG,IAAI,GACzB,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAqCrC,cAAc,CAClB,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,cAAc,EAAE,GACtB,OAAO,CAAC,IAAI,CAAC;IAyCV,MAAM,CACV,GAAG,EAAE,kBAAkB,EACvB,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,aAAa,EAAE,CAAC;YAkDb,OAAO;IA8Bf,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBnF,iGAAiG;IAC3F,UAAU,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWvF,gBAAgB,IAAI,MAAM;IAI1B,mBAAmB,CACjB,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,aAAa,EAAE,GACxB,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAQ1C,UAAU,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAO1D,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAe5E,kBAAkB,CACtB,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAAE,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,EAAE,CAAC;YAaZ,YAAY;CA+B3B"}
@@ -12,6 +12,17 @@ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _ar
12
12
  function reject(value) { resume("throw", value); }
13
13
  function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
14
14
  };
15
+ var __rest = (this && this.__rest) || function (s, e) {
16
+ var t = {};
17
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
18
+ t[p] = s[p];
19
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
20
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
21
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
22
+ t[p[i]] = s[p[i]];
23
+ }
24
+ return t;
25
+ };
15
26
  Object.defineProperty(exports, "__esModule", { value: true });
16
27
  exports.SkeduloAdapter = void 0;
17
28
  const constants_1 = require("../constants");
@@ -74,6 +85,8 @@ class SkeduloAdapter {
74
85
  ];
75
86
  if (values.length === 0)
76
87
  continue;
88
+ if (!rule.keyField)
89
+ continue;
77
90
  const uidMap = await this._batchLookup(ctx, rule.object, rule.keyField, values);
78
91
  for (const pair of pairs) {
79
92
  const rawValue = pair.mapped[mapping.target] != null ? String(pair.mapped[mapping.target]) : undefined;
@@ -92,19 +105,62 @@ class SkeduloAdapter {
92
105
  }
93
106
  }
94
107
  async upsert(ctx, flow, records) {
95
- const result = await ctx.graphqlService.upsert({
108
+ // IdMapping convention: the strategy sets __targetUID on every record (null = create, string = update).
109
+ // ExternalId strategy never sets __targetUID, so key presence distinguishes the two paths.
110
+ const isIdMapping = records.some((r) => '__targetUID' in r);
111
+ if (!isIdMapping) {
112
+ return this._mutate(ctx, flow, records, 'upsert', flow.matchKeyField);
113
+ }
114
+ // Split into creates (null __targetUID) and updates (non-null __targetUID).
115
+ // PSS upsert always defaults keyField to 'UID' — records without UID fail validation.
116
+ // Creates must use graphqlService.insert() instead.
117
+ const createIndices = [];
118
+ const updateIndices = [];
119
+ for (let i = 0; i < records.length; i++) {
120
+ const r = records[i];
121
+ (r.__targetUID != null ? updateIndices : createIndices).push(i);
122
+ }
123
+ const outcomes = new Array(records.length);
124
+ if (updateIndices.length > 0) {
125
+ const updateRecords = updateIndices.map((i) => {
126
+ const _a = records[i], { __targetUID } = _a, rest = __rest(_a, ["__targetUID"]);
127
+ return Object.assign(Object.assign({}, rest), { UID: String(__targetUID) });
128
+ });
129
+ const updateOutcomes = await this._mutate(ctx, flow, updateRecords, 'upsert', 'UID');
130
+ updateIndices.forEach((origIdx, batchIdx) => {
131
+ outcomes[origIdx] = updateOutcomes[batchIdx];
132
+ });
133
+ }
134
+ if (createIndices.length > 0) {
135
+ const createRecords = createIndices.map((i) => {
136
+ const _a = records[i], { __targetUID: _discard } = _a, rest = __rest(_a, ["__targetUID"]);
137
+ return rest;
138
+ });
139
+ const createOutcomes = await this._mutate(ctx, flow, createRecords, 'insert');
140
+ createIndices.forEach((origIdx, batchIdx) => {
141
+ outcomes[origIdx] = createOutcomes[batchIdx];
142
+ });
143
+ }
144
+ return outcomes;
145
+ }
146
+ async _mutate(ctx, flow, records, operation, keyField) {
147
+ const params = {
96
148
  objectName: flow.targetObject,
97
149
  operationName: constants_1.OperationName.PULL(flow.id),
98
150
  records,
99
- keyField: flow.matchKeyField,
151
+ keyField,
100
152
  bulkOperation: true,
101
153
  suppressChangeEvents: true,
102
- });
154
+ };
155
+ const result = operation === 'insert'
156
+ ? await ctx.graphqlService.insert(params)
157
+ : await ctx.graphqlService.upsert(params);
103
158
  if (result.errors && result.errors.length > 0) {
104
159
  const message = JSON.stringify(result.errors);
105
160
  return records.map(() => ({ status: 'permanent', error: message }));
106
161
  }
107
- return records.map(() => ({ status: 'ok' }));
162
+ const uids = ctx.graphqlService.extractUIDs(result);
163
+ return records.map((_, i) => { var _a; return ({ status: 'ok', result: (_a = uids[i]) !== null && _a !== void 0 ? _a : null }); });
108
164
  }
109
165
  async delete(ctx, flow, ids) {
110
166
  for (const id of ids) {
@@ -126,6 +182,25 @@ class SkeduloAdapter {
126
182
  });
127
183
  }
128
184
  }
185
+ /** Delete by Skedulo UID directly — used by IdMappingSyncStrategy after mapping table lookup. */
186
+ async deleteById(ctx, flow, ids) {
187
+ if (ids.length === 0)
188
+ return;
189
+ await ctx.graphqlService.delete({
190
+ objectName: flow.targetObject,
191
+ operationName: constants_1.OperationName.PARAGON_DELETE,
192
+ records: ids.map((uid) => ({ UID: uid })),
193
+ });
194
+ }
195
+ // ── IdMapping role ───────────────────────────────────────────────────────────
196
+ getRecordIdField() {
197
+ return 'UID';
198
+ }
199
+ buildMappingEntries(sourceIds, outcomes) {
200
+ return sourceIds
201
+ .map((sourceId, i) => { var _a, _b; return ({ sourceId, targetId: String((_b = (_a = outcomes[i]) === null || _a === void 0 ? void 0 : _a.result) !== null && _b !== void 0 ? _b : '') }); })
202
+ .filter(({ targetId }) => targetId.length > 0);
203
+ }
129
204
  // ── Metadata role ────────────────────────────────────────────────────────────
130
205
  async getObjects(ctx) {
131
206
  const metadata = await ctx.metadataClient.fetchAllMetadata();
@@ -1 +1 @@
1
- {"version":3,"file":"skedulo.adapter.js","sourceRoot":"","sources":["../../src/adapters/skedulo.adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skedulo.adapter.js","sourceRoot":"","sources":["../../src/adapters/skedulo.adapter.ts"],"names":[],"mappings":"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"}
package/dist/browser.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export type { LookupRule } from './interfaces/lookup-rule.interface';
2
- export type { FieldMapping, MappingConfigDto } from './interfaces/field-mapping.interface';
2
+ export type { FieldMapping, MappingConfigDto, MappingConfigMapping, TranslationTable, ValidationAction, } from './interfaces/field-mapping.interface';
3
3
  export type { FilterOperator, FilterOperatorOption, FilterRule, FilterSpec, } from './interfaces/filter.interface';
4
4
  export { FILTER_OPERATORS } from './interfaces/filter.interface';
5
5
  export type { DataFlow } from './interfaces/data-flow-spec.interface';
@@ -8,5 +8,6 @@ export type { SyncResult, BatchResult, PreviewResult } from './interfaces/sync-r
8
8
  export type { SampleFetcher } from './interfaces/sample-fetcher.interface';
9
9
  export type { Adapter, EnrichmentPair, UpsertOutcome, ObjectInfo, FieldInfo, SampleRecord, DataFlowTemplate, SampleAPI, } from './interfaces/adapter.interface';
10
10
  export type { IntegrationCapabilities } from './interfaces/integration-capabilities.interface';
11
- export type { MappingConfigMapping, TranslationTable, ValidationAction, } from './interfaces/mapping-config.interface';
11
+ export { SyncStage } from './interfaces/sync-pipeline.interface';
12
+ export type { SyncPipelineState, SyncPipelineError } from './interfaces/sync-pipeline.interface';
12
13
  //# sourceMappingURL=browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAIA,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,EACZ,gBAAgB,EAChB,SAAS,GACV,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAC/F,YAAY,EACV,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,sCAAsC,CAAC;AAC9C,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,EACZ,gBAAgB,EAChB,SAAS,GACV,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC"}
package/dist/browser.js CHANGED
@@ -3,7 +3,9 @@
3
3
  // No Node.js built-ins, no PSS, no FME.
4
4
  // Use this in browser/UI bundles: import { FILTER_OPERATORS } from '@skedulo/integration-sdk/browser'
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FILTER_OPERATORS = void 0;
6
+ exports.SyncStage = exports.FILTER_OPERATORS = void 0;
7
7
  var filter_interface_1 = require("./interfaces/filter.interface");
8
8
  Object.defineProperty(exports, "FILTER_OPERATORS", { enumerable: true, get: function () { return filter_interface_1.FILTER_OPERATORS; } });
9
+ var sync_pipeline_interface_1 = require("./interfaces/sync-pipeline.interface");
10
+ Object.defineProperty(exports, "SyncStage", { enumerable: true, get: function () { return sync_pipeline_interface_1.SyncStage; } });
9
11
  //# sourceMappingURL=browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":";AAAA,oEAAoE;AACpE,wCAAwC;AACxC,sGAAsG;;;AAUtG,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":";AAAA,oEAAoE;AACpE,wCAAwC;AACxC,sGAAsG;;;AAgBtG,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA;AAgBzB,gFAAiE;AAAxD,oHAAA,SAAS,OAAA"}
@@ -9,7 +9,7 @@ export interface DataFlowListParams {
9
9
  projectId?: string;
10
10
  }
11
11
  export declare class DataFlowClient extends BaseClient {
12
- private readonly _serviceBase;
12
+ private readonly _base;
13
13
  constructor(config: BaseConfig, executionOptions?: Partial<ExecutionOptions>);
14
14
  list(params: DataFlowListParams): Promise<Array<{
15
15
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"dataflow.client.d.ts","sourceRoot":"","sources":["../../src/clients/dataflow.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGvE,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,cAAe,SAAQ,UAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAkB1E,IAAI,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAWhE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;CAMpD"}
1
+ {"version":3,"file":"dataflow.client.d.ts","sourceRoot":"","sources":["../../src/clients/dataflow.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGvE,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,cAAe,SAAQ,UAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAmB1E,IAAI,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAWhE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;CAMpD"}
@@ -6,7 +6,6 @@ const normalizeDataFlow_1 = require("../utils/normalizeDataFlow");
6
6
  class DataFlowClient extends pulse_solution_services_1.BaseClient {
7
7
  constructor(config, executionOptions = {}) {
8
8
  super(config, executionOptions);
9
- // LOCAL_INTEGRATION_SERVICE overrides for local dev (e.g. http://localhost:3000)
10
9
  const override = process.env.LOCAL_INTEGRATION_SERVICE;
11
10
  if (override) {
12
11
  let host;
@@ -19,19 +18,22 @@ class DataFlowClient extends pulse_solution_services_1.BaseClient {
19
18
  if (host !== 'localhost' && host !== '127.0.0.1' && host !== '::1') {
20
19
  throw new Error(`LOCAL_INTEGRATION_SERVICE must point to localhost, got: ${override}`);
21
20
  }
21
+ this._base = `${override.replace(/\/$/, '')}/data-flows`;
22
+ }
23
+ else {
24
+ this._base = 'integration/data-flows';
22
25
  }
23
- this._serviceBase = override ? `${override}/data-flows` : 'integration/data-flows';
24
26
  }
25
27
  async list(params) {
26
28
  const queryParams = Object.fromEntries(Object.entries(params).filter(([, v]) => v !== undefined));
27
29
  return this._performRequest({
28
- endpoint: this._serviceBase,
30
+ endpoint: this._base,
29
31
  queryParams,
30
32
  });
31
33
  }
32
34
  async getById(id) {
33
35
  const flow = await this._performRequest({
34
- endpoint: `${this._serviceBase}/${encodeURIComponent(id)}`,
36
+ endpoint: `${this._base}/${encodeURIComponent(id)}`,
35
37
  });
36
38
  return flow ? (0, normalizeDataFlow_1.normalizeDataFlow)(flow) : null;
37
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dataflow.client.js","sourceRoot":"","sources":["../../src/clients/dataflow.client.ts"],"names":[],"mappings":";;;AAAA,8EAA8D;AAG9D,kEAA+D;AAU/D,MAAa,cAAe,SAAQ,oCAAU;IAG5C,YAAY,MAAkB,EAAE,mBAA8C,EAAE;QAC9E,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAChC,iFAAiF;QACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,IAAY,CAAC;YACjB,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;YACpC,CAAC;YAAC,WAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,iDAAiD,QAAQ,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnE,MAAM,IAAI,KAAK,CAAC,2DAA2D,QAAQ,EAAE,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC;IACrF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAA0B;QACnC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CACpC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAChC,CAAC;QAE5B,OAAO,IAAI,CAAC,eAAe,CAAwB;YACjD,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAkB;YACvD,QAAQ,EAAE,GAAG,IAAI,CAAC,YAAY,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE;SAC3D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,CAAC,CAAC,IAAA,qCAAiB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;CACF;AAtCD,wCAsCC"}
1
+ {"version":3,"file":"dataflow.client.js","sourceRoot":"","sources":["../../src/clients/dataflow.client.ts"],"names":[],"mappings":";;;AAAA,8EAA8D;AAG9D,kEAA+D;AAU/D,MAAa,cAAe,SAAQ,oCAAU;IAG5C,YAAY,MAAkB,EAAE,mBAA8C,EAAE;QAC9E,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,IAAY,CAAC;YACjB,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;YACpC,CAAC;YAAC,WAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,iDAAiD,QAAQ,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnE,MAAM,IAAI,KAAK,CAAC,2DAA2D,QAAQ,EAAE,CAAC,CAAC;YACzF,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,wBAAwB,CAAC;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAA0B;QACnC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CACpC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAChC,CAAC;QAE5B,OAAO,IAAI,CAAC,eAAe,CAAwB;YACjD,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAkB;YACvD,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE;SACpD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,CAAC,CAAC,IAAA,qCAAiB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;CACF;AAvCD,wCAuCC"}
@@ -7,6 +7,7 @@ export interface ProxyRequestOptions {
7
7
  }
8
8
  export declare class ProxyClient extends BaseClient {
9
9
  private readonly integrationType;
10
+ private readonly _base;
10
11
  constructor(config: BaseConfig, integrationType: string, executionOptions?: Partial<ExecutionOptions>);
11
12
  request<T = unknown>(method: HttpMethod, path: string, options?: ProxyRequestOptions): Promise<T>;
12
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.client.d.ts","sourceRoot":"","sources":["../../src/clients/proxy.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAErF,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,qBAAa,WAAY,SAAQ,UAAU;IAGvC,OAAO,CAAC,QAAQ,CAAC,eAAe;gBADhC,MAAM,EAAE,UAAU,EACD,eAAe,EAAE,MAAM,EACxC,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAK5C,OAAO,CAAC,CAAC,GAAG,OAAO,EACvB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,CAAC,CAAC;CASd"}
1
+ {"version":3,"file":"proxy.client.d.ts","sourceRoot":"","sources":["../../src/clients/proxy.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAErF,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,qBAAa,WAAY,SAAQ,UAAU;IAKvC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAJlC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAG7B,MAAM,EAAE,UAAU,EACD,eAAe,EAAE,MAAM,EACxC,gBAAgB,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAS5C,OAAO,CAAC,CAAC,GAAG,OAAO,EACvB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,CAAC,CAAC;CASd"}
@@ -6,12 +6,16 @@ class ProxyClient extends pulse_solution_services_1.BaseClient {
6
6
  constructor(config, integrationType, executionOptions = {}) {
7
7
  super(config, executionOptions);
8
8
  this.integrationType = integrationType;
9
+ const override = process.env.LOCAL_INTEGRATION_SERVICE;
10
+ this._base = override
11
+ ? `${override.replace(/\/$/, '')}/proxy/${integrationType}`
12
+ : `integration/proxy/${integrationType}`;
9
13
  }
10
14
  async request(method, path, options) {
11
15
  const normalizedPath = path.replace(/^\/+/, '');
12
16
  return this._performRequest({
13
17
  method,
14
- endpoint: `integration/proxy/${this.integrationType}/${normalizedPath}`,
18
+ endpoint: `${this._base}/${normalizedPath}`,
15
19
  body: options === null || options === void 0 ? void 0 : options.body,
16
20
  queryParams: options === null || options === void 0 ? void 0 : options.params,
17
21
  });
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.client.js","sourceRoot":"","sources":["../../src/clients/proxy.client.ts"],"names":[],"mappings":";;;AAAA,8EAA8D;AAU9D,MAAa,WAAY,SAAQ,oCAAU;IACzC,YACE,MAAkB,EACD,eAAuB,EACxC,mBAA8C,EAAE;QAEhD,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAHf,oBAAe,GAAf,eAAe,CAAQ;IAI1C,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAkB,EAClB,IAAY,EACZ,OAA6B;QAE7B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,eAAe,CAAI;YAC7B,MAAM;YACN,QAAQ,EAAE,qBAAqB,IAAI,CAAC,eAAe,IAAI,cAAc,EAAE;YACvE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI;YACnB,WAAW,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM;SAC7B,CAAC,CAAC;IACL,CAAC;CACF;AAtBD,kCAsBC"}
1
+ {"version":3,"file":"proxy.client.js","sourceRoot":"","sources":["../../src/clients/proxy.client.ts"],"names":[],"mappings":";;;AAAA,8EAA8D;AAU9D,MAAa,WAAY,SAAQ,oCAAU;IAGzC,YACE,MAAkB,EACD,eAAuB,EACxC,mBAA8C,EAAE;QAEhD,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAHf,oBAAe,GAAf,eAAe,CAAQ;QAIxC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,QAAQ;YACnB,CAAC,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,eAAe,EAAE;YAC3D,CAAC,CAAC,qBAAqB,eAAe,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAkB,EAClB,IAAY,EACZ,OAA6B;QAE7B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,eAAe,CAAI;YAC7B,MAAM;YACN,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,IAAI,cAAc,EAAE;YAC3C,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI;YACnB,WAAW,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM;SAC7B,CAAC,CAAC;IACL,CAAC;CACF;AA5BD,kCA4BC"}
@@ -12,6 +12,21 @@ export declare const OperationName: {
12
12
  readonly LOOKUP_RESOLVE: (objectName: string) => string;
13
13
  readonly PUSH_FETCH: "pushFetch";
14
14
  readonly PREVIEW: (id: number) => string;
15
+ readonly MAPPING_RESOLVE: "idMappingResolve";
16
+ readonly MAPPING_UPSERT: "idMappingUpsert";
17
+ readonly MAPPING_DELETE_LOOKUP: "idMappingDeleteLookup";
18
+ readonly MAPPING_DELETE: "idMappingDelete";
19
+ readonly MAPPING_FLOW_DELETE: "idMappingFlowDelete";
15
20
  };
16
21
  export declare const LOOKUP_CHUNK_SIZE = 100;
22
+ export declare const AdapterRole: {
23
+ readonly SOURCE: "source";
24
+ readonly TARGET: "target";
25
+ };
26
+ export type AdapterRole = (typeof AdapterRole)[keyof typeof AdapterRole];
27
+ export declare const SyncMode: {
28
+ readonly BATCH: "batch";
29
+ readonly EVENT: "event";
30
+ };
31
+ export type SyncMode = (typeof SyncMode)[keyof typeof SyncMode];
17
32
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,eAAO,MAAM,aAAa;;gCAEL,MAAM;;;wBAGd,MAAM;0CACY,MAAM;;2BAErB,MAAM;CACZ,CAAC;AAEX,eAAO,MAAM,iBAAiB,MAAM,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,eAAO,MAAM,aAAa;;gCAEL,MAAM;;;wBAGd,MAAM;0CACY,MAAM;;2BAErB,MAAM;;;;;;CAMZ,CAAC;AAEX,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC"}