@skedulo/integration-sdk 0.3.2 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/README.md +100 -0
- package/dist/actions/action-registry.d.ts +17 -0
- package/dist/actions/action-registry.d.ts.map +1 -0
- package/dist/actions/action-registry.js +57 -0
- package/dist/actions/action-registry.js.map +1 -0
- package/dist/actions/capabilities.action.d.ts +6 -0
- package/dist/actions/capabilities.action.d.ts.map +1 -0
- package/dist/actions/capabilities.action.js +17 -0
- package/dist/actions/capabilities.action.js.map +1 -0
- package/dist/actions/data-flow.action.d.ts +62 -0
- package/dist/actions/data-flow.action.d.ts.map +1 -0
- package/dist/actions/data-flow.action.js +221 -0
- package/dist/actions/data-flow.action.js.map +1 -0
- package/dist/actions/event.action.d.ts +27 -0
- package/dist/actions/event.action.d.ts.map +1 -0
- package/dist/actions/event.action.js +89 -0
- package/dist/actions/event.action.js.map +1 -0
- package/dist/actions/metadata.action.d.ts +44 -0
- package/dist/actions/metadata.action.d.ts.map +1 -0
- package/dist/actions/metadata.action.js +96 -0
- package/dist/actions/metadata.action.js.map +1 -0
- package/dist/actions/setup.action.d.ts +13 -0
- package/dist/actions/setup.action.d.ts.map +1 -0
- package/dist/actions/setup.action.js +35 -0
- package/dist/actions/setup.action.js.map +1 -0
- package/dist/actions/sync.action.d.ts +65 -0
- package/dist/actions/sync.action.d.ts.map +1 -0
- package/dist/actions/sync.action.js +201 -0
- package/dist/actions/sync.action.js.map +1 -0
- package/dist/actions/utils/action-names.d.ts +46 -0
- package/dist/actions/utils/action-names.d.ts.map +1 -0
- package/dist/actions/utils/action-names.js +48 -0
- package/dist/actions/utils/action-names.js.map +1 -0
- package/dist/actions/utils/errors.d.ts +18 -0
- package/dist/actions/utils/errors.d.ts.map +1 -0
- package/dist/actions/utils/errors.js +29 -0
- package/dist/actions/utils/errors.js.map +1 -0
- package/dist/actions/utils/helpers.d.ts +18 -0
- package/dist/actions/utils/helpers.d.ts.map +1 -0
- package/dist/actions/utils/helpers.js +29 -0
- package/dist/actions/utils/helpers.js.map +1 -0
- package/dist/actions/utils/types.d.ts +48 -0
- package/dist/actions/utils/types.d.ts.map +1 -0
- package/dist/{dist/interfaces/adapter.interface.js → actions/utils/types.js} +1 -1
- package/dist/actions/utils/types.js.map +1 -0
- package/dist/adapters/base-adapter-handler.d.ts +16 -79
- package/dist/adapters/base-adapter-handler.d.ts.map +1 -1
- package/dist/adapters/base-adapter-handler.js +81 -366
- package/dist/adapters/base-adapter-handler.js.map +1 -1
- package/dist/adapters/capabilities-defaults.d.ts +24 -0
- package/dist/adapters/capabilities-defaults.d.ts.map +1 -0
- package/dist/adapters/capabilities-defaults.js +43 -0
- package/dist/adapters/capabilities-defaults.js.map +1 -0
- package/dist/adapters/skedulo.adapter.d.ts +4 -3
- package/dist/adapters/skedulo.adapter.d.ts.map +1 -1
- package/dist/adapters/skedulo.adapter.js +1 -1
- package/dist/adapters/skedulo.adapter.js.map +1 -1
- package/dist/browser.d.ts +2 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +6 -1
- package/dist/browser.js.map +1 -1
- package/dist/clients/dataflow.client.d.ts +32 -0
- package/dist/clients/dataflow.client.d.ts.map +1 -1
- package/dist/clients/dataflow.client.js +37 -17
- package/dist/clients/dataflow.client.js.map +1 -1
- package/dist/clients/local-override.d.ts +7 -0
- package/dist/clients/local-override.d.ts.map +1 -0
- package/dist/clients/local-override.js +26 -0
- package/dist/clients/local-override.js.map +1 -0
- package/dist/clients/proxy.client.d.ts +0 -1
- package/dist/clients/proxy.client.d.ts.map +1 -1
- package/dist/clients/proxy.client.js +0 -1
- package/dist/clients/proxy.client.js.map +1 -1
- package/dist/constants.d.ts +8 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +8 -1
- package/dist/constants.js.map +1 -1
- package/dist/context.d.ts +1 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +3 -0
- package/dist/context.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/interfaces/data-flow-spec.interface.d.ts +55 -0
- package/dist/interfaces/data-flow-spec.interface.d.ts.map +1 -1
- package/dist/interfaces/data-flow-spec.interface.js +52 -0
- package/dist/interfaces/data-flow-spec.interface.js.map +1 -1
- package/dist/interfaces/integration-capabilities.interface.d.ts +20 -0
- package/dist/interfaces/integration-capabilities.interface.d.ts.map +1 -1
- package/dist/services/artifact-builder.d.ts +95 -0
- package/dist/services/artifact-builder.d.ts.map +1 -0
- package/dist/services/artifact-builder.js +142 -0
- package/dist/services/artifact-builder.js.map +1 -0
- package/dist/services/dataflow.service.d.ts +21 -5
- package/dist/services/dataflow.service.d.ts.map +1 -1
- package/dist/services/dataflow.service.js +147 -16
- package/dist/services/dataflow.service.js.map +1 -1
- package/dist/services/preview.service.js +5 -1
- package/dist/services/preview.service.js.map +1 -1
- package/dist/types.d.ts +2 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +5 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/artifact-builder.d.ts +95 -0
- package/dist/utils/artifact-builder.d.ts.map +1 -0
- package/dist/utils/artifact-builder.js +142 -0
- package/dist/utils/artifact-builder.js.map +1 -0
- package/package.json +1 -1
- package/dist/adapters/helpers.d.ts +0 -15
- package/dist/adapters/helpers.d.ts.map +0 -1
- package/dist/adapters/helpers.js +0 -55
- package/dist/adapters/helpers.js.map +0 -1
- package/dist/adapters/skedulo-metadata-adapter.d.ts +0 -3
- package/dist/adapters/skedulo-metadata-adapter.d.ts.map +0 -1
- package/dist/adapters/skedulo-metadata-adapter.js +0 -57
- package/dist/adapters/skedulo-metadata-adapter.js.map +0 -1
- package/dist/adapters/skedulo-metadata.adapter.d.ts +0 -3
- package/dist/adapters/skedulo-metadata.adapter.d.ts.map +0 -1
- package/dist/adapters/skedulo-metadata.adapter.js +0 -57
- package/dist/adapters/skedulo-metadata.adapter.js.map +0 -1
- package/dist/adapters/upsert-harness.d.ts +0 -15
- package/dist/adapters/upsert-harness.d.ts.map +0 -1
- package/dist/adapters/upsert-harness.js +0 -55
- package/dist/adapters/upsert-harness.js.map +0 -1
- package/dist/clients/dataflow-client.d.ts +0 -18
- package/dist/clients/dataflow-client.d.ts.map +0 -1
- package/dist/clients/dataflow-client.js +0 -43
- package/dist/clients/dataflow-client.js.map +0 -1
- package/dist/clients/proxy-client.d.ts +0 -13
- package/dist/clients/proxy-client.d.ts.map +0 -1
- package/dist/clients/proxy-client.js +0 -20
- package/dist/clients/proxy-client.js.map +0 -1
- package/dist/dist/adapters/skedulo-metadata-adapter.d.ts +0 -3
- package/dist/dist/adapters/skedulo-metadata-adapter.d.ts.map +0 -1
- package/dist/dist/adapters/skedulo-metadata-adapter.js +0 -57
- package/dist/dist/adapters/skedulo-metadata-adapter.js.map +0 -1
- package/dist/dist/adapters/skedulo-metadata.adapter.d.ts +0 -3
- package/dist/dist/adapters/skedulo-metadata.adapter.d.ts.map +0 -1
- package/dist/dist/adapters/skedulo-metadata.adapter.js +0 -57
- package/dist/dist/adapters/skedulo-metadata.adapter.js.map +0 -1
- package/dist/dist/adapters/skedulo.adapter.d.ts +0 -15
- package/dist/dist/adapters/skedulo.adapter.d.ts.map +0 -1
- package/dist/dist/adapters/skedulo.adapter.js +0 -213
- package/dist/dist/adapters/skedulo.adapter.js.map +0 -1
- package/dist/dist/browser.d.ts +0 -12
- package/dist/dist/browser.d.ts.map +0 -1
- package/dist/dist/browser.js +0 -9
- package/dist/dist/browser.js.map +0 -1
- package/dist/dist/clients/dataflow-client.d.ts +0 -18
- package/dist/dist/clients/dataflow-client.d.ts.map +0 -1
- package/dist/dist/clients/dataflow-client.js +0 -43
- package/dist/dist/clients/dataflow-client.js.map +0 -1
- package/dist/dist/clients/dataflow.client.d.ts +0 -19
- package/dist/dist/clients/dataflow.client.d.ts.map +0 -1
- package/dist/dist/clients/dataflow.client.js +0 -28
- package/dist/dist/clients/dataflow.client.js.map +0 -1
- package/dist/dist/clients/proxy-client.d.ts +0 -13
- package/dist/dist/clients/proxy-client.d.ts.map +0 -1
- package/dist/dist/clients/proxy-client.js +0 -20
- package/dist/dist/clients/proxy-client.js.map +0 -1
- package/dist/dist/clients/proxy.client.d.ts +0 -13
- package/dist/dist/clients/proxy.client.d.ts.map +0 -1
- package/dist/dist/clients/proxy.client.js +0 -21
- package/dist/dist/clients/proxy.client.js.map +0 -1
- package/dist/dist/constants.d.ts +0 -17
- package/dist/dist/constants.d.ts.map +0 -1
- package/dist/dist/constants.js +0 -20
- package/dist/dist/constants.js.map +0 -1
- package/dist/dist/context.d.ts +0 -19
- package/dist/dist/context.d.ts.map +0 -1
- package/dist/dist/context.js +0 -40
- package/dist/dist/context.js.map +0 -1
- package/dist/dist/handlers/metadata.handler.d.ts +0 -17
- package/dist/dist/handlers/metadata.handler.d.ts.map +0 -1
- package/dist/dist/handlers/metadata.handler.js +0 -50
- package/dist/dist/handlers/metadata.handler.js.map +0 -1
- package/dist/dist/index.d.ts +0 -18
- package/dist/dist/index.d.ts.map +0 -1
- package/dist/dist/index.js +0 -48
- package/dist/dist/index.js.map +0 -1
- package/dist/dist/interfaces/adapter.interface.d.ts +0 -122
- package/dist/dist/interfaces/adapter.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/adapter.interface.js.map +0 -1
- package/dist/dist/interfaces/data-flow-spec.interface.d.ts +0 -22
- package/dist/dist/interfaces/data-flow-spec.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/data-flow-spec.interface.js +0 -3
- package/dist/dist/interfaces/data-flow-spec.interface.js.map +0 -1
- package/dist/dist/interfaces/field-mapping.interface.d.ts +0 -26
- package/dist/dist/interfaces/field-mapping.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/field-mapping.interface.js +0 -3
- package/dist/dist/interfaces/field-mapping.interface.js.map +0 -1
- package/dist/dist/interfaces/filter.interface.d.ts +0 -19
- package/dist/dist/interfaces/filter.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/filter.interface.js +0 -20
- package/dist/dist/interfaces/filter.interface.js.map +0 -1
- package/dist/dist/interfaces/integration-capabilities.interface.d.ts +0 -13
- package/dist/dist/interfaces/integration-capabilities.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/integration-capabilities.interface.js +0 -3
- package/dist/dist/interfaces/integration-capabilities.interface.js.map +0 -1
- package/dist/dist/interfaces/lookup-rule.interface.d.ts +0 -14
- package/dist/dist/interfaces/lookup-rule.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/lookup-rule.interface.js +0 -3
- package/dist/dist/interfaces/lookup-rule.interface.js.map +0 -1
- package/dist/dist/interfaces/mapped-event.interface.d.ts +0 -9
- package/dist/dist/interfaces/mapped-event.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/mapped-event.interface.js +0 -3
- package/dist/dist/interfaces/mapped-event.interface.js.map +0 -1
- package/dist/dist/interfaces/mapping-config.interface.d.ts +0 -26
- package/dist/dist/interfaces/mapping-config.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/mapping-config.interface.js +0 -3
- package/dist/dist/interfaces/mapping-config.interface.js.map +0 -1
- package/dist/dist/interfaces/metadata-adapter.interface.d.ts +0 -26
- package/dist/dist/interfaces/metadata-adapter.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/metadata-adapter.interface.js +0 -3
- package/dist/dist/interfaces/metadata-adapter.interface.js.map +0 -1
- package/dist/dist/interfaces/pull-adapter.interface.d.ts +0 -50
- package/dist/dist/interfaces/pull-adapter.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/pull-adapter.interface.js +0 -3
- package/dist/dist/interfaces/pull-adapter.interface.js.map +0 -1
- package/dist/dist/interfaces/push-adapter.interface.d.ts +0 -28
- package/dist/dist/interfaces/push-adapter.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/push-adapter.interface.js +0 -3
- package/dist/dist/interfaces/push-adapter.interface.js.map +0 -1
- package/dist/dist/interfaces/sample-fetcher.interface.d.ts +0 -4
- package/dist/dist/interfaces/sample-fetcher.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/sample-fetcher.interface.js +0 -3
- package/dist/dist/interfaces/sample-fetcher.interface.js.map +0 -1
- package/dist/dist/interfaces/sync-result.interface.d.ts +0 -19
- package/dist/dist/interfaces/sync-result.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/sync-result.interface.js +0 -3
- package/dist/dist/interfaces/sync-result.interface.js.map +0 -1
- package/dist/dist/interfaces/target-adapter.interface.d.ts +0 -10
- package/dist/dist/interfaces/target-adapter.interface.d.ts.map +0 -1
- package/dist/dist/interfaces/target-adapter.interface.js +0 -3
- package/dist/dist/interfaces/target-adapter.interface.js.map +0 -1
- package/dist/dist/mocks/hubspot.d.ts +0 -4
- package/dist/dist/mocks/hubspot.d.ts.map +0 -1
- package/dist/dist/mocks/hubspot.js +0 -61
- package/dist/dist/mocks/hubspot.js.map +0 -1
- package/dist/dist/provenance.d.ts +0 -3
- package/dist/dist/provenance.d.ts.map +0 -1
- package/dist/dist/provenance.js +0 -12
- package/dist/dist/provenance.js.map +0 -1
- package/dist/dist/services/dataflow-service.d.ts +0 -21
- package/dist/dist/services/dataflow-service.d.ts.map +0 -1
- package/dist/dist/services/dataflow-service.js +0 -47
- package/dist/dist/services/dataflow-service.js.map +0 -1
- package/dist/dist/services/dataflow.service.d.ts +0 -20
- package/dist/dist/services/dataflow.service.d.ts.map +0 -1
- package/dist/dist/services/dataflow.service.js +0 -52
- package/dist/dist/services/dataflow.service.js.map +0 -1
- package/dist/dist/services/eql.d.ts +0 -2
- package/dist/dist/services/eql.d.ts.map +0 -1
- package/dist/dist/services/eql.js +0 -10
- package/dist/dist/services/eql.js.map +0 -1
- package/dist/dist/services/mapping-service.d.ts +0 -14
- package/dist/dist/services/mapping-service.d.ts.map +0 -1
- package/dist/dist/services/mapping-service.js +0 -88
- package/dist/dist/services/mapping-service.js.map +0 -1
- package/dist/dist/services/mapping.service.d.ts +0 -14
- package/dist/dist/services/mapping.service.d.ts.map +0 -1
- package/dist/dist/services/mapping.service.js +0 -89
- package/dist/dist/services/mapping.service.js.map +0 -1
- package/dist/dist/services/outbound-service.d.ts +0 -14
- package/dist/dist/services/outbound-service.d.ts.map +0 -1
- package/dist/dist/services/outbound-service.js +0 -65
- package/dist/dist/services/outbound-service.js.map +0 -1
- package/dist/dist/services/paragon-workflow-service.d.ts +0 -7
- package/dist/dist/services/paragon-workflow-service.d.ts.map +0 -1
- package/dist/dist/services/paragon-workflow-service.js +0 -68
- package/dist/dist/services/paragon-workflow-service.js.map +0 -1
- package/dist/dist/services/paragon-workflow.service.d.ts +0 -8
- package/dist/dist/services/paragon-workflow.service.d.ts.map +0 -1
- package/dist/dist/services/paragon-workflow.service.js +0 -31
- package/dist/dist/services/paragon-workflow.service.js.map +0 -1
- package/dist/dist/services/preview-service.d.ts +0 -11
- package/dist/dist/services/preview-service.d.ts.map +0 -1
- package/dist/dist/services/preview-service.js +0 -66
- package/dist/dist/services/preview-service.js.map +0 -1
- package/dist/dist/services/preview.service.d.ts +0 -11
- package/dist/dist/services/preview.service.d.ts.map +0 -1
- package/dist/dist/services/preview.service.js +0 -74
- package/dist/dist/services/preview.service.js.map +0 -1
- package/dist/dist/services/pull-service.d.ts +0 -9
- package/dist/dist/services/pull-service.d.ts.map +0 -1
- package/dist/dist/services/pull-service.js +0 -207
- package/dist/dist/services/pull-service.js.map +0 -1
- package/dist/dist/services/pull.service.d.ts +0 -11
- package/dist/dist/services/pull.service.d.ts.map +0 -1
- package/dist/dist/services/pull.service.js +0 -200
- package/dist/dist/services/pull.service.js.map +0 -1
- package/dist/dist/services/push-service.d.ts +0 -16
- package/dist/dist/services/push-service.d.ts.map +0 -1
- package/dist/dist/services/push-service.js +0 -76
- package/dist/dist/services/push-service.js.map +0 -1
- package/dist/dist/services/push.service.d.ts +0 -19
- package/dist/dist/services/push.service.d.ts.map +0 -1
- package/dist/dist/services/push.service.js +0 -186
- package/dist/dist/services/push.service.js.map +0 -1
- package/dist/dist/services/scheduled-pull-service.d.ts +0 -7
- package/dist/dist/services/scheduled-pull-service.d.ts.map +0 -1
- package/dist/dist/services/scheduled-pull-service.js +0 -58
- package/dist/dist/services/scheduled-pull-service.js.map +0 -1
- package/dist/dist/services/split-filter.d.ts +0 -3
- package/dist/dist/services/split-filter.d.ts.map +0 -1
- package/dist/dist/services/split-filter.js +0 -50
- package/dist/dist/services/split-filter.js.map +0 -1
- package/dist/dist/services/sync-runner.d.ts +0 -22
- package/dist/dist/services/sync-runner.d.ts.map +0 -1
- package/dist/dist/services/sync-runner.js +0 -110
- package/dist/dist/services/sync-runner.js.map +0 -1
- package/dist/dist/services/sync.service.d.ts +0 -21
- package/dist/dist/services/sync.service.d.ts.map +0 -1
- package/dist/dist/services/sync.service.js +0 -166
- package/dist/dist/services/sync.service.js.map +0 -1
- package/dist/dist/types.d.ts +0 -11
- package/dist/dist/types.d.ts.map +0 -1
- package/dist/dist/types.js +0 -6
- package/dist/dist/types.js.map +0 -1
- package/dist/dist/utils/compileFilter.d.ts +0 -3
- package/dist/dist/utils/compileFilter.d.ts.map +0 -1
- package/dist/dist/utils/compileFilter.js +0 -73
- package/dist/dist/utils/compileFilter.js.map +0 -1
- package/dist/dist/utils/normalizeDataFlow.d.ts +0 -3
- package/dist/dist/utils/normalizeDataFlow.d.ts.map +0 -1
- package/dist/dist/utils/normalizeDataFlow.js +0 -30
- package/dist/dist/utils/normalizeDataFlow.js.map +0 -1
- package/dist/dist/utils.d.ts +0 -2
- package/dist/dist/utils.d.ts.map +0 -1
- package/dist/dist/utils.js +0 -10
- package/dist/dist/utils.js.map +0 -1
- package/dist/handlers/metadata.handler.d.ts +0 -13
- package/dist/handlers/metadata.handler.d.ts.map +0 -1
- package/dist/handlers/metadata.handler.js +0 -46
- package/dist/handlers/metadata.handler.js.map +0 -1
- package/dist/interfaces/mapping-config.interface.d.ts +0 -26
- package/dist/interfaces/mapping-config.interface.d.ts.map +0 -1
- package/dist/interfaces/mapping-config.interface.js +0 -3
- package/dist/interfaces/mapping-config.interface.js.map +0 -1
- package/dist/interfaces/metadata-adapter.interface.d.ts +0 -26
- package/dist/interfaces/metadata-adapter.interface.d.ts.map +0 -1
- package/dist/interfaces/metadata-adapter.interface.js +0 -3
- package/dist/interfaces/metadata-adapter.interface.js.map +0 -1
- package/dist/interfaces/pull-adapter.interface.d.ts +0 -50
- package/dist/interfaces/pull-adapter.interface.d.ts.map +0 -1
- package/dist/interfaces/pull-adapter.interface.js +0 -3
- package/dist/interfaces/pull-adapter.interface.js.map +0 -1
- package/dist/interfaces/push-adapter.interface.d.ts +0 -28
- package/dist/interfaces/push-adapter.interface.d.ts.map +0 -1
- package/dist/interfaces/push-adapter.interface.js +0 -3
- package/dist/interfaces/push-adapter.interface.js.map +0 -1
- package/dist/interfaces/target-adapter.interface.d.ts +0 -10
- package/dist/interfaces/target-adapter.interface.d.ts.map +0 -1
- package/dist/interfaces/target-adapter.interface.js +0 -3
- package/dist/interfaces/target-adapter.interface.js.map +0 -1
- package/dist/mocks/hubspot.d.ts +0 -4
- package/dist/mocks/hubspot.d.ts.map +0 -1
- package/dist/mocks/hubspot.js +0 -61
- package/dist/mocks/hubspot.js.map +0 -1
- package/dist/provenance.d.ts +0 -3
- package/dist/provenance.d.ts.map +0 -1
- package/dist/provenance.js +0 -12
- package/dist/provenance.js.map +0 -1
- package/dist/services/dataflow-service.d.ts +0 -21
- package/dist/services/dataflow-service.d.ts.map +0 -1
- package/dist/services/dataflow-service.js +0 -47
- package/dist/services/dataflow-service.js.map +0 -1
- package/dist/services/eql.d.ts +0 -2
- package/dist/services/eql.d.ts.map +0 -1
- package/dist/services/eql.js +0 -10
- package/dist/services/eql.js.map +0 -1
- package/dist/services/mapping-service.d.ts +0 -14
- package/dist/services/mapping-service.d.ts.map +0 -1
- package/dist/services/mapping-service.js +0 -88
- package/dist/services/mapping-service.js.map +0 -1
- package/dist/services/mapping.service.d.ts +0 -14
- package/dist/services/mapping.service.d.ts.map +0 -1
- package/dist/services/mapping.service.js +0 -89
- package/dist/services/mapping.service.js.map +0 -1
- package/dist/services/outbound-service.d.ts +0 -14
- package/dist/services/outbound-service.d.ts.map +0 -1
- package/dist/services/outbound-service.js +0 -65
- package/dist/services/outbound-service.js.map +0 -1
- package/dist/services/paragon-workflow-service.d.ts +0 -7
- package/dist/services/paragon-workflow-service.d.ts.map +0 -1
- package/dist/services/paragon-workflow-service.js +0 -68
- package/dist/services/paragon-workflow-service.js.map +0 -1
- package/dist/services/paragon-workflow.service.d.ts +0 -8
- package/dist/services/paragon-workflow.service.d.ts.map +0 -1
- package/dist/services/paragon-workflow.service.js +0 -31
- package/dist/services/paragon-workflow.service.js.map +0 -1
- package/dist/services/preview-service.d.ts +0 -11
- package/dist/services/preview-service.d.ts.map +0 -1
- package/dist/services/preview-service.js +0 -66
- package/dist/services/preview-service.js.map +0 -1
- package/dist/services/pull-service.d.ts +0 -9
- package/dist/services/pull-service.d.ts.map +0 -1
- package/dist/services/pull-service.js +0 -207
- package/dist/services/pull-service.js.map +0 -1
- package/dist/services/pull.service.d.ts +0 -11
- package/dist/services/pull.service.d.ts.map +0 -1
- package/dist/services/pull.service.js +0 -200
- package/dist/services/pull.service.js.map +0 -1
- package/dist/services/push-service.d.ts +0 -16
- package/dist/services/push-service.d.ts.map +0 -1
- package/dist/services/push-service.js +0 -76
- package/dist/services/push-service.js.map +0 -1
- package/dist/services/push.service.d.ts +0 -19
- package/dist/services/push.service.d.ts.map +0 -1
- package/dist/services/push.service.js +0 -186
- package/dist/services/push.service.js.map +0 -1
- package/dist/services/routes.factory.d.ts +0 -19
- package/dist/services/routes.factory.d.ts.map +0 -1
- package/dist/services/routes.factory.js +0 -352
- package/dist/services/routes.factory.js.map +0 -1
- package/dist/services/scheduled-pull-service.d.ts +0 -7
- package/dist/services/scheduled-pull-service.d.ts.map +0 -1
- package/dist/services/scheduled-pull-service.js +0 -58
- package/dist/services/scheduled-pull-service.js.map +0 -1
- package/dist/services/split-filter.d.ts +0 -3
- package/dist/services/split-filter.d.ts.map +0 -1
- package/dist/services/split-filter.js +0 -50
- package/dist/services/split-filter.js.map +0 -1
- package/dist/utils/auth.d.ts +0 -6
- package/dist/utils/auth.d.ts.map +0 -1
- package/dist/utils/auth.js +0 -18
- package/dist/utils/auth.js.map +0 -1
- package/dist/utils/http-response.d.ts +0 -16
- package/dist/utils/http-response.d.ts.map +0 -1
- package/dist/utils/http-response.js +0 -36
- package/dist/utils/http-response.js.map +0 -1
- package/dist/utils/normalizeDataFlow.d.ts +0 -3
- package/dist/utils/normalizeDataFlow.d.ts.map +0 -1
- package/dist/utils/normalizeDataFlow.js +0 -37
- package/dist/utils/normalizeDataFlow.js.map +0 -1
- package/dist/utils/query-string.d.ts +0 -2
- package/dist/utils/query-string.d.ts.map +0 -1
- package/dist/utils/query-string.js +0 -13
- package/dist/utils/query-string.js.map +0 -1
- package/dist/utils/sked-handler.d.ts +0 -22
- package/dist/utils/sked-handler.d.ts.map +0 -1
- package/dist/utils/sked-handler.js +0 -41
- package/dist/utils/sked-handler.js.map +0 -1
- package/dist/utils/strings.d.ts +0 -2
- package/dist/utils/strings.d.ts.map +0 -1
- package/dist/utils/strings.js +0 -14
- package/dist/utils/strings.js.map +0 -1
- package/dist/utils/unwrap-proxy.d.ts +0 -2
- package/dist/utils/unwrap-proxy.d.ts.map +0 -1
- package/dist/utils/unwrap-proxy.js +0 -12
- package/dist/utils/unwrap-proxy.js.map +0 -1
- package/dist/utils.d.ts +0 -2
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -10
- package/dist/utils.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.3.3] - 2026-05-27
|
|
4
|
+
|
|
5
|
+
- **Single-dispatch handler** — one POST route → `BaseAdapterHandler.dispatch`, action selected via the `sked-integration-action` header; `ACTION_HEADER` / `ACTIONS` exported (incl. `/browser`) so the UI imports them instead of hardcoding.
|
|
6
|
+
- **SDK-owned data-flow lifecycle** — `dataFlow.activate`/`.deactivate` provision/tear down a PSS artifact (webhook or triggered action) two-phase fail-closed, recorded under `triggerConfig.sync_config`.
|
|
7
|
+
- **`sync_config` shape** — `{ sync_config: { strategy: 'scheduled' | 'realtime', interval_minutes?, trigger_name?, trigger_type? } }` (snake_case); narrow with `asSyncConfig`. Direction decides push vs pull. `data-flow.list`/`create` scope by integration type. New constants `SyncStrategy`, `TriggerType`, `DataFlowStatus`, `SKEDULO_SYSTEM`.
|
|
8
|
+
- `artifact-builder` moved to `utils/`; docs refreshed + new `docs/DATA-FLOW-LIFECYCLE.md`.
|
|
9
|
+
|
|
3
10
|
## [0.3.2] - 2026-05-25
|
|
4
11
|
|
|
5
12
|
- **Fixes** — per-flow error isolation in `/run-all-flows`, admin gating on `/setup`, safer change-event discriminant (`!('event' in parsed)`), route handler test coverage.
|
package/README.md
CHANGED
|
@@ -80,6 +80,105 @@ export class MyAdapter extends BaseAdapter {
|
|
|
80
80
|
|
|
81
81
|
See [docs/ADAPTERS.md](./docs/ADAPTERS.md) for the full method reference and lifecycle hook guide.
|
|
82
82
|
|
|
83
|
+
## Dispatcher protocol
|
|
84
|
+
|
|
85
|
+
Tenant integration functions expose a **single POST endpoint** that forwards the request into `BaseAdapterHandler.dispatch`. The action to execute is selected via the `sked-integration-action` request header; the body is the raw action input, and the response is an `ActionResult`:
|
|
86
|
+
|
|
87
|
+
```ts
|
|
88
|
+
type ActionResult<T> =
|
|
89
|
+
| { ok: true; result: T }
|
|
90
|
+
| { ok: false; error: { code: string; message: string; details?: unknown } };
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Server wiring
|
|
94
|
+
|
|
95
|
+
```typescript
|
|
96
|
+
import { BaseAdapterHandler } from '@skedulo/integration-sdk';
|
|
97
|
+
import { MyAdapter } from './my-adapter';
|
|
98
|
+
|
|
99
|
+
const handler = new BaseAdapterHandler({ adapter: new MyAdapter() });
|
|
100
|
+
|
|
101
|
+
// Wire the SDK dispatcher to a single POST route. The framework call shape
|
|
102
|
+
// matches Skedulo's function-utilities runtime (body, headers, method, path,
|
|
103
|
+
// skedContext); use whatever your HTTP layer provides.
|
|
104
|
+
app.post('/', async (req, res) => {
|
|
105
|
+
const { status, body } = await handler.dispatch(
|
|
106
|
+
req.body,
|
|
107
|
+
req.headers,
|
|
108
|
+
req.method,
|
|
109
|
+
req.path,
|
|
110
|
+
req.skedContext,
|
|
111
|
+
);
|
|
112
|
+
res.status(status).json(body);
|
|
113
|
+
});
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Client calls
|
|
117
|
+
|
|
118
|
+
The SDK does not ship a dispatch client — the wire protocol is simple enough that consumers (UI, cross-function calls) write a one-screen helper. Import the wire constants instead of hardcoding strings:
|
|
119
|
+
|
|
120
|
+
```typescript
|
|
121
|
+
import { ACTION_HEADER, ACTIONS } from '@skedulo/integration-sdk';
|
|
122
|
+
|
|
123
|
+
async function dispatch<T = unknown>(action: string, input: unknown): Promise<T> {
|
|
124
|
+
const res = await fetch(`${baseUrl}/`, {
|
|
125
|
+
method: 'POST',
|
|
126
|
+
headers: {
|
|
127
|
+
'content-type': 'application/json',
|
|
128
|
+
authorization: `Bearer ${token}`,
|
|
129
|
+
[ACTION_HEADER]: action,
|
|
130
|
+
},
|
|
131
|
+
body: JSON.stringify(input ?? {}),
|
|
132
|
+
});
|
|
133
|
+
const envelope = await res.json();
|
|
134
|
+
if (!envelope.ok) {
|
|
135
|
+
throw Object.assign(new Error(envelope.error.message), envelope.error);
|
|
136
|
+
}
|
|
137
|
+
return envelope.result;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
const flow = await dispatch(ACTIONS.dataFlow.activate, { id: 42 });
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
`ACTIONS` is a frozen, dot-grouped map of all action names (`ACTIONS.dataFlow.activate`, `ACTIONS.metadata.getObjects`, …). `ACTION_HEADER` is the literal header name (`sked-integration-action`).
|
|
144
|
+
|
|
145
|
+
## Sync strategies
|
|
146
|
+
|
|
147
|
+
A data flow's trigger config is persisted as JSONB under a single `sync_config` key:
|
|
148
|
+
|
|
149
|
+
```jsonc
|
|
150
|
+
{
|
|
151
|
+
"sync_config": {
|
|
152
|
+
"strategy": "scheduled", // "scheduled" | "realtime"
|
|
153
|
+
"interval_minutes": 15, // scheduled only
|
|
154
|
+
"trigger_name": "sked-int-…", // set by the SDK on activate
|
|
155
|
+
"trigger_type": "webhook" // "webhook" | "triggered_action"
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
The **strategy** only says *when* a flow fires; **direction** (`sourceSystem === 'skedulo'` ⇒ outbound) decides push vs pull:
|
|
161
|
+
|
|
162
|
+
| Strategy | Direction | PSS artifact | Dispatched action |
|
|
163
|
+
|---|---|---|---|
|
|
164
|
+
| `scheduled` | outbound (Skedulo → vendor) | scheduled webhook | `sync.push` |
|
|
165
|
+
| `scheduled` | inbound (vendor → Skedulo) | scheduled webhook | `sync.scheduled-pull` |
|
|
166
|
+
| `realtime` | outbound (Skedulo → vendor on record change) | triggered action | `event.on-skedulo` |
|
|
167
|
+
|
|
168
|
+
Narrow a raw `triggerConfig` with `asSyncConfig(triggerConfig)` → `SyncConfig | null` rather than reading the JSONB directly.
|
|
169
|
+
|
|
170
|
+
The SDK owns the lifecycle of the Skedulo-side artifact for each flow, provisioned through the PSS `ArtifactClient` (`ArtifactType.WEBHOOK` / `TRIGGERED_ACTION`). On `dataFlow.activate` it creates the appropriate webhook or triggered action and records its name/type in `sync_config`; on `dataFlow.deactivate` it deletes the artifact and clears those fields. Both are **two-phase fail-closed**: the artifact is provisioned first, then the IS record is updated, with compensating cleanup if the second phase fails — so an active flow always has its artifact and a deactivated flow never does.
|
|
171
|
+
|
|
172
|
+
Each artifact is named deterministically:
|
|
173
|
+
|
|
174
|
+
```
|
|
175
|
+
sked-int-<integrationType>-<sourceObject>-to-<targetObject>-flow<id>
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
The name is used as an idempotency key, capped at 100 characters (the SDK throws rather than truncating silently), and lets operators correlate artifacts back to flows. The callback URL baked into each artifact is `{{ SKEDULO_API_URL }}/function/<type>/<type>` — the platform substitutes the tenant API host when the artifact fires.
|
|
179
|
+
|
|
180
|
+
See [docs/DATA-FLOW-LIFECYCLE.md](./docs/DATA-FLOW-LIFECYCLE.md) for the full activate/deactivate flow.
|
|
181
|
+
|
|
83
182
|
## Development
|
|
84
183
|
|
|
85
184
|
```bash
|
|
@@ -95,6 +194,7 @@ yarn format # Format all src/ and test/ files with Prettier
|
|
|
95
194
|
| Doc | What it covers |
|
|
96
195
|
|---|---|
|
|
97
196
|
| [docs/ADAPTERS.md](./docs/ADAPTERS.md) | Adapter roles, lifecycle hooks, BaseAdapter, implementation guide |
|
|
197
|
+
| [docs/DATA-FLOW-LIFECYCLE.md](./docs/DATA-FLOW-LIFECYCLE.md) | activate/deactivate, `sync_config` shape, artifact provisioning |
|
|
98
198
|
| [docs/SYNC-PIPELINE.md](./docs/SYNC-PIPELINE.md) | Batch and event-driven sync, pipeline state, error capture |
|
|
99
199
|
| [docs/ARCHITECTURE.md](./docs/ARCHITECTURE.md) | Module map, design decisions, key concepts |
|
|
100
200
|
| [docs/FIELD-MAPPINGS.md](./docs/FIELD-MAPPINGS.md) | Transform types, MappingConfig format, validation |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Adapter } from '../interfaces/adapter.interface';
|
|
2
|
+
import type { AdapterRegistry } from '../adapters/adapter-registry';
|
|
3
|
+
import type { Action, ActionRegistry } from './utils/types';
|
|
4
|
+
export interface BuildActionRegistryDeps {
|
|
5
|
+
adapter: Adapter;
|
|
6
|
+
registry: AdapterRegistry;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Build the default action registry for a tenant integration function.
|
|
10
|
+
* Groups by dependency shape: vendor pass-through (adapter only), Skedulo
|
|
11
|
+
* bootstrap, sync/event (need source/target lookup via registry), and SDK
|
|
12
|
+
* orchestration (context-only).
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildActionRegistry({ adapter, registry, }: BuildActionRegistryDeps): ActionRegistry;
|
|
15
|
+
/** Build a Map from a list of actions, rejecting duplicate names. */
|
|
16
|
+
export declare function registerActions(actions: ReadonlyArray<Action<any, any>>): ActionRegistry;
|
|
17
|
+
//# sourceMappingURL=action-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-registry.d.ts","sourceRoot":"","sources":["../../src/actions/action-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AA0BpE,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE5D,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,QAAQ,GACT,EAAE,uBAAuB,GAAG,cAAc,CA8B1C;AAED,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,cAAc,CAOxF"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildActionRegistry = buildActionRegistry;
|
|
4
|
+
exports.registerActions = registerActions;
|
|
5
|
+
const capabilities_action_1 = require("./capabilities.action");
|
|
6
|
+
const setup_action_1 = require("./setup.action");
|
|
7
|
+
const metadata_action_1 = require("./metadata.action");
|
|
8
|
+
const sync_action_1 = require("./sync.action");
|
|
9
|
+
const event_action_1 = require("./event.action");
|
|
10
|
+
const data_flow_action_1 = require("./data-flow.action");
|
|
11
|
+
/**
|
|
12
|
+
* Build the default action registry for a tenant integration function.
|
|
13
|
+
* Groups by dependency shape: vendor pass-through (adapter only), Skedulo
|
|
14
|
+
* bootstrap, sync/event (need source/target lookup via registry), and SDK
|
|
15
|
+
* orchestration (context-only).
|
|
16
|
+
*/
|
|
17
|
+
function buildActionRegistry({ adapter, registry, }) {
|
|
18
|
+
const syncDeps = { adapter, registry };
|
|
19
|
+
return registerActions([
|
|
20
|
+
// Vendor pass-through — adapter only.
|
|
21
|
+
(0, capabilities_action_1.makeCapabilitiesAction)(adapter),
|
|
22
|
+
(0, metadata_action_1.makeGetObjectsAction)(adapter),
|
|
23
|
+
(0, metadata_action_1.makeGetFieldsAction)(adapter),
|
|
24
|
+
(0, metadata_action_1.makeGetTemplatesAction)(adapter),
|
|
25
|
+
(0, metadata_action_1.makeGetSampleApisAction)(adapter),
|
|
26
|
+
(0, metadata_action_1.makeGetSampleRecordsAction)(adapter),
|
|
27
|
+
// Skedulo bootstrap.
|
|
28
|
+
(0, setup_action_1.makeSetupStatusAction)(),
|
|
29
|
+
(0, setup_action_1.makeSetupCreateAction)(adapter),
|
|
30
|
+
// Sync + event — need source/target lookup via registry.
|
|
31
|
+
(0, sync_action_1.makePushAction)(syncDeps),
|
|
32
|
+
(0, sync_action_1.makeScheduledPullAction)(syncDeps),
|
|
33
|
+
(0, sync_action_1.makeRunFlowAction)(syncDeps),
|
|
34
|
+
(0, sync_action_1.makeRunAllFlowsAction)(syncDeps),
|
|
35
|
+
(0, event_action_1.makeOnSkeduloEventAction)(syncDeps),
|
|
36
|
+
(0, event_action_1.makeOnVendorEventAction)(syncDeps),
|
|
37
|
+
// SDK orchestration — context-only.
|
|
38
|
+
(0, data_flow_action_1.makeDataFlowCreateAction)(),
|
|
39
|
+
(0, data_flow_action_1.makeDataFlowUpdateAction)(),
|
|
40
|
+
(0, data_flow_action_1.makeDataFlowDeleteAction)(),
|
|
41
|
+
(0, data_flow_action_1.makeDataFlowActivateAction)(),
|
|
42
|
+
(0, data_flow_action_1.makeDataFlowDeactivateAction)(),
|
|
43
|
+
(0, data_flow_action_1.makeDataFlowGetAction)(),
|
|
44
|
+
(0, data_flow_action_1.makeDataFlowListAction)(),
|
|
45
|
+
]);
|
|
46
|
+
}
|
|
47
|
+
/** Build a Map from a list of actions, rejecting duplicate names. */
|
|
48
|
+
function registerActions(actions) {
|
|
49
|
+
const r = new Map();
|
|
50
|
+
for (const a of actions) {
|
|
51
|
+
if (r.has(a.name))
|
|
52
|
+
throw new Error(`Action already registered: ${a.name}`);
|
|
53
|
+
r.set(a.name, a);
|
|
54
|
+
}
|
|
55
|
+
return r;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=action-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-registry.js","sourceRoot":"","sources":["../../src/actions/action-registry.ts"],"names":[],"mappings":";;AAwCA,kDAiCC;AAGD,0CAOC;AAjFD,+DAA+D;AAC/D,iDAA8E;AAC9E,uDAM2B;AAC3B,+CAKuB;AACvB,iDAAmF;AACnF,yDAQ4B;AAQ5B;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,QAAQ,GACgB;IACxB,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAEvC,OAAO,eAAe,CAAC;QACrB,sCAAsC;QACtC,IAAA,4CAAsB,EAAC,OAAO,CAAC;QAC/B,IAAA,sCAAoB,EAAC,OAAO,CAAC;QAC7B,IAAA,qCAAmB,EAAC,OAAO,CAAC;QAC5B,IAAA,wCAAsB,EAAC,OAAO,CAAC;QAC/B,IAAA,yCAAuB,EAAC,OAAO,CAAC;QAChC,IAAA,4CAA0B,EAAC,OAAO,CAAC;QACnC,qBAAqB;QACrB,IAAA,oCAAqB,GAAE;QACvB,IAAA,oCAAqB,EAAC,OAAO,CAAC;QAC9B,yDAAyD;QACzD,IAAA,4BAAc,EAAC,QAAQ,CAAC;QACxB,IAAA,qCAAuB,EAAC,QAAQ,CAAC;QACjC,IAAA,+BAAiB,EAAC,QAAQ,CAAC;QAC3B,IAAA,mCAAqB,EAAC,QAAQ,CAAC;QAC/B,IAAA,uCAAwB,EAAC,QAAQ,CAAC;QAClC,IAAA,sCAAuB,EAAC,QAAQ,CAAC;QACjC,oCAAoC;QACpC,IAAA,2CAAwB,GAAE;QAC1B,IAAA,2CAAwB,GAAE;QAC1B,IAAA,2CAAwB,GAAE;QAC1B,IAAA,6CAA0B,GAAE;QAC5B,IAAA,+CAA4B,GAAE;QAC9B,IAAA,wCAAqB,GAAE;QACvB,IAAA,yCAAsB,GAAE;KACzB,CAAC,CAAC;AACL,CAAC;AAED,qEAAqE;AACrE,SAAgB,eAAe,CAAC,OAAwC;IACtE,MAAM,CAAC,GAAmB,IAAI,GAAG,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Adapter, AdapterCapabilities } from '../interfaces/adapter.interface';
|
|
2
|
+
import type { Action } from './utils/types';
|
|
3
|
+
export type CapabilitiesInput = void;
|
|
4
|
+
export type CapabilitiesOutput = AdapterCapabilities;
|
|
5
|
+
export declare function makeCapabilitiesAction(adapter: Adapter): Action<CapabilitiesInput, CapabilitiesOutput>;
|
|
6
|
+
//# sourceMappingURL=capabilities.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.action.d.ts","sourceRoot":"","sources":["../../src/actions/capabilities.action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGpF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC;AACrC,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAErD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,GACf,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAU/C"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeCapabilitiesAction = makeCapabilitiesAction;
|
|
4
|
+
const capabilities_defaults_1 = require("../adapters/capabilities-defaults");
|
|
5
|
+
const action_names_1 = require("./utils/action-names");
|
|
6
|
+
function makeCapabilitiesAction(adapter) {
|
|
7
|
+
return {
|
|
8
|
+
name: action_names_1.ACTIONS.capabilities,
|
|
9
|
+
parseInput() {
|
|
10
|
+
return undefined;
|
|
11
|
+
},
|
|
12
|
+
async handler() {
|
|
13
|
+
return (0, capabilities_defaults_1.resolveCapabilities)(adapter);
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=capabilities.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.action.js","sourceRoot":"","sources":["../../src/actions/capabilities.action.ts"],"names":[],"mappings":";;AAQA,wDAYC;AAnBD,6EAAwE;AACxE,uDAA+C;AAM/C,SAAgB,sBAAsB,CACpC,OAAgB;IAEhB,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,YAAY;QAC1B,UAAU;YACR,OAAO,SAA8B,CAAC;QACxC,CAAC;QACD,KAAK,CAAC,OAAO;YACX,OAAO,IAAA,2CAAmB,EAAC,OAAO,CAAC,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { CreateDataFlowInput, DataFlowListParams, UpdateDataFlowPatch } from '../clients/dataflow.client';
|
|
2
|
+
import { type DataFlow } from '../interfaces/data-flow-spec.interface';
|
|
3
|
+
import type { Action } from './utils/types';
|
|
4
|
+
/**
|
|
5
|
+
* Create a new data flow. New flows start INACTIVE per IS schema — no ES
|
|
6
|
+
* artifact is created here. Call `data-flow.activate` to provision the ES side.
|
|
7
|
+
*/
|
|
8
|
+
export declare function makeDataFlowCreateAction(): Action<CreateDataFlowInput, DataFlow>;
|
|
9
|
+
export interface DataFlowUpdateInput {
|
|
10
|
+
id: number;
|
|
11
|
+
patch: UpdateDataFlowPatch;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Update an existing data flow.
|
|
15
|
+
*
|
|
16
|
+
* Constraints (business rules):
|
|
17
|
+
* - `sourceSystem` / `targetSystem` (direction) are immutable after create.
|
|
18
|
+
* Reject with `DIRECTION_IS_IMMUTABLE`.
|
|
19
|
+
* - If the flow is currently ACTIVE (its `sync_config` carries a
|
|
20
|
+
* `trigger_name`) AND the patch changes `strategy` or `interval_minutes`,
|
|
21
|
+
* the artifact would need to be recreated. v1 requires the caller to
|
|
22
|
+
* deactivate first and rejects with `DEACTIVATE_BEFORE_STRATEGY_CHANGE`.
|
|
23
|
+
*/
|
|
24
|
+
export declare function makeDataFlowUpdateAction(): Action<DataFlowUpdateInput, DataFlow>;
|
|
25
|
+
export interface DataFlowDeleteInput {
|
|
26
|
+
id: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Delete a data flow. If currently ACTIVE (has a provisioned artifact),
|
|
30
|
+
* deactivate first so the artifact is cleaned up, then delete from IS.
|
|
31
|
+
*/
|
|
32
|
+
export declare function makeDataFlowDeleteAction(): Action<DataFlowDeleteInput, {
|
|
33
|
+
id: number;
|
|
34
|
+
}>;
|
|
35
|
+
export interface DataFlowActivateInput {
|
|
36
|
+
id: number;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Activate a data flow. Two-phase fail-closed: ES artifact created first,
|
|
40
|
+
* then IS PATCH; if PATCH fails the ES artifact is compensatingly deleted.
|
|
41
|
+
* See `DataFlowService.activate` for full semantics.
|
|
42
|
+
*/
|
|
43
|
+
export declare function makeDataFlowActivateAction(): Action<DataFlowActivateInput, DataFlow>;
|
|
44
|
+
export interface DataFlowDeactivateInput {
|
|
45
|
+
id: number;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Deactivate a data flow. Deletes the artifact (404 = success) and clears
|
|
49
|
+
* `trigger_name`/`trigger_type` from `sync_config` in IS.
|
|
50
|
+
*/
|
|
51
|
+
export declare function makeDataFlowDeactivateAction(): Action<DataFlowDeactivateInput, DataFlow>;
|
|
52
|
+
export interface DataFlowGetInput {
|
|
53
|
+
id: number;
|
|
54
|
+
}
|
|
55
|
+
export declare function makeDataFlowGetAction(): Action<DataFlowGetInput, DataFlow>;
|
|
56
|
+
export interface DataFlowListInput {
|
|
57
|
+
filter?: DataFlowListParams;
|
|
58
|
+
}
|
|
59
|
+
export declare function makeDataFlowListAction(): Action<DataFlowListInput, Array<{
|
|
60
|
+
id: number;
|
|
61
|
+
}>>;
|
|
62
|
+
//# sourceMappingURL=data-flow.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-flow.action.d.ts","sourceRoot":"","sources":["../../src/actions/data-flow.action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGrF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAmD5C;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAUhF;AAID,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAcD;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CA+ChF;AAID,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,mBAAmB,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,CAmBtF;AAID,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAUpF;AAID,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAUxF;AAID,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAc1E;AAID,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAiBzF"}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeDataFlowCreateAction = makeDataFlowCreateAction;
|
|
4
|
+
exports.makeDataFlowUpdateAction = makeDataFlowUpdateAction;
|
|
5
|
+
exports.makeDataFlowDeleteAction = makeDataFlowDeleteAction;
|
|
6
|
+
exports.makeDataFlowActivateAction = makeDataFlowActivateAction;
|
|
7
|
+
exports.makeDataFlowDeactivateAction = makeDataFlowDeactivateAction;
|
|
8
|
+
exports.makeDataFlowGetAction = makeDataFlowGetAction;
|
|
9
|
+
exports.makeDataFlowListAction = makeDataFlowListAction;
|
|
10
|
+
const data_flow_spec_interface_1 = require("../interfaces/data-flow-spec.interface");
|
|
11
|
+
const action_names_1 = require("./utils/action-names");
|
|
12
|
+
const errors_1 = require("./utils/errors");
|
|
13
|
+
function isNonEmptyString(v) {
|
|
14
|
+
return typeof v === 'string' && v.length > 0;
|
|
15
|
+
}
|
|
16
|
+
function parseId(raw) {
|
|
17
|
+
const obj = (raw !== null && raw !== void 0 ? raw : {});
|
|
18
|
+
if (!Number.isInteger(obj.id) || obj.id <= 0) {
|
|
19
|
+
throw new errors_1.InvalidInputError('id must be a positive integer');
|
|
20
|
+
}
|
|
21
|
+
return obj.id;
|
|
22
|
+
}
|
|
23
|
+
// ── data-flow.create ─────────────────────────────────────────────────────────
|
|
24
|
+
function parseCreateInput(raw) {
|
|
25
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
26
|
+
const obj = (raw !== null && raw !== void 0 ? raw : {});
|
|
27
|
+
const { name, sourceObject, targetObject, matchKeyField } = obj;
|
|
28
|
+
if (!isNonEmptyString(name)) {
|
|
29
|
+
throw new errors_1.InvalidInputError('name must be a non-empty string');
|
|
30
|
+
}
|
|
31
|
+
if (!isNonEmptyString(sourceObject)) {
|
|
32
|
+
throw new errors_1.InvalidInputError('sourceObject must be a non-empty string');
|
|
33
|
+
}
|
|
34
|
+
if (!isNonEmptyString(targetObject)) {
|
|
35
|
+
throw new errors_1.InvalidInputError('targetObject must be a non-empty string');
|
|
36
|
+
}
|
|
37
|
+
if (!isNonEmptyString(matchKeyField)) {
|
|
38
|
+
throw new errors_1.InvalidInputError('matchKeyField must be a non-empty string');
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
// Authoritative integrationType is injected by the handler from context;
|
|
42
|
+
// placeholder here keeps the parsed shape well-typed.
|
|
43
|
+
integrationType: '',
|
|
44
|
+
name,
|
|
45
|
+
description: (_a = obj.description) !== null && _a !== void 0 ? _a : null,
|
|
46
|
+
sourceSystem: (_b = obj.sourceSystem) !== null && _b !== void 0 ? _b : null,
|
|
47
|
+
targetSystem: (_c = obj.targetSystem) !== null && _c !== void 0 ? _c : null,
|
|
48
|
+
sourceObject,
|
|
49
|
+
targetObject,
|
|
50
|
+
triggerConfig: (_d = obj.triggerConfig) !== null && _d !== void 0 ? _d : null,
|
|
51
|
+
mappingConfig: (_e = obj.mappingConfig) !== null && _e !== void 0 ? _e : null,
|
|
52
|
+
filter: (_f = obj.filter) !== null && _f !== void 0 ? _f : null,
|
|
53
|
+
matchKeyField,
|
|
54
|
+
executionOrder: (_g = obj.executionOrder) !== null && _g !== void 0 ? _g : null,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Create a new data flow. New flows start INACTIVE per IS schema — no ES
|
|
59
|
+
* artifact is created here. Call `data-flow.activate` to provision the ES side.
|
|
60
|
+
*/
|
|
61
|
+
function makeDataFlowCreateAction() {
|
|
62
|
+
return {
|
|
63
|
+
name: action_names_1.ACTIONS.dataFlow.create,
|
|
64
|
+
parseInput: parseCreateInput,
|
|
65
|
+
async handler(input, ctx) {
|
|
66
|
+
// IS resolves tenantIntegrationId from integrationType + tenantId (token);
|
|
67
|
+
// take integrationType authoritatively from this function's context.
|
|
68
|
+
return ctx.dataFlowService.create(Object.assign(Object.assign({}, input), { integrationType: ctx.integrationType }));
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
function parseUpdateInput(raw) {
|
|
73
|
+
const obj = (raw !== null && raw !== void 0 ? raw : {});
|
|
74
|
+
const { id, patch } = obj;
|
|
75
|
+
if (!Number.isInteger(id) || id <= 0) {
|
|
76
|
+
throw new errors_1.InvalidInputError('id must be a positive integer');
|
|
77
|
+
}
|
|
78
|
+
if (!patch || typeof patch !== 'object') {
|
|
79
|
+
throw new errors_1.InvalidInputError('patch must be an object');
|
|
80
|
+
}
|
|
81
|
+
return { id: id, patch: patch };
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Update an existing data flow.
|
|
85
|
+
*
|
|
86
|
+
* Constraints (business rules):
|
|
87
|
+
* - `sourceSystem` / `targetSystem` (direction) are immutable after create.
|
|
88
|
+
* Reject with `DIRECTION_IS_IMMUTABLE`.
|
|
89
|
+
* - If the flow is currently ACTIVE (its `sync_config` carries a
|
|
90
|
+
* `trigger_name`) AND the patch changes `strategy` or `interval_minutes`,
|
|
91
|
+
* the artifact would need to be recreated. v1 requires the caller to
|
|
92
|
+
* deactivate first and rejects with `DEACTIVATE_BEFORE_STRATEGY_CHANGE`.
|
|
93
|
+
*/
|
|
94
|
+
function makeDataFlowUpdateAction() {
|
|
95
|
+
return {
|
|
96
|
+
name: action_names_1.ACTIONS.dataFlow.update,
|
|
97
|
+
parseInput: parseUpdateInput,
|
|
98
|
+
async handler(input, ctx) {
|
|
99
|
+
var _a;
|
|
100
|
+
const { id, patch } = input;
|
|
101
|
+
const patchRecord = patch;
|
|
102
|
+
if (Object.prototype.hasOwnProperty.call(patchRecord, 'sourceSystem') ||
|
|
103
|
+
Object.prototype.hasOwnProperty.call(patchRecord, 'targetSystem')) {
|
|
104
|
+
throw new errors_1.ActionError('DIRECTION_IS_IMMUTABLE', 'Direction is locked after creation. To change direction, delete this flow and create a new one.');
|
|
105
|
+
}
|
|
106
|
+
const incomingTrigger = patch.triggerConfig;
|
|
107
|
+
if (incomingTrigger) {
|
|
108
|
+
const incoming = (0, data_flow_spec_interface_1.asSyncConfig)(incomingTrigger);
|
|
109
|
+
if (incoming) {
|
|
110
|
+
const flow = await ctx.dataFlowService.getFlowById(id);
|
|
111
|
+
if (!flow) {
|
|
112
|
+
throw new errors_1.ActionError('FLOW_NOT_FOUND', `Flow ${id} not found`);
|
|
113
|
+
}
|
|
114
|
+
// Normalize both sides so a legacy-shaped DB row compares correctly
|
|
115
|
+
// against the new-shaped patch.
|
|
116
|
+
const existing = (0, data_flow_spec_interface_1.asSyncConfig)((_a = flow.triggerConfig) !== null && _a !== void 0 ? _a : null);
|
|
117
|
+
const isActive = !!(existing === null || existing === void 0 ? void 0 : existing.trigger_name);
|
|
118
|
+
if (isActive && existing) {
|
|
119
|
+
const stratChanged = incoming.strategy !== existing.strategy;
|
|
120
|
+
const intervalChanged = incoming.interval_minutes !== undefined &&
|
|
121
|
+
incoming.interval_minutes !== existing.interval_minutes;
|
|
122
|
+
if (stratChanged || intervalChanged) {
|
|
123
|
+
throw new errors_1.ActionError('DEACTIVATE_BEFORE_STRATEGY_CHANGE', 'Deactivate the flow before changing strategy or interval_minutes');
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return ctx.dataFlowService.update(id, patch);
|
|
129
|
+
},
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Delete a data flow. If currently ACTIVE (has a provisioned artifact),
|
|
134
|
+
* deactivate first so the artifact is cleaned up, then delete from IS.
|
|
135
|
+
*/
|
|
136
|
+
function makeDataFlowDeleteAction() {
|
|
137
|
+
return {
|
|
138
|
+
name: action_names_1.ACTIONS.dataFlow.delete,
|
|
139
|
+
parseInput(raw) {
|
|
140
|
+
return { id: parseId(raw) };
|
|
141
|
+
},
|
|
142
|
+
async handler(input, ctx) {
|
|
143
|
+
var _a;
|
|
144
|
+
const flow = await ctx.dataFlowService.getFlowById(input.id);
|
|
145
|
+
if (!flow) {
|
|
146
|
+
throw new errors_1.ActionError('FLOW_NOT_FOUND', `Flow ${input.id} not found`);
|
|
147
|
+
}
|
|
148
|
+
const sc = (0, data_flow_spec_interface_1.asSyncConfig)((_a = flow.triggerConfig) !== null && _a !== void 0 ? _a : null);
|
|
149
|
+
if (sc === null || sc === void 0 ? void 0 : sc.trigger_name) {
|
|
150
|
+
await ctx.dataFlowService.deactivate(input.id, ctx);
|
|
151
|
+
}
|
|
152
|
+
await ctx.dataFlowService.delete(input.id);
|
|
153
|
+
return { id: input.id };
|
|
154
|
+
},
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Activate a data flow. Two-phase fail-closed: ES artifact created first,
|
|
159
|
+
* then IS PATCH; if PATCH fails the ES artifact is compensatingly deleted.
|
|
160
|
+
* See `DataFlowService.activate` for full semantics.
|
|
161
|
+
*/
|
|
162
|
+
function makeDataFlowActivateAction() {
|
|
163
|
+
return {
|
|
164
|
+
name: action_names_1.ACTIONS.dataFlow.activate,
|
|
165
|
+
parseInput(raw) {
|
|
166
|
+
return { id: parseId(raw) };
|
|
167
|
+
},
|
|
168
|
+
async handler(input, ctx) {
|
|
169
|
+
return ctx.dataFlowService.activate(input.id, ctx);
|
|
170
|
+
},
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Deactivate a data flow. Deletes the artifact (404 = success) and clears
|
|
175
|
+
* `trigger_name`/`trigger_type` from `sync_config` in IS.
|
|
176
|
+
*/
|
|
177
|
+
function makeDataFlowDeactivateAction() {
|
|
178
|
+
return {
|
|
179
|
+
name: action_names_1.ACTIONS.dataFlow.deactivate,
|
|
180
|
+
parseInput(raw) {
|
|
181
|
+
return { id: parseId(raw) };
|
|
182
|
+
},
|
|
183
|
+
async handler(input, ctx) {
|
|
184
|
+
return ctx.dataFlowService.deactivate(input.id, ctx);
|
|
185
|
+
},
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
function makeDataFlowGetAction() {
|
|
189
|
+
return {
|
|
190
|
+
name: action_names_1.ACTIONS.dataFlow.get,
|
|
191
|
+
parseInput(raw) {
|
|
192
|
+
return { id: parseId(raw) };
|
|
193
|
+
},
|
|
194
|
+
async handler(input, ctx) {
|
|
195
|
+
const flow = await ctx.dataFlowService.getFlowById(input.id);
|
|
196
|
+
if (!flow) {
|
|
197
|
+
throw new errors_1.ActionError('FLOW_NOT_FOUND', `Flow ${input.id} not found`);
|
|
198
|
+
}
|
|
199
|
+
return flow;
|
|
200
|
+
},
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
function makeDataFlowListAction() {
|
|
204
|
+
return {
|
|
205
|
+
name: action_names_1.ACTIONS.dataFlow.list,
|
|
206
|
+
parseInput(raw) {
|
|
207
|
+
const obj = (raw !== null && raw !== void 0 ? raw : {});
|
|
208
|
+
const filter = obj.filter;
|
|
209
|
+
if (filter !== undefined && (filter === null || typeof filter !== 'object')) {
|
|
210
|
+
throw new errors_1.InvalidInputError('filter must be an object when provided');
|
|
211
|
+
}
|
|
212
|
+
return { filter: filter };
|
|
213
|
+
},
|
|
214
|
+
async handler(input, ctx) {
|
|
215
|
+
// Scope to this function's own integration type so a vendor function
|
|
216
|
+
// never lists another vendor's flows.
|
|
217
|
+
return ctx.dataFlowService.list(Object.assign(Object.assign({}, input.filter), { integrationType: ctx.integrationType }));
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
//# sourceMappingURL=data-flow.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-flow.action.js","sourceRoot":"","sources":["../../src/actions/data-flow.action.ts"],"names":[],"mappings":";;AA+DA,4DAUC;AAgCD,4DA+CC;AAYD,4DAmBC;AAaD,gEAUC;AAYD,oEAUC;AAQD,sDAcC;AAQD,wDAiBC;AA9QD,qFAAqF;AACrF,uDAA+C;AAC/C,2CAAgE;AAGhE,SAAS,gBAAgB,CAAC,CAAU;IAClC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,OAAO,CAAC,GAAY;IAC3B,MAAM,GAAG,GAAG,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,CAA4B,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,IAAK,GAAG,CAAC,EAAa,IAAI,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,0BAAiB,CAAC,+BAA+B,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,GAAG,CAAC,EAAY,CAAC;AAC1B,CAAC;AAED,gFAAgF;AAEhF,SAAS,gBAAgB,CAAC,GAAY;;IACpC,MAAM,GAAG,GAAG,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,CAA4B,CAAC;IACnD,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC;IAEhE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,0BAAiB,CAAC,iCAAiC,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,0BAAiB,CAAC,yCAAyC,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,0BAAiB,CAAC,yCAAyC,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,0BAAiB,CAAC,0CAA0C,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO;QACL,yEAAyE;QACzE,sDAAsD;QACtD,eAAe,EAAE,EAAE;QACnB,IAAI;QACJ,WAAW,EAAE,MAAC,GAAG,CAAC,WAAyC,mCAAI,IAAI;QACnE,YAAY,EAAE,MAAC,GAAG,CAAC,YAA0C,mCAAI,IAAI;QACrE,YAAY,EAAE,MAAC,GAAG,CAAC,YAA0C,mCAAI,IAAI;QACrE,YAAY;QACZ,YAAY;QACZ,aAAa,EAAE,MAAC,GAAG,CAAC,aAA4D,mCAAI,IAAI;QACxF,aAAa,EAAE,MAAC,GAAG,CAAC,aAAsD,mCAAI,IAAI;QAClF,MAAM,EAAE,MAAC,GAAG,CAAC,MAAwC,mCAAI,IAAI;QAC7D,aAAa;QACb,cAAc,EAAE,MAAC,GAAG,CAAC,cAA4C,mCAAI,IAAI;KAC1E,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,wBAAwB;IACtC,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,gBAAgB;QAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;YACtB,2EAA2E;YAC3E,qEAAqE;YACrE,OAAO,GAAG,CAAC,eAAe,CAAC,MAAM,iCAAM,KAAK,KAAE,eAAe,EAAE,GAAG,CAAC,eAAe,IAAG,CAAC;QACxF,CAAC;KACF,CAAC;AACJ,CAAC;AASD,SAAS,gBAAgB,CAAC,GAAY;IACpC,MAAM,GAAG,GAAG,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,CAA4B,CAAC;IACnD,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAK,EAAa,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,0BAAiB,CAAC,+BAA+B,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,IAAI,0BAAiB,CAAC,yBAAyB,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,EAAY,EAAE,KAAK,EAAE,KAA4B,EAAE,CAAC;AACnE,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,wBAAwB;IACtC,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,gBAAgB;QAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;;YACtB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;YAC5B,MAAM,WAAW,GAAG,KAAgC,CAAC;YACrD,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC;gBACjE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EACjE,CAAC;gBACD,MAAM,IAAI,oBAAW,CACnB,wBAAwB,EACxB,iGAAiG,CAClG,CAAC;YACJ,CAAC;YAED,MAAM,eAAe,GAAG,KAAK,CAAC,aAAoD,CAAC;YACnF,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,QAAQ,GAAG,IAAA,uCAAY,EAAC,eAAe,CAAC,CAAC;gBAC/C,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;oBACvD,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,MAAM,IAAI,oBAAW,CAAC,gBAAgB,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;oBAClE,CAAC;oBACD,oEAAoE;oBACpE,gCAAgC;oBAChC,MAAM,QAAQ,GAAG,IAAA,uCAAY,EAAC,MAAA,IAAI,CAAC,aAAa,mCAAI,IAAI,CAAC,CAAC;oBAC1D,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,CAAA,CAAC;oBAC1C,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;wBACzB,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAAC;wBAC7D,MAAM,eAAe,GACnB,QAAQ,CAAC,gBAAgB,KAAK,SAAS;4BACvC,QAAQ,CAAC,gBAAgB,KAAK,QAAQ,CAAC,gBAAgB,CAAC;wBAC1D,IAAI,YAAY,IAAI,eAAe,EAAE,CAAC;4BACpC,MAAM,IAAI,oBAAW,CACnB,mCAAmC,EACnC,kEAAkE,CACnE,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;KACF,CAAC;AACJ,CAAC;AAQD;;;GAGG;AACH,SAAgB,wBAAwB;IACtC,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,MAAM;QAC7B,UAAU,CAAC,GAAG;YACZ,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;;YACtB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,oBAAW,CAAC,gBAAgB,EAAE,QAAQ,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;YACxE,CAAC;YACD,MAAM,EAAE,GAAG,IAAA,uCAAY,EAAC,MAAA,IAAI,CAAC,aAAa,mCAAI,IAAI,CAAC,CAAC;YACpD,IAAI,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,YAAY,EAAE,CAAC;gBACrB,MAAM,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;YACD,MAAM,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3C,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC;AAQD;;;;GAIG;AACH,SAAgB,0BAA0B;IACxC,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,QAAQ;QAC/B,UAAU,CAAC,GAAG;YACZ,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;YACtB,OAAO,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;KACF,CAAC;AACJ,CAAC;AAQD;;;GAGG;AACH,SAAgB,4BAA4B;IAC1C,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,UAAU;QACjC,UAAU,CAAC,GAAG;YACZ,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;YACtB,OAAO,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;KACF,CAAC;AACJ,CAAC;AAQD,SAAgB,qBAAqB;IACnC,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,GAAG;QAC1B,UAAU,CAAC,GAAG;YACZ,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;YACtB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,oBAAW,CAAC,gBAAgB,EAAE,QAAQ,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;YACxE,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC;AAQD,SAAgB,sBAAsB;IACpC,OAAO;QACL,IAAI,EAAE,sBAAO,CAAC,QAAQ,CAAC,IAAI;QAC3B,UAAU,CAAC,GAAG;YACZ,MAAM,GAAG,GAAG,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,CAA4B,CAAC;YACnD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;YAC1B,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAC5E,MAAM,IAAI,0BAAiB,CAAC,wCAAwC,CAAC,CAAC;YACxE,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,MAAwC,EAAE,CAAC;QAC9D,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;YACtB,qEAAqE;YACrE,sCAAsC;YACtC,OAAO,GAAG,CAAC,eAAe,CAAC,IAAI,iCAAM,KAAK,CAAC,MAAM,KAAE,eAAe,EAAE,GAAG,CAAC,eAAe,IAAG,CAAC;QAC7F,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Adapter } from '../interfaces/adapter.interface';
|
|
2
|
+
import type { AdapterRegistry } from '../adapters/adapter-registry';
|
|
3
|
+
import type { SyncResult } from '../interfaces/sync-result.interface';
|
|
4
|
+
import type { Action } from './utils/types';
|
|
5
|
+
type EventDeps = {
|
|
6
|
+
adapter: Adapter;
|
|
7
|
+
registry: AdapterRegistry;
|
|
8
|
+
};
|
|
9
|
+
export interface OnSkeduloEventInput {
|
|
10
|
+
skeduloObject: string;
|
|
11
|
+
recordId: string;
|
|
12
|
+
operation: 'INSERT' | 'UPDATE' | 'DELETE';
|
|
13
|
+
payload?: Record<string, unknown>;
|
|
14
|
+
}
|
|
15
|
+
export interface OnSkeduloEventOutput {
|
|
16
|
+
message: string;
|
|
17
|
+
results: SyncResult[];
|
|
18
|
+
}
|
|
19
|
+
export declare function makeOnSkeduloEventAction(deps: EventDeps): Action<OnSkeduloEventInput, OnSkeduloEventOutput>;
|
|
20
|
+
export type OnVendorEventInput = unknown;
|
|
21
|
+
export interface OnVendorEventOutput {
|
|
22
|
+
message: string;
|
|
23
|
+
results: SyncResult[];
|
|
24
|
+
}
|
|
25
|
+
export declare function makeOnVendorEventAction(deps: EventDeps): Action<OnVendorEventInput, OnVendorEventOutput>;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=event.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.action.d.ts","sourceRoot":"","sources":["../../src/actions/event.action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAItE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,KAAK,SAAS,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,eAAe,CAAA;CAAE,CAAC;AAIjE,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AACD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAuDnD;AAID,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;AACzC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CA2CjD"}
|