@loopstack/core 0.7.4 → 0.9.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 (272) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/LICENSE +43 -21
  3. package/dist/config/core/documents/message.yaml +2 -6
  4. package/dist/config/core/tools/batch-create-messages.yaml +6 -17
  5. package/dist/config/core/tools/delegate-tool-calls.yaml +16 -3
  6. package/dist/index.d.ts +0 -1
  7. package/dist/index.js +0 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/loop-core.module.d.ts +1 -4
  10. package/dist/loop-core.module.js +27 -46
  11. package/dist/loop-core.module.js.map +1 -1
  12. package/dist/modules/common/services/expression-handler/object-expression.handler.d.ts +2 -27
  13. package/dist/modules/common/services/expression-handler/object-expression.handler.js +26 -542
  14. package/dist/modules/common/services/expression-handler/object-expression.handler.js.map +1 -1
  15. package/dist/modules/common/services/template.service.d.ts +3 -2
  16. package/dist/modules/common/services/template.service.js +6 -6
  17. package/dist/modules/common/services/template.service.js.map +1 -1
  18. package/dist/modules/configuration/configuration.module.js +4 -6
  19. package/dist/modules/configuration/configuration.module.js.map +1 -1
  20. package/dist/modules/configuration/errors/config-trace.error.d.ts +8 -0
  21. package/dist/modules/configuration/errors/config-trace.error.js +37 -0
  22. package/dist/modules/configuration/errors/config-trace.error.js.map +1 -0
  23. package/dist/modules/configuration/errors/index.d.ts +1 -0
  24. package/dist/{utils → modules/configuration/errors}/index.js +1 -1
  25. package/dist/modules/configuration/errors/index.js.map +1 -0
  26. package/dist/modules/configuration/index.d.ts +1 -0
  27. package/dist/modules/configuration/index.js +1 -0
  28. package/dist/modules/configuration/index.js.map +1 -1
  29. package/dist/modules/configuration/services/block-registry.service.d.ts +25 -0
  30. package/dist/modules/configuration/services/block-registry.service.js +91 -0
  31. package/dist/modules/configuration/services/block-registry.service.js.map +1 -0
  32. package/dist/modules/configuration/services/config-loader.service.d.ts +4 -0
  33. package/dist/modules/configuration/services/config-loader.service.js +46 -0
  34. package/dist/modules/configuration/services/config-loader.service.js.map +1 -0
  35. package/dist/modules/configuration/services/dynamic-schema-generator.service.d.ts +0 -3
  36. package/dist/modules/configuration/services/dynamic-schema-generator.service.js +2 -17
  37. package/dist/modules/configuration/services/dynamic-schema-generator.service.js.map +1 -1
  38. package/dist/modules/configuration/services/index.d.ts +3 -4
  39. package/dist/modules/configuration/services/index.js +3 -4
  40. package/dist/modules/configuration/services/index.js.map +1 -1
  41. package/dist/modules/configuration/services/zod-generator.service.d.ts +4 -0
  42. package/dist/modules/configuration/services/{schema-registry.service.js → zod-generator.service.js} +8 -26
  43. package/dist/modules/configuration/services/zod-generator.service.js.map +1 -0
  44. package/dist/modules/persistence/blocks/services/create-entity.service.d.ts +12 -0
  45. package/dist/modules/persistence/blocks/services/create-entity.service.js +46 -0
  46. package/dist/modules/persistence/blocks/services/create-entity.service.js.map +1 -0
  47. package/dist/modules/persistence/blocks/tools/batch-create-entity-tool.d.ts +20 -0
  48. package/dist/modules/persistence/blocks/tools/batch-create-entity-tool.js +40 -0
  49. package/dist/modules/persistence/blocks/tools/batch-create-entity-tool.js.map +1 -0
  50. package/dist/modules/persistence/blocks/tools/create-entity-tool.d.ts +23 -0
  51. package/dist/modules/persistence/blocks/tools/create-entity-tool.js +42 -0
  52. package/dist/modules/persistence/blocks/tools/create-entity-tool.js.map +1 -0
  53. package/dist/modules/persistence/blocks/tools/index.d.ts +3 -0
  54. package/dist/modules/persistence/blocks/tools/index.js +20 -0
  55. package/dist/modules/persistence/blocks/tools/index.js.map +1 -0
  56. package/dist/modules/persistence/blocks/tools/sql-query-tool.d.ts +26 -0
  57. package/dist/modules/persistence/blocks/tools/sql-query-tool.js +65 -0
  58. package/dist/modules/persistence/blocks/tools/sql-query-tool.js.map +1 -0
  59. package/dist/modules/persistence/handlers/create-entity.handler.d.ts +2 -2
  60. package/dist/modules/persistence/handlers/create-entity.handler.js +0 -1
  61. package/dist/modules/persistence/handlers/create-entity.handler.js.map +1 -1
  62. package/dist/modules/persistence/persistence.module.js +1 -0
  63. package/dist/modules/persistence/persistence.module.js.map +1 -1
  64. package/dist/modules/persistence/services/document.service.d.ts +1 -2
  65. package/dist/modules/persistence/services/document.service.js +4 -3
  66. package/dist/modules/persistence/services/document.service.js.map +1 -1
  67. package/dist/modules/persistence/services/pipeline.service.d.ts +1 -0
  68. package/dist/modules/persistence/services/pipeline.service.js +13 -0
  69. package/dist/modules/persistence/services/pipeline.service.js.map +1 -1
  70. package/dist/modules/persistence/subscriber/document.subscriber.d.ts +4 -1
  71. package/dist/modules/persistence/subscriber/document.subscriber.js +9 -2
  72. package/dist/modules/persistence/subscriber/document.subscriber.js.map +1 -1
  73. package/dist/modules/persistence/subscriber/workflow.subscriber.d.ts +4 -1
  74. package/dist/modules/persistence/subscriber/workflow.subscriber.js +10 -2
  75. package/dist/modules/persistence/subscriber/workflow.subscriber.js.map +1 -1
  76. package/dist/modules/scheduler/services/task-initialization.service.d.ts +4 -5
  77. package/dist/modules/scheduler/services/task-initialization.service.js +4 -14
  78. package/dist/modules/scheduler/services/task-initialization.service.js.map +1 -1
  79. package/dist/modules/scheduler/services/task-processor/cleanup-pipeline-task-processor.service.d.ts +0 -9
  80. package/dist/modules/scheduler/services/task-processor/cleanup-pipeline-task-processor.service.js +1 -65
  81. package/dist/modules/scheduler/services/task-processor/cleanup-pipeline-task-processor.service.js.map +1 -1
  82. package/dist/modules/scheduler/services/task-processor/create-run-pipeline-task-processor.service.d.ts +1 -6
  83. package/dist/modules/scheduler/services/task-processor/create-run-pipeline-task-processor.service.js +2 -24
  84. package/dist/modules/scheduler/services/task-processor/create-run-pipeline-task-processor.service.js.map +1 -1
  85. package/dist/modules/scheduler/services/task-processor/create-workspace-task-processor.service.d.ts +1 -6
  86. package/dist/modules/scheduler/services/task-processor/create-workspace-task-processor.service.js +2 -27
  87. package/dist/modules/scheduler/services/task-processor/create-workspace-task-processor.service.js.map +1 -1
  88. package/dist/modules/scheduler/services/task-processor.service.d.ts +1 -7
  89. package/dist/modules/scheduler/services/task-processor.service.js +2 -23
  90. package/dist/modules/scheduler/services/task-processor.service.js.map +1 -1
  91. package/dist/modules/workflow-processor/abstract/block.abstract.d.ts +35 -0
  92. package/dist/modules/workflow-processor/abstract/block.abstract.js +40 -0
  93. package/dist/modules/workflow-processor/abstract/block.abstract.js.map +1 -0
  94. package/dist/modules/workflow-processor/abstract/document.abstract.d.ts +8 -0
  95. package/dist/modules/workflow-processor/abstract/document.abstract.js +15 -0
  96. package/dist/modules/workflow-processor/abstract/document.abstract.js.map +1 -0
  97. package/dist/modules/workflow-processor/abstract/index.d.ts +5 -0
  98. package/dist/modules/workflow-processor/abstract/index.js +22 -0
  99. package/dist/modules/workflow-processor/abstract/index.js.map +1 -0
  100. package/dist/modules/workflow-processor/abstract/pipeline.abstract.d.ts +8 -0
  101. package/dist/modules/workflow-processor/abstract/pipeline.abstract.js +15 -0
  102. package/dist/modules/workflow-processor/abstract/pipeline.abstract.js.map +1 -0
  103. package/dist/modules/workflow-processor/abstract/tool.abstract.d.ts +13 -0
  104. package/dist/modules/workflow-processor/abstract/tool.abstract.js +26 -0
  105. package/dist/modules/workflow-processor/abstract/tool.abstract.js.map +1 -0
  106. package/dist/modules/workflow-processor/abstract/workflow.abstract.d.ts +11 -0
  107. package/dist/modules/workflow-processor/abstract/workflow.abstract.js +37 -0
  108. package/dist/modules/workflow-processor/abstract/workflow.abstract.js.map +1 -0
  109. package/dist/modules/workflow-processor/abstract/workspace.abstract.d.ts +7 -0
  110. package/dist/modules/workflow-processor/abstract/workspace.abstract.js +15 -0
  111. package/dist/modules/workflow-processor/abstract/workspace.abstract.js.map +1 -0
  112. package/dist/modules/workflow-processor/blocks/documents/error-message-document.d.ts +3 -0
  113. package/dist/modules/workflow-processor/blocks/documents/error-message-document.js +30 -0
  114. package/dist/modules/workflow-processor/blocks/documents/error-message-document.js.map +1 -0
  115. package/dist/modules/workflow-processor/blocks/documents/error-message-document.yaml +13 -0
  116. package/dist/modules/workflow-processor/blocks/documents/index.d.ts +4 -0
  117. package/dist/modules/workflow-processor/blocks/documents/index.js +21 -0
  118. package/dist/modules/workflow-processor/blocks/documents/index.js.map +1 -0
  119. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.d.ts +3 -0
  120. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.js +31 -0
  121. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.js.map +1 -0
  122. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.yaml +16 -0
  123. package/dist/modules/workflow-processor/blocks/documents/message-document.d.ts +3 -0
  124. package/dist/modules/workflow-processor/blocks/documents/message-document.js +31 -0
  125. package/dist/modules/workflow-processor/blocks/documents/message-document.js.map +1 -0
  126. package/dist/modules/workflow-processor/blocks/documents/message-document.yaml +15 -0
  127. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.d.ts +3 -0
  128. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.js +31 -0
  129. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.js.map +1 -0
  130. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.yaml +16 -0
  131. package/dist/modules/workflow-processor/blocks/index.d.ts +2 -0
  132. package/dist/modules/workflow-processor/blocks/index.js +19 -0
  133. package/dist/modules/workflow-processor/blocks/index.js.map +1 -0
  134. package/dist/modules/workflow-processor/blocks/services/batch-create-documents.service.d.ts +13 -0
  135. package/dist/modules/workflow-processor/blocks/services/batch-create-documents.service.js +40 -0
  136. package/dist/modules/workflow-processor/blocks/services/batch-create-documents.service.js.map +1 -0
  137. package/dist/modules/workflow-processor/{handlers/create-document.handler.d.ts → blocks/services/create-document.service.d.ts} +109 -24
  138. package/dist/modules/workflow-processor/blocks/services/create-document.service.js +172 -0
  139. package/dist/modules/workflow-processor/blocks/services/create-document.service.js.map +1 -0
  140. package/dist/modules/workflow-processor/blocks/services/mock.service.d.ts +16 -0
  141. package/dist/modules/workflow-processor/blocks/services/mock.service.js +61 -0
  142. package/dist/modules/workflow-processor/blocks/services/mock.service.js.map +1 -0
  143. package/dist/modules/workflow-processor/blocks/tools/batch-create-messages-tool.d.ts +35 -0
  144. package/dist/modules/workflow-processor/blocks/tools/batch-create-messages-tool.js +65 -0
  145. package/dist/modules/workflow-processor/blocks/tools/batch-create-messages-tool.js.map +1 -0
  146. package/dist/modules/workflow-processor/blocks/tools/create-chat-message-tool.d.ts +53 -0
  147. package/dist/modules/workflow-processor/blocks/tools/create-chat-message-tool.js +99 -0
  148. package/dist/modules/workflow-processor/blocks/tools/create-chat-message-tool.js.map +1 -0
  149. package/dist/modules/workflow-processor/blocks/tools/create-document-tool.d.ts +10 -0
  150. package/dist/modules/workflow-processor/blocks/tools/create-document-tool.js +41 -0
  151. package/dist/modules/workflow-processor/blocks/tools/create-document-tool.js.map +1 -0
  152. package/dist/modules/workflow-processor/blocks/tools/create-error-message-tool.d.ts +20 -0
  153. package/dist/modules/workflow-processor/blocks/tools/create-error-message-tool.js +57 -0
  154. package/dist/modules/workflow-processor/blocks/tools/create-error-message-tool.js.map +1 -0
  155. package/dist/modules/workflow-processor/blocks/tools/create-markdown-message-tool.d.ts +23 -0
  156. package/dist/modules/workflow-processor/blocks/tools/create-markdown-message-tool.js +60 -0
  157. package/dist/modules/workflow-processor/blocks/tools/create-markdown-message-tool.js.map +1 -0
  158. package/dist/modules/workflow-processor/blocks/tools/create-mock-tool.d.ts +26 -0
  159. package/dist/modules/workflow-processor/blocks/tools/create-mock-tool.js +57 -0
  160. package/dist/modules/workflow-processor/blocks/tools/create-mock-tool.js.map +1 -0
  161. package/dist/modules/workflow-processor/blocks/tools/create-plain-message-tool.d.ts +23 -0
  162. package/dist/modules/workflow-processor/blocks/tools/create-plain-message-tool.js +60 -0
  163. package/dist/modules/workflow-processor/blocks/tools/create-plain-message-tool.js.map +1 -0
  164. package/dist/modules/workflow-processor/blocks/tools/create-response-tool.d.ts +20 -0
  165. package/dist/modules/workflow-processor/blocks/tools/create-response-tool.js +55 -0
  166. package/dist/modules/workflow-processor/blocks/tools/create-response-tool.js.map +1 -0
  167. package/dist/modules/workflow-processor/blocks/tools/create-template-tool.d.ts +20 -0
  168. package/dist/modules/workflow-processor/blocks/tools/create-template-tool.js +51 -0
  169. package/dist/modules/workflow-processor/blocks/tools/create-template-tool.js.map +1 -0
  170. package/dist/modules/workflow-processor/blocks/tools/debug-tool.d.ts +20 -0
  171. package/dist/modules/workflow-processor/blocks/tools/debug-tool.js +48 -0
  172. package/dist/modules/workflow-processor/blocks/tools/debug-tool.js.map +1 -0
  173. package/dist/modules/workflow-processor/blocks/tools/index.d.ts +18 -0
  174. package/dist/modules/workflow-processor/blocks/tools/index.js +35 -0
  175. package/dist/modules/workflow-processor/blocks/tools/index.js.map +1 -0
  176. package/dist/modules/workflow-processor/blocks/tools/load-document-tool.d.ts +44 -0
  177. package/dist/modules/workflow-processor/blocks/tools/load-document-tool.js +130 -0
  178. package/dist/modules/workflow-processor/blocks/tools/load-document-tool.js.map +1 -0
  179. package/dist/modules/workflow-processor/blocks/tools/reset-error-tool.d.ts +12 -0
  180. package/dist/modules/workflow-processor/blocks/tools/reset-error-tool.js +48 -0
  181. package/dist/modules/workflow-processor/blocks/tools/reset-error-tool.js.map +1 -0
  182. package/dist/modules/workflow-processor/blocks/tools/set-context-tool.d.ts +23 -0
  183. package/dist/modules/workflow-processor/blocks/tools/set-context-tool.js +55 -0
  184. package/dist/modules/workflow-processor/blocks/tools/set-context-tool.js.map +1 -0
  185. package/dist/modules/workflow-processor/blocks/tools/switch-target-tool.d.ts +18 -0
  186. package/dist/modules/workflow-processor/blocks/tools/switch-target-tool.js +59 -0
  187. package/dist/modules/workflow-processor/blocks/tools/switch-target-tool.js.map +1 -0
  188. package/dist/modules/workflow-processor/blocks/tools/validate-document-tool.d.ts +22 -0
  189. package/dist/modules/workflow-processor/blocks/tools/validate-document-tool.js +79 -0
  190. package/dist/modules/workflow-processor/blocks/tools/validate-document-tool.js.map +1 -0
  191. package/dist/modules/workflow-processor/blocks/tools/validate-tool.d.ts +25 -0
  192. package/dist/modules/workflow-processor/blocks/tools/validate-tool.js +74 -0
  193. package/dist/modules/workflow-processor/blocks/tools/validate-tool.js.map +1 -0
  194. package/dist/modules/workflow-processor/handlers/index.d.ts +0 -4
  195. package/dist/modules/workflow-processor/handlers/index.js +0 -4
  196. package/dist/modules/workflow-processor/handlers/index.js.map +1 -1
  197. package/dist/modules/workflow-processor/handlers/validate.handler.d.ts +2 -2
  198. package/dist/modules/workflow-processor/index.d.ts +2 -0
  199. package/dist/modules/workflow-processor/index.js +2 -0
  200. package/dist/modules/workflow-processor/index.js.map +1 -1
  201. package/dist/modules/workflow-processor/services/block-helper.service.d.ts +8 -0
  202. package/dist/modules/workflow-processor/services/block-helper.service.js +51 -0
  203. package/dist/modules/workflow-processor/services/block-helper.service.js.map +1 -0
  204. package/dist/modules/workflow-processor/services/index.d.ts +1 -2
  205. package/dist/modules/workflow-processor/services/index.js +1 -2
  206. package/dist/modules/workflow-processor/services/index.js.map +1 -1
  207. package/dist/modules/workflow-processor/services/namespace-processor.service.d.ts +4 -3
  208. package/dist/modules/workflow-processor/services/namespace-processor.service.js +9 -12
  209. package/dist/modules/workflow-processor/services/namespace-processor.service.js.map +1 -1
  210. package/dist/modules/workflow-processor/services/pipeline-processor.service.d.ts +16 -12
  211. package/dist/modules/workflow-processor/services/pipeline-processor.service.js +125 -100
  212. package/dist/modules/workflow-processor/services/pipeline-processor.service.js.map +1 -1
  213. package/dist/modules/workflow-processor/services/root-processor.service.d.ts +8 -5
  214. package/dist/modules/workflow-processor/services/root-processor.service.js +33 -22
  215. package/dist/modules/workflow-processor/services/root-processor.service.js.map +1 -1
  216. package/dist/modules/workflow-processor/services/service-state-factory.service.d.ts +14 -0
  217. package/dist/modules/workflow-processor/services/service-state-factory.service.js +65 -0
  218. package/dist/modules/workflow-processor/services/service-state-factory.service.js.map +1 -0
  219. package/dist/modules/workflow-processor/services/state-machine-processor.service.d.ts +9 -5
  220. package/dist/modules/workflow-processor/services/state-machine-processor.service.js +38 -49
  221. package/dist/modules/workflow-processor/services/state-machine-processor.service.js.map +1 -1
  222. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.d.ts +3 -12
  223. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.js +4 -28
  224. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.js.map +1 -1
  225. package/dist/modules/workflow-processor/services/tool-execution.service.d.ts +10 -13
  226. package/dist/modules/workflow-processor/services/tool-execution.service.js +45 -64
  227. package/dist/modules/workflow-processor/services/tool-execution.service.js.map +1 -1
  228. package/dist/modules/workflow-processor/services/workflow-processor.service.d.ts +3 -7
  229. package/dist/modules/workflow-processor/services/workflow-processor.service.js +9 -30
  230. package/dist/modules/workflow-processor/services/workflow-processor.service.js.map +1 -1
  231. package/dist/modules/workflow-processor/services/workflow-state.service.d.ts +4 -2
  232. package/dist/modules/workflow-processor/services/workflow-state.service.js +16 -12
  233. package/dist/modules/workflow-processor/services/workflow-state.service.js.map +1 -1
  234. package/dist/modules/workflow-processor/workflow-processor.module.js +32 -15
  235. package/dist/modules/workflow-processor/workflow-processor.module.js.map +1 -1
  236. package/package.json +5 -5
  237. package/dist/config-provider.service.d.ts +0 -6
  238. package/dist/config-provider.service.js +0 -36
  239. package/dist/config-provider.service.js.map +0 -1
  240. package/dist/modules/configuration/services/config-provider.registry.d.ts +0 -12
  241. package/dist/modules/configuration/services/config-provider.registry.js +0 -56
  242. package/dist/modules/configuration/services/config-provider.registry.js.map +0 -1
  243. package/dist/modules/configuration/services/configuration.service.d.ts +0 -32
  244. package/dist/modules/configuration/services/configuration.service.js +0 -217
  245. package/dist/modules/configuration/services/configuration.service.js.map +0 -1
  246. package/dist/modules/configuration/services/handler-registry.service.d.ts +0 -20
  247. package/dist/modules/configuration/services/handler-registry.service.js +0 -71
  248. package/dist/modules/configuration/services/handler-registry.service.js.map +0 -1
  249. package/dist/modules/configuration/services/schema-registry.service.d.ts +0 -9
  250. package/dist/modules/configuration/services/schema-registry.service.js.map +0 -1
  251. package/dist/modules/workflow-processor/handlers/batch-create-documents.handler.d.ts +0 -29
  252. package/dist/modules/workflow-processor/handlers/batch-create-documents.handler.js +0 -104
  253. package/dist/modules/workflow-processor/handlers/batch-create-documents.handler.js.map +0 -1
  254. package/dist/modules/workflow-processor/handlers/create-document.handler.js +0 -173
  255. package/dist/modules/workflow-processor/handlers/create-document.handler.js.map +0 -1
  256. package/dist/modules/workflow-processor/handlers/mock.handler.d.ts +0 -23
  257. package/dist/modules/workflow-processor/handlers/mock.handler.js +0 -79
  258. package/dist/modules/workflow-processor/handlers/mock.handler.js.map +0 -1
  259. package/dist/modules/workflow-processor/handlers/update-document.handler.d.ts +0 -87
  260. package/dist/modules/workflow-processor/handlers/update-document.handler.js +0 -149
  261. package/dist/modules/workflow-processor/handlers/update-document.handler.js.map +0 -1
  262. package/dist/modules/workflow-processor/services/handler-execution.service.d.ts +0 -12
  263. package/dist/modules/workflow-processor/services/handler-execution.service.js +0 -53
  264. package/dist/modules/workflow-processor/services/handler-execution.service.js.map +0 -1
  265. package/dist/modules/workflow-processor/services/state-machine-config.service.d.ts +0 -7
  266. package/dist/modules/workflow-processor/services/state-machine-config.service.js +0 -69
  267. package/dist/modules/workflow-processor/services/state-machine-config.service.js.map +0 -1
  268. package/dist/utils/index.d.ts +0 -1
  269. package/dist/utils/index.js.map +0 -1
  270. package/dist/utils/load-configuration.d.ts +0 -2
  271. package/dist/utils/load-configuration.js +0 -74
  272. package/dist/utils/load-configuration.js.map +0 -1
@@ -1,10 +1,10 @@
1
- import { ContextInterface, HandlerInterface, HandlerCallResult, TransitionMetadataInterface } from '@loopstack/shared';
2
- import { ConfigurationService, SchemaRegistry } from '../../configuration';
1
+ import { HandlerCallResult, ExecutionContext } from '@loopstack/shared';
3
2
  import { z } from 'zod';
4
- import { WorkflowEntity } from '@loopstack/shared';
5
- import { DocumentService } from '../../persistence';
6
- import { TemplateExpressionEvaluatorService } from '../services';
7
- declare const schema: z.ZodObject<{
3
+ import { BlockRegistryService } from '../../../configuration';
4
+ import { DocumentService } from '../../../persistence';
5
+ import { TemplateExpressionEvaluatorService } from '../../services';
6
+ import { ServiceStateFactory } from '../../services/service-state-factory.service';
7
+ export declare const CreateDocumentInputSchema: z.ZodObject<{
8
8
  document: z.ZodString;
9
9
  validate: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"strict">, z.ZodLiteral<"safe">, z.ZodLiteral<"skip">]>>>;
10
10
  update: z.ZodOptional<z.ZodObject<{
@@ -32,10 +32,7 @@ declare const schema: z.ZodObject<{
32
32
  hideAtPlaces?: string[] | undefined;
33
33
  }>>;
34
34
  }, "strip", z.ZodTypeAny, {
35
- content?: any;
36
35
  ui?: any;
37
- schema?: any;
38
- tags?: string[] | undefined;
39
36
  meta?: {
40
37
  invalidate?: boolean | undefined;
41
38
  mimeType?: "text/plain" | "text/html" | "text/css" | "text/xml" | "text/markdown" | "application/javascript" | "application/typescript" | "application/json" | "application/xml" | "application/yaml" | undefined;
@@ -43,11 +40,11 @@ declare const schema: z.ZodObject<{
43
40
  enableAtPlaces?: string[] | undefined;
44
41
  hideAtPlaces?: string[] | undefined;
45
42
  } | undefined;
46
- }, {
47
- content?: any;
48
- ui?: any;
49
43
  schema?: any;
44
+ content?: any;
50
45
  tags?: string[] | undefined;
46
+ }, {
47
+ ui?: any;
51
48
  meta?: {
52
49
  invalidate?: boolean | undefined;
53
50
  mimeType?: "text/plain" | "text/html" | "text/css" | "text/xml" | "text/markdown" | "application/javascript" | "application/typescript" | "application/json" | "application/xml" | "application/yaml" | undefined;
@@ -55,15 +52,15 @@ declare const schema: z.ZodObject<{
55
52
  enableAtPlaces?: string[] | undefined;
56
53
  hideAtPlaces?: string[] | undefined;
57
54
  } | undefined;
55
+ schema?: any;
56
+ content?: any;
57
+ tags?: string[] | undefined;
58
58
  }>>;
59
59
  }, "strict", z.ZodTypeAny, {
60
60
  document: string;
61
61
  validate?: "strict" | "skip" | "safe" | undefined;
62
62
  update?: {
63
- content?: any;
64
63
  ui?: any;
65
- schema?: any;
66
- tags?: string[] | undefined;
67
64
  meta?: {
68
65
  invalidate?: boolean | undefined;
69
66
  mimeType?: "text/plain" | "text/html" | "text/css" | "text/xml" | "text/markdown" | "application/javascript" | "application/typescript" | "application/json" | "application/xml" | "application/yaml" | undefined;
@@ -71,15 +68,15 @@ declare const schema: z.ZodObject<{
71
68
  enableAtPlaces?: string[] | undefined;
72
69
  hideAtPlaces?: string[] | undefined;
73
70
  } | undefined;
71
+ schema?: any;
72
+ content?: any;
73
+ tags?: string[] | undefined;
74
74
  } | undefined;
75
75
  }, {
76
76
  document: string;
77
77
  validate?: "strict" | "skip" | "safe" | undefined;
78
78
  update?: {
79
- content?: any;
80
79
  ui?: any;
81
- schema?: any;
82
- tags?: string[] | undefined;
83
80
  meta?: {
84
81
  invalidate?: boolean | undefined;
85
82
  mimeType?: "text/plain" | "text/html" | "text/css" | "text/xml" | "text/markdown" | "application/javascript" | "application/typescript" | "application/json" | "application/xml" | "application/yaml" | undefined;
@@ -87,15 +84,103 @@ declare const schema: z.ZodObject<{
87
84
  enableAtPlaces?: string[] | undefined;
88
85
  hideAtPlaces?: string[] | undefined;
89
86
  } | undefined;
87
+ schema?: any;
88
+ content?: any;
89
+ tags?: string[] | undefined;
90
+ } | undefined;
91
+ }>;
92
+ export type CreateDocumentInput = z.infer<typeof CreateDocumentInputSchema>;
93
+ export declare const CreateDocumentConfigSchema: z.ZodObject<{
94
+ document: z.ZodString;
95
+ validate: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodLiteral<"strict">, z.ZodLiteral<"safe">, z.ZodLiteral<"skip">]>>;
96
+ update: z.ZodOptional<z.ZodObject<{
97
+ content: z.ZodAny;
98
+ ui: z.ZodOptional<z.ZodUnion<[z.ZodType<any, z.ZodTypeDef, any>, z.ZodString]>>;
99
+ schema: z.ZodOptional<z.ZodUnion<[z.ZodType<any, z.ZodTypeDef, any>, z.ZodString]>>;
100
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
101
+ meta: z.ZodOptional<z.ZodObject<{
102
+ mimeType: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["text/plain", "text/html", "text/css", "text/xml", "text/markdown", "application/javascript", "application/typescript", "application/json", "application/xml", "application/yaml"]>, z.ZodString]>>;
103
+ invalidate: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
104
+ level: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodLiteral<"debug">, z.ZodLiteral<"info">, z.ZodLiteral<"warning">, z.ZodLiteral<"error">]>>;
105
+ enableAtPlaces: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
106
+ hideAtPlaces: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
107
+ }, "strip", z.ZodTypeAny, {
108
+ invalidate?: string | boolean | undefined;
109
+ mimeType?: string | undefined;
110
+ level?: string | undefined;
111
+ enableAtPlaces?: string[] | undefined;
112
+ hideAtPlaces?: string[] | undefined;
113
+ }, {
114
+ invalidate?: string | boolean | undefined;
115
+ mimeType?: string | undefined;
116
+ level?: string | undefined;
117
+ enableAtPlaces?: string[] | undefined;
118
+ hideAtPlaces?: string[] | undefined;
119
+ }>>;
120
+ }, "strip", z.ZodTypeAny, {
121
+ ui?: any;
122
+ meta?: {
123
+ invalidate?: string | boolean | undefined;
124
+ mimeType?: string | undefined;
125
+ level?: string | undefined;
126
+ enableAtPlaces?: string[] | undefined;
127
+ hideAtPlaces?: string[] | undefined;
128
+ } | undefined;
129
+ schema?: any;
130
+ content?: any;
131
+ tags?: string[] | undefined;
132
+ }, {
133
+ ui?: any;
134
+ meta?: {
135
+ invalidate?: string | boolean | undefined;
136
+ mimeType?: string | undefined;
137
+ level?: string | undefined;
138
+ enableAtPlaces?: string[] | undefined;
139
+ hideAtPlaces?: string[] | undefined;
140
+ } | undefined;
141
+ schema?: any;
142
+ content?: any;
143
+ tags?: string[] | undefined;
144
+ }>>;
145
+ }, "strict", z.ZodTypeAny, {
146
+ document: string;
147
+ validate?: string | undefined;
148
+ update?: {
149
+ ui?: any;
150
+ meta?: {
151
+ invalidate?: string | boolean | undefined;
152
+ mimeType?: string | undefined;
153
+ level?: string | undefined;
154
+ enableAtPlaces?: string[] | undefined;
155
+ hideAtPlaces?: string[] | undefined;
156
+ } | undefined;
157
+ schema?: any;
158
+ content?: any;
159
+ tags?: string[] | undefined;
160
+ } | undefined;
161
+ }, {
162
+ document: string;
163
+ validate?: string | undefined;
164
+ update?: {
165
+ ui?: any;
166
+ meta?: {
167
+ invalidate?: string | boolean | undefined;
168
+ mimeType?: string | undefined;
169
+ level?: string | undefined;
170
+ enableAtPlaces?: string[] | undefined;
171
+ hideAtPlaces?: string[] | undefined;
172
+ } | undefined;
173
+ schema?: any;
174
+ content?: any;
175
+ tags?: string[] | undefined;
90
176
  } | undefined;
91
177
  }>;
92
- export declare class CreateDocumentHandler implements HandlerInterface {
93
- private loopConfigService;
178
+ export declare class CreateDocumentService {
94
179
  private documentService;
95
180
  private templateExpressionEvaluatorService;
96
- private schemaRegistry;
181
+ private readonly blockRegistryService;
182
+ private readonly serviceStateFactory;
97
183
  private readonly logger;
98
- constructor(loopConfigService: ConfigurationService, documentService: DocumentService, templateExpressionEvaluatorService: TemplateExpressionEvaluatorService, schemaRegistry: SchemaRegistry);
99
- apply(props: z.infer<typeof schema>, workflow: WorkflowEntity | undefined, context: ContextInterface, meta: TransitionMetadataInterface, parentArguments: any): Promise<HandlerCallResult>;
184
+ constructor(documentService: DocumentService, templateExpressionEvaluatorService: TemplateExpressionEvaluatorService, blockRegistryService: BlockRegistryService, serviceStateFactory: ServiceStateFactory);
185
+ createDocument(ctx: ExecutionContext<CreateDocumentInput>): Promise<HandlerCallResult>;
100
186
  }
101
- export {};
@@ -0,0 +1,172 @@
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
+ var CreateDocumentService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.CreateDocumentService = exports.CreateDocumentConfigSchema = exports.CreateDocumentInputSchema = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const shared_1 = require("@loopstack/shared");
16
+ const zod_1 = require("zod");
17
+ const lodash_1 = require("lodash");
18
+ const configuration_1 = require("../../../configuration");
19
+ const persistence_1 = require("../../../persistence");
20
+ const services_1 = require("../../services");
21
+ const errors_1 = require("../../errors");
22
+ const service_state_factory_service_1 = require("../../services/service-state-factory.service");
23
+ exports.CreateDocumentInputSchema = zod_1.z
24
+ .object({
25
+ document: zod_1.z.string(),
26
+ validate: zod_1.z.union([
27
+ zod_1.z.literal('strict'),
28
+ zod_1.z.literal('safe'),
29
+ zod_1.z.literal('skip'),
30
+ ]).default('strict').optional(),
31
+ update: zod_1.z
32
+ .object({
33
+ content: zod_1.z.any(),
34
+ schema: shared_1.JSONSchemaType.optional(),
35
+ ui: shared_1.UISchema.optional(),
36
+ tags: zod_1.z.array(zod_1.z.string()).optional(),
37
+ meta: zod_1.z
38
+ .object({
39
+ mimeType: shared_1.MimeTypeSchema.optional(),
40
+ invalidate: zod_1.z.boolean().optional(),
41
+ level: zod_1.z
42
+ .union([
43
+ zod_1.z.literal('debug'),
44
+ zod_1.z.literal('info'),
45
+ zod_1.z.literal('warning'),
46
+ zod_1.z.literal('error'),
47
+ ])
48
+ .optional(),
49
+ enableAtPlaces: zod_1.z.array(zod_1.z.string()).optional(),
50
+ hideAtPlaces: zod_1.z.array(zod_1.z.string()).optional(),
51
+ })
52
+ .optional(),
53
+ })
54
+ .optional(),
55
+ })
56
+ .strict();
57
+ exports.CreateDocumentConfigSchema = zod_1.z
58
+ .object({
59
+ document: zod_1.z.string(),
60
+ validate: zod_1.z.union([
61
+ shared_1.ExpressionString,
62
+ zod_1.z.literal('strict'),
63
+ zod_1.z.literal('safe'),
64
+ zod_1.z.literal('skip'),
65
+ ]).optional(),
66
+ update: zod_1.z
67
+ .object({
68
+ content: zod_1.z.any(),
69
+ ui: zod_1.z.union([
70
+ shared_1.UISchema,
71
+ shared_1.ExpressionString,
72
+ ]).optional(),
73
+ schema: zod_1.z.union([
74
+ shared_1.JSONSchemaType,
75
+ shared_1.ExpressionString,
76
+ ]).optional(),
77
+ tags: zod_1.z.array(zod_1.z.string()).optional(),
78
+ meta: zod_1.z
79
+ .object({
80
+ mimeType: zod_1.z.union([shared_1.MimeTypeSchema, shared_1.ExpressionString]).optional(),
81
+ invalidate: zod_1.z.union([zod_1.z.boolean(), shared_1.ExpressionString]).optional(),
82
+ level: zod_1.z
83
+ .union([
84
+ shared_1.ExpressionString,
85
+ zod_1.z.literal('debug'),
86
+ zod_1.z.literal('info'),
87
+ zod_1.z.literal('warning'),
88
+ zod_1.z.literal('error'),
89
+ ])
90
+ .optional(),
91
+ enableAtPlaces: zod_1.z.array(zod_1.z.string()).optional(),
92
+ hideAtPlaces: zod_1.z.array(zod_1.z.string()).optional(),
93
+ })
94
+ .optional(),
95
+ })
96
+ .optional(),
97
+ })
98
+ .strict();
99
+ let CreateDocumentService = CreateDocumentService_1 = class CreateDocumentService {
100
+ documentService;
101
+ templateExpressionEvaluatorService;
102
+ blockRegistryService;
103
+ serviceStateFactory;
104
+ logger = new common_1.Logger(CreateDocumentService_1.name);
105
+ constructor(documentService, templateExpressionEvaluatorService, blockRegistryService, serviceStateFactory) {
106
+ this.documentService = documentService;
107
+ this.templateExpressionEvaluatorService = templateExpressionEvaluatorService;
108
+ this.blockRegistryService = blockRegistryService;
109
+ this.serviceStateFactory = serviceStateFactory;
110
+ }
111
+ async createDocument(ctx) {
112
+ if (!ctx.workflow) {
113
+ throw new Error('Workflow is undefined');
114
+ }
115
+ const blockRegistryItem = this.blockRegistryService.getBlock(ctx.args.document);
116
+ if (!blockRegistryItem) {
117
+ throw new Error(`Document ${ctx.args.document} not found.`);
118
+ }
119
+ const documentBlock = await this.serviceStateFactory.createBlockInstance(blockRegistryItem);
120
+ documentBlock.initDocument(ctx.parentArgs);
121
+ const config = documentBlock.config;
122
+ try {
123
+ const mergedTemplateData = (0, lodash_1.merge)({}, config, ctx.args.update ?? {});
124
+ const documentSkeleton = this.templateExpressionEvaluatorService.parse((0, lodash_1.omit)(mergedTemplateData, ['content']), { this: documentBlock }, {
125
+ schema: shared_1.DocumentSchema,
126
+ });
127
+ const inputSchema = documentBlock.metadata.inputSchema;
128
+ if (!inputSchema && mergedTemplateData.content) {
129
+ throw Error(`Document creates with content no schema defined.`);
130
+ }
131
+ const parsedDocumentContent = mergedTemplateData.content
132
+ ? this.templateExpressionEvaluatorService.parse(mergedTemplateData.content, { this: documentBlock })
133
+ : null;
134
+ const documentData = {
135
+ name: documentBlock.name,
136
+ ...documentSkeleton,
137
+ content: parsedDocumentContent,
138
+ configKey: documentBlock.name,
139
+ };
140
+ if (inputSchema && ctx.args.validate !== 'skip') {
141
+ const result = inputSchema.safeParse(documentData.content);
142
+ if (!result.success) {
143
+ if (ctx.args.validate === 'strict') {
144
+ this.logger.error(result.error);
145
+ throw new errors_1.SchemaValidationError('Document schema validation failed (strict)');
146
+ }
147
+ documentData.validationError = result.error;
148
+ }
149
+ }
150
+ const document = this.documentService.create(ctx.context.workspaceId, ctx.context.pipelineId, ctx.context.userId, ctx.workflow, ctx.transitionData, documentData);
151
+ this.logger.debug(`Created document "${documentData.name}".`);
152
+ return {
153
+ success: true,
154
+ persist: true,
155
+ workflow: ctx.workflow,
156
+ data: document,
157
+ };
158
+ }
159
+ catch (e) {
160
+ throw new configuration_1.ConfigTraceError(e, documentBlock);
161
+ }
162
+ }
163
+ };
164
+ exports.CreateDocumentService = CreateDocumentService;
165
+ exports.CreateDocumentService = CreateDocumentService = CreateDocumentService_1 = __decorate([
166
+ (0, common_1.Injectable)(),
167
+ __metadata("design:paramtypes", [persistence_1.DocumentService,
168
+ services_1.TemplateExpressionEvaluatorService,
169
+ configuration_1.BlockRegistryService,
170
+ service_state_factory_service_1.ServiceStateFactory])
171
+ ], CreateDocumentService);
172
+ //# sourceMappingURL=create-document.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-document.service.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/services/create-document.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,8CAO2B;AAE3B,6BAAwB;AACxB,mCAAqC;AACrC,0DAAgF;AAChF,sDAAuD;AACvD,6CAAoE;AACpE,yCAAqD;AAErD,gGAAmF;AAEtE,QAAA,yBAAyB,GAAG,OAAC;KACvC,MAAM,CAAC;IACN,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC;QAChB,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACnB,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACjB,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;KAClB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,OAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,OAAC,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,uBAAc,CAAC,QAAQ,EAAE;QACjC,EAAE,EAAE,iBAAQ,CAAC,QAAQ,EAAE;QACvB,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QACpC,IAAI,EAAE,OAAC;aACJ,MAAM,CAAC;YACN,QAAQ,EAAE,uBAAc,CAAC,QAAQ,EAAE;YACnC,UAAU,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAClC,KAAK,EAAE,OAAC;iBACL,KAAK,CAAC;gBACL,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBAClB,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACjB,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;gBACpB,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;aACnB,CAAC;iBACD,QAAQ,EAAE;YACb,cAAc,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC9C,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;SAC7C,CAAC;aACD,QAAQ,EAAE;KACd,CAAC;SACD,QAAQ,EAAE;CACd,CAAC;KACD,MAAM,EAAE,CAAC;AAIC,QAAA,0BAA0B,GAAG,OAAC;KACxC,MAAM,CAAC;IACN,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC;QAChB,yBAAgB;QAChB,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACnB,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACjB,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;KAClB,CAAC,CAAC,QAAQ,EAAE;IACb,MAAM,EAAE,OAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,OAAC,CAAC,GAAG,EAAE;QAChB,EAAE,EAAE,OAAC,CAAC,KAAK,CAAC;YACV,iBAAQ;YACR,yBAAgB;SACjB,CAAC,CAAC,QAAQ,EAAE;QACb,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;YACd,uBAAc;YACd,yBAAgB;SACjB,CAAC,CAAC,QAAQ,EAAE;QACb,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QACpC,IAAI,EAAE,OAAC;aACJ,MAAM,CAAC;YACN,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,uBAAc,EAAE,yBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE;YAChE,UAAU,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,EAAE,EAAE,yBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC/D,KAAK,EAAE,OAAC;iBACL,KAAK,CAAC;gBACL,yBAAgB;gBAChB,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBAClB,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACjB,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;gBACpB,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;aACnB,CAAC;iBACD,QAAQ,EAAE;YACb,cAAc,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC9C,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;SAC7C,CAAC;aACD,QAAQ,EAAE;KACd,CAAC;SACD,QAAQ,EAAE;CACd,CAAC;KACD,MAAM,EAAE,CAAC;AAGL,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAItB;IACA;IACS;IACA;IANF,MAAM,GAAG,IAAI,eAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAC;IAEjE,YACU,eAAgC,EAChC,kCAAsE,EAC7D,oBAA0C,EAC1C,mBAAwC;QAHjD,oBAAe,GAAf,eAAe,CAAiB;QAChC,uCAAkC,GAAlC,kCAAkC,CAAoC;QAC7D,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,wBAAmB,GAAnB,mBAAmB,CAAqB;IACxD,CAAC;IAEJ,KAAK,CAAC,cAAc,CAClB,GAA0C;QAE1C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAW,iBAAiB,CAAC,CAAC;QACtG,aAAa,CAAC,YAAY,CACxB,GAAG,CAAC,UAAU,CACf,CAAA;QAED,MAAM,MAAM,GAAG,aAAa,CAAC,MAA4B,CAAC;QAE1D,IAAI,CAAC;YAEH,MAAM,kBAAkB,GAAG,IAAA,cAAK,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAGpE,MAAM,gBAAgB,GACpB,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAC3C,IAAA,aAAI,EAAC,kBAAkB,EAAE,CAAC,SAAS,CAAC,CAAC,EACrC,EAAE,IAAI,EAAE,aAAa,EAAE,EACvB;gBACE,MAAM,EAAE,uBAAc;aACvB,CACF,CAAC;YAEJ,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC;YACvD,IAAI,CAAC,WAAW,IAAI,kBAAkB,CAAC,OAAO,EAAE,CAAC;gBAC/C,MAAM,KAAK,CAAC,kDAAkD,CAAC,CAAC;YAClE,CAAC;YAGD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,OAAO;gBACtD,CAAC,CAAC,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAC7C,kBAAkB,CAAC,OAAO,EAC1B,EAAE,IAAI,EAAE,aAAa,EAAE,CAExB;gBACD,CAAC,CAAC,IAAI,CAAC;YAGT,MAAM,YAAY,GAA4B;gBAC5C,IAAI,EAAE,aAAa,CAAC,IAAI;gBACxB,GAAG,gBAAgB;gBACnB,OAAO,EAAE,qBAAqB;gBAC9B,SAAS,EAAE,aAAa,CAAC,IAAI;aAC9B,CAAC;YAGF,IAAI,WAAW,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAChC,MAAM,IAAI,8BAAqB,CAAC,4CAA4C,CAAC,CAAA;oBAC/E,CAAC;oBAED,YAAY,CAAC,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC9C,CAAC;YACH,CAAC;YAGD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAC1C,GAAG,CAAC,OAAO,CAAC,WAAW,EACvB,GAAG,CAAC,OAAO,CAAC,UAAU,EACtB,GAAG,CAAC,OAAO,CAAC,MAAM,EAClB,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,cAAc,EAClB,YAAY,CACb,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC;YAE9D,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,IAAI,EAAE,QAAQ;aACf,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,gCAAgB,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;CACF,CAAA;AAnGY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;qCAKgB,6BAAe;QACI,6CAAkC;QACvC,oCAAoB;QACrB,mDAAmB;GAPhD,qBAAqB,CAmGjC"}
@@ -0,0 +1,16 @@
1
+ import { HandlerCallResult, ExecutionContext } from '@loopstack/shared';
2
+ import { TemplateExpressionEvaluatorService } from '../../services';
3
+ import { Tool } from '../../abstract';
4
+ export declare class MockService {
5
+ private readonly templateExpressionEvaluatorService;
6
+ private readonly logger;
7
+ constructor(templateExpressionEvaluatorService: TemplateExpressionEvaluatorService);
8
+ createMock(block: Tool, ctx: ExecutionContext<{
9
+ input?: any;
10
+ output?: any;
11
+ error?: string;
12
+ }>): Promise<HandlerCallResult>;
13
+ debug(ctx: ExecutionContext<{
14
+ value?: any;
15
+ }>): Promise<HandlerCallResult>;
16
+ }
@@ -0,0 +1,61 @@
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
+ var MockService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.MockService = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const services_1 = require("../../services");
16
+ let MockService = MockService_1 = class MockService {
17
+ templateExpressionEvaluatorService;
18
+ logger = new common_1.Logger(MockService_1.name);
19
+ constructor(templateExpressionEvaluatorService) {
20
+ this.templateExpressionEvaluatorService = templateExpressionEvaluatorService;
21
+ }
22
+ async createMock(block, ctx) {
23
+ if (!ctx.workflow) {
24
+ throw new Error('Workflow is undefined');
25
+ }
26
+ let parsedInput;
27
+ if (ctx.args.input) {
28
+ parsedInput = this.templateExpressionEvaluatorService.parse(ctx.args.input, { this: block });
29
+ this.logger.debug(`Parsed input: ${JSON.stringify(parsedInput)}`);
30
+ }
31
+ let parsedOutput = null;
32
+ if (ctx.args.output) {
33
+ parsedOutput =
34
+ this.templateExpressionEvaluatorService.parse(ctx.args.output, { this: block });
35
+ }
36
+ if (ctx.args.error) {
37
+ const parsedError = this.templateExpressionEvaluatorService.parse(ctx.args.error, { this: block });
38
+ throw new Error(parsedError);
39
+ }
40
+ return {
41
+ success: true,
42
+ data: parsedOutput,
43
+ };
44
+ }
45
+ async debug(ctx) {
46
+ if (!ctx.workflow) {
47
+ throw new Error('Workflow is undefined');
48
+ }
49
+ this.logger.debug(`Debug value: ${JSON.stringify(ctx.args.value)}`);
50
+ return {
51
+ success: true,
52
+ data: null,
53
+ };
54
+ }
55
+ };
56
+ exports.MockService = MockService;
57
+ exports.MockService = MockService = MockService_1 = __decorate([
58
+ (0, common_1.Injectable)(),
59
+ __metadata("design:paramtypes", [services_1.TemplateExpressionEvaluatorService])
60
+ ], MockService);
61
+ //# sourceMappingURL=mock.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.service.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/services/mock.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AAMpD,6CAAoE;AAI7D,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAIH;IAHF,MAAM,GAAG,IAAI,eAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;IAEvD,YACmB,kCAAsE;QAAtE,uCAAkC,GAAlC,kCAAkC,CAAoC;IACtF,CAAC;IAEJ,KAAK,CAAC,UAAU,CACd,KAAW,EACX,GAIE;QAEF,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,WAAqC,CAAC;QAC1C,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,WAAW,GAAG,IAAI,CAAC,kCAAkC,CAAC,KAAK,CACzD,GAAG,CAAC,IAAI,CAAC,KAAK,EACd,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,YAAY,GAAwB,IAAI,CAAC;QAC7C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,YAAY;gBACV,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAC3C,GAAG,CAAC,IAAI,CAAC,MAAM,EACf,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;QACN,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAC/D,GAAG,CAAC,IAAI,CAAC,KAAK,EACd,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;YACF,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,YAAY;SACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CACT,GAEE;QAEF,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEpE,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI;SACX,CAAC;IACJ,CAAC;CACF,CAAA;AAnEY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAK4C,6CAAkC;GAJ9E,WAAW,CAmEvB"}
@@ -0,0 +1,35 @@
1
+ import { ExecutionContext, HandlerCallResult } from '@loopstack/shared';
2
+ import { z } from 'zod';
3
+ import { Logger } from '@nestjs/common';
4
+ import { Tool } from '../../abstract';
5
+ import { BatchCreateDocumentsService } from '../services/batch-create-documents.service';
6
+ declare const BatchCreateMessagesInputSchema: z.ZodObject<{
7
+ items: z.ZodArray<z.ZodObject<{
8
+ role: z.ZodString;
9
+ content: z.ZodArray<z.ZodAny, "many">;
10
+ }, "strip", z.ZodTypeAny, {
11
+ content: any[];
12
+ role: string;
13
+ }, {
14
+ content: any[];
15
+ role: string;
16
+ }>, "many">;
17
+ }, "strict", z.ZodTypeAny, {
18
+ items: {
19
+ content: any[];
20
+ role: string;
21
+ }[];
22
+ }, {
23
+ items: {
24
+ content: any[];
25
+ role: string;
26
+ }[];
27
+ }>;
28
+ type BatchCreateMessagesInput = z.infer<typeof BatchCreateMessagesInputSchema>;
29
+ export declare class BatchCreateMessages extends Tool {
30
+ protected batchCreateDocumentsService: BatchCreateDocumentsService;
31
+ protected readonly logger: Logger;
32
+ constructor(batchCreateDocumentsService: BatchCreateDocumentsService);
33
+ execute(ctx: ExecutionContext<BatchCreateMessagesInput>): Promise<HandlerCallResult>;
34
+ }
35
+ export {};
@@ -0,0 +1,65 @@
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
+ var BatchCreateMessages_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.BatchCreateMessages = void 0;
14
+ const shared_1 = require("@loopstack/shared");
15
+ const zod_1 = require("zod");
16
+ const common_1 = require("@nestjs/common");
17
+ const abstract_1 = require("../../abstract");
18
+ const batch_create_documents_service_1 = require("../services/batch-create-documents.service");
19
+ const BatchCreateMessagesInputSchema = zod_1.z
20
+ .object({
21
+ items: zod_1.z.array(zod_1.z.object({
22
+ role: zod_1.z.string(),
23
+ content: zod_1.z.array(zod_1.z.any()),
24
+ })),
25
+ })
26
+ .strict();
27
+ const BatchCreateMessagesConfigSchema = zod_1.z
28
+ .object({
29
+ items: zod_1.z.array(zod_1.z.object({
30
+ role: zod_1.z.string(),
31
+ content: zod_1.z.array(zod_1.z.any()),
32
+ })),
33
+ })
34
+ .strict();
35
+ let BatchCreateMessages = BatchCreateMessages_1 = class BatchCreateMessages extends abstract_1.Tool {
36
+ batchCreateDocumentsService;
37
+ logger = new common_1.Logger(BatchCreateMessages_1.name);
38
+ constructor(batchCreateDocumentsService) {
39
+ super();
40
+ this.batchCreateDocumentsService = batchCreateDocumentsService;
41
+ }
42
+ async execute(ctx) {
43
+ return this.batchCreateDocumentsService.batchCreateDocuments({
44
+ ...ctx,
45
+ args: {
46
+ document: 'message',
47
+ items: ctx.args.items,
48
+ },
49
+ });
50
+ }
51
+ };
52
+ exports.BatchCreateMessages = BatchCreateMessages;
53
+ exports.BatchCreateMessages = BatchCreateMessages = BatchCreateMessages_1 = __decorate([
54
+ (0, shared_1.Block)({
55
+ config: {
56
+ type: 'tool',
57
+ description: 'Batch create messages.',
58
+ },
59
+ inputSchema: BatchCreateMessagesInputSchema,
60
+ configSchema: BatchCreateMessagesConfigSchema,
61
+ documentationFile: __dirname + '/batch-create-messages-tool.md',
62
+ }),
63
+ __metadata("design:paramtypes", [batch_create_documents_service_1.BatchCreateDocumentsService])
64
+ ], BatchCreateMessages);
65
+ //# sourceMappingURL=batch-create-messages-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-create-messages-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/batch-create-messages-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAA+E;AAC/E,6BAAwB;AACxB,2CAAwC;AACxC,6CAAsC;AACtC,+FAAyF;AAEzF,MAAM,8BAA8B,GAAG,OAAC;KACrC,MAAM,CAAC;IACN,KAAK,EAAE,OAAC,CAAC,KAAK,CACZ,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,GAAG,EAAE,CAAC;KAC1B,CAAC,CACH;CACF,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ,MAAM,+BAA+B,GAAG,OAAC;KACtC,MAAM,CAAC;IACN,KAAK,EAAE,OAAC,CAAC,KAAK,CACZ,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,GAAG,EAAE,CAAC;KAC1B,CAAC,CACH;CACF,CAAC;KACD,MAAM,EAAE,CAAC;AAWL,IAAM,mBAAmB,2BAAzB,MAAM,mBAAoB,SAAQ,eAAI;IAI/B;IAHO,MAAM,GAAG,IAAI,eAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IAEjE,YACY,2BAAwD;QAElE,KAAK,EAAE,CAAC;QAFE,gCAA2B,GAA3B,2BAA2B,CAA6B;IAGpE,CAAC;IAGD,KAAK,CAAC,OAAO,CACX,GAA+C;QAE/C,OAAO,IAAI,CAAC,2BAA2B,CAAC,oBAAoB,CAAC;YAC3D,GAAG,GAAG;YACN,IAAI,EAAE;gBACJ,QAAQ,EAAE,SAAS;gBACnB,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK;aACtB;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AArBY,kDAAmB;8BAAnB,mBAAmB;IAT/B,IAAA,cAAK,EAAC;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,wBAAwB;SACtC;QACD,WAAW,EAAE,8BAA8B;QAC3C,YAAY,EAAE,+BAA+B;QAC7C,iBAAiB,EAAE,SAAS,GAAG,gCAAgC;KAChE,CAAC;qCAKyC,4DAA2B;GAJzD,mBAAmB,CAqB/B"}
@@ -0,0 +1,53 @@
1
+ import { ExecutionContext, HandlerCallResult } from '@loopstack/shared';
2
+ import { Logger } from '@nestjs/common';
3
+ import { z } from 'zod';
4
+ import { Tool } from '../../abstract';
5
+ import { CreateDocumentService } from '../services/create-document.service';
6
+ declare const CreateChatMessageInputSchema: z.ZodObject<{
7
+ content: z.ZodUnion<[z.ZodString, z.ZodNull]>;
8
+ role: z.ZodString;
9
+ tool_calls: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
10
+ tool_call_id: z.ZodOptional<z.ZodString>;
11
+ annotations: z.ZodOptional<z.ZodAny>;
12
+ refusal: z.ZodOptional<z.ZodAny>;
13
+ meta: z.ZodOptional<z.ZodObject<{
14
+ level: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"debug">, z.ZodLiteral<"info">, z.ZodLiteral<"warning">, z.ZodLiteral<"error">]>>;
15
+ invalidate: z.ZodOptional<z.ZodBoolean>;
16
+ }, "strip", z.ZodTypeAny, {
17
+ invalidate?: boolean | undefined;
18
+ level?: "error" | "debug" | "info" | "warning" | undefined;
19
+ }, {
20
+ invalidate?: boolean | undefined;
21
+ level?: "error" | "debug" | "info" | "warning" | undefined;
22
+ }>>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ content: string | null;
25
+ role: string;
26
+ meta?: {
27
+ invalidate?: boolean | undefined;
28
+ level?: "error" | "debug" | "info" | "warning" | undefined;
29
+ } | undefined;
30
+ tool_calls?: any[] | undefined;
31
+ tool_call_id?: string | undefined;
32
+ annotations?: any;
33
+ refusal?: any;
34
+ }, {
35
+ content: string | null;
36
+ role: string;
37
+ meta?: {
38
+ invalidate?: boolean | undefined;
39
+ level?: "error" | "debug" | "info" | "warning" | undefined;
40
+ } | undefined;
41
+ tool_calls?: any[] | undefined;
42
+ tool_call_id?: string | undefined;
43
+ annotations?: any;
44
+ refusal?: any;
45
+ }>;
46
+ type CreateChatMessageInput = z.infer<typeof CreateChatMessageInputSchema>;
47
+ export declare class CreateChatMessage extends Tool {
48
+ private readonly createDocumentService;
49
+ protected readonly logger: Logger;
50
+ constructor(createDocumentService: CreateDocumentService);
51
+ execute(ctx: ExecutionContext<CreateChatMessageInput>): Promise<HandlerCallResult>;
52
+ }
53
+ export {};