@loopstack/core 0.31.0 → 0.32.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.
Files changed (130) hide show
  1. package/dist/common/dtos/client-message.dto.d.ts +1 -0
  2. package/dist/common/dtos/client-message.dto.d.ts.map +1 -1
  3. package/dist/common/dtos/client-message.dto.js.map +1 -1
  4. package/dist/loop-core.module.d.ts.map +1 -1
  5. package/dist/loop-core.module.js +40 -38
  6. package/dist/loop-core.module.js.map +1 -1
  7. package/dist/persistence/services/workflow-checkpoint.service.d.ts +0 -1
  8. package/dist/persistence/services/workflow-checkpoint.service.d.ts.map +1 -1
  9. package/dist/persistence/services/workflow-checkpoint.service.js.map +1 -1
  10. package/dist/persistence/services/workflow.service.d.ts +0 -6
  11. package/dist/persistence/services/workflow.service.d.ts.map +1 -1
  12. package/dist/persistence/services/workflow.service.js +1 -30
  13. package/dist/persistence/services/workflow.service.js.map +1 -1
  14. package/dist/persistence/services/workspace.service.js +1 -1
  15. package/dist/persistence/services/workspace.service.js.map +1 -1
  16. package/dist/scheduler/services/task-processor/run-workflow-task-processor.service.d.ts +3 -1
  17. package/dist/scheduler/services/task-processor/run-workflow-task-processor.service.d.ts.map +1 -1
  18. package/dist/scheduler/services/task-processor/run-workflow-task-processor.service.js +13 -10
  19. package/dist/scheduler/services/task-processor/run-workflow-task-processor.service.js.map +1 -1
  20. package/dist/scheduler/services/workflow-runner.service.d.ts +16 -6
  21. package/dist/scheduler/services/workflow-runner.service.d.ts.map +1 -1
  22. package/dist/scheduler/services/workflow-runner.service.js +62 -30
  23. package/dist/scheduler/services/workflow-runner.service.js.map +1 -1
  24. package/dist/workflow-processor/services/block-processor.service.js +1 -1
  25. package/dist/workflow-processor/services/block-processor.service.js.map +1 -1
  26. package/dist/workflow-processor/services/create-workflow.service.d.ts +2 -4
  27. package/dist/workflow-processor/services/create-workflow.service.d.ts.map +1 -1
  28. package/dist/workflow-processor/services/create-workflow.service.js +6 -19
  29. package/dist/workflow-processor/services/create-workflow.service.js.map +1 -1
  30. package/dist/workflow-processor/services/document-persistence.service.d.ts +3 -3
  31. package/dist/workflow-processor/services/document-persistence.service.d.ts.map +1 -1
  32. package/dist/workflow-processor/services/document-persistence.service.js +20 -36
  33. package/dist/workflow-processor/services/document-persistence.service.js.map +1 -1
  34. package/dist/workflow-processor/services/{document-repository.service.d.ts → document-store.service.d.ts} +5 -3
  35. package/dist/workflow-processor/services/document-store.service.d.ts.map +1 -0
  36. package/dist/workflow-processor/services/{document-repository.service.js → document-store.service.js} +28 -18
  37. package/dist/workflow-processor/services/document-store.service.js.map +1 -0
  38. package/dist/workflow-processor/services/feature-registry.service.d.ts +12 -0
  39. package/dist/workflow-processor/services/feature-registry.service.d.ts.map +1 -0
  40. package/dist/workflow-processor/services/feature-registry.service.js +46 -0
  41. package/dist/workflow-processor/services/feature-registry.service.js.map +1 -0
  42. package/dist/workflow-processor/services/index.d.ts +6 -4
  43. package/dist/workflow-processor/services/index.d.ts.map +1 -1
  44. package/dist/workflow-processor/services/index.js +6 -4
  45. package/dist/workflow-processor/services/index.js.map +1 -1
  46. package/dist/workflow-processor/services/processors/workflow-processor.service.d.ts +19 -10
  47. package/dist/workflow-processor/services/processors/workflow-processor.service.d.ts.map +1 -1
  48. package/dist/workflow-processor/services/processors/workflow-processor.service.js +192 -211
  49. package/dist/workflow-processor/services/processors/workflow-processor.service.js.map +1 -1
  50. package/dist/workflow-processor/services/root-processor.service.d.ts +6 -8
  51. package/dist/workflow-processor/services/root-processor.service.d.ts.map +1 -1
  52. package/dist/workflow-processor/services/root-processor.service.js +18 -40
  53. package/dist/workflow-processor/services/root-processor.service.js.map +1 -1
  54. package/dist/workflow-processor/services/studio-discovery.service.d.ts +52 -0
  55. package/dist/workflow-processor/services/studio-discovery.service.d.ts.map +1 -0
  56. package/dist/workflow-processor/services/studio-discovery.service.js +179 -0
  57. package/dist/workflow-processor/services/studio-discovery.service.js.map +1 -0
  58. package/dist/workflow-processor/services/tool-pipeline.service.d.ts +14 -0
  59. package/dist/workflow-processor/services/tool-pipeline.service.d.ts.map +1 -0
  60. package/dist/workflow-processor/services/{tool-execution.service.js → tool-pipeline.service.js} +28 -40
  61. package/dist/workflow-processor/services/tool-pipeline.service.js.map +1 -0
  62. package/dist/workflow-processor/services/tool-registry.service.d.ts +16 -0
  63. package/dist/workflow-processor/services/tool-registry.service.d.ts.map +1 -0
  64. package/dist/workflow-processor/services/tool-registry.service.js +60 -0
  65. package/dist/workflow-processor/services/tool-registry.service.js.map +1 -0
  66. package/dist/workflow-processor/services/transition-resolver.service.d.ts +1 -1
  67. package/dist/workflow-processor/services/transition-resolver.service.d.ts.map +1 -1
  68. package/dist/workflow-processor/services/transition-resolver.service.js +5 -5
  69. package/dist/workflow-processor/services/transition-resolver.service.js.map +1 -1
  70. package/dist/workflow-processor/services/workflow-memory-monitor.service.d.ts +4 -5
  71. package/dist/workflow-processor/services/workflow-memory-monitor.service.d.ts.map +1 -1
  72. package/dist/workflow-processor/services/workflow-memory-monitor.service.js +9 -11
  73. package/dist/workflow-processor/services/workflow-memory-monitor.service.js.map +1 -1
  74. package/dist/workflow-processor/services/workflow-orchestration.service.d.ts +5 -2
  75. package/dist/workflow-processor/services/workflow-orchestration.service.d.ts.map +1 -1
  76. package/dist/workflow-processor/services/workflow-orchestration.service.js +18 -21
  77. package/dist/workflow-processor/services/workflow-orchestration.service.js.map +1 -1
  78. package/dist/workflow-processor/services/workflow-registry.service.d.ts +19 -0
  79. package/dist/workflow-processor/services/workflow-registry.service.d.ts.map +1 -0
  80. package/dist/workflow-processor/services/workflow-registry.service.js +66 -0
  81. package/dist/workflow-processor/services/workflow-registry.service.js.map +1 -0
  82. package/dist/workflow-processor/services/workflow-state.service.d.ts +4 -3
  83. package/dist/workflow-processor/services/workflow-state.service.d.ts.map +1 -1
  84. package/dist/workflow-processor/services/workflow-state.service.js +15 -16
  85. package/dist/workflow-processor/services/workflow-state.service.js.map +1 -1
  86. package/dist/workflow-processor/utils/execution-scope.d.ts +25 -5
  87. package/dist/workflow-processor/utils/execution-scope.d.ts.map +1 -1
  88. package/dist/workflow-processor/utils/execution-scope.js +15 -5
  89. package/dist/workflow-processor/utils/execution-scope.js.map +1 -1
  90. package/dist/workflow-processor/utils/index.d.ts +0 -4
  91. package/dist/workflow-processor/utils/index.d.ts.map +1 -1
  92. package/dist/workflow-processor/utils/index.js +0 -4
  93. package/dist/workflow-processor/utils/index.js.map +1 -1
  94. package/dist/workflow-processor/utils/workflow-templates.d.ts.map +1 -1
  95. package/dist/workflow-processor/utils/workflow-templates.js +13 -2
  96. package/dist/workflow-processor/utils/workflow-templates.js.map +1 -1
  97. package/package.json +2 -2
  98. package/dist/workflow-processor/services/block-config-cache.service.d.ts +0 -50
  99. package/dist/workflow-processor/services/block-config-cache.service.d.ts.map +0 -1
  100. package/dist/workflow-processor/services/block-config-cache.service.js +0 -178
  101. package/dist/workflow-processor/services/block-config-cache.service.js.map +0 -1
  102. package/dist/workflow-processor/services/block-discovery.service.d.ts +0 -15
  103. package/dist/workflow-processor/services/block-discovery.service.d.ts.map +0 -1
  104. package/dist/workflow-processor/services/block-discovery.service.js +0 -70
  105. package/dist/workflow-processor/services/block-discovery.service.js.map +0 -1
  106. package/dist/workflow-processor/services/document-repository.service.d.ts.map +0 -1
  107. package/dist/workflow-processor/services/document-repository.service.js.map +0 -1
  108. package/dist/workflow-processor/services/tool-execution.service.d.ts +0 -16
  109. package/dist/workflow-processor/services/tool-execution.service.d.ts.map +0 -1
  110. package/dist/workflow-processor/services/tool-execution.service.js.map +0 -1
  111. package/dist/workflow-processor/utils/execution-context-manager.d.ts +0 -27
  112. package/dist/workflow-processor/utils/execution-context-manager.d.ts.map +0 -1
  113. package/dist/workflow-processor/utils/execution-context-manager.js +0 -78
  114. package/dist/workflow-processor/utils/execution-context-manager.js.map +0 -1
  115. package/dist/workflow-processor/utils/state/state-manager.d.ts +0 -26
  116. package/dist/workflow-processor/utils/state/state-manager.d.ts.map +0 -1
  117. package/dist/workflow-processor/utils/state/state-manager.js +0 -68
  118. package/dist/workflow-processor/utils/state/state-manager.js.map +0 -1
  119. package/dist/workflow-processor/utils/wrap-app-proxy.d.ts +0 -3
  120. package/dist/workflow-processor/utils/wrap-app-proxy.d.ts.map +0 -1
  121. package/dist/workflow-processor/utils/wrap-app-proxy.js +0 -21
  122. package/dist/workflow-processor/utils/wrap-app-proxy.js.map +0 -1
  123. package/dist/workflow-processor/utils/wrap-block-proxy.d.ts +0 -4
  124. package/dist/workflow-processor/utils/wrap-block-proxy.d.ts.map +0 -1
  125. package/dist/workflow-processor/utils/wrap-block-proxy.js +0 -38
  126. package/dist/workflow-processor/utils/wrap-block-proxy.js.map +0 -1
  127. package/dist/workflow-processor/utils/wrap-tool-proxy.d.ts +0 -3
  128. package/dist/workflow-processor/utils/wrap-tool-proxy.d.ts.map +0 -1
  129. package/dist/workflow-processor/utils/wrap-tool-proxy.js +0 -57
  130. package/dist/workflow-processor/utils/wrap-tool-proxy.js.map +0 -1
@@ -18,6 +18,7 @@ import { WORKFLOW_ORCHESTRATOR, WorkflowState, } from '@loopstack/common';
18
18
  import { WorkflowService, WorkspaceService } from '../../persistence/index.js';
19
19
  import { CreateWorkflowService } from '../../workflow-processor/services/create-workflow.service.js';
20
20
  import { RootProcessorService } from '../../workflow-processor/services/root-processor.service.js';
21
+ import { WorkflowRegistryService } from '../../workflow-processor/services/workflow-registry.service.js';
21
22
  import { TaskSchedulerService } from './task-scheduler.service.js';
22
23
  let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
23
24
  configService;
@@ -26,22 +27,56 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
26
27
  workflowService;
27
28
  taskSchedulerService;
28
29
  rootProcessorService;
30
+ workflowRegistryService;
29
31
  orchestrator;
30
32
  logger = new Logger(WorkflowRunner_1.name);
31
- constructor(configService, createWorkflowService, workspaceService, workflowService, taskSchedulerService, rootProcessorService, orchestrator) {
33
+ constructor(configService, createWorkflowService, workspaceService, workflowService, taskSchedulerService, rootProcessorService, workflowRegistryService, orchestrator) {
32
34
  this.configService = configService;
33
35
  this.createWorkflowService = createWorkflowService;
34
36
  this.workspaceService = workspaceService;
35
37
  this.workflowService = workflowService;
36
38
  this.taskSchedulerService = taskSchedulerService;
37
39
  this.rootProcessorService = rootProcessorService;
40
+ this.workflowRegistryService = workflowRegistryService;
38
41
  this.orchestrator = orchestrator;
39
42
  }
43
+ async execute(workflow, payload, options) {
44
+ if (payload.workflowId) {
45
+ const result = await this.runById(payload.workflowId, options.userId, {
46
+ transition: payload.transition,
47
+ });
48
+ return {
49
+ workflowId: result.workflowId,
50
+ workspaceId: result.workspaceId,
51
+ status: WorkflowState.Pending,
52
+ };
53
+ }
54
+ const labels = payload.labels ?? options.labels;
55
+ const { instance, workflowName } = this.workflowRegistryService.resolve(workflow);
56
+ const workspace = await this.findOrCreateWorkspace(options.appName, options.userId, payload.workspaceId);
57
+ const workflowEntity = await this.createWorkflowService.create(instance, { id: workspace.id }, { workflowName, args: payload.args, labels }, options.userId);
58
+ await this.taskSchedulerService.addTask({
59
+ id: 'manual_workflow_execution-' + randomUUID(),
60
+ workspaceId: workspace.id,
61
+ task: {
62
+ name: 'manual_execution',
63
+ type: 'run_workflow',
64
+ workflowId: workflowEntity.id,
65
+ payload: {},
66
+ user: options.userId,
67
+ },
68
+ });
69
+ return {
70
+ workflowId: workflowEntity.id,
71
+ workspaceId: workspace.id,
72
+ status: WorkflowState.Pending,
73
+ };
74
+ }
40
75
  async run(workflow, args, options) {
41
76
  const workerId = this.configService.getOrThrow('auth.clientId');
42
- const appClassName = options.app.name;
43
- const workspace = await this.findOrCreateWorkspace(appClassName, options.userId, options.workspaceId);
44
- const workflowEntity = await this.createWorkflowService.create({ id: workspace.id }, { alias: workflow.name, args: args }, options.userId);
77
+ const { instance, workflowName } = this.workflowRegistryService.resolve(workflow);
78
+ const workspace = await this.findOrCreateWorkspace(options.appName, options.userId, options.workspaceId);
79
+ const workflowEntity = await this.createWorkflowService.create(instance, { id: workspace.id }, { workflowName, args: args, labels: options.labels }, options.userId);
45
80
  await this.taskSchedulerService.addTask({
46
81
  id: 'manual_workflow_execution-' + randomUUID(),
47
82
  workspaceId: workspace.id,
@@ -60,12 +95,11 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
60
95
  };
61
96
  }
62
97
  async runSync(workflow, args, options) {
63
- const appClassName = options.app.name;
98
+ const { instance, workflowName } = this.workflowRegistryService.resolve(workflow);
64
99
  if (options.stateless) {
65
- const workspace = await this.findOrCreateWorkspace(appClassName, options.userId, options.workspaceId);
66
- const meta = await this.rootProcessorService.runStateless({
67
- workspaceName: appClassName,
68
- alias: workflow.name,
100
+ const workspace = await this.findOrCreateWorkspace(options.appName, options.userId, options.workspaceId);
101
+ const meta = await this.rootProcessorService.runStateless(instance, {
102
+ workflowName,
69
103
  userId: options.userId,
70
104
  workspaceId: workspace.id,
71
105
  args: args,
@@ -76,12 +110,9 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
76
110
  };
77
111
  }
78
112
  const workerId = this.configService.getOrThrow('auth.clientId');
79
- const workspace = await this.findOrCreateWorkspace(appClassName, options.userId, options.workspaceId);
80
- const workflowEntity = await this.createWorkflowService.create({ id: workspace.id }, { alias: workflow.name, args: args }, options.userId);
81
- const fullEntity = await this.workflowService.getWorkflow(workflowEntity.id, options.userId, [
82
- 'workspace',
83
- 'workspace.environments',
84
- ]);
113
+ const workspace = await this.findOrCreateWorkspace(options.appName, options.userId, options.workspaceId);
114
+ const workflowEntity = await this.createWorkflowService.create(instance, { id: workspace.id }, { workflowName, args: args, labels: options.labels }, options.userId);
115
+ const fullEntity = await this.workflowService.getWorkflow(workflowEntity.id, options.userId, ['workspace']);
85
116
  if (!fullEntity) {
86
117
  throw new Error(`Workflow entity ${workflowEntity.id} not found after creation.`);
87
118
  }
@@ -94,13 +125,21 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
94
125
  result: meta.result ?? null,
95
126
  };
96
127
  }
97
- async runById(workflowId, userId) {
128
+ async runById(workflowId, userId, payload = {}) {
98
129
  const workerId = this.configService.getOrThrow('auth.clientId');
99
130
  const workflow = await this.workflowService.getWorkflow(workflowId, userId, []);
100
131
  if (!workflow) {
101
132
  throw new Error(`Workflow with ID ${workflowId} not found.`);
102
133
  }
103
134
  await this.workflowService.setWorkflowStatus(workflow, WorkflowState.Pending);
135
+ const taskPayload = {};
136
+ if (payload.transition) {
137
+ taskPayload.transition = {
138
+ id: payload.transition.id,
139
+ workflowId: payload.transition.workflowId ?? workflowId,
140
+ payload: payload.transition.payload ?? {},
141
+ };
142
+ }
104
143
  await this.taskSchedulerService.addTask({
105
144
  id: 'manual_workflow_execution-' + randomUUID(),
106
145
  workspaceId: workflow.workspaceId,
@@ -108,7 +147,7 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
108
147
  name: 'manual_execution',
109
148
  type: 'run_workflow',
110
149
  workflowId,
111
- payload: {},
150
+ payload: taskPayload,
112
151
  user: userId,
113
152
  },
114
153
  });
@@ -118,14 +157,6 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
118
157
  workflowId,
119
158
  };
120
159
  }
121
- async resume(workflowId, userId, payload, options) {
122
- const workflow = await this.workflowService.getWorkflow(workflowId, userId, []);
123
- if (!workflow) {
124
- throw new Error(`Workflow with ID ${workflowId} not found.`);
125
- }
126
- this.logger.log(`Resuming workflow ${workflowId}, transition=${options.transition}`);
127
- await this.orchestrator.resume(workflowId, payload, { transition: options.transition });
128
- }
129
160
  async cancel(workflowId, userId) {
130
161
  const workflow = await this.workflowService.getWorkflow(workflowId, userId, []);
131
162
  if (!workflow) {
@@ -134,7 +165,7 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
134
165
  this.logger.log(`Canceling workflow ${workflowId}`);
135
166
  await this.orchestrator.cancel(workflowId);
136
167
  }
137
- async findOrCreateWorkspace(appClassName, userId, workspaceId) {
168
+ async findOrCreateWorkspace(appName, userId, workspaceId) {
138
169
  if (workspaceId) {
139
170
  const workspace = await this.workspaceService.getWorkspace({ id: workspaceId }, userId);
140
171
  if (!workspace) {
@@ -142,22 +173,23 @@ let WorkflowRunner = WorkflowRunner_1 = class WorkflowRunner {
142
173
  }
143
174
  return workspace;
144
175
  }
145
- let workspace = await this.workspaceService.getWorkspace({ className: appClassName }, userId);
176
+ let workspace = await this.workspaceService.getWorkspace({ appName }, userId);
146
177
  if (!workspace) {
147
- workspace = await this.workspaceService.create({ className: appClassName, title: appClassName }, userId);
178
+ workspace = await this.workspaceService.create({ appName, title: appName }, userId);
148
179
  }
149
180
  return workspace;
150
181
  }
151
182
  };
152
183
  WorkflowRunner = WorkflowRunner_1 = __decorate([
153
184
  Injectable(),
154
- __param(6, Inject(WORKFLOW_ORCHESTRATOR)),
185
+ __param(7, Inject(WORKFLOW_ORCHESTRATOR)),
155
186
  __metadata("design:paramtypes", [ConfigService,
156
187
  CreateWorkflowService,
157
188
  WorkspaceService,
158
189
  WorkflowService,
159
190
  TaskSchedulerService,
160
- RootProcessorService, Object])
191
+ RootProcessorService,
192
+ WorkflowRegistryService, Object])
161
193
  ], WorkflowRunner);
162
194
  export { WorkflowRunner };
163
195
  //# sourceMappingURL=workflow-runner.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-runner.service.js","sourceRoot":"","sources":["../../../src/scheduler/services/workflow-runner.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-runner.service.js","sourceRoot":"","sources":["../../../src/scheduler/services/workflow-runner.service.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ let BlockProcessor = class BlockProcessor {
19
19
  const blockType = getBlockType(block);
20
20
  if (!blockType) {
21
21
  throw new Error(`Block ${block.constructor.name} does not have a block type decorator. ` +
22
- `Use @Workflow(), @Tool(), @Document(), or @App().`);
22
+ `Use @Workflow(), @Tool(), or @Document().`);
23
23
  }
24
24
  const processor = this.processorFactory.getProcessor(blockType);
25
25
  if (!processor) {
@@ -1 +1 @@
1
- {"version":3,"file":"block-processor.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/block-processor.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAyC,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGnD,IAAM,cAAc,GAApB,MAAM,cAAc;IACI;IAA7B,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAEnE,KAAK,CAAC,YAAY,CAChB,KAAgB,EAChB,IAAS,EACT,GAAe;QAEf,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,SAAS,KAAK,CAAC,WAAW,CAAC,IAAI,yCAAyC;gBACtE,mDAAmD,CACtD,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,mBAAmB,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;CACF,CAAA;AAzBY,cAAc;IAD1B,UAAU,EAAE;qCAEoC,gBAAgB;GADpD,cAAc,CAyB1B"}
1
+ {"version":3,"file":"block-processor.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/block-processor.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAyC,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGnD,IAAM,cAAc,GAApB,MAAM,cAAc;IACI;IAA7B,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAEnE,KAAK,CAAC,YAAY,CAChB,KAAgB,EAChB,IAAS,EACT,GAAe;QAEf,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,SAAS,KAAK,CAAC,WAAW,CAAC,IAAI,yCAAyC;gBACtE,2CAA2C,CAC9C,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,mBAAmB,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;CACF,CAAA;AAzBY,cAAc;IAD1B,UAAU,EAAE;qCAEoC,gBAAgB;GADpD,cAAc,CAyB1B"}
@@ -1,14 +1,12 @@
1
1
  import { FindOptionsWhere } from 'typeorm';
2
2
  import { WorkflowEntity, WorkflowInterface, WorkspaceEntity } from '@loopstack/common';
3
3
  import { WorkflowService, WorkspaceService } from '../../persistence/index.js';
4
- import { BlockDiscoveryService } from './block-discovery.service.js';
5
4
  export declare class CreateWorkflowService {
6
5
  private readonly workspaceService;
7
6
  private readonly workflowService;
8
- private readonly blockDiscoveryService;
9
7
  private readonly logger;
10
- constructor(workspaceService: WorkspaceService, workflowService: WorkflowService, blockDiscoveryService: BlockDiscoveryService);
8
+ constructor(workspaceService: WorkspaceService, workflowService: WorkflowService);
11
9
  private validateWorkflowArgs;
12
- create(workspaceWhere: FindOptionsWhere<WorkspaceEntity>, data: Partial<WorkflowEntity>, user: string, parentWorkflowId?: string, workflowInstance?: WorkflowInterface): Promise<WorkflowEntity>;
10
+ create(workflow: WorkflowInterface, workspaceWhere: FindOptionsWhere<WorkspaceEntity>, data: Partial<WorkflowEntity>, user: string, parentWorkflowId?: string): Promise<WorkflowEntity>;
13
11
  }
14
12
  //# sourceMappingURL=create-workflow.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-workflow.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/create-workflow.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,eAAe,EAAsB,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,qBACa,qBAAqB;IAI9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IALxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;gBAG9C,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB;IAG/D,OAAO,CAAC,oBAAoB;IAQtB,MAAM,CACV,cAAc,EAAE,gBAAgB,CAAC,eAAe,CAAC,EACjD,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,EAC7B,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,MAAM,EACzB,gBAAgB,CAAC,EAAE,iBAAiB,GACnC,OAAO,CAAC,cAAc,CAAC;CA+B3B"}
1
+ {"version":3,"file":"create-workflow.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/create-workflow.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,eAAe,EAAsB,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE/E,qBACa,qBAAqB;IAI9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAJlC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;gBAG9C,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAe;IAGnD,OAAO,CAAC,oBAAoB;IAYtB,MAAM,CACV,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,gBAAgB,CAAC,eAAe,CAAC,EACjD,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,EAC7B,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,cAAc,CAAC;CAkB3B"}
@@ -8,19 +8,16 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  var CreateWorkflowService_1;
11
- import { BadRequestException, Injectable, Logger } from '@nestjs/common';
11
+ import { Injectable, Logger } from '@nestjs/common';
12
12
  import { getBlockArgsSchema } from '@loopstack/common';
13
13
  import { WorkflowService, WorkspaceService } from '../../persistence/index.js';
14
- import { BlockDiscoveryService } from './block-discovery.service.js';
15
14
  let CreateWorkflowService = CreateWorkflowService_1 = class CreateWorkflowService {
16
15
  workspaceService;
17
16
  workflowService;
18
- blockDiscoveryService;
19
17
  logger = new Logger(CreateWorkflowService_1.name);
20
- constructor(workspaceService, workflowService, blockDiscoveryService) {
18
+ constructor(workspaceService, workflowService) {
21
19
  this.workspaceService = workspaceService;
22
20
  this.workflowService = workflowService;
23
- this.blockDiscoveryService = blockDiscoveryService;
24
21
  }
25
22
  validateWorkflowArgs(workflow, data) {
26
23
  if (data.args && Object.keys(data.args).length !== 0) {
@@ -29,36 +26,26 @@ let CreateWorkflowService = CreateWorkflowService_1 = class CreateWorkflowServic
29
26
  }
30
27
  return data;
31
28
  }
32
- async create(workspaceWhere, data, user, parentWorkflowId, workflowInstance) {
33
- if (!data.alias) {
34
- throw new Error('alias is required to create a workflow.');
29
+ async create(workflow, workspaceWhere, data, user, parentWorkflowId) {
30
+ if (!data.workflowName) {
31
+ throw new Error('workflowName is required to create a workflow.');
35
32
  }
36
33
  const workspace = await this.workspaceService.getWorkspace(workspaceWhere, user);
37
34
  if (!workspace) {
38
35
  throw new Error('Workspace not found.');
39
36
  }
40
- const appInstance = this.blockDiscoveryService.getApp(workspace.className);
41
- if (!appInstance) {
42
- throw new BadRequestException(`App config for workspace with name ${workspace.className} not found.`);
43
- }
44
37
  let parentWorkflow = null;
45
38
  if (parentWorkflowId) {
46
39
  parentWorkflow = await this.workflowService.getWorkflow(parentWorkflowId, user, []);
47
40
  }
48
- const workflow = workflowInstance ?? this.blockDiscoveryService.getWorkflowByName(data.alias);
49
- if (!workflow) {
50
- throw new Error(`Workflow ${data.alias} not found. Ensure it is registered as a provider in the module.`);
51
- }
52
41
  const validData = this.validateWorkflowArgs(workflow, data);
53
- validData.className = workflow.constructor.name;
54
42
  return this.workflowService.createRootWorkflow(validData, workspace, user, parentWorkflow);
55
43
  }
56
44
  };
57
45
  CreateWorkflowService = CreateWorkflowService_1 = __decorate([
58
46
  Injectable(),
59
47
  __metadata("design:paramtypes", [WorkspaceService,
60
- WorkflowService,
61
- BlockDiscoveryService])
48
+ WorkflowService])
62
49
  ], CreateWorkflowService);
63
50
  export { CreateWorkflowService };
64
51
  //# sourceMappingURL=create-workflow.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-workflow.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/create-workflow.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAAsD,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAG9D,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAIb;IACA;IACA;IALF,MAAM,GAAG,IAAI,MAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAC;IAEjE,YACmB,gBAAkC,EAClC,eAAgC,EAChC,qBAA4C;QAF5C,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,oBAAe,GAAf,eAAe,CAAiB;QAChC,0BAAqB,GAArB,qBAAqB,CAAuB;IAC5D,CAAC;IAEI,oBAAoB,CAAC,QAA2B,EAAE,IAA6B;QACrF,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAA+B,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChF,MAAM,MAAM,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CACV,cAAiD,EACjD,IAA6B,EAC7B,IAAY,EACZ,gBAAyB,EACzB,gBAAoC;QAEpC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACjF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,mBAAmB,CAAC,sCAAsC,SAAS,CAAC,SAAS,aAAa,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,cAAc,GAA0B,IAAI,CAAC;QACjD,IAAI,gBAAgB,EAAE,CAAC;YACrB,cAAc,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACtF,CAAC;QAID,MAAM,QAAQ,GAAG,gBAAgB,IAAI,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9F,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,kEAAkE,CAAC,CAAC;QAC5G,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC5D,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;QAChD,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC7F,CAAC;CACF,CAAA;AAtDY,qBAAqB;IADjC,UAAU,EAAE;qCAK0B,gBAAgB;QACjB,eAAe;QACT,qBAAqB;GANpD,qBAAqB,CAsDjC"}
1
+ {"version":3,"file":"create-workflow.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/create-workflow.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAsD,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGxE,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAIb;IACA;IAJF,MAAM,GAAG,IAAI,MAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAC;IAEjE,YACmB,gBAAkC,EAClC,eAAgC;QADhC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,oBAAe,GAAf,eAAe,CAAiB;IAChD,CAAC;IAEI,oBAAoB,CAAC,QAA2B,EAAE,IAA6B;QACrF,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAA+B,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChF,MAAM,MAAM,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAMD,KAAK,CAAC,MAAM,CACV,QAA2B,EAC3B,cAAiD,EACjD,IAA6B,EAC7B,IAAY,EACZ,gBAAyB;QAEzB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACjF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,cAAc,GAA0B,IAAI,CAAC;QACjD,IAAI,gBAAgB,EAAE,CAAC;YACrB,cAAc,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC7F,CAAC;CACF,CAAA;AA5CY,qBAAqB;IADjC,UAAU,EAAE;qCAK0B,gBAAgB;QACjB,eAAe;GALxC,qBAAqB,CA4CjC"}
@@ -1,13 +1,13 @@
1
1
  import { Repository } from 'typeorm';
2
2
  import { DocumentEntity, DocumentSaveOptions } from '@loopstack/common';
3
- import { ExecutionScope, WorkflowExecutionContextManager } from '../utils/index.js';
3
+ import { ExecutionScope, ExecutionScopeData } from '../utils/index.js';
4
4
  export declare class DocumentPersistenceService {
5
5
  private readonly executionScope;
6
6
  private readonly documentRepository;
7
7
  private readonly logger;
8
8
  constructor(executionScope: ExecutionScope, documentRepository: Repository<DocumentEntity>);
9
- create(className: string, documentClass: object, content: unknown, options?: DocumentSaveOptions): Promise<DocumentEntity>;
10
- addToCache(ctx: WorkflowExecutionContextManager, document: DocumentEntity): Promise<void>;
9
+ create(documentName: string, documentClass: object, content: unknown, options?: DocumentSaveOptions): Promise<DocumentEntity>;
10
+ addToCache(scope: ExecutionScopeData, document: DocumentEntity): Promise<void>;
11
11
  private validateContent;
12
12
  }
13
13
  //# sourceMappingURL=document-persistence.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-persistence.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/document-persistence.service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAqC,MAAM,mBAAmB,CAAC;AAG3G,OAAO,EAAE,cAAc,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC;AAIpF,qBACa,0BAA0B;IAInC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IALrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;gBAGnD,cAAc,EAAE,cAAc,EAE9B,kBAAkB,EAAE,UAAU,CAAC,cAAc,CAAC;IAW3D,MAAM,CACV,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,cAAc,CAAC;IAwDpB,UAAU,CAAC,GAAG,EAAE,+BAA+B,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAsD/F,OAAO,CAAC,eAAe;CAuBxB"}
1
+ {"version":3,"file":"document-persistence.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/document-persistence.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAsC,MAAM,mBAAmB,CAAC;AAE5G,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvE,qBACa,0BAA0B;IAInC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IALrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;gBAGnD,cAAc,EAAE,cAAc,EAE9B,kBAAkB,EAAE,UAAU,CAAC,cAAc,CAAC;IAW3D,MAAM,CACV,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,cAAc,CAAC;IAkDpB,UAAU,CAAC,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CpF,OAAO,CAAC,eAAe;CAuBxB"}
@@ -13,14 +13,11 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
13
13
  var DocumentPersistenceService_1;
14
14
  import { Injectable, Logger } from '@nestjs/common';
15
15
  import { InjectRepository } from '@nestjs/typeorm';
16
- import lodash from 'lodash';
17
16
  import { randomUUID } from 'node:crypto';
18
17
  import { Repository } from 'typeorm';
19
- import { toJSONSchema } from 'zod';
20
- import { DocumentEntity, getBlockConfig, getDocumentSchema } from '@loopstack/common';
18
+ import { DocumentEntity, getBlockOptions, getDocumentSchema } from '@loopstack/common';
21
19
  import { SchemaValidationError } from '../../common/index.js';
22
20
  import { ExecutionScope } from '../utils/index.js';
23
- const { merge } = lodash;
24
21
  let DocumentPersistenceService = DocumentPersistenceService_1 = class DocumentPersistenceService {
25
22
  executionScope;
26
23
  documentRepository;
@@ -29,52 +26,43 @@ let DocumentPersistenceService = DocumentPersistenceService_1 = class DocumentPe
29
26
  this.executionScope = executionScope;
30
27
  this.documentRepository = documentRepository;
31
28
  }
32
- async create(className, documentClass, content, options) {
33
- const ctx = this.executionScope.get();
34
- const runContext = ctx.getContext();
35
- const metadata = ctx.getData();
36
- const transition = metadata.transition;
37
- const config = getBlockConfig(documentClass);
29
+ async create(documentName, documentClass, content, options) {
30
+ const scope = this.executionScope.get();
31
+ const transition = scope.transition;
32
+ const blockOptions = getBlockOptions(documentClass);
38
33
  const contentSchema = getDocumentSchema(documentClass);
39
- const jsonSchema = contentSchema ? toJSONSchema(contentSchema) : undefined;
40
- const mergedMeta = merge({}, config?.meta ?? {}, options?.meta ?? {});
34
+ const dynamicMeta = options?.meta ?? null;
35
+ const defaultTags = blockOptions?.tags ?? [];
41
36
  const validateMode = options?.validate ?? 'strict';
42
37
  const { content: validatedContent, error } = this.validateContent(contentSchema, content, validateMode);
43
38
  const messageId = options?.id ?? randomUUID();
44
39
  const entity = this.documentRepository.create({
45
40
  messageId,
46
- alias: className,
47
- className,
41
+ documentName,
48
42
  content: validatedContent,
49
- meta: Object.keys(mergedMeta).length > 0 ? mergedMeta : null,
43
+ meta: dynamicMeta && Object.keys(dynamicMeta).length > 0 ? dynamicMeta : null,
50
44
  error: error ?? null,
51
- schema: jsonSchema,
52
- ui: config?.ui ?? null,
53
- tags: config?.tags ?? [],
45
+ tags: defaultTags,
54
46
  transition: transition.id,
55
47
  place: transition.to,
56
- labels: runContext.labels,
57
- workflowId: runContext.workflowId,
58
- workspaceId: runContext.workspaceId,
59
- createdBy: runContext.userId,
48
+ labels: scope.labels,
49
+ workflowId: scope.workflowId,
50
+ workspaceId: scope.workspaceId,
51
+ createdBy: scope.userId,
60
52
  });
61
- await this.addToCache(ctx, entity);
62
- const queryRunner = ctx.getQueryRunner();
63
- const saved = queryRunner ? await queryRunner.manager.save(DocumentEntity, entity) : entity;
53
+ await this.addToCache(scope, entity);
54
+ const saved = scope.queryRunner ? await scope.queryRunner.manager.save(DocumentEntity, entity) : entity;
64
55
  return saved;
65
56
  }
66
- async addToCache(ctx, document) {
67
- const documents = ctx.getManager().getData('documents');
68
- const queryRunner = ctx.getQueryRunner();
57
+ async addToCache(scope, document) {
58
+ const { documents, queryRunner } = scope;
69
59
  const existingIndex = document.messageId ? documents.findIndex((d) => d.messageId === document.messageId) : -1;
70
60
  const invalidated = [];
71
61
  let inheritedIndex;
72
- let inheritedVersion;
73
62
  for (const doc of documents) {
74
63
  if (doc.messageId === document.messageId && doc.meta?.invalidate !== false) {
75
64
  if (inheritedIndex === undefined) {
76
65
  inheritedIndex = doc.index;
77
- inheritedVersion = doc.version;
78
66
  }
79
67
  doc.isInvalidated = true;
80
68
  if (doc.id) {
@@ -90,20 +78,16 @@ let DocumentPersistenceService = DocumentPersistenceService_1 = class DocumentPe
90
78
  .whereInIds(invalidated.map((d) => d.id))
91
79
  .execute();
92
80
  }
93
- if (inheritedVersion !== undefined) {
94
- document.version = inheritedVersion + 1;
95
- }
96
81
  if (existingIndex !== -1) {
97
82
  document.index = documents[existingIndex].index;
98
83
  documents[existingIndex] = document;
99
84
  }
100
85
  else {
101
86
  document.index = inheritedIndex ?? documents.length;
102
- this.logger.debug(`addDocument: ${document.alias}(messageId=${document.messageId}) → index=${document.index} (inherited=${inheritedIndex !== undefined}, docCount=${documents.length})`);
87
+ this.logger.debug(`addDocument: ${document.documentName}(messageId=${document.messageId}) → index=${document.index} (inherited=${inheritedIndex !== undefined}, docCount=${documents.length})`);
103
88
  documents.push(document);
104
89
  }
105
- ctx.getManager().setData('documents', documents);
106
- ctx.getManager().setData('persistenceState', { documentsUpdated: true });
90
+ scope.persistenceState = { documentsUpdated: true };
107
91
  }
108
92
  validateContent(schema, content, mode) {
109
93
  if (!schema || mode === 'skip') {
@@ -1 +1 @@
1
- {"version":3,"file":"document-persistence.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/document-persistence.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-persistence.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/document-persistence.service.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,16 @@
1
- import { DocumentClass, DocumentEntity, DocumentRepository, DocumentSaveOptions } from '@loopstack/common';
1
+ import { DocumentClass, DocumentEntity, DocumentSaveOptions } from '@loopstack/common';
2
2
  import { ExecutionScope } from '../utils/index.js';
3
3
  import { DocumentPersistenceService } from './document-persistence.service.js';
4
- export declare class DocumentRepositoryService implements DocumentRepository {
4
+ export declare class DocumentStore {
5
5
  private readonly executionScope;
6
6
  private readonly documentPersistenceService;
7
7
  constructor(executionScope: ExecutionScope, documentPersistenceService: DocumentPersistenceService);
8
8
  create<T extends object>(documentClass: DocumentClass<T>, data: T): T;
9
9
  save<T extends object>(classOrInstance: DocumentClass<T> | T, dataOrOptions?: T | DocumentSaveOptions, maybeOptions?: DocumentSaveOptions): Promise<DocumentEntity>;
10
10
  findAll<T extends object>(documentClass: DocumentClass<T>): T[];
11
+ findAllDocuments(): DocumentEntity[];
11
12
  findByTag(tag: string): DocumentEntity[];
12
13
  static isDocumentClass(value: unknown): boolean;
13
14
  }
14
- //# sourceMappingURL=document-repository.service.d.ts.map
15
+ export declare function resolveDocumentName(documentClass: object): string;
16
+ //# sourceMappingURL=document-store.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-store.service.d.ts","sourceRoot":"","sources":["../../../src/workflow-processor/services/document-store.service.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,aAAa,EACb,cAAc,EACd,mBAAmB,EAKpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAa/E,qBACa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,0BAA0B;gBAD1B,cAAc,EAAE,cAAc,EAC9B,0BAA0B,EAAE,0BAA0B;IAOzE,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC;IAS/D,IAAI,CAAC,CAAC,SAAS,MAAM,EACzB,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,EACrC,aAAa,CAAC,EAAE,CAAC,GAAG,mBAAmB,EACvC,YAAY,CAAC,EAAE,mBAAmB,GACjC,OAAO,CAAC,cAAc,CAAC;IAsB1B,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;IAa/D,gBAAgB,IAAI,cAAc,EAAE;IAQpC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,EAAE;IAQxC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAGhD;AAMD,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAQjE"}
@@ -9,10 +9,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import { Injectable } from '@nestjs/common';
11
11
  import { plainToInstance } from 'class-transformer';
12
- import { getBlockTypeFromMetadata, getDocumentSchema, } from '@loopstack/common';
12
+ import { deriveDocumentIdentifier, getBlockName, getBlockTypeFromMetadata, getDocumentSchema, } from '@loopstack/common';
13
13
  import { ExecutionScope } from '../utils/index.js';
14
14
  import { DocumentPersistenceService } from './document-persistence.service.js';
15
- let DocumentRepositoryService = class DocumentRepositoryService {
15
+ let DocumentStore = class DocumentStore {
16
16
  executionScope;
17
17
  documentPersistenceService;
18
18
  constructor(executionScope, documentPersistenceService) {
@@ -30,39 +30,49 @@ let DocumentRepositoryService = class DocumentRepositoryService {
30
30
  const documentClass = classOrInstance;
31
31
  const data = dataOrOptions;
32
32
  const options = maybeOptions;
33
- const className = documentClass.name;
34
- return this.documentPersistenceService.create(className, documentClass, data, options);
33
+ const documentName = resolveDocumentName(documentClass);
34
+ return this.documentPersistenceService.create(documentName, documentClass, data, options);
35
35
  }
36
36
  else {
37
37
  const instance = classOrInstance;
38
38
  const options = dataOrOptions;
39
39
  const documentClass = instance.constructor;
40
- const className = documentClass.name;
41
40
  const data = Object.assign({}, instance);
42
- return this.documentPersistenceService.create(className, documentClass, data, options);
41
+ const documentName = resolveDocumentName(documentClass);
42
+ return this.documentPersistenceService.create(documentName, documentClass, data, options);
43
43
  }
44
44
  }
45
45
  findAll(documentClass) {
46
- const ctx = this.executionScope.get();
47
- const documents = ctx.getManager().getData('documents');
48
- const className = documentClass.name;
49
- return documents
50
- .filter((d) => !d.isInvalidated && d.className === className)
46
+ const scope = this.executionScope.get();
47
+ const documentName = resolveDocumentName(documentClass);
48
+ return scope.documents
49
+ .filter((d) => !d.isInvalidated && d.documentName === documentName)
51
50
  .map((d) => plainToInstance(documentClass, d.content));
52
51
  }
52
+ findAllDocuments() {
53
+ const scope = this.executionScope.get();
54
+ return scope.documents.filter((d) => !d.isInvalidated);
55
+ }
53
56
  findByTag(tag) {
54
- const ctx = this.executionScope.get();
55
- const documents = ctx.getManager().getData('documents');
56
- return documents.filter((d) => !d.isInvalidated && d.tags?.includes(tag));
57
+ const scope = this.executionScope.get();
58
+ return scope.documents.filter((d) => !d.isInvalidated && d.tags?.includes(tag));
57
59
  }
58
60
  static isDocumentClass(value) {
59
61
  return typeof value === 'function' && getBlockTypeFromMetadata(value) === 'document';
60
62
  }
61
63
  };
62
- DocumentRepositoryService = __decorate([
64
+ DocumentStore = __decorate([
63
65
  Injectable(),
64
66
  __metadata("design:paramtypes", [ExecutionScope,
65
67
  DocumentPersistenceService])
66
- ], DocumentRepositoryService);
67
- export { DocumentRepositoryService };
68
- //# sourceMappingURL=document-repository.service.js.map
68
+ ], DocumentStore);
69
+ export { DocumentStore };
70
+ export function resolveDocumentName(documentClass) {
71
+ const explicitName = getBlockName(documentClass);
72
+ const className = documentClass.name;
73
+ if (explicitName === className) {
74
+ return deriveDocumentIdentifier(className);
75
+ }
76
+ return explicitName;
77
+ }
78
+ //# sourceMappingURL=document-store.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-store.service.js","sourceRoot":"","sources":["../../../src/workflow-processor/services/document-store.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAIL,wBAAwB,EACxB,YAAY,EACZ,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAcxE,IAAM,aAAa,GAAnB,MAAM,aAAa;IAEL;IACA;IAFnB,YACmB,cAA8B,EAC9B,0BAAsD;QADtD,mBAAc,GAAd,cAAc,CAAgB;QAC9B,+BAA0B,GAA1B,0BAA0B,CAA4B;IACtE,CAAC;IAMJ,MAAM,CAAmB,aAA+B,EAAE,IAAO;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAA6B,CAAC,CAAC,CAAC,IAAI,CAAC;QAClF,OAAO,eAAe,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IAKD,KAAK,CAAC,IAAI,CACR,eAAqC,EACrC,aAAuC,EACvC,YAAkC;QAElC,MAAM,OAAO,GAAG,OAAO,eAAe,KAAK,UAAU,CAAC;QAEtD,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,aAAa,GAAG,eAAe,CAAC;YACtC,MAAM,IAAI,GAAG,aAAkB,CAAC;YAChC,MAAM,OAAO,GAAG,YAAY,CAAC;YAC7B,MAAM,YAAY,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,eAAe,CAAC;YACjC,MAAM,OAAO,GAAG,aAAgD,CAAC;YACjE,MAAM,aAAa,GAAG,QAAQ,CAAC,WAAW,CAAC;YAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAA4B,CAAC;YACpE,MAAM,YAAY,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAKD,OAAO,CAAmB,aAA+B;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACxC,MAAM,YAAY,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAExD,OAAO,KAAK,CAAC,SAAS;aACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC;aAClE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC,OAAkC,CAAC,CAAC,CAAC;IACtF,CAAC;IAMD,gBAAgB;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAKD,SAAS,CAAC,GAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAClF,CAAC;IAKD,MAAM,CAAC,eAAe,CAAC,KAAc;QACnC,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,wBAAwB,CAAC,KAAe,CAAC,KAAK,UAAU,CAAC;IACjG,CAAC;CACF,CAAA;AA7EY,aAAa;IADzB,UAAU,EAAE;qCAGwB,cAAc;QACF,0BAA0B;GAH9D,aAAa,CA6EzB;;AAMD,MAAM,UAAU,mBAAmB,CAAC,aAAqB;IACvD,MAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,SAAS,GAAI,aAAkC,CAAC,IAAI,CAAC;IAE3D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}