@webiny/api-workflows 0.0.0-unstable.e622468070 → 0.0.0-unstable.e9333b3f0b

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 -25
  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 -51
  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 +88 -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 +46 -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 +25 -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 +24 -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 +58 -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 +45 -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","IdentityContext","ListNotificationTypesRepository","ListNotificationTypesUseCase","UseCase","WORKFLOWS_PERMISSION","WorkflowsSecurityPermissionAccessLevel","NotificationAuthorizedError","ListNotificationTypesUseCaseImpl","constructor","identityContext","repository","execute","hasAccess","ensureAccess","isFail","fail","error","result","ok","value","permissions","getPermissions","permission","name","editor","YES","createImplementation","implementation","dependencies"],"sources":["ListNotificationTypesUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { IdentityContext } from \"@webiny/api-core/features/IdentityContext\";\nimport {\n ListNotificationTypesRepository,\n ListNotificationTypesUseCase as UseCase\n} from \"./abstractions.js\";\nimport { WORKFLOWS_PERMISSION } from \"~/constants.js\";\nimport type { IWorkflowsSecurityPermission } from \"~/types.js\";\nimport { WorkflowsSecurityPermissionAccessLevel } from \"~/types.js\";\nimport { NotificationAuthorizedError } from \"~/domain/notifications/errors.js\";\n\nclass ListNotificationTypesUseCaseImpl implements UseCase.Interface {\n public constructor(\n private identityContext: IdentityContext.Interface,\n private repository: ListNotificationTypesRepository.Interface\n ) {}\n\n public async execute(): UseCase.Return {\n const hasAccess = await this.ensureAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\n const result = await this.repository.execute();\n if (result.isFail()) {\n return result;\n }\n\n return Result.ok(result.value);\n }\n\n private async ensureAccess(): Promise<Result<void, NotificationAuthorizedError>> {\n const permissions =\n await this.identityContext.getPermissions<IWorkflowsSecurityPermission>(\n WORKFLOWS_PERMISSION\n );\n\n for (const permission of permissions) {\n if (permission.name === \"*\") {\n return Result.ok();\n } else if (permission.editor === WorkflowsSecurityPermissionAccessLevel.YES) {\n return Result.ok();\n }\n }\n\n return Result.fail(new NotificationAuthorizedError(\"You cannot list notifications.\"));\n }\n}\n\nexport const ListNotificationTypesUseCase = UseCase.createImplementation({\n implementation: ListNotificationTypesUseCaseImpl,\n dependencies: [IdentityContext, ListNotificationTypesRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,2CAA2C;AAC3E,SACIC,+BAA+B,EAC/BC,4BAA4B,IAAIC,OAAO;AAE3C,SAASC,oBAAoB;AAE7B,SAASC,sCAAsC;AAC/C,SAASC,2BAA2B;AAEpC,MAAMC,gCAAgC,CAA8B;EACzDC,WAAWA,CACNC,eAA0C,EAC1CC,UAAqD,EAC/D;IAAA,KAFUD,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,UAAqD,GAArDA,UAAqD;EAC9D;EAEH,MAAaC,OAAOA,CAAA,EAAmB;IACnC,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACC,YAAY,CAAC,CAAC;IAC3C,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOf,MAAM,CAACgB,IAAI,CAACH,SAAS,CAACI,KAAK,CAAC;IACvC;IAEA,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACP,UAAU,CAACC,OAAO,CAAC,CAAC;IAC9C,IAAIM,MAAM,CAACH,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOG,MAAM;IACjB;IAEA,OAAOlB,MAAM,CAACmB,EAAE,CAACD,MAAM,CAACE,KAAK,CAAC;EAClC;EAEA,MAAcN,YAAYA,CAAA,EAAuD;IAC7E,MAAMO,WAAW,GACb,MAAM,IAAI,CAACX,eAAe,CAACY,cAAc,CACrCjB,oBACJ,CAAC;IAEL,KAAK,MAAMkB,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAIE,UAAU,CAACC,IAAI,KAAK,GAAG,EAAE;QACzB,OAAOxB,MAAM,CAACmB,EAAE,CAAC,CAAC;MACtB,CAAC,MAAM,IAAII,UAAU,CAACE,MAAM,KAAKnB,sCAAsC,CAACoB,GAAG,EAAE;QACzE,OAAO1B,MAAM,CAACmB,EAAE,CAAC,CAAC;MACtB;IACJ;IAEA,OAAOnB,MAAM,CAACgB,IAAI,CAAC,IAAIT,2BAA2B,CAAC,gCAAgC,CAAC,CAAC;EACzF;AACJ;AAEA,OAAO,MAAMJ,4BAA4B,GAAGC,OAAO,CAACuB,oBAAoB,CAAC;EACrEC,cAAc,EAAEpB,gCAAgC;EAChDqB,YAAY,EAAE,CAAC5B,eAAe,EAAEC,+BAA+B;AACnE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js","sources":["../../../../src/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport {\n ListNotificationTypesRepository,\n ListNotificationTypesUseCase as UseCase\n} from \"./abstractions.js\";\nimport { WORKFLOWS_PERMISSION } from \"~/constants.js\";\nimport type { IWorkflowsSecurityPermission } from \"~/types.js\";\nimport { NotificationAuthorizedError } from \"~/domain/notifications/errors.js\";\n\nclass ListNotificationTypesUseCaseImpl implements UseCase.Interface {\n public constructor(\n private identityContext: IdentityContext.Interface,\n private repository: ListNotificationTypesRepository.Interface\n ) {}\n\n public async execute(): UseCase.Return {\n const hasAccess = await this.ensureAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\n const result = await this.repository.execute();\n if (result.isFail()) {\n return result;\n }\n\n return Result.ok(result.value);\n }\n\n private async ensureAccess(): Promise<Result<void, NotificationAuthorizedError>> {\n const permissions =\n await this.identityContext.getPermissions<IWorkflowsSecurityPermission>(\n WORKFLOWS_PERMISSION\n );\n\n for (const permission of permissions) {\n if (permission.name === \"*\") {\n return Result.ok();\n } else if (permission.editor) {\n return Result.ok();\n }\n }\n\n return Result.fail(new NotificationAuthorizedError(\"You cannot list notifications.\"));\n }\n}\n\nexport const ListNotificationTypesUseCase = UseCase.createImplementation({\n implementation: ListNotificationTypesUseCaseImpl,\n dependencies: [IdentityContext, ListNotificationTypesRepository]\n});\n"],"names":["ListNotificationTypesUseCaseImpl","identityContext","repository","hasAccess","Result","result","permissions","WORKFLOWS_PERMISSION","permission","NotificationAuthorizedError","ListNotificationTypesUseCase","UseCase","IdentityContext","ListNotificationTypesRepository"],"mappings":";;;;;AAUA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,UAAqD,CAC/D;aAFUD,eAAe,GAAfA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAa,UAA0B;QACnC,MAAMC,YAAY,MAAM,IAAI,CAAC,YAAY;QACzC,IAAIA,UAAU,MAAM,IAChB,OAAOC,OAAO,IAAI,CAACD,UAAU,KAAK;QAGtC,MAAME,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO;QAC5C,IAAIA,OAAO,MAAM,IACb,OAAOA;QAGX,OAAOD,OAAO,EAAE,CAACC,OAAO,KAAK;IACjC;IAEA,MAAc,eAAmE;QAC7E,MAAMC,cACF,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CACrCC;QAGR,KAAK,MAAMC,cAAcF,YACrB,IAAIE,AAAoB,QAApBA,WAAW,IAAI,EACf,OAAOJ,OAAO,EAAE;aACb,IAAII,WAAW,MAAM,EACxB,OAAOJ,OAAO,EAAE;QAIxB,OAAOA,OAAO,IAAI,CAAC,IAAIK,4BAA4B;IACvD;AACJ;AAEO,MAAMC,4DAA+BC,6BAAAA,oBAA4B,CAAC;IACrE,gBAAgBX;IAChB,cAAc;QAACY;QAAiBC;KAAgC;AACpE"}
@@ -1,15 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- /**
4
- * ListNotificationTypes use case interface
5
- */
6
-
7
- export const ListNotificationTypesUseCase = createAbstraction("ListNotificationTypesUseCase");
8
-
9
- /**
10
- * ListNotificationTypes repository interface
11
- */
12
-
13
- export const ListNotificationTypesRepository = createAbstraction("ListNotificationTypesRepository");
2
+ const ListNotificationTypesUseCase = createAbstraction("ListNotificationTypesUseCase");
3
+ const ListNotificationTypesRepository = createAbstraction("ListNotificationTypesRepository");
4
+ export { ListNotificationTypesRepository, ListNotificationTypesUseCase };
14
5
 
15
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","ListNotificationTypesUseCase","ListNotificationTypesRepository"],"sources":["abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { INotificationType } from \"~/domain/notifications/abstractions.js\";\nimport { NotificationAuthorizedError } from \"~/domain/notifications/errors.js\";\n\n/**\n * ListNotificationTypes use case interface\n */\nexport interface IListNotificationTypesUseCase {\n execute(): Promise<Result<INotificationType[], UseCaseError>>;\n}\n\nexport interface IListNotificationTypesUseCaseErrors {\n notAuthorized: NotificationAuthorizedError;\n}\n\ntype UseCaseError = IListNotificationTypesUseCaseErrors[keyof IListNotificationTypesUseCaseErrors];\n\nexport const ListNotificationTypesUseCase = createAbstraction<IListNotificationTypesUseCase>(\n \"ListNotificationTypesUseCase\"\n);\n\nexport namespace ListNotificationTypesUseCase {\n export type Interface = IListNotificationTypesUseCase;\n export type Return = Promise<Result<INotificationType[], UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * ListNotificationTypes repository interface\n */\nexport interface IListNotificationTypesRepository {\n execute(): Promise<Result<INotificationType[]>>;\n}\n\nexport const ListNotificationTypesRepository = createAbstraction<IListNotificationTypesRepository>(\n \"ListNotificationTypesRepository\"\n);\n\nexport namespace ListNotificationTypesRepository {\n export type Interface = IListNotificationTypesRepository;\n export type Return = Promise<Result<INotificationType[]>>;\n}\n"],"mappings":"AACA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAIvD;AACA;AACA;;AAWA,OAAO,MAAMC,4BAA4B,GAAGD,iBAAiB,CACzD,8BACJ,CAAC;;AAQD;AACA;AACA;;AAKA,OAAO,MAAME,+BAA+B,GAAGF,iBAAiB,CAC5D,iCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/ListNotificationTypes/abstractions.js","sources":["../../../../src/features/notifications/ListNotificationTypes/abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { INotificationType } from \"~/domain/notifications/abstractions.js\";\nimport { NotificationAuthorizedError } from \"~/domain/notifications/errors.js\";\n\n/**\n * ListNotificationTypes use case interface\n */\nexport interface IListNotificationTypesUseCase {\n execute(): Promise<Result<INotificationType[], UseCaseError>>;\n}\n\nexport interface IListNotificationTypesUseCaseErrors {\n notAuthorized: NotificationAuthorizedError;\n}\n\ntype UseCaseError = IListNotificationTypesUseCaseErrors[keyof IListNotificationTypesUseCaseErrors];\n\nexport const ListNotificationTypesUseCase = createAbstraction<IListNotificationTypesUseCase>(\n \"ListNotificationTypesUseCase\"\n);\n\nexport namespace ListNotificationTypesUseCase {\n export type Interface = IListNotificationTypesUseCase;\n export type Return = Promise<Result<INotificationType[], UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * ListNotificationTypes repository interface\n */\nexport interface IListNotificationTypesRepository {\n execute(): Promise<Result<INotificationType[]>>;\n}\n\nexport const ListNotificationTypesRepository = createAbstraction<IListNotificationTypesRepository>(\n \"ListNotificationTypesRepository\"\n);\n\nexport namespace ListNotificationTypesRepository {\n export type Interface = IListNotificationTypesRepository;\n export type Return = Promise<Result<INotificationType[]>>;\n}\n"],"names":["ListNotificationTypesUseCase","createAbstraction","ListNotificationTypesRepository"],"mappings":";AAkBO,MAAMA,+BAA+BC,kBACxC;AAgBG,MAAMC,kCAAkCD,kBAC3C"}
@@ -1 +1,4 @@
1
- export declare const ListNotificationTypesFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const ListNotificationTypesFeature: {
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 { ListNotificationTypesUseCase } from "./ListNotificationTypesUseCase.js";
3
3
  import { ListNotificationTypesRepository } from "./ListNotificationTypesRepository.js";
4
- export const ListNotificationTypesFeature = createFeature({
5
- name: "WorkflowNotifications/ListNotificationTypes",
6
- register(container) {
7
- container.register(ListNotificationTypesRepository).inSingletonScope();
8
- container.register(ListNotificationTypesUseCase);
9
- }
4
+ const ListNotificationTypesFeature = createFeature({
5
+ name: "WorkflowNotifications/ListNotificationTypes",
6
+ register (container) {
7
+ container.register(ListNotificationTypesRepository).inSingletonScope();
8
+ container.register(ListNotificationTypesUseCase);
9
+ }
10
10
  });
11
+ export { ListNotificationTypesFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","ListNotificationTypesUseCase","ListNotificationTypesRepository","ListNotificationTypesFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListNotificationTypesUseCase } from \"./ListNotificationTypesUseCase.js\";\nimport { ListNotificationTypesRepository } from \"./ListNotificationTypesRepository.js\";\n\nexport const ListNotificationTypesFeature = createFeature({\n name: \"WorkflowNotifications/ListNotificationTypes\",\n register(container) {\n container.register(ListNotificationTypesRepository).inSingletonScope();\n container.register(ListNotificationTypesUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,4BAA4B;AACrC,SAASC,+BAA+B;AAExC,OAAO,MAAMC,4BAA4B,GAAGH,aAAa,CAAC;EACtDI,IAAI,EAAE,6CAA6C;EACnDC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,+BAA+B,CAAC,CAACK,gBAAgB,CAAC,CAAC;IACtED,SAAS,CAACD,QAAQ,CAACJ,4BAA4B,CAAC;EACpD;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/ListNotificationTypes/feature.js","sources":["../../../../src/features/notifications/ListNotificationTypes/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListNotificationTypesUseCase } from \"./ListNotificationTypesUseCase.js\";\nimport { ListNotificationTypesRepository } from \"./ListNotificationTypesRepository.js\";\n\nexport const ListNotificationTypesFeature = createFeature({\n name: \"WorkflowNotifications/ListNotificationTypes\",\n register(container) {\n container.register(ListNotificationTypesRepository).inSingletonScope();\n container.register(ListNotificationTypesUseCase);\n }\n});\n"],"names":["ListNotificationTypesFeature","createFeature","container","ListNotificationTypesRepository","ListNotificationTypesUseCase"],"mappings":";;;AAIO,MAAMA,+BAA+BC,cAAc;IACtD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,iCAAiC,gBAAgB;QACpED,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export { ListNotificationTypesFeature } from "./feature.js";
2
2
  export { ListNotificationTypesRepository, ListNotificationTypesUseCase } from "./abstractions.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,47 +1,38 @@
1
1
  import { MailerService } from "@webiny/api-mailer";
2
2
  import { NotificationTransport } from "./abstractions.js";
3
3
  class MailNotificationTransportImpl {
4
- id = "e-mail";
5
- title = "E-Mail";
6
- constructor(mailer) {
7
- this.mailer = mailer;
8
- }
9
- async send(params) {
10
- const {
11
- users,
12
- message
13
- } = params;
14
- const bcc = users.map(user => {
15
- if (!user.displayName) {
16
- return user.email;
17
- }
18
- return `"${user.displayName}" <${user.email}>`;
19
- })
20
- /**
21
- * Just in case...
22
- */.filter(user => !!user);
23
- if (bcc.length === 0) {
24
- return;
4
+ constructor(mailer){
5
+ this.id = "e-mail";
6
+ this.title = "E-Mail";
7
+ this.mailer = mailer;
25
8
  }
26
- const result = await this.mailer.sendMail({
27
- bcc,
28
- subject: message.title,
29
- text: message.body,
30
- html: `<p>${message.body.replace(/\n/g, "<br/>")}</p>`
31
- });
32
- if (result.isOk()) {
33
- return;
9
+ async send(params) {
10
+ const { users, message } = params;
11
+ const bcc = users.map((user)=>{
12
+ if (!user.displayName) return user.email;
13
+ return `"${user.displayName}" <${user.email}>`;
14
+ }).filter((user)=>!!user);
15
+ if (0 === bcc.length) return;
16
+ const result = await this.mailer.sendMail({
17
+ bcc,
18
+ subject: message.title,
19
+ text: message.body,
20
+ html: `<p>${message.body.replace(/\n/g, "<br/>")}</p>`
21
+ });
22
+ if (result.isOk()) return;
23
+ console.error({
24
+ message: "Failed to send e-mail notification.",
25
+ error: result.error,
26
+ users: users.map((u)=>u.email)
27
+ });
34
28
  }
35
- console.error({
36
- message: "Failed to send e-mail notification.",
37
- error: result.error,
38
- users: users.map(u => u.email)
39
- });
40
- }
41
29
  }
42
- export const MailNotificationTransport = NotificationTransport.createImplementation({
43
- implementation: MailNotificationTransportImpl,
44
- dependencies: [MailerService]
30
+ const MailNotificationTransport = NotificationTransport.createImplementation({
31
+ implementation: MailNotificationTransportImpl,
32
+ dependencies: [
33
+ MailerService
34
+ ]
45
35
  });
36
+ export { MailNotificationTransport };
46
37
 
47
38
  //# sourceMappingURL=MailNotificationTransport.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MailerService","NotificationTransport","MailNotificationTransportImpl","id","title","constructor","mailer","send","params","users","message","bcc","map","user","displayName","email","filter","length","result","sendMail","subject","text","body","html","replace","isOk","console","error","u","MailNotificationTransport","createImplementation","implementation","dependencies"],"sources":["MailNotificationTransport.ts"],"sourcesContent":["import { MailerService } from \"@webiny/api-mailer\";\nimport { NotificationTransport } from \"./abstractions.js\";\n\nclass MailNotificationTransportImpl implements NotificationTransport.Interface {\n public readonly id = \"e-mail\";\n public readonly title = \"E-Mail\";\n\n private readonly mailer: MailerService.Interface;\n\n public constructor(mailer: MailerService.Interface) {\n this.mailer = mailer;\n }\n\n public async send(params: NotificationTransport.SendParams): Promise<void> {\n const { users, message } = params;\n\n const bcc = users\n .map(user => {\n if (!user.displayName) {\n return user.email;\n }\n return `\"${user.displayName}\" <${user.email}>`;\n })\n /**\n * Just in case...\n */\n .filter(user => !!user);\n\n if (bcc.length === 0) {\n return;\n }\n\n const result = await this.mailer.sendMail({\n bcc,\n subject: message.title,\n text: message.body,\n html: `<p>${message.body.replace(/\\n/g, \"<br/>\")}</p>`\n });\n if (result.isOk()) {\n return;\n }\n console.error({\n message: \"Failed to send e-mail notification.\",\n error: result.error,\n users: users.map(u => u.email)\n });\n }\n}\n\nexport const MailNotificationTransport = NotificationTransport.createImplementation({\n implementation: MailNotificationTransportImpl,\n dependencies: [MailerService]\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,oBAAoB;AAClD,SAASC,qBAAqB;AAE9B,MAAMC,6BAA6B,CAA4C;EAC3DC,EAAE,GAAG,QAAQ;EACbC,KAAK,GAAG,QAAQ;EAIzBC,WAAWA,CAACC,MAA+B,EAAE;IAChD,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEA,MAAaC,IAAIA,CAACC,MAAwC,EAAiB;IACvE,MAAM;MAAEC,KAAK;MAAEC;IAAQ,CAAC,GAAGF,MAAM;IAEjC,MAAMG,GAAG,GAAGF,KAAK,CACZG,GAAG,CAACC,IAAI,IAAI;MACT,IAAI,CAACA,IAAI,CAACC,WAAW,EAAE;QACnB,OAAOD,IAAI,CAACE,KAAK;MACrB;MACA,OAAO,IAAIF,IAAI,CAACC,WAAW,MAAMD,IAAI,CAACE,KAAK,GAAG;IAClD,CAAC;IACD;AACZ;AACA,OAFY,CAGCC,MAAM,CAACH,IAAI,IAAI,CAAC,CAACA,IAAI,CAAC;IAE3B,IAAIF,GAAG,CAACM,MAAM,KAAK,CAAC,EAAE;MAClB;IACJ;IAEA,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACZ,MAAM,CAACa,QAAQ,CAAC;MACtCR,GAAG;MACHS,OAAO,EAAEV,OAAO,CAACN,KAAK;MACtBiB,IAAI,EAAEX,OAAO,CAACY,IAAI;MAClBC,IAAI,EAAE,MAAMb,OAAO,CAACY,IAAI,CAACE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;IACpD,CAAC,CAAC;IACF,IAAIN,MAAM,CAACO,IAAI,CAAC,CAAC,EAAE;MACf;IACJ;IACAC,OAAO,CAACC,KAAK,CAAC;MACVjB,OAAO,EAAE,qCAAqC;MAC9CiB,KAAK,EAAET,MAAM,CAACS,KAAK;MACnBlB,KAAK,EAAEA,KAAK,CAACG,GAAG,CAACgB,CAAC,IAAIA,CAAC,CAACb,KAAK;IACjC,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMc,yBAAyB,GAAG5B,qBAAqB,CAAC6B,oBAAoB,CAAC;EAChFC,cAAc,EAAE7B,6BAA6B;EAC7C8B,YAAY,EAAE,CAAChC,aAAa;AAChC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/NotificationTransport/MailNotificationTransport.js","sources":["../../../../src/features/notifications/NotificationTransport/MailNotificationTransport.ts"],"sourcesContent":["import { MailerService } from \"@webiny/api-mailer\";\nimport { NotificationTransport } from \"./abstractions.js\";\n\nclass MailNotificationTransportImpl implements NotificationTransport.Interface {\n public readonly id = \"e-mail\";\n public readonly title = \"E-Mail\";\n\n private readonly mailer: MailerService.Interface;\n\n public constructor(mailer: MailerService.Interface) {\n this.mailer = mailer;\n }\n\n public async send(params: NotificationTransport.SendParams): Promise<void> {\n const { users, message } = params;\n\n const bcc = users\n .map(user => {\n if (!user.displayName) {\n return user.email;\n }\n return `\"${user.displayName}\" <${user.email}>`;\n })\n /**\n * Just in case...\n */\n .filter(user => !!user);\n\n if (bcc.length === 0) {\n return;\n }\n\n const result = await this.mailer.sendMail({\n bcc,\n subject: message.title,\n text: message.body,\n html: `<p>${message.body.replace(/\\n/g, \"<br/>\")}</p>`\n });\n if (result.isOk()) {\n return;\n }\n console.error({\n message: \"Failed to send e-mail notification.\",\n error: result.error,\n users: users.map(u => u.email)\n });\n }\n}\n\nexport const MailNotificationTransport = NotificationTransport.createImplementation({\n implementation: MailNotificationTransportImpl,\n dependencies: [MailerService]\n});\n"],"names":["MailNotificationTransportImpl","mailer","params","users","message","bcc","user","result","console","u","MailNotificationTransport","NotificationTransport","MailerService"],"mappings":";;AAGA,MAAMA;IAMF,YAAmBC,MAA+B,CAAE;aALpC,EAAE,GAAG;aACL,KAAK,GAAG;QAKpB,IAAI,CAAC,MAAM,GAAGA;IAClB;IAEA,MAAa,KAAKC,MAAwC,EAAiB;QACvE,MAAM,EAAEC,KAAK,EAAEC,OAAO,EAAE,GAAGF;QAE3B,MAAMG,MAAMF,MACP,GAAG,CAACG,CAAAA;YACD,IAAI,CAACA,KAAK,WAAW,EACjB,OAAOA,KAAK,KAAK;YAErB,OAAO,CAAC,CAAC,EAAEA,KAAK,WAAW,CAAC,GAAG,EAAEA,KAAK,KAAK,CAAC,CAAC,CAAC;QAClD,GAIC,MAAM,CAACA,CAAAA,OAAQ,CAAC,CAACA;QAEtB,IAAID,AAAe,MAAfA,IAAI,MAAM,EACV;QAGJ,MAAME,SAAS,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtCF;YACA,SAASD,QAAQ,KAAK;YACtB,MAAMA,QAAQ,IAAI;YAClB,MAAM,CAAC,GAAG,EAAEA,QAAQ,IAAI,CAAC,OAAO,CAAC,OAAO,SAAS,IAAI,CAAC;QAC1D;QACA,IAAIG,OAAO,IAAI,IACX;QAEJC,QAAQ,KAAK,CAAC;YACV,SAAS;YACT,OAAOD,OAAO,KAAK;YACnB,OAAOJ,MAAM,GAAG,CAACM,CAAAA,IAAKA,EAAE,KAAK;QACjC;IACJ;AACJ;AAEO,MAAMC,4BAA4BC,sBAAsB,oBAAoB,CAAC;IAChF,gBAAgBX;IAChB,cAAc;QAACY;KAAc;AACjC"}
@@ -1,4 +1,5 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
- export const NotificationTransport = createAbstraction("WorkflowNotificationTransport");
2
+ const NotificationTransport = createAbstraction("WorkflowNotificationTransport");
3
+ export { NotificationTransport };
3
4
 
4
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","NotificationTransport"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type {\n INotificationType,\n INotificationTypeMessage\n} from \"~/domain/notifications/abstractions.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\n\nexport interface INotificationTransportUser {\n id: string;\n email: string;\n displayName: string;\n}\n\nexport interface INotificationTransportSendParams {\n users: NonEmptyArray<INotificationTransportUser>;\n message: INotificationTypeMessage;\n}\n\nexport interface INotificationTransport {\n id: INotificationType[\"id\"];\n title: INotificationType[\"title\"];\n send(params: INotificationTransportSendParams): Promise<void>;\n}\n\nexport const NotificationTransport = createAbstraction<INotificationTransport>(\n \"WorkflowNotificationTransport\"\n);\n\nexport namespace NotificationTransport {\n export type Interface = INotificationTransport;\n export type SendParams = INotificationTransportSendParams;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAwBvD,OAAO,MAAMC,qBAAqB,GAAGD,iBAAiB,CAClD,+BACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/NotificationTransport/abstractions.js","sources":["../../../../src/features/notifications/NotificationTransport/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type {\n INotificationType,\n INotificationTypeMessage\n} from \"~/domain/notifications/abstractions.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\n\nexport interface INotificationTransportUser {\n id: string;\n email: string;\n displayName: string;\n}\n\nexport interface INotificationTransportSendParams {\n users: NonEmptyArray<INotificationTransportUser>;\n message: INotificationTypeMessage;\n}\n\nexport interface INotificationTransport {\n id: INotificationType[\"id\"];\n title: INotificationType[\"title\"];\n send(params: INotificationTransportSendParams): Promise<void>;\n}\n\nexport const NotificationTransport = createAbstraction<INotificationTransport>(\n \"WorkflowNotificationTransport\"\n);\n\nexport namespace NotificationTransport {\n export type Interface = INotificationTransport;\n export type SendParams = INotificationTransportSendParams;\n}\n"],"names":["NotificationTransport","createAbstraction"],"mappings":";AAwBO,MAAMA,wBAAwBC,kBACjC"}
@@ -1 +1,4 @@
1
- export declare const NotificationTransportFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const NotificationTransportFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { MailNotificationTransport } from "./MailNotificationTransport.js";
3
- export const NotificationTransportFeature = createFeature({
4
- name: "WorkflowNotifications/NotificationTransport",
5
- register(container) {
6
- container.register(MailNotificationTransport);
7
- }
3
+ const NotificationTransportFeature = createFeature({
4
+ name: "WorkflowNotifications/NotificationTransport",
5
+ register (container) {
6
+ container.register(MailNotificationTransport);
7
+ }
8
8
  });
9
+ export { NotificationTransportFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","MailNotificationTransport","NotificationTransportFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { MailNotificationTransport } from \"./MailNotificationTransport.js\";\n\nexport const NotificationTransportFeature = createFeature({\n name: \"WorkflowNotifications/NotificationTransport\",\n register(container) {\n container.register(MailNotificationTransport);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,yBAAyB;AAElC,OAAO,MAAMC,4BAA4B,GAAGF,aAAa,CAAC;EACtDG,IAAI,EAAE,6CAA6C;EACnDC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,yBAAyB,CAAC;EACjD;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/NotificationTransport/feature.js","sources":["../../../../src/features/notifications/NotificationTransport/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { MailNotificationTransport } from \"./MailNotificationTransport.js\";\n\nexport const NotificationTransportFeature = createFeature({\n name: \"WorkflowNotifications/NotificationTransport\",\n register(container) {\n container.register(MailNotificationTransport);\n }\n});\n"],"names":["NotificationTransportFeature","createFeature","container","MailNotificationTransport"],"mappings":";;AAGO,MAAMA,+BAA+BC,cAAc;IACtD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export { NotificationTransportFeature } from "./feature.js";
2
2
  export { NotificationTransport } from "./abstractions.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=abstractions.js.map
@@ -1,11 +1,11 @@
1
1
  import { CreateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/CreateEntry/index.js";
2
- import { WorkflowMapper, WorkflowModel } from "../../../domain/workflow/abstractions.js";
2
+ import { WorkflowMapper, WorkflowModelProvider } from "../../../domain/workflow/abstractions.js";
3
3
  import { CreateWorkflowRepository as Repository } from "./abstractions.js";
4
4
  declare class CreateWorkflowRepositoryImpl implements Repository.Interface {
5
5
  private createEntry;
6
- private model;
6
+ private modelProvider;
7
7
  private mapper;
8
- constructor(createEntry: CreateEntryUseCase.Interface, model: WorkflowModel.Interface, mapper: WorkflowMapper.Interface);
8
+ constructor(createEntry: CreateEntryUseCase.Interface, modelProvider: WorkflowModelProvider.Interface, mapper: WorkflowMapper.Interface);
9
9
  execute(input: Repository.Input): Repository.Return;
10
10
  }
11
11
  export declare const CreateWorkflowRepository: typeof CreateWorkflowRepositoryImpl & {
@@ -1,45 +1,47 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { parseIdentifier } from "@webiny/utils/parseIdentifier.js";
3
3
  import { CreateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/CreateEntry/index.js";
4
- import { WorkflowMapper, WorkflowModel } from "../../../domain/workflow/abstractions.js";
4
+ import { WorkflowMapper, WorkflowModelProvider } from "../../../domain/workflow/abstractions.js";
5
5
  import { WorkflowPersistenceError } from "../../../domain/workflow/errors.js";
6
- import { CreateWorkflowRepository as Repository } from "./abstractions.js";
6
+ import { CreateWorkflowRepository } from "./abstractions.js";
7
7
  class CreateWorkflowRepositoryImpl {
8
- constructor(createEntry, model, mapper) {
9
- this.createEntry = createEntry;
10
- this.model = model;
11
- this.mapper = mapper;
12
- }
13
- async execute(input) {
14
- const {
15
- id
16
- } = parseIdentifier(input.id);
17
- const values = this.mapper.toCmsEntry({
18
- id,
19
- app: input.app,
20
- name: input.name,
21
- steps: input.steps
22
- });
23
- try {
24
- const createResult = await this.createEntry.execute(this.model, {
25
- id,
26
- values
27
- });
28
- if (createResult.isFail()) {
29
- return Result.fail(new WorkflowPersistenceError(createResult.error));
30
- }
31
- return Result.ok({
32
- ...values,
33
- id
34
- });
35
- } catch (error) {
36
- return Result.fail(new WorkflowPersistenceError(error));
8
+ constructor(createEntry, modelProvider, mapper){
9
+ this.createEntry = createEntry;
10
+ this.modelProvider = modelProvider;
11
+ this.mapper = mapper;
12
+ }
13
+ async execute(input) {
14
+ const model = await this.modelProvider.get();
15
+ const { id } = parseIdentifier(input.id);
16
+ const values = this.mapper.toCmsEntry({
17
+ id,
18
+ app: input.app,
19
+ name: input.name,
20
+ steps: input.steps
21
+ });
22
+ try {
23
+ const createResult = await this.createEntry.execute(model, {
24
+ id,
25
+ values
26
+ });
27
+ if (createResult.isFail()) return Result.fail(new WorkflowPersistenceError(createResult.error));
28
+ return Result.ok({
29
+ ...values,
30
+ id
31
+ });
32
+ } catch (error) {
33
+ return Result.fail(new WorkflowPersistenceError(error));
34
+ }
37
35
  }
38
- }
39
36
  }
40
- export const CreateWorkflowRepository = Repository.createImplementation({
41
- implementation: CreateWorkflowRepositoryImpl,
42
- dependencies: [CreateEntryUseCase, WorkflowModel, WorkflowMapper]
37
+ const CreateWorkflowRepository_CreateWorkflowRepository = CreateWorkflowRepository.createImplementation({
38
+ implementation: CreateWorkflowRepositoryImpl,
39
+ dependencies: [
40
+ CreateEntryUseCase,
41
+ WorkflowModelProvider,
42
+ WorkflowMapper
43
+ ]
43
44
  });
45
+ export { CreateWorkflowRepository_CreateWorkflowRepository as CreateWorkflowRepository };
44
46
 
45
47
  //# sourceMappingURL=CreateWorkflowRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","parseIdentifier","CreateEntryUseCase","WorkflowMapper","WorkflowModel","WorkflowPersistenceError","CreateWorkflowRepository","Repository","CreateWorkflowRepositoryImpl","constructor","createEntry","model","mapper","execute","input","id","values","toCmsEntry","app","name","steps","createResult","isFail","fail","error","ok","createImplementation","implementation","dependencies"],"sources":["CreateWorkflowRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { parseIdentifier } from \"@webiny/utils/parseIdentifier.js\";\nimport { CreateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/CreateEntry/index.js\";\nimport { type IWorkflow, WorkflowMapper, WorkflowModel } from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport { CreateWorkflowRepository as Repository } from \"./abstractions.js\";\n\nclass CreateWorkflowRepositoryImpl implements Repository.Interface {\n constructor(\n private createEntry: CreateEntryUseCase.Interface,\n private model: WorkflowModel.Interface,\n private mapper: WorkflowMapper.Interface\n ) {}\n\n async execute(input: Repository.Input): Repository.Return {\n const { id } = parseIdentifier(input.id);\n\n const values = this.mapper.toCmsEntry({\n id,\n app: input.app,\n name: input.name,\n steps: input.steps\n });\n try {\n const createResult = await this.createEntry.execute<IWorkflow>(this.model, {\n id,\n values\n });\n\n if (createResult.isFail()) {\n return Result.fail(new WorkflowPersistenceError(createResult.error));\n }\n\n return Result.ok({ ...values, id });\n } catch (error) {\n return Result.fail(new WorkflowPersistenceError(error));\n }\n }\n}\n\nexport const CreateWorkflowRepository = Repository.createImplementation({\n implementation: CreateWorkflowRepositoryImpl,\n dependencies: [CreateEntryUseCase, WorkflowModel, WorkflowMapper]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,kCAAkC;AAClE,SAASC,kBAAkB,QAAQ,qEAAqE;AACxG,SAAyBC,cAAc,EAAEC,aAAa;AACtD,SAASC,wBAAwB;AACjC,SAASC,wBAAwB,IAAIC,UAAU;AAE/C,MAAMC,4BAA4B,CAAiC;EAC/DC,WAAWA,CACCC,WAAyC,EACzCC,KAA8B,EAC9BC,MAAgC,EAC1C;IAAA,KAHUF,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,MAAgC,GAAhCA,MAAgC;EACzC;EAEH,MAAMC,OAAOA,CAACC,KAAuB,EAAqB;IACtD,MAAM;MAAEC;IAAG,CAAC,GAAGd,eAAe,CAACa,KAAK,CAACC,EAAE,CAAC;IAExC,MAAMC,MAAM,GAAG,IAAI,CAACJ,MAAM,CAACK,UAAU,CAAC;MAClCF,EAAE;MACFG,GAAG,EAAEJ,KAAK,CAACI,GAAG;MACdC,IAAI,EAAEL,KAAK,CAACK,IAAI;MAChBC,KAAK,EAAEN,KAAK,CAACM;IACjB,CAAC,CAAC;IACF,IAAI;MACA,MAAMC,YAAY,GAAG,MAAM,IAAI,CAACX,WAAW,CAACG,OAAO,CAAY,IAAI,CAACF,KAAK,EAAE;QACvEI,EAAE;QACFC;MACJ,CAAC,CAAC;MAEF,IAAIK,YAAY,CAACC,MAAM,CAAC,CAAC,EAAE;QACvB,OAAOtB,MAAM,CAACuB,IAAI,CAAC,IAAIlB,wBAAwB,CAACgB,YAAY,CAACG,KAAK,CAAC,CAAC;MACxE;MAEA,OAAOxB,MAAM,CAACyB,EAAE,CAAC;QAAE,GAAGT,MAAM;QAAED;MAAG,CAAC,CAAC;IACvC,CAAC,CAAC,OAAOS,KAAK,EAAE;MACZ,OAAOxB,MAAM,CAACuB,IAAI,CAAC,IAAIlB,wBAAwB,CAACmB,KAAK,CAAC,CAAC;IAC3D;EACJ;AACJ;AAEA,OAAO,MAAMlB,wBAAwB,GAAGC,UAAU,CAACmB,oBAAoB,CAAC;EACpEC,cAAc,EAAEnB,4BAA4B;EAC5CoB,YAAY,EAAE,CAAC1B,kBAAkB,EAAEE,aAAa,EAAED,cAAc;AACpE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/CreateWorkflow/CreateWorkflowRepository.js","sources":["../../../../src/features/workflow/CreateWorkflow/CreateWorkflowRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { parseIdentifier } from \"@webiny/utils/parseIdentifier.js\";\nimport { CreateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/CreateEntry/index.js\";\nimport {\n type IWorkflow,\n WorkflowMapper,\n WorkflowModelProvider\n} from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowPersistenceError } from \"~/domain/workflow/errors.js\";\nimport { CreateWorkflowRepository as Repository } from \"./abstractions.js\";\n\nclass CreateWorkflowRepositoryImpl implements Repository.Interface {\n constructor(\n private createEntry: CreateEntryUseCase.Interface,\n private modelProvider: WorkflowModelProvider.Interface,\n private mapper: WorkflowMapper.Interface\n ) {}\n\n async execute(input: Repository.Input): Repository.Return {\n const model = await this.modelProvider.get();\n const { id } = parseIdentifier(input.id);\n\n const values = this.mapper.toCmsEntry({\n id,\n app: input.app,\n name: input.name,\n steps: input.steps\n });\n try {\n const createResult = await this.createEntry.execute<IWorkflow>(model, {\n id,\n values\n });\n\n if (createResult.isFail()) {\n return Result.fail(new WorkflowPersistenceError(createResult.error));\n }\n\n return Result.ok({ ...values, id });\n } catch (error) {\n return Result.fail(new WorkflowPersistenceError(error));\n }\n }\n}\n\nexport const CreateWorkflowRepository = Repository.createImplementation({\n implementation: CreateWorkflowRepositoryImpl,\n dependencies: [CreateEntryUseCase, WorkflowModelProvider, WorkflowMapper]\n});\n"],"names":["CreateWorkflowRepositoryImpl","createEntry","modelProvider","mapper","input","model","id","parseIdentifier","values","createResult","Result","WorkflowPersistenceError","error","CreateWorkflowRepository","Repository","CreateEntryUseCase","WorkflowModelProvider","WorkflowMapper"],"mappings":";;;;;;AAWA,MAAMA;IACF,YACYC,WAAyC,EACzCC,aAA8C,EAC9CC,MAAgC,CAC1C;aAHUF,WAAW,GAAXA;aACAC,aAAa,GAAbA;aACAC,MAAM,GAANA;IACT;IAEH,MAAM,QAAQC,KAAuB,EAAqB;QACtD,MAAMC,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG;QAC1C,MAAM,EAAEC,EAAE,EAAE,GAAGC,gBAAgBH,MAAM,EAAE;QAEvC,MAAMI,SAAS,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;YAClCF;YACA,KAAKF,MAAM,GAAG;YACd,MAAMA,MAAM,IAAI;YAChB,OAAOA,MAAM,KAAK;QACtB;QACA,IAAI;YACA,MAAMK,eAAe,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAYJ,OAAO;gBAClEC;gBACAE;YACJ;YAEA,IAAIC,aAAa,MAAM,IACnB,OAAOC,OAAO,IAAI,CAAC,IAAIC,yBAAyBF,aAAa,KAAK;YAGtE,OAAOC,OAAO,EAAE,CAAC;gBAAE,GAAGF,MAAM;gBAAEF;YAAG;QACrC,EAAE,OAAOM,OAAO;YACZ,OAAOF,OAAO,IAAI,CAAC,IAAIC,yBAAyBC;QACpD;IACJ;AACJ;AAEO,MAAMC,oDAA2BC,yBAAAA,oBAA+B,CAAC;IACpE,gBAAgBd;IAChB,cAAc;QAACe;QAAoBC;QAAuBC;KAAe;AAC7E"}
@@ -1,5 +1,5 @@
1
- import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
2
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
1
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
2
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
3
3
  import { CreateWorkflowRepository, CreateWorkflowUseCase as UseCase } from "./abstractions.js";
4
4
  declare class CreateWorkflowUseCaseImpl implements UseCase.Interface {
5
5
  private identityContext;
@@ -1,57 +1,52 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
3
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
4
- import { CreateWorkflowRepository, CreateWorkflowUseCase as UseCase } from "./abstractions.js";
2
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
3
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
4
+ import { CreateWorkflowRepository, CreateWorkflowUseCase } from "./abstractions.js";
5
5
  import { WorkflowAfterCreateEvent, WorkflowBeforeCreateEvent } from "./events.js";
6
6
  import { WorkflowNotAuthorizedError } from "../../../domain/workflow/errors.js";
7
7
  import { WORKFLOWS_PERMISSION } from "../../../constants.js";
8
- import { WorkflowsSecurityPermissionAccessLevel } from "../../../types.js";
9
8
  class CreateWorkflowUseCaseImpl {
10
- constructor(identityContext, eventPublisher, repository) {
11
- this.identityContext = identityContext;
12
- this.eventPublisher = eventPublisher;
13
- this.repository = repository;
14
- }
15
- async execute(input) {
16
- const hasAccess = await this.ensureManageAccess();
17
- if (hasAccess.isFail()) {
18
- return Result.fail(hasAccess.error);
9
+ constructor(identityContext, eventPublisher, repository){
10
+ this.identityContext = identityContext;
11
+ this.eventPublisher = eventPublisher;
12
+ this.repository = repository;
19
13
  }
20
- const workflow = {
21
- id: input.id,
22
- app: input.app,
23
- name: input.name,
24
- steps: input.steps
25
- };
26
- await this.eventPublisher.publish(new WorkflowBeforeCreateEvent({
27
- workflow,
28
- input
29
- }));
30
- const result = await this.repository.execute(input);
31
- if (result.isFail()) {
32
- return result;
14
+ async execute(input) {
15
+ const hasAccess = await this.ensureManageAccess();
16
+ if (hasAccess.isFail()) return Result.fail(hasAccess.error);
17
+ const workflow = {
18
+ id: input.id,
19
+ app: input.app,
20
+ name: input.name,
21
+ steps: input.steps
22
+ };
23
+ await this.eventPublisher.publish(new WorkflowBeforeCreateEvent({
24
+ workflow,
25
+ input
26
+ }));
27
+ const result = await this.repository.execute(input);
28
+ if (result.isFail()) return result;
29
+ await this.eventPublisher.publish(new WorkflowAfterCreateEvent({
30
+ workflow: result.value,
31
+ input
32
+ }));
33
+ return Result.ok(result.value);
33
34
  }
34
- await this.eventPublisher.publish(new WorkflowAfterCreateEvent({
35
- workflow: result.value,
36
- input
37
- }));
38
- return Result.ok(result.value);
39
- }
40
- async ensureManageAccess() {
41
- const permissions = await this.identityContext.getPermissions(WORKFLOWS_PERMISSION);
42
- for (const permission of permissions) {
43
- if (permission.name === "*") {
44
- return Result.ok();
45
- } else if (permission.editor === WorkflowsSecurityPermissionAccessLevel.YES) {
46
- return Result.ok();
47
- }
35
+ async ensureManageAccess() {
36
+ const permissions = await this.identityContext.getPermissions(WORKFLOWS_PERMISSION);
37
+ for (const permission of permissions)if ("*" === permission.name) return Result.ok();
38
+ else if (permission.editor) return Result.ok();
39
+ return Result.fail(new WorkflowNotAuthorizedError("You cannot manage workflows."));
48
40
  }
49
- return Result.fail(new WorkflowNotAuthorizedError("You cannot manage workflows."));
50
- }
51
41
  }
52
- export const CreateWorkflowUseCase = UseCase.createImplementation({
53
- implementation: CreateWorkflowUseCaseImpl,
54
- dependencies: [IdentityContext, EventPublisher, CreateWorkflowRepository]
42
+ const CreateWorkflowUseCase_CreateWorkflowUseCase = CreateWorkflowUseCase.createImplementation({
43
+ implementation: CreateWorkflowUseCaseImpl,
44
+ dependencies: [
45
+ IdentityContext,
46
+ EventPublisher,
47
+ CreateWorkflowRepository
48
+ ]
55
49
  });
50
+ export { CreateWorkflowUseCase_CreateWorkflowUseCase as CreateWorkflowUseCase };
56
51
 
57
52
  //# sourceMappingURL=CreateWorkflowUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","IdentityContext","EventPublisher","CreateWorkflowRepository","CreateWorkflowUseCase","UseCase","WorkflowAfterCreateEvent","WorkflowBeforeCreateEvent","WorkflowNotAuthorizedError","WORKFLOWS_PERMISSION","WorkflowsSecurityPermissionAccessLevel","CreateWorkflowUseCaseImpl","constructor","identityContext","eventPublisher","repository","execute","input","hasAccess","ensureManageAccess","isFail","fail","error","workflow","id","app","name","steps","publish","result","value","ok","permissions","getPermissions","permission","editor","YES","createImplementation","implementation","dependencies"],"sources":["CreateWorkflowUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { IdentityContext } from \"@webiny/api-core/features/IdentityContext\";\nimport { EventPublisher } from \"@webiny/api-core/features/EventPublisher\";\nimport { CreateWorkflowRepository, CreateWorkflowUseCase as UseCase } from \"./abstractions.js\";\nimport { WorkflowAfterCreateEvent, WorkflowBeforeCreateEvent } from \"./events.js\";\nimport { WorkflowNotAuthorizedError } from \"~/domain/workflow/errors.js\";\nimport { WORKFLOWS_PERMISSION } from \"~/constants.js\";\nimport type { IWorkflowsSecurityPermission } from \"~/types.js\";\nimport { WorkflowsSecurityPermissionAccessLevel } from \"~/types.js\";\n\nclass CreateWorkflowUseCaseImpl implements UseCase.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: CreateWorkflowRepository.Interface\n ) {}\n\n async execute(input: UseCase.Input): UseCase.Return {\n const hasAccess = await this.ensureManageAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\n const workflow = {\n id: input.id,\n app: input.app,\n name: input.name,\n steps: input.steps\n };\n\n await this.eventPublisher.publish(\n new WorkflowBeforeCreateEvent({\n workflow,\n input\n })\n );\n\n const result = await this.repository.execute(input);\n if (result.isFail()) {\n return result;\n }\n\n await this.eventPublisher.publish(\n new WorkflowAfterCreateEvent({\n workflow: result.value,\n input\n })\n );\n\n return Result.ok(result.value);\n }\n\n private async ensureManageAccess(): Promise<Result<void, WorkflowNotAuthorizedError>> {\n const permissions =\n await this.identityContext.getPermissions<IWorkflowsSecurityPermission>(\n WORKFLOWS_PERMISSION\n );\n\n for (const permission of permissions) {\n if (permission.name === \"*\") {\n return Result.ok();\n } else if (permission.editor === WorkflowsSecurityPermissionAccessLevel.YES) {\n return Result.ok();\n }\n }\n\n return Result.fail(new WorkflowNotAuthorizedError(\"You cannot manage workflows.\"));\n }\n}\n\nexport const CreateWorkflowUseCase = UseCase.createImplementation({\n implementation: CreateWorkflowUseCaseImpl,\n dependencies: [IdentityContext, EventPublisher, CreateWorkflowRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,2CAA2C;AAC3E,SAASC,cAAc,QAAQ,0CAA0C;AACzE,SAASC,wBAAwB,EAAEC,qBAAqB,IAAIC,OAAO;AACnE,SAASC,wBAAwB,EAAEC,yBAAyB;AAC5D,SAASC,0BAA0B;AACnC,SAASC,oBAAoB;AAE7B,SAASC,sCAAsC;AAE/C,MAAMC,yBAAyB,CAA8B;EACzDC,WAAWA,CACCC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA8C,EACxD;IAAA,KAHUF,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,UAA8C,GAA9CA,UAA8C;EACvD;EAEH,MAAMC,OAAOA,CAACC,KAAoB,EAAkB;IAChD,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACC,kBAAkB,CAAC,CAAC;IACjD,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOpB,MAAM,CAACqB,IAAI,CAACH,SAAS,CAACI,KAAK,CAAC;IACvC;IAEA,MAAMC,QAAQ,GAAG;MACbC,EAAE,EAAEP,KAAK,CAACO,EAAE;MACZC,GAAG,EAAER,KAAK,CAACQ,GAAG;MACdC,IAAI,EAAET,KAAK,CAACS,IAAI;MAChBC,KAAK,EAAEV,KAAK,CAACU;IACjB,CAAC;IAED,MAAM,IAAI,CAACb,cAAc,CAACc,OAAO,CAC7B,IAAIrB,yBAAyB,CAAC;MAC1BgB,QAAQ;MACRN;IACJ,CAAC,CACL,CAAC;IAED,MAAMY,MAAM,GAAG,MAAM,IAAI,CAACd,UAAU,CAACC,OAAO,CAACC,KAAK,CAAC;IACnD,IAAIY,MAAM,CAACT,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOS,MAAM;IACjB;IAEA,MAAM,IAAI,CAACf,cAAc,CAACc,OAAO,CAC7B,IAAItB,wBAAwB,CAAC;MACzBiB,QAAQ,EAAEM,MAAM,CAACC,KAAK;MACtBb;IACJ,CAAC,CACL,CAAC;IAED,OAAOjB,MAAM,CAAC+B,EAAE,CAACF,MAAM,CAACC,KAAK,CAAC;EAClC;EAEA,MAAcX,kBAAkBA,CAAA,EAAsD;IAClF,MAAMa,WAAW,GACb,MAAM,IAAI,CAACnB,eAAe,CAACoB,cAAc,CACrCxB,oBACJ,CAAC;IAEL,KAAK,MAAMyB,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAIE,UAAU,CAACR,IAAI,KAAK,GAAG,EAAE;QACzB,OAAO1B,MAAM,CAAC+B,EAAE,CAAC,CAAC;MACtB,CAAC,MAAM,IAAIG,UAAU,CAACC,MAAM,KAAKzB,sCAAsC,CAAC0B,GAAG,EAAE;QACzE,OAAOpC,MAAM,CAAC+B,EAAE,CAAC,CAAC;MACtB;IACJ;IAEA,OAAO/B,MAAM,CAACqB,IAAI,CAAC,IAAIb,0BAA0B,CAAC,8BAA8B,CAAC,CAAC;EACtF;AACJ;AAEA,OAAO,MAAMJ,qBAAqB,GAAGC,OAAO,CAACgC,oBAAoB,CAAC;EAC9DC,cAAc,EAAE3B,yBAAyB;EACzC4B,YAAY,EAAE,CAACtC,eAAe,EAAEC,cAAc,EAAEC,wBAAwB;AAC5E,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/CreateWorkflow/CreateWorkflowUseCase.js","sources":["../../../../src/features/workflow/CreateWorkflow/CreateWorkflowUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { CreateWorkflowRepository, CreateWorkflowUseCase as UseCase } from \"./abstractions.js\";\nimport { WorkflowAfterCreateEvent, WorkflowBeforeCreateEvent } from \"./events.js\";\nimport { WorkflowNotAuthorizedError } from \"~/domain/workflow/errors.js\";\nimport { WORKFLOWS_PERMISSION } from \"~/constants.js\";\nimport type { IWorkflowsSecurityPermission } from \"~/types.js\";\n\nclass CreateWorkflowUseCaseImpl implements UseCase.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: CreateWorkflowRepository.Interface\n ) {}\n\n async execute(input: UseCase.Input): UseCase.Return {\n const hasAccess = await this.ensureManageAccess();\n if (hasAccess.isFail()) {\n return Result.fail(hasAccess.error);\n }\n\n const workflow = {\n id: input.id,\n app: input.app,\n name: input.name,\n steps: input.steps\n };\n\n await this.eventPublisher.publish(\n new WorkflowBeforeCreateEvent({\n workflow,\n input\n })\n );\n\n const result = await this.repository.execute(input);\n if (result.isFail()) {\n return result;\n }\n\n await this.eventPublisher.publish(\n new WorkflowAfterCreateEvent({\n workflow: result.value,\n input\n })\n );\n\n return Result.ok(result.value);\n }\n\n private async ensureManageAccess(): Promise<Result<void, WorkflowNotAuthorizedError>> {\n const permissions =\n await this.identityContext.getPermissions<IWorkflowsSecurityPermission>(\n WORKFLOWS_PERMISSION\n );\n\n for (const permission of permissions) {\n if (permission.name === \"*\") {\n return Result.ok();\n } else if (permission.editor) {\n return Result.ok();\n }\n }\n\n return Result.fail(new WorkflowNotAuthorizedError(\"You cannot manage workflows.\"));\n }\n}\n\nexport const CreateWorkflowUseCase = UseCase.createImplementation({\n implementation: CreateWorkflowUseCaseImpl,\n dependencies: [IdentityContext, EventPublisher, CreateWorkflowRepository]\n});\n"],"names":["CreateWorkflowUseCaseImpl","identityContext","eventPublisher","repository","input","hasAccess","Result","workflow","WorkflowBeforeCreateEvent","result","WorkflowAfterCreateEvent","permissions","WORKFLOWS_PERMISSION","permission","WorkflowNotAuthorizedError","CreateWorkflowUseCase","UseCase","IdentityContext","EventPublisher","CreateWorkflowRepository"],"mappings":";;;;;;;AASA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA8C,CACxD;aAHUF,eAAe,GAAfA;aACAC,cAAc,GAAdA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,KAAoB,EAAkB;QAChD,MAAMC,YAAY,MAAM,IAAI,CAAC,kBAAkB;QAC/C,IAAIA,UAAU,MAAM,IAChB,OAAOC,OAAO,IAAI,CAACD,UAAU,KAAK;QAGtC,MAAME,WAAW;YACb,IAAIH,MAAM,EAAE;YACZ,KAAKA,MAAM,GAAG;YACd,MAAMA,MAAM,IAAI;YAChB,OAAOA,MAAM,KAAK;QACtB;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAII,0BAA0B;YAC1BD;YACAH;QACJ;QAGJ,MAAMK,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACL;QAC7C,IAAIK,OAAO,MAAM,IACb,OAAOA;QAGX,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIC,yBAAyB;YACzB,UAAUD,OAAO,KAAK;YACtBL;QACJ;QAGJ,OAAOE,OAAO,EAAE,CAACG,OAAO,KAAK;IACjC;IAEA,MAAc,qBAAwE;QAClF,MAAME,cACF,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CACrCC;QAGR,KAAK,MAAMC,cAAcF,YACrB,IAAIE,AAAoB,QAApBA,WAAW,IAAI,EACf,OAAOP,OAAO,EAAE;aACb,IAAIO,WAAW,MAAM,EACxB,OAAOP,OAAO,EAAE;QAIxB,OAAOA,OAAO,IAAI,CAAC,IAAIQ,2BAA2B;IACtD;AACJ;AAEO,MAAMC,8CAAwBC,sBAAAA,oBAA4B,CAAC;IAC9D,gBAAgBhB;IAChB,cAAc;QAACiB;QAAiBC;QAAgBC;KAAyB;AAC7E"}
@@ -1,19 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- // Input types
4
-
5
- // Event payloads
6
-
7
- /**
8
- * CreateWorkflow use case interface
9
- */
10
-
11
- export const CreateWorkflowUseCase = createAbstraction("CreateWorkflowUseCase");
12
-
13
- /**
14
- * CreateWorkflow repository interface
15
- */
16
-
17
- export const CreateWorkflowRepository = createAbstraction("CreateWorkflowRepository");
2
+ const CreateWorkflowUseCase = createAbstraction("CreateWorkflowUseCase");
3
+ const CreateWorkflowRepository = createAbstraction("CreateWorkflowRepository");
4
+ export { CreateWorkflowRepository, CreateWorkflowUseCase };
18
5
 
19
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","CreateWorkflowUseCase","CreateWorkflowRepository"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport {\n type WorkflowNotAuthorizedError,\n type WorkflowPersistenceError,\n type WorkflowValidationError\n} from \"~/domain/workflow/errors.js\";\nimport type { IWorkflowStepInput } from \"~/features/shared/abstractions.js\";\n\n// Input types\nexport interface ICreateWorkflowInput {\n app: string;\n id: string;\n name: string;\n steps: NonEmptyArray<IWorkflowStepInput>;\n}\n\n// Event payloads\nexport interface WorkflowBeforeCreatePayload {\n workflow: IWorkflow;\n input: ICreateWorkflowInput;\n}\n\nexport interface WorkflowAfterCreatePayload {\n workflow: IWorkflow;\n input: ICreateWorkflowInput;\n}\n\n/**\n * CreateWorkflow use case interface\n */\nexport interface ICreateWorkflowUseCase {\n execute(input: ICreateWorkflowInput): Promise<Result<IWorkflow, UseCaseError>>;\n}\n\nexport interface ICreateWorkflowUseCaseErrors {\n notAuthorized: WorkflowNotAuthorizedError;\n persistence: WorkflowPersistenceError;\n validation: WorkflowValidationError;\n}\n\ntype UseCaseError = ICreateWorkflowUseCaseErrors[keyof ICreateWorkflowUseCaseErrors];\n\nexport const CreateWorkflowUseCase =\n createAbstraction<ICreateWorkflowUseCase>(\"CreateWorkflowUseCase\");\n\nexport namespace CreateWorkflowUseCase {\n export type Interface = ICreateWorkflowUseCase;\n export type Input = ICreateWorkflowInput;\n export type Return = Promise<Result<IWorkflow, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * CreateWorkflow repository interface\n */\nexport interface ICreateWorkflowRepository {\n execute(input: ICreateWorkflowInput): Promise<Result<IWorkflow, RepositoryError>>;\n}\n\nexport interface ICreateWorkflowRepositoryErrors {\n persistence: WorkflowPersistenceError;\n}\n\ntype RepositoryError = ICreateWorkflowRepositoryErrors[keyof ICreateWorkflowRepositoryErrors];\n\nexport const CreateWorkflowRepository = createAbstraction<ICreateWorkflowRepository>(\n \"CreateWorkflowRepository\"\n);\n\nexport namespace CreateWorkflowRepository {\n export type Interface = ICreateWorkflowRepository;\n export type Input = ICreateWorkflowInput;\n export type Return = Promise<Result<IWorkflow, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAWvD;;AAQA;;AAWA;AACA;AACA;;AAaA,OAAO,MAAMC,qBAAqB,GAC9BD,iBAAiB,CAAyB,uBAAuB,CAAC;;AAStE;AACA;AACA;;AAWA,OAAO,MAAME,wBAAwB,GAAGF,iBAAiB,CACrD,0BACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/workflow/CreateWorkflow/abstractions.js","sources":["../../../../src/features/workflow/CreateWorkflow/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { IWorkflow } from \"~/domain/workflow/abstractions.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport {\n type WorkflowNotAuthorizedError,\n type WorkflowPersistenceError,\n type WorkflowValidationError\n} from \"~/domain/workflow/errors.js\";\nimport type { IWorkflowStepInput } from \"~/features/shared/abstractions.js\";\n\n// Input types\nexport interface ICreateWorkflowInput {\n app: string;\n id: string;\n name: string;\n steps: NonEmptyArray<IWorkflowStepInput>;\n}\n\n// Event payloads\nexport interface WorkflowBeforeCreatePayload {\n workflow: IWorkflow;\n input: ICreateWorkflowInput;\n}\n\nexport interface WorkflowAfterCreatePayload {\n workflow: IWorkflow;\n input: ICreateWorkflowInput;\n}\n\n/**\n * CreateWorkflow use case interface\n */\nexport interface ICreateWorkflowUseCase {\n execute(input: ICreateWorkflowInput): Promise<Result<IWorkflow, UseCaseError>>;\n}\n\nexport interface ICreateWorkflowUseCaseErrors {\n notAuthorized: WorkflowNotAuthorizedError;\n persistence: WorkflowPersistenceError;\n validation: WorkflowValidationError;\n}\n\ntype UseCaseError = ICreateWorkflowUseCaseErrors[keyof ICreateWorkflowUseCaseErrors];\n\nexport const CreateWorkflowUseCase =\n createAbstraction<ICreateWorkflowUseCase>(\"CreateWorkflowUseCase\");\n\nexport namespace CreateWorkflowUseCase {\n export type Interface = ICreateWorkflowUseCase;\n export type Input = ICreateWorkflowInput;\n export type Return = Promise<Result<IWorkflow, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * CreateWorkflow repository interface\n */\nexport interface ICreateWorkflowRepository {\n execute(input: ICreateWorkflowInput): Promise<Result<IWorkflow, RepositoryError>>;\n}\n\nexport interface ICreateWorkflowRepositoryErrors {\n persistence: WorkflowPersistenceError;\n}\n\ntype RepositoryError = ICreateWorkflowRepositoryErrors[keyof ICreateWorkflowRepositoryErrors];\n\nexport const CreateWorkflowRepository = createAbstraction<ICreateWorkflowRepository>(\n \"CreateWorkflowRepository\"\n);\n\nexport namespace CreateWorkflowRepository {\n export type Interface = ICreateWorkflowRepository;\n export type Input = ICreateWorkflowInput;\n export type Return = Promise<Result<IWorkflow, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"names":["CreateWorkflowUseCase","createAbstraction","CreateWorkflowRepository"],"mappings":";AA6CO,MAAMA,wBACTC,kBAA0C;AAsBvC,MAAMC,2BAA2BD,kBACpC"}
@@ -1,5 +1,5 @@
1
- import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
- import type { IEventHandler } from "@webiny/api-core/features/EventPublisher";
1
+ import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
2
+ import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js";
3
3
  import type { WorkflowBeforeCreatePayload, WorkflowAfterCreatePayload } from "./abstractions.js";
4
4
  export declare class WorkflowBeforeCreateEvent extends DomainEvent<WorkflowBeforeCreatePayload> {
5
5
  eventType: "workflow.beforeCreate";