@webiny/api-workflows 0.0.0-unstable.3c5210ad37 → 0.0.0-unstable.5387e5f7c8

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 (410) 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 -28
  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 -44
  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 -45
  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 -46
  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.js +3 -12
  272. package/features/workflowState/ListWorkflowStates/abstractions.js.map +1 -1
  273. package/features/workflowState/ListWorkflowStates/feature.d.ts +4 -1
  274. package/features/workflowState/ListWorkflowStates/feature.js +9 -6
  275. package/features/workflowState/ListWorkflowStates/feature.js.map +1 -1
  276. package/features/workflowState/ListWorkflowStates/index.d.ts +1 -0
  277. package/features/workflowState/ListWorkflowStates/index.js +2 -3
  278. package/features/workflowState/README.md +2 -2
  279. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js +26 -27
  280. package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js.map +1 -1
  281. package/features/workflowState/RejectWorkflowStateStep/abstractions.js +2 -1
  282. package/features/workflowState/RejectWorkflowStateStep/abstractions.js.map +1 -1
  283. package/features/workflowState/RejectWorkflowStateStep/events.d.ts +2 -2
  284. package/features/workflowState/RejectWorkflowStateStep/events.js +10 -7
  285. package/features/workflowState/RejectWorkflowStateStep/events.js.map +1 -1
  286. package/features/workflowState/RejectWorkflowStateStep/feature.d.ts +4 -1
  287. package/features/workflowState/RejectWorkflowStateStep/feature.js +6 -5
  288. package/features/workflowState/RejectWorkflowStateStep/feature.js.map +1 -1
  289. package/features/workflowState/RejectWorkflowStateStep/index.js +0 -2
  290. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js +26 -27
  291. package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js.map +1 -1
  292. package/features/workflowState/StartWorkflowStateStep/abstractions.js +2 -1
  293. package/features/workflowState/StartWorkflowStateStep/abstractions.js.map +1 -1
  294. package/features/workflowState/StartWorkflowStateStep/events.d.ts +2 -2
  295. package/features/workflowState/StartWorkflowStateStep/events.js +10 -7
  296. package/features/workflowState/StartWorkflowStateStep/events.js.map +1 -1
  297. package/features/workflowState/StartWorkflowStateStep/feature.d.ts +4 -1
  298. package/features/workflowState/StartWorkflowStateStep/feature.js +6 -5
  299. package/features/workflowState/StartWorkflowStateStep/feature.js.map +1 -1
  300. package/features/workflowState/StartWorkflowStateStep/index.js +0 -2
  301. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js +26 -27
  302. package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js.map +1 -1
  303. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js +2 -1
  304. package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js.map +1 -1
  305. package/features/workflowState/TakeOverWorkflowStateStep/events.d.ts +2 -2
  306. package/features/workflowState/TakeOverWorkflowStateStep/events.js +10 -7
  307. package/features/workflowState/TakeOverWorkflowStateStep/events.js.map +1 -1
  308. package/features/workflowState/TakeOverWorkflowStateStep/feature.d.ts +4 -1
  309. package/features/workflowState/TakeOverWorkflowStateStep/feature.js +6 -5
  310. package/features/workflowState/TakeOverWorkflowStateStep/feature.js.map +1 -1
  311. package/features/workflowState/TakeOverWorkflowStateStep/index.js +0 -2
  312. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.d.ts +3 -3
  313. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js +40 -37
  314. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js.map +1 -1
  315. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.d.ts +2 -2
  316. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js +45 -43
  317. package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js.map +1 -1
  318. package/features/workflowState/UpdateWorkflowState/abstractions.js +3 -12
  319. package/features/workflowState/UpdateWorkflowState/abstractions.js.map +1 -1
  320. package/features/workflowState/UpdateWorkflowState/events.d.ts +2 -2
  321. package/features/workflowState/UpdateWorkflowState/events.js +10 -7
  322. package/features/workflowState/UpdateWorkflowState/events.js.map +1 -1
  323. package/features/workflowState/UpdateWorkflowState/feature.d.ts +4 -1
  324. package/features/workflowState/UpdateWorkflowState/feature.js +7 -6
  325. package/features/workflowState/UpdateWorkflowState/feature.js.map +1 -1
  326. package/features/workflowState/UpdateWorkflowState/index.js +1 -3
  327. package/graphql/notifications.d.ts +2 -2
  328. package/graphql/notifications.js +44 -46
  329. package/graphql/notifications.js.map +1 -1
  330. package/graphql/validation/approveWorkflowState.d.ts +1 -7
  331. package/graphql/validation/approveWorkflowState.js +4 -3
  332. package/graphql/validation/approveWorkflowState.js.map +1 -1
  333. package/graphql/validation/cancelWorkflowState.d.ts +1 -5
  334. package/graphql/validation/cancelWorkflowState.js +3 -2
  335. package/graphql/validation/cancelWorkflowState.js.map +1 -1
  336. package/graphql/validation/createWorkflowState.d.ts +1 -9
  337. package/graphql/validation/createWorkflowState.js +5 -4
  338. package/graphql/validation/createWorkflowState.js.map +1 -1
  339. package/graphql/validation/deleteWorkflow.d.ts +1 -7
  340. package/graphql/validation/deleteWorkflow.js +4 -3
  341. package/graphql/validation/deleteWorkflow.js.map +1 -1
  342. package/graphql/validation/getTargetWorkflowState.d.ts +1 -7
  343. package/graphql/validation/getTargetWorkflowState.js +4 -3
  344. package/graphql/validation/getTargetWorkflowState.js.map +1 -1
  345. package/graphql/validation/getWorkflow.d.ts +1 -7
  346. package/graphql/validation/getWorkflow.js +4 -3
  347. package/graphql/validation/getWorkflow.js.map +1 -1
  348. package/graphql/validation/getWorkflowState.d.ts +1 -5
  349. package/graphql/validation/getWorkflowState.js +3 -2
  350. package/graphql/validation/getWorkflowState.js.map +1 -1
  351. package/graphql/validation/listWorkflowStates.d.ts +14 -96
  352. package/graphql/validation/listWorkflowStates.js +30 -36
  353. package/graphql/validation/listWorkflowStates.js.map +1 -1
  354. package/graphql/validation/listWorkflows.d.ts +6 -36
  355. package/graphql/validation/listWorkflows.js +15 -18
  356. package/graphql/validation/listWorkflows.js.map +1 -1
  357. package/graphql/validation/rejectWorkflowState.d.ts +1 -7
  358. package/graphql/validation/rejectWorkflowState.js +4 -3
  359. package/graphql/validation/rejectWorkflowState.js.map +1 -1
  360. package/graphql/validation/startWorkflowState.d.ts +1 -5
  361. package/graphql/validation/startWorkflowState.js +3 -2
  362. package/graphql/validation/startWorkflowState.js.map +1 -1
  363. package/graphql/validation/step.d.ts +8 -36
  364. package/graphql/validation/step.js +12 -17
  365. package/graphql/validation/step.js.map +1 -1
  366. package/graphql/validation/storeWorkflow.d.ts +14 -86
  367. package/graphql/validation/storeWorkflow.js +5 -4
  368. package/graphql/validation/storeWorkflow.js.map +1 -1
  369. package/graphql/validation/takeOverWorkflowStateStep.d.ts +1 -5
  370. package/graphql/validation/takeOverWorkflowStateStep.js +3 -2
  371. package/graphql/validation/takeOverWorkflowStateStep.js.map +1 -1
  372. package/graphql/validation/workflow.d.ts +13 -60
  373. package/graphql/validation/workflow.js +4 -5
  374. package/graphql/validation/workflow.js.map +1 -1
  375. package/graphql/workflowState.d.ts +2 -2
  376. package/graphql/workflowState.js +383 -381
  377. package/graphql/workflowState.js.map +1 -1
  378. package/graphql/workflows.d.ts +2 -2
  379. package/graphql/workflows.js +201 -204
  380. package/graphql/workflows.js.map +1 -1
  381. package/index.d.ts +1 -2
  382. package/index.js +1 -104
  383. package/package.json +25 -21
  384. package/types.js +0 -3
  385. package/features/internal/GetUserTeams/index.js.map +0 -1
  386. package/features/notifications/ListNotificationTypes/index.js.map +0 -1
  387. package/features/notifications/NotificationTransport/index.js.map +0 -1
  388. package/features/shared/abstractions.js.map +0 -1
  389. package/features/workflow/CreateWorkflow/index.js.map +0 -1
  390. package/features/workflow/DeleteWorkflow/index.js.map +0 -1
  391. package/features/workflow/GetWorkflow/index.js.map +0 -1
  392. package/features/workflow/ListWorkflows/index.js.map +0 -1
  393. package/features/workflow/StoreWorkflow/index.js.map +0 -1
  394. package/features/workflow/UpdateWorkflow/index.js.map +0 -1
  395. package/features/workflowState/ApproveWorkflowStateStep/index.js.map +0 -1
  396. package/features/workflowState/CancelWorkflowState/index.js.map +0 -1
  397. package/features/workflowState/CreateWorkflowState/index.js.map +0 -1
  398. package/features/workflowState/DeleteTargetWorkflowState/index.js.map +0 -1
  399. package/features/workflowState/DeleteWorkflowState/index.js.map +0 -1
  400. package/features/workflowState/GetTargetWorkflowState/index.js.map +0 -1
  401. package/features/workflowState/GetWorkflowState/index.js.map +0 -1
  402. package/features/workflowState/ListOwnWorkflowStates/index.js.map +0 -1
  403. package/features/workflowState/ListRequestedWorkflowStates/index.js.map +0 -1
  404. package/features/workflowState/ListWorkflowStates/index.js.map +0 -1
  405. package/features/workflowState/RejectWorkflowStateStep/index.js.map +0 -1
  406. package/features/workflowState/StartWorkflowStateStep/index.js.map +0 -1
  407. package/features/workflowState/TakeOverWorkflowStateStep/index.js.map +0 -1
  408. package/features/workflowState/UpdateWorkflowState/index.js.map +0 -1
  409. package/index.js.map +0 -1
  410. package/types.js.map +0 -1
@@ -1,5 +1,4 @@
1
- export const canTakeOver = step => {
2
- return step.canTakeOver;
3
- };
1
+ const canTakeOver = (step)=>step.canTakeOver;
2
+ export { canTakeOver };
4
3
 
5
4
  //# sourceMappingURL=canTakeOver.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["canTakeOver","step"],"sources":["canTakeOver.ts"],"sourcesContent":["import type { IEnrichedWorkflowStateRecordStep } from \"../abstractions.js\";\n\nexport const canTakeOver = (step: IEnrichedWorkflowStateRecordStep): boolean => {\n return step.canTakeOver;\n};\n"],"mappings":"AAEA,OAAO,MAAMA,WAAW,GAAIC,IAAsC,IAAc;EAC5E,OAAOA,IAAI,CAACD,WAAW;AAC3B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/workflowState/guards/canTakeOver.js","sources":["../../../../src/domain/workflowState/guards/canTakeOver.ts"],"sourcesContent":["import type { IEnrichedWorkflowStateRecordStep } from \"../abstractions.js\";\n\nexport const canTakeOver = (step: IEnrichedWorkflowStateRecordStep): boolean => {\n return step.canTakeOver;\n};\n"],"names":["canTakeOver","step"],"mappings":"AAEO,MAAMA,cAAc,CAACC,OACjBA,KAAK,WAAW"}
@@ -1,6 +1,5 @@
1
1
  import { WorkflowStateRecordState } from "../abstractions.js";
2
- export const isInReview = state => {
3
- return state.state === WorkflowStateRecordState.inReview;
4
- };
2
+ const isInReview = (state)=>state.state === WorkflowStateRecordState.inReview;
3
+ export { isInReview };
5
4
 
6
5
  //# sourceMappingURL=isInReview.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WorkflowStateRecordState","isInReview","state","inReview"],"sources":["isInReview.ts"],"sourcesContent":["import { type IWorkflowStateRecord, WorkflowStateRecordState } from \"../abstractions.js\";\n\nexport const isInReview = (state: IWorkflowStateRecord): boolean => {\n return state.state === WorkflowStateRecordState.inReview;\n};\n"],"mappings":"AAAA,SAAoCA,wBAAwB;AAE5D,OAAO,MAAMC,UAAU,GAAIC,KAA2B,IAAc;EAChE,OAAOA,KAAK,CAACA,KAAK,KAAKF,wBAAwB,CAACG,QAAQ;AAC5D,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/workflowState/guards/isInReview.js","sources":["../../../../src/domain/workflowState/guards/isInReview.ts"],"sourcesContent":["import { type IWorkflowStateRecord, WorkflowStateRecordState } from \"../abstractions.js\";\n\nexport const isInReview = (state: IWorkflowStateRecord): boolean => {\n return state.state === WorkflowStateRecordState.inReview;\n};\n"],"names":["isInReview","state","WorkflowStateRecordState"],"mappings":";AAEO,MAAMA,aAAa,CAACC,QAChBA,MAAM,KAAK,KAAKC,yBAAyB,QAAQ"}
@@ -1,6 +1,5 @@
1
1
  import { WorkflowStateRecordState } from "../abstractions.js";
2
- export const isRejected = state => {
3
- return state.state === WorkflowStateRecordState.rejected;
4
- };
2
+ const isRejected = (state)=>state.state === WorkflowStateRecordState.rejected;
3
+ export { isRejected };
5
4
 
6
5
  //# sourceMappingURL=isRejected.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WorkflowStateRecordState","isRejected","state","rejected"],"sources":["isRejected.ts"],"sourcesContent":["import { type IWorkflowStateRecord, WorkflowStateRecordState } from \"../abstractions.js\";\n\nexport const isRejected = (state: IWorkflowStateRecord): boolean => {\n return state.state === WorkflowStateRecordState.rejected;\n};\n"],"mappings":"AAAA,SAAoCA,wBAAwB;AAE5D,OAAO,MAAMC,UAAU,GAAIC,KAA2B,IAAc;EAChE,OAAOA,KAAK,CAACA,KAAK,KAAKF,wBAAwB,CAACG,QAAQ;AAC5D,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/workflowState/guards/isRejected.js","sources":["../../../../src/domain/workflowState/guards/isRejected.ts"],"sourcesContent":["import { type IWorkflowStateRecord, WorkflowStateRecordState } from \"../abstractions.js\";\n\nexport const isRejected = (state: IWorkflowStateRecord): boolean => {\n return state.state === WorkflowStateRecordState.rejected;\n};\n"],"names":["isRejected","state","WorkflowStateRecordState"],"mappings":";AAEO,MAAMA,aAAa,CAACC,QAChBA,MAAM,KAAK,KAAKC,yBAAyB,QAAQ"}
@@ -1,5 +1,4 @@
1
- export const isStepOwner = step => {
2
- return step.isOwner;
3
- };
1
+ const isStepOwner = (step)=>step.isOwner;
2
+ export { isStepOwner };
4
3
 
5
4
  //# sourceMappingURL=isStepOwner.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isStepOwner","step","isOwner"],"sources":["isStepOwner.ts"],"sourcesContent":["import type { IEnrichedWorkflowStateRecordStep } from \"../abstractions.js\";\n\nexport const isStepOwner = (step: IEnrichedWorkflowStateRecordStep): boolean => {\n return step.isOwner;\n};\n"],"mappings":"AAEA,OAAO,MAAMA,WAAW,GAAIC,IAAsC,IAAc;EAC5E,OAAOA,IAAI,CAACC,OAAO;AACvB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/workflowState/guards/isStepOwner.js","sources":["../../../../src/domain/workflowState/guards/isStepOwner.ts"],"sourcesContent":["import type { IEnrichedWorkflowStateRecordStep } from \"../abstractions.js\";\n\nexport const isStepOwner = (step: IEnrichedWorkflowStateRecordStep): boolean => {\n return step.isOwner;\n};\n"],"names":["isStepOwner","step"],"mappings":"AAEO,MAAMA,cAAc,CAACC,OACjBA,KAAK,OAAO"}
@@ -1,58 +1,68 @@
1
1
  import { ModelFactory } from "@webiny/api-headless-cms/features/modelBuilder/index.js";
2
2
  import { WorkflowStateRecordState } from "./abstractions.js";
3
- export const WORKFLOW_STATE_MODEL_ID = "wbyWorkflowState";
4
- const states = [{
5
- label: "Pending",
6
- value: WorkflowStateRecordState.pending
7
- }, {
8
- label: "In Review",
9
- value: WorkflowStateRecordState.inReview
10
- }, {
11
- label: "Approved",
12
- value: WorkflowStateRecordState.approved
13
- }, {
14
- label: "Rejected",
15
- value: WorkflowStateRecordState.rejected
16
- }];
3
+ const WORKFLOW_STATE_MODEL_ID = "wbyWorkflowState";
4
+ const states = [
5
+ {
6
+ label: "Pending",
7
+ value: WorkflowStateRecordState.pending
8
+ },
9
+ {
10
+ label: "In Review",
11
+ value: WorkflowStateRecordState.inReview
12
+ },
13
+ {
14
+ label: "Approved",
15
+ value: WorkflowStateRecordState.approved
16
+ },
17
+ {
18
+ label: "Rejected",
19
+ value: WorkflowStateRecordState.rejected
20
+ }
21
+ ];
17
22
  class WorkflowStateModelImpl {
18
- async execute(builder) {
19
- return [builder.private({
20
- modelId: WORKFLOW_STATE_MODEL_ID,
21
- name: "RecordWorkflow State"
22
- }).fields(fields => ({
23
- workflowId: fields.text().label("Workflow ID"),
24
- app: fields.text().label("App").required("App is required."),
25
- title: fields.text().label("Title").required("Title is required."),
26
- targetRevisionId: fields.text().label("Target Revision ID"),
27
- targetId: fields.text().label("Target ID"),
28
- isActive: fields.boolean().label("Is Active"),
29
- comment: fields.text().label("Comment"),
30
- state: fields.text().label("State").predefinedValues(states),
31
- steps: fields.object().label("Steps").list().required("Steps are required.").listMinLength(1, "At least one step is required.").fields(stepFields => ({
32
- id: stepFields.text().label("ID").required("ID is required."),
33
- title: stepFields.text().label("Title").required("Title is required."),
34
- color: stepFields.text().label("Color").required("Color is required."),
35
- description: stepFields.text().label("Description"),
36
- teams: stepFields.object().label("Teams").list().required("At least one team is required.").listMinLength(1, "At least one team is required.").fields(teamFields => ({
37
- id: teamFields.text().label("ID").required("ID is required.")
38
- })),
39
- notifications: stepFields.object().label("Notifications").list().fields(notificationFields => ({
40
- id: notificationFields.text().label("ID").required("ID is required.")
41
- })),
42
- state: stepFields.text().label("State").predefinedValues(states),
43
- savedBy: stepFields.object().label("User").fields(userFields => ({
44
- id: userFields.text().label("ID").required("ID is required."),
45
- displayName: userFields.text().label("Display Name").required("Display name is required."),
46
- type: userFields.text().label("Type").required("Type is required.")
47
- })),
48
- comment: stepFields.text().label("Comment")
49
- }))
50
- }))];
51
- }
23
+ async execute(builder) {
24
+ return [
25
+ builder.private({
26
+ modelId: WORKFLOW_STATE_MODEL_ID,
27
+ name: "RecordWorkflow State",
28
+ lifecycleEvents: false
29
+ }).fields((fields)=>({
30
+ workflowId: fields.text().label("Workflow ID"),
31
+ app: fields.text().label("App").required("App is required."),
32
+ title: fields.text().label("Title").required("Title is required."),
33
+ targetRevisionId: fields.text().label("Target Revision ID"),
34
+ targetId: fields.text().label("Target ID"),
35
+ isActive: fields.boolean().label("Is Active"),
36
+ comment: fields.text().label("Comment"),
37
+ state: fields.text().label("State").predefinedValues(states),
38
+ targetContext: fields.json().label("Target Context"),
39
+ steps: fields.object().label("Steps").list().required("Steps are required.").listMinLength(1, "At least one step is required.").fields((stepFields)=>({
40
+ id: stepFields.text().label("ID").required("ID is required."),
41
+ title: stepFields.text().label("Title").required("Title is required."),
42
+ color: stepFields.text().label("Color").required("Color is required."),
43
+ description: stepFields.text().label("Description"),
44
+ teams: stepFields.object().label("Teams").list().required("At least one team is required.").listMinLength(1, "At least one team is required.").fields((teamFields)=>({
45
+ id: teamFields.text().label("ID").required("ID is required.")
46
+ })),
47
+ notifications: stepFields.object().label("Notifications").list().fields((notificationFields)=>({
48
+ id: notificationFields.text().label("ID").required("ID is required.")
49
+ })),
50
+ state: stepFields.text().label("State").predefinedValues(states),
51
+ savedBy: stepFields.object().label("User").fields((userFields)=>({
52
+ id: userFields.text().label("ID").required("ID is required."),
53
+ displayName: userFields.text().label("Display Name").required("Display name is required."),
54
+ type: userFields.text().label("Type").required("Type is required.")
55
+ })),
56
+ comment: stepFields.text().label("Comment")
57
+ }))
58
+ }))
59
+ ];
60
+ }
52
61
  }
53
- export const WorkflowStateModel = ModelFactory.createImplementation({
54
- implementation: WorkflowStateModelImpl,
55
- dependencies: []
62
+ const WorkflowStateModel = ModelFactory.createImplementation({
63
+ implementation: WorkflowStateModelImpl,
64
+ dependencies: []
56
65
  });
66
+ export { WORKFLOW_STATE_MODEL_ID, WorkflowStateModel };
57
67
 
58
68
  //# sourceMappingURL=stateModel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ModelFactory","WorkflowStateRecordState","WORKFLOW_STATE_MODEL_ID","states","label","value","pending","inReview","approved","rejected","WorkflowStateModelImpl","execute","builder","private","modelId","name","fields","workflowId","text","app","required","title","targetRevisionId","targetId","isActive","boolean","comment","state","predefinedValues","steps","object","list","listMinLength","stepFields","id","color","description","teams","teamFields","notifications","notificationFields","savedBy","userFields","displayName","type","WorkflowStateModel","createImplementation","implementation","dependencies"],"sources":["stateModel.ts"],"sourcesContent":["import { ModelFactory } from \"@webiny/api-headless-cms/features/modelBuilder/index.js\";\nimport { WorkflowStateRecordState } from \"~/domain/workflowState/abstractions.js\";\n\nexport const WORKFLOW_STATE_MODEL_ID = \"wbyWorkflowState\";\n\nconst states = [\n {\n label: \"Pending\",\n value: WorkflowStateRecordState.pending\n },\n {\n label: \"In Review\",\n value: WorkflowStateRecordState.inReview\n },\n {\n label: \"Approved\",\n value: WorkflowStateRecordState.approved\n },\n {\n label: \"Rejected\",\n value: WorkflowStateRecordState.rejected\n }\n];\n\nclass WorkflowStateModelImpl implements ModelFactory.Interface {\n public async execute(builder: ModelFactory.Builder) {\n return [\n builder\n .private({\n modelId: WORKFLOW_STATE_MODEL_ID,\n name: \"RecordWorkflow State\"\n })\n .fields(fields => ({\n workflowId: fields.text().label(\"Workflow ID\"),\n app: fields.text().label(\"App\").required(\"App is required.\"),\n title: fields.text().label(\"Title\").required(\"Title is required.\"),\n targetRevisionId: fields.text().label(\"Target Revision ID\"),\n targetId: fields.text().label(\"Target ID\"),\n isActive: fields.boolean().label(\"Is Active\"),\n comment: fields.text().label(\"Comment\"),\n state: fields.text().label(\"State\").predefinedValues(states),\n steps: fields\n .object()\n .label(\"Steps\")\n .list()\n .required(\"Steps are required.\")\n .listMinLength(1, \"At least one step is required.\")\n .fields(stepFields => ({\n id: stepFields.text().label(\"ID\").required(\"ID is required.\"),\n title: stepFields.text().label(\"Title\").required(\"Title is required.\"),\n color: stepFields.text().label(\"Color\").required(\"Color is required.\"),\n description: stepFields.text().label(\"Description\"),\n teams: stepFields\n .object()\n .label(\"Teams\")\n .list()\n .required(\"At least one team is required.\")\n .listMinLength(1, \"At least one team is required.\")\n .fields(teamFields => ({\n id: teamFields.text().label(\"ID\").required(\"ID is required.\")\n })),\n notifications: stepFields\n .object()\n .label(\"Notifications\")\n .list()\n .fields(notificationFields => ({\n id: notificationFields\n .text()\n .label(\"ID\")\n .required(\"ID is required.\")\n })),\n state: stepFields.text().label(\"State\").predefinedValues(states),\n savedBy: stepFields\n .object()\n .label(\"User\")\n .fields(userFields => ({\n id: userFields.text().label(\"ID\").required(\"ID is required.\"),\n displayName: userFields\n .text()\n .label(\"Display Name\")\n .required(\"Display name is required.\"),\n type: userFields\n .text()\n .label(\"Type\")\n .required(\"Type is required.\")\n })),\n comment: stepFields.text().label(\"Comment\")\n }))\n }))\n ];\n }\n}\n\nexport const WorkflowStateModel = ModelFactory.createImplementation({\n implementation: WorkflowStateModelImpl,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,yDAAyD;AACtF,SAASC,wBAAwB;AAEjC,OAAO,MAAMC,uBAAuB,GAAG,kBAAkB;AAEzD,MAAMC,MAAM,GAAG,CACX;EACIC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAEJ,wBAAwB,CAACK;AACpC,CAAC,EACD;EACIF,KAAK,EAAE,WAAW;EAClBC,KAAK,EAAEJ,wBAAwB,CAACM;AACpC,CAAC,EACD;EACIH,KAAK,EAAE,UAAU;EACjBC,KAAK,EAAEJ,wBAAwB,CAACO;AACpC,CAAC,EACD;EACIJ,KAAK,EAAE,UAAU;EACjBC,KAAK,EAAEJ,wBAAwB,CAACQ;AACpC,CAAC,CACJ;AAED,MAAMC,sBAAsB,CAAmC;EAC3D,MAAaC,OAAOA,CAACC,OAA6B,EAAE;IAChD,OAAO,CACHA,OAAO,CACFC,OAAO,CAAC;MACLC,OAAO,EAAEZ,uBAAuB;MAChCa,IAAI,EAAE;IACV,CAAC,CAAC,CACDC,MAAM,CAACA,MAAM,KAAK;MACfC,UAAU,EAAED,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,aAAa,CAAC;MAC9Ce,GAAG,EAAEH,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,KAAK,CAAC,CAACgB,QAAQ,CAAC,kBAAkB,CAAC;MAC5DC,KAAK,EAAEL,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,OAAO,CAAC,CAACgB,QAAQ,CAAC,oBAAoB,CAAC;MAClEE,gBAAgB,EAAEN,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,oBAAoB,CAAC;MAC3DmB,QAAQ,EAAEP,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,WAAW,CAAC;MAC1CoB,QAAQ,EAAER,MAAM,CAACS,OAAO,CAAC,CAAC,CAACrB,KAAK,CAAC,WAAW,CAAC;MAC7CsB,OAAO,EAAEV,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,SAAS,CAAC;MACvCuB,KAAK,EAAEX,MAAM,CAACE,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,OAAO,CAAC,CAACwB,gBAAgB,CAACzB,MAAM,CAAC;MAC5D0B,KAAK,EAAEb,MAAM,CACRc,MAAM,CAAC,CAAC,CACR1B,KAAK,CAAC,OAAO,CAAC,CACd2B,IAAI,CAAC,CAAC,CACNX,QAAQ,CAAC,qBAAqB,CAAC,CAC/BY,aAAa,CAAC,CAAC,EAAE,gCAAgC,CAAC,CAClDhB,MAAM,CAACiB,UAAU,KAAK;QACnBC,EAAE,EAAED,UAAU,CAACf,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,IAAI,CAAC,CAACgB,QAAQ,CAAC,iBAAiB,CAAC;QAC7DC,KAAK,EAAEY,UAAU,CAACf,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,OAAO,CAAC,CAACgB,QAAQ,CAAC,oBAAoB,CAAC;QACtEe,KAAK,EAAEF,UAAU,CAACf,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,OAAO,CAAC,CAACgB,QAAQ,CAAC,oBAAoB,CAAC;QACtEgB,WAAW,EAAEH,UAAU,CAACf,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,aAAa,CAAC;QACnDiC,KAAK,EAAEJ,UAAU,CACZH,MAAM,CAAC,CAAC,CACR1B,KAAK,CAAC,OAAO,CAAC,CACd2B,IAAI,CAAC,CAAC,CACNX,QAAQ,CAAC,gCAAgC,CAAC,CAC1CY,aAAa,CAAC,CAAC,EAAE,gCAAgC,CAAC,CAClDhB,MAAM,CAACsB,UAAU,KAAK;UACnBJ,EAAE,EAAEI,UAAU,CAACpB,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,IAAI,CAAC,CAACgB,QAAQ,CAAC,iBAAiB;QAChE,CAAC,CAAC,CAAC;QACPmB,aAAa,EAAEN,UAAU,CACpBH,MAAM,CAAC,CAAC,CACR1B,KAAK,CAAC,eAAe,CAAC,CACtB2B,IAAI,CAAC,CAAC,CACNf,MAAM,CAACwB,kBAAkB,KAAK;UAC3BN,EAAE,EAAEM,kBAAkB,CACjBtB,IAAI,CAAC,CAAC,CACNd,KAAK,CAAC,IAAI,CAAC,CACXgB,QAAQ,CAAC,iBAAiB;QACnC,CAAC,CAAC,CAAC;QACPO,KAAK,EAAEM,UAAU,CAACf,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,OAAO,CAAC,CAACwB,gBAAgB,CAACzB,MAAM,CAAC;QAChEsC,OAAO,EAAER,UAAU,CACdH,MAAM,CAAC,CAAC,CACR1B,KAAK,CAAC,MAAM,CAAC,CACbY,MAAM,CAAC0B,UAAU,KAAK;UACnBR,EAAE,EAAEQ,UAAU,CAACxB,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,IAAI,CAAC,CAACgB,QAAQ,CAAC,iBAAiB,CAAC;UAC7DuB,WAAW,EAAED,UAAU,CAClBxB,IAAI,CAAC,CAAC,CACNd,KAAK,CAAC,cAAc,CAAC,CACrBgB,QAAQ,CAAC,2BAA2B,CAAC;UAC1CwB,IAAI,EAAEF,UAAU,CACXxB,IAAI,CAAC,CAAC,CACNd,KAAK,CAAC,MAAM,CAAC,CACbgB,QAAQ,CAAC,mBAAmB;QACrC,CAAC,CAAC,CAAC;QACPM,OAAO,EAAEO,UAAU,CAACf,IAAI,CAAC,CAAC,CAACd,KAAK,CAAC,SAAS;MAC9C,CAAC,CAAC;IACV,CAAC,CAAC,CAAC,CACV;EACL;AACJ;AAEA,OAAO,MAAMyC,kBAAkB,GAAG7C,YAAY,CAAC8C,oBAAoB,CAAC;EAChEC,cAAc,EAAErC,sBAAsB;EACtCsC,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/workflowState/stateModel.js","sources":["../../../src/domain/workflowState/stateModel.ts"],"sourcesContent":["import { ModelFactory } from \"@webiny/api-headless-cms/features/modelBuilder/index.js\";\nimport { WorkflowStateRecordState } from \"~/domain/workflowState/abstractions.js\";\n\nexport const WORKFLOW_STATE_MODEL_ID = \"wbyWorkflowState\";\n\nconst states = [\n {\n label: \"Pending\",\n value: WorkflowStateRecordState.pending\n },\n {\n label: \"In Review\",\n value: WorkflowStateRecordState.inReview\n },\n {\n label: \"Approved\",\n value: WorkflowStateRecordState.approved\n },\n {\n label: \"Rejected\",\n value: WorkflowStateRecordState.rejected\n }\n];\n\nclass WorkflowStateModelImpl implements ModelFactory.Interface {\n public async execute(builder: ModelFactory.Builder) {\n return [\n builder\n .private({\n modelId: WORKFLOW_STATE_MODEL_ID,\n name: \"RecordWorkflow State\",\n lifecycleEvents: false\n })\n .fields(fields => ({\n workflowId: fields.text().label(\"Workflow ID\"),\n app: fields.text().label(\"App\").required(\"App is required.\"),\n title: fields.text().label(\"Title\").required(\"Title is required.\"),\n targetRevisionId: fields.text().label(\"Target Revision ID\"),\n targetId: fields.text().label(\"Target ID\"),\n isActive: fields.boolean().label(\"Is Active\"),\n comment: fields.text().label(\"Comment\"),\n state: fields.text().label(\"State\").predefinedValues(states),\n targetContext: fields.json().label(\"Target Context\"),\n steps: fields\n .object()\n .label(\"Steps\")\n .list()\n .required(\"Steps are required.\")\n .listMinLength(1, \"At least one step is required.\")\n .fields(stepFields => ({\n id: stepFields.text().label(\"ID\").required(\"ID is required.\"),\n title: stepFields.text().label(\"Title\").required(\"Title is required.\"),\n color: stepFields.text().label(\"Color\").required(\"Color is required.\"),\n description: stepFields.text().label(\"Description\"),\n teams: stepFields\n .object()\n .label(\"Teams\")\n .list()\n .required(\"At least one team is required.\")\n .listMinLength(1, \"At least one team is required.\")\n .fields(teamFields => ({\n id: teamFields.text().label(\"ID\").required(\"ID is required.\")\n })),\n notifications: stepFields\n .object()\n .label(\"Notifications\")\n .list()\n .fields(notificationFields => ({\n id: notificationFields\n .text()\n .label(\"ID\")\n .required(\"ID is required.\")\n })),\n state: stepFields.text().label(\"State\").predefinedValues(states),\n savedBy: stepFields\n .object()\n .label(\"User\")\n .fields(userFields => ({\n id: userFields.text().label(\"ID\").required(\"ID is required.\"),\n displayName: userFields\n .text()\n .label(\"Display Name\")\n .required(\"Display name is required.\"),\n type: userFields\n .text()\n .label(\"Type\")\n .required(\"Type is required.\")\n })),\n comment: stepFields.text().label(\"Comment\")\n }))\n }))\n ];\n }\n}\n\nexport const WorkflowStateModel = ModelFactory.createImplementation({\n implementation: WorkflowStateModelImpl,\n dependencies: []\n});\n"],"names":["WORKFLOW_STATE_MODEL_ID","states","WorkflowStateRecordState","WorkflowStateModelImpl","builder","fields","stepFields","teamFields","notificationFields","userFields","WorkflowStateModel","ModelFactory"],"mappings":";;AAGO,MAAMA,0BAA0B;AAEvC,MAAMC,SAAS;IACX;QACI,OAAO;QACP,OAAOC,yBAAyB,OAAO;IAC3C;IACA;QACI,OAAO;QACP,OAAOA,yBAAyB,QAAQ;IAC5C;IACA;QACI,OAAO;QACP,OAAOA,yBAAyB,QAAQ;IAC5C;IACA;QACI,OAAO;QACP,OAAOA,yBAAyB,QAAQ;IAC5C;CACH;AAED,MAAMC;IACF,MAAa,QAAQC,OAA6B,EAAE;QAChD,OAAO;YACHA,QACK,OAAO,CAAC;gBACL,SAASJ;gBACT,MAAM;gBACN,iBAAiB;YACrB,GACC,MAAM,CAACK,CAAAA,SAAW;oBACf,YAAYA,OAAO,IAAI,GAAG,KAAK,CAAC;oBAChC,KAAKA,OAAO,IAAI,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC;oBACzC,OAAOA,OAAO,IAAI,GAAG,KAAK,CAAC,SAAS,QAAQ,CAAC;oBAC7C,kBAAkBA,OAAO,IAAI,GAAG,KAAK,CAAC;oBACtC,UAAUA,OAAO,IAAI,GAAG,KAAK,CAAC;oBAC9B,UAAUA,OAAO,OAAO,GAAG,KAAK,CAAC;oBACjC,SAASA,OAAO,IAAI,GAAG,KAAK,CAAC;oBAC7B,OAAOA,OAAO,IAAI,GAAG,KAAK,CAAC,SAAS,gBAAgB,CAACJ;oBACrD,eAAeI,OAAO,IAAI,GAAG,KAAK,CAAC;oBACnC,OAAOA,OACF,MAAM,GACN,KAAK,CAAC,SACN,IAAI,GACJ,QAAQ,CAAC,uBACT,aAAa,CAAC,GAAG,kCACjB,MAAM,CAACC,CAAAA,aAAe;4BACnB,IAAIA,WAAW,IAAI,GAAG,KAAK,CAAC,MAAM,QAAQ,CAAC;4BAC3C,OAAOA,WAAW,IAAI,GAAG,KAAK,CAAC,SAAS,QAAQ,CAAC;4BACjD,OAAOA,WAAW,IAAI,GAAG,KAAK,CAAC,SAAS,QAAQ,CAAC;4BACjD,aAAaA,WAAW,IAAI,GAAG,KAAK,CAAC;4BACrC,OAAOA,WACF,MAAM,GACN,KAAK,CAAC,SACN,IAAI,GACJ,QAAQ,CAAC,kCACT,aAAa,CAAC,GAAG,kCACjB,MAAM,CAACC,CAAAA,aAAe;oCACnB,IAAIA,WAAW,IAAI,GAAG,KAAK,CAAC,MAAM,QAAQ,CAAC;gCAC/C;4BACJ,eAAeD,WACV,MAAM,GACN,KAAK,CAAC,iBACN,IAAI,GACJ,MAAM,CAACE,CAAAA,qBAAuB;oCAC3B,IAAIA,mBACC,IAAI,GACJ,KAAK,CAAC,MACN,QAAQ,CAAC;gCAClB;4BACJ,OAAOF,WAAW,IAAI,GAAG,KAAK,CAAC,SAAS,gBAAgB,CAACL;4BACzD,SAASK,WACJ,MAAM,GACN,KAAK,CAAC,QACN,MAAM,CAACG,CAAAA,aAAe;oCACnB,IAAIA,WAAW,IAAI,GAAG,KAAK,CAAC,MAAM,QAAQ,CAAC;oCAC3C,aAAaA,WACR,IAAI,GACJ,KAAK,CAAC,gBACN,QAAQ,CAAC;oCACd,MAAMA,WACD,IAAI,GACJ,KAAK,CAAC,QACN,QAAQ,CAAC;gCAClB;4BACJ,SAASH,WAAW,IAAI,GAAG,KAAK,CAAC;wBACrC;gBACR;SACP;IACL;AACJ;AAEO,MAAMI,qBAAqBC,aAAa,oBAAoB,CAAC;IAChE,gBAAgBR;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,34 @@
1
+ import type { CmsModel } from "@webiny/api-headless-cms/types";
2
+ import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
3
+ import { WorkflowModelProvider } from "../domain/workflow/abstractions.js";
4
+ import { WorkflowStateModelProvider } from "../domain/workflowState/abstractions.js";
5
+ /**
6
+ * Resolve the tenant's workflow models on demand, replacing the per-request hook
7
+ * (`WorkflowsInitializer`) that used to push already-resolved models into the container.
8
+ *
9
+ * No memoization: `ModelsFetcher` already caches the model list per request (`ModelCache` is a
10
+ * per-request `createMemoryCache()`). No `withoutAuthorization` either — both models are private,
11
+ * and `PrivateModelBuilder` sets `authorization: false`, which short-circuits `canAccessModel()` to
12
+ * true for every identity, so the wrapper the initializer used changed nothing.
13
+ *
14
+ * `GetModelUseCase` is an ordinary constructor dependency: a provider is only constructed when a
15
+ * consumer first awaits `get()`, during request handling — after the CMS has registered everything
16
+ * the use case needs. That timing is what forced the initializer's lazy `container.resolve()`.
17
+ */
18
+ declare class WorkflowModelProviderImplementation implements WorkflowModelProvider.Interface {
19
+ private getModel;
20
+ constructor(getModel: GetModelUseCase.Interface);
21
+ get(): Promise<CmsModel>;
22
+ }
23
+ declare class WorkflowStateModelProviderImplementation implements WorkflowStateModelProvider.Interface {
24
+ private getModel;
25
+ constructor(getModel: GetModelUseCase.Interface);
26
+ get(): Promise<CmsModel>;
27
+ }
28
+ export declare const WorkflowModelProviderImpl: typeof WorkflowModelProviderImplementation & {
29
+ __abstraction: import("@webiny/di").Abstraction<import("~/domain/workflow/abstractions.js").IWorkflowModelProvider>;
30
+ };
31
+ export declare const WorkflowStateModelProviderImpl: typeof WorkflowStateModelProviderImplementation & {
32
+ __abstraction: import("@webiny/di").Abstraction<import("~/domain/workflowState/abstractions.js").IWorkflowStateModelProvider>;
33
+ };
34
+ export {};
@@ -0,0 +1,40 @@
1
+ import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
2
+ import { WorkflowModelProvider } from "../domain/workflow/abstractions.js";
3
+ import { WorkflowStateModelProvider } from "../domain/workflowState/abstractions.js";
4
+ import { WORKFLOW_MODEL_ID } from "../constants.js";
5
+ import { WORKFLOW_STATE_MODEL_ID } from "../domain/workflowState/stateModel.js";
6
+ class WorkflowModelProviderImplementation {
7
+ constructor(getModel){
8
+ this.getModel = getModel;
9
+ }
10
+ async get() {
11
+ const result = await this.getModel.execute(WORKFLOW_MODEL_ID);
12
+ if (result.isFail()) throw result.error;
13
+ return result.value;
14
+ }
15
+ }
16
+ class WorkflowStateModelProviderImplementation {
17
+ constructor(getModel){
18
+ this.getModel = getModel;
19
+ }
20
+ async get() {
21
+ const result = await this.getModel.execute(WORKFLOW_STATE_MODEL_ID);
22
+ if (result.isFail()) throw result.error;
23
+ return result.value;
24
+ }
25
+ }
26
+ const WorkflowModelProviderImpl = WorkflowModelProvider.createImplementation({
27
+ implementation: WorkflowModelProviderImplementation,
28
+ dependencies: [
29
+ GetModelUseCase
30
+ ]
31
+ });
32
+ const WorkflowStateModelProviderImpl = WorkflowStateModelProvider.createImplementation({
33
+ implementation: WorkflowStateModelProviderImplementation,
34
+ dependencies: [
35
+ GetModelUseCase
36
+ ]
37
+ });
38
+ export { WorkflowModelProviderImpl, WorkflowStateModelProviderImpl };
39
+
40
+ //# sourceMappingURL=WorkflowModelProviders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/WorkflowModelProviders.js","sources":["../../src/features/WorkflowModelProviders.ts"],"sourcesContent":["import type { CmsModel } from \"@webiny/api-headless-cms/types\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { WorkflowModelProvider } from \"~/domain/workflow/abstractions.js\";\nimport { WorkflowStateModelProvider } from \"~/domain/workflowState/abstractions.js\";\nimport { WORKFLOW_MODEL_ID } from \"~/constants.js\";\nimport { WORKFLOW_STATE_MODEL_ID } from \"~/domain/workflowState/stateModel.js\";\n\n/**\n * Resolve the tenant's workflow models on demand, replacing the per-request hook\n * (`WorkflowsInitializer`) that used to push already-resolved models into the container.\n *\n * No memoization: `ModelsFetcher` already caches the model list per request (`ModelCache` is a\n * per-request `createMemoryCache()`). No `withoutAuthorization` either — both models are private,\n * and `PrivateModelBuilder` sets `authorization: false`, which short-circuits `canAccessModel()` to\n * true for every identity, so the wrapper the initializer used changed nothing.\n *\n * `GetModelUseCase` is an ordinary constructor dependency: a provider is only constructed when a\n * consumer first awaits `get()`, during request handling — after the CMS has registered everything\n * the use case needs. That timing is what forced the initializer's lazy `container.resolve()`.\n */\nclass WorkflowModelProviderImplementation implements WorkflowModelProvider.Interface {\n constructor(private getModel: GetModelUseCase.Interface) {}\n\n async get(): Promise<CmsModel> {\n const result = await this.getModel.execute(WORKFLOW_MODEL_ID);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n }\n}\n\nclass WorkflowStateModelProviderImplementation implements WorkflowStateModelProvider.Interface {\n constructor(private getModel: GetModelUseCase.Interface) {}\n\n async get(): Promise<CmsModel> {\n const result = await this.getModel.execute(WORKFLOW_STATE_MODEL_ID);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n }\n}\n\nexport const WorkflowModelProviderImpl = WorkflowModelProvider.createImplementation({\n implementation: WorkflowModelProviderImplementation,\n dependencies: [GetModelUseCase]\n});\n\nexport const WorkflowStateModelProviderImpl = WorkflowStateModelProvider.createImplementation({\n implementation: WorkflowStateModelProviderImplementation,\n dependencies: [GetModelUseCase]\n});\n"],"names":["WorkflowModelProviderImplementation","getModel","result","WORKFLOW_MODEL_ID","WorkflowStateModelProviderImplementation","WORKFLOW_STATE_MODEL_ID","WorkflowModelProviderImpl","WorkflowModelProvider","GetModelUseCase","WorkflowStateModelProviderImpl","WorkflowStateModelProvider"],"mappings":";;;;;AAoBA,MAAMA;IACF,YAAoBC,QAAmC,CAAE;aAArCA,QAAQ,GAARA;IAAsC;IAE1D,MAAM,MAAyB;QAC3B,MAAMC,SAAS,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACC;QAC3C,IAAID,OAAO,MAAM,IACb,MAAMA,OAAO,KAAK;QAEtB,OAAOA,OAAO,KAAK;IACvB;AACJ;AAEA,MAAME;IACF,YAAoBH,QAAmC,CAAE;aAArCA,QAAQ,GAARA;IAAsC;IAE1D,MAAM,MAAyB;QAC3B,MAAMC,SAAS,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACG;QAC3C,IAAIH,OAAO,MAAM,IACb,MAAMA,OAAO,KAAK;QAEtB,OAAOA,OAAO,KAAK;IACvB;AACJ;AAEO,MAAMI,4BAA4BC,sBAAsB,oBAAoB,CAAC;IAChF,gBAAgBP;IAChB,cAAc;QAACQ;KAAgB;AACnC;AAEO,MAAMC,iCAAiCC,2BAA2B,oBAAoB,CAAC;IAC1F,gBAAgBN;IAChB,cAAc;QAACI;KAAgB;AACnC"}
@@ -1,36 +1,29 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { ListUserTeamsUseCase } from "@webiny/api-core/features/users/ListUserTeams";
3
- import { GetUserTeamsUseCase as UseCase } from "./abstractions.js";
3
+ import { GetUserTeamsUseCase } from "./abstractions.js";
4
4
  class GetUserTeamsUseCaseImpl {
5
- cache = new Map();
6
- constructor(listUserTeams) {
7
- this.listUserTeams = listUserTeams;
8
- }
9
- async execute(userId) {
10
- // Check cache first
11
- const cached = this.cache.get(userId);
12
- if (cached) {
13
- return Result.ok(cached);
5
+ constructor(listUserTeams){
6
+ this.listUserTeams = listUserTeams;
7
+ this.cache = new Map();
14
8
  }
15
-
16
- // Fetch teams
17
- const result = await this.listUserTeams.execute(userId);
18
- if (result.isFail()) {
19
- // If fetching teams fails, return an empty array (user has no teams)
20
- return Result.ok([]);
9
+ async execute(userId) {
10
+ const cached = this.cache.get(userId);
11
+ if (cached) return Result.ok(cached);
12
+ const result = await this.listUserTeams.execute(userId);
13
+ if (result.isFail()) return Result.ok([]);
14
+ const teams = result.value.map((team)=>({
15
+ id: team.id
16
+ }));
17
+ this.cache.set(userId, teams);
18
+ return Result.ok(teams);
21
19
  }
22
- const teams = result.value.map(team => ({
23
- id: team.id
24
- }));
25
-
26
- // Cache the result
27
- this.cache.set(userId, teams);
28
- return Result.ok(teams);
29
- }
30
20
  }
31
- export const GetUserTeamsUseCase = UseCase.createImplementation({
32
- implementation: GetUserTeamsUseCaseImpl,
33
- dependencies: [ListUserTeamsUseCase]
21
+ const GetUserTeamsUseCase_GetUserTeamsUseCase = GetUserTeamsUseCase.createImplementation({
22
+ implementation: GetUserTeamsUseCaseImpl,
23
+ dependencies: [
24
+ ListUserTeamsUseCase
25
+ ]
34
26
  });
27
+ export { GetUserTeamsUseCase_GetUserTeamsUseCase as GetUserTeamsUseCase };
35
28
 
36
29
  //# sourceMappingURL=GetUserTeamsUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","ListUserTeamsUseCase","GetUserTeamsUseCase","UseCase","GetUserTeamsUseCaseImpl","cache","Map","constructor","listUserTeams","execute","userId","cached","get","ok","result","isFail","teams","value","map","team","id","set","createImplementation","implementation","dependencies"],"sources":["GetUserTeamsUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListUserTeamsUseCase } from \"@webiny/api-core/features/users/ListUserTeams\";\nimport { GetUserTeamsUseCase as UseCase } from \"./abstractions.js\";\nimport type { IWorkflowStepTeam } from \"~/domain/workflow/abstractions.js\";\n\nclass GetUserTeamsUseCaseImpl implements UseCase.Interface {\n private cache = new Map<string, IWorkflowStepTeam[]>();\n\n constructor(private listUserTeams: ListUserTeamsUseCase.Interface) {}\n\n async execute(userId: string): UseCase.Return {\n // Check cache first\n const cached = this.cache.get(userId);\n if (cached) {\n return Result.ok(cached);\n }\n\n // Fetch teams\n const result = await this.listUserTeams.execute(userId);\n\n if (result.isFail()) {\n // If fetching teams fails, return an empty array (user has no teams)\n return Result.ok([]);\n }\n\n const teams = result.value.map(team => ({ id: team.id }));\n\n // Cache the result\n this.cache.set(userId, teams);\n\n return Result.ok(teams);\n }\n}\n\nexport const GetUserTeamsUseCase = UseCase.createImplementation({\n implementation: GetUserTeamsUseCaseImpl,\n dependencies: [ListUserTeamsUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,oBAAoB,QAAQ,+CAA+C;AACpF,SAASC,mBAAmB,IAAIC,OAAO;AAGvC,MAAMC,uBAAuB,CAA8B;EAC/CC,KAAK,GAAG,IAAIC,GAAG,CAA8B,CAAC;EAEtDC,WAAWA,CAASC,aAA6C,EAAE;IAAA,KAA/CA,aAA6C,GAA7CA,aAA6C;EAAG;EAEpE,MAAMC,OAAOA,CAACC,MAAc,EAAkB;IAC1C;IACA,MAAMC,MAAM,GAAG,IAAI,CAACN,KAAK,CAACO,GAAG,CAACF,MAAM,CAAC;IACrC,IAAIC,MAAM,EAAE;MACR,OAAOX,MAAM,CAACa,EAAE,CAACF,MAAM,CAAC;IAC5B;;IAEA;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACN,aAAa,CAACC,OAAO,CAACC,MAAM,CAAC;IAEvD,IAAII,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;MACjB;MACA,OAAOf,MAAM,CAACa,EAAE,CAAC,EAAE,CAAC;IACxB;IAEA,MAAMG,KAAK,GAAGF,MAAM,CAACG,KAAK,CAACC,GAAG,CAACC,IAAI,KAAK;MAAEC,EAAE,EAAED,IAAI,CAACC;IAAG,CAAC,CAAC,CAAC;;IAEzD;IACA,IAAI,CAACf,KAAK,CAACgB,GAAG,CAACX,MAAM,EAAEM,KAAK,CAAC;IAE7B,OAAOhB,MAAM,CAACa,EAAE,CAACG,KAAK,CAAC;EAC3B;AACJ;AAEA,OAAO,MAAMd,mBAAmB,GAAGC,OAAO,CAACmB,oBAAoB,CAAC;EAC5DC,cAAc,EAAEnB,uBAAuB;EACvCoB,YAAY,EAAE,CAACvB,oBAAoB;AACvC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/internal/GetUserTeams/GetUserTeamsUseCase.js","sources":["../../../../src/features/internal/GetUserTeams/GetUserTeamsUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListUserTeamsUseCase } from \"@webiny/api-core/features/users/ListUserTeams\";\nimport { GetUserTeamsUseCase as UseCase } from \"./abstractions.js\";\nimport type { IWorkflowStepTeam } from \"~/domain/workflow/abstractions.js\";\n\nclass GetUserTeamsUseCaseImpl implements UseCase.Interface {\n private cache = new Map<string, IWorkflowStepTeam[]>();\n\n constructor(private listUserTeams: ListUserTeamsUseCase.Interface) {}\n\n async execute(userId: string): UseCase.Return {\n // Check cache first\n const cached = this.cache.get(userId);\n if (cached) {\n return Result.ok(cached);\n }\n\n // Fetch teams\n const result = await this.listUserTeams.execute(userId);\n\n if (result.isFail()) {\n // If fetching teams fails, return an empty array (user has no teams)\n return Result.ok([]);\n }\n\n const teams = result.value.map(team => ({ id: team.id }));\n\n // Cache the result\n this.cache.set(userId, teams);\n\n return Result.ok(teams);\n }\n}\n\nexport const GetUserTeamsUseCase = UseCase.createImplementation({\n implementation: GetUserTeamsUseCaseImpl,\n dependencies: [ListUserTeamsUseCase]\n});\n"],"names":["GetUserTeamsUseCaseImpl","listUserTeams","Map","userId","cached","Result","result","teams","team","GetUserTeamsUseCase","UseCase","ListUserTeamsUseCase"],"mappings":";;;AAKA,MAAMA;IAGF,YAAoBC,aAA6C,CAAE;aAA/CA,aAAa,GAAbA;aAFZ,KAAK,GAAG,IAAIC;IAEgD;IAEpE,MAAM,QAAQC,MAAc,EAAkB;QAE1C,MAAMC,SAAS,IAAI,CAAC,KAAK,CAAC,GAAG,CAACD;QAC9B,IAAIC,QACA,OAAOC,OAAO,EAAE,CAACD;QAIrB,MAAME,SAAS,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAACH;QAEhD,IAAIG,OAAO,MAAM,IAEb,OAAOD,OAAO,EAAE,CAAC,EAAE;QAGvB,MAAME,QAAQD,OAAO,KAAK,CAAC,GAAG,CAACE,CAAAA,OAAS;gBAAE,IAAIA,KAAK,EAAE;YAAC;QAGtD,IAAI,CAAC,KAAK,CAAC,GAAG,CAACL,QAAQI;QAEvB,OAAOF,OAAO,EAAE,CAACE;IACrB;AACJ;AAEO,MAAME,0CAAsBC,oBAAAA,oBAA4B,CAAC;IAC5D,gBAAgBV;IAChB,cAAc;QAACW;KAAqB;AACxC"}
@@ -1,4 +1,5 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
- export const GetUserTeamsUseCase = createAbstraction("GetUserTeamsUseCase");
2
+ const GetUserTeamsUseCase = createAbstraction("GetUserTeamsUseCase");
3
+ export { GetUserTeamsUseCase };
3
4
 
4
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","GetUserTeamsUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { IWorkflowStepTeam } from \"~/domain/workflow/abstractions.js\";\n\nexport interface IGetUserTeamsUseCase {\n execute(userId: string): Promise<Result<IWorkflowStepTeam[], never>>;\n}\n\nexport const GetUserTeamsUseCase = createAbstraction<IGetUserTeamsUseCase>(\"GetUserTeamsUseCase\");\n\nexport namespace GetUserTeamsUseCase {\n export type Interface = IGetUserTeamsUseCase;\n export type Return = ReturnType<Interface[\"execute\"]>;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAQvD,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAuB,qBAAqB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/internal/GetUserTeams/abstractions.js","sources":["../../../../src/features/internal/GetUserTeams/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { IWorkflowStepTeam } from \"~/domain/workflow/abstractions.js\";\n\nexport interface IGetUserTeamsUseCase {\n execute(userId: string): Promise<Result<IWorkflowStepTeam[], never>>;\n}\n\nexport const GetUserTeamsUseCase = createAbstraction<IGetUserTeamsUseCase>(\"GetUserTeamsUseCase\");\n\nexport namespace GetUserTeamsUseCase {\n export type Interface = IGetUserTeamsUseCase;\n export type Return = ReturnType<Interface[\"execute\"]>;\n}\n"],"names":["GetUserTeamsUseCase","createAbstraction"],"mappings":";AAQO,MAAMA,sBAAsBC,kBAAwC"}
@@ -1 +1,4 @@
1
- export declare const GetUserTeamsFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const GetUserTeamsFeature: {
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 { GetUserTeamsUseCase } from "./GetUserTeamsUseCase.js";
3
- export const GetUserTeamsFeature = createFeature({
4
- name: "workflows.internal.getUserTeams",
5
- register(container) {
6
- container.register(GetUserTeamsUseCase).inSingletonScope();
7
- }
3
+ const GetUserTeamsFeature = createFeature({
4
+ name: "workflows.internal.getUserTeams",
5
+ register (container) {
6
+ container.register(GetUserTeamsUseCase).inSingletonScope();
7
+ }
8
8
  });
9
+ export { GetUserTeamsFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","GetUserTeamsUseCase","GetUserTeamsFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetUserTeamsUseCase } from \"./GetUserTeamsUseCase.js\";\n\nexport const GetUserTeamsFeature = createFeature({\n name: \"workflows.internal.getUserTeams\",\n register(container) {\n container.register(GetUserTeamsUseCase).inSingletonScope();\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,mBAAmB;AAE5B,OAAO,MAAMC,mBAAmB,GAAGF,aAAa,CAAC;EAC7CG,IAAI,EAAE,iCAAiC;EACvCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,mBAAmB,CAAC,CAACK,gBAAgB,CAAC,CAAC;EAC9D;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/internal/GetUserTeams/feature.js","sources":["../../../../src/features/internal/GetUserTeams/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetUserTeamsUseCase } from \"./GetUserTeamsUseCase.js\";\n\nexport const GetUserTeamsFeature = createFeature({\n name: \"workflows.internal.getUserTeams\",\n register(container) {\n container.register(GetUserTeamsUseCase).inSingletonScope();\n }\n});\n"],"names":["GetUserTeamsFeature","createFeature","container","GetUserTeamsUseCase"],"mappings":";;AAGO,MAAMA,sBAAsBC,cAAc;IAC7C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,qBAAqB,gBAAgB;IAC5D;AACJ"}
@@ -1,3 +1 @@
1
1
  export * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,24 +1,28 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { ListNotificationTypesRepository as Repository } from "./abstractions.js";
2
+ import { ListNotificationTypesRepository } from "./abstractions.js";
3
3
  import { NotificationTransport } from "../NotificationTransport/index.js";
4
4
  class ListNotificationTypesRepositoryImpl {
5
- constructor(types) {
6
- this.types = types;
7
- }
8
- async execute() {
9
- return Result.ok(this.types.map(type => {
10
- return {
11
- id: type.id,
12
- title: type.title
13
- };
14
- }));
15
- }
5
+ constructor(types){
6
+ this.types = types;
7
+ }
8
+ async execute() {
9
+ return Result.ok(this.types.map((type)=>({
10
+ id: type.id,
11
+ title: type.title
12
+ })));
13
+ }
16
14
  }
17
- export const ListNotificationTypesRepository = Repository.createImplementation({
18
- implementation: ListNotificationTypesRepositoryImpl,
19
- dependencies: [[NotificationTransport, {
20
- multiple: true
21
- }]]
15
+ const ListNotificationTypesRepository_ListNotificationTypesRepository = ListNotificationTypesRepository.createImplementation({
16
+ implementation: ListNotificationTypesRepositoryImpl,
17
+ dependencies: [
18
+ [
19
+ NotificationTransport,
20
+ {
21
+ multiple: true
22
+ }
23
+ ]
24
+ ]
22
25
  });
26
+ export { ListNotificationTypesRepository_ListNotificationTypesRepository as ListNotificationTypesRepository };
23
27
 
24
28
  //# sourceMappingURL=ListNotificationTypesRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","ListNotificationTypesRepository","Repository","NotificationTransport","ListNotificationTypesRepositoryImpl","constructor","types","execute","ok","map","type","id","title","createImplementation","implementation","dependencies","multiple"],"sources":["ListNotificationTypesRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListNotificationTypesRepository as Repository } from \"./abstractions.js\";\nimport { NotificationTransport } from \"~/features/notifications/NotificationTransport/index.js\";\n\nclass ListNotificationTypesRepositoryImpl implements Repository.Interface {\n private readonly types;\n\n public constructor(types: NotificationTransport.Interface[]) {\n this.types = types;\n }\n\n public async execute(): Repository.Return {\n return Result.ok(\n this.types.map(type => {\n return {\n id: type.id,\n title: type.title\n };\n })\n );\n }\n}\n\nexport const ListNotificationTypesRepository = Repository.createImplementation({\n implementation: ListNotificationTypesRepositoryImpl,\n dependencies: [[NotificationTransport, { multiple: true }]]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,+BAA+B,IAAIC,UAAU;AACtD,SAASC,qBAAqB;AAE9B,MAAMC,mCAAmC,CAAiC;EAG/DC,WAAWA,CAACC,KAAwC,EAAE;IACzD,IAAI,CAACA,KAAK,GAAGA,KAAK;EACtB;EAEA,MAAaC,OAAOA,CAAA,EAAsB;IACtC,OAAOP,MAAM,CAACQ,EAAE,CACZ,IAAI,CAACF,KAAK,CAACG,GAAG,CAACC,IAAI,IAAI;MACnB,OAAO;QACHC,EAAE,EAAED,IAAI,CAACC,EAAE;QACXC,KAAK,EAAEF,IAAI,CAACE;MAChB,CAAC;IACL,CAAC,CACL,CAAC;EACL;AACJ;AAEA,OAAO,MAAMX,+BAA+B,GAAGC,UAAU,CAACW,oBAAoB,CAAC;EAC3EC,cAAc,EAAEV,mCAAmC;EACnDW,YAAY,EAAE,CAAC,CAACZ,qBAAqB,EAAE;IAAEa,QAAQ,EAAE;EAAK,CAAC,CAAC;AAC9D,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js","sources":["../../../../src/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListNotificationTypesRepository as Repository } from \"./abstractions.js\";\nimport { NotificationTransport } from \"~/features/notifications/NotificationTransport/index.js\";\n\nclass ListNotificationTypesRepositoryImpl implements Repository.Interface {\n private readonly types;\n\n public constructor(types: NotificationTransport.Interface[]) {\n this.types = types;\n }\n\n public async execute(): Repository.Return {\n return Result.ok(\n this.types.map(type => {\n return {\n id: type.id,\n title: type.title\n };\n })\n );\n }\n}\n\nexport const ListNotificationTypesRepository = Repository.createImplementation({\n implementation: ListNotificationTypesRepositoryImpl,\n dependencies: [[NotificationTransport, { multiple: true }]]\n});\n"],"names":["ListNotificationTypesRepositoryImpl","types","Result","type","ListNotificationTypesRepository","Repository","NotificationTransport"],"mappings":";;;AAIA,MAAMA;IAGF,YAAmBC,KAAwC,CAAE;QACzD,IAAI,CAAC,KAAK,GAAGA;IACjB;IAEA,MAAa,UAA6B;QACtC,OAAOC,OAAO,EAAE,CACZ,IAAI,CAAC,KAAK,CAAC,GAAG,CAACC,CAAAA,OACJ;gBACH,IAAIA,KAAK,EAAE;gBACX,OAAOA,KAAK,KAAK;YACrB;IAGZ;AACJ;AAEO,MAAMC,kEAAkCC,gCAAAA,oBAA+B,CAAC;IAC3E,gBAAgBL;IAChB,cAAc;QAAC;YAACM;YAAuB;gBAAE,UAAU;YAAK;SAAE;KAAC;AAC/D"}
@@ -1,4 +1,4 @@
1
- import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
1
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
2
2
  import { ListNotificationTypesRepository, ListNotificationTypesUseCase as UseCase } from "./abstractions.js";
3
3
  declare class ListNotificationTypesUseCaseImpl implements UseCase.Interface {
4
4
  private identityContext;
@@ -1,39 +1,34 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
3
- import { ListNotificationTypesRepository, ListNotificationTypesUseCase as UseCase } from "./abstractions.js";
2
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
3
+ import { ListNotificationTypesRepository, ListNotificationTypesUseCase } from "./abstractions.js";
4
4
  import { WORKFLOWS_PERMISSION } from "../../../constants.js";
5
5
  import { NotificationAuthorizedError } from "../../../domain/notifications/errors.js";
6
6
  class ListNotificationTypesUseCaseImpl {
7
- constructor(identityContext, repository) {
8
- this.identityContext = identityContext;
9
- this.repository = repository;
10
- }
11
- async execute() {
12
- const hasAccess = await this.ensureAccess();
13
- if (hasAccess.isFail()) {
14
- return Result.fail(hasAccess.error);
7
+ constructor(identityContext, repository){
8
+ this.identityContext = identityContext;
9
+ this.repository = repository;
15
10
  }
16
- const result = await this.repository.execute();
17
- if (result.isFail()) {
18
- return result;
11
+ async execute() {
12
+ const hasAccess = await this.ensureAccess();
13
+ if (hasAccess.isFail()) return Result.fail(hasAccess.error);
14
+ const result = await this.repository.execute();
15
+ if (result.isFail()) return result;
16
+ return Result.ok(result.value);
19
17
  }
20
- return Result.ok(result.value);
21
- }
22
- async ensureAccess() {
23
- const permissions = await this.identityContext.getPermissions(WORKFLOWS_PERMISSION);
24
- for (const permission of permissions) {
25
- if (permission.name === "*") {
26
- return Result.ok();
27
- } else if (permission.editor) {
28
- return Result.ok();
29
- }
18
+ async ensureAccess() {
19
+ const permissions = await this.identityContext.getPermissions(WORKFLOWS_PERMISSION);
20
+ for (const permission of permissions)if ("*" === permission.name) return Result.ok();
21
+ else if (permission.editor) return Result.ok();
22
+ return Result.fail(new NotificationAuthorizedError("You cannot list notifications."));
30
23
  }
31
- return Result.fail(new NotificationAuthorizedError("You cannot list notifications."));
32
- }
33
24
  }
34
- export const ListNotificationTypesUseCase = UseCase.createImplementation({
35
- implementation: ListNotificationTypesUseCaseImpl,
36
- dependencies: [IdentityContext, ListNotificationTypesRepository]
25
+ const ListNotificationTypesUseCase_ListNotificationTypesUseCase = ListNotificationTypesUseCase.createImplementation({
26
+ implementation: ListNotificationTypesUseCaseImpl,
27
+ dependencies: [
28
+ IdentityContext,
29
+ ListNotificationTypesRepository
30
+ ]
37
31
  });
32
+ export { ListNotificationTypesUseCase_ListNotificationTypesUseCase as ListNotificationTypesUseCase };
38
33
 
39
34
  //# sourceMappingURL=ListNotificationTypesUseCase.js.map