@pattern-stack/codegen 0.10.1 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +62 -0
- package/README.md +5 -5
- package/consumer-skills/codegen/SKILL.md +2 -2
- package/consumer-skills/{sync → integration}/SKILL.md +29 -29
- package/consumer-skills/{sync → integration}/audit-and-detection.md +22 -22
- package/consumer-skills/{sync → integration}/change-sources-and-sinks.md +60 -60
- package/consumer-skills/subsystems/SKILL.md +8 -8
- package/consumer-skills/subsystems/wiring-and-order.md +7 -7
- package/dist/runtime/base-classes/index.d.ts +4 -4
- package/dist/runtime/base-classes/index.js +35 -35
- package/dist/runtime/base-classes/index.js.map +1 -1
- package/dist/runtime/base-classes/{synced-entity-repository.d.ts → integrated-entity-repository.d.ts} +15 -15
- package/dist/runtime/base-classes/{synced-entity-repository.js → integrated-entity-repository.js} +21 -21
- package/dist/runtime/base-classes/integrated-entity-repository.js.map +1 -0
- package/dist/runtime/base-classes/{synced-entity-service.d.ts → integrated-entity-service.d.ts} +6 -6
- package/dist/runtime/base-classes/{synced-entity-service.js → integrated-entity-service.js} +4 -4
- package/dist/runtime/base-classes/integrated-entity-service.js.map +1 -0
- package/dist/runtime/base-classes/{sync-upsert-config.d.ts → integration-upsert-config.d.ts} +13 -13
- package/dist/runtime/base-classes/integration-upsert-config.js +1 -0
- package/dist/runtime/base-classes/{junction-sync-repository.d.ts → junction-integration-repository.d.ts} +11 -11
- package/dist/runtime/base-classes/{junction-sync-repository.js → junction-integration-repository.js} +15 -15
- package/dist/runtime/base-classes/junction-integration-repository.js.map +1 -0
- package/dist/runtime/subsystems/auth/auth-oauth-state.schema.js.map +1 -1
- package/dist/runtime/subsystems/auth/auth.module.d.ts +4 -4
- package/dist/runtime/subsystems/auth/auth.module.js +3 -3
- package/dist/runtime/subsystems/auth/auth.module.js.map +1 -1
- package/dist/runtime/subsystems/auth/auth.tokens.d.ts +8 -8
- package/dist/runtime/subsystems/auth/auth.tokens.js +6 -6
- package/dist/runtime/subsystems/auth/auth.tokens.js.map +1 -1
- package/dist/runtime/subsystems/auth/backends/state-store.drizzle-backend.js.map +1 -1
- package/dist/runtime/subsystems/auth/controllers/auth.controller.d.ts +2 -2
- package/dist/runtime/subsystems/auth/controllers/auth.controller.js +3 -3
- package/dist/runtime/subsystems/auth/controllers/auth.controller.js.map +1 -1
- package/dist/runtime/subsystems/auth/index.d.ts +3 -3
- package/dist/runtime/subsystems/auth/index.js +40 -40
- package/dist/runtime/subsystems/auth/index.js.map +1 -1
- package/dist/runtime/subsystems/auth/middleware/requester-context.js.map +1 -1
- package/dist/runtime/subsystems/auth/protocols/auth-strategy.d.ts +3 -3
- package/dist/runtime/subsystems/auth/protocols/{integration-store.d.ts → connection-store.d.ts} +20 -20
- package/dist/runtime/subsystems/auth/protocols/connection-store.js +1 -0
- package/dist/runtime/subsystems/auth/protocols/provider-strategy.d.ts +3 -3
- package/dist/runtime/subsystems/auth/runtime/{integration-broken.error.d.ts → connection-broken.error.d.ts} +5 -5
- package/dist/runtime/subsystems/auth/runtime/connection-broken.error.js +19 -0
- package/dist/runtime/subsystems/auth/runtime/connection-broken.error.js.map +1 -0
- package/dist/runtime/subsystems/auth/runtime/oauth2-refresh.strategy.d.ts +10 -10
- package/dist/runtime/subsystems/auth/runtime/oauth2-refresh.strategy.js +28 -28
- package/dist/runtime/subsystems/auth/runtime/oauth2-refresh.strategy.js.map +1 -1
- package/dist/runtime/subsystems/auth/runtime/with-auth-retry.d.ts +1 -1
- package/dist/runtime/subsystems/auth/runtime/with-auth-retry.js +3 -3
- package/dist/runtime/subsystems/auth/runtime/with-auth-retry.js.map +1 -1
- package/dist/runtime/subsystems/index.d.ts +7 -7
- package/dist/runtime/subsystems/index.js +51 -51
- package/dist/runtime/subsystems/index.js.map +1 -1
- package/dist/runtime/subsystems/{sync → integration}/build-change-source.d.ts +3 -3
- package/dist/runtime/subsystems/{sync → integration}/build-change-source.js +3 -3
- package/dist/runtime/subsystems/integration/build-change-source.js.map +1 -0
- package/dist/runtime/subsystems/{sync → integration}/deep-equal.differ.d.ts +2 -2
- package/dist/runtime/subsystems/{sync → integration}/deep-equal.differ.js +1 -1
- package/dist/runtime/subsystems/integration/deep-equal.differ.js.map +1 -0
- package/dist/runtime/subsystems/{sync → integration}/detection-config.schema.d.ts +3 -3
- package/dist/runtime/subsystems/{sync → integration}/detection-config.schema.js +1 -1
- package/dist/runtime/subsystems/integration/detection-config.schema.js.map +1 -0
- package/dist/runtime/subsystems/{sync/execute-sync.use-case.d.ts → integration/execute-integration.use-case.d.ts} +13 -13
- package/dist/runtime/subsystems/{sync/execute-sync.use-case.js → integration/execute-integration.use-case.js} +30 -30
- package/dist/runtime/subsystems/integration/execute-integration.use-case.js.map +1 -0
- package/dist/runtime/subsystems/integration/index.d.ts +28 -0
- package/dist/runtime/subsystems/{sync → integration}/index.js +171 -171
- package/dist/runtime/subsystems/integration/index.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-audit.schema.d.ts → integration/integration-audit.schema.d.ts} +64 -64
- package/dist/runtime/subsystems/{sync/sync-audit.schema.js → integration/integration-audit.schema.js} +47 -47
- package/dist/runtime/subsystems/integration/integration-audit.schema.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-change-source.protocol.d.ts → integration/integration-change-source.protocol.d.ts} +10 -10
- package/dist/runtime/subsystems/integration/integration-change-source.protocol.js +1 -0
- package/dist/runtime/subsystems/{sync/sync-cursor-store.drizzle-backend.d.ts → integration/integration-cursor-store.drizzle-backend.d.ts} +1 -1
- package/dist/runtime/subsystems/{sync/sync-cursor-store.drizzle-backend.js → integration/integration-cursor-store.drizzle-backend.js} +65 -65
- package/dist/runtime/subsystems/integration/integration-cursor-store.drizzle-backend.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-cursor-store.memory-backend.d.ts → integration/integration-cursor-store.memory-backend.d.ts} +6 -6
- package/dist/runtime/subsystems/{sync/sync-cursor-store.memory-backend.js → integration/integration-cursor-store.memory-backend.js} +5 -5
- package/dist/runtime/subsystems/integration/integration-cursor-store.memory-backend.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-cursor-store.protocol.d.ts → integration/integration-cursor-store.protocol.d.ts} +13 -13
- package/dist/runtime/subsystems/integration/integration-cursor-store.protocol.js +1 -0
- package/dist/runtime/subsystems/{sync/sync-errors.d.ts → integration/integration-errors.d.ts} +2 -2
- package/dist/runtime/subsystems/{sync/sync-errors.js → integration/integration-errors.js} +3 -3
- package/dist/runtime/subsystems/integration/integration-errors.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-field-diff.protocol.d.ts → integration/integration-field-diff.protocol.d.ts} +2 -2
- package/dist/runtime/subsystems/{sync/sync-field-diff.protocol.js → integration/integration-field-diff.protocol.js} +2 -2
- package/dist/runtime/subsystems/integration/integration-field-diff.protocol.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-loopback.protocol.d.ts → integration/integration-loopback.protocol.d.ts} +2 -2
- package/dist/runtime/subsystems/integration/integration-loopback.protocol.js +1 -0
- package/dist/runtime/subsystems/{sync/sync-middleware.protocol.d.ts → integration/integration-middleware.protocol.d.ts} +5 -5
- package/dist/runtime/subsystems/integration/integration-middleware.protocol.js +1 -0
- package/dist/runtime/subsystems/{sync/sync-run-recorder.drizzle-backend.d.ts → integration/integration-run-recorder.drizzle-backend.d.ts} +5 -5
- package/dist/runtime/subsystems/{sync/sync-run-recorder.drizzle-backend.js → integration/integration-run-recorder.drizzle-backend.js} +73 -73
- package/dist/runtime/subsystems/integration/integration-run-recorder.drizzle-backend.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-run-recorder.memory-backend.d.ts → integration/integration-run-recorder.memory-backend.d.ts} +15 -15
- package/dist/runtime/subsystems/{sync/sync-run-recorder.memory-backend.js → integration/integration-run-recorder.memory-backend.js} +11 -11
- package/dist/runtime/subsystems/integration/integration-run-recorder.memory-backend.js.map +1 -0
- package/dist/runtime/subsystems/{sync/sync-run-recorder.protocol.d.ts → integration/integration-run-recorder.protocol.d.ts} +25 -25
- package/dist/runtime/subsystems/integration/integration-run-recorder.protocol.js +1 -0
- package/dist/runtime/subsystems/{sync/sync-sink.protocol.d.ts → integration/integration-sink.protocol.d.ts} +5 -5
- package/dist/runtime/subsystems/integration/integration-sink.protocol.js +1 -0
- package/dist/runtime/subsystems/{sync/sync.module.d.ts → integration/integration.module.d.ts} +24 -24
- package/dist/runtime/subsystems/{sync/sync.module.js → integration/integration.module.js} +132 -132
- package/dist/runtime/subsystems/integration/integration.module.js.map +1 -0
- package/dist/runtime/subsystems/integration/integration.tokens.d.ts +47 -0
- package/dist/runtime/subsystems/integration/integration.tokens.js +18 -0
- package/dist/runtime/subsystems/integration/integration.tokens.js.map +1 -0
- package/dist/runtime/subsystems/{sync → integration}/loopback.middleware.d.ts +5 -5
- package/dist/runtime/subsystems/{sync → integration}/loopback.middleware.js +1 -1
- package/dist/runtime/subsystems/integration/loopback.middleware.js.map +1 -0
- package/dist/runtime/subsystems/{sync → integration}/poll-change-source.d.ts +5 -5
- package/dist/runtime/subsystems/{sync → integration}/poll-change-source.js +1 -1
- package/dist/runtime/subsystems/integration/poll-change-source.js.map +1 -0
- package/dist/runtime/subsystems/{sync → integration}/webhook-change-source.d.ts +5 -5
- package/dist/runtime/subsystems/{sync → integration}/webhook-change-source.js +1 -1
- package/dist/runtime/subsystems/integration/webhook-change-source.js.map +1 -0
- package/dist/runtime/subsystems/jobs/job-worker.module.d.ts +1 -1
- package/dist/runtime/subsystems/observability/index.d.ts +4 -4
- package/dist/runtime/subsystems/observability/index.js +11 -11
- package/dist/runtime/subsystems/observability/index.js.map +1 -1
- package/dist/runtime/subsystems/observability/observability.module.d.ts +2 -2
- package/dist/runtime/subsystems/observability/observability.module.js +11 -11
- package/dist/runtime/subsystems/observability/observability.module.js.map +1 -1
- package/dist/runtime/subsystems/observability/observability.protocol.d.ts +11 -11
- package/dist/runtime/subsystems/observability/observability.service.d.ts +6 -6
- package/dist/runtime/subsystems/observability/observability.service.js +11 -11
- package/dist/runtime/subsystems/observability/observability.service.js.map +1 -1
- package/dist/runtime/subsystems/observability/observability.tokens.d.ts +1 -1
- package/dist/runtime/subsystems/observability/observability.tokens.js.map +1 -1
- package/dist/runtime/subsystems/observability/reporters/bridge-metrics.reporter.d.ts +3 -3
- package/dist/runtime/subsystems/observability/reporters/bridge-metrics.reporter.js.map +1 -1
- package/dist/runtime/subsystems/observability/reporters/index.d.ts +3 -3
- package/dist/runtime/subsystems/observability/reporters/index.js.map +1 -1
- package/dist/src/cli/index.js +262 -269
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/index.d.ts +22 -22
- package/dist/src/index.js +191 -191
- package/dist/src/index.js.map +1 -1
- package/examples/auth-integrations/README.md +32 -32
- package/examples/auth-integrations/definitions/entities/{integration.yaml → connection.yaml} +10 -10
- package/examples/auth-integrations/runtime/{integrations/adapters/integration-grant-sink.adapter.ts → connections/adapters/connection-grant-sink.adapter.ts} +7 -7
- package/examples/auth-integrations/runtime/{integrations/adapters/integration-reader.adapter.ts → connections/adapters/connection-reader.adapter.ts} +10 -10
- package/examples/auth-integrations/runtime/{integrations/adapters/integration-token-writer.adapter.ts → connections/adapters/connection-token-writer.adapter.ts} +11 -11
- package/examples/auth-integrations/runtime/connections/connections-auth.module.ts +81 -0
- package/examples/auth-integrations/runtime/{integrations/facade/integrations.service.ts → connections/facade/connections.service.ts} +35 -35
- package/examples/auth-integrations/runtime/{integrations → connections}/oauth/use-cases/create-or-update-from-oauth-grant.use-case.ts +11 -11
- package/examples/auth-integrations/runtime/{integrations/oauth/use-cases/disconnect-integration.use-case.ts → connections/oauth/use-cases/disconnect-connection.use-case.ts} +6 -6
- package/examples/auth-integrations/runtime/connections/oauth/use-cases/list-user-connections.use-case.ts +21 -0
- package/examples/auth-integrations/runtime/connections/oauth/use-cases/mark-connection-requires-reauth.use-case.ts +21 -0
- package/package.json +1 -1
- package/runtime/base-classes/index.ts +8 -8
- package/runtime/base-classes/{synced-entity-repository.ts → integrated-entity-repository.ts} +36 -36
- package/runtime/base-classes/{synced-entity-service.ts → integrated-entity-service.ts} +6 -6
- package/runtime/base-classes/{sync-upsert-config.ts → integration-upsert-config.ts} +12 -12
- package/runtime/base-classes/{junction-sync-repository.ts → junction-integration-repository.ts} +28 -28
- package/runtime/subsystems/auth/auth-oauth-state.schema.ts +1 -1
- package/runtime/subsystems/auth/auth.module.ts +4 -4
- package/runtime/subsystems/auth/auth.tokens.ts +7 -7
- package/runtime/subsystems/auth/controllers/auth.controller.ts +7 -7
- package/runtime/subsystems/auth/index.ts +19 -19
- package/runtime/subsystems/auth/protocols/auth-strategy.ts +3 -3
- package/runtime/subsystems/auth/protocols/{integration-store.ts → connection-store.ts} +19 -19
- package/runtime/subsystems/auth/protocols/provider-strategy.ts +2 -2
- package/runtime/subsystems/auth/runtime/{integration-broken.error.ts → connection-broken.error.ts} +5 -5
- package/runtime/subsystems/auth/runtime/oauth2-refresh.strategy.ts +35 -35
- package/runtime/subsystems/auth/runtime/with-auth-retry.ts +3 -3
- package/runtime/subsystems/index.ts +11 -11
- package/runtime/subsystems/{sync → integration}/build-change-source.ts +3 -3
- package/runtime/subsystems/{sync → integration}/deep-equal.differ.ts +7 -7
- package/runtime/subsystems/{sync → integration}/detection-config.schema.ts +3 -3
- package/runtime/subsystems/{sync/execute-sync.use-case.ts → integration/execute-integration.use-case.ts} +40 -40
- package/runtime/subsystems/{sync → integration}/index.ts +47 -47
- package/runtime/subsystems/{sync/sync-audit.schema.ts → integration/integration-audit.schema.ts} +61 -61
- package/runtime/subsystems/{sync/sync-change-source.protocol.ts → integration/integration-change-source.protocol.ts} +9 -9
- package/runtime/subsystems/{sync/sync-cursor-store.drizzle-backend.ts → integration/integration-cursor-store.drizzle-backend.ts} +30 -30
- package/runtime/subsystems/{sync/sync-cursor-store.memory-backend.ts → integration/integration-cursor-store.memory-backend.ts} +9 -9
- package/runtime/subsystems/{sync/sync-cursor-store.protocol.ts → integration/integration-cursor-store.protocol.ts} +13 -13
- package/runtime/subsystems/{sync/sync-errors.ts → integration/integration-errors.ts} +3 -3
- package/runtime/subsystems/{sync/sync-field-diff.protocol.ts → integration/integration-field-diff.protocol.ts} +2 -2
- package/runtime/subsystems/{sync/sync-loopback.protocol.ts → integration/integration-loopback.protocol.ts} +2 -2
- package/runtime/subsystems/{sync/sync-middleware.protocol.ts → integration/integration-middleware.protocol.ts} +6 -6
- package/runtime/subsystems/{sync/sync-run-recorder.drizzle-backend.ts → integration/integration-run-recorder.drizzle-backend.ts} +39 -39
- package/runtime/subsystems/{sync/sync-run-recorder.memory-backend.ts → integration/integration-run-recorder.memory-backend.ts} +23 -23
- package/runtime/subsystems/{sync/sync-run-recorder.protocol.ts → integration/integration-run-recorder.protocol.ts} +25 -25
- package/runtime/subsystems/{sync/sync-sink.protocol.ts → integration/integration-sink.protocol.ts} +4 -4
- package/runtime/subsystems/{sync/sync.module.ts → integration/integration.module.ts} +48 -48
- package/runtime/subsystems/integration/integration.tokens.ts +49 -0
- package/runtime/subsystems/{sync → integration}/loopback.middleware.ts +5 -5
- package/runtime/subsystems/{sync → integration}/poll-change-source.ts +7 -7
- package/runtime/subsystems/{sync → integration}/webhook-change-source.ts +7 -7
- package/runtime/subsystems/observability/index.ts +1 -1
- package/runtime/subsystems/observability/observability.module.ts +2 -2
- package/runtime/subsystems/observability/observability.protocol.ts +11 -11
- package/runtime/subsystems/observability/observability.service.ts +13 -13
- package/runtime/subsystems/observability/observability.tokens.ts +1 -1
- package/src/patterns/library/index.ts +4 -4
- package/src/patterns/library/{synced.pattern.ts → integrated.pattern.ts} +12 -12
- package/src/patterns/library/junction.pattern.ts +1 -1
- package/src/patterns/pattern-definition.ts +3 -3
- package/templates/entity/new/backend/modules/core/{sync-source.ejs.t → integration-source.ejs.t} +6 -6
- package/templates/entity/new/backend/modules/core/{sync-source.providers.ejs.t → integration-source.providers.ejs.t} +2 -2
- package/templates/entity/new/clean-lite-ps/entity.ejs.t +1 -1
- package/templates/entity/new/clean-lite-ps/module.ejs.t +1 -1
- package/templates/entity/new/clean-lite-ps/prompt-extension.js +33 -33
- package/templates/entity/new/clean-lite-ps/repository.ejs.t +27 -27
- package/templates/entity/new/frontend/collections/collection.ejs.t +26 -1
- package/templates/entity/new/frontend/collections/collections-base.ejs.t +11 -0
- package/templates/entity/new/frontend/entity/combined.ejs.t +31 -1
- package/templates/entity/new/prompt.js +27 -15
- package/templates/junction/new/entity.ejs.t +1 -1
- package/templates/junction/new/prompt.js +24 -24
- package/templates/junction/new/repository.ejs.t +19 -19
- package/templates/subsystem/auth/auth-oauth-state.schema.ejs.t +2 -2
- package/templates/subsystem/auth-config/prompt.js +1 -1
- package/templates/subsystem/auth-integrations/app-module-hook.ejs.t +5 -5
- package/templates/subsystem/bridge/prompt.js +1 -1
- package/templates/subsystem/integration/integration-audit.schema.ejs.t +192 -0
- package/templates/subsystem/{sync → integration}/prompt.js +12 -12
- package/templates/subsystem/{sync-config/codegen-config-sync-block.ejs.t → integration-config/codegen-config-integration-block.ejs.t} +7 -7
- package/templates/subsystem/integration-config/prompt.js +22 -0
- package/templates/subsystem/jobs/worker.ejs.t +2 -2
- package/templates/subsystem/observability/main-hook.ejs.t +1 -1
- package/templates/subsystem/observability/prompt.js +1 -1
- package/templates/subsystem/openapi-config/prompt.js +1 -1
- package/dist/runtime/base-classes/junction-sync-repository.js.map +0 -1
- package/dist/runtime/base-classes/sync-upsert-config.js +0 -1
- package/dist/runtime/base-classes/synced-entity-repository.js.map +0 -1
- package/dist/runtime/base-classes/synced-entity-service.js.map +0 -1
- package/dist/runtime/subsystems/auth/protocols/integration-store.js +0 -1
- package/dist/runtime/subsystems/auth/runtime/integration-broken.error.js +0 -19
- package/dist/runtime/subsystems/auth/runtime/integration-broken.error.js.map +0 -1
- package/dist/runtime/subsystems/sync/build-change-source.js.map +0 -1
- package/dist/runtime/subsystems/sync/deep-equal.differ.js.map +0 -1
- package/dist/runtime/subsystems/sync/detection-config.schema.js.map +0 -1
- package/dist/runtime/subsystems/sync/execute-sync.use-case.js.map +0 -1
- package/dist/runtime/subsystems/sync/index.d.ts +0 -28
- package/dist/runtime/subsystems/sync/index.js.map +0 -1
- package/dist/runtime/subsystems/sync/loopback.middleware.js.map +0 -1
- package/dist/runtime/subsystems/sync/poll-change-source.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-audit.schema.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-change-source.protocol.js +0 -1
- package/dist/runtime/subsystems/sync/sync-cursor-store.drizzle-backend.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-cursor-store.memory-backend.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-cursor-store.protocol.js +0 -1
- package/dist/runtime/subsystems/sync/sync-errors.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-field-diff.protocol.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-loopback.protocol.js +0 -1
- package/dist/runtime/subsystems/sync/sync-middleware.protocol.js +0 -1
- package/dist/runtime/subsystems/sync/sync-run-recorder.drizzle-backend.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-run-recorder.memory-backend.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync-run-recorder.protocol.js +0 -1
- package/dist/runtime/subsystems/sync/sync-sink.protocol.js +0 -1
- package/dist/runtime/subsystems/sync/sync.module.js.map +0 -1
- package/dist/runtime/subsystems/sync/sync.tokens.d.ts +0 -47
- package/dist/runtime/subsystems/sync/sync.tokens.js +0 -18
- package/dist/runtime/subsystems/sync/sync.tokens.js.map +0 -1
- package/dist/runtime/subsystems/sync/webhook-change-source.js.map +0 -1
- package/examples/auth-integrations/runtime/integrations/integrations-auth.module.ts +0 -81
- package/examples/auth-integrations/runtime/integrations/oauth/use-cases/list-user-integrations.use-case.ts +0 -21
- package/examples/auth-integrations/runtime/integrations/oauth/use-cases/mark-integration-requires-reauth.use-case.ts +0 -21
- package/runtime/subsystems/sync/sync.tokens.ts +0 -49
- package/templates/subsystem/sync/sync-audit.schema.ejs.t +0 -192
- package/templates/subsystem/sync-config/prompt.js +0 -22
- /package/dist/runtime/base-classes/{sync-upsert-config.js.map → integration-upsert-config.js.map} +0 -0
- /package/dist/runtime/subsystems/auth/protocols/{integration-store.js.map → connection-store.js.map} +0 -0
- /package/dist/runtime/subsystems/{sync/sync-change-source.protocol.js.map → integration/integration-change-source.protocol.js.map} +0 -0
- /package/dist/runtime/subsystems/{sync/sync-cursor-store.protocol.js.map → integration/integration-cursor-store.protocol.js.map} +0 -0
- /package/dist/runtime/subsystems/{sync/sync-loopback.protocol.js.map → integration/integration-loopback.protocol.js.map} +0 -0
- /package/dist/runtime/subsystems/{sync/sync-middleware.protocol.js.map → integration/integration-middleware.protocol.js.map} +0 -0
- /package/dist/runtime/subsystems/{sync/sync-run-recorder.protocol.js.map → integration/integration-run-recorder.protocol.js.map} +0 -0
- /package/dist/runtime/subsystems/{sync/sync-sink.protocol.js.map → integration/integration-sink.protocol.js.map} +0 -0
|
@@ -4016,23 +4016,23 @@ import { Module as Module6 } from "@nestjs/common";
|
|
|
4016
4016
|
// runtime/subsystems/observability/observability.service.ts
|
|
4017
4017
|
import { Inject as Inject13, Injectable as Injectable14, Optional as Optional7 } from "@nestjs/common";
|
|
4018
4018
|
|
|
4019
|
-
// runtime/subsystems/
|
|
4020
|
-
var
|
|
4021
|
-
var
|
|
4019
|
+
// runtime/subsystems/integration/integration.tokens.ts
|
|
4020
|
+
var INTEGRATION_CURSOR_STORE = "INTEGRATION_CURSOR_STORE";
|
|
4021
|
+
var INTEGRATION_RUN_RECORDER = "INTEGRATION_RUN_RECORDER";
|
|
4022
4022
|
|
|
4023
4023
|
// runtime/subsystems/observability/observability.service.ts
|
|
4024
4024
|
var MAX_TIMELINE_PAGES = 50;
|
|
4025
4025
|
var ObservabilityService = class {
|
|
4026
|
-
constructor(jobRuns2, bridge,
|
|
4026
|
+
constructor(jobRuns2, bridge, integrationRuns, cursors, events) {
|
|
4027
4027
|
this.jobRuns = jobRuns2;
|
|
4028
4028
|
this.bridge = bridge;
|
|
4029
|
-
this.
|
|
4029
|
+
this.integrationRuns = integrationRuns;
|
|
4030
4030
|
this.cursors = cursors;
|
|
4031
4031
|
this.events = events;
|
|
4032
4032
|
}
|
|
4033
4033
|
jobRuns;
|
|
4034
4034
|
bridge;
|
|
4035
|
-
|
|
4035
|
+
integrationRuns;
|
|
4036
4036
|
cursors;
|
|
4037
4037
|
events;
|
|
4038
4038
|
async getPoolDepths(tenantId) {
|
|
@@ -4047,9 +4047,9 @@ var ObservabilityService = class {
|
|
|
4047
4047
|
if (!this.bridge) return { ...ObservabilityService.EMPTY_HISTOGRAM };
|
|
4048
4048
|
return this.bridge.getStatusHistogram(windowHours, tenantId);
|
|
4049
4049
|
}
|
|
4050
|
-
async
|
|
4051
|
-
if (!this.
|
|
4052
|
-
return this.
|
|
4050
|
+
async getRecentIntegrationRuns(limit, subscriptionId, tenantId) {
|
|
4051
|
+
if (!this.integrationRuns) return [];
|
|
4052
|
+
return this.integrationRuns.listRecent(limit, subscriptionId, tenantId);
|
|
4053
4053
|
}
|
|
4054
4054
|
async getCursors(tenantId) {
|
|
4055
4055
|
if (!this.cursors) return [];
|
|
@@ -4173,9 +4173,9 @@ ObservabilityService = __decorateClass([
|
|
|
4173
4173
|
__decorateParam(1, Optional7()),
|
|
4174
4174
|
__decorateParam(1, Inject13(BRIDGE_DELIVERY_REPO)),
|
|
4175
4175
|
__decorateParam(2, Optional7()),
|
|
4176
|
-
__decorateParam(2, Inject13(
|
|
4176
|
+
__decorateParam(2, Inject13(INTEGRATION_RUN_RECORDER)),
|
|
4177
4177
|
__decorateParam(3, Optional7()),
|
|
4178
|
-
__decorateParam(3, Inject13(
|
|
4178
|
+
__decorateParam(3, Inject13(INTEGRATION_CURSOR_STORE)),
|
|
4179
4179
|
__decorateParam(4, Optional7()),
|
|
4180
4180
|
__decorateParam(4, Inject13(EVENT_READ_PORT))
|
|
4181
4181
|
], ObservabilityService);
|
|
@@ -4300,25 +4300,25 @@ var OAuthStateError = class extends Error {
|
|
|
4300
4300
|
// runtime/subsystems/auth/auth.tokens.ts
|
|
4301
4301
|
var ENCRYPTION_KEY = /* @__PURE__ */ Symbol("ENCRYPTION_KEY");
|
|
4302
4302
|
var OAUTH_STATE_STORE = /* @__PURE__ */ Symbol("OAUTH_STATE_STORE");
|
|
4303
|
-
var
|
|
4304
|
-
var
|
|
4305
|
-
var
|
|
4303
|
+
var AUTH_CONNECTION_READER = /* @__PURE__ */ Symbol("AUTH_CONNECTION_READER");
|
|
4304
|
+
var AUTH_CONNECTION_TOKEN_WRITER = /* @__PURE__ */ Symbol("AUTH_CONNECTION_TOKEN_WRITER");
|
|
4305
|
+
var AUTH_CONNECTION_GRANT_SINK = /* @__PURE__ */ Symbol("AUTH_CONNECTION_GRANT_SINK");
|
|
4306
4306
|
var AUTH_USER_CONTEXT = /* @__PURE__ */ Symbol("AUTH_USER_CONTEXT");
|
|
4307
4307
|
var STRATEGY_REGISTRY = /* @__PURE__ */ Symbol("STRATEGY_REGISTRY");
|
|
4308
4308
|
var AUTH_OPTIONS = /* @__PURE__ */ Symbol("AUTH_OPTIONS");
|
|
4309
4309
|
|
|
4310
|
-
// runtime/subsystems/auth/runtime/
|
|
4311
|
-
var
|
|
4312
|
-
constructor(
|
|
4310
|
+
// runtime/subsystems/auth/runtime/connection-broken.error.ts
|
|
4311
|
+
var ConnectionBrokenError = class extends Error {
|
|
4312
|
+
constructor(connectionId, errorCode, errorDescription) {
|
|
4313
4313
|
super(
|
|
4314
|
-
`
|
|
4314
|
+
`Connection ${connectionId} broken: ${errorCode} - ${errorDescription}`
|
|
4315
4315
|
);
|
|
4316
|
-
this.
|
|
4316
|
+
this.connectionId = connectionId;
|
|
4317
4317
|
this.errorCode = errorCode;
|
|
4318
4318
|
this.errorDescription = errorDescription;
|
|
4319
|
-
this.name = "
|
|
4319
|
+
this.name = "ConnectionBrokenError";
|
|
4320
4320
|
}
|
|
4321
|
-
|
|
4321
|
+
connectionId;
|
|
4322
4322
|
errorCode;
|
|
4323
4323
|
errorDescription;
|
|
4324
4324
|
};
|
|
@@ -4326,53 +4326,53 @@ var IntegrationBrokenError = class extends Error {
|
|
|
4326
4326
|
// runtime/subsystems/auth/runtime/oauth2-refresh.strategy.ts
|
|
4327
4327
|
var REFRESH_SAFETY_MS = 5 * 60 * 1e3;
|
|
4328
4328
|
var OAuth2RefreshStrategy = class {
|
|
4329
|
-
|
|
4329
|
+
connectionReader;
|
|
4330
4330
|
tokenWriter;
|
|
4331
4331
|
fetchImpl;
|
|
4332
4332
|
now;
|
|
4333
4333
|
constructor(opts) {
|
|
4334
|
-
this.
|
|
4334
|
+
this.connectionReader = opts.connectionReader;
|
|
4335
4335
|
this.tokenWriter = opts.tokenWriter;
|
|
4336
4336
|
this.fetchImpl = opts.fetch ?? fetch;
|
|
4337
4337
|
this.now = opts.now ?? Date.now;
|
|
4338
4338
|
}
|
|
4339
|
-
async resolve(
|
|
4340
|
-
const
|
|
4341
|
-
if (!
|
|
4342
|
-
throw new Error(`
|
|
4339
|
+
async resolve(connectionId, opts = {}) {
|
|
4340
|
+
const connection = await this.connectionReader.findByIdDecrypted(connectionId);
|
|
4341
|
+
if (!connection) {
|
|
4342
|
+
throw new Error(`Connection ${connectionId} not found`);
|
|
4343
4343
|
}
|
|
4344
|
-
if (
|
|
4344
|
+
if (connection.provider !== this.provider) {
|
|
4345
4345
|
throw new Error(
|
|
4346
|
-
`${this.constructor.name} called for non-${this.provider}
|
|
4346
|
+
`${this.constructor.name} called for non-${this.provider} connection ${connectionId} (provider=${connection.provider})`
|
|
4347
4347
|
);
|
|
4348
4348
|
}
|
|
4349
|
-
const needsRefresh = opts.forceRefresh || this.isExpiring(
|
|
4349
|
+
const needsRefresh = opts.forceRefresh || this.isExpiring(connection.expiresAt) || !connection.accessToken;
|
|
4350
4350
|
if (!needsRefresh) {
|
|
4351
|
-
return this.buildCredentials(
|
|
4351
|
+
return this.buildCredentials(connection.accessToken, connection);
|
|
4352
4352
|
}
|
|
4353
|
-
if (!
|
|
4354
|
-
throw new
|
|
4355
|
-
|
|
4353
|
+
if (!connection.refreshToken) {
|
|
4354
|
+
throw new ConnectionBrokenError(
|
|
4355
|
+
connectionId,
|
|
4356
4356
|
"no_refresh_token",
|
|
4357
|
-
"
|
|
4357
|
+
"Connection has no refresh token; user must reconnect"
|
|
4358
4358
|
);
|
|
4359
4359
|
}
|
|
4360
4360
|
const { parsed, raw } = await this.executeRefresh(
|
|
4361
|
-
|
|
4362
|
-
|
|
4361
|
+
connectionId,
|
|
4362
|
+
connection.refreshToken
|
|
4363
4363
|
);
|
|
4364
4364
|
const newExpiresAt = new Date(
|
|
4365
4365
|
this.now() + (parsed.expiresInSec ?? this.defaultExpiresInSec) * 1e3
|
|
4366
4366
|
);
|
|
4367
4367
|
await this.tokenWriter.persistRefresh({
|
|
4368
|
-
|
|
4368
|
+
connectionId,
|
|
4369
4369
|
accessToken: parsed.accessToken,
|
|
4370
4370
|
refreshToken: parsed.refreshToken ?? void 0,
|
|
4371
4371
|
expiresAt: newExpiresAt
|
|
4372
4372
|
});
|
|
4373
|
-
return this.buildCredentials(parsed.accessToken,
|
|
4373
|
+
return this.buildCredentials(parsed.accessToken, connection, raw);
|
|
4374
4374
|
}
|
|
4375
|
-
async executeRefresh(
|
|
4375
|
+
async executeRefresh(connectionId, refreshToken) {
|
|
4376
4376
|
const body = new URLSearchParams({
|
|
4377
4377
|
grant_type: "refresh_token",
|
|
4378
4378
|
refresh_token: refreshToken,
|
|
@@ -4386,8 +4386,8 @@ var OAuth2RefreshStrategy = class {
|
|
|
4386
4386
|
if (!response.ok) {
|
|
4387
4387
|
const err = await safeJson(response);
|
|
4388
4388
|
if (response.status === 400 && (err.error === "invalid_grant" || err.error === "invalid_token")) {
|
|
4389
|
-
throw new
|
|
4390
|
-
|
|
4389
|
+
throw new ConnectionBrokenError(
|
|
4390
|
+
connectionId,
|
|
4391
4391
|
err.error ?? "invalid_grant",
|
|
4392
4392
|
err.error_description ?? err.message ?? "refresh token rejected"
|
|
4393
4393
|
);
|
|
@@ -4430,14 +4430,14 @@ function isSessionExpiredError(err) {
|
|
|
4430
4430
|
}
|
|
4431
4431
|
|
|
4432
4432
|
// runtime/subsystems/auth/runtime/with-auth-retry.ts
|
|
4433
|
-
async function withAuthRetry(authStrategy,
|
|
4433
|
+
async function withAuthRetry(authStrategy, connectionId, op, options = {}) {
|
|
4434
4434
|
const classify = options.isSessionExpired ?? isSessionExpiredError;
|
|
4435
|
-
let creds = await authStrategy.resolve(
|
|
4435
|
+
let creds = await authStrategy.resolve(connectionId);
|
|
4436
4436
|
try {
|
|
4437
4437
|
return await op(creds);
|
|
4438
4438
|
} catch (e) {
|
|
4439
4439
|
if (!classify(e)) throw e;
|
|
4440
|
-
creds = await authStrategy.resolve(
|
|
4440
|
+
creds = await authStrategy.resolve(connectionId, { forceRefresh: true });
|
|
4441
4441
|
return op(creds);
|
|
4442
4442
|
}
|
|
4443
4443
|
}
|
|
@@ -4647,7 +4647,7 @@ var AuthController = class {
|
|
|
4647
4647
|
});
|
|
4648
4648
|
return res.redirect(
|
|
4649
4649
|
HttpStatus.FOUND,
|
|
4650
|
-
redirect ?? `/settings/
|
|
4650
|
+
redirect ?? `/settings/connections?connected=${encodeURIComponent(slug)}`
|
|
4651
4651
|
);
|
|
4652
4652
|
}
|
|
4653
4653
|
requireStrategy(slug) {
|
|
@@ -4690,7 +4690,7 @@ AuthController = __decorateClass([
|
|
|
4690
4690
|
__decorateParam(0, Inject15(STRATEGY_REGISTRY)),
|
|
4691
4691
|
__decorateParam(1, Inject15(AUTH_USER_CONTEXT)),
|
|
4692
4692
|
__decorateParam(2, Inject15(OAUTH_STATE_STORE)),
|
|
4693
|
-
__decorateParam(3, Inject15(
|
|
4693
|
+
__decorateParam(3, Inject15(AUTH_CONNECTION_GRANT_SINK)),
|
|
4694
4694
|
__decorateParam(4, Inject15(AUTH_OPTIONS))
|
|
4695
4695
|
], AuthController);
|
|
4696
4696
|
|
|
@@ -4762,15 +4762,16 @@ AuthModule = __decorateClass([
|
|
|
4762
4762
|
Module7({})
|
|
4763
4763
|
], AuthModule);
|
|
4764
4764
|
export {
|
|
4765
|
-
|
|
4766
|
-
|
|
4767
|
-
|
|
4765
|
+
AUTH_CONNECTION_GRANT_SINK,
|
|
4766
|
+
AUTH_CONNECTION_READER,
|
|
4767
|
+
AUTH_CONNECTION_TOKEN_WRITER,
|
|
4768
4768
|
AUTH_OPTIONS,
|
|
4769
4769
|
AUTH_USER_CONTEXT,
|
|
4770
4770
|
AuthController,
|
|
4771
4771
|
AuthModule,
|
|
4772
4772
|
CACHE,
|
|
4773
4773
|
CacheModule,
|
|
4774
|
+
ConnectionBrokenError,
|
|
4774
4775
|
DrizzleCacheService,
|
|
4775
4776
|
DrizzleEventBus,
|
|
4776
4777
|
DrizzleOAuthStateStore,
|
|
@@ -4778,7 +4779,6 @@ export {
|
|
|
4778
4779
|
EVENT_BUS,
|
|
4779
4780
|
EnvEncryptionKey,
|
|
4780
4781
|
EventsModule,
|
|
4781
|
-
IntegrationBrokenError,
|
|
4782
4782
|
LocalStorageBackend,
|
|
4783
4783
|
MemoryCacheService,
|
|
4784
4784
|
MemoryEventBus,
|