@ajna-inc/workflow 0.5.38 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.npmvc/attestations.jsonld +32 -0
- package/LICENSE +202 -0
- package/build/WorkflowEvents.d.mts +40 -0
- package/build/WorkflowEvents.d.mts.map +1 -0
- package/build/WorkflowEvents.mjs +11 -0
- package/build/WorkflowEvents.mjs.map +1 -0
- package/build/WorkflowModule.d.mts +17 -0
- package/build/WorkflowModule.d.mts.map +1 -0
- package/build/WorkflowModule.mjs +446 -0
- package/build/WorkflowModule.mjs.map +1 -0
- package/build/WorkflowModuleConfig.d.mts +39 -0
- package/build/WorkflowModuleConfig.d.mts.map +1 -0
- package/build/WorkflowModuleConfig.mjs +19 -0
- package/build/WorkflowModuleConfig.mjs.map +1 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +14 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +11 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
- package/build/_virtual/rolldown_runtime.mjs +41 -0
- package/build/actions/ActionRegistry.d.mts +64 -0
- package/build/actions/ActionRegistry.d.mts.map +1 -0
- package/build/actions/ActionRegistry.mjs +304 -0
- package/build/actions/ActionRegistry.mjs.map +1 -0
- package/build/api/WorkflowApi.d.mts +99 -0
- package/build/api/WorkflowApi.d.mts.map +1 -0
- package/build/api/WorkflowApi.mjs +228 -0
- package/build/api/WorkflowApi.mjs.map +1 -0
- package/build/engine/AttributePlanner.d.mts +12 -0
- package/build/engine/AttributePlanner.d.mts.map +1 -0
- package/build/engine/AttributePlanner.mjs +58 -0
- package/build/engine/AttributePlanner.mjs.map +1 -0
- package/build/engine/GuardEvaluator.d.mts +16 -0
- package/build/engine/GuardEvaluator.d.mts.map +1 -0
- package/build/engine/GuardEvaluator.mjs +38 -0
- package/build/engine/GuardEvaluator.mjs.map +1 -0
- package/build/index.d.mts +46 -0
- package/build/index.mjs +53 -0
- package/build/index.mjs.map +1 -0
- package/build/model/TemplateValidation.d.mts +8 -0
- package/build/model/TemplateValidation.d.mts.map +1 -0
- package/build/model/TemplateValidation.mjs +278 -0
- package/build/model/TemplateValidation.mjs.map +1 -0
- package/build/model/types.d.mts +120 -0
- package/build/model/types.d.mts.map +1 -0
- package/build/model/types.mjs +11 -0
- package/build/model/types.mjs.map +1 -0
- package/build/protocol/WorkflowMessageTypes.d.mts +19 -0
- package/build/protocol/WorkflowMessageTypes.d.mts.map +1 -0
- package/build/protocol/WorkflowMessageTypes.mjs +20 -0
- package/build/protocol/WorkflowMessageTypes.mjs.map +1 -0
- package/build/protocol/handlers/AdvanceHandler.d.mts +16 -0
- package/build/protocol/handlers/AdvanceHandler.d.mts.map +1 -0
- package/build/protocol/handlers/AdvanceHandler.mjs +148 -0
- package/build/protocol/handlers/AdvanceHandler.mjs.map +1 -0
- package/build/protocol/handlers/CancelHandler.d.mts +16 -0
- package/build/protocol/handlers/CancelHandler.d.mts.map +1 -0
- package/build/protocol/handlers/CancelHandler.mjs +103 -0
- package/build/protocol/handlers/CancelHandler.mjs.map +1 -0
- package/build/protocol/handlers/CompleteHandler.d.mts +16 -0
- package/build/protocol/handlers/CompleteHandler.d.mts.map +1 -0
- package/build/protocol/handlers/CompleteHandler.mjs +103 -0
- package/build/protocol/handlers/CompleteHandler.mjs.map +1 -0
- package/build/protocol/handlers/DiscoverHandler.d.mts +15 -0
- package/build/protocol/handlers/DiscoverHandler.d.mts.map +1 -0
- package/build/protocol/handlers/DiscoverHandler.mjs +73 -0
- package/build/protocol/handlers/DiscoverHandler.mjs.map +1 -0
- package/build/protocol/handlers/FetchTemplateHandler.d.mts +16 -0
- package/build/protocol/handlers/FetchTemplateHandler.d.mts.map +1 -0
- package/build/protocol/handlers/FetchTemplateHandler.mjs +64 -0
- package/build/protocol/handlers/FetchTemplateHandler.mjs.map +1 -0
- package/build/protocol/handlers/PauseHandler.d.mts +16 -0
- package/build/protocol/handlers/PauseHandler.d.mts.map +1 -0
- package/build/protocol/handlers/PauseHandler.mjs +103 -0
- package/build/protocol/handlers/PauseHandler.mjs.map +1 -0
- package/build/protocol/handlers/ProblemReportHandler.d.mts +11 -0
- package/build/protocol/handlers/ProblemReportHandler.d.mts.map +1 -0
- package/build/protocol/handlers/ProblemReportHandler.mjs +26 -0
- package/build/protocol/handlers/ProblemReportHandler.mjs.map +1 -0
- package/build/protocol/handlers/PublishTemplateHandler.d.mts +15 -0
- package/build/protocol/handlers/PublishTemplateHandler.d.mts.map +1 -0
- package/build/protocol/handlers/PublishTemplateHandler.mjs +47 -0
- package/build/protocol/handlers/PublishTemplateHandler.mjs.map +1 -0
- package/build/protocol/handlers/ResumeHandler.d.mts +16 -0
- package/build/protocol/handlers/ResumeHandler.d.mts.map +1 -0
- package/build/protocol/handlers/ResumeHandler.mjs +103 -0
- package/build/protocol/handlers/ResumeHandler.mjs.map +1 -0
- package/build/protocol/handlers/StartHandler.d.mts +16 -0
- package/build/protocol/handlers/StartHandler.d.mts.map +1 -0
- package/build/protocol/handlers/StartHandler.mjs +238 -0
- package/build/protocol/handlers/StartHandler.mjs.map +1 -0
- package/build/protocol/handlers/StatusHandler.d.mts +16 -0
- package/build/protocol/handlers/StatusHandler.d.mts.map +1 -0
- package/build/protocol/handlers/StatusHandler.mjs +169 -0
- package/build/protocol/handlers/StatusHandler.mjs.map +1 -0
- package/build/protocol/handlers/TemplateHandler.d.mts +14 -0
- package/build/protocol/handlers/TemplateHandler.d.mts.map +1 -0
- package/build/protocol/handlers/TemplateHandler.mjs +66 -0
- package/build/protocol/handlers/TemplateHandler.mjs.map +1 -0
- package/build/protocol/messages/AdvanceMessage.d.mts +22 -0
- package/build/protocol/messages/AdvanceMessage.d.mts.map +1 -0
- package/build/protocol/messages/AdvanceMessage.mjs +25 -0
- package/build/protocol/messages/AdvanceMessage.mjs.map +1 -0
- package/build/protocol/messages/CancelMessage.d.mts +20 -0
- package/build/protocol/messages/CancelMessage.d.mts.map +1 -0
- package/build/protocol/messages/CancelMessage.mjs +25 -0
- package/build/protocol/messages/CancelMessage.mjs.map +1 -0
- package/build/protocol/messages/CompleteMessage.d.mts +20 -0
- package/build/protocol/messages/CompleteMessage.d.mts.map +1 -0
- package/build/protocol/messages/CompleteMessage.mjs +25 -0
- package/build/protocol/messages/CompleteMessage.mjs.map +1 -0
- package/build/protocol/messages/DiscoverMessage.d.mts +29 -0
- package/build/protocol/messages/DiscoverMessage.d.mts.map +1 -0
- package/build/protocol/messages/DiscoverMessage.mjs +25 -0
- package/build/protocol/messages/DiscoverMessage.mjs.map +1 -0
- package/build/protocol/messages/FetchTemplateMessage.d.mts +21 -0
- package/build/protocol/messages/FetchTemplateMessage.d.mts.map +1 -0
- package/build/protocol/messages/FetchTemplateMessage.mjs +31 -0
- package/build/protocol/messages/FetchTemplateMessage.mjs.map +1 -0
- package/build/protocol/messages/PauseMessage.d.mts +20 -0
- package/build/protocol/messages/PauseMessage.d.mts.map +1 -0
- package/build/protocol/messages/PauseMessage.mjs +25 -0
- package/build/protocol/messages/PauseMessage.mjs.map +1 -0
- package/build/protocol/messages/ProblemReportMessage.d.mts +21 -0
- package/build/protocol/messages/ProblemReportMessage.d.mts.map +1 -0
- package/build/protocol/messages/ProblemReportMessage.mjs +25 -0
- package/build/protocol/messages/ProblemReportMessage.mjs.map +1 -0
- package/build/protocol/messages/PublishTemplateMessage.d.mts +23 -0
- package/build/protocol/messages/PublishTemplateMessage.d.mts.map +1 -0
- package/build/protocol/messages/PublishTemplateMessage.mjs +24 -0
- package/build/protocol/messages/PublishTemplateMessage.mjs.map +1 -0
- package/build/protocol/messages/ResumeMessage.d.mts +20 -0
- package/build/protocol/messages/ResumeMessage.d.mts.map +1 -0
- package/build/protocol/messages/ResumeMessage.mjs +25 -0
- package/build/protocol/messages/ResumeMessage.mjs.map +1 -0
- package/build/protocol/messages/StartMessage.d.mts +27 -0
- package/build/protocol/messages/StartMessage.d.mts.map +1 -0
- package/build/protocol/messages/StartMessage.mjs +25 -0
- package/build/protocol/messages/StartMessage.mjs.map +1 -0
- package/build/protocol/messages/StatusMessage.d.mts +35 -0
- package/build/protocol/messages/StatusMessage.d.mts.map +1 -0
- package/build/protocol/messages/StatusMessage.mjs +25 -0
- package/build/protocol/messages/StatusMessage.mjs.map +1 -0
- package/build/protocol/messages/StatusRequestMessage.d.mts +29 -0
- package/build/protocol/messages/StatusRequestMessage.d.mts.map +1 -0
- package/build/protocol/messages/StatusRequestMessage.mjs +25 -0
- package/build/protocol/messages/StatusRequestMessage.mjs.map +1 -0
- package/build/protocol/messages/TemplateMessage.d.mts +20 -0
- package/build/protocol/messages/TemplateMessage.d.mts.map +1 -0
- package/build/protocol/messages/TemplateMessage.mjs +25 -0
- package/build/protocol/messages/TemplateMessage.mjs.map +1 -0
- package/build/protocol/messages/WorkflowsMessage.d.mts +28 -0
- package/build/protocol/messages/WorkflowsMessage.d.mts.map +1 -0
- package/build/protocol/messages/WorkflowsMessage.mjs +25 -0
- package/build/protocol/messages/WorkflowsMessage.mjs.map +1 -0
- package/build/queue/CommandQueue.d.mts +22 -0
- package/build/queue/CommandQueue.d.mts.map +1 -0
- package/build/queue/CommandQueue.mjs +6 -0
- package/build/queue/CommandQueue.mjs.map +1 -0
- package/build/queue/PersistentCommandQueue.d.mts +56 -0
- package/build/queue/PersistentCommandQueue.d.mts.map +1 -0
- package/build/queue/PersistentCommandQueue.mjs +273 -0
- package/build/queue/PersistentCommandQueue.mjs.map +1 -0
- package/build/repository/WorkflowCommandRecord.d.mts +50 -0
- package/build/repository/WorkflowCommandRecord.d.mts.map +1 -0
- package/build/repository/WorkflowCommandRecord.mjs +48 -0
- package/build/repository/WorkflowCommandRecord.mjs.map +1 -0
- package/build/repository/WorkflowCommandRepository.d.mts +59 -0
- package/build/repository/WorkflowCommandRepository.d.mts.map +1 -0
- package/build/repository/WorkflowCommandRepository.mjs +136 -0
- package/build/repository/WorkflowCommandRepository.mjs.map +1 -0
- package/build/repository/WorkflowInstanceRecord.d.mts +65 -0
- package/build/repository/WorkflowInstanceRecord.d.mts.map +1 -0
- package/build/repository/WorkflowInstanceRecord.mjs +44 -0
- package/build/repository/WorkflowInstanceRecord.mjs.map +1 -0
- package/build/repository/WorkflowInstanceRepository.d.mts +15 -0
- package/build/repository/WorkflowInstanceRepository.d.mts.map +1 -0
- package/build/repository/WorkflowInstanceRepository.mjs +48 -0
- package/build/repository/WorkflowInstanceRepository.mjs.map +1 -0
- package/build/repository/WorkflowTemplateRecord.d.mts +27 -0
- package/build/repository/WorkflowTemplateRecord.d.mts.map +1 -0
- package/build/repository/WorkflowTemplateRecord.mjs +29 -0
- package/build/repository/WorkflowTemplateRecord.mjs.map +1 -0
- package/build/repository/WorkflowTemplateRepository.d.mts +11 -0
- package/build/repository/WorkflowTemplateRepository.d.mts.map +1 -0
- package/build/repository/WorkflowTemplateRepository.mjs +43 -0
- package/build/repository/WorkflowTemplateRepository.mjs.map +1 -0
- package/build/services/WorkflowService.d.mts +107 -0
- package/build/services/WorkflowService.d.mts.map +1 -0
- package/build/services/WorkflowService.mjs +582 -0
- package/build/services/WorkflowService.mjs.map +1 -0
- package/build/ui/UiFilter.mjs +85 -0
- package/build/ui/UiFilter.mjs.map +1 -0
- package/package.json +27 -33
- package/build/WorkflowEvents.d.ts +0 -35
- package/build/WorkflowEvents.js +0 -10
- package/build/WorkflowEvents.js.map +0 -1
- package/build/WorkflowModule.d.ts +0 -13
- package/build/WorkflowModule.js +0 -647
- package/build/WorkflowModule.js.map +0 -1
- package/build/WorkflowModuleConfig.d.ts +0 -35
- package/build/WorkflowModuleConfig.js +0 -19
- package/build/WorkflowModuleConfig.js.map +0 -1
- package/build/actions/ActionRegistry.d.ts +0 -59
- package/build/actions/ActionRegistry.js +0 -367
- package/build/actions/ActionRegistry.js.map +0 -1
- package/build/api/WorkflowApi.d.ts +0 -94
- package/build/api/WorkflowApi.js +0 -241
- package/build/api/WorkflowApi.js.map +0 -1
- package/build/engine/AttributePlanner.d.ts +0 -7
- package/build/engine/AttributePlanner.js +0 -81
- package/build/engine/AttributePlanner.js.map +0 -1
- package/build/engine/GuardEvaluator.d.ts +0 -11
- package/build/engine/GuardEvaluator.js +0 -40
- package/build/engine/GuardEvaluator.js.map +0 -1
- package/build/index.d.ts +0 -45
- package/build/index.js +0 -69
- package/build/index.js.map +0 -1
- package/build/model/TemplateValidation.d.ts +0 -3
- package/build/model/TemplateValidation.js +0 -231
- package/build/model/TemplateValidation.js.map +0 -1
- package/build/model/types.d.ts +0 -116
- package/build/model/types.js +0 -15
- package/build/model/types.js.map +0 -1
- package/build/protocol/WorkflowMessageTypes.d.ts +0 -15
- package/build/protocol/WorkflowMessageTypes.js +0 -22
- package/build/protocol/WorkflowMessageTypes.js.map +0 -1
- package/build/protocol/handlers/AdvanceHandler.d.ts +0 -12
- package/build/protocol/handlers/AdvanceHandler.js +0 -149
- package/build/protocol/handlers/AdvanceHandler.js.map +0 -1
- package/build/protocol/handlers/CancelHandler.d.ts +0 -12
- package/build/protocol/handlers/CancelHandler.js +0 -124
- package/build/protocol/handlers/CancelHandler.js.map +0 -1
- package/build/protocol/handlers/CompleteHandler.d.ts +0 -12
- package/build/protocol/handlers/CompleteHandler.js +0 -125
- package/build/protocol/handlers/CompleteHandler.js.map +0 -1
- package/build/protocol/handlers/DiscoverHandler.d.ts +0 -11
- package/build/protocol/handlers/DiscoverHandler.js +0 -71
- package/build/protocol/handlers/DiscoverHandler.js.map +0 -1
- package/build/protocol/handlers/FetchTemplateHandler.d.ts +0 -12
- package/build/protocol/handlers/FetchTemplateHandler.js +0 -71
- package/build/protocol/handlers/FetchTemplateHandler.js.map +0 -1
- package/build/protocol/handlers/PauseHandler.d.ts +0 -12
- package/build/protocol/handlers/PauseHandler.js +0 -124
- package/build/protocol/handlers/PauseHandler.js.map +0 -1
- package/build/protocol/handlers/ProblemReportHandler.d.ts +0 -6
- package/build/protocol/handlers/ProblemReportHandler.js +0 -28
- package/build/protocol/handlers/ProblemReportHandler.js.map +0 -1
- package/build/protocol/handlers/PublishTemplateHandler.d.ts +0 -11
- package/build/protocol/handlers/PublishTemplateHandler.js +0 -53
- package/build/protocol/handlers/PublishTemplateHandler.js.map +0 -1
- package/build/protocol/handlers/ResumeHandler.d.ts +0 -12
- package/build/protocol/handlers/ResumeHandler.js +0 -124
- package/build/protocol/handlers/ResumeHandler.js.map +0 -1
- package/build/protocol/handlers/StartHandler.d.ts +0 -12
- package/build/protocol/handlers/StartHandler.js +0 -274
- package/build/protocol/handlers/StartHandler.js.map +0 -1
- package/build/protocol/handlers/StatusHandler.d.ts +0 -12
- package/build/protocol/handlers/StatusHandler.js +0 -202
- package/build/protocol/handlers/StatusHandler.js.map +0 -1
- package/build/protocol/handlers/TemplateHandler.d.ts +0 -9
- package/build/protocol/handlers/TemplateHandler.js +0 -83
- package/build/protocol/handlers/TemplateHandler.js.map +0 -1
- package/build/protocol/messages/AdvanceMessage.d.ts +0 -16
- package/build/protocol/messages/AdvanceMessage.js +0 -33
- package/build/protocol/messages/AdvanceMessage.js.map +0 -1
- package/build/protocol/messages/CancelMessage.d.ts +0 -14
- package/build/protocol/messages/CancelMessage.js +0 -33
- package/build/protocol/messages/CancelMessage.js.map +0 -1
- package/build/protocol/messages/CompleteMessage.d.ts +0 -14
- package/build/protocol/messages/CompleteMessage.js +0 -33
- package/build/protocol/messages/CompleteMessage.js.map +0 -1
- package/build/protocol/messages/DiscoverMessage.d.ts +0 -23
- package/build/protocol/messages/DiscoverMessage.js +0 -33
- package/build/protocol/messages/DiscoverMessage.js.map +0 -1
- package/build/protocol/messages/FetchTemplateMessage.d.ts +0 -15
- package/build/protocol/messages/FetchTemplateMessage.js +0 -33
- package/build/protocol/messages/FetchTemplateMessage.js.map +0 -1
- package/build/protocol/messages/PauseMessage.d.ts +0 -14
- package/build/protocol/messages/PauseMessage.js +0 -33
- package/build/protocol/messages/PauseMessage.js.map +0 -1
- package/build/protocol/messages/ProblemReportMessage.d.ts +0 -15
- package/build/protocol/messages/ProblemReportMessage.js +0 -33
- package/build/protocol/messages/ProblemReportMessage.js.map +0 -1
- package/build/protocol/messages/PublishTemplateMessage.d.ts +0 -17
- package/build/protocol/messages/PublishTemplateMessage.js +0 -31
- package/build/protocol/messages/PublishTemplateMessage.js.map +0 -1
- package/build/protocol/messages/ResumeMessage.d.ts +0 -14
- package/build/protocol/messages/ResumeMessage.js +0 -33
- package/build/protocol/messages/ResumeMessage.js.map +0 -1
- package/build/protocol/messages/StartMessage.d.ts +0 -21
- package/build/protocol/messages/StartMessage.js +0 -33
- package/build/protocol/messages/StartMessage.js.map +0 -1
- package/build/protocol/messages/StatusMessage.d.ts +0 -29
- package/build/protocol/messages/StatusMessage.js +0 -33
- package/build/protocol/messages/StatusMessage.js.map +0 -1
- package/build/protocol/messages/StatusRequestMessage.d.ts +0 -23
- package/build/protocol/messages/StatusRequestMessage.js +0 -33
- package/build/protocol/messages/StatusRequestMessage.js.map +0 -1
- package/build/protocol/messages/TemplateMessage.d.ts +0 -14
- package/build/protocol/messages/TemplateMessage.js +0 -33
- package/build/protocol/messages/TemplateMessage.js.map +0 -1
- package/build/protocol/messages/WorkflowsMessage.d.ts +0 -22
- package/build/protocol/messages/WorkflowsMessage.js +0 -33
- package/build/protocol/messages/WorkflowsMessage.js.map +0 -1
- package/build/queue/CommandQueue.d.ts +0 -18
- package/build/queue/CommandQueue.js +0 -8
- package/build/queue/CommandQueue.js.map +0 -1
- package/build/queue/PersistentCommandQueue.d.ts +0 -51
- package/build/queue/PersistentCommandQueue.js +0 -348
- package/build/queue/PersistentCommandQueue.js.map +0 -1
- package/build/repository/WorkflowCommandRecord.d.ts +0 -46
- package/build/repository/WorkflowCommandRecord.js +0 -52
- package/build/repository/WorkflowCommandRecord.js.map +0 -1
- package/build/repository/WorkflowCommandRepository.d.ts +0 -55
- package/build/repository/WorkflowCommandRepository.js +0 -149
- package/build/repository/WorkflowCommandRepository.js.map +0 -1
- package/build/repository/WorkflowInstanceRecord.d.ts +0 -61
- package/build/repository/WorkflowInstanceRecord.js +0 -43
- package/build/repository/WorkflowInstanceRecord.js.map +0 -1
- package/build/repository/WorkflowInstanceRepository.d.ts +0 -10
- package/build/repository/WorkflowInstanceRepository.js +0 -52
- package/build/repository/WorkflowInstanceRepository.js.map +0 -1
- package/build/repository/WorkflowTemplateRecord.d.ts +0 -23
- package/build/repository/WorkflowTemplateRecord.js +0 -28
- package/build/repository/WorkflowTemplateRecord.js.map +0 -1
- package/build/repository/WorkflowTemplateRepository.d.ts +0 -6
- package/build/repository/WorkflowTemplateRepository.js +0 -56
- package/build/repository/WorkflowTemplateRepository.js.map +0 -1
- package/build/services/WorkflowService.d.ts +0 -102
- package/build/services/WorkflowService.js +0 -712
- package/build/services/WorkflowService.js.map +0 -1
- package/build/ui/UiFilter.d.ts +0 -5
- package/build/ui/UiFilter.js +0 -104
- package/build/ui/UiFilter.js.map +0 -1
- package/build/ui/UiTypes.d.ts +0 -28
- package/build/ui/UiTypes.js +0 -3
- package/build/ui/UiTypes.js.map +0 -1
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { WorkflowCommandRecord } from "./WorkflowCommandRecord.mjs";
|
|
2
|
+
import { __decorateMetadata, init_decorateMetadata } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
|
|
3
|
+
import { __decorateParam } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs";
|
|
4
|
+
import { __decorate, init_decorate } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
|
|
5
|
+
import { EventEmitter, InjectionSymbols, Repository, inject, injectable } from "@credo-ts/core";
|
|
6
|
+
|
|
7
|
+
//#region src/repository/WorkflowCommandRepository.ts
|
|
8
|
+
init_decorateMetadata();
|
|
9
|
+
init_decorate();
|
|
10
|
+
var _ref;
|
|
11
|
+
let WorkflowCommandRepository = class WorkflowCommandRepository$1 extends Repository {
|
|
12
|
+
constructor(storageService, eventEmitter) {
|
|
13
|
+
super(WorkflowCommandRecord, storageService, eventEmitter);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Find pending commands (status='pending'), ordered by creation time
|
|
17
|
+
*/
|
|
18
|
+
async findPending(agentContext, limit = 10) {
|
|
19
|
+
const records = await this.findByQuery(agentContext, { status: "pending" });
|
|
20
|
+
records.sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime());
|
|
21
|
+
return records.slice(0, limit);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Find pending 'start' commands for a specific template (and optional version)
|
|
25
|
+
*/
|
|
26
|
+
async findPendingStartsByTemplate(agentContext, templateId, version) {
|
|
27
|
+
const query = {
|
|
28
|
+
status: "pending",
|
|
29
|
+
cmd: "start",
|
|
30
|
+
templateId,
|
|
31
|
+
...version ? { templateVersion: version } : {}
|
|
32
|
+
};
|
|
33
|
+
return (await this.findByQuery(agentContext, query)).sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime());
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Find commands stuck in 'processing' state longer than timeoutMs
|
|
37
|
+
*/
|
|
38
|
+
async findStale(agentContext, timeoutMs) {
|
|
39
|
+
const records = await this.findByQuery(agentContext, { status: "processing" });
|
|
40
|
+
const cutoff = new Date(Date.now() - timeoutMs);
|
|
41
|
+
return records.filter((r) => {
|
|
42
|
+
if (!r.lastAttemptAt) return true;
|
|
43
|
+
return r.lastAttemptAt < cutoff;
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Find command by thid (thread ID / instance ID)
|
|
48
|
+
*/
|
|
49
|
+
async findByThid(agentContext, thid) {
|
|
50
|
+
return this.findByQuery(agentContext, { thid });
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Mark command as processing
|
|
54
|
+
*/
|
|
55
|
+
async markProcessing(agentContext, record) {
|
|
56
|
+
record.status = "processing";
|
|
57
|
+
record.attempts++;
|
|
58
|
+
record.lastAttemptAt = /* @__PURE__ */ new Date();
|
|
59
|
+
await this.update(agentContext, record);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Mark command as completed
|
|
63
|
+
*/
|
|
64
|
+
async markCompleted(agentContext, record) {
|
|
65
|
+
record.status = "completed";
|
|
66
|
+
record.completedAt = /* @__PURE__ */ new Date();
|
|
67
|
+
await this.update(agentContext, record);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Mark command as failed
|
|
71
|
+
*/
|
|
72
|
+
async markFailed(agentContext, record, error) {
|
|
73
|
+
record.status = "failed";
|
|
74
|
+
record.error = error;
|
|
75
|
+
record.completedAt = /* @__PURE__ */ new Date();
|
|
76
|
+
await this.update(agentContext, record);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Delete completed commands older than given date
|
|
80
|
+
*/
|
|
81
|
+
async deleteCompleted(agentContext, olderThan) {
|
|
82
|
+
const completed = await this.findByQuery(agentContext, { status: "completed" });
|
|
83
|
+
let deleted = 0;
|
|
84
|
+
for (const record of completed) if (record.completedAt && record.completedAt < olderThan) {
|
|
85
|
+
await this.delete(agentContext, record);
|
|
86
|
+
deleted++;
|
|
87
|
+
}
|
|
88
|
+
return deleted;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Delete failed commands older than given date
|
|
92
|
+
*/
|
|
93
|
+
async deleteFailed(agentContext, olderThan) {
|
|
94
|
+
const failed = await this.findByQuery(agentContext, { status: "failed" });
|
|
95
|
+
let deleted = 0;
|
|
96
|
+
for (const record of failed) if (record.completedAt && record.completedAt < olderThan) {
|
|
97
|
+
await this.delete(agentContext, record);
|
|
98
|
+
deleted++;
|
|
99
|
+
}
|
|
100
|
+
return deleted;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Reset stale command to pending for retry
|
|
104
|
+
*/
|
|
105
|
+
async resetToPending(agentContext, record) {
|
|
106
|
+
record.status = "pending";
|
|
107
|
+
record.lastAttemptAt = void 0;
|
|
108
|
+
await this.update(agentContext, record);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Get queue metrics
|
|
112
|
+
*/
|
|
113
|
+
async getMetrics(agentContext) {
|
|
114
|
+
const [pending, processing, completed, failed] = await Promise.all([
|
|
115
|
+
this.findByQuery(agentContext, { status: "pending" }),
|
|
116
|
+
this.findByQuery(agentContext, { status: "processing" }),
|
|
117
|
+
this.findByQuery(agentContext, { status: "completed" }),
|
|
118
|
+
this.findByQuery(agentContext, { status: "failed" })
|
|
119
|
+
]);
|
|
120
|
+
return {
|
|
121
|
+
pending: pending.length,
|
|
122
|
+
processing: processing.length,
|
|
123
|
+
completed: completed.length,
|
|
124
|
+
failed: failed.length
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
WorkflowCommandRepository = __decorate([
|
|
129
|
+
injectable(),
|
|
130
|
+
__decorateParam(0, inject(InjectionSymbols.StorageService)),
|
|
131
|
+
__decorateMetadata("design:paramtypes", [Object, typeof (_ref = typeof EventEmitter !== "undefined" && EventEmitter) === "function" ? _ref : Object])
|
|
132
|
+
], WorkflowCommandRepository);
|
|
133
|
+
|
|
134
|
+
//#endregion
|
|
135
|
+
export { WorkflowCommandRepository };
|
|
136
|
+
//# sourceMappingURL=WorkflowCommandRepository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowCommandRepository.mjs","names":["WorkflowCommandRepository","storageService: StorageService<WorkflowCommandRecord>","query: Record<string, unknown>"],"sources":["../../src/repository/WorkflowCommandRepository.ts"],"sourcesContent":["import type { AgentContext, StorageService } from '@credo-ts/core'\n\nimport { Repository, EventEmitter, injectable, inject, InjectionSymbols } from '@credo-ts/core'\n\nimport { WorkflowCommandRecord } from './WorkflowCommandRecord'\n\n@injectable()\nexport class WorkflowCommandRepository extends Repository<WorkflowCommandRecord> {\n public constructor(\n @inject(InjectionSymbols.StorageService) storageService: StorageService<WorkflowCommandRecord>,\n eventEmitter: EventEmitter\n ) {\n super(WorkflowCommandRecord, storageService, eventEmitter)\n }\n\n /**\n * Find pending commands (status='pending'), ordered by creation time\n */\n public async findPending(agentContext: AgentContext, limit = 10): Promise<WorkflowCommandRecord[]> {\n const records = await this.findByQuery(agentContext, { status: 'pending' })\n // Sort by createdAt ascending (oldest first)\n records.sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime())\n return records.slice(0, limit)\n }\n\n /**\n * Find pending 'start' commands for a specific template (and optional version)\n */\n public async findPendingStartsByTemplate(\n agentContext: AgentContext,\n templateId: string,\n version?: string\n ): Promise<WorkflowCommandRecord[]> {\n const query: Record<string, unknown> = {\n status: 'pending',\n cmd: 'start',\n templateId,\n ...(version ? { templateVersion: version } : {}),\n }\n const records = await this.findByQuery(agentContext, query)\n // Sort by createdAt ascending (oldest first)\n return records.sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime())\n }\n\n /**\n * Find commands stuck in 'processing' state longer than timeoutMs\n */\n public async findStale(agentContext: AgentContext, timeoutMs: number): Promise<WorkflowCommandRecord[]> {\n const records = await this.findByQuery(agentContext, { status: 'processing' })\n const cutoff = new Date(Date.now() - timeoutMs)\n\n return records.filter((r) => {\n if (!r.lastAttemptAt) return true // No attempt time = stale\n return r.lastAttemptAt < cutoff\n })\n }\n\n /**\n * Find command by thid (thread ID / instance ID)\n */\n public async findByThid(agentContext: AgentContext, thid: string): Promise<WorkflowCommandRecord[]> {\n return this.findByQuery(agentContext, { thid })\n }\n\n /**\n * Mark command as processing\n */\n public async markProcessing(agentContext: AgentContext, record: WorkflowCommandRecord): Promise<void> {\n record.status = 'processing'\n record.attempts++\n record.lastAttemptAt = new Date()\n await this.update(agentContext, record)\n }\n\n /**\n * Mark command as completed\n */\n public async markCompleted(agentContext: AgentContext, record: WorkflowCommandRecord): Promise<void> {\n record.status = 'completed'\n record.completedAt = new Date()\n await this.update(agentContext, record)\n }\n\n /**\n * Mark command as failed\n */\n public async markFailed(\n agentContext: AgentContext,\n record: WorkflowCommandRecord,\n error: string\n ): Promise<void> {\n record.status = 'failed'\n record.error = error\n record.completedAt = new Date()\n await this.update(agentContext, record)\n }\n\n /**\n * Delete completed commands older than given date\n */\n public async deleteCompleted(agentContext: AgentContext, olderThan: Date): Promise<number> {\n const completed = await this.findByQuery(agentContext, { status: 'completed' })\n let deleted = 0\n\n for (const record of completed) {\n if (record.completedAt && record.completedAt < olderThan) {\n await this.delete(agentContext, record)\n deleted++\n }\n }\n\n return deleted\n }\n\n /**\n * Delete failed commands older than given date\n */\n public async deleteFailed(agentContext: AgentContext, olderThan: Date): Promise<number> {\n const failed = await this.findByQuery(agentContext, { status: 'failed' })\n let deleted = 0\n\n for (const record of failed) {\n if (record.completedAt && record.completedAt < olderThan) {\n await this.delete(agentContext, record)\n deleted++\n }\n }\n\n return deleted\n }\n\n /**\n * Reset stale command to pending for retry\n */\n public async resetToPending(agentContext: AgentContext, record: WorkflowCommandRecord): Promise<void> {\n record.status = 'pending'\n record.lastAttemptAt = undefined\n await this.update(agentContext, record)\n }\n\n /**\n * Get queue metrics\n */\n public async getMetrics(agentContext: AgentContext): Promise<{\n pending: number\n processing: number\n completed: number\n failed: number\n }> {\n const [pending, processing, completed, failed] = await Promise.all([\n this.findByQuery(agentContext, { status: 'pending' }),\n this.findByQuery(agentContext, { status: 'processing' }),\n this.findByQuery(agentContext, { status: 'completed' }),\n this.findByQuery(agentContext, { status: 'failed' }),\n ])\n\n return {\n pending: pending.length,\n processing: processing.length,\n completed: completed.length,\n failed: failed.length,\n }\n }\n}\n"],"mappings":";;;;;;;;;;AAOO,sCAAMA,oCAAkC,WAAkC;CAC/E,AAAO,YACL,AAAyCC,gBACzC,cACA;AACA,QAAM,uBAAuB,gBAAgB,aAAa;;;;;CAM5D,MAAa,YAAY,cAA4B,QAAQ,IAAsC;EACjG,MAAM,UAAU,MAAM,KAAK,YAAY,cAAc,EAAE,QAAQ,WAAW,CAAC;AAE3E,UAAQ,MAAM,GAAG,MAAM,EAAE,UAAU,SAAS,GAAG,EAAE,UAAU,SAAS,CAAC;AACrE,SAAO,QAAQ,MAAM,GAAG,MAAM;;;;;CAMhC,MAAa,4BACX,cACA,YACA,SACkC;EAClC,MAAMC,QAAiC;GACrC,QAAQ;GACR,KAAK;GACL;GACA,GAAI,UAAU,EAAE,iBAAiB,SAAS,GAAG,EAAE;GAChD;AAGD,UAFgB,MAAM,KAAK,YAAY,cAAc,MAAM,EAE5C,MAAM,GAAG,MAAM,EAAE,UAAU,SAAS,GAAG,EAAE,UAAU,SAAS,CAAC;;;;;CAM9E,MAAa,UAAU,cAA4B,WAAqD;EACtG,MAAM,UAAU,MAAM,KAAK,YAAY,cAAc,EAAE,QAAQ,cAAc,CAAC;EAC9E,MAAM,SAAS,IAAI,KAAK,KAAK,KAAK,GAAG,UAAU;AAE/C,SAAO,QAAQ,QAAQ,MAAM;AAC3B,OAAI,CAAC,EAAE,cAAe,QAAO;AAC7B,UAAO,EAAE,gBAAgB;IACzB;;;;;CAMJ,MAAa,WAAW,cAA4B,MAAgD;AAClG,SAAO,KAAK,YAAY,cAAc,EAAE,MAAM,CAAC;;;;;CAMjD,MAAa,eAAe,cAA4B,QAA8C;AACpG,SAAO,SAAS;AAChB,SAAO;AACP,SAAO,gCAAgB,IAAI,MAAM;AACjC,QAAM,KAAK,OAAO,cAAc,OAAO;;;;;CAMzC,MAAa,cAAc,cAA4B,QAA8C;AACnG,SAAO,SAAS;AAChB,SAAO,8BAAc,IAAI,MAAM;AAC/B,QAAM,KAAK,OAAO,cAAc,OAAO;;;;;CAMzC,MAAa,WACX,cACA,QACA,OACe;AACf,SAAO,SAAS;AAChB,SAAO,QAAQ;AACf,SAAO,8BAAc,IAAI,MAAM;AAC/B,QAAM,KAAK,OAAO,cAAc,OAAO;;;;;CAMzC,MAAa,gBAAgB,cAA4B,WAAkC;EACzF,MAAM,YAAY,MAAM,KAAK,YAAY,cAAc,EAAE,QAAQ,aAAa,CAAC;EAC/E,IAAI,UAAU;AAEd,OAAK,MAAM,UAAU,UACnB,KAAI,OAAO,eAAe,OAAO,cAAc,WAAW;AACxD,SAAM,KAAK,OAAO,cAAc,OAAO;AACvC;;AAIJ,SAAO;;;;;CAMT,MAAa,aAAa,cAA4B,WAAkC;EACtF,MAAM,SAAS,MAAM,KAAK,YAAY,cAAc,EAAE,QAAQ,UAAU,CAAC;EACzE,IAAI,UAAU;AAEd,OAAK,MAAM,UAAU,OACnB,KAAI,OAAO,eAAe,OAAO,cAAc,WAAW;AACxD,SAAM,KAAK,OAAO,cAAc,OAAO;AACvC;;AAIJ,SAAO;;;;;CAMT,MAAa,eAAe,cAA4B,QAA8C;AACpG,SAAO,SAAS;AAChB,SAAO,gBAAgB;AACvB,QAAM,KAAK,OAAO,cAAc,OAAO;;;;;CAMzC,MAAa,WAAW,cAKrB;EACD,MAAM,CAAC,SAAS,YAAY,WAAW,UAAU,MAAM,QAAQ,IAAI;GACjE,KAAK,YAAY,cAAc,EAAE,QAAQ,WAAW,CAAC;GACrD,KAAK,YAAY,cAAc,EAAE,QAAQ,cAAc,CAAC;GACxD,KAAK,YAAY,cAAc,EAAE,QAAQ,aAAa,CAAC;GACvD,KAAK,YAAY,cAAc,EAAE,QAAQ,UAAU,CAAC;GACrD,CAAC;AAEF,SAAO;GACL,SAAS,QAAQ;GACjB,YAAY,WAAW;GACvB,WAAW,UAAU;GACrB,QAAQ,OAAO;GAChB;;;;CA3JJ,YAAY;oBAGR,OAAO,iBAAiB,eAAe"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { InstanceHistoryItem, Participants } from "../model/types.mjs";
|
|
2
|
+
import { BaseRecord, TagsBase } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/repository/WorkflowInstanceRecord.d.ts
|
|
5
|
+
type WorkflowInstanceStatus = 'active' | 'paused' | 'canceled' | 'completed' | 'error';
|
|
6
|
+
interface WorkflowInstanceRecordProps {
|
|
7
|
+
id?: string;
|
|
8
|
+
createdAt?: Date;
|
|
9
|
+
instanceId: string;
|
|
10
|
+
templateId: string;
|
|
11
|
+
templateVersion: string;
|
|
12
|
+
connectionId?: string;
|
|
13
|
+
participants: Participants;
|
|
14
|
+
state: string;
|
|
15
|
+
section?: string;
|
|
16
|
+
context: Record<string, unknown>;
|
|
17
|
+
artifacts: Record<string, unknown>;
|
|
18
|
+
status: WorkflowInstanceStatus;
|
|
19
|
+
history: InstanceHistoryItem[];
|
|
20
|
+
multiplicityKeyValue?: string;
|
|
21
|
+
idempotencyKeys?: string[];
|
|
22
|
+
idempotency?: Array<{
|
|
23
|
+
key: string;
|
|
24
|
+
event: string;
|
|
25
|
+
to: string;
|
|
26
|
+
actionKey?: string;
|
|
27
|
+
}>;
|
|
28
|
+
tags?: TagsBase;
|
|
29
|
+
}
|
|
30
|
+
type DefaultWorkflowInstanceTags = {
|
|
31
|
+
instanceId: string;
|
|
32
|
+
templateId: string;
|
|
33
|
+
templateVersion: string;
|
|
34
|
+
connectionId?: string;
|
|
35
|
+
state: string;
|
|
36
|
+
multiplicityKeyValue?: string;
|
|
37
|
+
};
|
|
38
|
+
declare class WorkflowInstanceRecord extends BaseRecord<DefaultWorkflowInstanceTags, TagsBase> implements WorkflowInstanceRecordProps {
|
|
39
|
+
instanceId: string;
|
|
40
|
+
templateId: string;
|
|
41
|
+
templateVersion: string;
|
|
42
|
+
connectionId?: string;
|
|
43
|
+
participants: Participants;
|
|
44
|
+
state: string;
|
|
45
|
+
section?: string;
|
|
46
|
+
context: Record<string, unknown>;
|
|
47
|
+
artifacts: Record<string, unknown>;
|
|
48
|
+
status: WorkflowInstanceStatus;
|
|
49
|
+
history: InstanceHistoryItem[];
|
|
50
|
+
multiplicityKeyValue?: string;
|
|
51
|
+
idempotencyKeys?: string[];
|
|
52
|
+
idempotency?: Array<{
|
|
53
|
+
key: string;
|
|
54
|
+
event: string;
|
|
55
|
+
to: string;
|
|
56
|
+
actionKey?: string;
|
|
57
|
+
}>;
|
|
58
|
+
static readonly type = "WorkflowInstanceRecord";
|
|
59
|
+
readonly type = "WorkflowInstanceRecord";
|
|
60
|
+
constructor(props: WorkflowInstanceRecordProps);
|
|
61
|
+
getTags(): DefaultWorkflowInstanceTags;
|
|
62
|
+
}
|
|
63
|
+
//#endregion
|
|
64
|
+
export { DefaultWorkflowInstanceTags, WorkflowInstanceRecord, WorkflowInstanceRecordProps, WorkflowInstanceStatus };
|
|
65
|
+
//# sourceMappingURL=WorkflowInstanceRecord.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowInstanceRecord.d.mts","names":[],"sources":["../../src/repository/WorkflowInstanceRecord.ts"],"sourcesContent":[],"mappings":";;;;KAKY,sBAAA;AAAA,UAEK,2BAAA,CAFiB;EAEjB,EAAA,CAAA,EAAA,MAAA;EAEH,SAAA,CAAA,EAAA,IAAA;EAKE,UAAA,EAAA,MAAA;EAGL,UAAA,EAAA,MAAA;EACE,eAAA,EAAA,MAAA;EACH,YAAA,CAAA,EAAA,MAAA;EACC,YAAA,EANK,YAML;EAGK,KAAA,EAAA,MAAA;EACP,OAAA,CAAA,EAAA,MAAA;EAAQ,OAAA,EAPN,MAOM,CAAA,MAAA,EAAA,OAAA,CAAA;EAGL,SAAA,EATC,MASD,CAAA,MAAA,EAAA,OAA2B,CAAA;EAS1B,MAAA,EAjBH,sBAkBR;EAAmB,OAAA,EAjBV,mBAiBU,EAAA;EAA6B,oBAAA,CAAA,EAAA,MAAA;EAO1B,eAAA,CAAA,EAAA,MAAA,EAAA;EAGL,WAAA,CAAA,EAxBH,KAwBG,CAAA;IACE,GAAA,EAAA,MAAA;IACH,KAAA,EAAA,MAAA;IACC,EAAA,EAAA,MAAA;IAGI,SAAA,CAAA,EAAA,MAAA;EAKK,CAAA,CAAA;EAuBR,IAAA,CAAA,EAzDX,QAyDW;;AA3CP,KAXD,2BAAA,GAWC;EAA2B,UAAA,EAAA,MAAA;;;;;;;cAF3B,sBAAA,SACH,WAAW,6BAA6B,qBACrC;;;;;gBAMW;;;WAGL;aACE;UACH;WACC;;;gBAGI;;;;;;;;qBAKK;aAuBR"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { BaseRecord, utils } from "@credo-ts/core";
|
|
2
|
+
|
|
3
|
+
//#region src/repository/WorkflowInstanceRecord.ts
|
|
4
|
+
var WorkflowInstanceRecord = class WorkflowInstanceRecord extends BaseRecord {
|
|
5
|
+
constructor(props) {
|
|
6
|
+
super();
|
|
7
|
+
this.type = WorkflowInstanceRecord.type;
|
|
8
|
+
if (props) {
|
|
9
|
+
this.id = props.id ?? props.instanceId ?? utils.uuid();
|
|
10
|
+
this.createdAt = props.createdAt ?? /* @__PURE__ */ new Date();
|
|
11
|
+
this.instanceId = props.instanceId;
|
|
12
|
+
this.templateId = props.templateId;
|
|
13
|
+
this.templateVersion = props.templateVersion;
|
|
14
|
+
this.connectionId = props.connectionId;
|
|
15
|
+
this.participants = props.participants;
|
|
16
|
+
this.state = props.state;
|
|
17
|
+
this.section = props.section;
|
|
18
|
+
this.context = props.context ?? {};
|
|
19
|
+
this.artifacts = props.artifacts ?? {};
|
|
20
|
+
this.status = props.status;
|
|
21
|
+
this.history = props.history ?? [];
|
|
22
|
+
this.multiplicityKeyValue = props.multiplicityKeyValue;
|
|
23
|
+
this.idempotencyKeys = props.idempotencyKeys ?? [];
|
|
24
|
+
this.idempotency = props.idempotency ?? [];
|
|
25
|
+
this._tags = props.tags ?? {};
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
getTags() {
|
|
29
|
+
return {
|
|
30
|
+
...this._tags,
|
|
31
|
+
instanceId: this.instanceId,
|
|
32
|
+
templateId: this.templateId,
|
|
33
|
+
templateVersion: this.templateVersion,
|
|
34
|
+
connectionId: this.connectionId,
|
|
35
|
+
state: this.state,
|
|
36
|
+
multiplicityKeyValue: this.multiplicityKeyValue
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
WorkflowInstanceRecord.type = "WorkflowInstanceRecord";
|
|
41
|
+
|
|
42
|
+
//#endregion
|
|
43
|
+
export { WorkflowInstanceRecord };
|
|
44
|
+
//# sourceMappingURL=WorkflowInstanceRecord.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowInstanceRecord.mjs","names":[],"sources":["../../src/repository/WorkflowInstanceRecord.ts"],"sourcesContent":["import type { InstanceHistoryItem, Participants } from '../model/types'\nimport type { TagsBase } from '@credo-ts/core'\n\nimport { BaseRecord, utils } from '@credo-ts/core'\n\nexport type WorkflowInstanceStatus = 'active' | 'paused' | 'canceled' | 'completed' | 'error'\n\nexport interface WorkflowInstanceRecordProps {\n id?: string\n createdAt?: Date\n instanceId: string\n templateId: string\n templateVersion: string\n connectionId?: string\n participants: Participants\n state: string\n section?: string\n context: Record<string, unknown>\n artifacts: Record<string, unknown>\n status: WorkflowInstanceStatus\n history: InstanceHistoryItem[]\n multiplicityKeyValue?: string\n idempotencyKeys?: string[]\n idempotency?: Array<{ key: string; event: string; to: string; actionKey?: string }>\n tags?: TagsBase\n}\n\nexport type DefaultWorkflowInstanceTags = {\n instanceId: string\n templateId: string\n templateVersion: string\n connectionId?: string\n state: string\n multiplicityKeyValue?: string\n}\n\nexport class WorkflowInstanceRecord\n extends BaseRecord<DefaultWorkflowInstanceTags, TagsBase>\n implements WorkflowInstanceRecordProps\n{\n public instanceId!: string\n public templateId!: string\n public templateVersion!: string\n public connectionId?: string\n public participants!: Participants\n public state!: string\n public section?: string\n public context!: Record<string, unknown>\n public artifacts!: Record<string, unknown>\n public status!: WorkflowInstanceStatus\n public history!: InstanceHistoryItem[]\n public multiplicityKeyValue?: string\n public idempotencyKeys?: string[]\n public idempotency?: Array<{ key: string; event: string; to: string; actionKey?: string }>\n\n public static readonly type = 'WorkflowInstanceRecord'\n public readonly type = WorkflowInstanceRecord.type\n\n public constructor(props: WorkflowInstanceRecordProps) {\n super()\n if (props) {\n this.id = props.id ?? props.instanceId ?? utils.uuid()\n this.createdAt = props.createdAt ?? new Date()\n this.instanceId = props.instanceId\n this.templateId = props.templateId\n this.templateVersion = props.templateVersion\n this.connectionId = props.connectionId\n this.participants = props.participants\n this.state = props.state\n this.section = props.section\n this.context = props.context ?? {}\n this.artifacts = props.artifacts ?? {}\n this.status = props.status\n this.history = props.history ?? []\n this.multiplicityKeyValue = props.multiplicityKeyValue\n this.idempotencyKeys = props.idempotencyKeys ?? []\n this.idempotency = props.idempotency ?? []\n this._tags = props.tags ?? {}\n }\n }\n\n public getTags(): DefaultWorkflowInstanceTags {\n return {\n ...this._tags,\n instanceId: this.instanceId,\n templateId: this.templateId,\n templateVersion: this.templateVersion,\n connectionId: this.connectionId,\n state: this.state,\n multiplicityKeyValue: this.multiplicityKeyValue,\n }\n }\n}\n"],"mappings":";;;AAoCA,IAAa,yBAAb,MAAa,+BACH,WAEV;CAmBE,AAAO,YAAY,OAAoC;AACrD,SAAO;OAHO,OAAO,uBAAuB;AAI5C,MAAI,OAAO;AACT,QAAK,KAAK,MAAM,MAAM,MAAM,cAAc,MAAM,MAAM;AACtD,QAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,QAAK,aAAa,MAAM;AACxB,QAAK,aAAa,MAAM;AACxB,QAAK,kBAAkB,MAAM;AAC7B,QAAK,eAAe,MAAM;AAC1B,QAAK,eAAe,MAAM;AAC1B,QAAK,QAAQ,MAAM;AACnB,QAAK,UAAU,MAAM;AACrB,QAAK,UAAU,MAAM,WAAW,EAAE;AAClC,QAAK,YAAY,MAAM,aAAa,EAAE;AACtC,QAAK,SAAS,MAAM;AACpB,QAAK,UAAU,MAAM,WAAW,EAAE;AAClC,QAAK,uBAAuB,MAAM;AAClC,QAAK,kBAAkB,MAAM,mBAAmB,EAAE;AAClD,QAAK,cAAc,MAAM,eAAe,EAAE;AAC1C,QAAK,QAAQ,MAAM,QAAQ,EAAE;;;CAIjC,AAAO,UAAuC;AAC5C,SAAO;GACL,GAAG,KAAK;GACR,YAAY,KAAK;GACjB,YAAY,KAAK;GACjB,iBAAiB,KAAK;GACtB,cAAc,KAAK;GACnB,OAAO,KAAK;GACZ,sBAAsB,KAAK;GAC5B;;;uBAnCoB,OAAO"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { WorkflowInstanceRecord } from "./WorkflowInstanceRecord.mjs";
|
|
2
|
+
import { AgentContext, EventEmitter, Repository, StorageService } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/repository/WorkflowInstanceRepository.d.ts
|
|
5
|
+
declare class WorkflowInstanceRepository extends Repository<WorkflowInstanceRecord> {
|
|
6
|
+
constructor(storageService: StorageService<WorkflowInstanceRecord>, eventEmitter: EventEmitter);
|
|
7
|
+
findByTemplateAndConnection(agentContext: AgentContext, templateId: string, connectionId?: string): Promise<WorkflowInstanceRecord[]>;
|
|
8
|
+
findByTemplateConnAndMultiplicity(agentContext: AgentContext, templateId: string, connectionId: string | undefined, multiplicityKeyValue: string): Promise<WorkflowInstanceRecord[]>;
|
|
9
|
+
findByConnection(agentContext: AgentContext, connectionId: string): Promise<WorkflowInstanceRecord[]>;
|
|
10
|
+
findLatestByConnection(agentContext: AgentContext, connectionId: string): Promise<WorkflowInstanceRecord | null>;
|
|
11
|
+
getByInstanceId(agentContext: AgentContext, instanceId: string): Promise<WorkflowInstanceRecord | null>;
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { WorkflowInstanceRepository };
|
|
15
|
+
//# sourceMappingURL=WorkflowInstanceRepository.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowInstanceRepository.d.mts","names":[],"sources":["../../src/repository/WorkflowInstanceRepository.ts"],"sourcesContent":[],"mappings":";;;;cAMa,0BAAA,SAAmC,WAAW;EAA9C,WAAA,CAAA,cAAA,EAEgD,cAFrB,CAEoC,sBAFpC,CAAA,EAAA,YAAA,EAGtB,YAHsB;EAAmB,2BAAA,CAAA,YAAA,EAQF,YARE,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,CAAA,EAAA,MAAA,CAAA,EAQqD,OARrD,CAQqD,sBARrD,EAAA,CAAA;EAEiB,iCAAA,CAAA,YAAA,EAW1D,YAX0D,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,MAAA,GAAA,SAAA,EAAA,oBAAA,EAAA,MAAA,CAAA,EAc5C,OAd4C,CAc5C,sBAd4C,EAAA,CAAA;EAAf,gBAAA,CAAA,YAAA,EAuBf,YAvBe,EAAA,YAAA,EAAA,MAAA,CAAA,EAuBmB,OAvBnB,CAuBmB,sBAvBnB,EAAA,CAAA;EAC3C,sBAAA,CAAA,YAAA,EA0BkC,YA1BlC,EAAA,YAAA,EAAA,MAAA,CAAA,EA0BoE,OA1BpE,CA0BoE,sBA1BpE,GAAA,IAAA,CAAA;EAKuC,eAAA,CAAA,YAAA,EA+BZ,YA/BY,EAAA,UAAA,EAAA,MAAA,CAAA,EA+BoB,OA/BpB,CA+BoB,sBA/BpB,GAAA,IAAA,CAAA"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { __decorateMetadata, init_decorateMetadata } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
|
|
2
|
+
import { __decorateParam } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs";
|
|
3
|
+
import { __decorate, init_decorate } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
|
|
4
|
+
import { WorkflowInstanceRecord } from "./WorkflowInstanceRecord.mjs";
|
|
5
|
+
import { EventEmitter, InjectionSymbols, Repository, inject, injectable } from "@credo-ts/core";
|
|
6
|
+
|
|
7
|
+
//#region src/repository/WorkflowInstanceRepository.ts
|
|
8
|
+
init_decorateMetadata();
|
|
9
|
+
init_decorate();
|
|
10
|
+
var _ref;
|
|
11
|
+
let WorkflowInstanceRepository = class WorkflowInstanceRepository$1 extends Repository {
|
|
12
|
+
constructor(storageService, eventEmitter) {
|
|
13
|
+
super(WorkflowInstanceRecord, storageService, eventEmitter);
|
|
14
|
+
}
|
|
15
|
+
async findByTemplateAndConnection(agentContext, templateId, connectionId) {
|
|
16
|
+
return this.findByQuery(agentContext, {
|
|
17
|
+
templateId,
|
|
18
|
+
...connectionId ? { connectionId } : {}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async findByTemplateConnAndMultiplicity(agentContext, templateId, connectionId, multiplicityKeyValue) {
|
|
22
|
+
return this.findByQuery(agentContext, {
|
|
23
|
+
templateId,
|
|
24
|
+
...connectionId ? { connectionId } : {},
|
|
25
|
+
multiplicityKeyValue
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
async findByConnection(agentContext, connectionId) {
|
|
29
|
+
return this.findByQuery(agentContext, { connectionId });
|
|
30
|
+
}
|
|
31
|
+
async findLatestByConnection(agentContext, connectionId) {
|
|
32
|
+
const list = await this.findByConnection(agentContext, connectionId);
|
|
33
|
+
if (!list?.length) return null;
|
|
34
|
+
return list.sort((a, b) => (b.updatedAt?.getTime?.() || b.createdAt?.getTime?.() || 0) - (a.updatedAt?.getTime?.() || a.createdAt?.getTime?.() || 0))[0];
|
|
35
|
+
}
|
|
36
|
+
async getByInstanceId(agentContext, instanceId) {
|
|
37
|
+
return this.findSingleByQuery(agentContext, { instanceId });
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
WorkflowInstanceRepository = __decorate([
|
|
41
|
+
injectable(),
|
|
42
|
+
__decorateParam(0, inject(InjectionSymbols.StorageService)),
|
|
43
|
+
__decorateMetadata("design:paramtypes", [Object, typeof (_ref = typeof EventEmitter !== "undefined" && EventEmitter) === "function" ? _ref : Object])
|
|
44
|
+
], WorkflowInstanceRepository);
|
|
45
|
+
|
|
46
|
+
//#endregion
|
|
47
|
+
export { WorkflowInstanceRepository };
|
|
48
|
+
//# sourceMappingURL=WorkflowInstanceRepository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowInstanceRepository.mjs","names":["WorkflowInstanceRepository","storageService: StorageService<WorkflowInstanceRecord>"],"sources":["../../src/repository/WorkflowInstanceRepository.ts"],"sourcesContent":["import type { AgentContext, StorageService } from '@credo-ts/core'\nimport { EventEmitter, InjectionSymbols, Repository, inject, injectable } from '@credo-ts/core'\n\nimport { WorkflowInstanceRecord } from './WorkflowInstanceRecord'\n\n@injectable()\nexport class WorkflowInstanceRepository extends Repository<WorkflowInstanceRecord> {\n public constructor(\n @inject(InjectionSymbols.StorageService) storageService: StorageService<WorkflowInstanceRecord>,\n eventEmitter: EventEmitter\n ) {\n super(WorkflowInstanceRecord, storageService, eventEmitter)\n }\n\n public async findByTemplateAndConnection(agentContext: AgentContext, templateId: string, connectionId?: string) {\n return this.findByQuery(agentContext, { templateId, ...(connectionId ? { connectionId } : {}) })\n }\n\n public async findByTemplateConnAndMultiplicity(\n agentContext: AgentContext,\n templateId: string,\n connectionId: string | undefined,\n multiplicityKeyValue: string\n ) {\n return this.findByQuery(agentContext, {\n templateId,\n ...(connectionId ? { connectionId } : {}),\n multiplicityKeyValue,\n })\n }\n\n public async findByConnection(agentContext: AgentContext, connectionId: string) {\n return this.findByQuery(agentContext, { connectionId })\n }\n\n public async findLatestByConnection(agentContext: AgentContext, connectionId: string) {\n const list = await this.findByConnection(agentContext, connectionId)\n if (!list?.length) return null\n return list.sort(\n (a, b) =>\n (b.updatedAt?.getTime?.() || b.createdAt?.getTime?.() || 0) -\n (a.updatedAt?.getTime?.() || a.createdAt?.getTime?.() || 0)\n )[0]\n }\n\n public async getByInstanceId(agentContext: AgentContext, instanceId: string) {\n return this.findSingleByQuery(agentContext, { instanceId })\n }\n}\n"],"mappings":";;;;;;;;;;AAMO,uCAAMA,qCAAmC,WAAmC;CACjF,AAAO,YACL,AAAyCC,gBACzC,cACA;AACA,QAAM,wBAAwB,gBAAgB,aAAa;;CAG7D,MAAa,4BAA4B,cAA4B,YAAoB,cAAuB;AAC9G,SAAO,KAAK,YAAY,cAAc;GAAE;GAAY,GAAI,eAAe,EAAE,cAAc,GAAG,EAAE;GAAG,CAAC;;CAGlG,MAAa,kCACX,cACA,YACA,cACA,sBACA;AACA,SAAO,KAAK,YAAY,cAAc;GACpC;GACA,GAAI,eAAe,EAAE,cAAc,GAAG,EAAE;GACxC;GACD,CAAC;;CAGJ,MAAa,iBAAiB,cAA4B,cAAsB;AAC9E,SAAO,KAAK,YAAY,cAAc,EAAE,cAAc,CAAC;;CAGzD,MAAa,uBAAuB,cAA4B,cAAsB;EACpF,MAAM,OAAO,MAAM,KAAK,iBAAiB,cAAc,aAAa;AACpE,MAAI,CAAC,MAAM,OAAQ,QAAO;AAC1B,SAAO,KAAK,MACT,GAAG,OACD,EAAE,WAAW,WAAW,IAAI,EAAE,WAAW,WAAW,IAAI,MACxD,EAAE,WAAW,WAAW,IAAI,EAAE,WAAW,WAAW,IAAI,GAC5D,CAAC;;CAGJ,MAAa,gBAAgB,cAA4B,YAAoB;AAC3E,SAAO,KAAK,kBAAkB,cAAc,EAAE,YAAY,CAAC;;;;CAzC9D,YAAY;oBAGR,OAAO,iBAAiB,eAAe"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { WorkflowTemplate } from "../model/types.mjs";
|
|
2
|
+
import { BaseRecord, TagsBase } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/repository/WorkflowTemplateRecord.d.ts
|
|
5
|
+
interface WorkflowTemplateRecordProps {
|
|
6
|
+
id?: string;
|
|
7
|
+
createdAt?: Date;
|
|
8
|
+
template: WorkflowTemplate;
|
|
9
|
+
hash?: string;
|
|
10
|
+
tags?: TagsBase;
|
|
11
|
+
}
|
|
12
|
+
type DefaultWorkflowTemplateTags = {
|
|
13
|
+
templateId: string;
|
|
14
|
+
version: string;
|
|
15
|
+
hash?: string;
|
|
16
|
+
};
|
|
17
|
+
declare class WorkflowTemplateRecord extends BaseRecord<DefaultWorkflowTemplateTags, TagsBase> implements WorkflowTemplateRecordProps {
|
|
18
|
+
template: WorkflowTemplate;
|
|
19
|
+
hash?: string;
|
|
20
|
+
static readonly type = "WorkflowTemplateRecord";
|
|
21
|
+
readonly type = "WorkflowTemplateRecord";
|
|
22
|
+
constructor(props: WorkflowTemplateRecordProps);
|
|
23
|
+
getTags(): DefaultWorkflowTemplateTags;
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
export { DefaultWorkflowTemplateTags, WorkflowTemplateRecord, WorkflowTemplateRecordProps };
|
|
27
|
+
//# sourceMappingURL=WorkflowTemplateRecord.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowTemplateRecord.d.mts","names":[],"sources":["../../src/repository/WorkflowTemplateRecord.ts"],"sourcesContent":[],"mappings":";;;;UAKiB,2BAAA;EAAA,EAAA,CAAA,EAAA,MAAA;EAEH,SAAA,CAAA,EAAA,IAAA;EACF,QAAA,EAAA,gBAAA;EAEH,IAAA,CAAA,EAAA,MAAA;EAAQ,IAAA,CAAA,EAAR,QAAQ;AAGjB;AAMa,KAND,2BAAA,GAOV;EAAmB,UAAA,EAAA,MAAA;EAA6B,OAAA,EAAA,MAAA;EAG9B,IAAA,CAAA,EAAA,MAAA;CAMQ;AAWR,cArBP,sBAAA,SACH,UAoBU,CApBC,2BAoBD,EApB8B,QAoB9B,CAAA,YAnBP,2BAmBO,CAAA;EApBV,QAAA,EAGU,gBAHV;EACG,IAAA,CAAA,EAAA,MAAA;EAA2B,gBAAA,IAAA,GAAA,wBAAA;;qBAQZ;aAWR"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseRecord, utils } from "@credo-ts/core";
|
|
2
|
+
|
|
3
|
+
//#region src/repository/WorkflowTemplateRecord.ts
|
|
4
|
+
var WorkflowTemplateRecord = class WorkflowTemplateRecord extends BaseRecord {
|
|
5
|
+
constructor(props) {
|
|
6
|
+
super();
|
|
7
|
+
this.type = WorkflowTemplateRecord.type;
|
|
8
|
+
if (props) {
|
|
9
|
+
this.id = props.id ?? utils.uuid();
|
|
10
|
+
this.createdAt = props.createdAt ?? /* @__PURE__ */ new Date();
|
|
11
|
+
this.template = props.template;
|
|
12
|
+
this.hash = props.hash;
|
|
13
|
+
this._tags = props.tags ?? {};
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
getTags() {
|
|
17
|
+
return {
|
|
18
|
+
...this._tags,
|
|
19
|
+
templateId: this.template?.template_id,
|
|
20
|
+
version: this.template?.version,
|
|
21
|
+
hash: this.hash
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
WorkflowTemplateRecord.type = "WorkflowTemplateRecord";
|
|
26
|
+
|
|
27
|
+
//#endregion
|
|
28
|
+
export { WorkflowTemplateRecord };
|
|
29
|
+
//# sourceMappingURL=WorkflowTemplateRecord.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowTemplateRecord.mjs","names":[],"sources":["../../src/repository/WorkflowTemplateRecord.ts"],"sourcesContent":["import type { WorkflowTemplate } from '../model/types'\nimport type { TagsBase } from '@credo-ts/core'\n\nimport { BaseRecord, utils } from '@credo-ts/core'\n\nexport interface WorkflowTemplateRecordProps {\n id?: string\n createdAt?: Date\n template: WorkflowTemplate\n hash?: string\n tags?: TagsBase\n}\n\nexport type DefaultWorkflowTemplateTags = {\n templateId: string\n version: string\n hash?: string\n}\n\nexport class WorkflowTemplateRecord\n extends BaseRecord<DefaultWorkflowTemplateTags, TagsBase>\n implements WorkflowTemplateRecordProps\n{\n public template!: WorkflowTemplate\n public hash?: string\n\n public static readonly type = 'WorkflowTemplateRecord'\n public readonly type = WorkflowTemplateRecord.type\n\n public constructor(props: WorkflowTemplateRecordProps) {\n super()\n if (props) {\n this.id = props.id ?? utils.uuid()\n this.createdAt = props.createdAt ?? new Date()\n this.template = props.template\n this.hash = props.hash\n this._tags = props.tags ?? {}\n }\n }\n\n public getTags(): DefaultWorkflowTemplateTags {\n return {\n ...this._tags,\n templateId: this.template?.template_id,\n version: this.template?.version,\n hash: this.hash,\n }\n }\n}\n"],"mappings":";;;AAmBA,IAAa,yBAAb,MAAa,+BACH,WAEV;CAOE,AAAO,YAAY,OAAoC;AACrD,SAAO;OAHO,OAAO,uBAAuB;AAI5C,MAAI,OAAO;AACT,QAAK,KAAK,MAAM,MAAM,MAAM,MAAM;AAClC,QAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,QAAK,WAAW,MAAM;AACtB,QAAK,OAAO,MAAM;AAClB,QAAK,QAAQ,MAAM,QAAQ,EAAE;;;CAIjC,AAAO,UAAuC;AAC5C,SAAO;GACL,GAAG,KAAK;GACR,YAAY,KAAK,UAAU;GAC3B,SAAS,KAAK,UAAU;GACxB,MAAM,KAAK;GACZ;;;uBApBoB,OAAO"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { WorkflowTemplateRecord } from "./WorkflowTemplateRecord.mjs";
|
|
2
|
+
import { AgentContext, EventEmitter, Repository, StorageService } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/repository/WorkflowTemplateRepository.d.ts
|
|
5
|
+
declare class WorkflowTemplateRepository extends Repository<WorkflowTemplateRecord> {
|
|
6
|
+
constructor(storageService: StorageService<WorkflowTemplateRecord>, eventEmitter: EventEmitter);
|
|
7
|
+
findByTemplateIdAndVersion(agentContext: AgentContext, templateId: string, version?: string): Promise<WorkflowTemplateRecord | null>;
|
|
8
|
+
}
|
|
9
|
+
//#endregion
|
|
10
|
+
export { WorkflowTemplateRepository };
|
|
11
|
+
//# sourceMappingURL=WorkflowTemplateRepository.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowTemplateRepository.d.mts","names":[],"sources":["../../src/repository/WorkflowTemplateRepository.ts"],"sourcesContent":[],"mappings":";;;;cAOa,0BAAA,SAAmC,WAAW;EAA9C,WAAA,CAAA,cAAA,EAEgD,cAFrB,CAEoC,sBAFpC,CAAA,EAAA,YAAA,EAGtB,YAHsB;EAAmB,0BAAA,CAAA,YAAA,EAQH,YARG,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,MAAA,CAAA,EAQ+C,OAR/C,CAQ+C,sBAR/C,GAAA,IAAA,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { __decorateMetadata, init_decorateMetadata } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
|
|
2
|
+
import { __decorateParam } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs";
|
|
3
|
+
import { __decorate, init_decorate } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
|
|
4
|
+
import { WorkflowTemplateRecord } from "./WorkflowTemplateRecord.mjs";
|
|
5
|
+
import { EventEmitter, InjectionSymbols, Repository, inject, injectable } from "@credo-ts/core";
|
|
6
|
+
import semver from "semver";
|
|
7
|
+
|
|
8
|
+
//#region src/repository/WorkflowTemplateRepository.ts
|
|
9
|
+
init_decorateMetadata();
|
|
10
|
+
init_decorate();
|
|
11
|
+
var _ref;
|
|
12
|
+
let WorkflowTemplateRepository = class WorkflowTemplateRepository$1 extends Repository {
|
|
13
|
+
constructor(storageService, eventEmitter) {
|
|
14
|
+
super(WorkflowTemplateRecord, storageService, eventEmitter);
|
|
15
|
+
}
|
|
16
|
+
async findByTemplateIdAndVersion(agentContext, templateId, version) {
|
|
17
|
+
const list = await this.findByQuery(agentContext, {
|
|
18
|
+
templateId,
|
|
19
|
+
...version ? { version } : {}
|
|
20
|
+
});
|
|
21
|
+
if (!list?.length) return null;
|
|
22
|
+
if (version) return list[0];
|
|
23
|
+
return list.slice().sort((a, b) => {
|
|
24
|
+
const va = a.template.version || "";
|
|
25
|
+
const vb = b.template.version || "";
|
|
26
|
+
const sva = semver.valid(va);
|
|
27
|
+
const svb = semver.valid(vb);
|
|
28
|
+
if (sva && svb) return semver.rcompare(va, vb);
|
|
29
|
+
if (sva && !svb) return -1;
|
|
30
|
+
if (!sva && svb) return 1;
|
|
31
|
+
return vb.localeCompare(va);
|
|
32
|
+
})[0];
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
WorkflowTemplateRepository = __decorate([
|
|
36
|
+
injectable(),
|
|
37
|
+
__decorateParam(0, inject(InjectionSymbols.StorageService)),
|
|
38
|
+
__decorateMetadata("design:paramtypes", [Object, typeof (_ref = typeof EventEmitter !== "undefined" && EventEmitter) === "function" ? _ref : Object])
|
|
39
|
+
], WorkflowTemplateRepository);
|
|
40
|
+
|
|
41
|
+
//#endregion
|
|
42
|
+
export { WorkflowTemplateRepository };
|
|
43
|
+
//# sourceMappingURL=WorkflowTemplateRepository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowTemplateRepository.mjs","names":["WorkflowTemplateRepository","storageService: StorageService<WorkflowTemplateRecord>"],"sources":["../../src/repository/WorkflowTemplateRepository.ts"],"sourcesContent":["import type { AgentContext, StorageService } from '@credo-ts/core'\nimport { EventEmitter, InjectionSymbols, Repository, inject, injectable } from '@credo-ts/core'\n\nimport { WorkflowTemplateRecord } from './WorkflowTemplateRecord'\nimport semver from 'semver'\n\n@injectable()\nexport class WorkflowTemplateRepository extends Repository<WorkflowTemplateRecord> {\n public constructor(\n @inject(InjectionSymbols.StorageService) storageService: StorageService<WorkflowTemplateRecord>,\n eventEmitter: EventEmitter\n ) {\n super(WorkflowTemplateRecord, storageService, eventEmitter)\n }\n\n public async findByTemplateIdAndVersion(agentContext: AgentContext, templateId: string, version?: string) {\n const list = await this.findByQuery(agentContext, { templateId, ...(version ? { version } : {}) })\n if (!list?.length) return null\n if (version) return list[0]\n // choose highest by semver when possible, fall back to lexicographic\n return list\n .slice()\n .sort((a, b) => {\n const va = a.template.version || ''\n const vb = b.template.version || ''\n const sva = semver.valid(va)\n const svb = semver.valid(vb)\n if (sva && svb) return semver.rcompare(va, vb)\n if (sva && !svb) return -1\n if (!sva && svb) return 1\n return vb.localeCompare(va)\n })[0]\n }\n}\n"],"mappings":";;;;;;;;;;;AAOO,uCAAMA,qCAAmC,WAAmC;CACjF,AAAO,YACL,AAAyCC,gBACzC,cACA;AACA,QAAM,wBAAwB,gBAAgB,aAAa;;CAG7D,MAAa,2BAA2B,cAA4B,YAAoB,SAAkB;EACxG,MAAM,OAAO,MAAM,KAAK,YAAY,cAAc;GAAE;GAAY,GAAI,UAAU,EAAE,SAAS,GAAG,EAAE;GAAG,CAAC;AAClG,MAAI,CAAC,MAAM,OAAQ,QAAO;AAC1B,MAAI,QAAS,QAAO,KAAK;AAEzB,SAAO,KACJ,OAAO,CACP,MAAM,GAAG,MAAM;GACd,MAAM,KAAK,EAAE,SAAS,WAAW;GACjC,MAAM,KAAK,EAAE,SAAS,WAAW;GACjC,MAAM,MAAM,OAAO,MAAM,GAAG;GAC5B,MAAM,MAAM,OAAO,MAAM,GAAG;AAC5B,OAAI,OAAO,IAAK,QAAO,OAAO,SAAS,IAAI,GAAG;AAC9C,OAAI,OAAO,CAAC,IAAK,QAAO;AACxB,OAAI,CAAC,OAAO,IAAK,QAAO;AACxB,UAAO,GAAG,cAAc,GAAG;IAC3B,CAAC;;;;CAzBR,YAAY;oBAGR,OAAO,iBAAiB,eAAe"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { WorkflowModuleConfig } from "../WorkflowModuleConfig.mjs";
|
|
2
|
+
import { Participants, UiItem, WorkflowTemplate } from "../model/types.mjs";
|
|
3
|
+
import { WorkflowInstanceRecord } from "../repository/WorkflowInstanceRecord.mjs";
|
|
4
|
+
import { WorkflowTemplateRecord } from "../repository/WorkflowTemplateRecord.mjs";
|
|
5
|
+
import { WorkflowInstanceRepository } from "../repository/WorkflowInstanceRepository.mjs";
|
|
6
|
+
import { WorkflowTemplateRepository } from "../repository/WorkflowTemplateRepository.mjs";
|
|
7
|
+
import { AgentConfig, AgentContext, EventEmitter } from "@credo-ts/core";
|
|
8
|
+
|
|
9
|
+
//#region src/services/WorkflowService.d.ts
|
|
10
|
+
declare class WorkflowService {
|
|
11
|
+
private readonly templateRepo;
|
|
12
|
+
private readonly instanceRepo;
|
|
13
|
+
private readonly config;
|
|
14
|
+
private readonly agentConfig;
|
|
15
|
+
private readonly eventEmitter?;
|
|
16
|
+
private readonly actions;
|
|
17
|
+
constructor(templateRepo: WorkflowTemplateRepository, instanceRepo: WorkflowInstanceRepository, config: WorkflowModuleConfig, agentConfig: AgentConfig, eventEmitter?: EventEmitter | undefined);
|
|
18
|
+
registerActions(actions: Array<{
|
|
19
|
+
typeUri: string;
|
|
20
|
+
execute: (...args: unknown[]) => Promise<unknown>;
|
|
21
|
+
}>): void;
|
|
22
|
+
publishTemplate(agentContext: AgentContext, template: WorkflowTemplate): Promise<WorkflowTemplateRecord>;
|
|
23
|
+
start(agentContext: AgentContext, opts: {
|
|
24
|
+
template_id: string;
|
|
25
|
+
template_version?: string;
|
|
26
|
+
instance_id?: string;
|
|
27
|
+
connection_id?: string;
|
|
28
|
+
participants?: Participants;
|
|
29
|
+
context?: Record<string, unknown>;
|
|
30
|
+
}): Promise<WorkflowInstanceRecord>;
|
|
31
|
+
advance(agentContext: AgentContext, opts: {
|
|
32
|
+
instance_id: string;
|
|
33
|
+
event: string;
|
|
34
|
+
idempotency_key?: string;
|
|
35
|
+
input?: Record<string, unknown>;
|
|
36
|
+
}, instanceRecord?: WorkflowInstanceRecord): Promise<WorkflowInstanceRecord>;
|
|
37
|
+
status(agentContext: AgentContext, opts: {
|
|
38
|
+
instance_id: string;
|
|
39
|
+
include_actions?: boolean;
|
|
40
|
+
include_ui?: boolean;
|
|
41
|
+
ui_profile?: string;
|
|
42
|
+
viewer?: {
|
|
43
|
+
role?: string;
|
|
44
|
+
connection_id?: string;
|
|
45
|
+
did?: string;
|
|
46
|
+
participantKey?: string;
|
|
47
|
+
};
|
|
48
|
+
capabilities?: string[];
|
|
49
|
+
}, instanceRecord?: WorkflowInstanceRecord): Promise<{
|
|
50
|
+
instance_id: string;
|
|
51
|
+
template_id: string;
|
|
52
|
+
template_version: string;
|
|
53
|
+
connection_id?: string;
|
|
54
|
+
connection?: {
|
|
55
|
+
id?: string;
|
|
56
|
+
myDid?: string;
|
|
57
|
+
theirDid?: string;
|
|
58
|
+
};
|
|
59
|
+
participants?: Participants;
|
|
60
|
+
context?: Record<string, unknown>;
|
|
61
|
+
status?: string;
|
|
62
|
+
createdAt?: Date;
|
|
63
|
+
updatedAt?: Date;
|
|
64
|
+
state: string;
|
|
65
|
+
section?: string;
|
|
66
|
+
allowed_events: string[];
|
|
67
|
+
action_menu: Array<{
|
|
68
|
+
label?: string;
|
|
69
|
+
event: string;
|
|
70
|
+
}>;
|
|
71
|
+
artifacts: Record<string, unknown>;
|
|
72
|
+
ui?: UiItem[];
|
|
73
|
+
ui_profile?: string;
|
|
74
|
+
assets?: Record<string, {
|
|
75
|
+
mediaType: string;
|
|
76
|
+
uri?: string;
|
|
77
|
+
attachmentId?: string;
|
|
78
|
+
}>;
|
|
79
|
+
}>;
|
|
80
|
+
pause(agentContext: AgentContext, opts: {
|
|
81
|
+
instance_id: string;
|
|
82
|
+
reason?: string;
|
|
83
|
+
}, instanceRecord?: WorkflowInstanceRecord): Promise<WorkflowInstanceRecord>;
|
|
84
|
+
resume(agentContext: AgentContext, opts: {
|
|
85
|
+
instance_id: string;
|
|
86
|
+
reason?: string;
|
|
87
|
+
}, instanceRecord?: WorkflowInstanceRecord): Promise<WorkflowInstanceRecord>;
|
|
88
|
+
cancel(agentContext: AgentContext, opts: {
|
|
89
|
+
instance_id: string;
|
|
90
|
+
reason?: string;
|
|
91
|
+
}, instanceRecord?: WorkflowInstanceRecord): Promise<WorkflowInstanceRecord>;
|
|
92
|
+
complete(agentContext: AgentContext, opts: {
|
|
93
|
+
instance_id: string;
|
|
94
|
+
reason?: string;
|
|
95
|
+
}, instanceRecord?: WorkflowInstanceRecord): Promise<WorkflowInstanceRecord>;
|
|
96
|
+
autoAdvanceByConnection(agentContext: AgentContext, connectionId: string, event: string): Promise<void>;
|
|
97
|
+
private evalMultiplicity;
|
|
98
|
+
private toInstanceData;
|
|
99
|
+
private problem;
|
|
100
|
+
private getInstanceByIdOrTag;
|
|
101
|
+
private uuid;
|
|
102
|
+
private validateTemplate;
|
|
103
|
+
private sendCompleteMessage;
|
|
104
|
+
}
|
|
105
|
+
//#endregion
|
|
106
|
+
export { WorkflowService };
|
|
107
|
+
//# sourceMappingURL=WorkflowService.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowService.d.mts","names":[],"sources":["../../src/services/WorkflowService.ts"],"sourcesContent":[],"mappings":";;;;;;;;;cA0Ca,eAAA;;EAAA,iBAAA,YAAe;EAIO,iBAAA,MAAA;EACA,iBAAA,WAAA;EACN,iBAAA,YAAA;EACK,iBAAA,OAAA;EACE,WAAA,CAAA,YAAA,EAJD,0BAIC,EAAA,YAAA,EAHD,0BAGC,EAAA,MAAA,EAFP,oBAEO,EAAA,WAAA,EADF,WACE,EAAA,YAAA,CAAA,EAAA,YAAA,GAAA,SAAA;EAewD,eAAA,CAAA,OAAA,EAA1D,KAA0D,CAAA;IAA1D,OAAA,EAAA,MAAA;IAShB,OAAA,EAAA,CAAA,GAAA,IAAA,EAAA,OAAA,EAAA,EAAA,GAT0E,OAS1E,CAAA,OAAA,CAAA;EACJ,CAAA,CAAA,CAAA,EAAA,IAAA;EACD,eAAA,CAAA,YAAA,EAFK,YAEL,EAAA,QAAA,EADC,gBACD,CAAA,EAAR,OAAQ,CAAA,sBAAA,CAAA;EAAR,KAAA,CAAA,YAAA,EAsBa,YAtBb,EAAA,IAAA,EAAA;IAsBa,WAAA,EAAA,MAAA;IAMG,gBAAA,CAAA,EAAA,MAAA;IACL,WAAA,CAAA,EAAA,MAAA;IAEH,aAAA,CAAA,EAAA,MAAA;IAAR,YAAA,CAAA,EAHgB,YAGhB;IAgHa,OAAA,CAAA,EAlHF,MAkHE,CAAA,MAAA,EAAA,OAAA,CAAA;EAKJ,CAAA,CAAA,EArHT,OAqHS,CArHD,sBAqHC,CAAA;EAEO,OAAA,CAAA,YAAA,EAPH,YAOG,EAAA,IAAA,EAAA;IACR,WAAA,EAAA,MAAA;IAAR,KAAA,EAAA,MAAA;IAwKa,eAAA,CAAA,EAAA,MAAA;IASG,KAAA,CAAA,EApLP,MAoLO,CAAA,MAAA,EAAA,OAAA,CAAA;EAOF,CAAA,EAAA,cAAA,CAAA,EAzLE,sBAyLF,CAAA,EAxLd,OAwLc,CAxLN,sBAwLM,CAAA;EACL,MAAA,CAAA,YAAA,EAjBI,YAiBJ,EAAA,IAAA,EAAA;IAEE,WAAA,EAAA,MAAA;IACA,eAAA,CAAA,EAAA,OAAA;IAIC,UAAA,CAAA,EAAA,OAAA;IACF,UAAA,CAAA,EAAA,MAAA;IACN,MAAA,CAAA,EAAA;MAEI,IAAA,CAAA,EAAA,MAAA;MAlBR,aAAA,CAAA,EAAA,MAAA;MAkKa,GAAA,CAAA,EAAA,MAAA;MAEG,cAAA,CAAA,EAAA,MAAA;IACR,CAAA;IAAR,YAAA,CAAA,EAAA,MAAA,EAAA;EAiBa,CAAA,EAAA,cAAA,CAAA,EAvLG,sBAuLH,CAAA,EAtLb,OAsLa,CAAA;IAEG,WAAA,EAAA,MAAA;IACR,WAAA,EAAA,MAAA;IAAR,gBAAA,EAAA,MAAA;IAiBa,aAAA,CAAA,EAAA,MAAA;IAEG,UAAA,CAAA,EAAA;MACR,EAAA,CAAA,EAAA,MAAA;MAAR,KAAA,CAAA,EAAA,MAAA;MAiBa,QAAA,CAAA,EAAA,MAAA;IAEG,CAAA;IACR,YAAA,CAAA,EA3NM,YA2NN;IAAR,OAAA,CAAA,EA1NS,MA0NT,CAAA,MAAA,EAAA,OAAA,CAAA;IA6BgD,MAAA,CAAA,EAAA,MAAA;IAAiD,SAAA,CAAA,EArPtF,IAqPsF;IAAA,SAAA,CAAA,EApPtF,IAoPsF;;;;iBAhPrF;;;;eACF;SACN;;aAEI;;;;;;sBAgJK;;;sBAEG,yBAChB,QAAQ;uBAiBK;;;sBAEG,yBAChB,QAAQ;uBAiBK;;;sBAEG,yBAChB,QAAQ;yBAiBK;;;sBAEG,yBAChB,QAAQ;wCA6BwC,oDAAiD"}
|