@loopstack/core 0.0.4 → 0.1.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 (149) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/config/core.yaml +1 -0
  3. package/dist/config-provider.service.js.map +1 -1
  4. package/dist/modules/common/services/context.service.d.ts +2 -2
  5. package/dist/modules/common/services/context.service.js +7 -7
  6. package/dist/modules/common/services/context.service.js.map +1 -1
  7. package/dist/modules/common/services/document-helper.service.d.ts +10 -0
  8. package/dist/modules/common/services/expression-evaluator.service.js.map +1 -1
  9. package/dist/modules/common/services/schema-validator.service.d.ts +2 -0
  10. package/dist/modules/common/services/schema-validator.service.js +14 -11
  11. package/dist/modules/common/services/schema-validator.service.js.map +1 -1
  12. package/dist/modules/common/services/value-parser.service.d.ts +2 -6
  13. package/dist/modules/common/services/value-parser.service.js +0 -3
  14. package/dist/modules/common/services/value-parser.service.js.map +1 -1
  15. package/dist/modules/configuration/configuration.module.js +2 -3
  16. package/dist/modules/configuration/configuration.module.js.map +1 -1
  17. package/dist/modules/configuration/services/config-provider.registry.js.map +1 -1
  18. package/dist/modules/configuration/services/configuration.service.d.ts +5 -7
  19. package/dist/modules/configuration/services/configuration.service.js +53 -46
  20. package/dist/modules/configuration/services/configuration.service.js.map +1 -1
  21. package/dist/modules/configuration/services/dynamic-schema-generator.service.d.ts +8 -8
  22. package/dist/modules/configuration/services/dynamic-schema-generator.service.js +21 -22
  23. package/dist/modules/configuration/services/dynamic-schema-generator.service.js.map +1 -1
  24. package/dist/modules/configuration/services/index.d.ts +1 -2
  25. package/dist/modules/configuration/services/index.js +1 -2
  26. package/dist/modules/configuration/services/index.js.map +1 -1
  27. package/dist/modules/configuration/services/service-registry.service.d.ts +20 -0
  28. package/dist/modules/configuration/services/{adapter-registry.service.js → service-registry.service.js} +31 -16
  29. package/dist/modules/configuration/services/service-registry.service.js.map +1 -0
  30. package/dist/modules/persistence/__tests__/database-entities-utils.d.ts +2 -2
  31. package/dist/modules/persistence/__tests__/database-entities-utils.js +5 -5
  32. package/dist/modules/persistence/__tests__/database-entities-utils.js.map +1 -1
  33. package/dist/modules/persistence/persistence.module.js +3 -3
  34. package/dist/modules/persistence/persistence.module.js.map +1 -1
  35. package/dist/modules/persistence/services/document.service.d.ts +3 -3
  36. package/dist/modules/persistence/services/document.service.js +6 -6
  37. package/dist/modules/persistence/services/document.service.js.map +1 -1
  38. package/dist/modules/persistence/services/index.d.ts +1 -1
  39. package/dist/modules/persistence/services/index.js +1 -1
  40. package/dist/modules/persistence/services/index.js.map +1 -1
  41. package/dist/modules/persistence/services/namespace.service.d.ts +2 -2
  42. package/dist/modules/persistence/services/namespace.service.js +9 -9
  43. package/dist/modules/persistence/services/namespace.service.js.map +1 -1
  44. package/dist/modules/persistence/services/pipeline.service.d.ts +8 -0
  45. package/dist/modules/persistence/services/{project.service.js → pipeline.service.js} +13 -13
  46. package/dist/modules/persistence/services/pipeline.service.js.map +1 -0
  47. package/dist/modules/persistence/subscriber/workflow.subscriber.js +2 -2
  48. package/dist/modules/persistence/subscriber/workflow.subscriber.js.map +1 -1
  49. package/dist/modules/workflow-processor/services/index.d.ts +2 -1
  50. package/dist/modules/workflow-processor/services/index.js +2 -1
  51. package/dist/modules/workflow-processor/services/index.js.map +1 -1
  52. package/dist/modules/workflow-processor/services/namespace-processor.service.js +1 -1
  53. package/dist/modules/workflow-processor/services/namespace-processor.service.js.map +1 -1
  54. package/dist/modules/workflow-processor/services/pipeline-processor.service.d.ts +15 -0
  55. package/dist/modules/workflow-processor/services/{project-processor.service.js → pipeline-processor.service.js} +24 -24
  56. package/dist/modules/workflow-processor/services/pipeline-processor.service.js.map +1 -0
  57. package/dist/modules/workflow-processor/services/state-machine-config.service.d.ts +7 -7
  58. package/dist/modules/workflow-processor/services/state-machine-config.service.js +0 -4
  59. package/dist/modules/workflow-processor/services/state-machine-config.service.js.map +1 -1
  60. package/dist/modules/workflow-processor/services/state-machine-processor.service.d.ts +4 -3
  61. package/dist/modules/workflow-processor/services/state-machine-processor.service.js +40 -62
  62. package/dist/modules/workflow-processor/services/state-machine-processor.service.js.map +1 -1
  63. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.d.ts +9 -0
  64. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.js +50 -0
  65. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.js.map +1 -0
  66. package/dist/modules/workflow-processor/services/tool-execution.service.d.ts +18 -11
  67. package/dist/modules/workflow-processor/services/tool-execution.service.js +49 -35
  68. package/dist/modules/workflow-processor/services/tool-execution.service.js.map +1 -1
  69. package/dist/modules/workflow-processor/services/tool-schema-validator.service.d.ts +2 -2
  70. package/dist/modules/workflow-processor/services/tool-schema-validator.service.js +3 -3
  71. package/dist/modules/workflow-processor/services/tool-schema-validator.service.js.map +1 -1
  72. package/dist/modules/workflow-processor/services/workflow-processor.service.d.ts +5 -2
  73. package/dist/modules/workflow-processor/services/workflow-processor.service.js +33 -5
  74. package/dist/modules/workflow-processor/services/workflow-processor.service.js.map +1 -1
  75. package/dist/modules/workflow-processor/tool-services/add-namespace.service.d.ts +20 -0
  76. package/dist/modules/workflow-processor/{tools → tool-services}/add-namespace.service.js +16 -11
  77. package/dist/modules/workflow-processor/tool-services/add-namespace.service.js.map +1 -0
  78. package/dist/modules/workflow-processor/tool-services/batch-create-documents.service.d.ts +33 -0
  79. package/dist/modules/workflow-processor/{tools → tool-services}/batch-create-documents.service.js +37 -36
  80. package/dist/modules/workflow-processor/tool-services/batch-create-documents.service.js.map +1 -0
  81. package/dist/modules/workflow-processor/tool-services/create-document.service.d.ts +209 -0
  82. package/dist/modules/workflow-processor/{tools → tool-services}/create-document.service.js +35 -37
  83. package/dist/modules/workflow-processor/tool-services/create-document.service.js.map +1 -0
  84. package/dist/modules/workflow-processor/{tools → tool-services}/index.d.ts +2 -2
  85. package/dist/modules/workflow-processor/{tools → tool-services}/index.js +2 -2
  86. package/dist/modules/workflow-processor/tool-services/index.js.map +1 -0
  87. package/dist/modules/workflow-processor/tool-services/load-document.service.d.ts +68 -0
  88. package/dist/modules/workflow-processor/{tools → tool-services}/load-document.service.js +17 -13
  89. package/dist/modules/workflow-processor/tool-services/load-document.service.js.map +1 -0
  90. package/dist/modules/workflow-processor/tool-services/mock.service.d.ts +17 -0
  91. package/dist/modules/workflow-processor/{tools/debug.service.js → tool-services/mock.service.js} +29 -18
  92. package/dist/modules/workflow-processor/tool-services/mock.service.js.map +1 -0
  93. package/dist/modules/workflow-processor/tool-services/set-context.service.d.ts +18 -0
  94. package/dist/modules/workflow-processor/{tools → tool-services}/set-context.service.js +20 -13
  95. package/dist/modules/workflow-processor/tool-services/set-context.service.js.map +1 -0
  96. package/dist/modules/workflow-processor/tool-services/set-target-place.service.d.ts +14 -0
  97. package/dist/modules/workflow-processor/tool-services/set-target-place.service.js +48 -0
  98. package/dist/modules/workflow-processor/tool-services/set-target-place.service.js.map +1 -0
  99. package/dist/modules/workflow-processor/tool-services/transition-selector.service.d.ts +29 -0
  100. package/dist/modules/workflow-processor/{tools → tool-services}/transition-selector.service.js +22 -15
  101. package/dist/modules/workflow-processor/tool-services/transition-selector.service.js.map +1 -0
  102. package/dist/modules/workflow-processor/tool-services/update-document.service.d.ts +110 -0
  103. package/dist/modules/workflow-processor/{tools → tool-services}/update-document.service.js +22 -15
  104. package/dist/modules/workflow-processor/tool-services/update-document.service.js.map +1 -0
  105. package/dist/modules/workflow-processor/workflow-processor.module.js +13 -12
  106. package/dist/modules/workflow-processor/workflow-processor.module.js.map +1 -1
  107. package/dist/utils/load-configuration.js +1 -1
  108. package/package.json +5 -2
  109. package/dist/config/documents/assistant-message.yaml +0 -13
  110. package/dist/config/documents/info-message.yaml +0 -9
  111. package/dist/config/documents/internal-message.yaml +0 -14
  112. package/dist/config/documents/loading-message.yaml +0 -10
  113. package/dist/config/documents/user-message.yaml +0 -13
  114. package/dist/config/templates/user-input-template.yaml +0 -29
  115. package/dist/config/tools/creat-error-message.yaml +0 -9
  116. package/dist/config/tools/create-assistant-message.yaml +0 -9
  117. package/dist/config/tools/create-chat-message.tool.yaml +0 -7
  118. package/dist/config/tools/create-template-document-user-update.yaml +0 -7
  119. package/dist/config/tools/create-template-document.yaml +0 -5
  120. package/dist/config/tools/create-user-message.tool.yaml +0 -9
  121. package/dist/modules/configuration/services/adapter-registry.service.d.ts +0 -12
  122. package/dist/modules/configuration/services/adapter-registry.service.js.map +0 -1
  123. package/dist/modules/configuration/services/tool.registry.d.ts +0 -13
  124. package/dist/modules/configuration/services/tool.registry.js +0 -59
  125. package/dist/modules/configuration/services/tool.registry.js.map +0 -1
  126. package/dist/modules/persistence/services/project.service.d.ts +0 -8
  127. package/dist/modules/persistence/services/project.service.js.map +0 -1
  128. package/dist/modules/workflow-processor/services/project-processor.service.d.ts +0 -15
  129. package/dist/modules/workflow-processor/services/project-processor.service.js.map +0 -1
  130. package/dist/modules/workflow-processor/tools/add-namespace.service.d.ts +0 -29
  131. package/dist/modules/workflow-processor/tools/add-namespace.service.js.map +0 -1
  132. package/dist/modules/workflow-processor/tools/batch-create-documents.service.d.ts +0 -42
  133. package/dist/modules/workflow-processor/tools/batch-create-documents.service.js.map +0 -1
  134. package/dist/modules/workflow-processor/tools/create-document.service.d.ts +0 -378
  135. package/dist/modules/workflow-processor/tools/create-document.service.js.map +0 -1
  136. package/dist/modules/workflow-processor/tools/debug.service.d.ts +0 -20
  137. package/dist/modules/workflow-processor/tools/debug.service.js.map +0 -1
  138. package/dist/modules/workflow-processor/tools/index.js.map +0 -1
  139. package/dist/modules/workflow-processor/tools/load-document.service.d.ts +0 -167
  140. package/dist/modules/workflow-processor/tools/load-document.service.js.map +0 -1
  141. package/dist/modules/workflow-processor/tools/set-context.service.d.ts +0 -27
  142. package/dist/modules/workflow-processor/tools/set-context.service.js.map +0 -1
  143. package/dist/modules/workflow-processor/tools/tool-call.service.d.ts +0 -29
  144. package/dist/modules/workflow-processor/tools/tool-call.service.js +0 -51
  145. package/dist/modules/workflow-processor/tools/tool-call.service.js.map +0 -1
  146. package/dist/modules/workflow-processor/tools/transition-selector.service.d.ts +0 -50
  147. package/dist/modules/workflow-processor/tools/transition-selector.service.js.map +0 -1
  148. package/dist/modules/workflow-processor/tools/update-document.service.d.ts +0 -198
  149. package/dist/modules/workflow-processor/tools/update-document.service.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.service.js","sourceRoot":"","sources":["../../../../src/modules/persistence/services/pipeline.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAAmD;AACnD,qCAA6C;AAC7C,8CAAmD;AAEnD,IAAa,eAAe,GAA5B,MAAa,eAAe;IAGhB;IAFV,YAEU,gBAA4C;QAA5C,qBAAgB,GAAhB,gBAAgB,CAA4B;IACnD,CAAC;IAEJ,WAAW,CACT,EAAU,EACV,MAAqB,EACrB,YAAsB,CAAC,WAAW,EAAE,YAAY,CAAC;QAEjD,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACnC,KAAK,EAAE;gBACL,EAAE;gBACF,SAAS,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAA,gBAAM,GAAE,CAAC,CAAC,CAAC,MAAM;aAC/C;YACD,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;CACF,CAAA;AAvBY,0CAAe;0BAAf,eAAe;IAEvB,WAAA,IAAA,0BAAgB,EAAC,uBAAc,CAAC,CAAA;qCACP,oBAAU;GAH3B,eAAe,CAuB3B"}
@@ -28,7 +28,7 @@ let WorkflowSubscriber = class WorkflowSubscriber {
28
28
  id: event.entity.id,
29
29
  userId: event.entity.createdBy,
30
30
  namespaceId: event.entity.namespaceId,
31
- projectId: event.entity.projectId,
31
+ pipelineId: event.entity.pipelineId,
32
32
  data: event.entity,
33
33
  }));
34
34
  }
@@ -38,7 +38,7 @@ let WorkflowSubscriber = class WorkflowSubscriber {
38
38
  id: event.databaseEntity.id,
39
39
  userId: event.databaseEntity.createdBy,
40
40
  namespaceId: event.databaseEntity.namespaceId,
41
- projectId: event.databaseEntity.projectId,
41
+ pipelineId: event.databaseEntity.pipelineId,
42
42
  data: event.entity
43
43
  ? {
44
44
  ...event.databaseEntity,
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.subscriber.js","sourceRoot":"","sources":["../../../../src/modules/persistence/subscriber/workflow.subscriber.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAAqE;AACrE,qCAMiB;AACjB,yFAAoF;AAG7E,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAKnB;IAFV,YACE,UAAsB,EACd,oBAA0C;QAA1C,yBAAoB,GAApB,oBAAoB,CAAsB;QAElD,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,QAAQ;QACN,OAAO,uBAAc,CAAC;IACxB,CAAC;IAED,WAAW,CAAC,KAAkC;QAC5C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAChC,IAAI,yBAAgB,CAAC;YACnB,IAAI,EAAE,kBAAkB;YACxB,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;YACnB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YAC9B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;YACrC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YACjC,IAAI,EAAE,KAAK,CAAC,MAAM;SACnB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,KAAkC;QAC5C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAChC,IAAI,yBAAgB,CAAC;YACnB,IAAI,EAAE,kBAAkB;YACxB,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE;YAC3B,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;YACtC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,WAAW;YAC7C,SAAS,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;YACzC,IAAI,EAAE,KAAK,CAAC,MAAM;gBAChB,CAAC,CAAC;oBACE,GAAG,KAAK,CAAC,cAAc;oBACvB,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;wBAC7C,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAO,CAAC,CAAC;wBAChE,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAE,CAAC;iBACP;gBACH,CAAC,CAAC,KAAK,CAAC,cAAc;SACzB,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AA/CY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,yBAAe,GAAE;qCAKF,oBAAU;QACQ,6CAAoB;GALzC,kBAAkB,CA+C9B"}
1
+ {"version":3,"file":"workflow.subscriber.js","sourceRoot":"","sources":["../../../../src/modules/persistence/subscriber/workflow.subscriber.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAAqE;AACrE,qCAMiB;AACjB,yFAAoF;AAG7E,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAKnB;IAFV,YACE,UAAsB,EACd,oBAA0C;QAA1C,yBAAoB,GAApB,oBAAoB,CAAsB;QAElD,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,QAAQ;QACN,OAAO,uBAAc,CAAC;IACxB,CAAC;IAED,WAAW,CAAC,KAAkC;QAC5C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAChC,IAAI,yBAAgB,CAAC;YACnB,IAAI,EAAE,kBAAkB;YACxB,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;YACnB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YAC9B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;YACrC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;YACnC,IAAI,EAAE,KAAK,CAAC,MAAM;SACnB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,KAAkC;QAC5C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAChC,IAAI,yBAAgB,CAAC;YACnB,IAAI,EAAE,kBAAkB;YACxB,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE;YAC3B,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;YACtC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,WAAW;YAC7C,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU;YAC3C,IAAI,EAAE,KAAK,CAAC,MAAM;gBAChB,CAAC,CAAC;oBACE,GAAG,KAAK,CAAC,cAAc;oBACvB,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;wBAC7C,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAO,CAAC,CAAC;wBAChE,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAE,CAAC;iBACP;gBACH,CAAC,CAAC,KAAK,CAAC,cAAc;SACzB,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AA/CY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,yBAAe,GAAE;qCAKF,oBAAU;QACQ,6CAAoB;GALzC,kBAAkB,CA+C9B"}
@@ -4,5 +4,6 @@ export * from './state-machine-validator.registry';
4
4
  export * from './tool-execution.service';
5
5
  export * from './workflow-processor.service';
6
6
  export * from './namespace-processor.service';
7
- export * from './project-processor.service';
7
+ export * from './pipeline-processor.service';
8
8
  export * from './tool-schema-validator.service';
9
+ export * from './template-expression-evaluator.service';
@@ -20,6 +20,7 @@ __exportStar(require("./state-machine-validator.registry"), exports);
20
20
  __exportStar(require("./tool-execution.service"), exports);
21
21
  __exportStar(require("./workflow-processor.service"), exports);
22
22
  __exportStar(require("./namespace-processor.service"), exports);
23
- __exportStar(require("./project-processor.service"), exports);
23
+ __exportStar(require("./pipeline-processor.service"), exports);
24
24
  __exportStar(require("./tool-schema-validator.service"), exports);
25
+ __exportStar(require("./template-expression-evaluator.service"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA+C;AAC/C,oEAAkD;AAClD,qEAAmD;AACnD,2DAAyC;AACzC,+DAA6C;AAC7C,gEAA8C;AAC9C,8DAA4C;AAC5C,kEAAgD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA+C;AAC/C,oEAAkD;AAClD,qEAAmD;AACnD,2DAAyC;AACzC,+DAA6C;AAC7C,gEAA8C;AAC9C,+DAA6C;AAC7C,kEAAgD;AAChD,0EAAwD"}
@@ -31,7 +31,7 @@ let NamespaceProcessorService = NamespaceProcessorService_1 = class NamespacePro
31
31
  clone.namespace = await this.namespacesService.create({
32
32
  name: props.label ?? 'Group',
33
33
  model: context.model,
34
- projectId: context.projectId,
34
+ pipelineId: context.pipelineId,
35
35
  workspaceId: context.workspaceId,
36
36
  parent: context.namespace,
37
37
  metadata: props.meta ?? {},
@@ -1 +1 @@
1
- {"version":3,"file":"namespace-processor.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/namespace-processor.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwE;AACxE,yCAA8C;AAC9C,mDAAsD;AAI/C,IAAM,yBAAyB,iCAA/B,MAAM,yBAAyB;IAM1B;IAEA;IAPO,MAAM,GAAG,IAAI,eAAM,CAAC,2BAAyB,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,GAAY,KAAK,CAAC;IAEtB,YAEU,cAA8B,EAE9B,iBAAoC;QAFpC,mBAAc,GAAd,cAAc,CAAgB;QAE9B,sBAAiB,GAAjB,iBAAiB,CAAmB;IAC3C,CAAC;IAEJ,KAAK,CAAC,eAAe,CACnB,OAAyB,EACzB,KAAyB;QAEzB,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,KAAK,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;YACpD,IAAI,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,OAAO,CAAC,SAAS;YACzB,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YAC1B,SAAS,EAAE,OAAO,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAExC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,aAA+B,EAC/B,aAAiC;QAEjC,MAAM,oBAAoB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC5E,MAAM,uBAAuB,GAC3B,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAC7C,aAAa,CAAC,SAAS,CAAC,EAAE,CAC3B,CAAC;QACJ,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,MAAM,CACvD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAClD,CAAC;QACF,IAAI,kBAAkB,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,WAAW,kBAAkB,CAAC,MAAM,uBAAuB,CAC5D,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAjDY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,uBAAc,CAAC,CAAC,CAAA;IAExC,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,+BAAiB,CAAC,CAAC,CAAA;qCADpB,uBAAc;QAEX,+BAAiB;GARnC,yBAAyB,CAiDrC"}
1
+ {"version":3,"file":"namespace-processor.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/namespace-processor.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwE;AACxE,yCAA8C;AAC9C,mDAAsD;AAI/C,IAAM,yBAAyB,iCAA/B,MAAM,yBAAyB;IAM1B;IAEA;IAPO,MAAM,GAAG,IAAI,eAAM,CAAC,2BAAyB,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,GAAY,KAAK,CAAC;IAEtB,YAEU,cAA8B,EAE9B,iBAAoC;QAFpC,mBAAc,GAAd,cAAc,CAAgB;QAE9B,sBAAiB,GAAjB,iBAAiB,CAAmB;IAC3C,CAAC;IAEJ,KAAK,CAAC,eAAe,CACnB,OAAyB,EACzB,KAAyB;QAEzB,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,KAAK,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;YACpD,IAAI,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,OAAO,CAAC,SAAS;YACzB,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YAC1B,SAAS,EAAE,OAAO,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAExC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,aAA+B,EAC/B,aAAiC;QAEjC,MAAM,oBAAoB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC5E,MAAM,uBAAuB,GAC3B,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAC7C,aAAa,CAAC,SAAS,CAAC,EAAE,CAC3B,CAAC;QACJ,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,MAAM,CACvD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAClD,CAAC;QACF,IAAI,kBAAkB,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,WAAW,kBAAkB,CAAC,MAAM,uBAAuB,CAC5D,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAjDY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,uBAAc,CAAC,CAAC,CAAA;IAExC,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,+BAAiB,CAAC,CAAC,CAAA;qCADpB,uBAAc;QAEX,+BAAiB;GARnC,yBAAyB,CAiDrC"}
@@ -0,0 +1,15 @@
1
+ import { ConfigurationService } from '../../configuration';
2
+ import { NamespacesService, PipelineService } from '../../persistence';
3
+ import { WorkflowProcessorService } from './workflow-processor.service';
4
+ import { ContextService } from '../../common';
5
+ import { ContextInterface, ProcessRunInterface } from '@loopstack/shared';
6
+ export declare class PipelineProcessorService {
7
+ private loopConfigService;
8
+ private pipelineService;
9
+ private workflowProcessorService;
10
+ private namespacesService;
11
+ private contextService;
12
+ private readonly logger;
13
+ constructor(loopConfigService: ConfigurationService, pipelineService: PipelineService, workflowProcessorService: WorkflowProcessorService, namespacesService: NamespacesService, contextService: ContextService);
14
+ processPipeline(payload: ProcessRunInterface): Promise<ContextInterface>;
15
+ }
@@ -8,54 +8,54 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var ProjectProcessorService_1;
11
+ var PipelineProcessorService_1;
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.ProjectProcessorService = void 0;
13
+ exports.PipelineProcessorService = void 0;
14
14
  const common_1 = require("@nestjs/common");
15
15
  const configuration_1 = require("../../configuration");
16
16
  const persistence_1 = require("../../persistence");
17
17
  const workflow_processor_service_1 = require("./workflow-processor.service");
18
18
  const common_2 = require("../../common");
19
- let ProjectProcessorService = ProjectProcessorService_1 = class ProjectProcessorService {
19
+ let PipelineProcessorService = PipelineProcessorService_1 = class PipelineProcessorService {
20
20
  loopConfigService;
21
- projectService;
21
+ pipelineService;
22
22
  workflowProcessorService;
23
23
  namespacesService;
24
24
  contextService;
25
- logger = new common_1.Logger(ProjectProcessorService_1.name);
26
- constructor(loopConfigService, projectService, workflowProcessorService, namespacesService, contextService) {
25
+ logger = new common_1.Logger(PipelineProcessorService_1.name);
26
+ constructor(loopConfigService, pipelineService, workflowProcessorService, namespacesService, contextService) {
27
27
  this.loopConfigService = loopConfigService;
28
- this.projectService = projectService;
28
+ this.pipelineService = pipelineService;
29
29
  this.workflowProcessorService = workflowProcessorService;
30
30
  this.namespacesService = namespacesService;
31
31
  this.contextService = contextService;
32
32
  }
33
- async processProject(payload) {
34
- this.logger.debug(`Processing project: ${payload.projectId}`);
35
- const project = await this.projectService.getProject(payload.projectId, payload.userId);
36
- if (!project) {
37
- throw new Error(`project "${payload.projectId}" not found.`);
33
+ async processPipeline(payload) {
34
+ this.logger.debug(`Processing pipeline: ${payload.pipelineId}`);
35
+ const pipeline = await this.pipelineService.getPipeline(payload.pipelineId, payload.userId);
36
+ if (!pipeline) {
37
+ throw new Error(`pipeline "${payload.pipelineId}" not found.`);
38
38
  }
39
- const projectConfig = this.loopConfigService.get('projects', project.model);
40
- if (!projectConfig) {
41
- throw new Error(`project model "${project.model}" not found.`);
39
+ const pipelineConfig = this.loopConfigService.get('pipelines', pipeline.model);
40
+ if (!pipelineConfig) {
41
+ throw new Error(`pipeline model "${pipeline.model}" not found.`);
42
42
  }
43
- const namespace = await this.namespacesService.createRootNamespace(project);
44
- const context = this.contextService.createRootContext(project, {
45
- labels: [...project.labels, namespace.name],
43
+ const namespace = await this.namespacesService.createRootNamespace(pipeline);
44
+ const context = this.contextService.createRootContext(pipeline, {
45
+ labels: [...pipeline.labels, namespace.name],
46
46
  namespace: namespace,
47
47
  transition: payload.transition,
48
48
  });
49
- return this.workflowProcessorService.start(projectConfig.entrypoint, context);
49
+ return this.workflowProcessorService.start(pipelineConfig.entrypoint, context);
50
50
  }
51
51
  };
52
- exports.ProjectProcessorService = ProjectProcessorService;
53
- exports.ProjectProcessorService = ProjectProcessorService = ProjectProcessorService_1 = __decorate([
52
+ exports.PipelineProcessorService = PipelineProcessorService;
53
+ exports.PipelineProcessorService = PipelineProcessorService = PipelineProcessorService_1 = __decorate([
54
54
  (0, common_1.Injectable)(),
55
55
  __metadata("design:paramtypes", [configuration_1.ConfigurationService,
56
- persistence_1.ProjectService,
56
+ persistence_1.PipelineService,
57
57
  workflow_processor_service_1.WorkflowProcessorService,
58
58
  persistence_1.NamespacesService,
59
59
  common_2.ContextService])
60
- ], ProjectProcessorService);
61
- //# sourceMappingURL=project-processor.service.js.map
60
+ ], PipelineProcessorService);
61
+ //# sourceMappingURL=pipeline-processor.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-processor.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/pipeline-processor.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,uDAA2D;AAC3D,mDAAuE;AACvE,6EAAwE;AACxE,yCAA8C;AAQvC,IAAM,wBAAwB,gCAA9B,MAAM,wBAAwB;IAGzB;IACA;IACA;IACA;IACA;IANO,MAAM,GAAG,IAAI,eAAM,CAAC,0BAAwB,CAAC,IAAI,CAAC,CAAC;IACpE,YACU,iBAAuC,EACvC,eAAgC,EAChC,wBAAkD,EAClD,iBAAoC,EACpC,cAA8B;QAJ9B,sBAAiB,GAAjB,iBAAiB,CAAsB;QACvC,oBAAe,GAAf,eAAe,CAAiB;QAChC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,mBAAc,GAAd,cAAc,CAAgB;IACrC,CAAC;IAEJ,KAAK,CAAC,eAAe,CACnB,OAA4B;QAE5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAEhE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CACrD,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,MAAM,CACf,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,aAAa,OAAO,CAAC,UAAU,cAAc,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAC/C,WAAW,EACX,QAAQ,CAAC,KAAK,CACf,CAAC;QACF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,CAAC,KAAK,cAAc,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,QAAQ,EAAE;YAC9D,MAAM,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC;YAC5C,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CACxC,cAAc,CAAC,UAAU,EACzB,OAAO,CACR,CAAC;IACJ,CAAC;CACF,CAAA;AA3CY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;qCAIkB,oCAAoB;QACtB,6BAAe;QACN,qDAAwB;QAC/B,+BAAiB;QACpB,uBAAc;GAP7B,wBAAwB,CA2CpC"}
@@ -7,14 +7,14 @@ export declare class StateMachineConfigService {
7
7
  extends?: string | undefined;
8
8
  transitions?: {
9
9
  name: string;
10
- from: string | string[];
11
- to: string | string[];
10
+ from?: string | string[] | undefined;
11
+ to?: string | string[] | undefined;
12
12
  when?: string | undefined;
13
- }[] | undefined;
14
- handlers?: {
15
- call: string;
16
- onTransition: string;
17
- provideAs?: string | undefined;
13
+ call?: {
14
+ tool: string;
15
+ arguments?: any;
16
+ exportAs?: string | undefined;
17
+ }[] | undefined;
18
18
  }[] | undefined;
19
19
  };
20
20
  getConfig(stateMachine: StateMachineType): StateMachineType;
@@ -30,22 +30,18 @@ let StateMachineConfigService = class StateMachineConfigService {
30
30
  }
31
31
  getConfig(stateMachine) {
32
32
  let transitions = stateMachine.transitions ?? [];
33
- let handlers = stateMachine.handlers ?? [];
34
33
  if (stateMachine.extends) {
35
34
  const parentStateMachine = this.getTemplate(stateMachine.extends);
36
35
  transitions = lodash_1.default.unionBy(transitions, parentStateMachine?.transitions ?? [], 'name');
37
- handlers = [...(parentStateMachine?.handlers ?? []), ...handlers];
38
36
  return {
39
37
  ...parentStateMachine,
40
38
  ...stateMachine,
41
39
  transitions,
42
- handlers,
43
40
  };
44
41
  }
45
42
  return {
46
43
  ...stateMachine,
47
44
  transitions,
48
- handlers,
49
45
  };
50
46
  }
51
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"state-machine-config.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/state-machine-config.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oDAAuB;AAMvB,uDAA2D;AAGpD,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAChB;IAApB,YAAoB,iBAAuC;QAAvC,sBAAiB,GAAjB,iBAAiB,CAAsB;IAAG,CAAC;IAE/D,WAAW,CAAC,IAAY;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAC7C,mBAAmB,EACnB,IAAI,CACL,CAAC;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,kBAAkB,CAC3D,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,YAA8B;QACtC,IAAI,WAAW,GAA6B,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC;QAC3E,IAAI,QAAQ,GAA8B,YAAY,CAAC,QAAQ,IAAI,EAAE,CAAC;QAEtE,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAClE,WAAW,GAAG,gBAAC,CAAC,OAAO,CACrB,WAAW,EACX,kBAAkB,EAAE,WAAW,IAAI,EAAE,EACrC,MAAM,CACP,CAAC;YACF,QAAQ,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;YAElE,OAAO;gBACL,GAAG,kBAAkB;gBACrB,GAAG,YAAY;gBACf,WAAW;gBACX,QAAQ;aACT,CAAA;QACH,CAAC;QAED,OAAO;YACL,GAAG,YAAY;YACf,WAAW;YACX,QAAQ;SACT,CAAC;IACJ,CAAC;CACF,CAAA;AA5CY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;qCAE4B,oCAAoB;GADhD,yBAAyB,CA4CrC"}
1
+ {"version":3,"file":"state-machine-config.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/state-machine-config.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oDAAuB;AAMvB,uDAA2D;AAGpD,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAChB;IAApB,YAAoB,iBAAuC;QAAvC,sBAAiB,GAAjB,iBAAiB,CAAsB;IAAG,CAAC;IAE/D,WAAW,CAAC,IAAY;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAC7C,mBAAmB,EACnB,IAAI,CACL,CAAC;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,kBAAkB,CAC3D,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,YAA8B;QACtC,IAAI,WAAW,GAA6B,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC;QAE3E,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAClE,WAAW,GAAG,gBAAC,CAAC,OAAO,CACrB,WAAW,EACX,kBAAkB,EAAE,WAAW,IAAI,EAAE,EACrC,MAAM,CACP,CAAC;YAEF,OAAO;gBACL,GAAG,kBAAkB;gBACrB,GAAG,YAAY;gBACf,WAAW;aACZ,CAAC;QACJ,CAAC;QAED,OAAO;YACL,GAAG,YAAY;YACf,WAAW;SACZ,CAAC;IACJ,CAAC;CACF,CAAA;AAxCY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;qCAE4B,oCAAoB;GADhD,yBAAyB,CAwCrC"}
@@ -1,19 +1,21 @@
1
1
  import { StateMachineConfigService } from './state-machine-config.service';
2
- import { ContextInterface, HistoryTransition, TransitionInfoInterface, TransitionPayloadInterface, WorkflowEntity, WorkflowStateMachineType, WorkflowTransitionType, ToolResult } from '@loopstack/shared';
2
+ import { ContextInterface, HistoryTransition, TransitionInfoInterface, TransitionPayloadInterface, WorkflowEntity, WorkflowStateMachineType, WorkflowTransitionType } from '@loopstack/shared';
3
3
  import { ToolExecutionService } from './tool-execution.service';
4
4
  import { WorkflowService } from '../../persistence';
5
5
  import { StateMachineValidatorRegistry } from './state-machine-validator.registry';
6
6
  import { ValueParserService } from '../../common';
7
7
  import { StateMachineValidatorResultInterface } from '@loopstack/shared/dist/interfaces/state-machine-validator-result.interface';
8
8
  import { StateMachineInfoDto } from '@loopstack/shared/dist/dto/state-machine-info.dto';
9
+ import { TemplateExpressionEvaluatorService } from './template-expression-evaluator.service';
9
10
  export declare class StateMachineProcessorService {
10
11
  private readonly workflowConfigService;
11
12
  private readonly workflowService;
12
13
  private readonly toolExecutionService;
13
14
  private readonly stateMachineValidatorRegistry;
14
15
  private readonly configValueParserService;
16
+ private readonly templateExpressionEvaluatorService;
15
17
  private readonly logger;
16
- constructor(workflowConfigService: StateMachineConfigService, workflowService: WorkflowService, toolExecutionService: ToolExecutionService, stateMachineValidatorRegistry: StateMachineValidatorRegistry, configValueParserService: ValueParserService);
18
+ constructor(workflowConfigService: StateMachineConfigService, workflowService: WorkflowService, toolExecutionService: ToolExecutionService, stateMachineValidatorRegistry: StateMachineValidatorRegistry, configValueParserService: ValueParserService, templateExpressionEvaluatorService: TemplateExpressionEvaluatorService);
17
19
  canSkipRun(workflow: WorkflowEntity, options: Record<string, any> | undefined): StateMachineValidatorResultInterface;
18
20
  processStateMachine(context: ContextInterface, workflow: WorkflowEntity, config: WorkflowStateMachineType): Promise<WorkflowEntity>;
19
21
  updateWorkflowState(workflow: WorkflowEntity, historyItem: HistoryTransition): void;
@@ -21,7 +23,6 @@ export declare class StateMachineProcessorService {
21
23
  initStateMachine(workflow: WorkflowEntity, stateMachineInfo: StateMachineInfoDto): Promise<WorkflowEntity>;
22
24
  validateTransition(nextTransition: TransitionInfoInterface, historyItem: HistoryTransition): void;
23
25
  getNextTransition(workflow: WorkflowEntity, pendingTransition: TransitionPayloadInterface | undefined): TransitionInfoInterface | null;
24
- addTransitionData(workflow: WorkflowEntity, transition: string, tool: string, alias: string | undefined, result: ToolResult | undefined): WorkflowEntity;
25
26
  commitWorkflowTransition(workflow: WorkflowEntity, nextPlace: string | undefined, nextTransition: TransitionInfoInterface): void;
26
27
  loopStateMachine(beforeContext: ContextInterface, workflow: WorkflowEntity, config: WorkflowStateMachineType, stateMachineInfo: StateMachineInfoDto): Promise<WorkflowEntity>;
27
28
  }
@@ -19,19 +19,23 @@ const persistence_1 = require("../../persistence");
19
19
  const state_machine_validator_registry_1 = require("./state-machine-validator.registry");
20
20
  const common_2 = require("../../common");
21
21
  const state_machine_info_dto_1 = require("@loopstack/shared/dist/dto/state-machine-info.dto");
22
+ const template_expression_evaluator_service_1 = require("./template-expression-evaluator.service");
23
+ const lodash_1 = require("lodash");
22
24
  let StateMachineProcessorService = StateMachineProcessorService_1 = class StateMachineProcessorService {
23
25
  workflowConfigService;
24
26
  workflowService;
25
27
  toolExecutionService;
26
28
  stateMachineValidatorRegistry;
27
29
  configValueParserService;
30
+ templateExpressionEvaluatorService;
28
31
  logger = new common_1.Logger(StateMachineProcessorService_1.name);
29
- constructor(workflowConfigService, workflowService, toolExecutionService, stateMachineValidatorRegistry, configValueParserService) {
32
+ constructor(workflowConfigService, workflowService, toolExecutionService, stateMachineValidatorRegistry, configValueParserService, templateExpressionEvaluatorService) {
30
33
  this.workflowConfigService = workflowConfigService;
31
34
  this.workflowService = workflowService;
32
35
  this.toolExecutionService = toolExecutionService;
33
36
  this.stateMachineValidatorRegistry = stateMachineValidatorRegistry;
34
37
  this.configValueParserService = configValueParserService;
38
+ this.templateExpressionEvaluatorService = templateExpressionEvaluatorService;
35
39
  }
36
40
  canSkipRun(workflow, options) {
37
41
  const validationResults = this.stateMachineValidatorRegistry
@@ -74,8 +78,8 @@ let StateMachineProcessorService = StateMachineProcessorService_1 = class StateM
74
78
  ]);
75
79
  }
76
80
  updateWorkflowAvailableTransitions(workflow, transitions) {
77
- workflow.placeInfo = new shared_1.WorkflowStatePlaceInfoDto(transitions.filter((item) => item.from.includes('*') ||
78
- (workflow.place && item.from.includes(workflow.place))));
81
+ workflow.placeInfo = new shared_1.WorkflowStatePlaceInfoDto(transitions.filter((item) => item.from?.includes('*') ||
82
+ (workflow.place && item.from?.includes(workflow.place))));
79
83
  }
80
84
  async initStateMachine(workflow, stateMachineInfo) {
81
85
  workflow.isWorking = true;
@@ -105,52 +109,22 @@ let StateMachineProcessorService = StateMachineProcessorService_1 = class StateM
105
109
  }
106
110
  }
107
111
  getNextTransition(workflow, pendingTransition) {
108
- let transitionPayload = null;
109
- let transitionMeta = {};
110
112
  let nextTransition;
111
113
  if (pendingTransition) {
112
114
  nextTransition = workflow.placeInfo?.availableTransitions.find((item) => item.name === pendingTransition.name);
113
- if (nextTransition) {
114
- transitionPayload = pendingTransition.payload;
115
- transitionMeta = pendingTransition.meta;
116
- }
117
115
  }
118
116
  if (!nextTransition) {
119
117
  nextTransition = workflow.placeInfo?.availableTransitions.find((item) => undefined === item.when || item.when === 'onEntry');
120
118
  }
121
- if (!nextTransition) {
119
+ if (!nextTransition || !nextTransition.to) {
122
120
  return null;
123
121
  }
124
122
  return {
125
123
  transition: nextTransition.name,
126
124
  from: workflow.place,
127
125
  to: nextTransition.to,
128
- payload: transitionPayload,
129
- meta: transitionMeta,
130
126
  };
131
127
  }
132
- addTransitionData(workflow, transition, tool, alias, result) {
133
- if (result?.workflow) {
134
- workflow = result?.workflow;
135
- }
136
- if (result?.data) {
137
- if (!workflow.currData) {
138
- workflow.currData = {};
139
- }
140
- if (!workflow.currData[transition]) {
141
- workflow.currData[transition] = {};
142
- }
143
- workflow.currData[transition][tool] = result.data;
144
- }
145
- if (alias) {
146
- const currAlias = workflow.aliasData ?? {};
147
- workflow.aliasData = {
148
- ...currAlias,
149
- [alias]: [transition, tool],
150
- };
151
- }
152
- return workflow;
153
- }
154
128
  commitWorkflowTransition(workflow, nextPlace, nextTransition) {
155
129
  const place = nextPlace ??
156
130
  (Array.isArray(nextTransition.to)
@@ -168,46 +142,49 @@ let StateMachineProcessorService = StateMachineProcessorService_1 = class StateM
168
142
  let context = beforeContext;
169
143
  workflow = await this.initStateMachine(workflow, stateMachineInfo);
170
144
  const workflowConfig = this.workflowConfigService.getConfig(config);
171
- const workflowContext = {
172
- options: stateMachineInfo.options,
173
- };
174
- workflowContext.history =
175
- workflow.history?.history.map((item) => item.transition) ?? [];
176
- const evaluatedTransitions = this.configValueParserService.evalWithContextAndInfo(workflowConfig.transitions, { context, workflow: workflowContext });
177
- this.updateWorkflowAvailableTransitions(workflow, evaluatedTransitions);
178
- await this.workflowService.save(workflow);
145
+ if (!workflowConfig.transitions) {
146
+ throw new Error(`Workflow ${workflow.name} does not have any transitions.`);
147
+ }
179
148
  try {
180
149
  const pendingTransition = [stateMachineInfo.pendingTransition];
181
150
  while (true) {
151
+ const meta = {
152
+ history: workflow.history?.history.map((item) => item.transition) ?? [],
153
+ payload: pendingTransition.shift()?.payload ?? null,
154
+ };
155
+ const transitionsWithoutCallProperty = workflowConfig.transitions.map((transition) => (0, lodash_1.omit)(transition, ['call']));
156
+ const evaluatedTransitions = this.templateExpressionEvaluatorService.evaluate(transitionsWithoutCallProperty, stateMachineInfo.options, context, workflow, meta);
157
+ this.updateWorkflowAvailableTransitions(workflow, evaluatedTransitions);
158
+ await this.workflowService.save(workflow);
182
159
  const nextTransition = this.getNextTransition(workflow, pendingTransition.shift());
183
160
  if (!nextTransition) {
184
161
  this.logger.debug('stop');
185
162
  break;
186
163
  }
187
164
  this.logger.debug(`Applying next transition: ${nextTransition.transition}`);
188
- workflowContext.transition = nextTransition.transition;
189
- workflowContext.payload = nextTransition.payload;
190
- const handlers = workflowConfig.handlers?.filter((item) => item.onTransition === nextTransition.transition) ?? [];
191
- let observerIndex = 0;
165
+ meta.transition = nextTransition.transition;
166
+ meta.from = nextTransition.from;
167
+ meta.to = nextTransition.to;
168
+ const toolCalls = workflowConfig.transitions
169
+ .find((transition) => transition.name === meta.transition)?.call;
192
170
  let nextPlace = undefined;
193
- for (const handler of handlers) {
194
- observerIndex++;
195
- this.logger.debug(`Call handler ${observerIndex} (${handler.call}) on transition ${handler.onTransition}`);
196
- const result = await this.toolExecutionService.applyTool(handler, workflow, context, workflowContext);
197
- workflow = this.addTransitionData(workflow, handler.onTransition, handler.call, handler.provideAs, result);
198
- if (result?.commitDirect) {
199
- await this.workflowService.save(workflow);
200
- }
201
- if (result?.place) {
202
- nextPlace = result?.place;
171
+ if (toolCalls) {
172
+ let index = 0;
173
+ for (const toolCall of toolCalls) {
174
+ index++;
175
+ this.logger.debug(`Call tool ${index} (${toolCall.tool}) on transition ${meta.transition}`);
176
+ const evaluatedToolCall = this.templateExpressionEvaluatorService.evaluate(toolCall, stateMachineInfo.options, context, workflow, meta);
177
+ const result = await this.toolExecutionService.applyTool(evaluatedToolCall, workflow, context, meta);
178
+ workflow = this.toolExecutionService.commitServiceCallResult(workflow, meta.transition, toolCall.tool, toolCall.exportAs, result);
179
+ if (result?.persist) {
180
+ await this.workflowService.save(workflow);
181
+ }
182
+ if (result?.place) {
183
+ nextPlace = result?.place;
184
+ }
203
185
  }
204
186
  }
205
187
  this.commitWorkflowTransition(workflow, nextPlace, nextTransition);
206
- workflowContext.history =
207
- workflow.history?.history.map((item) => item.transition) ?? [];
208
- const evaluatedTransitions = this.configValueParserService.evalWithContextAndInfo(workflowConfig.transitions, { context, workflow: workflowContext });
209
- this.updateWorkflowAvailableTransitions(workflow, evaluatedTransitions);
210
- await this.workflowService.save(workflow);
211
188
  }
212
189
  }
213
190
  catch (e) {
@@ -226,6 +203,7 @@ exports.StateMachineProcessorService = StateMachineProcessorService = StateMachi
226
203
  persistence_1.WorkflowService,
227
204
  tool_execution_service_1.ToolExecutionService,
228
205
  state_machine_validator_registry_1.StateMachineValidatorRegistry,
229
- common_2.ValueParserService])
206
+ common_2.ValueParserService,
207
+ template_expression_evaluator_service_1.TemplateExpressionEvaluatorService])
230
208
  ], StateMachineProcessorService);
231
209
  //# sourceMappingURL=state-machine-processor.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state-machine-processor.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/state-machine-processor.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state-machine-processor.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/state-machine-processor.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ContextInterface, TransitionMetadataInterface, WorkflowEntity } from '@loopstack/shared';
2
+ import { ValueParserService } from '../../common';
3
+ import { ConfigurationService } from '../../configuration';
4
+ export declare class TemplateExpressionEvaluatorService {
5
+ private configurationService;
6
+ private valueParserService;
7
+ constructor(configurationService: ConfigurationService, valueParserService: ValueParserService);
8
+ evaluate<T>(subject: any, args: any, context: ContextInterface, workflow: WorkflowEntity | undefined, meta: TransitionMetadataInterface): T;
9
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TemplateExpressionEvaluatorService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const common_2 = require("../../common");
15
+ const configuration_1 = require("../../configuration");
16
+ let TemplateExpressionEvaluatorService = class TemplateExpressionEvaluatorService {
17
+ configurationService;
18
+ valueParserService;
19
+ constructor(configurationService, valueParserService) {
20
+ this.configurationService = configurationService;
21
+ this.valueParserService = valueParserService;
22
+ }
23
+ evaluate(subject, args, context, workflow, meta) {
24
+ const aliasVariables = workflow?.aliasData && workflow.currData
25
+ ? this.valueParserService.prepareAliasVariables(workflow.aliasData, workflow.currData)
26
+ : {};
27
+ const useTemplate = (name, variables) => {
28
+ const snippet = this.configurationService.get('snippets', name);
29
+ if (!snippet) {
30
+ return '';
31
+ }
32
+ return this.valueParserService.evalWithContextVariables(snippet.value, variables);
33
+ };
34
+ return this.valueParserService.evalWithContextVariables(subject, {
35
+ ...aliasVariables,
36
+ useTemplate,
37
+ context,
38
+ data: workflow?.currData,
39
+ metadata: meta,
40
+ arguments: args
41
+ });
42
+ }
43
+ };
44
+ exports.TemplateExpressionEvaluatorService = TemplateExpressionEvaluatorService;
45
+ exports.TemplateExpressionEvaluatorService = TemplateExpressionEvaluatorService = __decorate([
46
+ (0, common_1.Injectable)(),
47
+ __metadata("design:paramtypes", [configuration_1.ConfigurationService,
48
+ common_2.ValueParserService])
49
+ ], TemplateExpressionEvaluatorService);
50
+ //# sourceMappingURL=template-expression-evaluator.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-expression-evaluator.service.js","sourceRoot":"","sources":["../../../../src/modules/workflow-processor/services/template-expression-evaluator.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAM5C,yCAAkD;AAClD,uDAA2D;AAGpD,IAAM,kCAAkC,GAAxC,MAAM,kCAAkC;IAGnC;IACA;IAFV,YACU,oBAA0C,EAC1C,kBAAsC;QADtC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,uBAAkB,GAAlB,kBAAkB,CAAoB;IAC7C,CAAC;IAEJ,QAAQ,CACN,OAAY,EACZ,IAAS,EACT,OAAyB,EACzB,QAAoC,EACpC,IAAiC;QAGjC,MAAM,cAAc,GAClB,QAAQ,EAAE,SAAS,IAAI,QAAQ,CAAC,QAAQ;YACtC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAC7C,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,QAAQ,CAClB;YACD,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,SAAc,EAAU,EAAE;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAC3C,UAAU,EACV,IAAI,CACL,CAAC;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CACrD,OAAO,CAAC,KAAK,EACb,SAAS,CACV,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CACrD,OAAO,EACP;YACE,GAAG,cAAc;YACjB,WAAW;YACX,OAAO;YACP,IAAI,EAAE,QAAQ,EAAE,QAAQ;YACxB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;SAChB,CACF,CAAC;IACJ,CAAC;CACF,CAAA;AAlDY,gFAAkC;6CAAlC,kCAAkC;IAD9C,IAAA,mBAAU,GAAE;qCAIqB,oCAAoB;QACtB,2BAAkB;GAJrC,kCAAkC,CAkD9C"}
@@ -1,20 +1,27 @@
1
- import { ConfigurationService, ToolRegistry } from '../../configuration';
2
- import { ContextInterface, WorkflowRunContext, ToolResult, ToolCallType } from '@loopstack/shared';
1
+ import { ConfigurationService, ServiceRegistry } from '../../configuration';
2
+ import { ContextInterface, ServiceCallResult, ToolCallType, TransitionMetadataInterface } from '@loopstack/shared';
3
3
  import { WorkflowEntity } from '@loopstack/shared';
4
- import { ValueParserService } from '../../index';
5
4
  import { ToolSchemaValidatorService } from './tool-schema-validator.service';
5
+ import { TemplateExpressionEvaluatorService } from './template-expression-evaluator.service';
6
+ import { SchemaValidatorService } from '../../common';
6
7
  export declare class ToolExecutionService {
7
- private loopConfigService;
8
- private valueParserService;
9
- private toolRegistry;
8
+ private configurationService;
9
+ private serviceRegistry;
10
10
  private toolSchemaValidatorService;
11
+ private templateExpressionEvaluatorService;
12
+ private schemaValidatorService;
11
13
  private logger;
12
- constructor(loopConfigService: ConfigurationService, valueParserService: ValueParserService, toolRegistry: ToolRegistry, toolSchemaValidatorService: ToolSchemaValidatorService);
14
+ constructor(configurationService: ConfigurationService, serviceRegistry: ServiceRegistry, toolSchemaValidatorService: ToolSchemaValidatorService, templateExpressionEvaluatorService: TemplateExpressionEvaluatorService, schemaValidatorService: SchemaValidatorService);
13
15
  getToolConfig(toolName: string): {
14
16
  name: string;
15
- service: string;
16
- data?: any;
17
- props?: any;
17
+ execute: {
18
+ service: string;
19
+ arguments?: any;
20
+ };
21
+ description?: string | undefined;
22
+ parameters?: any;
18
23
  };
19
- applyTool(handler: ToolCallType, workflow: WorkflowEntity | undefined, context: ContextInterface, workflowContext: WorkflowRunContext): Promise<ToolResult>;
24
+ callService(name: string, args: any, workflow?: WorkflowEntity, context?: ContextInterface, meta?: TransitionMetadataInterface): Promise<ServiceCallResult>;
25
+ applyTool(handler: ToolCallType, workflow: WorkflowEntity | undefined, context: ContextInterface, meta: TransitionMetadataInterface): Promise<ServiceCallResult>;
26
+ commitServiceCallResult(workflow: WorkflowEntity, transition: string, tool: string, alias: string | undefined, result: ServiceCallResult | undefined): WorkflowEntity;
20
27
  }