@loopstack/core 0.8.1 → 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 (263) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/LICENSE +43 -21
  3. package/dist/index.d.ts +0 -1
  4. package/dist/index.js +0 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/loop-core.module.d.ts +1 -4
  7. package/dist/loop-core.module.js +27 -46
  8. package/dist/loop-core.module.js.map +1 -1
  9. package/dist/modules/common/services/expression-handler/object-expression.handler.d.ts +2 -27
  10. package/dist/modules/common/services/expression-handler/object-expression.handler.js +26 -542
  11. package/dist/modules/common/services/expression-handler/object-expression.handler.js.map +1 -1
  12. package/dist/modules/common/services/template.service.d.ts +3 -2
  13. package/dist/modules/common/services/template.service.js +6 -6
  14. package/dist/modules/common/services/template.service.js.map +1 -1
  15. package/dist/modules/configuration/configuration.module.js +3 -8
  16. package/dist/modules/configuration/configuration.module.js.map +1 -1
  17. package/dist/modules/configuration/errors/config-trace.error.d.ts +2 -2
  18. package/dist/modules/configuration/errors/config-trace.error.js +2 -2
  19. package/dist/modules/configuration/errors/config-trace.error.js.map +1 -1
  20. package/dist/modules/configuration/services/block-registry.service.d.ts +25 -0
  21. package/dist/modules/configuration/services/block-registry.service.js +91 -0
  22. package/dist/modules/configuration/services/block-registry.service.js.map +1 -0
  23. package/dist/modules/configuration/services/config-loader.service.d.ts +4 -0
  24. package/dist/modules/configuration/services/config-loader.service.js +46 -0
  25. package/dist/modules/configuration/services/config-loader.service.js.map +1 -0
  26. package/dist/modules/configuration/services/dynamic-schema-generator.service.d.ts +0 -3
  27. package/dist/modules/configuration/services/dynamic-schema-generator.service.js +2 -17
  28. package/dist/modules/configuration/services/dynamic-schema-generator.service.js.map +1 -1
  29. package/dist/modules/configuration/services/index.d.ts +2 -4
  30. package/dist/modules/configuration/services/index.js +2 -4
  31. package/dist/modules/configuration/services/index.js.map +1 -1
  32. package/dist/modules/persistence/blocks/services/create-entity.service.d.ts +12 -0
  33. package/dist/modules/persistence/blocks/services/create-entity.service.js +46 -0
  34. package/dist/modules/persistence/blocks/services/create-entity.service.js.map +1 -0
  35. package/dist/modules/persistence/blocks/tools/batch-create-entity-tool.d.ts +20 -0
  36. package/dist/modules/persistence/blocks/tools/batch-create-entity-tool.js +40 -0
  37. package/dist/modules/persistence/blocks/tools/batch-create-entity-tool.js.map +1 -0
  38. package/dist/modules/persistence/blocks/tools/create-entity-tool.d.ts +23 -0
  39. package/dist/modules/persistence/blocks/tools/create-entity-tool.js +42 -0
  40. package/dist/modules/persistence/blocks/tools/create-entity-tool.js.map +1 -0
  41. package/dist/modules/persistence/blocks/tools/index.d.ts +3 -0
  42. package/dist/modules/persistence/blocks/tools/index.js +20 -0
  43. package/dist/modules/persistence/blocks/tools/index.js.map +1 -0
  44. package/dist/modules/persistence/blocks/tools/sql-query-tool.d.ts +26 -0
  45. package/dist/modules/persistence/blocks/tools/sql-query-tool.js +65 -0
  46. package/dist/modules/persistence/blocks/tools/sql-query-tool.js.map +1 -0
  47. package/dist/modules/persistence/handlers/create-entity.handler.d.ts +2 -2
  48. package/dist/modules/persistence/handlers/create-entity.handler.js +0 -1
  49. package/dist/modules/persistence/handlers/create-entity.handler.js.map +1 -1
  50. package/dist/modules/persistence/persistence.module.js +1 -0
  51. package/dist/modules/persistence/persistence.module.js.map +1 -1
  52. package/dist/modules/persistence/services/document.service.d.ts +1 -2
  53. package/dist/modules/persistence/services/document.service.js +4 -3
  54. package/dist/modules/persistence/services/document.service.js.map +1 -1
  55. package/dist/modules/persistence/services/pipeline.service.d.ts +1 -0
  56. package/dist/modules/persistence/services/pipeline.service.js +13 -0
  57. package/dist/modules/persistence/services/pipeline.service.js.map +1 -1
  58. package/dist/modules/persistence/subscriber/document.subscriber.d.ts +4 -1
  59. package/dist/modules/persistence/subscriber/document.subscriber.js +9 -2
  60. package/dist/modules/persistence/subscriber/document.subscriber.js.map +1 -1
  61. package/dist/modules/persistence/subscriber/workflow.subscriber.d.ts +4 -1
  62. package/dist/modules/persistence/subscriber/workflow.subscriber.js +10 -2
  63. package/dist/modules/persistence/subscriber/workflow.subscriber.js.map +1 -1
  64. package/dist/modules/scheduler/services/task-initialization.service.d.ts +4 -5
  65. package/dist/modules/scheduler/services/task-initialization.service.js +4 -14
  66. package/dist/modules/scheduler/services/task-initialization.service.js.map +1 -1
  67. package/dist/modules/scheduler/services/task-processor/cleanup-pipeline-task-processor.service.d.ts +0 -9
  68. package/dist/modules/scheduler/services/task-processor/cleanup-pipeline-task-processor.service.js +1 -65
  69. package/dist/modules/scheduler/services/task-processor/cleanup-pipeline-task-processor.service.js.map +1 -1
  70. package/dist/modules/scheduler/services/task-processor/create-run-pipeline-task-processor.service.d.ts +1 -6
  71. package/dist/modules/scheduler/services/task-processor/create-run-pipeline-task-processor.service.js +2 -24
  72. package/dist/modules/scheduler/services/task-processor/create-run-pipeline-task-processor.service.js.map +1 -1
  73. package/dist/modules/scheduler/services/task-processor/create-workspace-task-processor.service.d.ts +1 -6
  74. package/dist/modules/scheduler/services/task-processor/create-workspace-task-processor.service.js +2 -27
  75. package/dist/modules/scheduler/services/task-processor/create-workspace-task-processor.service.js.map +1 -1
  76. package/dist/modules/scheduler/services/task-processor.service.d.ts +1 -7
  77. package/dist/modules/scheduler/services/task-processor.service.js +2 -23
  78. package/dist/modules/scheduler/services/task-processor.service.js.map +1 -1
  79. package/dist/modules/workflow-processor/abstract/block.abstract.d.ts +35 -0
  80. package/dist/modules/workflow-processor/abstract/block.abstract.js +40 -0
  81. package/dist/modules/workflow-processor/abstract/block.abstract.js.map +1 -0
  82. package/dist/modules/workflow-processor/abstract/document.abstract.d.ts +8 -0
  83. package/dist/modules/workflow-processor/abstract/document.abstract.js +15 -0
  84. package/dist/modules/workflow-processor/abstract/document.abstract.js.map +1 -0
  85. package/dist/modules/workflow-processor/abstract/index.d.ts +5 -0
  86. package/dist/modules/workflow-processor/abstract/index.js +22 -0
  87. package/dist/modules/workflow-processor/abstract/index.js.map +1 -0
  88. package/dist/modules/workflow-processor/abstract/pipeline.abstract.d.ts +8 -0
  89. package/dist/modules/workflow-processor/abstract/pipeline.abstract.js +15 -0
  90. package/dist/modules/workflow-processor/abstract/pipeline.abstract.js.map +1 -0
  91. package/dist/modules/workflow-processor/abstract/tool.abstract.d.ts +13 -0
  92. package/dist/modules/workflow-processor/abstract/tool.abstract.js +26 -0
  93. package/dist/modules/workflow-processor/abstract/tool.abstract.js.map +1 -0
  94. package/dist/modules/workflow-processor/abstract/workflow.abstract.d.ts +11 -0
  95. package/dist/modules/workflow-processor/abstract/workflow.abstract.js +37 -0
  96. package/dist/modules/workflow-processor/abstract/workflow.abstract.js.map +1 -0
  97. package/dist/modules/workflow-processor/abstract/workspace.abstract.d.ts +7 -0
  98. package/dist/modules/workflow-processor/abstract/workspace.abstract.js +15 -0
  99. package/dist/modules/workflow-processor/abstract/workspace.abstract.js.map +1 -0
  100. package/dist/modules/workflow-processor/blocks/documents/error-message-document.d.ts +3 -0
  101. package/dist/modules/workflow-processor/blocks/documents/error-message-document.js +30 -0
  102. package/dist/modules/workflow-processor/blocks/documents/error-message-document.js.map +1 -0
  103. package/dist/modules/workflow-processor/blocks/documents/error-message-document.yaml +13 -0
  104. package/dist/modules/workflow-processor/blocks/documents/index.d.ts +4 -0
  105. package/dist/modules/workflow-processor/blocks/documents/index.js +21 -0
  106. package/dist/modules/workflow-processor/blocks/documents/index.js.map +1 -0
  107. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.d.ts +3 -0
  108. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.js +31 -0
  109. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.js.map +1 -0
  110. package/dist/modules/workflow-processor/blocks/documents/markdown-message-document.yaml +16 -0
  111. package/dist/modules/workflow-processor/blocks/documents/message-document.d.ts +3 -0
  112. package/dist/modules/workflow-processor/blocks/documents/message-document.js +31 -0
  113. package/dist/modules/workflow-processor/blocks/documents/message-document.js.map +1 -0
  114. package/dist/modules/workflow-processor/blocks/documents/message-document.yaml +15 -0
  115. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.d.ts +3 -0
  116. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.js +31 -0
  117. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.js.map +1 -0
  118. package/dist/modules/workflow-processor/blocks/documents/plain-message-document.yaml +16 -0
  119. package/dist/modules/workflow-processor/blocks/index.d.ts +2 -0
  120. package/dist/{utils → modules/workflow-processor/blocks}/index.js +2 -1
  121. package/dist/modules/workflow-processor/blocks/index.js.map +1 -0
  122. package/dist/modules/workflow-processor/blocks/services/batch-create-documents.service.d.ts +13 -0
  123. package/dist/modules/workflow-processor/blocks/services/batch-create-documents.service.js +40 -0
  124. package/dist/modules/workflow-processor/blocks/services/batch-create-documents.service.js.map +1 -0
  125. package/dist/modules/workflow-processor/{handlers/create-document.handler.d.ts → blocks/services/create-document.service.d.ts} +109 -24
  126. package/dist/modules/workflow-processor/{handlers/create-document.handler.js → blocks/services/create-document.service.js} +47 -54
  127. package/dist/modules/workflow-processor/blocks/services/create-document.service.js.map +1 -0
  128. package/dist/modules/workflow-processor/blocks/services/mock.service.d.ts +16 -0
  129. package/dist/modules/workflow-processor/blocks/services/mock.service.js +61 -0
  130. package/dist/modules/workflow-processor/blocks/services/mock.service.js.map +1 -0
  131. package/dist/modules/workflow-processor/blocks/tools/batch-create-messages-tool.d.ts +35 -0
  132. package/dist/modules/workflow-processor/blocks/tools/batch-create-messages-tool.js +65 -0
  133. package/dist/modules/workflow-processor/blocks/tools/batch-create-messages-tool.js.map +1 -0
  134. package/dist/modules/workflow-processor/blocks/tools/create-chat-message-tool.d.ts +53 -0
  135. package/dist/modules/workflow-processor/blocks/tools/create-chat-message-tool.js +99 -0
  136. package/dist/modules/workflow-processor/blocks/tools/create-chat-message-tool.js.map +1 -0
  137. package/dist/modules/workflow-processor/blocks/tools/create-document-tool.d.ts +10 -0
  138. package/dist/modules/workflow-processor/blocks/tools/create-document-tool.js +41 -0
  139. package/dist/modules/workflow-processor/blocks/tools/create-document-tool.js.map +1 -0
  140. package/dist/modules/workflow-processor/blocks/tools/create-error-message-tool.d.ts +20 -0
  141. package/dist/modules/workflow-processor/blocks/tools/create-error-message-tool.js +57 -0
  142. package/dist/modules/workflow-processor/blocks/tools/create-error-message-tool.js.map +1 -0
  143. package/dist/modules/workflow-processor/blocks/tools/create-markdown-message-tool.d.ts +23 -0
  144. package/dist/modules/workflow-processor/blocks/tools/create-markdown-message-tool.js +60 -0
  145. package/dist/modules/workflow-processor/blocks/tools/create-markdown-message-tool.js.map +1 -0
  146. package/dist/modules/workflow-processor/blocks/tools/create-mock-tool.d.ts +26 -0
  147. package/dist/modules/workflow-processor/blocks/tools/create-mock-tool.js +57 -0
  148. package/dist/modules/workflow-processor/blocks/tools/create-mock-tool.js.map +1 -0
  149. package/dist/modules/workflow-processor/blocks/tools/create-plain-message-tool.d.ts +23 -0
  150. package/dist/modules/workflow-processor/blocks/tools/create-plain-message-tool.js +60 -0
  151. package/dist/modules/workflow-processor/blocks/tools/create-plain-message-tool.js.map +1 -0
  152. package/dist/modules/workflow-processor/blocks/tools/create-response-tool.d.ts +20 -0
  153. package/dist/modules/workflow-processor/blocks/tools/create-response-tool.js +55 -0
  154. package/dist/modules/workflow-processor/blocks/tools/create-response-tool.js.map +1 -0
  155. package/dist/modules/workflow-processor/blocks/tools/create-template-tool.d.ts +20 -0
  156. package/dist/modules/workflow-processor/blocks/tools/create-template-tool.js +51 -0
  157. package/dist/modules/workflow-processor/blocks/tools/create-template-tool.js.map +1 -0
  158. package/dist/modules/workflow-processor/blocks/tools/debug-tool.d.ts +20 -0
  159. package/dist/modules/workflow-processor/blocks/tools/debug-tool.js +48 -0
  160. package/dist/modules/workflow-processor/blocks/tools/debug-tool.js.map +1 -0
  161. package/dist/modules/workflow-processor/blocks/tools/index.d.ts +18 -0
  162. package/dist/modules/workflow-processor/blocks/tools/index.js +35 -0
  163. package/dist/modules/workflow-processor/blocks/tools/index.js.map +1 -0
  164. package/dist/modules/workflow-processor/blocks/tools/load-document-tool.d.ts +44 -0
  165. package/dist/modules/workflow-processor/blocks/tools/load-document-tool.js +130 -0
  166. package/dist/modules/workflow-processor/blocks/tools/load-document-tool.js.map +1 -0
  167. package/dist/modules/workflow-processor/blocks/tools/reset-error-tool.d.ts +12 -0
  168. package/dist/modules/workflow-processor/blocks/tools/reset-error-tool.js +48 -0
  169. package/dist/modules/workflow-processor/blocks/tools/reset-error-tool.js.map +1 -0
  170. package/dist/modules/workflow-processor/blocks/tools/set-context-tool.d.ts +23 -0
  171. package/dist/modules/workflow-processor/blocks/tools/set-context-tool.js +55 -0
  172. package/dist/modules/workflow-processor/blocks/tools/set-context-tool.js.map +1 -0
  173. package/dist/modules/workflow-processor/blocks/tools/switch-target-tool.d.ts +18 -0
  174. package/dist/modules/workflow-processor/blocks/tools/switch-target-tool.js +59 -0
  175. package/dist/modules/workflow-processor/blocks/tools/switch-target-tool.js.map +1 -0
  176. package/dist/modules/workflow-processor/blocks/tools/validate-document-tool.d.ts +22 -0
  177. package/dist/modules/workflow-processor/blocks/tools/validate-document-tool.js +79 -0
  178. package/dist/modules/workflow-processor/blocks/tools/validate-document-tool.js.map +1 -0
  179. package/dist/modules/workflow-processor/blocks/tools/validate-tool.d.ts +25 -0
  180. package/dist/modules/workflow-processor/blocks/tools/validate-tool.js +74 -0
  181. package/dist/modules/workflow-processor/blocks/tools/validate-tool.js.map +1 -0
  182. package/dist/modules/workflow-processor/handlers/index.d.ts +0 -4
  183. package/dist/modules/workflow-processor/handlers/index.js +0 -4
  184. package/dist/modules/workflow-processor/handlers/index.js.map +1 -1
  185. package/dist/modules/workflow-processor/handlers/validate.handler.d.ts +2 -2
  186. package/dist/modules/workflow-processor/index.d.ts +2 -0
  187. package/dist/modules/workflow-processor/index.js +2 -0
  188. package/dist/modules/workflow-processor/index.js.map +1 -1
  189. package/dist/modules/workflow-processor/services/block-helper.service.d.ts +8 -0
  190. package/dist/modules/workflow-processor/services/block-helper.service.js +51 -0
  191. package/dist/modules/workflow-processor/services/block-helper.service.js.map +1 -0
  192. package/dist/modules/workflow-processor/services/index.d.ts +1 -2
  193. package/dist/modules/workflow-processor/services/index.js +1 -2
  194. package/dist/modules/workflow-processor/services/index.js.map +1 -1
  195. package/dist/modules/workflow-processor/services/namespace-processor.service.d.ts +4 -3
  196. package/dist/modules/workflow-processor/services/namespace-processor.service.js +9 -12
  197. package/dist/modules/workflow-processor/services/namespace-processor.service.js.map +1 -1
  198. package/dist/modules/workflow-processor/services/pipeline-processor.service.d.ts +16 -11
  199. package/dist/modules/workflow-processor/services/pipeline-processor.service.js +121 -99
  200. package/dist/modules/workflow-processor/services/pipeline-processor.service.js.map +1 -1
  201. package/dist/modules/workflow-processor/services/root-processor.service.d.ts +8 -5
  202. package/dist/modules/workflow-processor/services/root-processor.service.js +33 -22
  203. package/dist/modules/workflow-processor/services/root-processor.service.js.map +1 -1
  204. package/dist/modules/workflow-processor/services/service-state-factory.service.d.ts +14 -0
  205. package/dist/modules/workflow-processor/services/service-state-factory.service.js +65 -0
  206. package/dist/modules/workflow-processor/services/service-state-factory.service.js.map +1 -0
  207. package/dist/modules/workflow-processor/services/state-machine-processor.service.d.ts +9 -5
  208. package/dist/modules/workflow-processor/services/state-machine-processor.service.js +37 -49
  209. package/dist/modules/workflow-processor/services/state-machine-processor.service.js.map +1 -1
  210. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.d.ts +3 -12
  211. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.js +4 -28
  212. package/dist/modules/workflow-processor/services/template-expression-evaluator.service.js.map +1 -1
  213. package/dist/modules/workflow-processor/services/tool-execution.service.d.ts +10 -13
  214. package/dist/modules/workflow-processor/services/tool-execution.service.js +32 -57
  215. package/dist/modules/workflow-processor/services/tool-execution.service.js.map +1 -1
  216. package/dist/modules/workflow-processor/services/workflow-processor.service.d.ts +3 -7
  217. package/dist/modules/workflow-processor/services/workflow-processor.service.js +9 -30
  218. package/dist/modules/workflow-processor/services/workflow-processor.service.js.map +1 -1
  219. package/dist/modules/workflow-processor/services/workflow-state.service.d.ts +4 -2
  220. package/dist/modules/workflow-processor/services/workflow-state.service.js +16 -12
  221. package/dist/modules/workflow-processor/services/workflow-state.service.js.map +1 -1
  222. package/dist/modules/workflow-processor/workflow-processor.module.js +32 -15
  223. package/dist/modules/workflow-processor/workflow-processor.module.js.map +1 -1
  224. package/package.json +3 -3
  225. package/dist/config-provider.service.d.ts +0 -6
  226. package/dist/config-provider.service.js +0 -36
  227. package/dist/config-provider.service.js.map +0 -1
  228. package/dist/modules/configuration/services/config-provider.registry.d.ts +0 -12
  229. package/dist/modules/configuration/services/config-provider.registry.js +0 -56
  230. package/dist/modules/configuration/services/config-provider.registry.js.map +0 -1
  231. package/dist/modules/configuration/services/configuration.service.d.ts +0 -33
  232. package/dist/modules/configuration/services/configuration.service.js +0 -215
  233. package/dist/modules/configuration/services/configuration.service.js.map +0 -1
  234. package/dist/modules/configuration/services/handler-registry.service.d.ts +0 -20
  235. package/dist/modules/configuration/services/handler-registry.service.js +0 -71
  236. package/dist/modules/configuration/services/handler-registry.service.js.map +0 -1
  237. package/dist/modules/configuration/services/schema-registry.service.d.ts +0 -11
  238. package/dist/modules/configuration/services/schema-registry.service.js +0 -44
  239. package/dist/modules/configuration/services/schema-registry.service.js.map +0 -1
  240. package/dist/modules/configuration/services/yaml-locator.service.d.ts +0 -17
  241. package/dist/modules/configuration/services/yaml-locator.service.js +0 -52
  242. package/dist/modules/configuration/services/yaml-locator.service.js.map +0 -1
  243. package/dist/modules/workflow-processor/handlers/batch-create-documents.handler.d.ts +0 -29
  244. package/dist/modules/workflow-processor/handlers/batch-create-documents.handler.js +0 -110
  245. package/dist/modules/workflow-processor/handlers/batch-create-documents.handler.js.map +0 -1
  246. package/dist/modules/workflow-processor/handlers/create-document.handler.js.map +0 -1
  247. package/dist/modules/workflow-processor/handlers/mock.handler.d.ts +0 -23
  248. package/dist/modules/workflow-processor/handlers/mock.handler.js +0 -79
  249. package/dist/modules/workflow-processor/handlers/mock.handler.js.map +0 -1
  250. package/dist/modules/workflow-processor/handlers/update-document.handler.d.ts +0 -87
  251. package/dist/modules/workflow-processor/handlers/update-document.handler.js +0 -149
  252. package/dist/modules/workflow-processor/handlers/update-document.handler.js.map +0 -1
  253. package/dist/modules/workflow-processor/services/handler-execution.service.d.ts +0 -12
  254. package/dist/modules/workflow-processor/services/handler-execution.service.js +0 -53
  255. package/dist/modules/workflow-processor/services/handler-execution.service.js.map +0 -1
  256. package/dist/modules/workflow-processor/services/state-machine-config.service.d.ts +0 -7
  257. package/dist/modules/workflow-processor/services/state-machine-config.service.js +0 -69
  258. package/dist/modules/workflow-processor/services/state-machine-config.service.js.map +0 -1
  259. package/dist/utils/index.d.ts +0 -1
  260. package/dist/utils/index.js.map +0 -1
  261. package/dist/utils/load-configuration.d.ts +0 -2
  262. package/dist/utils/load-configuration.js +0 -43
  263. package/dist/utils/load-configuration.js.map +0 -1
@@ -0,0 +1,44 @@
1
+ import { ExecutionContext, HandlerCallResult, TransitionMetadataInterface } from '@loopstack/shared';
2
+ import { z } from 'zod';
3
+ import { DocumentEntity, WorkflowEntity } from '@loopstack/shared';
4
+ import { DocumentService, WorkflowService } from '../../../persistence';
5
+ import { Tool } from '../../abstract';
6
+ declare const LoadDocumentInputSchema: z.ZodObject<{
7
+ where: any;
8
+ orderBy: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"ASC">, z.ZodLiteral<"DESC">]>>>;
9
+ getMany: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
10
+ take: z.ZodDefault<z.ZodNumber>;
11
+ skip: z.ZodDefault<z.ZodNumber>;
12
+ isDependency: z.ZodDefault<z.ZodBoolean>;
13
+ isGlobal: z.ZodDefault<z.ZodBoolean>;
14
+ strictMode: z.ZodDefault<z.ZodBoolean>;
15
+ }, "strict", z.ZodTypeAny, {
16
+ isGlobal: boolean;
17
+ orderBy: Record<string, "ASC" | "DESC">;
18
+ take: number;
19
+ skip: number;
20
+ getMany: boolean;
21
+ isDependency: boolean;
22
+ strictMode: boolean;
23
+ where?: any;
24
+ }, {
25
+ isGlobal?: boolean | undefined;
26
+ orderBy?: Record<string, "ASC" | "DESC"> | undefined;
27
+ take?: number | undefined;
28
+ skip?: number | undefined;
29
+ where?: any;
30
+ getMany?: boolean | undefined;
31
+ isDependency?: boolean | undefined;
32
+ strictMode?: boolean | undefined;
33
+ }>;
34
+ export declare class LoadDocument extends Tool {
35
+ private documentService;
36
+ private workflowService;
37
+ private readonly logger;
38
+ constructor(documentService: DocumentService, workflowService: WorkflowService);
39
+ getDocumentsByQuery(props: z.infer<typeof LoadDocumentInputSchema>, pipelineId: string, workspaceId: string, workflow: WorkflowEntity): Promise<DocumentEntity[] | DocumentEntity | null>;
40
+ updateWorkflowDependenciesHash(workflow: WorkflowEntity): void;
41
+ trackDependencies(workflow: WorkflowEntity, transitionData: TransitionMetadataInterface, result: DocumentEntity[] | DocumentEntity): void;
42
+ execute(ctx: ExecutionContext<z.infer<typeof LoadDocumentInputSchema>>): Promise<HandlerCallResult>;
43
+ }
44
+ export {};
@@ -0,0 +1,130 @@
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 LoadDocument_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.LoadDocument = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const shared_1 = require("@loopstack/shared");
16
+ const zod_1 = require("zod");
17
+ const persistence_1 = require("../../../persistence");
18
+ const abstract_1 = require("../../abstract");
19
+ const LoadDocumentInputSchema = zod_1.z
20
+ .object({
21
+ where: persistence_1.WhereCondition,
22
+ orderBy: zod_1.z
23
+ .record(zod_1.z.string(), zod_1.z.union([zod_1.z.literal('ASC'), zod_1.z.literal('DESC')]))
24
+ .default({
25
+ workflow_index: 'DESC',
26
+ }),
27
+ getMany: zod_1.z.boolean().optional().default(false),
28
+ take: zod_1.z.number().default(100),
29
+ skip: zod_1.z.number().default(0),
30
+ isDependency: zod_1.z.boolean().default(true),
31
+ isGlobal: zod_1.z.boolean().default(false),
32
+ strictMode: zod_1.z.boolean().default(true),
33
+ })
34
+ .strict();
35
+ const LoadDocumentConfigSchema = zod_1.z
36
+ .object({
37
+ where: zod_1.z.union([persistence_1.WhereCondition, shared_1.ExpressionString]),
38
+ orderBy: zod_1.z
39
+ .union([
40
+ zod_1.z.record(zod_1.z.string(), zod_1.z.union([zod_1.z.literal('ASC'), zod_1.z.literal('DESC')])),
41
+ shared_1.ExpressionString,
42
+ ])
43
+ .optional(),
44
+ getMany: zod_1.z.union([zod_1.z.boolean(), shared_1.ExpressionString]).optional(),
45
+ take: zod_1.z.union([zod_1.z.number(), shared_1.ExpressionString]).optional(),
46
+ skip: zod_1.z.union([zod_1.z.number(), shared_1.ExpressionString]).optional(),
47
+ isDependency: zod_1.z.union([zod_1.z.boolean(), shared_1.ExpressionString]).optional(),
48
+ isGlobal: zod_1.z.union([zod_1.z.boolean(), shared_1.ExpressionString]).optional(),
49
+ strictMode: zod_1.z.union([zod_1.z.boolean(), shared_1.ExpressionString]).optional(),
50
+ })
51
+ .strict();
52
+ let LoadDocument = LoadDocument_1 = class LoadDocument extends abstract_1.Tool {
53
+ documentService;
54
+ workflowService;
55
+ logger = new common_1.Logger(LoadDocument_1.name);
56
+ constructor(documentService, workflowService) {
57
+ super();
58
+ this.documentService = documentService;
59
+ this.workflowService = workflowService;
60
+ }
61
+ async getDocumentsByQuery(props, pipelineId, workspaceId, workflow) {
62
+ const query = this.documentService.createDocumentsQuery(pipelineId, workspaceId, props.where, {
63
+ take: props.getMany ? props.take : undefined,
64
+ skip: props.getMany ? props.skip : undefined,
65
+ orderBy: props.orderBy,
66
+ isValidOnly: true,
67
+ isGlobal: !!props.isGlobal,
68
+ ltWorkflowIndex: workflow.index,
69
+ });
70
+ this.logger.debug(query.getQuery());
71
+ this.logger.debug(query.getParameters());
72
+ const result = props.getMany ? await query.getMany() : await query.getOne();
73
+ if (!result && props.strictMode) {
74
+ throw new Error(`Document(s) not found.`);
75
+ }
76
+ return result;
77
+ }
78
+ updateWorkflowDependenciesHash(workflow) {
79
+ const hash = this.workflowService.createDependenciesHash(workflow);
80
+ workflow.hashRecord = {
81
+ ...(workflow.hashRecord ?? {}),
82
+ dependencies: hash,
83
+ };
84
+ }
85
+ trackDependencies(workflow, transitionData, result) {
86
+ const prevImport = workflow.prevData?.imports?.[transitionData.transition];
87
+ if (!workflow.dependencies) {
88
+ workflow.dependencies = [];
89
+ }
90
+ if (prevImport) {
91
+ workflow.dependencies = workflow.dependencies.filter((dep) => !prevImport?.ids.includes(dep.id));
92
+ }
93
+ const existingDependencyIds = workflow.dependencies.map((dep) => dep.id);
94
+ const dependencyList = Array.isArray(result) ? result : [result];
95
+ const newDependencies = dependencyList.filter((entity) => !existingDependencyIds.includes(entity.id));
96
+ if (newDependencies.length) {
97
+ workflow.dependencies.push(...newDependencies);
98
+ this.updateWorkflowDependenciesHash(workflow);
99
+ }
100
+ }
101
+ async execute(ctx) {
102
+ if (!ctx.workflow) {
103
+ throw new Error('Workflow is undefined');
104
+ }
105
+ this.logger.debug(`Load document ${ctx.transitionData?.transition}`);
106
+ const result = await this.getDocumentsByQuery(ctx.args, this.context.pipelineId, this.context.workspaceId, ctx.workflow);
107
+ if (result && ctx.args.isDependency) {
108
+ this.trackDependencies(ctx.workflow, ctx.transitionData, result);
109
+ }
110
+ return {
111
+ success: true,
112
+ workflow: ctx.workflow,
113
+ data: result,
114
+ };
115
+ }
116
+ };
117
+ exports.LoadDocument = LoadDocument;
118
+ exports.LoadDocument = LoadDocument = LoadDocument_1 = __decorate([
119
+ (0, shared_1.Block)({
120
+ config: {
121
+ type: 'tool',
122
+ description: 'Load documents from database based on query conditions.',
123
+ },
124
+ inputSchema: LoadDocumentInputSchema,
125
+ configSchema: LoadDocumentConfigSchema,
126
+ }),
127
+ __metadata("design:paramtypes", [persistence_1.DocumentService,
128
+ persistence_1.WorkflowService])
129
+ ], LoadDocument);
130
+ //# sourceMappingURL=load-document-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-document-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/load-document-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { ExecutionContext, HandlerCallResult } from '@loopstack/shared';
2
+ import { Logger } from '@nestjs/common';
3
+ import { z } from 'zod';
4
+ import { Tool } from '../../abstract';
5
+ declare const ResetErrorInputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
6
+ type ResetErrorInput = z.infer<typeof ResetErrorInputSchema>;
7
+ export declare class ResetError extends Tool {
8
+ protected readonly logger: Logger;
9
+ constructor();
10
+ execute(ctx: ExecutionContext<ResetErrorInput>): Promise<HandlerCallResult>;
11
+ }
12
+ export {};
@@ -0,0 +1,48 @@
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 ResetError_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.ResetError = void 0;
14
+ const shared_1 = require("@loopstack/shared");
15
+ const common_1 = require("@nestjs/common");
16
+ const zod_1 = require("zod");
17
+ const abstract_1 = require("../../abstract");
18
+ const ResetErrorInputSchema = zod_1.z.object({});
19
+ const ResetErrorConfigSchema = zod_1.z.object({});
20
+ let ResetError = ResetError_1 = class ResetError extends abstract_1.Tool {
21
+ logger = new common_1.Logger(ResetError_1.name);
22
+ constructor() {
23
+ super();
24
+ }
25
+ async execute(ctx) {
26
+ if (!ctx.workflow) {
27
+ throw new Error('Workflow is undefined');
28
+ }
29
+ ctx.workflow.error = null;
30
+ return {
31
+ success: true,
32
+ workflow: ctx.workflow,
33
+ };
34
+ }
35
+ };
36
+ exports.ResetError = ResetError;
37
+ exports.ResetError = ResetError = ResetError_1 = __decorate([
38
+ (0, shared_1.Block)({
39
+ config: {
40
+ type: 'tool',
41
+ description: 'Reset the error state of the workflow.',
42
+ },
43
+ inputSchema: ResetErrorInputSchema,
44
+ configSchema: ResetErrorConfigSchema,
45
+ }),
46
+ __metadata("design:paramtypes", [])
47
+ ], ResetError);
48
+ //# sourceMappingURL=reset-error-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset-error-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/reset-error-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAA+E;AAC/E,2CAAwC;AACxC,6BAAwB;AACxB,6CAAsC;AAEtC,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE3C,MAAM,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAYrC,IAAM,UAAU,kBAAhB,MAAM,UAAW,SAAQ,eAAI;IACf,MAAM,GAAG,IAAI,eAAM,CAAC,YAAU,CAAC,IAAI,CAAC,CAAC;IAExD;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAGD,KAAK,CAAC,OAAO,CACX,GAAsC;QAEtC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;QAE1B,OAAO;YACL,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;CACF,CAAA;AAtBY,gCAAU;qBAAV,UAAU;IARtB,IAAA,cAAK,EAAC;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,wCAAwC;SACtD;QACD,WAAW,EAAE,qBAAqB;QAClC,YAAY,EAAE,sBAAsB;KACrC,CAAC;;GACW,UAAU,CAsBtB"}
@@ -0,0 +1,23 @@
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 { WorkflowContextService } from '../../services';
6
+ declare const SetContextInputSchema: z.ZodObject<{
7
+ key: z.ZodString;
8
+ value: z.ZodAny;
9
+ }, "strip", z.ZodTypeAny, {
10
+ key: string;
11
+ value?: any;
12
+ }, {
13
+ key: string;
14
+ value?: any;
15
+ }>;
16
+ type SetContextInput = z.infer<typeof SetContextInputSchema>;
17
+ export declare class SetContext extends Tool {
18
+ private readonly workflowContextService;
19
+ protected readonly logger: Logger;
20
+ constructor(workflowContextService: WorkflowContextService);
21
+ execute(ctx: ExecutionContext<SetContextInput>): Promise<HandlerCallResult>;
22
+ }
23
+ export {};
@@ -0,0 +1,55 @@
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 SetContext_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.SetContext = void 0;
14
+ const shared_1 = require("@loopstack/shared");
15
+ const common_1 = require("@nestjs/common");
16
+ const zod_1 = require("zod");
17
+ const abstract_1 = require("../../abstract");
18
+ const services_1 = require("../../services");
19
+ const SetContextInputSchema = zod_1.z.object({
20
+ key: zod_1.z.string(),
21
+ value: zod_1.z.any(),
22
+ });
23
+ const SetContextConfigSchema = zod_1.z.object({
24
+ key: zod_1.z.string(),
25
+ value: zod_1.z.any(),
26
+ });
27
+ let SetContext = SetContext_1 = class SetContext extends abstract_1.Tool {
28
+ workflowContextService;
29
+ logger = new common_1.Logger(SetContext_1.name);
30
+ constructor(workflowContextService) {
31
+ super();
32
+ this.workflowContextService = workflowContextService;
33
+ }
34
+ async execute(ctx) {
35
+ const updatedWorkflow = this.workflowContextService.setWorkflowContextUpdate(ctx.workflow, ctx.args.key, ctx.args.value);
36
+ this.logger.debug(`Created context key "${ctx.args.key}".`);
37
+ return {
38
+ success: true,
39
+ workflow: updatedWorkflow,
40
+ };
41
+ }
42
+ };
43
+ exports.SetContext = SetContext;
44
+ exports.SetContext = SetContext = SetContext_1 = __decorate([
45
+ (0, shared_1.Block)({
46
+ config: {
47
+ type: 'tool',
48
+ description: 'Set a context.',
49
+ },
50
+ inputSchema: SetContextInputSchema,
51
+ configSchema: SetContextConfigSchema,
52
+ }),
53
+ __metadata("design:paramtypes", [services_1.WorkflowContextService])
54
+ ], SetContext);
55
+ //# sourceMappingURL=set-context-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-context-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/set-context-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,8CAA+E;AAC/E,2CAAwC;AACxC,6BAAwB;AACxB,6CAAsC;AACtC,6CAAwD;AAExD,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,KAAK,EAAE,OAAC,CAAC,GAAG,EAAE;CACf,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,KAAK,EAAE,OAAC,CAAC,GAAG,EAAE;CACf,CAAC,CAAC;AAYI,IAAM,UAAU,kBAAhB,MAAM,UAAW,SAAQ,eAAI;IAGL;IAFV,MAAM,GAAG,IAAI,eAAM,CAAC,YAAU,CAAC,IAAI,CAAC,CAAC;IAExD,YAA6B,sBAA8C;QACzE,KAAK,EAAE,CAAC;QADmB,2BAAsB,GAAtB,sBAAsB,CAAwB;IAE3E,CAAC;IAED,KAAK,CAAC,OAAO,CACX,GAAsC;QAEtC,MAAM,eAAe,GACnB,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,CAClD,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,IAAI,CAAC,GAAG,EACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CACf,CAAC;QAEJ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAE5D,OAAO;YACL,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,eAAe;SAC1B,CAAC;IACJ,CAAC;CACF,CAAA;AAxBY,gCAAU;qBAAV,UAAU;IARtB,IAAA,cAAK,EAAC;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,gBAAgB;SAC9B;QACD,WAAW,EAAE,qBAAqB;QAClC,YAAY,EAAE,sBAAsB;KACrC,CAAC;qCAIqD,iCAAsB;GAHhE,UAAU,CAwBtB"}
@@ -0,0 +1,18 @@
1
+ import { ExecutionContext, HandlerCallResult } from '@loopstack/shared';
2
+ import { Logger } from '@nestjs/common';
3
+ import { z } from 'zod';
4
+ import { Tool } from '../../abstract';
5
+ declare const SwitchTargetInputSchema: z.ZodObject<{
6
+ target: z.ZodString;
7
+ }, "strip", z.ZodTypeAny, {
8
+ target: string;
9
+ }, {
10
+ target: string;
11
+ }>;
12
+ type SwitchTargetInput = z.infer<typeof SwitchTargetInputSchema>;
13
+ export declare class SwitchTarget extends Tool {
14
+ protected readonly logger: Logger;
15
+ constructor();
16
+ execute(ctx: ExecutionContext<SwitchTargetInput>): Promise<HandlerCallResult>;
17
+ }
18
+ export {};
@@ -0,0 +1,59 @@
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 SwitchTarget_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.SwitchTarget = void 0;
14
+ const shared_1 = require("@loopstack/shared");
15
+ const common_1 = require("@nestjs/common");
16
+ const zod_1 = require("zod");
17
+ const abstract_1 = require("../../abstract");
18
+ const SwitchTargetInputSchema = zod_1.z.object({
19
+ target: zod_1.z.string(),
20
+ });
21
+ const SwitchTargetConfigSchema = zod_1.z.object({
22
+ target: zod_1.z.string(),
23
+ });
24
+ let SwitchTarget = SwitchTarget_1 = class SwitchTarget extends abstract_1.Tool {
25
+ logger = new common_1.Logger(SwitchTarget_1.name);
26
+ constructor() {
27
+ super();
28
+ }
29
+ async execute(ctx) {
30
+ if (!ctx.transitionData?.transition) {
31
+ throw new Error('No transition available.');
32
+ }
33
+ const target = ctx.args.target.trim();
34
+ if ((Array.isArray(ctx.transitionData.to) &&
35
+ !ctx.transitionData.to.includes(target)) ||
36
+ (!Array.isArray(ctx.transitionData.to) &&
37
+ ctx.transitionData.to !== target)) {
38
+ throw new Error(`Transition to ${target} not allowed.`);
39
+ }
40
+ this.logger.debug(`Setting transition to: ${target}`);
41
+ return {
42
+ success: true,
43
+ place: target,
44
+ };
45
+ }
46
+ };
47
+ exports.SwitchTarget = SwitchTarget;
48
+ exports.SwitchTarget = SwitchTarget = SwitchTarget_1 = __decorate([
49
+ (0, shared_1.Block)({
50
+ config: {
51
+ type: 'tool',
52
+ description: 'Sets the target place for a transition to a defined value.',
53
+ },
54
+ inputSchema: SwitchTargetInputSchema,
55
+ configSchema: SwitchTargetConfigSchema,
56
+ }),
57
+ __metadata("design:paramtypes", [])
58
+ ], SwitchTarget);
59
+ //# sourceMappingURL=switch-target-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-target-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/switch-target-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAA+E;AAC/E,2CAAwC;AACxC,6BAAwB;AACxB,6CAAsC;AAEtC,MAAM,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAYI,IAAM,YAAY,oBAAlB,MAAM,YAAa,SAAQ,eAAI;IACjB,MAAM,GAAG,IAAI,eAAM,CAAC,cAAY,CAAC,IAAI,CAAC,CAAC;IAE1D;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAGD,KAAK,CAAC,OAAO,CACX,GAAwC;QAExC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACtC,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBACpC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,MAAM,CAAC,EACnC,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,MAAM,eAAe,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;QAEtD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,MAAM;SACd,CAAC;IACJ,CAAC;CACF,CAAA;AAhCY,oCAAY;uBAAZ,YAAY;IARxB,IAAA,cAAK,EAAC;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,4DAA4D;SAC1E;QACD,WAAW,EAAE,uBAAuB;QACpC,YAAY,EAAE,wBAAwB;KACvC,CAAC;;GACW,YAAY,CAgCxB"}
@@ -0,0 +1,22 @@
1
+ import { ExecutionContext, HandlerCallResult } from '@loopstack/shared';
2
+ import { Logger } from '@nestjs/common';
3
+ import { z } from 'zod';
4
+ import { Tool } from '../../abstract';
5
+ declare const ValidateDocumentInputSchema: z.ZodObject<{
6
+ documentId: z.ZodString;
7
+ message: z.ZodOptional<z.ZodString>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ documentId: string;
10
+ message?: string | undefined;
11
+ }, {
12
+ documentId: string;
13
+ message?: string | undefined;
14
+ }>;
15
+ type ValidateDocumentInput = z.infer<typeof ValidateDocumentInputSchema>;
16
+ export declare class ValidateDocument extends Tool {
17
+ protected readonly logger: Logger;
18
+ constructor();
19
+ private createZod;
20
+ execute(ctx: ExecutionContext<ValidateDocumentInput>): Promise<HandlerCallResult>;
21
+ }
22
+ export {};
@@ -0,0 +1,79 @@
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 ValidateDocument_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.ValidateDocument = void 0;
14
+ const shared_1 = require("@loopstack/shared");
15
+ const common_1 = require("@nestjs/common");
16
+ const zod_1 = require("zod");
17
+ const abstract_1 = require("../../abstract");
18
+ const json_schema_to_zod_1 = require("json-schema-to-zod");
19
+ const ValidateDocumentInputSchema = zod_1.z.object({
20
+ documentId: zod_1.z.string(),
21
+ message: zod_1.z.string().optional(),
22
+ });
23
+ const ValidateDocumentConfigSchema = zod_1.z.object({
24
+ documentId: zod_1.z.string(),
25
+ message: zod_1.z.string().optional(),
26
+ });
27
+ let ValidateDocument = ValidateDocument_1 = class ValidateDocument extends abstract_1.Tool {
28
+ logger = new common_1.Logger(ValidateDocument_1.name);
29
+ constructor() {
30
+ super();
31
+ }
32
+ createZod(jsonSchema) {
33
+ const zodSchemaString = (0, json_schema_to_zod_1.jsonSchemaToZod)(jsonSchema);
34
+ return new Function('z', `return ${zodSchemaString}`)(zod_1.z);
35
+ }
36
+ async execute(ctx) {
37
+ if (!ctx.workflow) {
38
+ throw new Error('Workflow is undefined');
39
+ }
40
+ const document = ctx.workflow.documents.find((item) => item.id === ctx.args.documentId);
41
+ if (!document) {
42
+ throw new Error(`Document with ID ${ctx.args.documentId} not found.`);
43
+ }
44
+ const zodSchema = this.createZod(document.schema);
45
+ if (!zodSchema) {
46
+ throw Error(`No schema defined.`);
47
+ }
48
+ try {
49
+ const result = zodSchema.parse(document.schema);
50
+ return {
51
+ success: true,
52
+ data: {
53
+ valid: true,
54
+ result,
55
+ error: null,
56
+ },
57
+ };
58
+ }
59
+ catch (error) {
60
+ if (ctx.args.message) {
61
+ throw new Error(ctx.args.message);
62
+ }
63
+ throw error;
64
+ }
65
+ }
66
+ };
67
+ exports.ValidateDocument = ValidateDocument;
68
+ exports.ValidateDocument = ValidateDocument = ValidateDocument_1 = __decorate([
69
+ (0, shared_1.Block)({
70
+ config: {
71
+ type: 'tool',
72
+ description: 'Validate document against its schema.',
73
+ },
74
+ inputSchema: ValidateDocumentInputSchema,
75
+ configSchema: ValidateDocumentConfigSchema,
76
+ }),
77
+ __metadata("design:paramtypes", [])
78
+ ], ValidateDocument);
79
+ //# sourceMappingURL=validate-document-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-document-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/validate-document-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAA+E;AAC/E,2CAAwC;AACxC,6BAAwB;AACxB,6CAAsC;AACtC,2DAAqD;AAErD,MAAM,2BAA2B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAEH,MAAM,4BAA4B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAYI,IAAM,gBAAgB,wBAAtB,MAAM,gBAAiB,SAAQ,eAAI;IACrB,MAAM,GAAG,IAAI,eAAM,CAAC,kBAAgB,CAAC,IAAI,CAAC,CAAC;IAE9D;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAEO,SAAS,CAAC,UAAe;QAE/B,MAAM,eAAe,GAAG,IAAA,oCAAe,EAAC,UAAU,CAAC,CAAC;QAEpD,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE,UAAU,eAAe,EAAE,CAAC,CAAC,OAAC,CAAC,CAAC;IAC3D,CAAC;IAGD,KAAK,CAAC,OAAO,CACX,GAA4C;QAE5C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAC1C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,UAAU,CAC1C,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,IAAI,CAAC,UAAU,aAAa,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAEhD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI;oBACX,MAAM;oBACN,KAAK,EAAE,IAAI;iBACZ;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AArDY,4CAAgB;2BAAhB,gBAAgB;IAR5B,IAAA,cAAK,EAAC;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,uCAAuC;SACrD;QACD,WAAW,EAAE,2BAA2B;QACxC,YAAY,EAAE,4BAA4B;KAC3C,CAAC;;GACW,gBAAgB,CAqD5B"}
@@ -0,0 +1,25 @@
1
+ import { ExecutionContext, HandlerCallResult } from '@loopstack/shared';
2
+ import { Logger } from '@nestjs/common';
3
+ import { z } from 'zod';
4
+ import { Tool } from '../../abstract';
5
+ declare const ValidateInputSchema: z.ZodObject<{
6
+ source: z.ZodAny;
7
+ schema: z.ZodType<any, z.ZodTypeDef, any>;
8
+ message: z.ZodOptional<z.ZodString>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ schema?: any;
11
+ message?: string | undefined;
12
+ source?: any;
13
+ }, {
14
+ schema?: any;
15
+ message?: string | undefined;
16
+ source?: any;
17
+ }>;
18
+ type ValidateInput = z.infer<typeof ValidateInputSchema>;
19
+ export declare class Validate extends Tool {
20
+ protected readonly logger: Logger;
21
+ constructor();
22
+ private createZod;
23
+ execute(ctx: ExecutionContext<ValidateInput>): Promise<HandlerCallResult>;
24
+ }
25
+ export {};
@@ -0,0 +1,74 @@
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 Validate_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.Validate = void 0;
14
+ const shared_1 = require("@loopstack/shared");
15
+ const common_1 = require("@nestjs/common");
16
+ const zod_1 = require("zod");
17
+ const abstract_1 = require("../../abstract");
18
+ const json_schema_to_zod_1 = require("json-schema-to-zod");
19
+ const ValidateInputSchema = zod_1.z.object({
20
+ source: zod_1.z.any(),
21
+ schema: shared_1.JSONSchemaType,
22
+ message: zod_1.z.string().optional(),
23
+ });
24
+ const ValidateConfigSchema = zod_1.z.object({
25
+ source: zod_1.z.any(),
26
+ schema: shared_1.JSONSchemaType,
27
+ message: zod_1.z.string().optional(),
28
+ });
29
+ let Validate = Validate_1 = class Validate extends abstract_1.Tool {
30
+ logger = new common_1.Logger(Validate_1.name);
31
+ constructor() {
32
+ super();
33
+ }
34
+ createZod(jsonSchema) {
35
+ const zodSchemaString = (0, json_schema_to_zod_1.jsonSchemaToZod)(jsonSchema);
36
+ return new Function('z', `return ${zodSchemaString}`)(zod_1.z);
37
+ }
38
+ async execute(ctx) {
39
+ const zodSchema = this.createZod(ctx.args.schema);
40
+ if (!zodSchema) {
41
+ throw Error(`No schema defined.`);
42
+ }
43
+ try {
44
+ const result = zodSchema.parse(ctx.args.source);
45
+ return {
46
+ success: true,
47
+ data: {
48
+ valid: true,
49
+ result,
50
+ error: null,
51
+ },
52
+ };
53
+ }
54
+ catch (error) {
55
+ if (ctx.args.message) {
56
+ throw new Error(ctx.args.message);
57
+ }
58
+ throw error;
59
+ }
60
+ }
61
+ };
62
+ exports.Validate = Validate;
63
+ exports.Validate = Validate = Validate_1 = __decorate([
64
+ (0, shared_1.Block)({
65
+ config: {
66
+ type: 'tool',
67
+ description: 'Validate data against JSON schema.',
68
+ },
69
+ inputSchema: ValidateInputSchema,
70
+ configSchema: ValidateConfigSchema,
71
+ }),
72
+ __metadata("design:paramtypes", [])
73
+ ], Validate);
74
+ //# sourceMappingURL=validate-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-tool.js","sourceRoot":"","sources":["../../../../../src/modules/workflow-processor/blocks/tools/validate-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAK2B;AAC3B,2CAAwC;AACxC,6BAAwB;AACxB,6CAAsC;AACtC,2DAAqD;AAErD,MAAM,mBAAmB,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,OAAC,CAAC,GAAG,EAAE;IACf,MAAM,EAAE,uBAAc;IACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,OAAC,CAAC,GAAG,EAAE;IACf,MAAM,EAAE,uBAAc;IACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAYI,IAAM,QAAQ,gBAAd,MAAM,QAAS,SAAQ,eAAI;IACb,MAAM,GAAG,IAAI,eAAM,CAAC,UAAQ,CAAC,IAAI,CAAC,CAAC;IAEtD;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAEO,SAAS,CAAC,UAAe;QAE/B,MAAM,eAAe,GAAG,IAAA,oCAAe,EAAC,UAAU,CAAC,CAAC;QAEpD,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE,UAAU,eAAe,EAAE,CAAC,CAAC,OAAC,CAAC,CAAC;IAC3D,CAAC;IAGD,KAAK,CAAC,OAAO,CACX,GAAoC;QAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEhD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI;oBACX,MAAM;oBACN,KAAK,EAAE,IAAI;iBACZ;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AA1CY,4BAAQ;mBAAR,QAAQ;IARpB,IAAA,cAAK,EAAC;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,oCAAoC;SAClD;QACD,WAAW,EAAE,mBAAmB;QAChC,YAAY,EAAE,oBAAoB;KACnC,CAAC;;GACW,QAAQ,CA0CpB"}
@@ -1,11 +1,7 @@
1
1
  export * from './add-namespace.handler';
2
- export * from './create-document.handler';
3
- export * from './mock.handler';
4
2
  export * from './load-document.handler';
5
3
  export * from './set-context.handler';
6
4
  export * from './transition-selector.handler';
7
- export * from './update-document.handler';
8
- export * from './batch-create-documents.handler';
9
5
  export * from './set-target-place.handler';
10
6
  export * from './validate.handler';
11
7
  export * from './reset-error.handler';