@webiny/api-workflows 0.0.0-unstable.81ae05e56b → 0.0.0-unstable.9f53ea597d

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 (373) hide show
  1. package/constants.js +4 -3
  2. package/constants.js.map +1 -1
  3. package/domain/notifications/abstractions.js +8 -7
  4. package/domain/notifications/abstractions.js.map +1 -1
  5. package/domain/notifications/errors.js +7 -7
  6. package/domain/notifications/errors.js.map +1 -1
  7. package/domain/workflow/WorkflowMapper.js +22 -23
  8. package/domain/workflow/WorkflowMapper.js.map +1 -1
  9. package/domain/workflow/abstractions.js +3 -3
  10. package/domain/workflow/abstractions.js.map +1 -1
  11. package/domain/workflow/errors.js +26 -29
  12. package/domain/workflow/errors.js.map +1 -1
  13. package/domain/workflow/workflowModel.js +27 -25
  14. package/domain/workflow/workflowModel.js.map +1 -1
  15. package/domain/workflowState/WorkflowState.d.ts +1 -0
  16. package/domain/workflowState/WorkflowState.js +219 -319
  17. package/domain/workflowState/WorkflowState.js.map +1 -1
  18. package/domain/workflowState/WorkflowStateMapper.js +38 -35
  19. package/domain/workflowState/WorkflowStateMapper.js.map +1 -1
  20. package/domain/workflowState/abstractions.d.ts +3 -0
  21. package/domain/workflowState/abstractions.js +9 -9
  22. package/domain/workflowState/abstractions.js.map +1 -1
  23. package/domain/workflowState/errors.js +109 -122
  24. package/domain/workflowState/errors.js.map +1 -1
  25. package/domain/workflowState/guards/canReview.js +2 -3
  26. package/domain/workflowState/guards/canReview.js.map +1 -1
  27. package/domain/workflowState/guards/canTakeOver.js +2 -3
  28. package/domain/workflowState/guards/canTakeOver.js.map +1 -1
  29. package/domain/workflowState/guards/isInReview.js +2 -3
  30. package/domain/workflowState/guards/isInReview.js.map +1 -1
  31. package/domain/workflowState/guards/isRejected.js +2 -3
  32. package/domain/workflowState/guards/isRejected.js.map +1 -1
  33. package/domain/workflowState/guards/isStepOwner.js +2 -3
  34. package/domain/workflowState/guards/isStepOwner.js.map +1 -1
  35. package/domain/workflowState/stateModel.js +60 -51
  36. package/domain/workflowState/stateModel.js.map +1 -1
  37. package/features/internal/GetUserTeams/GetUserTeamsUseCase.js +20 -27
  38. package/features/internal/GetUserTeams/GetUserTeamsUseCase.js.map +1 -1
  39. package/features/internal/GetUserTeams/abstractions.js +2 -1
  40. package/features/internal/GetUserTeams/abstractions.js.map +1 -1
  41. package/features/internal/GetUserTeams/feature.d.ts +4 -1
  42. package/features/internal/GetUserTeams/feature.js +6 -5
  43. package/features/internal/GetUserTeams/feature.js.map +1 -1
  44. package/features/internal/GetUserTeams/index.js +0 -2
  45. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js +21 -17
  46. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js.map +1 -1
  47. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.d.ts +1 -1
  48. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js +23 -28
  49. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js.map +1 -1
  50. package/features/notifications/ListNotificationTypes/abstractions.js +3 -12
  51. package/features/notifications/ListNotificationTypes/abstractions.js.map +1 -1
  52. package/features/notifications/ListNotificationTypes/feature.d.ts +4 -1
  53. package/features/notifications/ListNotificationTypes/feature.js +7 -6
  54. package/features/notifications/ListNotificationTypes/feature.js.map +1 -1
  55. package/features/notifications/ListNotificationTypes/index.js +0 -2
  56. package/features/notifications/NotificationTransport/MailNotificationTransport.js +29 -38
  57. package/features/notifications/NotificationTransport/MailNotificationTransport.js.map +1 -1
  58. package/features/notifications/NotificationTransport/abstractions.js +2 -1
  59. package/features/notifications/NotificationTransport/abstractions.js.map +1 -1
  60. package/features/notifications/NotificationTransport/feature.d.ts +4 -1
  61. package/features/notifications/NotificationTransport/feature.js +6 -5
  62. package/features/notifications/NotificationTransport/feature.js.map +1 -1
  63. package/features/notifications/NotificationTransport/index.js +0 -2
  64. package/features/shared/abstractions.js +0 -3
  65. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js +35 -34
  66. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js.map +1 -1
  67. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.d.ts +2 -2
  68. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js +40 -44
  69. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js.map +1 -1
  70. package/features/workflow/CreateWorkflow/abstractions.js +3 -16
  71. package/features/workflow/CreateWorkflow/abstractions.js.map +1 -1
  72. package/features/workflow/CreateWorkflow/events.d.ts +2 -2
  73. package/features/workflow/CreateWorkflow/events.js +18 -15
  74. package/features/workflow/CreateWorkflow/events.js.map +1 -1
  75. package/features/workflow/CreateWorkflow/feature.d.ts +4 -1
  76. package/features/workflow/CreateWorkflow/feature.js +7 -6
  77. package/features/workflow/CreateWorkflow/feature.js.map +1 -1
  78. package/features/workflow/CreateWorkflow/index.js +2 -4
  79. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js +24 -22
  80. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js.map +1 -1
  81. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.d.ts +2 -2
  82. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js +40 -45
  83. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js.map +1 -1
  84. package/features/workflow/DeleteWorkflow/abstractions.js +3 -16
  85. package/features/workflow/DeleteWorkflow/abstractions.js.map +1 -1
  86. package/features/workflow/DeleteWorkflow/events.d.ts +2 -2
  87. package/features/workflow/DeleteWorkflow/events.js +18 -15
  88. package/features/workflow/DeleteWorkflow/events.js.map +1 -1
  89. package/features/workflow/DeleteWorkflow/feature.d.ts +4 -1
  90. package/features/workflow/DeleteWorkflow/feature.js +7 -6
  91. package/features/workflow/DeleteWorkflow/feature.js.map +1 -1
  92. package/features/workflow/DeleteWorkflow/index.js +2 -4
  93. package/features/workflow/GetWorkflow/GetWorkflowRepository.js +33 -34
  94. package/features/workflow/GetWorkflow/GetWorkflowRepository.js.map +1 -1
  95. package/features/workflow/GetWorkflow/GetWorkflowUseCase.js +21 -23
  96. package/features/workflow/GetWorkflow/GetWorkflowUseCase.js.map +1 -1
  97. package/features/workflow/GetWorkflow/abstractions.js +3 -12
  98. package/features/workflow/GetWorkflow/abstractions.js.map +1 -1
  99. package/features/workflow/GetWorkflow/feature.d.ts +4 -1
  100. package/features/workflow/GetWorkflow/feature.js +7 -6
  101. package/features/workflow/GetWorkflow/feature.js.map +1 -1
  102. package/features/workflow/GetWorkflow/index.js +0 -2
  103. package/features/workflow/ListWorkflows/ListWorkflowsRepository.js +47 -52
  104. package/features/workflow/ListWorkflows/ListWorkflowsRepository.js.map +1 -1
  105. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js +14 -13
  106. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js.map +1 -1
  107. package/features/workflow/ListWorkflows/abstractions.js +3 -12
  108. package/features/workflow/ListWorkflows/abstractions.js.map +1 -1
  109. package/features/workflow/ListWorkflows/feature.d.ts +4 -1
  110. package/features/workflow/ListWorkflows/feature.js +7 -6
  111. package/features/workflow/ListWorkflows/feature.js.map +1 -1
  112. package/features/workflow/ListWorkflows/index.js +0 -2
  113. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js +24 -26
  114. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js.map +1 -1
  115. package/features/workflow/StoreWorkflow/abstractions.js +2 -8
  116. package/features/workflow/StoreWorkflow/abstractions.js.map +1 -1
  117. package/features/workflow/StoreWorkflow/feature.d.ts +4 -1
  118. package/features/workflow/StoreWorkflow/feature.js +8 -10
  119. package/features/workflow/StoreWorkflow/feature.js.map +1 -1
  120. package/features/workflow/StoreWorkflow/index.js +0 -2
  121. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js +38 -37
  122. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js.map +1 -1
  123. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.d.ts +2 -2
  124. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js +42 -46
  125. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js.map +1 -1
  126. package/features/workflow/UpdateWorkflow/abstractions.js +3 -16
  127. package/features/workflow/UpdateWorkflow/abstractions.js.map +1 -1
  128. package/features/workflow/UpdateWorkflow/events.d.ts +2 -2
  129. package/features/workflow/UpdateWorkflow/events.js +18 -15
  130. package/features/workflow/UpdateWorkflow/events.js.map +1 -1
  131. package/features/workflow/UpdateWorkflow/feature.d.ts +4 -1
  132. package/features/workflow/UpdateWorkflow/feature.js +7 -6
  133. package/features/workflow/UpdateWorkflow/feature.js.map +1 -1
  134. package/features/workflow/UpdateWorkflow/index.js +2 -4
  135. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js +26 -27
  136. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js.map +1 -1
  137. package/features/workflowState/ApproveWorkflowStateStep/abstractions.js +2 -1
  138. package/features/workflowState/ApproveWorkflowStateStep/abstractions.js.map +1 -1
  139. package/features/workflowState/ApproveWorkflowStateStep/events.d.ts +2 -2
  140. package/features/workflowState/ApproveWorkflowStateStep/events.js +10 -7
  141. package/features/workflowState/ApproveWorkflowStateStep/events.js.map +1 -1
  142. package/features/workflowState/ApproveWorkflowStateStep/feature.d.ts +4 -1
  143. package/features/workflowState/ApproveWorkflowStateStep/feature.js +6 -5
  144. package/features/workflowState/ApproveWorkflowStateStep/feature.js.map +1 -1
  145. package/features/workflowState/ApproveWorkflowStateStep/index.js +0 -2
  146. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js +21 -19
  147. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js.map +1 -1
  148. package/features/workflowState/CancelWorkflowState/abstractions.js +2 -6
  149. package/features/workflowState/CancelWorkflowState/abstractions.js.map +1 -1
  150. package/features/workflowState/CancelWorkflowState/events.d.ts +2 -2
  151. package/features/workflowState/CancelWorkflowState/events.js +10 -7
  152. package/features/workflowState/CancelWorkflowState/events.js.map +1 -1
  153. package/features/workflowState/CancelWorkflowState/feature.d.ts +4 -1
  154. package/features/workflowState/CancelWorkflowState/feature.js +6 -5
  155. package/features/workflowState/CancelWorkflowState/feature.js.map +1 -1
  156. package/features/workflowState/CancelWorkflowState/index.js +0 -2
  157. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js +25 -22
  158. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js.map +1 -1
  159. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.d.ts +5 -3
  160. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js +88 -92
  161. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js.map +1 -1
  162. package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.d.ts +9 -0
  163. package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js +13 -0
  164. package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js.map +1 -0
  165. package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.d.ts +13 -0
  166. package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js +5 -0
  167. package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js.map +1 -0
  168. package/features/workflowState/CreateWorkflowState/abstractions.js +3 -12
  169. package/features/workflowState/CreateWorkflowState/abstractions.js.map +1 -1
  170. package/features/workflowState/CreateWorkflowState/events.d.ts +2 -2
  171. package/features/workflowState/CreateWorkflowState/events.js +10 -7
  172. package/features/workflowState/CreateWorkflowState/events.js.map +1 -1
  173. package/features/workflowState/CreateWorkflowState/feature.d.ts +4 -1
  174. package/features/workflowState/CreateWorkflowState/feature.js +9 -6
  175. package/features/workflowState/CreateWorkflowState/feature.js.map +1 -1
  176. package/features/workflowState/CreateWorkflowState/index.d.ts +1 -0
  177. package/features/workflowState/CreateWorkflowState/index.js +2 -3
  178. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.d.ts +2 -2
  179. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js +46 -44
  180. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js.map +1 -1
  181. package/features/workflowState/DeleteTargetWorkflowState/abstractions.js +2 -1
  182. package/features/workflowState/DeleteTargetWorkflowState/abstractions.js.map +1 -1
  183. package/features/workflowState/DeleteTargetWorkflowState/events.d.ts +2 -2
  184. package/features/workflowState/DeleteTargetWorkflowState/events.js +10 -7
  185. package/features/workflowState/DeleteTargetWorkflowState/events.js.map +1 -1
  186. package/features/workflowState/DeleteTargetWorkflowState/feature.d.ts +4 -1
  187. package/features/workflowState/DeleteTargetWorkflowState/feature.js +6 -5
  188. package/features/workflowState/DeleteTargetWorkflowState/feature.js.map +1 -1
  189. package/features/workflowState/DeleteTargetWorkflowState/index.js +0 -2
  190. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js +16 -12
  191. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js.map +1 -1
  192. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js +22 -21
  193. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js.map +1 -1
  194. package/features/workflowState/DeleteWorkflowState/abstractions.js +3 -2
  195. package/features/workflowState/DeleteWorkflowState/abstractions.js.map +1 -1
  196. package/features/workflowState/DeleteWorkflowState/feature.d.ts +4 -1
  197. package/features/workflowState/DeleteWorkflowState/feature.js +7 -6
  198. package/features/workflowState/DeleteWorkflowState/feature.js.map +1 -1
  199. package/features/workflowState/DeleteWorkflowState/index.js +1 -3
  200. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js +39 -43
  201. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js.map +1 -1
  202. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.d.ts +1 -1
  203. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js +25 -26
  204. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js.map +1 -1
  205. package/features/workflowState/GetTargetWorkflowState/abstractions.js +3 -12
  206. package/features/workflowState/GetTargetWorkflowState/abstractions.js.map +1 -1
  207. package/features/workflowState/GetTargetWorkflowState/feature.d.ts +4 -1
  208. package/features/workflowState/GetTargetWorkflowState/feature.js +7 -6
  209. package/features/workflowState/GetTargetWorkflowState/feature.js.map +1 -1
  210. package/features/workflowState/GetTargetWorkflowState/index.js +1 -3
  211. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js +26 -23
  212. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js.map +1 -1
  213. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.d.ts +1 -1
  214. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js +24 -21
  215. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js.map +1 -1
  216. package/features/workflowState/GetWorkflowState/abstractions.js +3 -12
  217. package/features/workflowState/GetWorkflowState/abstractions.js.map +1 -1
  218. package/features/workflowState/GetWorkflowState/feature.d.ts +4 -1
  219. package/features/workflowState/GetWorkflowState/feature.js +7 -6
  220. package/features/workflowState/GetWorkflowState/feature.js.map +1 -1
  221. package/features/workflowState/GetWorkflowState/index.js +1 -3
  222. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.d.ts +1 -1
  223. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js +34 -33
  224. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js.map +1 -1
  225. package/features/workflowState/ListOwnWorkflowStates/abstractions.js +2 -6
  226. package/features/workflowState/ListOwnWorkflowStates/abstractions.js.map +1 -1
  227. package/features/workflowState/ListOwnWorkflowStates/feature.d.ts +4 -1
  228. package/features/workflowState/ListOwnWorkflowStates/feature.js +6 -5
  229. package/features/workflowState/ListOwnWorkflowStates/feature.js.map +1 -1
  230. package/features/workflowState/ListOwnWorkflowStates/index.js +0 -2
  231. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.d.ts +1 -1
  232. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js +42 -39
  233. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js.map +1 -1
  234. package/features/workflowState/ListRequestedWorkflowStates/abstractions.js +2 -6
  235. package/features/workflowState/ListRequestedWorkflowStates/abstractions.js.map +1 -1
  236. package/features/workflowState/ListRequestedWorkflowStates/feature.d.ts +4 -1
  237. package/features/workflowState/ListRequestedWorkflowStates/feature.js +6 -5
  238. package/features/workflowState/ListRequestedWorkflowStates/feature.js.map +1 -1
  239. package/features/workflowState/ListRequestedWorkflowStates/index.js +0 -2
  240. package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.d.ts +9 -0
  241. package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.js +13 -0
  242. package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.js.map +1 -0
  243. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js +35 -32
  244. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js.map +1 -1
  245. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.d.ts +4 -2
  246. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js +58 -27
  247. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js.map +1 -1
  248. package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.d.ts +8 -0
  249. package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.js +5 -0
  250. package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.js.map +1 -0
  251. package/features/workflowState/ListWorkflowStates/abstractions.js +3 -12
  252. package/features/workflowState/ListWorkflowStates/abstractions.js.map +1 -1
  253. package/features/workflowState/ListWorkflowStates/feature.d.ts +4 -1
  254. package/features/workflowState/ListWorkflowStates/feature.js +9 -6
  255. package/features/workflowState/ListWorkflowStates/feature.js.map +1 -1
  256. package/features/workflowState/ListWorkflowStates/index.d.ts +1 -0
  257. package/features/workflowState/ListWorkflowStates/index.js +2 -3
  258. package/features/workflowState/README.md +2 -2
  259. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js +26 -27
  260. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js.map +1 -1
  261. package/features/workflowState/RejectWorkflowStateStep/abstractions.js +2 -1
  262. package/features/workflowState/RejectWorkflowStateStep/abstractions.js.map +1 -1
  263. package/features/workflowState/RejectWorkflowStateStep/events.d.ts +2 -2
  264. package/features/workflowState/RejectWorkflowStateStep/events.js +10 -7
  265. package/features/workflowState/RejectWorkflowStateStep/events.js.map +1 -1
  266. package/features/workflowState/RejectWorkflowStateStep/feature.d.ts +4 -1
  267. package/features/workflowState/RejectWorkflowStateStep/feature.js +6 -5
  268. package/features/workflowState/RejectWorkflowStateStep/feature.js.map +1 -1
  269. package/features/workflowState/RejectWorkflowStateStep/index.js +0 -2
  270. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js +26 -27
  271. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js.map +1 -1
  272. package/features/workflowState/StartWorkflowStateStep/abstractions.js +2 -1
  273. package/features/workflowState/StartWorkflowStateStep/abstractions.js.map +1 -1
  274. package/features/workflowState/StartWorkflowStateStep/events.d.ts +2 -2
  275. package/features/workflowState/StartWorkflowStateStep/events.js +10 -7
  276. package/features/workflowState/StartWorkflowStateStep/events.js.map +1 -1
  277. package/features/workflowState/StartWorkflowStateStep/feature.d.ts +4 -1
  278. package/features/workflowState/StartWorkflowStateStep/feature.js +6 -5
  279. package/features/workflowState/StartWorkflowStateStep/feature.js.map +1 -1
  280. package/features/workflowState/StartWorkflowStateStep/index.js +0 -2
  281. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js +26 -27
  282. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js.map +1 -1
  283. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js +2 -1
  284. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js.map +1 -1
  285. package/features/workflowState/TakeOverWorkflowStateStep/events.d.ts +2 -2
  286. package/features/workflowState/TakeOverWorkflowStateStep/events.js +10 -7
  287. package/features/workflowState/TakeOverWorkflowStateStep/events.js.map +1 -1
  288. package/features/workflowState/TakeOverWorkflowStateStep/feature.d.ts +4 -1
  289. package/features/workflowState/TakeOverWorkflowStateStep/feature.js +6 -5
  290. package/features/workflowState/TakeOverWorkflowStateStep/feature.js.map +1 -1
  291. package/features/workflowState/TakeOverWorkflowStateStep/index.js +0 -2
  292. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js +39 -37
  293. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js.map +1 -1
  294. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.d.ts +2 -2
  295. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js +45 -43
  296. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js.map +1 -1
  297. package/features/workflowState/UpdateWorkflowState/abstractions.js +3 -12
  298. package/features/workflowState/UpdateWorkflowState/abstractions.js.map +1 -1
  299. package/features/workflowState/UpdateWorkflowState/events.d.ts +2 -2
  300. package/features/workflowState/UpdateWorkflowState/events.js +10 -7
  301. package/features/workflowState/UpdateWorkflowState/events.js.map +1 -1
  302. package/features/workflowState/UpdateWorkflowState/feature.d.ts +4 -1
  303. package/features/workflowState/UpdateWorkflowState/feature.js +7 -6
  304. package/features/workflowState/UpdateWorkflowState/feature.js.map +1 -1
  305. package/features/workflowState/UpdateWorkflowState/index.js +1 -3
  306. package/graphql/notifications.js +21 -24
  307. package/graphql/notifications.js.map +1 -1
  308. package/graphql/validation/approveWorkflowState.js +4 -3
  309. package/graphql/validation/approveWorkflowState.js.map +1 -1
  310. package/graphql/validation/cancelWorkflowState.js +3 -2
  311. package/graphql/validation/cancelWorkflowState.js.map +1 -1
  312. package/graphql/validation/createWorkflowState.js +5 -4
  313. package/graphql/validation/createWorkflowState.js.map +1 -1
  314. package/graphql/validation/deleteWorkflow.js +4 -3
  315. package/graphql/validation/deleteWorkflow.js.map +1 -1
  316. package/graphql/validation/getTargetWorkflowState.js +4 -3
  317. package/graphql/validation/getTargetWorkflowState.js.map +1 -1
  318. package/graphql/validation/getWorkflow.js +4 -3
  319. package/graphql/validation/getWorkflow.js.map +1 -1
  320. package/graphql/validation/getWorkflowState.js +3 -2
  321. package/graphql/validation/getWorkflowState.js.map +1 -1
  322. package/graphql/validation/listWorkflowStates.d.ts +5 -5
  323. package/graphql/validation/listWorkflowStates.js +30 -36
  324. package/graphql/validation/listWorkflowStates.js.map +1 -1
  325. package/graphql/validation/listWorkflows.d.ts +1 -1
  326. package/graphql/validation/listWorkflows.js +15 -18
  327. package/graphql/validation/listWorkflows.js.map +1 -1
  328. package/graphql/validation/rejectWorkflowState.js +4 -3
  329. package/graphql/validation/rejectWorkflowState.js.map +1 -1
  330. package/graphql/validation/startWorkflowState.js +3 -2
  331. package/graphql/validation/startWorkflowState.js.map +1 -1
  332. package/graphql/validation/step.js +12 -17
  333. package/graphql/validation/step.js.map +1 -1
  334. package/graphql/validation/storeWorkflow.js +5 -4
  335. package/graphql/validation/storeWorkflow.js.map +1 -1
  336. package/graphql/validation/takeOverWorkflowStateStep.js +3 -2
  337. package/graphql/validation/takeOverWorkflowStateStep.js.map +1 -1
  338. package/graphql/validation/workflow.js +4 -5
  339. package/graphql/validation/workflow.js.map +1 -1
  340. package/graphql/workflowState.js +133 -202
  341. package/graphql/workflowState.js.map +1 -1
  342. package/graphql/workflows.js +54 -79
  343. package/graphql/workflows.js.map +1 -1
  344. package/index.d.ts +1 -1
  345. package/index.js +62 -69
  346. package/index.js.map +1 -1
  347. package/package.json +25 -21
  348. package/types.js +0 -3
  349. package/features/internal/GetUserTeams/index.js.map +0 -1
  350. package/features/notifications/ListNotificationTypes/index.js.map +0 -1
  351. package/features/notifications/NotificationTransport/index.js.map +0 -1
  352. package/features/shared/abstractions.js.map +0 -1
  353. package/features/workflow/CreateWorkflow/index.js.map +0 -1
  354. package/features/workflow/DeleteWorkflow/index.js.map +0 -1
  355. package/features/workflow/GetWorkflow/index.js.map +0 -1
  356. package/features/workflow/ListWorkflows/index.js.map +0 -1
  357. package/features/workflow/StoreWorkflow/index.js.map +0 -1
  358. package/features/workflow/UpdateWorkflow/index.js.map +0 -1
  359. package/features/workflowState/ApproveWorkflowStateStep/index.js.map +0 -1
  360. package/features/workflowState/CancelWorkflowState/index.js.map +0 -1
  361. package/features/workflowState/CreateWorkflowState/index.js.map +0 -1
  362. package/features/workflowState/DeleteTargetWorkflowState/index.js.map +0 -1
  363. package/features/workflowState/DeleteWorkflowState/index.js.map +0 -1
  364. package/features/workflowState/GetTargetWorkflowState/index.js.map +0 -1
  365. package/features/workflowState/GetWorkflowState/index.js.map +0 -1
  366. package/features/workflowState/ListOwnWorkflowStates/index.js.map +0 -1
  367. package/features/workflowState/ListRequestedWorkflowStates/index.js.map +0 -1
  368. package/features/workflowState/ListWorkflowStates/index.js.map +0 -1
  369. package/features/workflowState/RejectWorkflowStateStep/index.js.map +0 -1
  370. package/features/workflowState/StartWorkflowStateStep/index.js.map +0 -1
  371. package/features/workflowState/TakeOverWorkflowStateStep/index.js.map +0 -1
  372. package/features/workflowState/UpdateWorkflowState/index.js.map +0 -1
  373. package/types.js.map +0 -1
@@ -21,9 +21,8 @@ import { RejectWorkflowStateStepUseCase } from "../features/workflowState/Reject
21
21
  import { CancelWorkflowStateUseCase } from "../features/workflowState/CancelWorkflowState/index.js";
22
22
  import { TakeOverWorkflowStateStepUseCase } from "../features/workflowState/TakeOverWorkflowStateStep/index.js";
23
23
  import { WorkflowStateNotFoundError } from "../domain/workflowState/errors.js";
24
- export const createWorkflowStateSchema = () => {
25
- return new GraphQLSchemaPlugin({
26
- typeDefs: /* GraphQL */`
24
+ const createWorkflowStateSchema = ()=>new GraphQLSchemaPlugin({
25
+ typeDefs: `
27
26
  enum CmsEntryStateValue {
28
27
  pending
29
28
  inReview
@@ -113,6 +112,7 @@ export const createWorkflowStateSchema = () => {
113
112
  currentStep: WorkflowStateStep!
114
113
  nextStep: WorkflowStateStep
115
114
  previousStep: WorkflowStateStep
115
+ targetContext: JSON
116
116
  }
117
117
 
118
118
  type ListWorkflowStatesResponse {
@@ -222,206 +222,137 @@ export const createWorkflowStateSchema = () => {
222
222
  takeOverWorkflowStateStep(id: ID!): TakeOverWorkflowStateStepResponse!
223
223
  }
224
224
  `,
225
- resolvers: {
226
- WorkflowState: {
227
- isActive: parent => {
228
- return parent.isActive || false;
229
- }
230
- },
231
- WorkflowsQuery: {
232
- getWorkflowState: async (_, args, context) => {
233
- return resolve(async () => {
234
- const result = await getWorkflowStateValidation.safeParseAsync(args);
235
- if (!result.success) {
236
- throw createZodError(result.error);
237
- }
238
- const getWorkflowState = context.container.resolve(GetWorkflowStateUseCase);
239
- const stateResult = await getWorkflowState.execute(result.data.id);
240
- if (stateResult.isFail()) {
241
- throw stateResult.error;
242
- }
243
- return stateResult.value;
244
- });
245
- },
246
- getTargetWorkflowState: async (_, args, context) => {
247
- return resolve(async () => {
248
- const result = await getTargetWorkflowStateValidation.safeParseAsync(args);
249
- if (!result.success) {
250
- throw createZodError(result.error);
251
- }
252
- const getTargetWorkflowState = context.container.resolve(GetTargetWorkflowStateUseCase);
253
- const stateResult = await getTargetWorkflowState.execute({
254
- app: result.data.app,
255
- targetRevisionId: result.data.targetRevisionId
256
- });
257
- /**
258
- * TODO determine if we want to throw error or return null when not found.
259
- */
260
- if (stateResult.isFail()) {
261
- if (stateResult.error instanceof WorkflowStateNotFoundError) {
262
- return null;
263
- }
264
- throw stateResult.error;
265
- }
266
- return stateResult.value;
267
- });
268
- },
269
- listWorkflowStates: async (_, args, context) => {
270
- return resolveList(async () => {
271
- const result = await listWorkflowStatesValidation.safeParseAsync(args);
272
- if (!result.success) {
273
- throw createZodError(result.error);
274
- }
275
- const listWorkflowStates = context.container.resolve(ListWorkflowStatesUseCase);
276
- const listResult = await listWorkflowStates.execute({
277
- ...result.data,
278
- where: {
279
- values: {
280
- ...result.data?.where
281
- }
282
- }
283
- });
284
- if (listResult.isFail()) {
285
- throw listResult.error;
286
- }
287
- return listResult.value;
288
- });
289
- },
290
- listOwnWorkflowStates: async (_, args, context) => {
291
- return resolveList(async () => {
292
- const result = await listWorkflowStatesValidation.safeParseAsync(args);
293
- if (!result.success) {
294
- throw createZodError(result.error);
295
- }
296
- const listOwnWorkflowStates = context.container.resolve(ListOwnWorkflowStatesUseCase);
297
- const listResult = await listOwnWorkflowStates.execute({
298
- ...result.data,
299
- where: {
300
- values: {
301
- ...result.data?.where
302
- }
303
- }
304
- });
305
- if (listResult.isFail()) {
306
- throw listResult.error;
307
- }
308
- return listResult.value;
309
- });
310
- },
311
- listRequestedWorkflowStates: async (_, args, context) => {
312
- return resolveList(async () => {
313
- const result = await listWorkflowStatesValidation.safeParseAsync(args);
314
- if (!result.success) {
315
- throw createZodError(result.error);
316
- }
317
- const listRequestedWorkflowStates = context.container.resolve(ListRequestedWorkflowStatesUseCase);
318
- const listResult = await listRequestedWorkflowStates.execute({
319
- ...result.data,
320
- where: {
321
- values: {
322
- ...result.data?.where
323
- }
324
- }
325
- });
326
- if (listResult.isFail()) {
327
- throw listResult.error;
328
- }
329
- return listResult.value;
330
- });
331
- }
332
- },
333
- WorkflowsMutation: {
334
- createWorkflowState: async (_, args, context) => {
335
- return resolve(async () => {
336
- const result = await createWorkflowStateValidation.safeParseAsync(args);
337
- if (!result.success) {
338
- throw createZodError(result.error);
339
- }
340
- const createWorkflowState = context.container.resolve(CreateWorkflowStateUseCase);
341
- const createResult = await createWorkflowState.execute({
342
- app: result.data.app,
343
- targetRevisionId: result.data.targetRevisionId,
344
- title: result.data.title
345
- });
346
- if (createResult.isFail()) {
347
- throw createResult.error;
348
- }
349
- return createResult.value;
350
- });
351
- },
352
- startWorkflowStateStep(_, args, context) {
353
- return resolve(async () => {
354
- const result = await startWorkflowStateValidation.safeParseAsync(args);
355
- if (!result.success) {
356
- throw createZodError(result.error);
357
- }
358
- const startWorkflowStateStep = context.container.resolve(StartWorkflowStateStepUseCase);
359
- const startResult = await startWorkflowStateStep.execute(result.data.id);
360
- if (startResult.isFail()) {
361
- throw startResult.error;
362
- }
363
- return startResult.value;
364
- });
365
- },
366
- approveWorkflowStateStep: (_, args, context) => {
367
- return resolve(async () => {
368
- const result = await approveWorkflowStateValidation.safeParseAsync(args);
369
- if (!result.success) {
370
- throw createZodError(result.error);
371
- }
372
- const approveWorkflowStateStep = context.container.resolve(ApproveWorkflowStateStepUseCase);
373
- const approveResult = await approveWorkflowStateStep.execute(result.data.id, result.data.comment);
374
- if (approveResult.isFail()) {
375
- throw approveResult.error;
376
- }
377
- return approveResult.value;
378
- });
379
- },
380
- rejectWorkflowStateStep: (_, args, context) => {
381
- return resolve(async () => {
382
- const result = await rejectWorkflowStateValidation.safeParseAsync(args);
383
- if (!result.success) {
384
- throw createZodError(result.error);
385
- }
386
- const rejectWorkflowStateStep = context.container.resolve(RejectWorkflowStateStepUseCase);
387
- const rejectResult = await rejectWorkflowStateStep.execute(result.data.id, result.data.comment);
388
- if (rejectResult.isFail()) {
389
- throw rejectResult.error;
390
- }
391
- return rejectResult.value;
392
- });
393
- },
394
- cancelWorkflowState: (_, args, context) => {
395
- return resolve(async () => {
396
- const result = await cancelWorkflowStateValidation.safeParseAsync(args);
397
- if (!result.success) {
398
- throw createZodError(result.error);
399
- }
400
- const cancelWorkflowState = context.container.resolve(CancelWorkflowStateUseCase);
401
- const cancelResult = await cancelWorkflowState.execute(result.data.id);
402
- if (cancelResult.isFail()) {
403
- throw cancelResult.error;
404
- }
405
- return true;
406
- });
407
- },
408
- takeOverWorkflowStateStep: (_, args, context) => {
409
- return resolve(async () => {
410
- const result = await takeOverWorkflowStateStepValidation.safeParseAsync(args);
411
- if (!result.success) {
412
- throw createZodError(result.error);
413
- }
414
- const takeOverWorkflowStateStep = context.container.resolve(TakeOverWorkflowStateStepUseCase);
415
- const takeOverResult = await takeOverWorkflowStateStep.execute(result.data.id);
416
- if (takeOverResult.isFail()) {
417
- throw takeOverResult.error;
225
+ resolvers: {
226
+ WorkflowState: {
227
+ isActive: (parent)=>parent.isActive || false
228
+ },
229
+ WorkflowsQuery: {
230
+ getWorkflowState: async (_, args, context)=>resolve(async ()=>{
231
+ const result = await getWorkflowStateValidation.safeParseAsync(args);
232
+ if (!result.success) throw createZodError(result.error);
233
+ const getWorkflowState = context.container.resolve(GetWorkflowStateUseCase);
234
+ const stateResult = await getWorkflowState.execute(result.data.id);
235
+ if (stateResult.isFail()) throw stateResult.error;
236
+ return stateResult.value;
237
+ }),
238
+ getTargetWorkflowState: async (_, args, context)=>resolve(async ()=>{
239
+ const result = await getTargetWorkflowStateValidation.safeParseAsync(args);
240
+ if (!result.success) throw createZodError(result.error);
241
+ const getTargetWorkflowState = context.container.resolve(GetTargetWorkflowStateUseCase);
242
+ const stateResult = await getTargetWorkflowState.execute({
243
+ app: result.data.app,
244
+ targetRevisionId: result.data.targetRevisionId
245
+ });
246
+ if (stateResult.isFail()) {
247
+ if (stateResult.error instanceof WorkflowStateNotFoundError) return null;
248
+ throw stateResult.error;
249
+ }
250
+ return stateResult.value;
251
+ }),
252
+ listWorkflowStates: async (_, args, context)=>resolveList(async ()=>{
253
+ const result = await listWorkflowStatesValidation.safeParseAsync(args);
254
+ if (!result.success) throw createZodError(result.error);
255
+ const listWorkflowStates = context.container.resolve(ListWorkflowStatesUseCase);
256
+ const listResult = await listWorkflowStates.execute({
257
+ ...result.data,
258
+ where: {
259
+ values: {
260
+ ...result.data?.where
261
+ }
262
+ }
263
+ });
264
+ if (listResult.isFail()) throw listResult.error;
265
+ return listResult.value;
266
+ }),
267
+ listOwnWorkflowStates: async (_, args, context)=>resolveList(async ()=>{
268
+ const result = await listWorkflowStatesValidation.safeParseAsync(args);
269
+ if (!result.success) throw createZodError(result.error);
270
+ const listOwnWorkflowStates = context.container.resolve(ListOwnWorkflowStatesUseCase);
271
+ const listResult = await listOwnWorkflowStates.execute({
272
+ ...result.data,
273
+ where: {
274
+ values: {
275
+ ...result.data?.where
276
+ }
277
+ }
278
+ });
279
+ if (listResult.isFail()) throw listResult.error;
280
+ return listResult.value;
281
+ }),
282
+ listRequestedWorkflowStates: async (_, args, context)=>resolveList(async ()=>{
283
+ const result = await listWorkflowStatesValidation.safeParseAsync(args);
284
+ if (!result.success) throw createZodError(result.error);
285
+ const listRequestedWorkflowStates = context.container.resolve(ListRequestedWorkflowStatesUseCase);
286
+ const listResult = await listRequestedWorkflowStates.execute({
287
+ ...result.data,
288
+ where: {
289
+ values: {
290
+ ...result.data?.where
291
+ }
292
+ }
293
+ });
294
+ if (listResult.isFail()) throw listResult.error;
295
+ return listResult.value;
296
+ })
297
+ },
298
+ WorkflowsMutation: {
299
+ createWorkflowState: async (_, args, context)=>resolve(async ()=>{
300
+ const result = await createWorkflowStateValidation.safeParseAsync(args);
301
+ if (!result.success) throw createZodError(result.error);
302
+ const createWorkflowState = context.container.resolve(CreateWorkflowStateUseCase);
303
+ const createResult = await createWorkflowState.execute({
304
+ app: result.data.app,
305
+ targetRevisionId: result.data.targetRevisionId,
306
+ title: result.data.title
307
+ });
308
+ if (createResult.isFail()) throw createResult.error;
309
+ return createResult.value;
310
+ }),
311
+ startWorkflowStateStep (_, args, context) {
312
+ return resolve(async ()=>{
313
+ const result = await startWorkflowStateValidation.safeParseAsync(args);
314
+ if (!result.success) throw createZodError(result.error);
315
+ const startWorkflowStateStep = context.container.resolve(StartWorkflowStateStepUseCase);
316
+ const startResult = await startWorkflowStateStep.execute(result.data.id);
317
+ if (startResult.isFail()) throw startResult.error;
318
+ return startResult.value;
319
+ });
320
+ },
321
+ approveWorkflowStateStep: (_, args, context)=>resolve(async ()=>{
322
+ const result = await approveWorkflowStateValidation.safeParseAsync(args);
323
+ if (!result.success) throw createZodError(result.error);
324
+ const approveWorkflowStateStep = context.container.resolve(ApproveWorkflowStateStepUseCase);
325
+ const approveResult = await approveWorkflowStateStep.execute(result.data.id, result.data.comment);
326
+ if (approveResult.isFail()) throw approveResult.error;
327
+ return approveResult.value;
328
+ }),
329
+ rejectWorkflowStateStep: (_, args, context)=>resolve(async ()=>{
330
+ const result = await rejectWorkflowStateValidation.safeParseAsync(args);
331
+ if (!result.success) throw createZodError(result.error);
332
+ const rejectWorkflowStateStep = context.container.resolve(RejectWorkflowStateStepUseCase);
333
+ const rejectResult = await rejectWorkflowStateStep.execute(result.data.id, result.data.comment);
334
+ if (rejectResult.isFail()) throw rejectResult.error;
335
+ return rejectResult.value;
336
+ }),
337
+ cancelWorkflowState: (_, args, context)=>resolve(async ()=>{
338
+ const result = await cancelWorkflowStateValidation.safeParseAsync(args);
339
+ if (!result.success) throw createZodError(result.error);
340
+ const cancelWorkflowState = context.container.resolve(CancelWorkflowStateUseCase);
341
+ const cancelResult = await cancelWorkflowState.execute(result.data.id);
342
+ if (cancelResult.isFail()) throw cancelResult.error;
343
+ return true;
344
+ }),
345
+ takeOverWorkflowStateStep: (_, args, context)=>resolve(async ()=>{
346
+ const result = await takeOverWorkflowStateStepValidation.safeParseAsync(args);
347
+ if (!result.success) throw createZodError(result.error);
348
+ const takeOverWorkflowStateStep = context.container.resolve(TakeOverWorkflowStateStepUseCase);
349
+ const takeOverResult = await takeOverWorkflowStateStep.execute(result.data.id);
350
+ if (takeOverResult.isFail()) throw takeOverResult.error;
351
+ return takeOverResult.value;
352
+ })
418
353
  }
419
- return takeOverResult.value;
420
- });
421
354
  }
422
- }
423
- }
424
- });
425
- };
355
+ });
356
+ export { createWorkflowStateSchema };
426
357
 
427
358
  //# sourceMappingURL=workflowState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GraphQLSchemaPlugin","resolve","resolveList","createZodError","listWorkflowStatesValidation","startWorkflowStateValidation","approveWorkflowStateValidation","rejectWorkflowStateValidation","cancelWorkflowStateValidation","createWorkflowStateValidation","getTargetWorkflowStateValidation","getWorkflowStateValidation","takeOverWorkflowStateStepValidation","GetWorkflowStateUseCase","GetTargetWorkflowStateUseCase","ListWorkflowStatesUseCase","ListOwnWorkflowStatesUseCase","ListRequestedWorkflowStatesUseCase","CreateWorkflowStateUseCase","StartWorkflowStateStepUseCase","ApproveWorkflowStateStepUseCase","RejectWorkflowStateStepUseCase","CancelWorkflowStateUseCase","TakeOverWorkflowStateStepUseCase","WorkflowStateNotFoundError","createWorkflowStateSchema","typeDefs","resolvers","WorkflowState","isActive","parent","WorkflowsQuery","getWorkflowState","_","args","context","result","safeParseAsync","success","error","container","stateResult","execute","data","id","isFail","value","getTargetWorkflowState","app","targetRevisionId","listWorkflowStates","listResult","where","values","listOwnWorkflowStates","listRequestedWorkflowStates","WorkflowsMutation","createWorkflowState","createResult","title","startWorkflowStateStep","startResult","approveWorkflowStateStep","approveResult","comment","rejectWorkflowStateStep","rejectResult","cancelWorkflowState","cancelResult","takeOverWorkflowStateStep","takeOverResult"],"sources":["workflowState.ts"],"sourcesContent":["import { GraphQLSchemaPlugin, resolve, resolveList } from \"@webiny/handler-graphql\";\nimport { createZodError } from \"@webiny/utils\";\nimport { listWorkflowStatesValidation } from \"./validation/listWorkflowStates.js\";\nimport { startWorkflowStateValidation } from \"./validation/startWorkflowState.js\";\nimport { approveWorkflowStateValidation } from \"./validation/approveWorkflowState.js\";\nimport { rejectWorkflowStateValidation } from \"./validation/rejectWorkflowState.js\";\nimport { cancelWorkflowStateValidation } from \"./validation/cancelWorkflowState.js\";\nimport { createWorkflowStateValidation } from \"./validation/createWorkflowState.js\";\nimport { getTargetWorkflowStateValidation } from \"./validation/getTargetWorkflowState.js\";\nimport { getWorkflowStateValidation } from \"./validation/getWorkflowState.js\";\nimport { takeOverWorkflowStateStepValidation } from \"./validation/takeOverWorkflowStateStep.js\";\nimport { GetWorkflowStateUseCase } from \"~/features/workflowState/GetWorkflowState/index.js\";\nimport { GetTargetWorkflowStateUseCase } from \"~/features/workflowState/GetTargetWorkflowState/index.js\";\nimport { ListWorkflowStatesUseCase } from \"~/features/workflowState/ListWorkflowStates/index.js\";\nimport { ListOwnWorkflowStatesUseCase } from \"~/features/workflowState/ListOwnWorkflowStates/index.js\";\nimport { ListRequestedWorkflowStatesUseCase } from \"~/features/workflowState/ListRequestedWorkflowStates/index.js\";\nimport { CreateWorkflowStateUseCase } from \"~/features/workflowState/CreateWorkflowState/index.js\";\nimport { StartWorkflowStateStepUseCase } from \"~/features/workflowState/StartWorkflowStateStep/index.js\";\nimport { ApproveWorkflowStateStepUseCase } from \"~/features/workflowState/ApproveWorkflowStateStep/index.js\";\nimport { RejectWorkflowStateStepUseCase } from \"~/features/workflowState/RejectWorkflowStateStep/index.js\";\nimport { CancelWorkflowStateUseCase } from \"~/features/workflowState/CancelWorkflowState/index.js\";\nimport { TakeOverWorkflowStateStepUseCase } from \"~/features/workflowState/TakeOverWorkflowStateStep/index.js\";\nimport { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\nimport { WorkflowStateNotFoundError } from \"~/domain/workflowState/errors.js\";\n\nexport const createWorkflowStateSchema = () => {\n return new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n enum CmsEntryStateValue {\n pending\n inReview\n approved\n rejected\n }\n\n type CmsEntrySystemWorkflow {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n extend type CmsEntrySystem {\n workflow: CmsEntrySystemWorkflow\n }\n\n input ListWhereInputCmsEntrySystemWorkflowStateInput {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n input ListWhereInputCmsEntrySystemWorkflowInput {\n workflowId: String\n stepId: ID\n state: ListWhereInputCmsEntrySystemWorkflowStateInput\n stepName: String\n }\n\n extend input ListWhereInputCmsEntrySystem {\n workflow: ListWhereInputCmsEntrySystemWorkflowInput\n }\n\n type WorkflowStateIdentity {\n id: String!\n displayName: String\n type: String\n }\n\n type WorkflowStateStepNotification {\n id: String!\n }\n\n type WorkflowStateStepTeam {\n id: String!\n }\n\n type WorkflowStateStep {\n # workflow related\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStateStepTeam!]!\n notifications: [WorkflowStateStepNotification!]\n # state related\n state: CmsEntryStateValue!\n comment: String\n savedBy: WorkflowStateIdentity\n # current user can take action on this step?\n canReview: Boolean!\n # is current user an owner of the step?\n isOwner: Boolean!\n # can current user take over this step?\n canTakeOver: Boolean!\n }\n\n type WorkflowState {\n id: String!\n app: String!\n title: String!\n isActive: Boolean!\n done: Boolean!\n workflowId: String!\n targetId: String!\n targetRevisionId: String!\n comment: String\n state: CmsEntryStateValue!\n steps: [WorkflowStateStep!]\n createdOn: DateTime!\n savedOn: DateTime!\n createdBy: WorkflowStateIdentity!\n savedBy: WorkflowStateIdentity!\n currentStep: WorkflowStateStep!\n nextStep: WorkflowStateStep\n previousStep: WorkflowStateStep\n }\n\n type ListWorkflowStatesResponse {\n data: [WorkflowState!]\n error: WorkflowError\n meta: ListWorkflowsMeta\n }\n\n enum ListWorkflowStatesSort {\n createdOn_ASC\n createdOn_DESC\n savedOn_ASC\n savedOn_DESC\n }\n\n input ListWorkflowStatesWhereStepsInput {\n id: String\n id_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n savedBy: String\n savedBy_in: [String!]\n }\n\n input ListWorkflowStatesWhereTeamsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereNotificationsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereInput {\n app: String\n app_in: [String!]\n workflowId: String\n workflowId_in: [String!]\n targetId: String\n targetId_in: [String!]\n targetRevisionId: String\n targetRevisionId_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n createdOn_gte: DateTime\n createdOn_lte: DateTime\n savedOn_gte: DateTime\n savedOn_lte: DateTime\n createdBy: String\n savedBy: String\n isActive: Boolean\n steps: ListWorkflowStatesWhereStepsInput\n teams: ListWorkflowStatesWhereTeamsInput\n notifications: ListWorkflowStatesWhereNotificationsInput\n }\n\n type WorkflowStateResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n type CancelWorkflowStateResponse {\n data: Boolean\n error: WorkflowError\n }\n\n type TakeOverWorkflowStateStepResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n extend type WorkflowsQuery {\n getWorkflowState(id: ID!): WorkflowStateResponse!\n # always returns active workflow state for the given targetRevisionId - or null\n getTargetWorkflowState(app: String!, targetRevisionId: ID!): WorkflowStateResponse!\n listWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listOwnWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listRequestedWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n }\n\n extend type WorkflowsMutation {\n createWorkflowState(\n app: String!\n targetRevisionId: ID!\n title: String!\n ): WorkflowStateResponse!\n startWorkflowStateStep(id: ID!): WorkflowStateResponse!\n approveWorkflowStateStep(id: ID!, comment: String): WorkflowStateResponse!\n rejectWorkflowStateStep(id: ID!, comment: String!): WorkflowStateResponse!\n cancelWorkflowState(id: ID!): CancelWorkflowStateResponse!\n takeOverWorkflowStateStep(id: ID!): TakeOverWorkflowStateStepResponse!\n }\n `,\n resolvers: {\n WorkflowState: {\n isActive: (parent: Partial<WorkflowState>) => {\n return parent.isActive || false;\n }\n },\n WorkflowsQuery: {\n getWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await getWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getWorkflowState = context.container.resolve(GetWorkflowStateUseCase);\n const stateResult = await getWorkflowState.execute(result.data.id);\n\n if (stateResult.isFail()) {\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n getTargetWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState | null>(async () => {\n const result = await getTargetWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getTargetWorkflowState = context.container.resolve(\n GetTargetWorkflowStateUseCase\n );\n const stateResult = await getTargetWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId\n });\n /**\n * TODO determine if we want to throw error or return null when not found.\n */\n if (stateResult.isFail()) {\n if (stateResult.error instanceof WorkflowStateNotFoundError) {\n return null;\n }\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n listWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listWorkflowStates =\n context.container.resolve(ListWorkflowStatesUseCase);\n const listResult = await listWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listOwnWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listOwnWorkflowStates = context.container.resolve(\n ListOwnWorkflowStatesUseCase\n );\n const listResult = await listOwnWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listRequestedWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listRequestedWorkflowStates = context.container.resolve(\n ListRequestedWorkflowStatesUseCase\n );\n const listResult = await listRequestedWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n }\n },\n WorkflowsMutation: {\n createWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await createWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const createWorkflowState = context.container.resolve(\n CreateWorkflowStateUseCase\n );\n const createResult = await createWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId,\n title: result.data.title\n });\n\n if (createResult.isFail()) {\n throw createResult.error;\n }\n\n return createResult.value;\n });\n },\n startWorkflowStateStep(_, args, context) {\n return resolve<WorkflowState>(async () => {\n const result = await startWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const startWorkflowStateStep = context.container.resolve(\n StartWorkflowStateStepUseCase\n );\n const startResult = await startWorkflowStateStep.execute(result.data.id);\n\n if (startResult.isFail()) {\n throw startResult.error;\n }\n\n return startResult.value;\n });\n },\n approveWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await approveWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const approveWorkflowStateStep = context.container.resolve(\n ApproveWorkflowStateStepUseCase\n );\n const approveResult = await approveWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (approveResult.isFail()) {\n throw approveResult.error;\n }\n\n return approveResult.value;\n });\n },\n rejectWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await rejectWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const rejectWorkflowStateStep = context.container.resolve(\n RejectWorkflowStateStepUseCase\n );\n const rejectResult = await rejectWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (rejectResult.isFail()) {\n throw rejectResult.error;\n }\n\n return rejectResult.value;\n });\n },\n cancelWorkflowState: (_, args, context) => {\n return resolve<boolean>(async () => {\n const result = await cancelWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const cancelWorkflowState = context.container.resolve(\n CancelWorkflowStateUseCase\n );\n const cancelResult = await cancelWorkflowState.execute(result.data.id);\n\n if (cancelResult.isFail()) {\n throw cancelResult.error;\n }\n\n return true;\n });\n },\n takeOverWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result =\n await takeOverWorkflowStateStepValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const takeOverWorkflowStateStep = context.container.resolve(\n TakeOverWorkflowStateStepUseCase\n );\n const takeOverResult = await takeOverWorkflowStateStep.execute(\n result.data.id\n );\n\n if (takeOverResult.isFail()) {\n throw takeOverResult.error;\n }\n\n return takeOverResult.value;\n });\n }\n }\n }\n });\n};\n"],"mappings":"AAAA,SAASA,mBAAmB,EAAEC,OAAO,EAAEC,WAAW,QAAQ,yBAAyB;AACnF,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,4BAA4B;AACrC,SAASC,4BAA4B;AACrC,SAASC,8BAA8B;AACvC,SAASC,6BAA6B;AACtC,SAASC,6BAA6B;AACtC,SAASC,6BAA6B;AACtC,SAASC,gCAAgC;AACzC,SAASC,0BAA0B;AACnC,SAASC,mCAAmC;AAC5C,SAASC,uBAAuB;AAChC,SAASC,6BAA6B;AACtC,SAASC,yBAAyB;AAClC,SAASC,4BAA4B;AACrC,SAASC,kCAAkC;AAC3C,SAASC,0BAA0B;AACnC,SAASC,6BAA6B;AACtC,SAASC,+BAA+B;AACxC,SAASC,8BAA8B;AACvC,SAASC,0BAA0B;AACnC,SAASC,gCAAgC;AAEzC,SAASC,0BAA0B;AAEnC,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAM;EAC3C,OAAO,IAAIzB,mBAAmB,CAAC;IAC3B0B,QAAQ,EAAE,aAAc;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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","ignoreList":[]}
1
+ {"version":3,"file":"graphql/workflowState.js","sources":["../../src/graphql/workflowState.ts"],"sourcesContent":["import { GraphQLSchemaPlugin, resolve, resolveList } from \"@webiny/handler-graphql\";\nimport { createZodError } from \"@webiny/utils\";\nimport { listWorkflowStatesValidation } from \"./validation/listWorkflowStates.js\";\nimport { startWorkflowStateValidation } from \"./validation/startWorkflowState.js\";\nimport { approveWorkflowStateValidation } from \"./validation/approveWorkflowState.js\";\nimport { rejectWorkflowStateValidation } from \"./validation/rejectWorkflowState.js\";\nimport { cancelWorkflowStateValidation } from \"./validation/cancelWorkflowState.js\";\nimport { createWorkflowStateValidation } from \"./validation/createWorkflowState.js\";\nimport { getTargetWorkflowStateValidation } from \"./validation/getTargetWorkflowState.js\";\nimport { getWorkflowStateValidation } from \"./validation/getWorkflowState.js\";\nimport { takeOverWorkflowStateStepValidation } from \"./validation/takeOverWorkflowStateStep.js\";\nimport { GetWorkflowStateUseCase } from \"~/features/workflowState/GetWorkflowState/index.js\";\nimport { GetTargetWorkflowStateUseCase } from \"~/features/workflowState/GetTargetWorkflowState/index.js\";\nimport { ListWorkflowStatesUseCase } from \"~/features/workflowState/ListWorkflowStates/index.js\";\nimport { ListOwnWorkflowStatesUseCase } from \"~/features/workflowState/ListOwnWorkflowStates/index.js\";\nimport { ListRequestedWorkflowStatesUseCase } from \"~/features/workflowState/ListRequestedWorkflowStates/index.js\";\nimport { CreateWorkflowStateUseCase } from \"~/features/workflowState/CreateWorkflowState/index.js\";\nimport { StartWorkflowStateStepUseCase } from \"~/features/workflowState/StartWorkflowStateStep/index.js\";\nimport { ApproveWorkflowStateStepUseCase } from \"~/features/workflowState/ApproveWorkflowStateStep/index.js\";\nimport { RejectWorkflowStateStepUseCase } from \"~/features/workflowState/RejectWorkflowStateStep/index.js\";\nimport { CancelWorkflowStateUseCase } from \"~/features/workflowState/CancelWorkflowState/index.js\";\nimport { TakeOverWorkflowStateStepUseCase } from \"~/features/workflowState/TakeOverWorkflowStateStep/index.js\";\nimport { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\nimport { WorkflowStateNotFoundError } from \"~/domain/workflowState/errors.js\";\n\nexport const createWorkflowStateSchema = () => {\n return new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n enum CmsEntryStateValue {\n pending\n inReview\n approved\n rejected\n }\n\n type CmsEntrySystemWorkflow {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n extend type CmsEntrySystem {\n workflow: CmsEntrySystemWorkflow\n }\n\n input ListWhereInputCmsEntrySystemWorkflowStateInput {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n input ListWhereInputCmsEntrySystemWorkflowInput {\n workflowId: String\n stepId: ID\n state: ListWhereInputCmsEntrySystemWorkflowStateInput\n stepName: String\n }\n\n extend input ListWhereInputCmsEntrySystem {\n workflow: ListWhereInputCmsEntrySystemWorkflowInput\n }\n\n type WorkflowStateIdentity {\n id: String!\n displayName: String\n type: String\n }\n\n type WorkflowStateStepNotification {\n id: String!\n }\n\n type WorkflowStateStepTeam {\n id: String!\n }\n\n type WorkflowStateStep {\n # workflow related\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStateStepTeam!]!\n notifications: [WorkflowStateStepNotification!]\n # state related\n state: CmsEntryStateValue!\n comment: String\n savedBy: WorkflowStateIdentity\n # current user can take action on this step?\n canReview: Boolean!\n # is current user an owner of the step?\n isOwner: Boolean!\n # can current user take over this step?\n canTakeOver: Boolean!\n }\n\n type WorkflowState {\n id: String!\n app: String!\n title: String!\n isActive: Boolean!\n done: Boolean!\n workflowId: String!\n targetId: String!\n targetRevisionId: String!\n comment: String\n state: CmsEntryStateValue!\n steps: [WorkflowStateStep!]\n createdOn: DateTime!\n savedOn: DateTime!\n createdBy: WorkflowStateIdentity!\n savedBy: WorkflowStateIdentity!\n currentStep: WorkflowStateStep!\n nextStep: WorkflowStateStep\n previousStep: WorkflowStateStep\n targetContext: JSON\n }\n\n type ListWorkflowStatesResponse {\n data: [WorkflowState!]\n error: WorkflowError\n meta: ListWorkflowsMeta\n }\n\n enum ListWorkflowStatesSort {\n createdOn_ASC\n createdOn_DESC\n savedOn_ASC\n savedOn_DESC\n }\n\n input ListWorkflowStatesWhereStepsInput {\n id: String\n id_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n savedBy: String\n savedBy_in: [String!]\n }\n\n input ListWorkflowStatesWhereTeamsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereNotificationsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereInput {\n app: String\n app_in: [String!]\n workflowId: String\n workflowId_in: [String!]\n targetId: String\n targetId_in: [String!]\n targetRevisionId: String\n targetRevisionId_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n createdOn_gte: DateTime\n createdOn_lte: DateTime\n savedOn_gte: DateTime\n savedOn_lte: DateTime\n createdBy: String\n savedBy: String\n isActive: Boolean\n steps: ListWorkflowStatesWhereStepsInput\n teams: ListWorkflowStatesWhereTeamsInput\n notifications: ListWorkflowStatesWhereNotificationsInput\n }\n\n type WorkflowStateResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n type CancelWorkflowStateResponse {\n data: Boolean\n error: WorkflowError\n }\n\n type TakeOverWorkflowStateStepResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n extend type WorkflowsQuery {\n getWorkflowState(id: ID!): WorkflowStateResponse!\n # always returns active workflow state for the given targetRevisionId - or null\n getTargetWorkflowState(app: String!, targetRevisionId: ID!): WorkflowStateResponse!\n listWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listOwnWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listRequestedWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n }\n\n extend type WorkflowsMutation {\n createWorkflowState(\n app: String!\n targetRevisionId: ID!\n title: String!\n ): WorkflowStateResponse!\n startWorkflowStateStep(id: ID!): WorkflowStateResponse!\n approveWorkflowStateStep(id: ID!, comment: String): WorkflowStateResponse!\n rejectWorkflowStateStep(id: ID!, comment: String!): WorkflowStateResponse!\n cancelWorkflowState(id: ID!): CancelWorkflowStateResponse!\n takeOverWorkflowStateStep(id: ID!): TakeOverWorkflowStateStepResponse!\n }\n `,\n resolvers: {\n WorkflowState: {\n isActive: (parent: Partial<WorkflowState>) => {\n return parent.isActive || false;\n }\n },\n WorkflowsQuery: {\n getWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await getWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getWorkflowState = context.container.resolve(GetWorkflowStateUseCase);\n const stateResult = await getWorkflowState.execute(result.data.id);\n\n if (stateResult.isFail()) {\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n getTargetWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState | null>(async () => {\n const result = await getTargetWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getTargetWorkflowState = context.container.resolve(\n GetTargetWorkflowStateUseCase\n );\n const stateResult = await getTargetWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId\n });\n /**\n * TODO determine if we want to throw error or return null when not found.\n */\n if (stateResult.isFail()) {\n if (stateResult.error instanceof WorkflowStateNotFoundError) {\n return null;\n }\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n listWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listWorkflowStates =\n context.container.resolve(ListWorkflowStatesUseCase);\n const listResult = await listWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listOwnWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listOwnWorkflowStates = context.container.resolve(\n ListOwnWorkflowStatesUseCase\n );\n const listResult = await listOwnWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listRequestedWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listRequestedWorkflowStates = context.container.resolve(\n ListRequestedWorkflowStatesUseCase\n );\n const listResult = await listRequestedWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n }\n },\n WorkflowsMutation: {\n createWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await createWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const createWorkflowState = context.container.resolve(\n CreateWorkflowStateUseCase\n );\n const createResult = await createWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId,\n title: result.data.title\n });\n\n if (createResult.isFail()) {\n throw createResult.error;\n }\n\n return createResult.value;\n });\n },\n startWorkflowStateStep(_, args, context) {\n return resolve<WorkflowState>(async () => {\n const result = await startWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const startWorkflowStateStep = context.container.resolve(\n StartWorkflowStateStepUseCase\n );\n const startResult = await startWorkflowStateStep.execute(result.data.id);\n\n if (startResult.isFail()) {\n throw startResult.error;\n }\n\n return startResult.value;\n });\n },\n approveWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await approveWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const approveWorkflowStateStep = context.container.resolve(\n ApproveWorkflowStateStepUseCase\n );\n const approveResult = await approveWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (approveResult.isFail()) {\n throw approveResult.error;\n }\n\n return approveResult.value;\n });\n },\n rejectWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await rejectWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const rejectWorkflowStateStep = context.container.resolve(\n RejectWorkflowStateStepUseCase\n );\n const rejectResult = await rejectWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (rejectResult.isFail()) {\n throw rejectResult.error;\n }\n\n return rejectResult.value;\n });\n },\n cancelWorkflowState: (_, args, context) => {\n return resolve<boolean>(async () => {\n const result = await cancelWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const cancelWorkflowState = context.container.resolve(\n CancelWorkflowStateUseCase\n );\n const cancelResult = await cancelWorkflowState.execute(result.data.id);\n\n if (cancelResult.isFail()) {\n throw cancelResult.error;\n }\n\n return true;\n });\n },\n takeOverWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result =\n await takeOverWorkflowStateStepValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const takeOverWorkflowStateStep = context.container.resolve(\n TakeOverWorkflowStateStepUseCase\n );\n const takeOverResult = await takeOverWorkflowStateStep.execute(\n result.data.id\n );\n\n if (takeOverResult.isFail()) {\n throw takeOverResult.error;\n }\n\n return takeOverResult.value;\n });\n }\n }\n }\n });\n};\n"],"names":["createWorkflowStateSchema","GraphQLSchemaPlugin","parent","_","args","context","resolve","result","getWorkflowStateValidation","createZodError","getWorkflowState","GetWorkflowStateUseCase","stateResult","getTargetWorkflowStateValidation","getTargetWorkflowState","GetTargetWorkflowStateUseCase","WorkflowStateNotFoundError","resolveList","listWorkflowStatesValidation","listWorkflowStates","ListWorkflowStatesUseCase","listResult","listOwnWorkflowStates","ListOwnWorkflowStatesUseCase","listRequestedWorkflowStates","ListRequestedWorkflowStatesUseCase","createWorkflowStateValidation","createWorkflowState","CreateWorkflowStateUseCase","createResult","startWorkflowStateValidation","startWorkflowStateStep","StartWorkflowStateStepUseCase","startResult","approveWorkflowStateValidation","approveWorkflowStateStep","ApproveWorkflowStateStepUseCase","approveResult","rejectWorkflowStateValidation","rejectWorkflowStateStep","RejectWorkflowStateStepUseCase","rejectResult","cancelWorkflowStateValidation","cancelWorkflowState","CancelWorkflowStateUseCase","cancelResult","takeOverWorkflowStateStepValidation","takeOverWorkflowStateStep","TakeOverWorkflowStateStepUseCase","takeOverResult"],"mappings":"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"}