@loopstack/core 0.33.0 → 0.34.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/dist/workflow-processor/services/workflow-orchestration.service.d.ts +4 -1
- package/dist/workflow-processor/services/workflow-orchestration.service.d.ts.map +1 -1
- package/dist/workflow-processor/services/workflow-orchestration.service.js +20 -3
- package/dist/workflow-processor/services/workflow-orchestration.service.js.map +1 -1
- package/package.json +2 -2
|
@@ -4,6 +4,7 @@ import { WorkflowService } from '../../persistence/services/workflow.service.js'
|
|
|
4
4
|
import { TaskSchedulerService } from '../../scheduler/services/task-scheduler.service.js';
|
|
5
5
|
import { ExecutionScope } from '../utils/index.js';
|
|
6
6
|
import { CreateWorkflowService } from './create-workflow.service.js';
|
|
7
|
+
import { DocumentStore } from './document-store.service.js';
|
|
7
8
|
import { WorkflowRegistryService } from './workflow-registry.service.js';
|
|
8
9
|
export declare class WorkflowOrchestrationService implements WorkflowOrchestrator {
|
|
9
10
|
private readonly executionScope;
|
|
@@ -11,9 +12,11 @@ export declare class WorkflowOrchestrationService implements WorkflowOrchestrato
|
|
|
11
12
|
private readonly taskSchedulerService;
|
|
12
13
|
private readonly workflowService;
|
|
13
14
|
private readonly workflowRegistryService;
|
|
15
|
+
private readonly documentStore;
|
|
14
16
|
private readonly logger;
|
|
15
|
-
constructor(executionScope: ExecutionScope, createWorkflowService: CreateWorkflowService, taskSchedulerService: TaskSchedulerService, workflowService: WorkflowService, workflowRegistryService: WorkflowRegistryService);
|
|
17
|
+
constructor(executionScope: ExecutionScope, createWorkflowService: CreateWorkflowService, taskSchedulerService: TaskSchedulerService, workflowService: WorkflowService, workflowRegistryService: WorkflowRegistryService, documentStore: DocumentStore);
|
|
16
18
|
queue(workflowClass: Type, args?: Record<string, unknown>, options?: RunOptions): Promise<QueueResult>;
|
|
19
|
+
private persistSubWorkflowLink;
|
|
17
20
|
resume(workflowId: string, payload: Record<string, unknown>, options: ResumeOptions): Promise<void>;
|
|
18
21
|
cancel(workflowId: string): Promise<void>;
|
|
19
22
|
cancelChildren(parentWorkflowId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-orchestration.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/workflow-orchestration.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,
|
|
1
|
+
{"version":3,"file":"workflow-orchestration.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/workflow-orchestration.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,EAEL,WAAW,EACX,aAAa,EACb,UAAU,EAEV,cAAc,EACd,oBAAoB,EAErB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAUzE,qBACa,4BAA6B,YAAW,oBAAoB;IAIrE,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa;IARhC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiD;gBAGrD,cAAc,EAAE,cAAc,EAC9B,qBAAqB,EAAE,qBAAqB,EAC5C,oBAAoB,EAAE,oBAAoB,EAC1C,eAAe,EAAE,eAAe,EAChC,uBAAuB,EAAE,uBAAuB,EAChD,aAAa,EAAE,aAAa;IAGzC,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;YA6C9F,sBAAsB;IAqB9B,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BnG,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCzC,cAAc,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD,QAAQ,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CA2B9D"}
|
|
@@ -10,11 +10,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var WorkflowOrchestrationService_1;
|
|
11
11
|
import { Injectable, Logger } from '@nestjs/common';
|
|
12
12
|
import { randomUUID } from 'node:crypto';
|
|
13
|
-
import { WorkflowState, } from '@loopstack/common';
|
|
13
|
+
import { LinkDocument, WorkflowState, } from '@loopstack/common';
|
|
14
14
|
import { WorkflowService } from '../../persistence/services/workflow.service.js';
|
|
15
15
|
import { TaskSchedulerService } from '../../scheduler/services/task-scheduler.service.js';
|
|
16
16
|
import { ExecutionScope } from '../utils/index.js';
|
|
17
17
|
import { CreateWorkflowService } from './create-workflow.service.js';
|
|
18
|
+
import { DocumentStore } from './document-store.service.js';
|
|
18
19
|
import { WorkflowRegistryService } from './workflow-registry.service.js';
|
|
19
20
|
let WorkflowOrchestrationService = WorkflowOrchestrationService_1 = class WorkflowOrchestrationService {
|
|
20
21
|
executionScope;
|
|
@@ -22,13 +23,15 @@ let WorkflowOrchestrationService = WorkflowOrchestrationService_1 = class Workfl
|
|
|
22
23
|
taskSchedulerService;
|
|
23
24
|
workflowService;
|
|
24
25
|
workflowRegistryService;
|
|
26
|
+
documentStore;
|
|
25
27
|
logger = new Logger(WorkflowOrchestrationService_1.name);
|
|
26
|
-
constructor(executionScope, createWorkflowService, taskSchedulerService, workflowService, workflowRegistryService) {
|
|
28
|
+
constructor(executionScope, createWorkflowService, taskSchedulerService, workflowService, workflowRegistryService, documentStore) {
|
|
27
29
|
this.executionScope = executionScope;
|
|
28
30
|
this.createWorkflowService = createWorkflowService;
|
|
29
31
|
this.taskSchedulerService = taskSchedulerService;
|
|
30
32
|
this.workflowService = workflowService;
|
|
31
33
|
this.workflowRegistryService = workflowRegistryService;
|
|
34
|
+
this.documentStore = documentStore;
|
|
32
35
|
}
|
|
33
36
|
async queue(workflowClass, args, options) {
|
|
34
37
|
const scope = this.executionScope.get();
|
|
@@ -57,10 +60,23 @@ let WorkflowOrchestrationService = WorkflowOrchestrationService_1 = class Workfl
|
|
|
57
60
|
payload: {},
|
|
58
61
|
},
|
|
59
62
|
});
|
|
63
|
+
await this.persistSubWorkflowLink(workflowEntity.id, workflowName, options);
|
|
60
64
|
return {
|
|
61
65
|
workflowId: workflowEntity.id,
|
|
62
66
|
};
|
|
63
67
|
}
|
|
68
|
+
async persistSubWorkflowLink(childWorkflowId, workflowName, options) {
|
|
69
|
+
const show = options?.show ?? 'inline';
|
|
70
|
+
if (show === 'hidden')
|
|
71
|
+
return;
|
|
72
|
+
const label = options?.label ?? workflowName;
|
|
73
|
+
await this.documentStore.save(LinkDocument, {
|
|
74
|
+
label,
|
|
75
|
+
workflowId: childWorkflowId,
|
|
76
|
+
embed: show === 'inline',
|
|
77
|
+
expanded: show === 'inline',
|
|
78
|
+
}, { id: `link_${childWorkflowId}` });
|
|
79
|
+
}
|
|
64
80
|
async resume(workflowId, payload, options) {
|
|
65
81
|
const workflow = await this.workflowService.findById(workflowId);
|
|
66
82
|
if (!workflow) {
|
|
@@ -140,7 +156,8 @@ WorkflowOrchestrationService = WorkflowOrchestrationService_1 = __decorate([
|
|
|
140
156
|
CreateWorkflowService,
|
|
141
157
|
TaskSchedulerService,
|
|
142
158
|
WorkflowService,
|
|
143
|
-
WorkflowRegistryService
|
|
159
|
+
WorkflowRegistryService,
|
|
160
|
+
DocumentStore])
|
|
144
161
|
], WorkflowOrchestrationService);
|
|
145
162
|
export { WorkflowOrchestrationService };
|
|
146
163
|
//# sourceMappingURL=workflow-orchestration.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-orchestration.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/workflow-orchestration.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAQ,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"workflow-orchestration.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/workflow-orchestration.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@loopstack/core",
|
|
3
3
|
"displayName": "Loopstack Core Module",
|
|
4
4
|
"description": "The core module of the loopstack automation framework",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.34.0",
|
|
6
6
|
"repository": "loopstack-ai/core",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"author": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"watch": "nest build --watch"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@loopstack/common": "^0.
|
|
34
|
+
"@loopstack/common": "^0.34.0",
|
|
35
35
|
"handlebars": "^4.7.9",
|
|
36
36
|
"lodash": "^4.18.1",
|
|
37
37
|
"yaml": "^2.8.3"
|