@webiny/api-workflows 0.0.0-unstable.61c048f412

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 (463) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +11 -0
  3. package/constants.d.ts +3 -0
  4. package/constants.js +5 -0
  5. package/constants.js.map +1 -0
  6. package/domain/notifications/abstractions.d.ts +64 -0
  7. package/domain/notifications/abstractions.js +10 -0
  8. package/domain/notifications/abstractions.js.map +1 -0
  9. package/domain/notifications/errors.d.ts +5 -0
  10. package/domain/notifications/errors.js +11 -0
  11. package/domain/notifications/errors.js.map +1 -0
  12. package/domain/workflow/WorkflowMapper.d.ts +12 -0
  13. package/domain/workflow/WorkflowMapper.js +29 -0
  14. package/domain/workflow/WorkflowMapper.js.map +1 -0
  15. package/domain/workflow/abstractions.d.ts +37 -0
  16. package/domain/workflow/abstractions.js +6 -0
  17. package/domain/workflow/abstractions.js.map +1 -0
  18. package/domain/workflow/errors.d.ts +23 -0
  19. package/domain/workflow/errors.js +36 -0
  20. package/domain/workflow/errors.js.map +1 -0
  21. package/domain/workflow/workflowModel.d.ts +9 -0
  22. package/domain/workflow/workflowModel.js +32 -0
  23. package/domain/workflow/workflowModel.js.map +1 -0
  24. package/domain/workflowState/WorkflowState.d.ts +55 -0
  25. package/domain/workflowState/WorkflowState.js +327 -0
  26. package/domain/workflowState/WorkflowState.js.map +1 -0
  27. package/domain/workflowState/WorkflowStateMapper.d.ts +9 -0
  28. package/domain/workflowState/WorkflowStateMapper.js +40 -0
  29. package/domain/workflowState/WorkflowStateMapper.js.map +1 -0
  30. package/domain/workflowState/abstractions.d.ts +75 -0
  31. package/domain/workflowState/abstractions.js +13 -0
  32. package/domain/workflowState/abstractions.js.map +1 -0
  33. package/domain/workflowState/errors.d.ts +86 -0
  34. package/domain/workflowState/errors.js +139 -0
  35. package/domain/workflowState/errors.js.map +1 -0
  36. package/domain/workflowState/guards/canReview.d.ts +2 -0
  37. package/domain/workflowState/guards/canReview.js +5 -0
  38. package/domain/workflowState/guards/canReview.js.map +1 -0
  39. package/domain/workflowState/guards/canTakeOver.d.ts +2 -0
  40. package/domain/workflowState/guards/canTakeOver.js +5 -0
  41. package/domain/workflowState/guards/canTakeOver.js.map +1 -0
  42. package/domain/workflowState/guards/isInReview.d.ts +2 -0
  43. package/domain/workflowState/guards/isInReview.js +6 -0
  44. package/domain/workflowState/guards/isInReview.js.map +1 -0
  45. package/domain/workflowState/guards/isRejected.d.ts +2 -0
  46. package/domain/workflowState/guards/isRejected.js +6 -0
  47. package/domain/workflowState/guards/isRejected.js.map +1 -0
  48. package/domain/workflowState/guards/isStepOwner.d.ts +2 -0
  49. package/domain/workflowState/guards/isStepOwner.js +5 -0
  50. package/domain/workflowState/guards/isStepOwner.js.map +1 -0
  51. package/domain/workflowState/stateModel.d.ts +9 -0
  52. package/domain/workflowState/stateModel.js +58 -0
  53. package/domain/workflowState/stateModel.js.map +1 -0
  54. package/features/internal/GetUserTeams/GetUserTeamsUseCase.d.ts +12 -0
  55. package/features/internal/GetUserTeams/GetUserTeamsUseCase.js +36 -0
  56. package/features/internal/GetUserTeams/GetUserTeamsUseCase.js.map +1 -0
  57. package/features/internal/GetUserTeams/abstractions.d.ts +10 -0
  58. package/features/internal/GetUserTeams/abstractions.js +4 -0
  59. package/features/internal/GetUserTeams/abstractions.js.map +1 -0
  60. package/features/internal/GetUserTeams/feature.d.ts +1 -0
  61. package/features/internal/GetUserTeams/feature.js +10 -0
  62. package/features/internal/GetUserTeams/feature.js.map +1 -0
  63. package/features/internal/GetUserTeams/index.d.ts +1 -0
  64. package/features/internal/GetUserTeams/index.js +3 -0
  65. package/features/internal/GetUserTeams/index.js.map +1 -0
  66. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.d.ts +11 -0
  67. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js +24 -0
  68. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js.map +1 -0
  69. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.d.ts +13 -0
  70. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js +40 -0
  71. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js.map +1 -0
  72. package/features/notifications/ListNotificationTypes/abstractions.d.ts +31 -0
  73. package/features/notifications/ListNotificationTypes/abstractions.js +15 -0
  74. package/features/notifications/ListNotificationTypes/abstractions.js.map +1 -0
  75. package/features/notifications/ListNotificationTypes/feature.d.ts +1 -0
  76. package/features/notifications/ListNotificationTypes/feature.js +12 -0
  77. package/features/notifications/ListNotificationTypes/feature.js.map +1 -0
  78. package/features/notifications/ListNotificationTypes/index.d.ts +3 -0
  79. package/features/notifications/ListNotificationTypes/index.js +4 -0
  80. package/features/notifications/ListNotificationTypes/index.js.map +1 -0
  81. package/features/notifications/NotificationTransport/MailNotificationTransport.d.ts +13 -0
  82. package/features/notifications/NotificationTransport/MailNotificationTransport.js +47 -0
  83. package/features/notifications/NotificationTransport/MailNotificationTransport.js.map +1 -0
  84. package/features/notifications/NotificationTransport/abstractions.d.ts +21 -0
  85. package/features/notifications/NotificationTransport/abstractions.js +4 -0
  86. package/features/notifications/NotificationTransport/abstractions.js.map +1 -0
  87. package/features/notifications/NotificationTransport/feature.d.ts +1 -0
  88. package/features/notifications/NotificationTransport/feature.js +10 -0
  89. package/features/notifications/NotificationTransport/feature.js.map +1 -0
  90. package/features/notifications/NotificationTransport/index.d.ts +3 -0
  91. package/features/notifications/NotificationTransport/index.js +4 -0
  92. package/features/notifications/NotificationTransport/index.js.map +1 -0
  93. package/features/shared/abstractions.d.ts +21 -0
  94. package/features/shared/abstractions.js +3 -0
  95. package/features/shared/abstractions.js.map +1 -0
  96. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.d.ts +14 -0
  97. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js +45 -0
  98. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js.map +1 -0
  99. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.d.ts +15 -0
  100. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js +57 -0
  101. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js.map +1 -0
  102. package/features/workflow/CreateWorkflow/abstractions.d.ts +56 -0
  103. package/features/workflow/CreateWorkflow/abstractions.js +19 -0
  104. package/features/workflow/CreateWorkflow/abstractions.js.map +1 -0
  105. package/features/workflow/CreateWorkflow/events.d.ts +21 -0
  106. package/features/workflow/CreateWorkflow/events.js +20 -0
  107. package/features/workflow/CreateWorkflow/events.js.map +1 -0
  108. package/features/workflow/CreateWorkflow/feature.d.ts +1 -0
  109. package/features/workflow/CreateWorkflow/feature.js +12 -0
  110. package/features/workflow/CreateWorkflow/feature.js.map +1 -0
  111. package/features/workflow/CreateWorkflow/index.d.ts +4 -0
  112. package/features/workflow/CreateWorkflow/index.js +5 -0
  113. package/features/workflow/CreateWorkflow/index.js.map +1 -0
  114. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.d.ts +13 -0
  115. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js +33 -0
  116. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js.map +1 -0
  117. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.d.ts +17 -0
  118. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js +59 -0
  119. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js.map +1 -0
  120. package/features/workflow/DeleteWorkflow/abstractions.d.ts +50 -0
  121. package/features/workflow/DeleteWorkflow/abstractions.js +19 -0
  122. package/features/workflow/DeleteWorkflow/abstractions.js.map +1 -0
  123. package/features/workflow/DeleteWorkflow/events.d.ts +21 -0
  124. package/features/workflow/DeleteWorkflow/events.js +20 -0
  125. package/features/workflow/DeleteWorkflow/events.js.map +1 -0
  126. package/features/workflow/DeleteWorkflow/feature.d.ts +1 -0
  127. package/features/workflow/DeleteWorkflow/feature.js +12 -0
  128. package/features/workflow/DeleteWorkflow/feature.js.map +1 -0
  129. package/features/workflow/DeleteWorkflow/index.d.ts +4 -0
  130. package/features/workflow/DeleteWorkflow/index.js +5 -0
  131. package/features/workflow/DeleteWorkflow/index.js.map +1 -0
  132. package/features/workflow/GetWorkflow/GetWorkflowRepository.d.ts +14 -0
  133. package/features/workflow/GetWorkflow/GetWorkflowRepository.js +46 -0
  134. package/features/workflow/GetWorkflow/GetWorkflowRepository.js.map +1 -0
  135. package/features/workflow/GetWorkflow/GetWorkflowUseCase.d.ts +13 -0
  136. package/features/workflow/GetWorkflow/GetWorkflowUseCase.js +34 -0
  137. package/features/workflow/GetWorkflow/GetWorkflowUseCase.js.map +1 -0
  138. package/features/workflow/GetWorkflow/abstractions.d.ts +45 -0
  139. package/features/workflow/GetWorkflow/abstractions.js +15 -0
  140. package/features/workflow/GetWorkflow/abstractions.js.map +1 -0
  141. package/features/workflow/GetWorkflow/feature.d.ts +1 -0
  142. package/features/workflow/GetWorkflow/feature.js +12 -0
  143. package/features/workflow/GetWorkflow/feature.js.map +1 -0
  144. package/features/workflow/GetWorkflow/index.d.ts +1 -0
  145. package/features/workflow/GetWorkflow/index.js +3 -0
  146. package/features/workflow/GetWorkflow/index.js.map +1 -0
  147. package/features/workflow/ListWorkflows/ListWorkflowsRepository.d.ts +18 -0
  148. package/features/workflow/ListWorkflows/ListWorkflowsRepository.js +67 -0
  149. package/features/workflow/ListWorkflows/ListWorkflowsRepository.js.map +1 -0
  150. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.d.ts +10 -0
  151. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js +20 -0
  152. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js.map +1 -0
  153. package/features/workflow/ListWorkflows/abstractions.d.ts +60 -0
  154. package/features/workflow/ListWorkflows/abstractions.js +15 -0
  155. package/features/workflow/ListWorkflows/abstractions.js.map +1 -0
  156. package/features/workflow/ListWorkflows/feature.d.ts +1 -0
  157. package/features/workflow/ListWorkflows/feature.js +12 -0
  158. package/features/workflow/ListWorkflows/feature.js.map +1 -0
  159. package/features/workflow/ListWorkflows/index.d.ts +1 -0
  160. package/features/workflow/ListWorkflows/index.js +3 -0
  161. package/features/workflow/ListWorkflows/index.js.map +1 -0
  162. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.d.ts +15 -0
  163. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js +37 -0
  164. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js.map +1 -0
  165. package/features/workflow/StoreWorkflow/abstractions.d.ts +32 -0
  166. package/features/workflow/StoreWorkflow/abstractions.js +11 -0
  167. package/features/workflow/StoreWorkflow/abstractions.js.map +1 -0
  168. package/features/workflow/StoreWorkflow/feature.d.ts +1 -0
  169. package/features/workflow/StoreWorkflow/feature.js +17 -0
  170. package/features/workflow/StoreWorkflow/feature.js.map +1 -0
  171. package/features/workflow/StoreWorkflow/index.d.ts +3 -0
  172. package/features/workflow/StoreWorkflow/index.js +4 -0
  173. package/features/workflow/StoreWorkflow/index.js.map +1 -0
  174. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.d.ts +15 -0
  175. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js +49 -0
  176. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js.map +1 -0
  177. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.d.ts +15 -0
  178. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js +59 -0
  179. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js.map +1 -0
  180. package/features/workflow/UpdateWorkflow/abstractions.d.ts +57 -0
  181. package/features/workflow/UpdateWorkflow/abstractions.js +19 -0
  182. package/features/workflow/UpdateWorkflow/abstractions.js.map +1 -0
  183. package/features/workflow/UpdateWorkflow/events.d.ts +21 -0
  184. package/features/workflow/UpdateWorkflow/events.js +20 -0
  185. package/features/workflow/UpdateWorkflow/events.js.map +1 -0
  186. package/features/workflow/UpdateWorkflow/feature.d.ts +1 -0
  187. package/features/workflow/UpdateWorkflow/feature.js +12 -0
  188. package/features/workflow/UpdateWorkflow/feature.js.map +1 -0
  189. package/features/workflow/UpdateWorkflow/index.d.ts +4 -0
  190. package/features/workflow/UpdateWorkflow/index.js +5 -0
  191. package/features/workflow/UpdateWorkflow/index.js.map +1 -0
  192. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.d.ts +15 -0
  193. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js +39 -0
  194. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js.map +1 -0
  195. package/features/workflowState/ApproveWorkflowStateStep/abstractions.d.ts +26 -0
  196. package/features/workflowState/ApproveWorkflowStateStep/abstractions.js +4 -0
  197. package/features/workflowState/ApproveWorkflowStateStep/abstractions.js.map +1 -0
  198. package/features/workflowState/ApproveWorkflowStateStep/events.d.ts +12 -0
  199. package/features/workflowState/ApproveWorkflowStateStep/events.js +11 -0
  200. package/features/workflowState/ApproveWorkflowStateStep/events.js.map +1 -0
  201. package/features/workflowState/ApproveWorkflowStateStep/feature.d.ts +1 -0
  202. package/features/workflowState/ApproveWorkflowStateStep/feature.js +10 -0
  203. package/features/workflowState/ApproveWorkflowStateStep/feature.js.map +1 -0
  204. package/features/workflowState/ApproveWorkflowStateStep/index.d.ts +2 -0
  205. package/features/workflowState/ApproveWorkflowStateStep/index.js +4 -0
  206. package/features/workflowState/ApproveWorkflowStateStep/index.js.map +1 -0
  207. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.d.ts +13 -0
  208. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js +29 -0
  209. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js.map +1 -0
  210. package/features/workflowState/CancelWorkflowState/abstractions.d.ts +26 -0
  211. package/features/workflowState/CancelWorkflowState/abstractions.js +9 -0
  212. package/features/workflowState/CancelWorkflowState/abstractions.js.map +1 -0
  213. package/features/workflowState/CancelWorkflowState/events.d.ts +12 -0
  214. package/features/workflowState/CancelWorkflowState/events.js +11 -0
  215. package/features/workflowState/CancelWorkflowState/events.js.map +1 -0
  216. package/features/workflowState/CancelWorkflowState/feature.d.ts +1 -0
  217. package/features/workflowState/CancelWorkflowState/feature.js +10 -0
  218. package/features/workflowState/CancelWorkflowState/feature.js.map +1 -0
  219. package/features/workflowState/CancelWorkflowState/index.d.ts +2 -0
  220. package/features/workflowState/CancelWorkflowState/index.js +4 -0
  221. package/features/workflowState/CancelWorkflowState/index.js.map +1 -0
  222. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.d.ts +14 -0
  223. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js +32 -0
  224. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js.map +1 -0
  225. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.d.ts +20 -0
  226. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js +108 -0
  227. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js.map +1 -0
  228. package/features/workflowState/CreateWorkflowState/abstractions.d.ts +54 -0
  229. package/features/workflowState/CreateWorkflowState/abstractions.js +15 -0
  230. package/features/workflowState/CreateWorkflowState/abstractions.js.map +1 -0
  231. package/features/workflowState/CreateWorkflowState/events.d.ts +12 -0
  232. package/features/workflowState/CreateWorkflowState/events.js +11 -0
  233. package/features/workflowState/CreateWorkflowState/events.js.map +1 -0
  234. package/features/workflowState/CreateWorkflowState/feature.d.ts +1 -0
  235. package/features/workflowState/CreateWorkflowState/feature.js +12 -0
  236. package/features/workflowState/CreateWorkflowState/feature.js.map +1 -0
  237. package/features/workflowState/CreateWorkflowState/index.d.ts +2 -0
  238. package/features/workflowState/CreateWorkflowState/index.js +4 -0
  239. package/features/workflowState/CreateWorkflowState/index.js.map +1 -0
  240. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.d.ts +21 -0
  241. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js +59 -0
  242. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js.map +1 -0
  243. package/features/workflowState/DeleteTargetWorkflowState/abstractions.d.ts +23 -0
  244. package/features/workflowState/DeleteTargetWorkflowState/abstractions.js +4 -0
  245. package/features/workflowState/DeleteTargetWorkflowState/abstractions.js.map +1 -0
  246. package/features/workflowState/DeleteTargetWorkflowState/events.d.ts +12 -0
  247. package/features/workflowState/DeleteTargetWorkflowState/events.js +11 -0
  248. package/features/workflowState/DeleteTargetWorkflowState/events.js.map +1 -0
  249. package/features/workflowState/DeleteTargetWorkflowState/feature.d.ts +1 -0
  250. package/features/workflowState/DeleteTargetWorkflowState/feature.js +10 -0
  251. package/features/workflowState/DeleteTargetWorkflowState/feature.js.map +1 -0
  252. package/features/workflowState/DeleteTargetWorkflowState/index.d.ts +2 -0
  253. package/features/workflowState/DeleteTargetWorkflowState/index.js +4 -0
  254. package/features/workflowState/DeleteTargetWorkflowState/index.js.map +1 -0
  255. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.d.ts +13 -0
  256. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js +20 -0
  257. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js.map +1 -0
  258. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.d.ts +14 -0
  259. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js +32 -0
  260. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js.map +1 -0
  261. package/features/workflowState/DeleteWorkflowState/abstractions.d.ts +25 -0
  262. package/features/workflowState/DeleteWorkflowState/abstractions.js +5 -0
  263. package/features/workflowState/DeleteWorkflowState/abstractions.js.map +1 -0
  264. package/features/workflowState/DeleteWorkflowState/feature.d.ts +1 -0
  265. package/features/workflowState/DeleteWorkflowState/feature.js +12 -0
  266. package/features/workflowState/DeleteWorkflowState/feature.js.map +1 -0
  267. package/features/workflowState/DeleteWorkflowState/index.d.ts +1 -0
  268. package/features/workflowState/DeleteWorkflowState/index.js +3 -0
  269. package/features/workflowState/DeleteWorkflowState/index.js.map +1 -0
  270. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.d.ts +14 -0
  271. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js +52 -0
  272. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js.map +1 -0
  273. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.d.ts +14 -0
  274. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js +38 -0
  275. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js.map +1 -0
  276. package/features/workflowState/GetTargetWorkflowState/abstractions.d.ts +48 -0
  277. package/features/workflowState/GetTargetWorkflowState/abstractions.js +15 -0
  278. package/features/workflowState/GetTargetWorkflowState/abstractions.js.map +1 -0
  279. package/features/workflowState/GetTargetWorkflowState/feature.d.ts +1 -0
  280. package/features/workflowState/GetTargetWorkflowState/feature.js +12 -0
  281. package/features/workflowState/GetTargetWorkflowState/feature.js.map +1 -0
  282. package/features/workflowState/GetTargetWorkflowState/index.d.ts +1 -0
  283. package/features/workflowState/GetTargetWorkflowState/index.js +3 -0
  284. package/features/workflowState/GetTargetWorkflowState/index.js.map +1 -0
  285. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.d.ts +14 -0
  286. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js +32 -0
  287. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js.map +1 -0
  288. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.d.ts +14 -0
  289. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js +30 -0
  290. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js.map +1 -0
  291. package/features/workflowState/GetWorkflowState/abstractions.d.ts +39 -0
  292. package/features/workflowState/GetWorkflowState/abstractions.js +15 -0
  293. package/features/workflowState/GetWorkflowState/abstractions.js.map +1 -0
  294. package/features/workflowState/GetWorkflowState/feature.d.ts +1 -0
  295. package/features/workflowState/GetWorkflowState/feature.js +12 -0
  296. package/features/workflowState/GetWorkflowState/feature.js.map +1 -0
  297. package/features/workflowState/GetWorkflowState/index.d.ts +1 -0
  298. package/features/workflowState/GetWorkflowState/index.js +3 -0
  299. package/features/workflowState/GetWorkflowState/index.js.map +1 -0
  300. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.d.ts +13 -0
  301. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js +41 -0
  302. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js.map +1 -0
  303. package/features/workflowState/ListOwnWorkflowStates/abstractions.d.ts +22 -0
  304. package/features/workflowState/ListOwnWorkflowStates/abstractions.js +9 -0
  305. package/features/workflowState/ListOwnWorkflowStates/abstractions.js.map +1 -0
  306. package/features/workflowState/ListOwnWorkflowStates/feature.d.ts +1 -0
  307. package/features/workflowState/ListOwnWorkflowStates/feature.js +10 -0
  308. package/features/workflowState/ListOwnWorkflowStates/feature.js.map +1 -0
  309. package/features/workflowState/ListOwnWorkflowStates/index.d.ts +1 -0
  310. package/features/workflowState/ListOwnWorkflowStates/index.js +3 -0
  311. package/features/workflowState/ListOwnWorkflowStates/index.js.map +1 -0
  312. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.d.ts +15 -0
  313. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js +49 -0
  314. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js.map +1 -0
  315. package/features/workflowState/ListRequestedWorkflowStates/abstractions.d.ts +22 -0
  316. package/features/workflowState/ListRequestedWorkflowStates/abstractions.js +9 -0
  317. package/features/workflowState/ListRequestedWorkflowStates/abstractions.js.map +1 -0
  318. package/features/workflowState/ListRequestedWorkflowStates/feature.d.ts +1 -0
  319. package/features/workflowState/ListRequestedWorkflowStates/feature.js +10 -0
  320. package/features/workflowState/ListRequestedWorkflowStates/feature.js.map +1 -0
  321. package/features/workflowState/ListRequestedWorkflowStates/index.d.ts +1 -0
  322. package/features/workflowState/ListRequestedWorkflowStates/index.js +3 -0
  323. package/features/workflowState/ListRequestedWorkflowStates/index.js.map +1 -0
  324. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.d.ts +16 -0
  325. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js +43 -0
  326. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js.map +1 -0
  327. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.d.ts +14 -0
  328. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js +36 -0
  329. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js.map +1 -0
  330. package/features/workflowState/ListWorkflowStates/abstractions.d.ts +56 -0
  331. package/features/workflowState/ListWorkflowStates/abstractions.js +15 -0
  332. package/features/workflowState/ListWorkflowStates/abstractions.js.map +1 -0
  333. package/features/workflowState/ListWorkflowStates/feature.d.ts +1 -0
  334. package/features/workflowState/ListWorkflowStates/feature.js +12 -0
  335. package/features/workflowState/ListWorkflowStates/feature.js.map +1 -0
  336. package/features/workflowState/ListWorkflowStates/index.d.ts +1 -0
  337. package/features/workflowState/ListWorkflowStates/index.js +3 -0
  338. package/features/workflowState/ListWorkflowStates/index.js.map +1 -0
  339. package/features/workflowState/README.md +8 -0
  340. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.d.ts +15 -0
  341. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js +39 -0
  342. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js.map +1 -0
  343. package/features/workflowState/RejectWorkflowStateStep/abstractions.d.ts +26 -0
  344. package/features/workflowState/RejectWorkflowStateStep/abstractions.js +4 -0
  345. package/features/workflowState/RejectWorkflowStateStep/abstractions.js.map +1 -0
  346. package/features/workflowState/RejectWorkflowStateStep/events.d.ts +12 -0
  347. package/features/workflowState/RejectWorkflowStateStep/events.js +11 -0
  348. package/features/workflowState/RejectWorkflowStateStep/events.js.map +1 -0
  349. package/features/workflowState/RejectWorkflowStateStep/feature.d.ts +1 -0
  350. package/features/workflowState/RejectWorkflowStateStep/feature.js +10 -0
  351. package/features/workflowState/RejectWorkflowStateStep/feature.js.map +1 -0
  352. package/features/workflowState/RejectWorkflowStateStep/index.d.ts +2 -0
  353. package/features/workflowState/RejectWorkflowStateStep/index.js +4 -0
  354. package/features/workflowState/RejectWorkflowStateStep/index.js.map +1 -0
  355. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.d.ts +15 -0
  356. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js +39 -0
  357. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js.map +1 -0
  358. package/features/workflowState/StartWorkflowStateStep/abstractions.d.ts +25 -0
  359. package/features/workflowState/StartWorkflowStateStep/abstractions.js +4 -0
  360. package/features/workflowState/StartWorkflowStateStep/abstractions.js.map +1 -0
  361. package/features/workflowState/StartWorkflowStateStep/events.d.ts +12 -0
  362. package/features/workflowState/StartWorkflowStateStep/events.js +11 -0
  363. package/features/workflowState/StartWorkflowStateStep/events.js.map +1 -0
  364. package/features/workflowState/StartWorkflowStateStep/feature.d.ts +1 -0
  365. package/features/workflowState/StartWorkflowStateStep/feature.js +10 -0
  366. package/features/workflowState/StartWorkflowStateStep/feature.js.map +1 -0
  367. package/features/workflowState/StartWorkflowStateStep/index.d.ts +2 -0
  368. package/features/workflowState/StartWorkflowStateStep/index.js +4 -0
  369. package/features/workflowState/StartWorkflowStateStep/index.js.map +1 -0
  370. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.d.ts +15 -0
  371. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js +39 -0
  372. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js.map +1 -0
  373. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.d.ts +26 -0
  374. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js +4 -0
  375. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js.map +1 -0
  376. package/features/workflowState/TakeOverWorkflowStateStep/events.d.ts +12 -0
  377. package/features/workflowState/TakeOverWorkflowStateStep/events.js +11 -0
  378. package/features/workflowState/TakeOverWorkflowStateStep/events.js.map +1 -0
  379. package/features/workflowState/TakeOverWorkflowStateStep/feature.d.ts +1 -0
  380. package/features/workflowState/TakeOverWorkflowStateStep/feature.js +10 -0
  381. package/features/workflowState/TakeOverWorkflowStateStep/feature.js.map +1 -0
  382. package/features/workflowState/TakeOverWorkflowStateStep/index.d.ts +2 -0
  383. package/features/workflowState/TakeOverWorkflowStateStep/index.js +4 -0
  384. package/features/workflowState/TakeOverWorkflowStateStep/index.js.map +1 -0
  385. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.d.ts +17 -0
  386. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js +48 -0
  387. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js.map +1 -0
  388. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.d.ts +20 -0
  389. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js +57 -0
  390. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js.map +1 -0
  391. package/features/workflowState/UpdateWorkflowState/abstractions.d.ts +48 -0
  392. package/features/workflowState/UpdateWorkflowState/abstractions.js +15 -0
  393. package/features/workflowState/UpdateWorkflowState/abstractions.js.map +1 -0
  394. package/features/workflowState/UpdateWorkflowState/events.d.ts +12 -0
  395. package/features/workflowState/UpdateWorkflowState/events.js +11 -0
  396. package/features/workflowState/UpdateWorkflowState/events.js.map +1 -0
  397. package/features/workflowState/UpdateWorkflowState/feature.d.ts +1 -0
  398. package/features/workflowState/UpdateWorkflowState/feature.js +12 -0
  399. package/features/workflowState/UpdateWorkflowState/feature.js.map +1 -0
  400. package/features/workflowState/UpdateWorkflowState/index.d.ts +2 -0
  401. package/features/workflowState/UpdateWorkflowState/index.js +4 -0
  402. package/features/workflowState/UpdateWorkflowState/index.js.map +1 -0
  403. package/graphql/notifications.d.ts +2 -0
  404. package/graphql/notifications.js +51 -0
  405. package/graphql/notifications.js.map +1 -0
  406. package/graphql/validation/approveWorkflowState.d.ts +11 -0
  407. package/graphql/validation/approveWorkflowState.js +7 -0
  408. package/graphql/validation/approveWorkflowState.js.map +1 -0
  409. package/graphql/validation/cancelWorkflowState.d.ts +8 -0
  410. package/graphql/validation/cancelWorkflowState.js +6 -0
  411. package/graphql/validation/cancelWorkflowState.js.map +1 -0
  412. package/graphql/validation/createWorkflowState.d.ts +14 -0
  413. package/graphql/validation/createWorkflowState.js +8 -0
  414. package/graphql/validation/createWorkflowState.js.map +1 -0
  415. package/graphql/validation/deleteWorkflow.d.ts +11 -0
  416. package/graphql/validation/deleteWorkflow.js +7 -0
  417. package/graphql/validation/deleteWorkflow.js.map +1 -0
  418. package/graphql/validation/getTargetWorkflowState.d.ts +11 -0
  419. package/graphql/validation/getTargetWorkflowState.js +7 -0
  420. package/graphql/validation/getTargetWorkflowState.js.map +1 -0
  421. package/graphql/validation/getWorkflow.d.ts +11 -0
  422. package/graphql/validation/getWorkflow.js +7 -0
  423. package/graphql/validation/getWorkflow.js.map +1 -0
  424. package/graphql/validation/getWorkflowState.d.ts +8 -0
  425. package/graphql/validation/getWorkflowState.js +6 -0
  426. package/graphql/validation/getWorkflowState.js.map +1 -0
  427. package/graphql/validation/listWorkflowStates.d.ts +108 -0
  428. package/graphql/validation/listWorkflowStates.js +42 -0
  429. package/graphql/validation/listWorkflowStates.js.map +1 -0
  430. package/graphql/validation/listWorkflows.d.ts +42 -0
  431. package/graphql/validation/listWorkflows.js +22 -0
  432. package/graphql/validation/listWorkflows.js.map +1 -0
  433. package/graphql/validation/rejectWorkflowState.d.ts +11 -0
  434. package/graphql/validation/rejectWorkflowState.js +7 -0
  435. package/graphql/validation/rejectWorkflowState.js.map +1 -0
  436. package/graphql/validation/startWorkflowState.d.ts +8 -0
  437. package/graphql/validation/startWorkflowState.js +6 -0
  438. package/graphql/validation/startWorkflowState.js.map +1 -0
  439. package/graphql/validation/step.d.ts +49 -0
  440. package/graphql/validation/step.js +21 -0
  441. package/graphql/validation/step.js.map +1 -0
  442. package/graphql/validation/storeWorkflow.d.ts +107 -0
  443. package/graphql/validation/storeWorkflow.js +9 -0
  444. package/graphql/validation/storeWorkflow.js.map +1 -0
  445. package/graphql/validation/takeOverWorkflowStateStep.d.ts +8 -0
  446. package/graphql/validation/takeOverWorkflowStateStep.js +6 -0
  447. package/graphql/validation/takeOverWorkflowStateStep.js.map +1 -0
  448. package/graphql/validation/workflow.d.ts +80 -0
  449. package/graphql/validation/workflow.js +10 -0
  450. package/graphql/validation/workflow.js.map +1 -0
  451. package/graphql/workflowState.d.ts +2 -0
  452. package/graphql/workflowState.js +398 -0
  453. package/graphql/workflowState.js.map +1 -0
  454. package/graphql/workflows.d.ts +2 -0
  455. package/graphql/workflows.js +216 -0
  456. package/graphql/workflows.js.map +1 -0
  457. package/index.d.ts +2 -0
  458. package/index.js +102 -0
  459. package/index.js.map +1 -0
  460. package/package.json +41 -0
  461. package/types.d.ts +13 -0
  462. package/types.js +7 -0
  463. package/types.js.map +1 -0
@@ -0,0 +1,20 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { ListWorkflowsRepository, ListWorkflowsUseCase as UseCase } from "./abstractions.js";
3
+ class ListWorkflowsUseCaseImpl {
4
+ constructor(repository) {
5
+ this.repository = repository;
6
+ }
7
+ async execute(input) {
8
+ const result = await this.repository.execute(input);
9
+ if (result.isFail()) {
10
+ return result;
11
+ }
12
+ return Result.ok(result.value);
13
+ }
14
+ }
15
+ export const ListWorkflowsUseCase = UseCase.createImplementation({
16
+ implementation: ListWorkflowsUseCaseImpl,
17
+ dependencies: [ListWorkflowsRepository]
18
+ });
19
+
20
+ //# sourceMappingURL=ListWorkflowsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","ListWorkflowsRepository","ListWorkflowsUseCase","UseCase","ListWorkflowsUseCaseImpl","constructor","repository","execute","input","result","isFail","ok","value","createImplementation","implementation","dependencies"],"sources":["ListWorkflowsUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListWorkflowsRepository, ListWorkflowsUseCase as UseCase } from \"./abstractions.js\";\n\nclass ListWorkflowsUseCaseImpl implements UseCase.Interface {\n private readonly repository: ListWorkflowsRepository.Interface;\n\n constructor(repository: ListWorkflowsRepository.Interface) {\n this.repository = repository;\n }\n\n async execute(input: UseCase.Params): UseCase.Return {\n const result = await this.repository.execute(input);\n\n if (result.isFail()) {\n return result;\n }\n\n return Result.ok(result.value);\n }\n}\n\nexport const ListWorkflowsUseCase = UseCase.createImplementation({\n implementation: ListWorkflowsUseCaseImpl,\n dependencies: [ListWorkflowsRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,uBAAuB,EAAEC,oBAAoB,IAAIC,OAAO;AAEjE,MAAMC,wBAAwB,CAA8B;EAGxDC,WAAWA,CAACC,UAA6C,EAAE;IACvD,IAAI,CAACA,UAAU,GAAGA,UAAU;EAChC;EAEA,MAAMC,OAAOA,CAACC,KAAqB,EAAkB;IACjD,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACH,UAAU,CAACC,OAAO,CAACC,KAAK,CAAC;IAEnD,IAAIC,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOD,MAAM;IACjB;IAEA,OAAOT,MAAM,CAACW,EAAE,CAACF,MAAM,CAACG,KAAK,CAAC;EAClC;AACJ;AAEA,OAAO,MAAMV,oBAAoB,GAAGC,OAAO,CAACU,oBAAoB,CAAC;EAC7DC,cAAc,EAAEV,wBAAwB;EACxCW,YAAY,EAAE,CAACd,uBAAuB;AAC1C,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,60 @@
1
+ import type { Result } from "@webiny/feature/api";
2
+ import type { IWorkflow } from "../../../domain/workflow/abstractions.js";
3
+ import type { WorkflowPersistenceError } from "../../../domain/workflow/errors.js";
4
+ import type { CmsEntryListSort } from "@webiny/api-headless-cms/types/index.js";
5
+ export interface IListWorkflowsWhere {
6
+ app?: string;
7
+ app_in?: string[];
8
+ id?: string;
9
+ id_in?: string[];
10
+ }
11
+ export interface IListWorkflowsParams {
12
+ sort?: CmsEntryListSort;
13
+ limit?: number;
14
+ after?: string;
15
+ where?: IListWorkflowsWhere;
16
+ }
17
+ export interface IListWorkflowsMeta {
18
+ hasMoreItems: boolean;
19
+ totalCount: number;
20
+ cursor: string | null;
21
+ }
22
+ export interface IListWorkflowsResult {
23
+ items: IWorkflow[];
24
+ meta: IListWorkflowsMeta;
25
+ }
26
+ /**
27
+ * ListWorkflows use case interface
28
+ */
29
+ export interface IListWorkflowsUseCase {
30
+ execute(input: IListWorkflowsParams): Promise<Result<IListWorkflowsResult, UseCaseError>>;
31
+ }
32
+ export interface IListWorkflowsUseCaseErrors {
33
+ persistence: WorkflowPersistenceError;
34
+ }
35
+ type UseCaseError = IListWorkflowsUseCaseErrors[keyof IListWorkflowsUseCaseErrors];
36
+ export declare const ListWorkflowsUseCase: import("@webiny/di").Abstraction<IListWorkflowsUseCase>;
37
+ export declare namespace ListWorkflowsUseCase {
38
+ type Interface = IListWorkflowsUseCase;
39
+ type Params = IListWorkflowsParams;
40
+ type Return = Promise<Result<IListWorkflowsResult, UseCaseError>>;
41
+ type Error = UseCaseError;
42
+ }
43
+ /**
44
+ * ListWorkflows repository interface
45
+ */
46
+ export interface IListWorkflowsRepository {
47
+ execute(input: IListWorkflowsParams): Promise<Result<IListWorkflowsResult, RepositoryError>>;
48
+ }
49
+ export interface IListWorkflowsRepositoryErrors {
50
+ persistence: WorkflowPersistenceError;
51
+ }
52
+ type RepositoryError = IListWorkflowsRepositoryErrors[keyof IListWorkflowsRepositoryErrors];
53
+ export declare const ListWorkflowsRepository: import("@webiny/di").Abstraction<IListWorkflowsRepository>;
54
+ export declare namespace ListWorkflowsRepository {
55
+ type Interface = IListWorkflowsRepository;
56
+ type Params = IListWorkflowsParams;
57
+ type Return = Promise<Result<IListWorkflowsResult, RepositoryError>>;
58
+ type Error = RepositoryError;
59
+ }
60
+ export {};
@@ -0,0 +1,15 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+
3
+ /**
4
+ * ListWorkflows use case interface
5
+ */
6
+
7
+ export const ListWorkflowsUseCase = createAbstraction("ListWorkflowsUseCase");
8
+
9
+ /**
10
+ * ListWorkflows repository interface
11
+ */
12
+
13
+ export const ListWorkflowsRepository = createAbstraction("ListWorkflowsRepository");
14
+
15
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","ListWorkflowsUseCase","ListWorkflowsRepository"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type { WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport type { CmsEntryListSort } from \"@webiny/api-headless-cms/types/index.js\";\n\nexport interface IListWorkflowsWhere {\n app?: string;\n app_in?: string[];\n id?: string;\n id_in?: string[];\n}\n\nexport interface IListWorkflowsParams {\n sort?: CmsEntryListSort;\n limit?: number;\n after?: string;\n where?: IListWorkflowsWhere;\n}\n\nexport interface IListWorkflowsMeta {\n hasMoreItems: boolean;\n totalCount: number;\n cursor: string | null;\n}\n\nexport interface IListWorkflowsResult {\n items: IWorkflow[];\n meta: IListWorkflowsMeta;\n}\n\n/**\n * ListWorkflows use case interface\n */\nexport interface IListWorkflowsUseCase {\n execute(input: IListWorkflowsParams): Promise<Result<IListWorkflowsResult, UseCaseError>>;\n}\n\nexport interface IListWorkflowsUseCaseErrors {\n persistence: WorkflowPersistenceError;\n}\n\ntype UseCaseError = IListWorkflowsUseCaseErrors[keyof IListWorkflowsUseCaseErrors];\n\nexport const ListWorkflowsUseCase =\n createAbstraction<IListWorkflowsUseCase>(\"ListWorkflowsUseCase\");\n\nexport namespace ListWorkflowsUseCase {\n export type Interface = IListWorkflowsUseCase;\n export type Params = IListWorkflowsParams;\n export type Return = Promise<Result<IListWorkflowsResult, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * ListWorkflows repository interface\n */\nexport interface IListWorkflowsRepository {\n execute(input: IListWorkflowsParams): Promise<Result<IListWorkflowsResult, RepositoryError>>;\n}\n\nexport interface IListWorkflowsRepositoryErrors {\n persistence: WorkflowPersistenceError;\n}\n\ntype RepositoryError = IListWorkflowsRepositoryErrors[keyof IListWorkflowsRepositoryErrors];\n\nexport const ListWorkflowsRepository =\n createAbstraction<IListWorkflowsRepository>(\"ListWorkflowsRepository\");\n\nexport namespace ListWorkflowsRepository {\n export type Interface = IListWorkflowsRepository;\n export type Params = IListWorkflowsParams;\n export type Return = Promise<Result<IListWorkflowsResult, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AA+BvD;AACA;AACA;;AAWA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,sBAAsB,CAAC;;AASpE;AACA;AACA;;AAWA,OAAO,MAAME,uBAAuB,GAChCF,iBAAiB,CAA2B,yBAAyB,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const ListWorkflowsFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,12 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { ListWorkflowsUseCase } from "./ListWorkflowsUseCase.js";
3
+ import { ListWorkflowsRepository } from "./ListWorkflowsRepository.js";
4
+ export const ListWorkflowsFeature = createFeature({
5
+ name: "Workflows/ListWorkflows",
6
+ register(container) {
7
+ container.register(ListWorkflowsRepository).inSingletonScope();
8
+ container.register(ListWorkflowsUseCase);
9
+ }
10
+ });
11
+
12
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","ListWorkflowsUseCase","ListWorkflowsRepository","ListWorkflowsFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListWorkflowsUseCase } from \"./ListWorkflowsUseCase.js\";\nimport { ListWorkflowsRepository } from \"./ListWorkflowsRepository.js\";\n\nexport const ListWorkflowsFeature = createFeature({\n name: \"Workflows/ListWorkflows\",\n register(container) {\n container.register(ListWorkflowsRepository).inSingletonScope();\n container.register(ListWorkflowsUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAEhC,OAAO,MAAMC,oBAAoB,GAAGH,aAAa,CAAC;EAC9CI,IAAI,EAAE,yBAAyB;EAC/BC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,uBAAuB,CAAC,CAACK,gBAAgB,CAAC,CAAC;IAC9DD,SAAS,CAACD,QAAQ,CAACJ,oBAAoB,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export * from "./abstractions.js";
@@ -0,0 +1,3 @@
1
+ export * from "./abstractions.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./abstractions.js\";\n"],"mappings":"AAAA","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { GetWorkflowUseCase } from "../GetWorkflow/index.js";
2
+ import { CreateWorkflowUseCase } from "../CreateWorkflow/index.js";
3
+ import { UpdateWorkflowUseCase } from "../UpdateWorkflow/index.js";
4
+ import { StoreWorkflowUseCase as UseCase } from "./abstractions.js";
5
+ declare class StoreWorkflowUseCaseImpl implements UseCase.Interface {
6
+ private getWorkflow;
7
+ private createWorkflow;
8
+ private updateWorkflow;
9
+ constructor(getWorkflow: GetWorkflowUseCase.Interface, createWorkflow: CreateWorkflowUseCase.Interface, updateWorkflow: UpdateWorkflowUseCase.Interface);
10
+ execute(input: UseCase.Input): UseCase.Return;
11
+ }
12
+ export declare const StoreWorkflowUseCase: typeof StoreWorkflowUseCaseImpl & {
13
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IStoreWorkflowUseCase>;
14
+ };
15
+ export {};
@@ -0,0 +1,37 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { GetWorkflowUseCase } from "../GetWorkflow/index.js";
3
+ import { CreateWorkflowUseCase } from "../CreateWorkflow/index.js";
4
+ import { UpdateWorkflowUseCase } from "../UpdateWorkflow/index.js";
5
+ import { StoreWorkflowUseCase as UseCase } from "./abstractions.js";
6
+ class StoreWorkflowUseCaseImpl {
7
+ constructor(getWorkflow, createWorkflow, updateWorkflow) {
8
+ this.getWorkflow = getWorkflow;
9
+ this.createWorkflow = createWorkflow;
10
+ this.updateWorkflow = updateWorkflow;
11
+ }
12
+ async execute(input) {
13
+ const existingResult = await this.getWorkflow.execute({
14
+ app: input.app,
15
+ id: input.id
16
+ });
17
+
18
+ // If getWorkflow fails with anything other than NotFound, propagate error
19
+ if (existingResult.isFail()) {
20
+ if (existingResult.error.code !== "Workflows/Workflow/NotFound") {
21
+ return Result.fail(existingResult.error);
22
+ }
23
+ }
24
+ const existing = existingResult.isOk() ? existingResult.value : null;
25
+ if (!existing) {
26
+ return this.createWorkflow.execute(input);
27
+ } else {
28
+ return this.updateWorkflow.execute(input, existing);
29
+ }
30
+ }
31
+ }
32
+ export const StoreWorkflowUseCase = UseCase.createImplementation({
33
+ implementation: StoreWorkflowUseCaseImpl,
34
+ dependencies: [GetWorkflowUseCase, CreateWorkflowUseCase, UpdateWorkflowUseCase]
35
+ });
36
+
37
+ //# sourceMappingURL=StoreWorkflowUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","GetWorkflowUseCase","CreateWorkflowUseCase","UpdateWorkflowUseCase","StoreWorkflowUseCase","UseCase","StoreWorkflowUseCaseImpl","constructor","getWorkflow","createWorkflow","updateWorkflow","execute","input","existingResult","app","id","isFail","error","code","fail","existing","isOk","value","createImplementation","implementation","dependencies"],"sources":["StoreWorkflowUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetWorkflowUseCase } from \"../GetWorkflow/index.js\";\nimport { CreateWorkflowUseCase } from \"../CreateWorkflow/index.js\";\nimport { UpdateWorkflowUseCase } from \"../UpdateWorkflow/index.js\";\nimport { StoreWorkflowUseCase as UseCase } from \"./abstractions.js\";\n\nclass StoreWorkflowUseCaseImpl implements UseCase.Interface {\n constructor(\n private getWorkflow: GetWorkflowUseCase.Interface,\n private createWorkflow: CreateWorkflowUseCase.Interface,\n private updateWorkflow: UpdateWorkflowUseCase.Interface\n ) {}\n\n async execute(input: UseCase.Input): UseCase.Return {\n const existingResult = await this.getWorkflow.execute({\n app: input.app,\n id: input.id\n });\n\n // If getWorkflow fails with anything other than NotFound, propagate error\n if (existingResult.isFail()) {\n if (existingResult.error.code !== \"Workflows/Workflow/NotFound\") {\n return Result.fail(existingResult.error);\n }\n }\n\n const existing = existingResult.isOk() ? existingResult.value : null;\n\n if (!existing) {\n return this.createWorkflow.execute(input);\n } else {\n return this.updateWorkflow.execute(input, existing);\n }\n }\n}\n\nexport const StoreWorkflowUseCase = UseCase.createImplementation({\n implementation: StoreWorkflowUseCaseImpl,\n dependencies: [GetWorkflowUseCase, CreateWorkflowUseCase, UpdateWorkflowUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB;AAC3B,SAASC,qBAAqB;AAC9B,SAASC,qBAAqB;AAC9B,SAASC,oBAAoB,IAAIC,OAAO;AAExC,MAAMC,wBAAwB,CAA8B;EACxDC,WAAWA,CACCC,WAAyC,EACzCC,cAA+C,EAC/CC,cAA+C,EACzD;IAAA,KAHUF,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,cAA+C,GAA/CA,cAA+C;IAAA,KAC/CC,cAA+C,GAA/CA,cAA+C;EACxD;EAEH,MAAMC,OAAOA,CAACC,KAAoB,EAAkB;IAChD,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACL,WAAW,CAACG,OAAO,CAAC;MAClDG,GAAG,EAAEF,KAAK,CAACE,GAAG;MACdC,EAAE,EAAEH,KAAK,CAACG;IACd,CAAC,CAAC;;IAEF;IACA,IAAIF,cAAc,CAACG,MAAM,CAAC,CAAC,EAAE;MACzB,IAAIH,cAAc,CAACI,KAAK,CAACC,IAAI,KAAK,6BAA6B,EAAE;QAC7D,OAAOlB,MAAM,CAACmB,IAAI,CAACN,cAAc,CAACI,KAAK,CAAC;MAC5C;IACJ;IAEA,MAAMG,QAAQ,GAAGP,cAAc,CAACQ,IAAI,CAAC,CAAC,GAAGR,cAAc,CAACS,KAAK,GAAG,IAAI;IAEpE,IAAI,CAACF,QAAQ,EAAE;MACX,OAAO,IAAI,CAACX,cAAc,CAACE,OAAO,CAACC,KAAK,CAAC;IAC7C,CAAC,MAAM;MACH,OAAO,IAAI,CAACF,cAAc,CAACC,OAAO,CAACC,KAAK,EAAEQ,QAAQ,CAAC;IACvD;EACJ;AACJ;AAEA,OAAO,MAAMhB,oBAAoB,GAAGC,OAAO,CAACkB,oBAAoB,CAAC;EAC7DC,cAAc,EAAElB,wBAAwB;EACxCmB,YAAY,EAAE,CAACxB,kBAAkB,EAAEC,qBAAqB,EAAEC,qBAAqB;AACnF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ import type { Result } from "@webiny/feature/api";
2
+ import type { IWorkflow } from "../../../domain/workflow/abstractions.js";
3
+ import type { NonEmptyArray } from "@webiny/api/types.js";
4
+ import { type WorkflowNotFoundError, type WorkflowNotAuthorizedError, type WorkflowPersistenceError, type WorkflowValidationError } from "../../../domain/workflow/errors.js";
5
+ import type { IWorkflowStepInput } from "../../../features/shared/abstractions.js";
6
+ export interface IStoreWorkflowInput {
7
+ app: string;
8
+ id: string;
9
+ name: string;
10
+ steps: NonEmptyArray<IWorkflowStepInput>;
11
+ }
12
+ /**
13
+ * StoreWorkflow use case interface - delegates to CreateWorkflow or UpdateWorkflow
14
+ */
15
+ export interface IStoreWorkflowUseCase {
16
+ execute(input: IStoreWorkflowInput): Promise<Result<IWorkflow, UseCaseError>>;
17
+ }
18
+ export interface IStoreWorkflowUseCaseErrors {
19
+ notFound: WorkflowNotFoundError;
20
+ notAuthorized: WorkflowNotAuthorizedError;
21
+ persistence: WorkflowPersistenceError;
22
+ validation: WorkflowValidationError;
23
+ }
24
+ type UseCaseError = IStoreWorkflowUseCaseErrors[keyof IStoreWorkflowUseCaseErrors];
25
+ export declare const StoreWorkflowUseCase: import("@webiny/di").Abstraction<IStoreWorkflowUseCase>;
26
+ export declare namespace StoreWorkflowUseCase {
27
+ type Interface = IStoreWorkflowUseCase;
28
+ type Input = IStoreWorkflowInput;
29
+ type Return = Promise<Result<IWorkflow, UseCaseError>>;
30
+ type Error = UseCaseError;
31
+ }
32
+ export {};
@@ -0,0 +1,11 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+
3
+ // Input types (from context/abstractions/WorkflowsContext.ts)
4
+
5
+ /**
6
+ * StoreWorkflow use case interface - delegates to CreateWorkflow or UpdateWorkflow
7
+ */
8
+
9
+ export const StoreWorkflowUseCase = createAbstraction("StoreWorkflowUseCase");
10
+
11
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","StoreWorkflowUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport {\n type WorkflowNotFoundError,\n type WorkflowNotAuthorizedError,\n type WorkflowPersistenceError,\n type WorkflowValidationError\n} from \"~/domain/workflow/errors.js\";\nimport type { IWorkflowStepInput } from \"~/features/shared/abstractions.js\";\n\n// Input types (from context/abstractions/WorkflowsContext.ts)\nexport interface IStoreWorkflowInput {\n app: string;\n id: string;\n name: string;\n steps: NonEmptyArray<IWorkflowStepInput>;\n}\n\n/**\n * StoreWorkflow use case interface - delegates to CreateWorkflow or UpdateWorkflow\n */\nexport interface IStoreWorkflowUseCase {\n execute(input: IStoreWorkflowInput): Promise<Result<IWorkflow, UseCaseError>>;\n}\n\nexport interface IStoreWorkflowUseCaseErrors {\n notFound: WorkflowNotFoundError;\n notAuthorized: WorkflowNotAuthorizedError;\n persistence: WorkflowPersistenceError;\n validation: WorkflowValidationError;\n}\n\ntype UseCaseError = IStoreWorkflowUseCaseErrors[keyof IStoreWorkflowUseCaseErrors];\n\nexport const StoreWorkflowUseCase =\n createAbstraction<IStoreWorkflowUseCase>(\"StoreWorkflowUseCase\");\n\nexport namespace StoreWorkflowUseCase {\n export type Interface = IStoreWorkflowUseCase;\n export type Input = IStoreWorkflowInput;\n export type Return = Promise<Result<IWorkflow, UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAYvD;;AAQA;AACA;AACA;;AAcA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,sBAAsB,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const StoreWorkflowFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,17 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { StoreWorkflowUseCase } from "./StoreWorkflowUseCase.js";
3
+ import { CreateWorkflowFeature } from "../CreateWorkflow/index.js";
4
+ import { UpdateWorkflowFeature } from "../UpdateWorkflow/index.js";
5
+ export const StoreWorkflowFeature = createFeature({
6
+ name: "Workflows/StoreWorkflow",
7
+ register(container) {
8
+ // Register dependencies
9
+ CreateWorkflowFeature.register(container);
10
+ UpdateWorkflowFeature.register(container);
11
+
12
+ // Register StoreWorkflow use case
13
+ container.register(StoreWorkflowUseCase);
14
+ }
15
+ });
16
+
17
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","StoreWorkflowUseCase","CreateWorkflowFeature","UpdateWorkflowFeature","StoreWorkflowFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { StoreWorkflowUseCase } from \"./StoreWorkflowUseCase.js\";\nimport { CreateWorkflowFeature } from \"../CreateWorkflow/index.js\";\nimport { UpdateWorkflowFeature } from \"../UpdateWorkflow/index.js\";\n\nexport const StoreWorkflowFeature = createFeature({\n name: \"Workflows/StoreWorkflow\",\n register(container) {\n // Register dependencies\n CreateWorkflowFeature.register(container);\n UpdateWorkflowFeature.register(container);\n\n // Register StoreWorkflow use case\n container.register(StoreWorkflowUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,oBAAoB;AAC7B,SAASC,qBAAqB;AAC9B,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,oBAAoB,GAAGJ,aAAa,CAAC;EAC9CK,IAAI,EAAE,yBAAyB;EAC/BC,QAAQA,CAACC,SAAS,EAAE;IAChB;IACAL,qBAAqB,CAACI,QAAQ,CAACC,SAAS,CAAC;IACzCJ,qBAAqB,CAACG,QAAQ,CAACC,SAAS,CAAC;;IAEzC;IACAA,SAAS,CAACD,QAAQ,CAACL,oBAAoB,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export { StoreWorkflowFeature } from "./feature.js";
2
+ export { StoreWorkflowUseCase } from "./abstractions.js";
3
+ export type { IStoreWorkflowInput } from "./abstractions.js";
@@ -0,0 +1,4 @@
1
+ export { StoreWorkflowFeature } from "./feature.js";
2
+ export { StoreWorkflowUseCase } from "./abstractions.js";
3
+
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StoreWorkflowFeature","StoreWorkflowUseCase"],"sources":["index.ts"],"sourcesContent":["export { StoreWorkflowFeature } from \"./feature.js\";\nexport { StoreWorkflowUseCase } from \"./abstractions.js\";\nexport type { IStoreWorkflowInput } from \"./abstractions.js\";\n"],"mappings":"AAAA,SAASA,oBAAoB;AAC7B,SAASC,oBAAoB","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { UpdateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js";
2
+ import { WorkflowMapper, WorkflowModel } from "../../../domain/workflow/abstractions.js";
3
+ import type { IUpdateWorkflowInput } from "./abstractions.js";
4
+ import { UpdateWorkflowRepository as Repository } from "./abstractions.js";
5
+ declare class UpdateWorkflowRepositoryImpl implements Repository.Interface {
6
+ private updateEntry;
7
+ private model;
8
+ private mapper;
9
+ constructor(updateEntry: UpdateEntryUseCase.Interface, model: WorkflowModel.Interface, mapper: WorkflowMapper.Interface);
10
+ execute(input: IUpdateWorkflowInput): Repository.Return;
11
+ }
12
+ export declare const UpdateWorkflowRepository: typeof UpdateWorkflowRepositoryImpl & {
13
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateWorkflowRepository>;
14
+ };
15
+ export {};
@@ -0,0 +1,49 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { parseIdentifier } from "@webiny/utils/parseIdentifier.js";
3
+ import { createIdentifier } from "@webiny/utils";
4
+ import { UpdateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js";
5
+ import { WorkflowMapper, WorkflowModel } from "../../../domain/workflow/abstractions.js";
6
+ import { WorkflowPersistenceError } from "../../../domain/workflow/errors.js";
7
+ import { UpdateWorkflowRepository as Repository } from "./abstractions.js";
8
+ class UpdateWorkflowRepositoryImpl {
9
+ constructor(updateEntry, model, mapper) {
10
+ this.updateEntry = updateEntry;
11
+ this.model = model;
12
+ this.mapper = mapper;
13
+ }
14
+ async execute(input) {
15
+ const {
16
+ id
17
+ } = parseIdentifier(input.id);
18
+ const values = this.mapper.toCmsEntry({
19
+ id,
20
+ app: input.app,
21
+ name: input.name,
22
+ steps: input.steps
23
+ });
24
+ const workflowId = createIdentifier({
25
+ id,
26
+ version: 1
27
+ });
28
+ try {
29
+ const updateResult = await this.updateEntry.execute(this.model, workflowId, {
30
+ values
31
+ });
32
+ if (updateResult.isFail()) {
33
+ return Result.fail(new WorkflowPersistenceError(updateResult.error));
34
+ }
35
+ return Result.ok({
36
+ ...values,
37
+ id
38
+ });
39
+ } catch (error) {
40
+ return Result.fail(new WorkflowPersistenceError(error));
41
+ }
42
+ }
43
+ }
44
+ export const UpdateWorkflowRepository = Repository.createImplementation({
45
+ implementation: UpdateWorkflowRepositoryImpl,
46
+ dependencies: [UpdateEntryUseCase, WorkflowModel, WorkflowMapper]
47
+ });
48
+
49
+ //# sourceMappingURL=UpdateWorkflowRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","parseIdentifier","createIdentifier","UpdateEntryUseCase","WorkflowMapper","WorkflowModel","WorkflowPersistenceError","UpdateWorkflowRepository","Repository","UpdateWorkflowRepositoryImpl","constructor","updateEntry","model","mapper","execute","input","id","values","toCmsEntry","app","name","steps","workflowId","version","updateResult","isFail","fail","error","ok","createImplementation","implementation","dependencies"],"sources":["UpdateWorkflowRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { parseIdentifier } from \"@webiny/utils/parseIdentifier.js\";\nimport { createIdentifier } from \"@webiny/utils\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { type IWorkflow, WorkflowMapper, WorkflowModel } from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport type { IUpdateWorkflowInput } from \"./abstractions.js\";\nimport { UpdateWorkflowRepository as Repository } from \"./abstractions.js\";\n\nclass UpdateWorkflowRepositoryImpl implements Repository.Interface {\n constructor(\n private updateEntry: UpdateEntryUseCase.Interface,\n private model: WorkflowModel.Interface,\n private mapper: WorkflowMapper.Interface\n ) {}\n\n async execute(input: IUpdateWorkflowInput): Repository.Return {\n const { id } = parseIdentifier(input.id);\n\n const values = this.mapper.toCmsEntry({\n id,\n app: input.app,\n name: input.name,\n steps: input.steps\n });\n\n const workflowId = createIdentifier({\n id,\n version: 1\n });\n\n try {\n const updateResult = await this.updateEntry.execute<IWorkflow>(this.model, workflowId, {\n values\n });\n\n if (updateResult.isFail()) {\n return Result.fail(new WorkflowPersistenceError(updateResult.error));\n }\n\n return Result.ok({\n ...values,\n id\n });\n } catch (error) {\n return Result.fail(new WorkflowPersistenceError(error as Error));\n }\n }\n}\n\nexport const UpdateWorkflowRepository = Repository.createImplementation({\n implementation: UpdateWorkflowRepositoryImpl,\n dependencies: [UpdateEntryUseCase, WorkflowModel, WorkflowMapper]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,kCAAkC;AAClE,SAASC,gBAAgB,QAAQ,eAAe;AAChD,SAASC,kBAAkB,QAAQ,qEAAqE;AACxG,SAAyBC,cAAc,EAAEC,aAAa;AACtD,SAASC,wBAAwB;AAEjC,SAASC,wBAAwB,IAAIC,UAAU;AAE/C,MAAMC,4BAA4B,CAAiC;EAC/DC,WAAWA,CACCC,WAAyC,EACzCC,KAA8B,EAC9BC,MAAgC,EAC1C;IAAA,KAHUF,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,MAAgC,GAAhCA,MAAgC;EACzC;EAEH,MAAMC,OAAOA,CAACC,KAA2B,EAAqB;IAC1D,MAAM;MAAEC;IAAG,CAAC,GAAGf,eAAe,CAACc,KAAK,CAACC,EAAE,CAAC;IAExC,MAAMC,MAAM,GAAG,IAAI,CAACJ,MAAM,CAACK,UAAU,CAAC;MAClCF,EAAE;MACFG,GAAG,EAAEJ,KAAK,CAACI,GAAG;MACdC,IAAI,EAAEL,KAAK,CAACK,IAAI;MAChBC,KAAK,EAAEN,KAAK,CAACM;IACjB,CAAC,CAAC;IAEF,MAAMC,UAAU,GAAGpB,gBAAgB,CAAC;MAChCc,EAAE;MACFO,OAAO,EAAE;IACb,CAAC,CAAC;IAEF,IAAI;MACA,MAAMC,YAAY,GAAG,MAAM,IAAI,CAACb,WAAW,CAACG,OAAO,CAAY,IAAI,CAACF,KAAK,EAAEU,UAAU,EAAE;QACnFL;MACJ,CAAC,CAAC;MAEF,IAAIO,YAAY,CAACC,MAAM,CAAC,CAAC,EAAE;QACvB,OAAOzB,MAAM,CAAC0B,IAAI,CAAC,IAAIpB,wBAAwB,CAACkB,YAAY,CAACG,KAAK,CAAC,CAAC;MACxE;MAEA,OAAO3B,MAAM,CAAC4B,EAAE,CAAC;QACb,GAAGX,MAAM;QACTD;MACJ,CAAC,CAAC;IACN,CAAC,CAAC,OAAOW,KAAK,EAAE;MACZ,OAAO3B,MAAM,CAAC0B,IAAI,CAAC,IAAIpB,wBAAwB,CAACqB,KAAc,CAAC,CAAC;IACpE;EACJ;AACJ;AAEA,OAAO,MAAMpB,wBAAwB,GAAGC,UAAU,CAACqB,oBAAoB,CAAC;EACpEC,cAAc,EAAErB,4BAA4B;EAC5CsB,YAAY,EAAE,CAAC5B,kBAAkB,EAAEE,aAAa,EAAED,cAAc;AACpE,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
2
+ import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
3
+ import { UpdateWorkflowRepository, UpdateWorkflowUseCase as UseCase } from "./abstractions.js";
4
+ declare class UpdateWorkflowUseCaseImpl implements UseCase.Interface {
5
+ private identityContext;
6
+ private eventPublisher;
7
+ private repository;
8
+ constructor(identityContext: IdentityContext.Interface, eventPublisher: EventPublisher.Interface, repository: UpdateWorkflowRepository.Interface);
9
+ execute(input: UseCase.Input, original: UseCase.Input): UseCase.Return;
10
+ private ensureManageAccess;
11
+ }
12
+ export declare const UpdateWorkflowUseCase: typeof UpdateWorkflowUseCaseImpl & {
13
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateWorkflowUseCase>;
14
+ };
15
+ export {};
@@ -0,0 +1,59 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
3
+ import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
4
+ import { UpdateWorkflowRepository, UpdateWorkflowUseCase as UseCase } from "./abstractions.js";
5
+ import { WorkflowAfterUpdateEvent, WorkflowBeforeUpdateEvent } from "./events.js";
6
+ import { WorkflowNotAuthorizedError } from "../../../domain/workflow/errors.js";
7
+ import { WORKFLOWS_PERMISSION } from "../../../constants.js";
8
+ import { WorkflowsSecurityPermissionAccessLevel } from "../../../types.js";
9
+ class UpdateWorkflowUseCaseImpl {
10
+ constructor(identityContext, eventPublisher, repository) {
11
+ this.identityContext = identityContext;
12
+ this.eventPublisher = eventPublisher;
13
+ this.repository = repository;
14
+ }
15
+ async execute(input, original) {
16
+ const hasAccess = await this.ensureManageAccess();
17
+ if (hasAccess.isFail()) {
18
+ return Result.fail(hasAccess.error);
19
+ }
20
+ const workflow = {
21
+ id: input.id,
22
+ app: input.app,
23
+ name: input.name,
24
+ steps: input.steps
25
+ };
26
+ await this.eventPublisher.publish(new WorkflowBeforeUpdateEvent({
27
+ workflow,
28
+ original,
29
+ input
30
+ }));
31
+ const result = await this.repository.execute(input);
32
+ if (result.isFail()) {
33
+ return result;
34
+ }
35
+ await this.eventPublisher.publish(new WorkflowAfterUpdateEvent({
36
+ workflow: result.value,
37
+ original,
38
+ input
39
+ }));
40
+ return Result.ok(result.value);
41
+ }
42
+ async ensureManageAccess() {
43
+ const permissions = await this.identityContext.getPermissions(WORKFLOWS_PERMISSION);
44
+ for (const permission of permissions) {
45
+ if (permission.name === "*") {
46
+ return Result.ok();
47
+ } else if (permission.editor === WorkflowsSecurityPermissionAccessLevel.YES) {
48
+ return Result.ok();
49
+ }
50
+ }
51
+ return Result.fail(new WorkflowNotAuthorizedError("You cannot manage workflows."));
52
+ }
53
+ }
54
+ export const UpdateWorkflowUseCase = UseCase.createImplementation({
55
+ implementation: UpdateWorkflowUseCaseImpl,
56
+ dependencies: [IdentityContext, EventPublisher, UpdateWorkflowRepository]
57
+ });
58
+
59
+ //# sourceMappingURL=UpdateWorkflowUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","IdentityContext","EventPublisher","UpdateWorkflowRepository","UpdateWorkflowUseCase","UseCase","WorkflowAfterUpdateEvent","WorkflowBeforeUpdateEvent","WorkflowNotAuthorizedError","WORKFLOWS_PERMISSION","WorkflowsSecurityPermissionAccessLevel","UpdateWorkflowUseCaseImpl","constructor","identityContext","eventPublisher","repository","execute","input","original","hasAccess","ensureManageAccess","isFail","fail","error","workflow","id","app","name","steps","publish","result","value","ok","permissions","getPermissions","permission","editor","YES","createImplementation","implementation","dependencies"],"sources":["UpdateWorkflowUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { IdentityContext } from \"@webiny/api-core/features/IdentityContext\";\nimport { EventPublisher } from \"@webiny/api-core/features/EventPublisher\";\nimport { UpdateWorkflowRepository, UpdateWorkflowUseCase as UseCase } from \"./abstractions.js\";\nimport { WorkflowAfterUpdateEvent, WorkflowBeforeUpdateEvent } from \"./events.js\";\nimport { WorkflowNotAuthorizedError } from \"~/domain/workflow/errors.js\";\nimport { WORKFLOWS_PERMISSION } from \"~/constants.js\";\nimport type { IWorkflowsSecurityPermission } from \"~/types.js\";\nimport { WorkflowsSecurityPermissionAccessLevel } from \"~/types.js\";\n\nclass UpdateWorkflowUseCaseImpl implements UseCase.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: UpdateWorkflowRepository.Interface\n ) {}\n\n async execute(input: UseCase.Input, original: UseCase.Input): UseCase.Return {\n const hasAccess = await this.ensureManageAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\n const workflow = {\n id: input.id,\n app: input.app,\n name: input.name,\n steps: input.steps\n };\n\n await this.eventPublisher.publish(\n new WorkflowBeforeUpdateEvent({\n workflow,\n original,\n input\n })\n );\n\n const result = await this.repository.execute(input);\n if (result.isFail()) {\n return result;\n }\n\n await this.eventPublisher.publish(\n new WorkflowAfterUpdateEvent({\n workflow: result.value,\n original,\n input\n })\n );\n\n return Result.ok(result.value);\n }\n\n private async ensureManageAccess(): Promise<Result<void, WorkflowNotAuthorizedError>> {\n const permissions =\n await this.identityContext.getPermissions<IWorkflowsSecurityPermission>(\n WORKFLOWS_PERMISSION\n );\n\n for (const permission of permissions) {\n if (permission.name === \"*\") {\n return Result.ok();\n } else if (permission.editor === WorkflowsSecurityPermissionAccessLevel.YES) {\n return Result.ok();\n }\n }\n\n return Result.fail(new WorkflowNotAuthorizedError(\"You cannot manage workflows.\"));\n }\n}\n\nexport const UpdateWorkflowUseCase = UseCase.createImplementation({\n implementation: UpdateWorkflowUseCaseImpl,\n dependencies: [IdentityContext, EventPublisher, UpdateWorkflowRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,2CAA2C;AAC3E,SAASC,cAAc,QAAQ,0CAA0C;AACzE,SAASC,wBAAwB,EAAEC,qBAAqB,IAAIC,OAAO;AACnE,SAASC,wBAAwB,EAAEC,yBAAyB;AAC5D,SAASC,0BAA0B;AACnC,SAASC,oBAAoB;AAE7B,SAASC,sCAAsC;AAE/C,MAAMC,yBAAyB,CAA8B;EACzDC,WAAWA,CACCC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA8C,EACxD;IAAA,KAHUF,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,UAA8C,GAA9CA,UAA8C;EACvD;EAEH,MAAMC,OAAOA,CAACC,KAAoB,EAAEC,QAAuB,EAAkB;IACzE,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACC,kBAAkB,CAAC,CAAC;IACjD,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOrB,MAAM,CAACsB,IAAI,CAACH,SAAS,CAACI,KAAK,CAAC;IACvC;IAEA,MAAMC,QAAQ,GAAG;MACbC,EAAE,EAAER,KAAK,CAACQ,EAAE;MACZC,GAAG,EAAET,KAAK,CAACS,GAAG;MACdC,IAAI,EAAEV,KAAK,CAACU,IAAI;MAChBC,KAAK,EAAEX,KAAK,CAACW;IACjB,CAAC;IAED,MAAM,IAAI,CAACd,cAAc,CAACe,OAAO,CAC7B,IAAItB,yBAAyB,CAAC;MAC1BiB,QAAQ;MACRN,QAAQ;MACRD;IACJ,CAAC,CACL,CAAC;IAED,MAAMa,MAAM,GAAG,MAAM,IAAI,CAACf,UAAU,CAACC,OAAO,CAACC,KAAK,CAAC;IACnD,IAAIa,MAAM,CAACT,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOS,MAAM;IACjB;IAEA,MAAM,IAAI,CAAChB,cAAc,CAACe,OAAO,CAC7B,IAAIvB,wBAAwB,CAAC;MACzBkB,QAAQ,EAAEM,MAAM,CAACC,KAAK;MACtBb,QAAQ;MACRD;IACJ,CAAC,CACL,CAAC;IAED,OAAOjB,MAAM,CAACgC,EAAE,CAACF,MAAM,CAACC,KAAK,CAAC;EAClC;EAEA,MAAcX,kBAAkBA,CAAA,EAAsD;IAClF,MAAMa,WAAW,GACb,MAAM,IAAI,CAACpB,eAAe,CAACqB,cAAc,CACrCzB,oBACJ,CAAC;IAEL,KAAK,MAAM0B,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAIE,UAAU,CAACR,IAAI,KAAK,GAAG,EAAE;QACzB,OAAO3B,MAAM,CAACgC,EAAE,CAAC,CAAC;MACtB,CAAC,MAAM,IAAIG,UAAU,CAACC,MAAM,KAAK1B,sCAAsC,CAAC2B,GAAG,EAAE;QACzE,OAAOrC,MAAM,CAACgC,EAAE,CAAC,CAAC;MACtB;IACJ;IAEA,OAAOhC,MAAM,CAACsB,IAAI,CAAC,IAAId,0BAA0B,CAAC,8BAA8B,CAAC,CAAC;EACtF;AACJ;AAEA,OAAO,MAAMJ,qBAAqB,GAAGC,OAAO,CAACiC,oBAAoB,CAAC;EAC9DC,cAAc,EAAE5B,yBAAyB;EACzC6B,YAAY,EAAE,CAACvC,eAAe,EAAEC,cAAc,EAAEC,wBAAwB;AAC5E,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,57 @@
1
+ import type { Result } from "@webiny/feature/api";
2
+ import type { IWorkflow } from "../../../domain/workflow/abstractions.js";
3
+ import type { NonEmptyArray } from "@webiny/api/types.js";
4
+ import { type WorkflowNotAuthorizedError, type WorkflowPersistenceError, type WorkflowValidationError } from "../../../domain/workflow/errors.js";
5
+ import type { IWorkflowStepInput } from "../../../features/shared/abstractions.js";
6
+ export interface IUpdateWorkflowInput {
7
+ app: string;
8
+ id: string;
9
+ name: string;
10
+ steps: NonEmptyArray<IWorkflowStepInput>;
11
+ }
12
+ export interface WorkflowBeforeUpdatePayload {
13
+ workflow: IWorkflow;
14
+ original: IWorkflow;
15
+ input: IUpdateWorkflowInput;
16
+ }
17
+ export interface WorkflowAfterUpdatePayload {
18
+ workflow: IWorkflow;
19
+ original: IWorkflow;
20
+ input: IUpdateWorkflowInput;
21
+ }
22
+ /**
23
+ * UpdateWorkflow use case interface
24
+ */
25
+ export interface IUpdateWorkflowUseCase {
26
+ execute(input: IUpdateWorkflowInput, original: IWorkflow): Promise<Result<IWorkflow, UseCaseError>>;
27
+ }
28
+ export interface IUpdateWorkflowUseCaseErrors {
29
+ notAuthorized: WorkflowNotAuthorizedError;
30
+ persistence: WorkflowPersistenceError;
31
+ validation: WorkflowValidationError;
32
+ }
33
+ type UseCaseError = IUpdateWorkflowUseCaseErrors[keyof IUpdateWorkflowUseCaseErrors];
34
+ export declare const UpdateWorkflowUseCase: import("@webiny/di").Abstraction<IUpdateWorkflowUseCase>;
35
+ export declare namespace UpdateWorkflowUseCase {
36
+ type Interface = IUpdateWorkflowUseCase;
37
+ type Input = IUpdateWorkflowInput;
38
+ type Return = Promise<Result<IWorkflow, UseCaseError>>;
39
+ type Error = UseCaseError;
40
+ }
41
+ /**
42
+ * UpdateWorkflow repository interface
43
+ */
44
+ export interface IUpdateWorkflowRepository {
45
+ execute(input: IUpdateWorkflowInput): Promise<Result<IWorkflow, RepositoryError>>;
46
+ }
47
+ export interface IUpdateWorkflowRepositoryErrors {
48
+ persistence: WorkflowPersistenceError;
49
+ }
50
+ type RepositoryError = IUpdateWorkflowRepositoryErrors[keyof IUpdateWorkflowRepositoryErrors];
51
+ export declare const UpdateWorkflowRepository: import("@webiny/di").Abstraction<IUpdateWorkflowRepository>;
52
+ export declare namespace UpdateWorkflowRepository {
53
+ type Interface = IUpdateWorkflowRepository;
54
+ type Return = Promise<Result<IWorkflow, RepositoryError>>;
55
+ type Error = RepositoryError;
56
+ }
57
+ export {};
@@ -0,0 +1,19 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+
3
+ // Input types
4
+
5
+ // Event payloads
6
+
7
+ /**
8
+ * UpdateWorkflow use case interface
9
+ */
10
+
11
+ export const UpdateWorkflowUseCase = createAbstraction("UpdateWorkflowUseCase");
12
+
13
+ /**
14
+ * UpdateWorkflow repository interface
15
+ */
16
+
17
+ export const UpdateWorkflowRepository = createAbstraction("UpdateWorkflowRepository");
18
+
19
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","UpdateWorkflowUseCase","UpdateWorkflowRepository"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport {\n type WorkflowNotAuthorizedError,\n type WorkflowPersistenceError,\n type WorkflowValidationError\n} from \"~/domain/workflow/errors.js\";\nimport type { IWorkflowStepInput } from \"~/features/shared/abstractions.js\";\n\n// Input types\nexport interface IUpdateWorkflowInput {\n app: string;\n id: string;\n name: string;\n steps: NonEmptyArray<IWorkflowStepInput>;\n}\n\n// Event payloads\nexport interface WorkflowBeforeUpdatePayload {\n workflow: IWorkflow;\n original: IWorkflow;\n input: IUpdateWorkflowInput;\n}\n\nexport interface WorkflowAfterUpdatePayload {\n workflow: IWorkflow;\n original: IWorkflow;\n input: IUpdateWorkflowInput;\n}\n\n/**\n * UpdateWorkflow use case interface\n */\nexport interface IUpdateWorkflowUseCase {\n execute(\n input: IUpdateWorkflowInput,\n original: IWorkflow\n ): Promise<Result<IWorkflow, UseCaseError>>;\n}\n\nexport interface IUpdateWorkflowUseCaseErrors {\n notAuthorized: WorkflowNotAuthorizedError;\n persistence: WorkflowPersistenceError;\n validation: WorkflowValidationError;\n}\n\ntype UseCaseError = IUpdateWorkflowUseCaseErrors[keyof IUpdateWorkflowUseCaseErrors];\n\nexport const UpdateWorkflowUseCase =\n createAbstraction<IUpdateWorkflowUseCase>(\"UpdateWorkflowUseCase\");\n\nexport namespace UpdateWorkflowUseCase {\n export type Interface = IUpdateWorkflowUseCase;\n export type Input = IUpdateWorkflowInput;\n export type Return = Promise<Result<IWorkflow, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * UpdateWorkflow repository interface\n */\nexport interface IUpdateWorkflowRepository {\n execute(input: IUpdateWorkflowInput): Promise<Result<IWorkflow, RepositoryError>>;\n}\n\nexport interface IUpdateWorkflowRepositoryErrors {\n persistence: WorkflowPersistenceError;\n}\n\ntype RepositoryError = IUpdateWorkflowRepositoryErrors[keyof IUpdateWorkflowRepositoryErrors];\n\nexport const UpdateWorkflowRepository = createAbstraction<IUpdateWorkflowRepository>(\n \"UpdateWorkflowRepository\"\n);\n\nexport namespace UpdateWorkflowRepository {\n export type Interface = IUpdateWorkflowRepository;\n export type Return = Promise<Result<IWorkflow, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAWvD;;AAQA;;AAaA;AACA;AACA;;AAgBA,OAAO,MAAMC,qBAAqB,GAC9BD,iBAAiB,CAAyB,uBAAuB,CAAC;;AAStE;AACA;AACA;;AAWA,OAAO,MAAME,wBAAwB,GAAGF,iBAAiB,CACrD,0BACJ,CAAC","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import type { IEventHandler } from "@webiny/api-core/features/EventPublisher";
3
+ import type { WorkflowBeforeUpdatePayload, WorkflowAfterUpdatePayload } from "./abstractions.js";
4
+ export declare class WorkflowBeforeUpdateEvent extends DomainEvent<WorkflowBeforeUpdatePayload> {
5
+ eventType: "workflow.beforeUpdate";
6
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<WorkflowBeforeUpdateEvent>>;
7
+ }
8
+ export declare const WorkflowBeforeUpdateHandler: import("@webiny/di").Abstraction<IEventHandler<WorkflowBeforeUpdateEvent>>;
9
+ export declare namespace WorkflowBeforeUpdateHandler {
10
+ type Interface = IEventHandler<WorkflowBeforeUpdateEvent>;
11
+ type Event = WorkflowBeforeUpdateEvent;
12
+ }
13
+ export declare class WorkflowAfterUpdateEvent extends DomainEvent<WorkflowAfterUpdatePayload> {
14
+ eventType: "workflow.afterUpdate";
15
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<WorkflowAfterUpdateEvent>>;
16
+ }
17
+ export declare const WorkflowAfterUpdateHandler: import("@webiny/di").Abstraction<IEventHandler<WorkflowAfterUpdateEvent>>;
18
+ export declare namespace WorkflowAfterUpdateHandler {
19
+ type Interface = IEventHandler<WorkflowAfterUpdateEvent>;
20
+ type Event = WorkflowAfterUpdateEvent;
21
+ }
@@ -0,0 +1,20 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
3
+ // Before update event
4
+ export class WorkflowBeforeUpdateEvent extends DomainEvent {
5
+ eventType = "workflow.beforeUpdate";
6
+ getHandlerAbstraction() {
7
+ return WorkflowBeforeUpdateHandler;
8
+ }
9
+ }
10
+ export const WorkflowBeforeUpdateHandler = createAbstraction("WorkflowBeforeUpdateHandler");
11
+ // After update event
12
+ export class WorkflowAfterUpdateEvent extends DomainEvent {
13
+ eventType = "workflow.afterUpdate";
14
+ getHandlerAbstraction() {
15
+ return WorkflowAfterUpdateHandler;
16
+ }
17
+ }
18
+ export const WorkflowAfterUpdateHandler = createAbstraction("WorkflowAfterUpdateHandler");
19
+
20
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","DomainEvent","WorkflowBeforeUpdateEvent","eventType","getHandlerAbstraction","WorkflowBeforeUpdateHandler","WorkflowAfterUpdateEvent","WorkflowAfterUpdateHandler"],"sources":["events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WorkflowBeforeUpdatePayload, WorkflowAfterUpdatePayload } from \"./abstractions.js\";\n\n// Before update event\nexport class WorkflowBeforeUpdateEvent extends DomainEvent<WorkflowBeforeUpdatePayload> {\n eventType = \"workflow.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return WorkflowBeforeUpdateHandler;\n }\n}\n\nexport const WorkflowBeforeUpdateHandler = createAbstraction<\n IEventHandler<WorkflowBeforeUpdateEvent>\n>(\"WorkflowBeforeUpdateHandler\");\n\nexport namespace WorkflowBeforeUpdateHandler {\n export type Interface = IEventHandler<WorkflowBeforeUpdateEvent>;\n export type Event = WorkflowBeforeUpdateEvent;\n}\n\n// After update event\nexport class WorkflowAfterUpdateEvent extends DomainEvent<WorkflowAfterUpdatePayload> {\n eventType = \"workflow.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return WorkflowAfterUpdateHandler;\n }\n}\n\nexport const WorkflowAfterUpdateHandler = createAbstraction<\n IEventHandler<WorkflowAfterUpdateEvent>\n>(\"WorkflowAfterUpdateHandler\");\n\nexport namespace WorkflowAfterUpdateHandler {\n export type Interface = IEventHandler<WorkflowAfterUpdateEvent>;\n export type Event = WorkflowAfterUpdateEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,WAAW,QAAQ,0CAA0C;AAItE;AACA,OAAO,MAAMC,yBAAyB,SAASD,WAAW,CAA8B;EACpFE,SAAS,GAAG,uBAAuB;EAEnCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOC,2BAA2B;EACtC;AACJ;AAEA,OAAO,MAAMA,2BAA2B,GAAGL,iBAAiB,CAE1D,6BAA6B,CAAC;AAOhC;AACA,OAAO,MAAMM,wBAAwB,SAASL,WAAW,CAA6B;EAClFE,SAAS,GAAG,sBAAsB;EAElCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOG,0BAA0B;EACrC;AACJ;AAEA,OAAO,MAAMA,0BAA0B,GAAGP,iBAAiB,CAEzD,4BAA4B,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const UpdateWorkflowFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;