@webiny/api-workflows 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7c2def32a7

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 (412) hide show
  1. package/WorkflowsFeature.d.ts +5 -0
  2. package/WorkflowsFeature.js +70 -0
  3. package/WorkflowsFeature.js.map +1 -0
  4. package/WorkflowsSchemaFactory.d.ts +9 -0
  5. package/WorkflowsSchemaFactory.js +23 -0
  6. package/WorkflowsSchemaFactory.js.map +1 -0
  7. package/constants.js +4 -3
  8. package/constants.js.map +1 -1
  9. package/domain/notifications/abstractions.js +8 -7
  10. package/domain/notifications/abstractions.js.map +1 -1
  11. package/domain/notifications/errors.js +7 -7
  12. package/domain/notifications/errors.js.map +1 -1
  13. package/domain/workflow/WorkflowMapper.js +22 -23
  14. package/domain/workflow/WorkflowMapper.js.map +1 -1
  15. package/domain/workflow/abstractions.d.ts +13 -3
  16. package/domain/workflow/abstractions.js +3 -3
  17. package/domain/workflow/abstractions.js.map +1 -1
  18. package/domain/workflow/errors.js +26 -29
  19. package/domain/workflow/errors.js.map +1 -1
  20. package/domain/workflow/workflowModel.js +28 -22
  21. package/domain/workflow/workflowModel.js.map +1 -1
  22. package/domain/workflowState/WorkflowState.d.ts +1 -0
  23. package/domain/workflowState/WorkflowState.js +219 -319
  24. package/domain/workflowState/WorkflowState.js.map +1 -1
  25. package/domain/workflowState/WorkflowStateMapper.js +38 -35
  26. package/domain/workflowState/WorkflowStateMapper.js.map +1 -1
  27. package/domain/workflowState/abstractions.d.ts +16 -3
  28. package/domain/workflowState/abstractions.js +9 -9
  29. package/domain/workflowState/abstractions.js.map +1 -1
  30. package/domain/workflowState/errors.js +109 -122
  31. package/domain/workflowState/errors.js.map +1 -1
  32. package/domain/workflowState/guards/canReview.js +2 -3
  33. package/domain/workflowState/guards/canReview.js.map +1 -1
  34. package/domain/workflowState/guards/canTakeOver.js +2 -3
  35. package/domain/workflowState/guards/canTakeOver.js.map +1 -1
  36. package/domain/workflowState/guards/isInReview.js +2 -3
  37. package/domain/workflowState/guards/isInReview.js.map +1 -1
  38. package/domain/workflowState/guards/isRejected.js +2 -3
  39. package/domain/workflowState/guards/isRejected.js.map +1 -1
  40. package/domain/workflowState/guards/isStepOwner.js +2 -3
  41. package/domain/workflowState/guards/isStepOwner.js.map +1 -1
  42. package/domain/workflowState/stateModel.js +61 -48
  43. package/domain/workflowState/stateModel.js.map +1 -1
  44. package/features/WorkflowModelProviders.d.ts +34 -0
  45. package/features/WorkflowModelProviders.js +40 -0
  46. package/features/WorkflowModelProviders.js.map +1 -0
  47. package/features/internal/GetUserTeams/GetUserTeamsUseCase.js +20 -27
  48. package/features/internal/GetUserTeams/GetUserTeamsUseCase.js.map +1 -1
  49. package/features/internal/GetUserTeams/abstractions.js +2 -1
  50. package/features/internal/GetUserTeams/abstractions.js.map +1 -1
  51. package/features/internal/GetUserTeams/feature.d.ts +4 -1
  52. package/features/internal/GetUserTeams/feature.js +6 -5
  53. package/features/internal/GetUserTeams/feature.js.map +1 -1
  54. package/features/internal/GetUserTeams/index.js +0 -2
  55. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js +21 -17
  56. package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js.map +1 -1
  57. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.d.ts +1 -1
  58. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js +23 -29
  59. package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js.map +1 -1
  60. package/features/notifications/ListNotificationTypes/abstractions.js +3 -12
  61. package/features/notifications/ListNotificationTypes/abstractions.js.map +1 -1
  62. package/features/notifications/ListNotificationTypes/feature.d.ts +4 -1
  63. package/features/notifications/ListNotificationTypes/feature.js +7 -6
  64. package/features/notifications/ListNotificationTypes/feature.js.map +1 -1
  65. package/features/notifications/ListNotificationTypes/index.js +0 -2
  66. package/features/notifications/NotificationTransport/MailNotificationTransport.js +29 -38
  67. package/features/notifications/NotificationTransport/MailNotificationTransport.js.map +1 -1
  68. package/features/notifications/NotificationTransport/abstractions.js +2 -1
  69. package/features/notifications/NotificationTransport/abstractions.js.map +1 -1
  70. package/features/notifications/NotificationTransport/feature.d.ts +4 -1
  71. package/features/notifications/NotificationTransport/feature.js +6 -5
  72. package/features/notifications/NotificationTransport/feature.js.map +1 -1
  73. package/features/notifications/NotificationTransport/index.js +0 -2
  74. package/features/shared/abstractions.js +0 -3
  75. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.d.ts +3 -3
  76. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js +37 -35
  77. package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js.map +1 -1
  78. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.d.ts +2 -2
  79. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js +40 -45
  80. package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js.map +1 -1
  81. package/features/workflow/CreateWorkflow/abstractions.js +3 -16
  82. package/features/workflow/CreateWorkflow/abstractions.js.map +1 -1
  83. package/features/workflow/CreateWorkflow/events.d.ts +2 -2
  84. package/features/workflow/CreateWorkflow/events.js +18 -15
  85. package/features/workflow/CreateWorkflow/events.js.map +1 -1
  86. package/features/workflow/CreateWorkflow/feature.d.ts +4 -1
  87. package/features/workflow/CreateWorkflow/feature.js +7 -6
  88. package/features/workflow/CreateWorkflow/feature.js.map +1 -1
  89. package/features/workflow/CreateWorkflow/index.js +2 -4
  90. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.d.ts +3 -3
  91. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js +26 -23
  92. package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js.map +1 -1
  93. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.d.ts +2 -2
  94. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js +40 -46
  95. package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js.map +1 -1
  96. package/features/workflow/DeleteWorkflow/abstractions.js +3 -16
  97. package/features/workflow/DeleteWorkflow/abstractions.js.map +1 -1
  98. package/features/workflow/DeleteWorkflow/events.d.ts +2 -2
  99. package/features/workflow/DeleteWorkflow/events.js +18 -15
  100. package/features/workflow/DeleteWorkflow/events.js.map +1 -1
  101. package/features/workflow/DeleteWorkflow/feature.d.ts +4 -1
  102. package/features/workflow/DeleteWorkflow/feature.js +7 -6
  103. package/features/workflow/DeleteWorkflow/feature.js.map +1 -1
  104. package/features/workflow/DeleteWorkflow/index.js +2 -4
  105. package/features/workflow/GetWorkflow/GetWorkflowRepository.d.ts +3 -3
  106. package/features/workflow/GetWorkflow/GetWorkflowRepository.js +35 -35
  107. package/features/workflow/GetWorkflow/GetWorkflowRepository.js.map +1 -1
  108. package/features/workflow/GetWorkflow/GetWorkflowUseCase.js +21 -23
  109. package/features/workflow/GetWorkflow/GetWorkflowUseCase.js.map +1 -1
  110. package/features/workflow/GetWorkflow/abstractions.js +3 -12
  111. package/features/workflow/GetWorkflow/abstractions.js.map +1 -1
  112. package/features/workflow/GetWorkflow/feature.d.ts +4 -1
  113. package/features/workflow/GetWorkflow/feature.js +7 -6
  114. package/features/workflow/GetWorkflow/feature.js.map +1 -1
  115. package/features/workflow/GetWorkflow/index.js +0 -2
  116. package/features/workflow/ListWorkflows/ListWorkflowsRepository.d.ts +3 -3
  117. package/features/workflow/ListWorkflows/ListWorkflowsRepository.js +49 -53
  118. package/features/workflow/ListWorkflows/ListWorkflowsRepository.js.map +1 -1
  119. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js +14 -13
  120. package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js.map +1 -1
  121. package/features/workflow/ListWorkflows/abstractions.js +3 -12
  122. package/features/workflow/ListWorkflows/abstractions.js.map +1 -1
  123. package/features/workflow/ListWorkflows/feature.d.ts +4 -1
  124. package/features/workflow/ListWorkflows/feature.js +7 -6
  125. package/features/workflow/ListWorkflows/feature.js.map +1 -1
  126. package/features/workflow/ListWorkflows/index.js +0 -2
  127. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js +24 -26
  128. package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js.map +1 -1
  129. package/features/workflow/StoreWorkflow/abstractions.js +2 -8
  130. package/features/workflow/StoreWorkflow/abstractions.js.map +1 -1
  131. package/features/workflow/StoreWorkflow/feature.d.ts +4 -1
  132. package/features/workflow/StoreWorkflow/feature.js +8 -10
  133. package/features/workflow/StoreWorkflow/feature.js.map +1 -1
  134. package/features/workflow/StoreWorkflow/index.js +0 -2
  135. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.d.ts +3 -3
  136. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js +40 -38
  137. package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js.map +1 -1
  138. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.d.ts +2 -2
  139. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js +42 -47
  140. package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js.map +1 -1
  141. package/features/workflow/UpdateWorkflow/abstractions.js +3 -16
  142. package/features/workflow/UpdateWorkflow/abstractions.js.map +1 -1
  143. package/features/workflow/UpdateWorkflow/events.d.ts +2 -2
  144. package/features/workflow/UpdateWorkflow/events.js +18 -15
  145. package/features/workflow/UpdateWorkflow/events.js.map +1 -1
  146. package/features/workflow/UpdateWorkflow/feature.d.ts +4 -1
  147. package/features/workflow/UpdateWorkflow/feature.js +7 -6
  148. package/features/workflow/UpdateWorkflow/feature.js.map +1 -1
  149. package/features/workflow/UpdateWorkflow/index.js +2 -4
  150. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js +26 -27
  151. package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js.map +1 -1
  152. package/features/workflowState/ApproveWorkflowStateStep/abstractions.js +2 -1
  153. package/features/workflowState/ApproveWorkflowStateStep/abstractions.js.map +1 -1
  154. package/features/workflowState/ApproveWorkflowStateStep/events.d.ts +2 -2
  155. package/features/workflowState/ApproveWorkflowStateStep/events.js +10 -7
  156. package/features/workflowState/ApproveWorkflowStateStep/events.js.map +1 -1
  157. package/features/workflowState/ApproveWorkflowStateStep/feature.d.ts +4 -1
  158. package/features/workflowState/ApproveWorkflowStateStep/feature.js +6 -5
  159. package/features/workflowState/ApproveWorkflowStateStep/feature.js.map +1 -1
  160. package/features/workflowState/ApproveWorkflowStateStep/index.js +0 -2
  161. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js +21 -19
  162. package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js.map +1 -1
  163. package/features/workflowState/CancelWorkflowState/abstractions.js +2 -6
  164. package/features/workflowState/CancelWorkflowState/abstractions.js.map +1 -1
  165. package/features/workflowState/CancelWorkflowState/events.d.ts +2 -2
  166. package/features/workflowState/CancelWorkflowState/events.js +10 -7
  167. package/features/workflowState/CancelWorkflowState/events.js.map +1 -1
  168. package/features/workflowState/CancelWorkflowState/feature.d.ts +4 -1
  169. package/features/workflowState/CancelWorkflowState/feature.js +6 -5
  170. package/features/workflowState/CancelWorkflowState/feature.js.map +1 -1
  171. package/features/workflowState/CancelWorkflowState/index.js +0 -2
  172. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.d.ts +3 -3
  173. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js +27 -23
  174. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js.map +1 -1
  175. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.d.ts +5 -3
  176. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js +89 -92
  177. package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js.map +1 -1
  178. package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.d.ts +9 -0
  179. package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js +13 -0
  180. package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js.map +1 -0
  181. package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.d.ts +13 -0
  182. package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js +5 -0
  183. package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js.map +1 -0
  184. package/features/workflowState/CreateWorkflowState/abstractions.js +3 -12
  185. package/features/workflowState/CreateWorkflowState/abstractions.js.map +1 -1
  186. package/features/workflowState/CreateWorkflowState/events.d.ts +2 -2
  187. package/features/workflowState/CreateWorkflowState/events.js +10 -7
  188. package/features/workflowState/CreateWorkflowState/events.js.map +1 -1
  189. package/features/workflowState/CreateWorkflowState/feature.d.ts +4 -1
  190. package/features/workflowState/CreateWorkflowState/feature.js +9 -6
  191. package/features/workflowState/CreateWorkflowState/feature.js.map +1 -1
  192. package/features/workflowState/CreateWorkflowState/index.d.ts +1 -0
  193. package/features/workflowState/CreateWorkflowState/index.js +2 -3
  194. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.d.ts +2 -2
  195. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js +47 -44
  196. package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js.map +1 -1
  197. package/features/workflowState/DeleteTargetWorkflowState/abstractions.js +2 -1
  198. package/features/workflowState/DeleteTargetWorkflowState/abstractions.js.map +1 -1
  199. package/features/workflowState/DeleteTargetWorkflowState/events.d.ts +2 -2
  200. package/features/workflowState/DeleteTargetWorkflowState/events.js +10 -7
  201. package/features/workflowState/DeleteTargetWorkflowState/events.js.map +1 -1
  202. package/features/workflowState/DeleteTargetWorkflowState/feature.d.ts +4 -1
  203. package/features/workflowState/DeleteTargetWorkflowState/feature.js +6 -5
  204. package/features/workflowState/DeleteTargetWorkflowState/feature.js.map +1 -1
  205. package/features/workflowState/DeleteTargetWorkflowState/index.js +0 -2
  206. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.d.ts +3 -3
  207. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js +18 -13
  208. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js.map +1 -1
  209. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js +22 -21
  210. package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js.map +1 -1
  211. package/features/workflowState/DeleteWorkflowState/abstractions.js +3 -2
  212. package/features/workflowState/DeleteWorkflowState/abstractions.js.map +1 -1
  213. package/features/workflowState/DeleteWorkflowState/feature.d.ts +4 -1
  214. package/features/workflowState/DeleteWorkflowState/feature.js +7 -6
  215. package/features/workflowState/DeleteWorkflowState/feature.js.map +1 -1
  216. package/features/workflowState/DeleteWorkflowState/index.js +1 -3
  217. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.d.ts +3 -3
  218. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js +40 -43
  219. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js.map +1 -1
  220. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.d.ts +1 -1
  221. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js +26 -26
  222. package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js.map +1 -1
  223. package/features/workflowState/GetTargetWorkflowState/abstractions.js +3 -12
  224. package/features/workflowState/GetTargetWorkflowState/abstractions.js.map +1 -1
  225. package/features/workflowState/GetTargetWorkflowState/feature.d.ts +4 -1
  226. package/features/workflowState/GetTargetWorkflowState/feature.js +7 -6
  227. package/features/workflowState/GetTargetWorkflowState/feature.js.map +1 -1
  228. package/features/workflowState/GetTargetWorkflowState/index.js +1 -3
  229. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.d.ts +3 -3
  230. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js +27 -23
  231. package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js.map +1 -1
  232. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.d.ts +1 -1
  233. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js +25 -21
  234. package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js.map +1 -1
  235. package/features/workflowState/GetWorkflowState/abstractions.js +3 -12
  236. package/features/workflowState/GetWorkflowState/abstractions.js.map +1 -1
  237. package/features/workflowState/GetWorkflowState/feature.d.ts +4 -1
  238. package/features/workflowState/GetWorkflowState/feature.js +7 -6
  239. package/features/workflowState/GetWorkflowState/feature.js.map +1 -1
  240. package/features/workflowState/GetWorkflowState/index.js +1 -3
  241. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.d.ts +1 -1
  242. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js +34 -33
  243. package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js.map +1 -1
  244. package/features/workflowState/ListOwnWorkflowStates/abstractions.js +2 -6
  245. package/features/workflowState/ListOwnWorkflowStates/abstractions.js.map +1 -1
  246. package/features/workflowState/ListOwnWorkflowStates/feature.d.ts +4 -1
  247. package/features/workflowState/ListOwnWorkflowStates/feature.js +6 -5
  248. package/features/workflowState/ListOwnWorkflowStates/feature.js.map +1 -1
  249. package/features/workflowState/ListOwnWorkflowStates/index.js +0 -2
  250. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.d.ts +1 -1
  251. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js +42 -39
  252. package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js.map +1 -1
  253. package/features/workflowState/ListRequestedWorkflowStates/abstractions.js +2 -6
  254. package/features/workflowState/ListRequestedWorkflowStates/abstractions.js.map +1 -1
  255. package/features/workflowState/ListRequestedWorkflowStates/feature.d.ts +4 -1
  256. package/features/workflowState/ListRequestedWorkflowStates/feature.js +6 -5
  257. package/features/workflowState/ListRequestedWorkflowStates/feature.js.map +1 -1
  258. package/features/workflowState/ListRequestedWorkflowStates/index.js +0 -2
  259. package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.d.ts +9 -0
  260. package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.js +13 -0
  261. package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.js.map +1 -0
  262. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.d.ts +3 -3
  263. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js +37 -33
  264. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js.map +1 -1
  265. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.d.ts +4 -2
  266. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js +59 -27
  267. package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js.map +1 -1
  268. package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.d.ts +8 -0
  269. package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.js +5 -0
  270. package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.js.map +1 -0
  271. package/features/workflowState/ListWorkflowStates/abstractions.d.ts +18 -3
  272. package/features/workflowState/ListWorkflowStates/abstractions.js +3 -12
  273. package/features/workflowState/ListWorkflowStates/abstractions.js.map +1 -1
  274. package/features/workflowState/ListWorkflowStates/feature.d.ts +4 -1
  275. package/features/workflowState/ListWorkflowStates/feature.js +9 -6
  276. package/features/workflowState/ListWorkflowStates/feature.js.map +1 -1
  277. package/features/workflowState/ListWorkflowStates/index.d.ts +1 -0
  278. package/features/workflowState/ListWorkflowStates/index.js +2 -3
  279. package/features/workflowState/README.md +2 -2
  280. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js +26 -27
  281. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js.map +1 -1
  282. package/features/workflowState/RejectWorkflowStateStep/abstractions.js +2 -1
  283. package/features/workflowState/RejectWorkflowStateStep/abstractions.js.map +1 -1
  284. package/features/workflowState/RejectWorkflowStateStep/events.d.ts +2 -2
  285. package/features/workflowState/RejectWorkflowStateStep/events.js +10 -7
  286. package/features/workflowState/RejectWorkflowStateStep/events.js.map +1 -1
  287. package/features/workflowState/RejectWorkflowStateStep/feature.d.ts +4 -1
  288. package/features/workflowState/RejectWorkflowStateStep/feature.js +6 -5
  289. package/features/workflowState/RejectWorkflowStateStep/feature.js.map +1 -1
  290. package/features/workflowState/RejectWorkflowStateStep/index.js +0 -2
  291. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js +26 -27
  292. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js.map +1 -1
  293. package/features/workflowState/StartWorkflowStateStep/abstractions.js +2 -1
  294. package/features/workflowState/StartWorkflowStateStep/abstractions.js.map +1 -1
  295. package/features/workflowState/StartWorkflowStateStep/events.d.ts +2 -2
  296. package/features/workflowState/StartWorkflowStateStep/events.js +10 -7
  297. package/features/workflowState/StartWorkflowStateStep/events.js.map +1 -1
  298. package/features/workflowState/StartWorkflowStateStep/feature.d.ts +4 -1
  299. package/features/workflowState/StartWorkflowStateStep/feature.js +6 -5
  300. package/features/workflowState/StartWorkflowStateStep/feature.js.map +1 -1
  301. package/features/workflowState/StartWorkflowStateStep/index.js +0 -2
  302. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js +26 -27
  303. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js.map +1 -1
  304. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js +2 -1
  305. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js.map +1 -1
  306. package/features/workflowState/TakeOverWorkflowStateStep/events.d.ts +2 -2
  307. package/features/workflowState/TakeOverWorkflowStateStep/events.js +10 -7
  308. package/features/workflowState/TakeOverWorkflowStateStep/events.js.map +1 -1
  309. package/features/workflowState/TakeOverWorkflowStateStep/feature.d.ts +4 -1
  310. package/features/workflowState/TakeOverWorkflowStateStep/feature.js +6 -5
  311. package/features/workflowState/TakeOverWorkflowStateStep/feature.js.map +1 -1
  312. package/features/workflowState/TakeOverWorkflowStateStep/index.js +0 -2
  313. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.d.ts +3 -3
  314. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js +40 -37
  315. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js.map +1 -1
  316. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.d.ts +2 -2
  317. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js +46 -43
  318. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js.map +1 -1
  319. package/features/workflowState/UpdateWorkflowState/abstractions.js +3 -12
  320. package/features/workflowState/UpdateWorkflowState/abstractions.js.map +1 -1
  321. package/features/workflowState/UpdateWorkflowState/events.d.ts +2 -2
  322. package/features/workflowState/UpdateWorkflowState/events.js +10 -7
  323. package/features/workflowState/UpdateWorkflowState/events.js.map +1 -1
  324. package/features/workflowState/UpdateWorkflowState/feature.d.ts +4 -1
  325. package/features/workflowState/UpdateWorkflowState/feature.js +7 -6
  326. package/features/workflowState/UpdateWorkflowState/feature.js.map +1 -1
  327. package/features/workflowState/UpdateWorkflowState/index.js +1 -3
  328. package/graphql/notifications.d.ts +2 -2
  329. package/graphql/notifications.js +44 -46
  330. package/graphql/notifications.js.map +1 -1
  331. package/graphql/validation/approveWorkflowState.d.ts +1 -7
  332. package/graphql/validation/approveWorkflowState.js +4 -3
  333. package/graphql/validation/approveWorkflowState.js.map +1 -1
  334. package/graphql/validation/cancelWorkflowState.d.ts +1 -5
  335. package/graphql/validation/cancelWorkflowState.js +3 -2
  336. package/graphql/validation/cancelWorkflowState.js.map +1 -1
  337. package/graphql/validation/createWorkflowState.d.ts +1 -9
  338. package/graphql/validation/createWorkflowState.js +5 -4
  339. package/graphql/validation/createWorkflowState.js.map +1 -1
  340. package/graphql/validation/deleteWorkflow.d.ts +1 -7
  341. package/graphql/validation/deleteWorkflow.js +4 -3
  342. package/graphql/validation/deleteWorkflow.js.map +1 -1
  343. package/graphql/validation/getTargetWorkflowState.d.ts +1 -7
  344. package/graphql/validation/getTargetWorkflowState.js +4 -3
  345. package/graphql/validation/getTargetWorkflowState.js.map +1 -1
  346. package/graphql/validation/getWorkflow.d.ts +1 -7
  347. package/graphql/validation/getWorkflow.js +4 -3
  348. package/graphql/validation/getWorkflow.js.map +1 -1
  349. package/graphql/validation/getWorkflowState.d.ts +1 -5
  350. package/graphql/validation/getWorkflowState.js +3 -2
  351. package/graphql/validation/getWorkflowState.js.map +1 -1
  352. package/graphql/validation/listWorkflowStates.d.ts +14 -96
  353. package/graphql/validation/listWorkflowStates.js +30 -36
  354. package/graphql/validation/listWorkflowStates.js.map +1 -1
  355. package/graphql/validation/listWorkflows.d.ts +6 -36
  356. package/graphql/validation/listWorkflows.js +15 -18
  357. package/graphql/validation/listWorkflows.js.map +1 -1
  358. package/graphql/validation/rejectWorkflowState.d.ts +1 -7
  359. package/graphql/validation/rejectWorkflowState.js +4 -3
  360. package/graphql/validation/rejectWorkflowState.js.map +1 -1
  361. package/graphql/validation/startWorkflowState.d.ts +1 -5
  362. package/graphql/validation/startWorkflowState.js +3 -2
  363. package/graphql/validation/startWorkflowState.js.map +1 -1
  364. package/graphql/validation/step.d.ts +8 -36
  365. package/graphql/validation/step.js +12 -17
  366. package/graphql/validation/step.js.map +1 -1
  367. package/graphql/validation/storeWorkflow.d.ts +14 -86
  368. package/graphql/validation/storeWorkflow.js +5 -4
  369. package/graphql/validation/storeWorkflow.js.map +1 -1
  370. package/graphql/validation/takeOverWorkflowStateStep.d.ts +1 -5
  371. package/graphql/validation/takeOverWorkflowStateStep.js +3 -2
  372. package/graphql/validation/takeOverWorkflowStateStep.js.map +1 -1
  373. package/graphql/validation/workflow.d.ts +13 -60
  374. package/graphql/validation/workflow.js +4 -5
  375. package/graphql/validation/workflow.js.map +1 -1
  376. package/graphql/workflowState.d.ts +2 -2
  377. package/graphql/workflowState.js +388 -357
  378. package/graphql/workflowState.js.map +1 -1
  379. package/graphql/workflows.d.ts +2 -2
  380. package/graphql/workflows.js +201 -204
  381. package/graphql/workflows.js.map +1 -1
  382. package/index.d.ts +1 -2
  383. package/index.js +1 -102
  384. package/package.json +25 -21
  385. package/types.d.ts +11 -4
  386. package/types.js +0 -7
  387. package/features/internal/GetUserTeams/index.js.map +0 -1
  388. package/features/notifications/ListNotificationTypes/index.js.map +0 -1
  389. package/features/notifications/NotificationTransport/index.js.map +0 -1
  390. package/features/shared/abstractions.js.map +0 -1
  391. package/features/workflow/CreateWorkflow/index.js.map +0 -1
  392. package/features/workflow/DeleteWorkflow/index.js.map +0 -1
  393. package/features/workflow/GetWorkflow/index.js.map +0 -1
  394. package/features/workflow/ListWorkflows/index.js.map +0 -1
  395. package/features/workflow/StoreWorkflow/index.js.map +0 -1
  396. package/features/workflow/UpdateWorkflow/index.js.map +0 -1
  397. package/features/workflowState/ApproveWorkflowStateStep/index.js.map +0 -1
  398. package/features/workflowState/CancelWorkflowState/index.js.map +0 -1
  399. package/features/workflowState/CreateWorkflowState/index.js.map +0 -1
  400. package/features/workflowState/DeleteTargetWorkflowState/index.js.map +0 -1
  401. package/features/workflowState/DeleteWorkflowState/index.js.map +0 -1
  402. package/features/workflowState/GetTargetWorkflowState/index.js.map +0 -1
  403. package/features/workflowState/GetWorkflowState/index.js.map +0 -1
  404. package/features/workflowState/ListOwnWorkflowStates/index.js.map +0 -1
  405. package/features/workflowState/ListRequestedWorkflowStates/index.js.map +0 -1
  406. package/features/workflowState/ListWorkflowStates/index.js.map +0 -1
  407. package/features/workflowState/RejectWorkflowStateStep/index.js.map +0 -1
  408. package/features/workflowState/StartWorkflowStateStep/index.js.map +0 -1
  409. package/features/workflowState/TakeOverWorkflowStateStep/index.js.map +0 -1
  410. package/features/workflowState/UpdateWorkflowState/index.js.map +0 -1
  411. package/index.js.map +0 -1
  412. package/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["Result","createIdentifier","GetEntryByIdUseCase","WorkflowMapper","WorkflowModel","WorkflowNotFoundError","WorkflowPersistenceError","GetWorkflowRepository","Repository","GetWorkflowRepositoryImpl","constructor","getEntryById","model","mapper","execute","input","id","version","entryResult","isFail","error","code","fail","app","entry","value","values","workflow","fromCmsEntry","ok","createImplementation","implementation","dependencies"],"sources":["GetWorkflowRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { createIdentifier } from \"@webiny/utils\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById/index.js\";\nimport { type IWorkflow, WorkflowMapper, WorkflowModel } from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowNotFoundError, WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport { GetWorkflowRepository as Repository } from \"./abstractions.js\";\n\nclass GetWorkflowRepositoryImpl implements Repository.Interface {\n constructor(\n private getEntryById: GetEntryByIdUseCase.Interface,\n private model: WorkflowModel.Interface,\n private mapper: WorkflowMapper.Interface\n ) {}\n\n async execute(input: Repository.Params): Repository.Return {\n const id = createIdentifier({\n id: input.id,\n version: 1\n });\n\n const entryResult = await this.getEntryById.execute<IWorkflow>(this.model, id);\n\n if (entryResult.isFail()) {\n if (entryResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(\n new WorkflowNotFoundError({\n id: input.id,\n app: input.app\n })\n );\n }\n\n return Result.fail(new WorkflowPersistenceError(entryResult.error));\n }\n\n const entry = entryResult.value;\n\n // Check if the app matches\n if (entry.values.app !== input.app) {\n return Result.fail(\n new WorkflowNotFoundError({\n id: input.id,\n app: input.app\n })\n );\n }\n\n const workflow = this.mapper.fromCmsEntry(entry);\n return Result.ok(workflow);\n }\n}\n\nexport const GetWorkflowRepository = Repository.createImplementation({\n implementation: GetWorkflowRepositoryImpl,\n dependencies: [GetEntryByIdUseCase, WorkflowModel, WorkflowMapper]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,gBAAgB,QAAQ,eAAe;AAChD,SAASC,mBAAmB,QAAQ,sEAAsE;AAC1G,SAAyBC,cAAc,EAAEC,aAAa;AACtD,SAASC,qBAAqB,EAAEC,wBAAwB;AACxD,SAASC,qBAAqB,IAAIC,UAAU;AAE5C,MAAMC,yBAAyB,CAAiC;EAC5DC,WAAWA,CACCC,YAA2C,EAC3CC,KAA8B,EAC9BC,MAAgC,EAC1C;IAAA,KAHUF,YAA2C,GAA3CA,YAA2C;IAAA,KAC3CC,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,MAAgC,GAAhCA,MAAgC;EACzC;EAEH,MAAMC,OAAOA,CAACC,KAAwB,EAAqB;IACvD,MAAMC,EAAE,GAAGf,gBAAgB,CAAC;MACxBe,EAAE,EAAED,KAAK,CAACC,EAAE;MACZC,OAAO,EAAE;IACb,CAAC,CAAC;IAEF,MAAMC,WAAW,GAAG,MAAM,IAAI,CAACP,YAAY,CAACG,OAAO,CAAY,IAAI,CAACF,KAAK,EAAEI,EAAE,CAAC;IAE9E,IAAIE,WAAW,CAACC,MAAM,CAAC,CAAC,EAAE;MACtB,IAAID,WAAW,CAACE,KAAK,CAACC,IAAI,KAAK,oBAAoB,EAAE;QACjD,OAAOrB,MAAM,CAACsB,IAAI,CACd,IAAIjB,qBAAqB,CAAC;UACtBW,EAAE,EAAED,KAAK,CAACC,EAAE;UACZO,GAAG,EAAER,KAAK,CAACQ;QACf,CAAC,CACL,CAAC;MACL;MAEA,OAAOvB,MAAM,CAACsB,IAAI,CAAC,IAAIhB,wBAAwB,CAACY,WAAW,CAACE,KAAK,CAAC,CAAC;IACvE;IAEA,MAAMI,KAAK,GAAGN,WAAW,CAACO,KAAK;;IAE/B;IACA,IAAID,KAAK,CAACE,MAAM,CAACH,GAAG,KAAKR,KAAK,CAACQ,GAAG,EAAE;MAChC,OAAOvB,MAAM,CAACsB,IAAI,CACd,IAAIjB,qBAAqB,CAAC;QACtBW,EAAE,EAAED,KAAK,CAACC,EAAE;QACZO,GAAG,EAAER,KAAK,CAACQ;MACf,CAAC,CACL,CAAC;IACL;IAEA,MAAMI,QAAQ,GAAG,IAAI,CAACd,MAAM,CAACe,YAAY,CAACJ,KAAK,CAAC;IAChD,OAAOxB,MAAM,CAAC6B,EAAE,CAACF,QAAQ,CAAC;EAC9B;AACJ;AAEA,OAAO,MAAMpB,qBAAqB,GAAGC,UAAU,CAACsB,oBAAoB,CAAC;EACjEC,cAAc,EAAEtB,yBAAyB;EACzCuB,YAAY,EAAE,CAAC9B,mBAAmB,EAAEE,aAAa,EAAED,cAAc;AACrE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/GetWorkflow/GetWorkflowRepository.js","sources":["../../../../src/features/workflow/GetWorkflow/GetWorkflowRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { createIdentifier } from \"@webiny/utils\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById/index.js\";\nimport {\n type IWorkflow,\n WorkflowMapper,\n WorkflowModelProvider\n} from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowNotFoundError, WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport { GetWorkflowRepository as Repository } from \"./abstractions.js\";\n\nclass GetWorkflowRepositoryImpl implements Repository.Interface {\n constructor(\n private getEntryById: GetEntryByIdUseCase.Interface,\n private modelProvider: WorkflowModelProvider.Interface,\n private mapper: WorkflowMapper.Interface\n ) {}\n\n async execute(input: Repository.Params): Repository.Return {\n const model = await this.modelProvider.get();\n const id = createIdentifier({\n id: input.id,\n version: 1\n });\n\n const entryResult = await this.getEntryById.execute<IWorkflow>(model, id);\n\n if (entryResult.isFail()) {\n if (entryResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(\n new WorkflowNotFoundError({\n id: input.id,\n app: input.app\n })\n );\n }\n\n return Result.fail(new WorkflowPersistenceError(entryResult.error));\n }\n\n const entry = entryResult.value;\n\n // Check if the app matches\n if (entry.values.app !== input.app) {\n return Result.fail(\n new WorkflowNotFoundError({\n id: input.id,\n app: input.app\n })\n );\n }\n\n const workflow = this.mapper.fromCmsEntry(entry);\n return Result.ok(workflow);\n }\n}\n\nexport const GetWorkflowRepository = Repository.createImplementation({\n implementation: GetWorkflowRepositoryImpl,\n dependencies: [GetEntryByIdUseCase, WorkflowModelProvider, WorkflowMapper]\n});\n"],"names":["GetWorkflowRepositoryImpl","getEntryById","modelProvider","mapper","input","model","id","createIdentifier","entryResult","Result","WorkflowNotFoundError","WorkflowPersistenceError","entry","workflow","GetWorkflowRepository","Repository","GetEntryByIdUseCase","WorkflowModelProvider","WorkflowMapper"],"mappings":";;;;;;AAWA,MAAMA;IACF,YACYC,YAA2C,EAC3CC,aAA8C,EAC9CC,MAAgC,CAC1C;aAHUF,YAAY,GAAZA;aACAC,aAAa,GAAbA;aACAC,MAAM,GAANA;IACT;IAEH,MAAM,QAAQC,KAAwB,EAAqB;QACvD,MAAMC,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG;QAC1C,MAAMC,KAAKC,iBAAiB;YACxB,IAAIH,MAAM,EAAE;YACZ,SAAS;QACb;QAEA,MAAMI,cAAc,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAYH,OAAOC;QAEtE,IAAIE,YAAY,MAAM,IAAI;YACtB,IAAIA,AAA2B,yBAA3BA,YAAY,KAAK,CAAC,IAAI,EACtB,OAAOC,OAAO,IAAI,CACd,IAAIC,sBAAsB;gBACtB,IAAIN,MAAM,EAAE;gBACZ,KAAKA,MAAM,GAAG;YAClB;YAIR,OAAOK,OAAO,IAAI,CAAC,IAAIE,yBAAyBH,YAAY,KAAK;QACrE;QAEA,MAAMI,QAAQJ,YAAY,KAAK;QAG/B,IAAII,MAAM,MAAM,CAAC,GAAG,KAAKR,MAAM,GAAG,EAC9B,OAAOK,OAAO,IAAI,CACd,IAAIC,sBAAsB;YACtB,IAAIN,MAAM,EAAE;YACZ,KAAKA,MAAM,GAAG;QAClB;QAIR,MAAMS,WAAW,IAAI,CAAC,MAAM,CAAC,YAAY,CAACD;QAC1C,OAAOH,OAAO,EAAE,CAACI;IACrB;AACJ;AAEO,MAAMC,8CAAwBC,sBAAAA,oBAA+B,CAAC;IACjE,gBAAgBf;IAChB,cAAc;QAACgB;QAAqBC;QAAuBC;KAAe;AAC9E"}
@@ -1,34 +1,32 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { GetWorkflowRepository, GetWorkflowUseCase as UseCase } from "./abstractions.js";
2
+ import { GetWorkflowRepository, GetWorkflowUseCase } from "./abstractions.js";
3
3
  import { WorkflowNotAuthorizedError } from "../../../domain/workflow/errors.js";
4
4
  import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
5
5
  class GetWorkflowUseCaseImpl {
6
- constructor(repository, identityContext) {
7
- this.repository = repository;
8
- this.identityContext = identityContext;
9
- }
10
- async execute(input) {
11
- const hasAccess = await this.ensureHasAccess();
12
- if (hasAccess.isFail()) {
13
- return Result.fail(hasAccess.error);
6
+ constructor(repository, identityContext){
7
+ this.repository = repository;
8
+ this.identityContext = identityContext;
14
9
  }
15
- const result = await this.repository.execute(input);
16
- if (result.isFail()) {
17
- return result;
10
+ async execute(input) {
11
+ const hasAccess = await this.ensureHasAccess();
12
+ if (hasAccess.isFail()) return Result.fail(hasAccess.error);
13
+ const result = await this.repository.execute(input);
14
+ if (result.isFail()) return result;
15
+ return Result.ok(result.value);
18
16
  }
19
- return Result.ok(result.value);
20
- }
21
- async ensureHasAccess() {
22
- const identity = this.identityContext.getIdentity();
23
- if (!identity.isAnonymous()) {
24
- return Result.ok();
17
+ async ensureHasAccess() {
18
+ const identity = this.identityContext.getIdentity();
19
+ if (!identity.isAnonymous()) return Result.ok();
20
+ return Result.fail(new WorkflowNotAuthorizedError("You do not have access to workflows."));
25
21
  }
26
- return Result.fail(new WorkflowNotAuthorizedError("You do not have access to workflows."));
27
- }
28
22
  }
29
- export const GetWorkflowUseCase = UseCase.createImplementation({
30
- implementation: GetWorkflowUseCaseImpl,
31
- dependencies: [GetWorkflowRepository, IdentityContext]
23
+ const GetWorkflowUseCase_GetWorkflowUseCase = GetWorkflowUseCase.createImplementation({
24
+ implementation: GetWorkflowUseCaseImpl,
25
+ dependencies: [
26
+ GetWorkflowRepository,
27
+ IdentityContext
28
+ ]
32
29
  });
30
+ export { GetWorkflowUseCase_GetWorkflowUseCase as GetWorkflowUseCase };
33
31
 
34
32
  //# sourceMappingURL=GetWorkflowUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","GetWorkflowRepository","GetWorkflowUseCase","UseCase","WorkflowNotAuthorizedError","IdentityContext","GetWorkflowUseCaseImpl","constructor","repository","identityContext","execute","input","hasAccess","ensureHasAccess","isFail","fail","error","result","ok","value","identity","getIdentity","isAnonymous","createImplementation","implementation","dependencies"],"sources":["GetWorkflowUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetWorkflowRepository, GetWorkflowUseCase as UseCase } from \"./abstractions.js\";\nimport { WorkflowNotAuthorizedError } from \"~/domain/workflow/errors.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\n\nclass GetWorkflowUseCaseImpl implements UseCase.Interface {\n private readonly repository;\n private readonly identityContext;\n\n constructor(\n repository: GetWorkflowRepository.Interface,\n identityContext: IdentityContext.Interface\n ) {\n this.repository = repository;\n this.identityContext = identityContext;\n }\n\n async execute(input: UseCase.Params): UseCase.Return {\n const hasAccess = await this.ensureHasAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\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 private async ensureHasAccess(): Promise<Result<void, WorkflowNotAuthorizedError>> {\n const identity = this.identityContext.getIdentity();\n if (!identity.isAnonymous()) {\n return Result.ok();\n }\n return Result.fail(new WorkflowNotAuthorizedError(\"You do not have access to workflows.\"));\n }\n}\n\nexport const GetWorkflowUseCase = UseCase.createImplementation({\n implementation: GetWorkflowUseCaseImpl,\n dependencies: [GetWorkflowRepository, IdentityContext]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,qBAAqB,EAAEC,kBAAkB,IAAIC,OAAO;AAC7D,SAASC,0BAA0B;AACnC,SAASC,eAAe,QAAQ,6DAA6D;AAE7F,MAAMC,sBAAsB,CAA8B;EAItDC,WAAWA,CACPC,UAA2C,EAC3CC,eAA0C,EAC5C;IACE,IAAI,CAACD,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,eAAe,GAAGA,eAAe;EAC1C;EAEA,MAAMC,OAAOA,CAACC,KAAqB,EAAkB;IACjD,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACC,eAAe,CAAC,CAAC;IAC9C,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOd,MAAM,CAACe,IAAI,CAACH,SAAS,CAACI,KAAK,CAAC;IACvC;IAEA,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACT,UAAU,CAACE,OAAO,CAACC,KAAK,CAAC;IAEnD,IAAIM,MAAM,CAACH,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOG,MAAM;IACjB;IAEA,OAAOjB,MAAM,CAACkB,EAAE,CAACD,MAAM,CAACE,KAAK,CAAC;EAClC;EAEA,MAAcN,eAAeA,CAAA,EAAsD;IAC/E,MAAMO,QAAQ,GAAG,IAAI,CAACX,eAAe,CAACY,WAAW,CAAC,CAAC;IACnD,IAAI,CAACD,QAAQ,CAACE,WAAW,CAAC,CAAC,EAAE;MACzB,OAAOtB,MAAM,CAACkB,EAAE,CAAC,CAAC;IACtB;IACA,OAAOlB,MAAM,CAACe,IAAI,CAAC,IAAIX,0BAA0B,CAAC,sCAAsC,CAAC,CAAC;EAC9F;AACJ;AAEA,OAAO,MAAMF,kBAAkB,GAAGC,OAAO,CAACoB,oBAAoB,CAAC;EAC3DC,cAAc,EAAElB,sBAAsB;EACtCmB,YAAY,EAAE,CAACxB,qBAAqB,EAAEI,eAAe;AACzD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/GetWorkflow/GetWorkflowUseCase.js","sources":["../../../../src/features/workflow/GetWorkflow/GetWorkflowUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetWorkflowRepository, GetWorkflowUseCase as UseCase } from \"./abstractions.js\";\nimport { WorkflowNotAuthorizedError } from \"~/domain/workflow/errors.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\n\nclass GetWorkflowUseCaseImpl implements UseCase.Interface {\n private readonly repository;\n private readonly identityContext;\n\n constructor(\n repository: GetWorkflowRepository.Interface,\n identityContext: IdentityContext.Interface\n ) {\n this.repository = repository;\n this.identityContext = identityContext;\n }\n\n async execute(input: UseCase.Params): UseCase.Return {\n const hasAccess = await this.ensureHasAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\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 private async ensureHasAccess(): Promise<Result<void, WorkflowNotAuthorizedError>> {\n const identity = this.identityContext.getIdentity();\n if (!identity.isAnonymous()) {\n return Result.ok();\n }\n return Result.fail(new WorkflowNotAuthorizedError(\"You do not have access to workflows.\"));\n }\n}\n\nexport const GetWorkflowUseCase = UseCase.createImplementation({\n implementation: GetWorkflowUseCaseImpl,\n dependencies: [GetWorkflowRepository, IdentityContext]\n});\n"],"names":["GetWorkflowUseCaseImpl","repository","identityContext","input","hasAccess","Result","result","identity","WorkflowNotAuthorizedError","GetWorkflowUseCase","UseCase","GetWorkflowRepository","IdentityContext"],"mappings":";;;;AAKA,MAAMA;IAIF,YACIC,UAA2C,EAC3CC,eAA0C,CAC5C;QACE,IAAI,CAAC,UAAU,GAAGD;QAClB,IAAI,CAAC,eAAe,GAAGC;IAC3B;IAEA,MAAM,QAAQC,KAAqB,EAAkB;QACjD,MAAMC,YAAY,MAAM,IAAI,CAAC,eAAe;QAC5C,IAAIA,UAAU,MAAM,IAChB,OAAOC,OAAO,IAAI,CAACD,UAAU,KAAK;QAGtC,MAAME,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACH;QAE7C,IAAIG,OAAO,MAAM,IACb,OAAOA;QAGX,OAAOD,OAAO,EAAE,CAACC,OAAO,KAAK;IACjC;IAEA,MAAc,kBAAqE;QAC/E,MAAMC,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QACjD,IAAI,CAACA,SAAS,WAAW,IACrB,OAAOF,OAAO,EAAE;QAEpB,OAAOA,OAAO,IAAI,CAAC,IAAIG,2BAA2B;IACtD;AACJ;AAEO,MAAMC,wCAAqBC,mBAAAA,oBAA4B,CAAC;IAC3D,gBAAgBV;IAChB,cAAc;QAACW;QAAuBC;KAAgB;AAC1D"}
@@ -1,15 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- /**
4
- * GetWorkflow use case interface
5
- */
6
-
7
- export const GetWorkflowUseCase = createAbstraction("GetWorkflowUseCase");
8
-
9
- /**
10
- * GetWorkflow repository interface
11
- */
12
-
13
- export const GetWorkflowRepository = createAbstraction("GetWorkflowRepository");
2
+ const GetWorkflowUseCase = createAbstraction("GetWorkflowUseCase");
3
+ const GetWorkflowRepository = createAbstraction("GetWorkflowRepository");
4
+ export { GetWorkflowRepository, GetWorkflowUseCase };
14
5
 
15
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","GetWorkflowUseCase","GetWorkflowRepository"],"sources":["abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type {\n WorkflowNotAuthorizedError,\n WorkflowNotFoundError,\n WorkflowPersistenceError\n} from \"~/domain/workflow/errors.js\";\n\nexport interface IGetWorkflowParams {\n app: string;\n id: string;\n}\n\n/**\n * GetWorkflow use case interface\n */\nexport interface IGetWorkflowUseCase {\n execute(input: IGetWorkflowParams): Promise<Result<IWorkflow, UseCaseError>>;\n}\n\nexport interface IGetWorkflowUseCaseErrors {\n notFound: WorkflowNotFoundError;\n persistence: WorkflowPersistenceError;\n noAccess: WorkflowNotAuthorizedError;\n}\n\ntype UseCaseError = IGetWorkflowUseCaseErrors[keyof IGetWorkflowUseCaseErrors];\n\nexport const GetWorkflowUseCase = createAbstraction<IGetWorkflowUseCase>(\"GetWorkflowUseCase\");\n\nexport namespace GetWorkflowUseCase {\n export type Interface = IGetWorkflowUseCase;\n export type Params = IGetWorkflowParams;\n export type Return = Promise<Result<IWorkflow, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * GetWorkflow repository interface\n */\nexport interface IGetWorkflowRepository {\n execute(input: IGetWorkflowParams): Promise<Result<IWorkflow, RepositoryError>>;\n}\n\nexport interface IGetWorkflowRepositoryErrors {\n notFound: WorkflowNotFoundError;\n persistence: WorkflowPersistenceError;\n}\n\ntype RepositoryError = IGetWorkflowRepositoryErrors[keyof IGetWorkflowRepositoryErrors];\n\nexport const GetWorkflowRepository =\n createAbstraction<IGetWorkflowRepository>(\"GetWorkflowRepository\");\n\nexport namespace GetWorkflowRepository {\n export type Interface = IGetWorkflowRepository;\n export type Params = IGetWorkflowParams;\n export type Return = Promise<Result<IWorkflow, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"mappings":"AACA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAavD;AACA;AACA;;AAaA,OAAO,MAAMC,kBAAkB,GAAGD,iBAAiB,CAAsB,oBAAoB,CAAC;;AAS9F;AACA;AACA;;AAYA,OAAO,MAAME,qBAAqB,GAC9BF,iBAAiB,CAAyB,uBAAuB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/GetWorkflow/abstractions.js","sources":["../../../../src/features/workflow/GetWorkflow/abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type {\n WorkflowNotAuthorizedError,\n WorkflowNotFoundError,\n WorkflowPersistenceError\n} from \"~/domain/workflow/errors.js\";\n\nexport interface IGetWorkflowParams {\n app: string;\n id: string;\n}\n\n/**\n * GetWorkflow use case interface\n */\nexport interface IGetWorkflowUseCase {\n execute(input: IGetWorkflowParams): Promise<Result<IWorkflow, UseCaseError>>;\n}\n\nexport interface IGetWorkflowUseCaseErrors {\n notFound: WorkflowNotFoundError;\n persistence: WorkflowPersistenceError;\n noAccess: WorkflowNotAuthorizedError;\n}\n\ntype UseCaseError = IGetWorkflowUseCaseErrors[keyof IGetWorkflowUseCaseErrors];\n\nexport const GetWorkflowUseCase = createAbstraction<IGetWorkflowUseCase>(\"GetWorkflowUseCase\");\n\nexport namespace GetWorkflowUseCase {\n export type Interface = IGetWorkflowUseCase;\n export type Params = IGetWorkflowParams;\n export type Return = Promise<Result<IWorkflow, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * GetWorkflow repository interface\n */\nexport interface IGetWorkflowRepository {\n execute(input: IGetWorkflowParams): Promise<Result<IWorkflow, RepositoryError>>;\n}\n\nexport interface IGetWorkflowRepositoryErrors {\n notFound: WorkflowNotFoundError;\n persistence: WorkflowPersistenceError;\n}\n\ntype RepositoryError = IGetWorkflowRepositoryErrors[keyof IGetWorkflowRepositoryErrors];\n\nexport const GetWorkflowRepository =\n createAbstraction<IGetWorkflowRepository>(\"GetWorkflowRepository\");\n\nexport namespace GetWorkflowRepository {\n export type Interface = IGetWorkflowRepository;\n export type Params = IGetWorkflowParams;\n export type Return = Promise<Result<IWorkflow, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"names":["GetWorkflowUseCase","createAbstraction","GetWorkflowRepository"],"mappings":";AA6BO,MAAMA,qBAAqBC,kBAAuC;AAuBlE,MAAMC,wBACTD,kBAA0C"}
@@ -1 +1,4 @@
1
- export declare const GetWorkflowFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const GetWorkflowFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -1,12 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { GetWorkflowUseCase } from "./GetWorkflowUseCase.js";
3
3
  import { GetWorkflowRepository } from "./GetWorkflowRepository.js";
4
- export const GetWorkflowFeature = createFeature({
5
- name: "Workflows/GetWorkflow",
6
- register(container) {
7
- container.register(GetWorkflowRepository).inSingletonScope();
8
- container.register(GetWorkflowUseCase);
9
- }
4
+ const GetWorkflowFeature = createFeature({
5
+ name: "Workflows/GetWorkflow",
6
+ register (container) {
7
+ container.register(GetWorkflowRepository).inSingletonScope();
8
+ container.register(GetWorkflowUseCase);
9
+ }
10
10
  });
11
+ export { GetWorkflowFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","GetWorkflowUseCase","GetWorkflowRepository","GetWorkflowFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetWorkflowUseCase } from \"./GetWorkflowUseCase.js\";\nimport { GetWorkflowRepository } from \"./GetWorkflowRepository.js\";\n\nexport const GetWorkflowFeature = createFeature({\n name: \"Workflows/GetWorkflow\",\n register(container) {\n container.register(GetWorkflowRepository).inSingletonScope();\n container.register(GetWorkflowUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,kBAAkB;AAC3B,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,kBAAkB,GAAGH,aAAa,CAAC;EAC5CI,IAAI,EAAE,uBAAuB;EAC7BC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,qBAAqB,CAAC,CAACK,gBAAgB,CAAC,CAAC;IAC5DD,SAAS,CAACD,QAAQ,CAACJ,kBAAkB,CAAC;EAC1C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/GetWorkflow/feature.js","sources":["../../../../src/features/workflow/GetWorkflow/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetWorkflowUseCase } from \"./GetWorkflowUseCase.js\";\nimport { GetWorkflowRepository } from \"./GetWorkflowRepository.js\";\n\nexport const GetWorkflowFeature = createFeature({\n name: \"Workflows/GetWorkflow\",\n register(container) {\n container.register(GetWorkflowRepository).inSingletonScope();\n container.register(GetWorkflowUseCase);\n }\n});\n"],"names":["GetWorkflowFeature","createFeature","container","GetWorkflowRepository","GetWorkflowUseCase"],"mappings":";;;AAIO,MAAMA,qBAAqBC,cAAc;IAC5C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,uBAAuB,gBAAgB;QAC1DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,13 +1,13 @@
1
- import { WorkflowMapper, WorkflowModel } from "../../../domain/workflow/abstractions.js";
1
+ import { WorkflowMapper, WorkflowModelProvider } from "../../../domain/workflow/abstractions.js";
2
2
  import { ListWorkflowsRepository as Repository } from "./abstractions.js";
3
3
  import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries/index.js";
4
4
  import { CmsWhereMapper } from "@webiny/api-headless-cms";
5
5
  declare class ListWorkflowsRepositoryImpl implements Repository.Interface {
6
6
  private listLatestEntries;
7
- private model;
7
+ private modelProvider;
8
8
  private mapper;
9
9
  private cmsWhereMapper;
10
- constructor(listLatestEntries: ListLatestEntriesUseCase.Interface, model: WorkflowModel.Interface, mapper: WorkflowMapper.Interface, cmsWhereMapper: CmsWhereMapper.Interface);
10
+ constructor(listLatestEntries: ListLatestEntriesUseCase.Interface, modelProvider: WorkflowModelProvider.Interface, mapper: WorkflowMapper.Interface, cmsWhereMapper: CmsWhereMapper.Interface);
11
11
  execute(input: Repository.Params): Repository.Return;
12
12
  private convertListWhere;
13
13
  private convertWorkflowId;
@@ -1,67 +1,63 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { createIdentifier, parseIdentifier } from "@webiny/utils";
3
- import { WorkflowMapper, WorkflowModel } from "../../../domain/workflow/abstractions.js";
3
+ import { WorkflowMapper, WorkflowModelProvider } from "../../../domain/workflow/abstractions.js";
4
4
  import { WorkflowPersistenceError } from "../../../domain/workflow/errors.js";
5
- import { ListWorkflowsRepository as Repository } from "./abstractions.js";
5
+ import { ListWorkflowsRepository } from "./abstractions.js";
6
6
  import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries/index.js";
7
7
  import { CmsWhereMapper } from "@webiny/api-headless-cms";
8
8
  class ListWorkflowsRepositoryImpl {
9
- constructor(listLatestEntries, model, mapper, cmsWhereMapper) {
10
- this.listLatestEntries = listLatestEntries;
11
- this.model = model;
12
- this.mapper = mapper;
13
- this.cmsWhereMapper = cmsWhereMapper;
14
- }
15
- async execute(input) {
16
- const where = this.cmsWhereMapper.map({
17
- input: this.convertListWhere(input.where),
18
- fields: this.model.fields
19
- });
20
- const listResult = await this.listLatestEntries.execute(this.model, {
21
- sort: ["createdOn_ASC"],
22
- limit: 100,
23
- ...input,
24
- where
25
- });
26
- if (listResult.isFail()) {
27
- return Result.fail(new WorkflowPersistenceError(listResult.error));
9
+ constructor(listLatestEntries, modelProvider, mapper, cmsWhereMapper){
10
+ this.listLatestEntries = listLatestEntries;
11
+ this.modelProvider = modelProvider;
12
+ this.mapper = mapper;
13
+ this.cmsWhereMapper = cmsWhereMapper;
28
14
  }
29
- const {
30
- entries,
31
- meta
32
- } = listResult.value;
33
- const items = entries.map(entry => this.mapper.fromCmsEntry(entry));
34
- return Result.ok({
35
- items,
36
- meta
37
- });
38
- }
39
- convertListWhere(input) {
40
- if (!input || Object.keys(input).length === 0) {
41
- return undefined;
15
+ async execute(input) {
16
+ const model = await this.modelProvider.get();
17
+ const where = this.cmsWhereMapper.map({
18
+ input: this.convertListWhere(input.where),
19
+ fields: model.fields
20
+ });
21
+ const listResult = await this.listLatestEntries.execute(model, {
22
+ sort: [
23
+ "createdOn_ASC"
24
+ ],
25
+ limit: 100,
26
+ ...input,
27
+ where
28
+ });
29
+ if (listResult.isFail()) return Result.fail(new WorkflowPersistenceError(listResult.error));
30
+ const { entries, meta } = listResult.value;
31
+ const items = entries.map((entry)=>this.mapper.fromCmsEntry(entry));
32
+ return Result.ok({
33
+ items,
34
+ meta
35
+ });
42
36
  }
43
- const where = structuredClone(input);
44
- if (where.id) {
45
- where.id = this.convertWorkflowId(where.id);
37
+ convertListWhere(input) {
38
+ if (!input || 0 === Object.keys(input).length) return;
39
+ const where = structuredClone(input);
40
+ if (where.id) where.id = this.convertWorkflowId(where.id);
41
+ if (where.id_in) where.id_in = where.id_in.map((id)=>this.convertWorkflowId(id));
42
+ return where;
46
43
  }
47
- if (where.id_in) {
48
- where.id_in = where.id_in.map(id => this.convertWorkflowId(id));
44
+ convertWorkflowId(input) {
45
+ const { id } = parseIdentifier(input);
46
+ return createIdentifier({
47
+ id,
48
+ version: 1
49
+ });
49
50
  }
50
- return where;
51
- }
52
- convertWorkflowId(input) {
53
- const {
54
- id
55
- } = parseIdentifier(input);
56
- return createIdentifier({
57
- id,
58
- version: 1
59
- });
60
- }
61
51
  }
62
- export const ListWorkflowsRepository = Repository.createImplementation({
63
- implementation: ListWorkflowsRepositoryImpl,
64
- dependencies: [ListLatestEntriesUseCase, WorkflowModel, WorkflowMapper, CmsWhereMapper]
52
+ const ListWorkflowsRepository_ListWorkflowsRepository = ListWorkflowsRepository.createImplementation({
53
+ implementation: ListWorkflowsRepositoryImpl,
54
+ dependencies: [
55
+ ListLatestEntriesUseCase,
56
+ WorkflowModelProvider,
57
+ WorkflowMapper,
58
+ CmsWhereMapper
59
+ ]
65
60
  });
61
+ export { ListWorkflowsRepository_ListWorkflowsRepository as ListWorkflowsRepository };
66
62
 
67
63
  //# sourceMappingURL=ListWorkflowsRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","createIdentifier","parseIdentifier","WorkflowMapper","WorkflowModel","WorkflowPersistenceError","ListWorkflowsRepository","Repository","ListLatestEntriesUseCase","CmsWhereMapper","ListWorkflowsRepositoryImpl","constructor","listLatestEntries","model","mapper","cmsWhereMapper","execute","input","where","map","convertListWhere","fields","listResult","sort","limit","isFail","fail","error","entries","meta","value","items","entry","fromCmsEntry","ok","Object","keys","length","undefined","structuredClone","id","convertWorkflowId","id_in","version","createImplementation","implementation","dependencies"],"sources":["ListWorkflowsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { createIdentifier, parseIdentifier } from \"@webiny/utils\";\nimport { type IWorkflow, WorkflowMapper, WorkflowModel } from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport { type IListWorkflowsWhere, ListWorkflowsRepository as Repository } from \"./abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/index.js\";\nimport { CmsWhereMapper } from \"@webiny/api-headless-cms\";\n\nclass ListWorkflowsRepositoryImpl implements Repository.Interface {\n constructor(\n private listLatestEntries: ListLatestEntriesUseCase.Interface,\n private model: WorkflowModel.Interface,\n private mapper: WorkflowMapper.Interface,\n private cmsWhereMapper: CmsWhereMapper.Interface\n ) {}\n\n async execute(input: Repository.Params): Repository.Return {\n const where = this.cmsWhereMapper.map({\n input: this.convertListWhere(input.where),\n fields: this.model.fields\n });\n\n const listResult = await this.listLatestEntries.execute<IWorkflow>(this.model, {\n sort: [\"createdOn_ASC\"],\n limit: 100,\n ...input,\n where\n });\n\n if (listResult.isFail()) {\n return Result.fail(new WorkflowPersistenceError(listResult.error));\n }\n\n const { entries, meta } = listResult.value;\n\n const items = entries.map(entry => this.mapper.fromCmsEntry(entry));\n\n return Result.ok({\n items,\n meta\n });\n }\n\n private convertListWhere(input?: IListWorkflowsWhere): IListWorkflowsWhere | undefined {\n if (!input || Object.keys(input).length === 0) {\n return undefined;\n }\n const where = structuredClone(input);\n if (where.id) {\n where.id = this.convertWorkflowId(where.id);\n }\n if (where.id_in) {\n where.id_in = where.id_in.map(id => this.convertWorkflowId(id));\n }\n return where;\n }\n\n private convertWorkflowId(input: string): string {\n const { id } = parseIdentifier(input);\n return createIdentifier({\n id,\n version: 1\n });\n }\n}\n\nexport const ListWorkflowsRepository = Repository.createImplementation({\n implementation: ListWorkflowsRepositoryImpl,\n dependencies: [ListLatestEntriesUseCase, WorkflowModel, WorkflowMapper, CmsWhereMapper]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,gBAAgB,EAAEC,eAAe,QAAQ,eAAe;AACjE,SAAyBC,cAAc,EAAEC,aAAa;AACtD,SAASC,wBAAwB;AACjC,SAAmCC,uBAAuB,IAAIC,UAAU;AACxE,SAASC,wBAAwB,QAAQ,qEAAqE;AAC9G,SAASC,cAAc,QAAQ,0BAA0B;AAEzD,MAAMC,2BAA2B,CAAiC;EAC9DC,WAAWA,CACCC,iBAAqD,EACrDC,KAA8B,EAC9BC,MAAgC,EAChCC,cAAwC,EAClD;IAAA,KAJUH,iBAAqD,GAArDA,iBAAqD;IAAA,KACrDC,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,MAAgC,GAAhCA,MAAgC;IAAA,KAChCC,cAAwC,GAAxCA,cAAwC;EACjD;EAEH,MAAMC,OAAOA,CAACC,KAAwB,EAAqB;IACvD,MAAMC,KAAK,GAAG,IAAI,CAACH,cAAc,CAACI,GAAG,CAAC;MAClCF,KAAK,EAAE,IAAI,CAACG,gBAAgB,CAACH,KAAK,CAACC,KAAK,CAAC;MACzCG,MAAM,EAAE,IAAI,CAACR,KAAK,CAACQ;IACvB,CAAC,CAAC;IAEF,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACV,iBAAiB,CAACI,OAAO,CAAY,IAAI,CAACH,KAAK,EAAE;MAC3EU,IAAI,EAAE,CAAC,eAAe,CAAC;MACvBC,KAAK,EAAE,GAAG;MACV,GAAGP,KAAK;MACRC;IACJ,CAAC,CAAC;IAEF,IAAII,UAAU,CAACG,MAAM,CAAC,CAAC,EAAE;MACrB,OAAOzB,MAAM,CAAC0B,IAAI,CAAC,IAAIrB,wBAAwB,CAACiB,UAAU,CAACK,KAAK,CAAC,CAAC;IACtE;IAEA,MAAM;MAAEC,OAAO;MAAEC;IAAK,CAAC,GAAGP,UAAU,CAACQ,KAAK;IAE1C,MAAMC,KAAK,GAAGH,OAAO,CAACT,GAAG,CAACa,KAAK,IAAI,IAAI,CAAClB,MAAM,CAACmB,YAAY,CAACD,KAAK,CAAC,CAAC;IAEnE,OAAOhC,MAAM,CAACkC,EAAE,CAAC;MACbH,KAAK;MACLF;IACJ,CAAC,CAAC;EACN;EAEQT,gBAAgBA,CAACH,KAA2B,EAAmC;IACnF,IAAI,CAACA,KAAK,IAAIkB,MAAM,CAACC,IAAI,CAACnB,KAAK,CAAC,CAACoB,MAAM,KAAK,CAAC,EAAE;MAC3C,OAAOC,SAAS;IACpB;IACA,MAAMpB,KAAK,GAAGqB,eAAe,CAACtB,KAAK,CAAC;IACpC,IAAIC,KAAK,CAACsB,EAAE,EAAE;MACVtB,KAAK,CAACsB,EAAE,GAAG,IAAI,CAACC,iBAAiB,CAACvB,KAAK,CAACsB,EAAE,CAAC;IAC/C;IACA,IAAItB,KAAK,CAACwB,KAAK,EAAE;MACbxB,KAAK,CAACwB,KAAK,GAAGxB,KAAK,CAACwB,KAAK,CAACvB,GAAG,CAACqB,EAAE,IAAI,IAAI,CAACC,iBAAiB,CAACD,EAAE,CAAC,CAAC;IACnE;IACA,OAAOtB,KAAK;EAChB;EAEQuB,iBAAiBA,CAACxB,KAAa,EAAU;IAC7C,MAAM;MAAEuB;IAAG,CAAC,GAAGtC,eAAe,CAACe,KAAK,CAAC;IACrC,OAAOhB,gBAAgB,CAAC;MACpBuC,EAAE;MACFG,OAAO,EAAE;IACb,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMrC,uBAAuB,GAAGC,UAAU,CAACqC,oBAAoB,CAAC;EACnEC,cAAc,EAAEnC,2BAA2B;EAC3CoC,YAAY,EAAE,CAACtC,wBAAwB,EAAEJ,aAAa,EAAED,cAAc,EAAEM,cAAc;AAC1F,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/ListWorkflows/ListWorkflowsRepository.js","sources":["../../../../src/features/workflow/ListWorkflows/ListWorkflowsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { createIdentifier, parseIdentifier } from \"@webiny/utils\";\nimport {\n type IWorkflow,\n WorkflowMapper,\n WorkflowModelProvider\n} from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport { type IListWorkflowsWhere, ListWorkflowsRepository as Repository } from \"./abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/index.js\";\nimport { CmsWhereMapper } from \"@webiny/api-headless-cms\";\n\nclass ListWorkflowsRepositoryImpl implements Repository.Interface {\n constructor(\n private listLatestEntries: ListLatestEntriesUseCase.Interface,\n private modelProvider: WorkflowModelProvider.Interface,\n private mapper: WorkflowMapper.Interface,\n private cmsWhereMapper: CmsWhereMapper.Interface\n ) {}\n\n async execute(input: Repository.Params): Repository.Return {\n const model = await this.modelProvider.get();\n const where = this.cmsWhereMapper.map({\n input: this.convertListWhere(input.where),\n fields: model.fields\n });\n\n const listResult = await this.listLatestEntries.execute<IWorkflow>(model, {\n sort: [\"createdOn_ASC\"],\n limit: 100,\n ...input,\n where\n });\n\n if (listResult.isFail()) {\n return Result.fail(new WorkflowPersistenceError(listResult.error));\n }\n\n const { entries, meta } = listResult.value;\n\n const items = entries.map(entry => this.mapper.fromCmsEntry(entry));\n\n return Result.ok({\n items,\n meta\n });\n }\n\n private convertListWhere(input?: IListWorkflowsWhere): IListWorkflowsWhere | undefined {\n if (!input || Object.keys(input).length === 0) {\n return undefined;\n }\n const where = structuredClone(input);\n if (where.id) {\n where.id = this.convertWorkflowId(where.id);\n }\n if (where.id_in) {\n where.id_in = where.id_in.map(id => this.convertWorkflowId(id));\n }\n return where;\n }\n\n private convertWorkflowId(input: string): string {\n const { id } = parseIdentifier(input);\n return createIdentifier({\n id,\n version: 1\n });\n }\n}\n\nexport const ListWorkflowsRepository = Repository.createImplementation({\n implementation: ListWorkflowsRepositoryImpl,\n dependencies: [ListLatestEntriesUseCase, WorkflowModelProvider, WorkflowMapper, CmsWhereMapper]\n});\n"],"names":["ListWorkflowsRepositoryImpl","listLatestEntries","modelProvider","mapper","cmsWhereMapper","input","model","where","listResult","Result","WorkflowPersistenceError","entries","meta","items","entry","Object","structuredClone","id","parseIdentifier","createIdentifier","ListWorkflowsRepository","Repository","ListLatestEntriesUseCase","WorkflowModelProvider","WorkflowMapper","CmsWhereMapper"],"mappings":";;;;;;;AAYA,MAAMA;IACF,YACYC,iBAAqD,EACrDC,aAA8C,EAC9CC,MAAgC,EAChCC,cAAwC,CAClD;aAJUH,iBAAiB,GAAjBA;aACAC,aAAa,GAAbA;aACAC,MAAM,GAANA;aACAC,cAAc,GAAdA;IACT;IAEH,MAAM,QAAQC,KAAwB,EAAqB;QACvD,MAAMC,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG;QAC1C,MAAMC,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;YAClC,OAAO,IAAI,CAAC,gBAAgB,CAACF,MAAM,KAAK;YACxC,QAAQC,MAAM,MAAM;QACxB;QAEA,MAAME,aAAa,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAYF,OAAO;YACtE,MAAM;gBAAC;aAAgB;YACvB,OAAO;YACP,GAAGD,KAAK;YACRE;QACJ;QAEA,IAAIC,WAAW,MAAM,IACjB,OAAOC,OAAO,IAAI,CAAC,IAAIC,yBAAyBF,WAAW,KAAK;QAGpE,MAAM,EAAEG,OAAO,EAAEC,IAAI,EAAE,GAAGJ,WAAW,KAAK;QAE1C,MAAMK,QAAQF,QAAQ,GAAG,CAACG,CAAAA,QAAS,IAAI,CAAC,MAAM,CAAC,YAAY,CAACA;QAE5D,OAAOL,OAAO,EAAE,CAAC;YACbI;YACAD;QACJ;IACJ;IAEQ,iBAAiBP,KAA2B,EAAmC;QACnF,IAAI,CAACA,SAASU,AAA8B,MAA9BA,OAAO,IAAI,CAACV,OAAO,MAAM,EACnC;QAEJ,MAAME,QAAQS,gBAAgBX;QAC9B,IAAIE,MAAM,EAAE,EACRA,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAACA,MAAM,EAAE;QAE9C,IAAIA,MAAM,KAAK,EACXA,MAAM,KAAK,GAAGA,MAAM,KAAK,CAAC,GAAG,CAACU,CAAAA,KAAM,IAAI,CAAC,iBAAiB,CAACA;QAE/D,OAAOV;IACX;IAEQ,kBAAkBF,KAAa,EAAU;QAC7C,MAAM,EAAEY,EAAE,EAAE,GAAGC,gBAAgBb;QAC/B,OAAOc,iBAAiB;YACpBF;YACA,SAAS;QACb;IACJ;AACJ;AAEO,MAAMG,kDAA0BC,wBAAAA,oBAA+B,CAAC;IACnE,gBAAgBrB;IAChB,cAAc;QAACsB;QAA0BC;QAAuBC;QAAgBC;KAAe;AACnG"}
@@ -1,20 +1,21 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { ListWorkflowsRepository, ListWorkflowsUseCase as UseCase } from "./abstractions.js";
2
+ import { ListWorkflowsRepository, ListWorkflowsUseCase } from "./abstractions.js";
3
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;
4
+ constructor(repository){
5
+ this.repository = repository;
6
+ }
7
+ async execute(input) {
8
+ const result = await this.repository.execute(input);
9
+ if (result.isFail()) return result;
10
+ return Result.ok(result.value);
11
11
  }
12
- return Result.ok(result.value);
13
- }
14
12
  }
15
- export const ListWorkflowsUseCase = UseCase.createImplementation({
16
- implementation: ListWorkflowsUseCaseImpl,
17
- dependencies: [ListWorkflowsRepository]
13
+ const ListWorkflowsUseCase_ListWorkflowsUseCase = ListWorkflowsUseCase.createImplementation({
14
+ implementation: ListWorkflowsUseCaseImpl,
15
+ dependencies: [
16
+ ListWorkflowsRepository
17
+ ]
18
18
  });
19
+ export { ListWorkflowsUseCase_ListWorkflowsUseCase as ListWorkflowsUseCase };
19
20
 
20
21
  //# sourceMappingURL=ListWorkflowsUseCase.js.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"features/workflow/ListWorkflows/ListWorkflowsUseCase.js","sources":["../../../../src/features/workflow/ListWorkflows/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"],"names":["ListWorkflowsUseCaseImpl","repository","input","result","Result","ListWorkflowsUseCase","UseCase","ListWorkflowsRepository"],"mappings":";;AAGA,MAAMA;IAGF,YAAYC,UAA6C,CAAE;QACvD,IAAI,CAAC,UAAU,GAAGA;IACtB;IAEA,MAAM,QAAQC,KAAqB,EAAkB;QACjD,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACD;QAE7C,IAAIC,OAAO,MAAM,IACb,OAAOA;QAGX,OAAOC,OAAO,EAAE,CAACD,OAAO,KAAK;IACjC;AACJ;AAEO,MAAME,4CAAuBC,qBAAAA,oBAA4B,CAAC;IAC7D,gBAAgBN;IAChB,cAAc;QAACO;KAAwB;AAC3C"}
@@ -1,15 +1,6 @@
1
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");
2
+ const ListWorkflowsUseCase = createAbstraction("ListWorkflowsUseCase");
3
+ const ListWorkflowsRepository = createAbstraction("ListWorkflowsRepository");
4
+ export { ListWorkflowsRepository, ListWorkflowsUseCase };
14
5
 
15
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"features/workflow/ListWorkflows/abstractions.js","sources":["../../../../src/features/workflow/ListWorkflows/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"],"names":["ListWorkflowsUseCase","createAbstraction","ListWorkflowsRepository"],"mappings":";AA4CO,MAAMA,uBACTC,kBAAyC;AAsBtC,MAAMC,0BACTD,kBAA4C"}
@@ -1 +1,4 @@
1
- export declare const ListWorkflowsFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const ListWorkflowsFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -1,12 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { ListWorkflowsUseCase } from "./ListWorkflowsUseCase.js";
3
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
- }
4
+ const ListWorkflowsFeature = createFeature({
5
+ name: "Workflows/ListWorkflows",
6
+ register (container) {
7
+ container.register(ListWorkflowsRepository).inSingletonScope();
8
+ container.register(ListWorkflowsUseCase);
9
+ }
10
10
  });
11
+ export { ListWorkflowsFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"features/workflow/ListWorkflows/feature.js","sources":["../../../../src/features/workflow/ListWorkflows/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"],"names":["ListWorkflowsFeature","createFeature","container","ListWorkflowsRepository","ListWorkflowsUseCase"],"mappings":";;;AAIO,MAAMA,uBAAuBC,cAAc;IAC9C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,yBAAyB,gBAAgB;QAC5DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -2,36 +2,34 @@ import { Result } from "@webiny/feature/api";
2
2
  import { GetWorkflowUseCase } from "../GetWorkflow/index.js";
3
3
  import { CreateWorkflowUseCase } from "../CreateWorkflow/index.js";
4
4
  import { UpdateWorkflowUseCase } from "../UpdateWorkflow/index.js";
5
- import { StoreWorkflowUseCase as UseCase } from "./abstractions.js";
5
+ import { StoreWorkflowUseCase } from "./abstractions.js";
6
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
- }
7
+ constructor(getWorkflow, createWorkflow, updateWorkflow){
8
+ this.getWorkflow = getWorkflow;
9
+ this.createWorkflow = createWorkflow;
10
+ this.updateWorkflow = updateWorkflow;
23
11
  }
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);
12
+ async execute(input) {
13
+ const existingResult = await this.getWorkflow.execute({
14
+ app: input.app,
15
+ id: input.id
16
+ });
17
+ if (existingResult.isFail()) {
18
+ if ("Workflows/Workflow/NotFound" !== existingResult.error.code) return Result.fail(existingResult.error);
19
+ }
20
+ const existing = existingResult.isOk() ? existingResult.value : null;
21
+ if (!existing) return this.createWorkflow.execute(input);
22
+ return this.updateWorkflow.execute(input, existing);
29
23
  }
30
- }
31
24
  }
32
- export const StoreWorkflowUseCase = UseCase.createImplementation({
33
- implementation: StoreWorkflowUseCaseImpl,
34
- dependencies: [GetWorkflowUseCase, CreateWorkflowUseCase, UpdateWorkflowUseCase]
25
+ const StoreWorkflowUseCase_StoreWorkflowUseCase = StoreWorkflowUseCase.createImplementation({
26
+ implementation: StoreWorkflowUseCaseImpl,
27
+ dependencies: [
28
+ GetWorkflowUseCase,
29
+ CreateWorkflowUseCase,
30
+ UpdateWorkflowUseCase
31
+ ]
35
32
  });
33
+ export { StoreWorkflowUseCase_StoreWorkflowUseCase as StoreWorkflowUseCase };
36
34
 
37
35
  //# sourceMappingURL=StoreWorkflowUseCase.js.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"features/workflow/StoreWorkflow/StoreWorkflowUseCase.js","sources":["../../../../src/features/workflow/StoreWorkflow/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"],"names":["StoreWorkflowUseCaseImpl","getWorkflow","createWorkflow","updateWorkflow","input","existingResult","Result","existing","StoreWorkflowUseCase","UseCase","GetWorkflowUseCase","CreateWorkflowUseCase","UpdateWorkflowUseCase"],"mappings":";;;;;AAMA,MAAMA;IACF,YACYC,WAAyC,EACzCC,cAA+C,EAC/CC,cAA+C,CACzD;aAHUF,WAAW,GAAXA;aACAC,cAAc,GAAdA;aACAC,cAAc,GAAdA;IACT;IAEH,MAAM,QAAQC,KAAoB,EAAkB;QAChD,MAAMC,iBAAiB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAClD,KAAKD,MAAM,GAAG;YACd,IAAIA,MAAM,EAAE;QAChB;QAGA,IAAIC,eAAe,MAAM,IACrB;YAAA,IAAIA,AAA8B,kCAA9BA,eAAe,KAAK,CAAC,IAAI,EACzB,OAAOC,OAAO,IAAI,CAACD,eAAe,KAAK;QAC3C;QAGJ,MAAME,WAAWF,eAAe,IAAI,KAAKA,eAAe,KAAK,GAAG;QAEhE,IAAI,CAACE,UACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAACH;QAEnC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAACA,OAAOG;IAElD;AACJ;AAEO,MAAMC,4CAAuBC,qBAAAA,oBAA4B,CAAC;IAC7D,gBAAgBT;IAChB,cAAc;QAACU;QAAoBC;QAAuBC;KAAsB;AACpF"}
@@ -1,11 +1,5 @@
1
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");
2
+ const StoreWorkflowUseCase = createAbstraction("StoreWorkflowUseCase");
3
+ export { StoreWorkflowUseCase };
10
4
 
11
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"features/workflow/StoreWorkflow/abstractions.js","sources":["../../../../src/features/workflow/StoreWorkflow/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"],"names":["StoreWorkflowUseCase","createAbstraction"],"mappings":";AAoCO,MAAMA,uBACTC,kBAAyC"}
@@ -1 +1,4 @@
1
- export declare const StoreWorkflowFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const StoreWorkflowFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };