@webiny/app-headless-cms-workflows 0.0.0-unstable.0156a4c312

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 (417) hide show
  1. package/Components/CmsEntriesList/CmsReviewMoveEntryAction.d.ts +2 -0
  2. package/Components/CmsEntriesList/CmsReviewMoveEntryAction.js +43 -0
  3. package/Components/CmsEntriesList/CmsReviewMoveEntryAction.js.map +1 -0
  4. package/Components/CmsEntriesList/CmsReviewMoveEntryAction.test.d.ts +1 -0
  5. package/Components/CmsEntriesList/CmsReviewMoveEntryAction.test.js +118 -0
  6. package/Components/CmsEntriesList/CmsReviewMoveEntryAction.test.js.map +1 -0
  7. package/Components/CmsEntriesList/CmsReviewScheduleEntryAction.d.ts +2 -0
  8. package/Components/CmsEntriesList/CmsReviewScheduleEntryAction.js +22 -0
  9. package/Components/CmsEntriesList/CmsReviewScheduleEntryAction.js.map +1 -0
  10. package/Components/CmsEntriesList/CmsReviewScheduleEntryAction.test.d.ts +1 -0
  11. package/Components/CmsEntriesList/CmsReviewScheduleEntryAction.test.js +98 -0
  12. package/Components/CmsEntriesList/CmsReviewScheduleEntryAction.test.js.map +1 -0
  13. package/Components/ContentEntryForm/CmsEntryReviewBar.d.ts +2 -0
  14. package/Components/ContentEntryForm/CmsEntryReviewBar.js +32 -0
  15. package/Components/ContentEntryForm/CmsEntryReviewBar.js.map +1 -0
  16. package/Components/ContentEntryForm/CmsEntryReviewBar.test.d.ts +1 -0
  17. package/Components/ContentEntryForm/CmsEntryReviewBar.test.js +128 -0
  18. package/Components/ContentEntryForm/CmsEntryReviewBar.test.js.map +1 -0
  19. package/Components/ContentEntryForm/CmsEntryReviewBlockedActions.d.ts +2 -0
  20. package/Components/ContentEntryForm/CmsEntryReviewBlockedActions.js +46 -0
  21. package/Components/ContentEntryForm/CmsEntryReviewBlockedActions.js.map +1 -0
  22. package/Components/ContentEntryForm/CmsEntryReviewBlockedActions.test.d.ts +1 -0
  23. package/Components/ContentEntryForm/CmsEntryReviewBlockedActions.test.js +222 -0
  24. package/Components/ContentEntryForm/CmsEntryReviewBlockedActions.test.js.map +1 -0
  25. package/Components/ContentEntryForm/CmsEntryReviewFormLock.d.ts +2 -0
  26. package/Components/ContentEntryForm/CmsEntryReviewFormLock.js +32 -0
  27. package/Components/ContentEntryForm/CmsEntryReviewFormLock.js.map +1 -0
  28. package/Components/ContentEntryForm/CmsEntryReviewFormLock.test.d.ts +1 -0
  29. package/Components/ContentEntryForm/CmsEntryReviewFormLock.test.js +94 -0
  30. package/Components/ContentEntryForm/CmsEntryReviewFormLock.test.js.map +1 -0
  31. package/Components/ContentEntryForm/CmsEntryReviewNewRevision.d.ts +2 -0
  32. package/Components/ContentEntryForm/CmsEntryReviewNewRevision.js +56 -0
  33. package/Components/ContentEntryForm/CmsEntryReviewNewRevision.js.map +1 -0
  34. package/Components/ContentEntryForm/CmsEntryReviewNewRevision.test.d.ts +1 -0
  35. package/Components/ContentEntryForm/CmsEntryReviewNewRevision.test.js +186 -0
  36. package/Components/ContentEntryForm/CmsEntryReviewNewRevision.test.js.map +1 -0
  37. package/Components/ContentEntryForm/CmsEntryReviewScheduleMenuItem.d.ts +2 -0
  38. package/Components/ContentEntryForm/CmsEntryReviewScheduleMenuItem.js +26 -0
  39. package/Components/ContentEntryForm/CmsEntryReviewScheduleMenuItem.js.map +1 -0
  40. package/Components/ContentEntryForm/CmsEntryReviewScheduleMenuItem.test.d.ts +1 -0
  41. package/Components/ContentEntryForm/CmsEntryReviewScheduleMenuItem.test.js +78 -0
  42. package/Components/ContentEntryForm/CmsEntryReviewScheduleMenuItem.test.js.map +1 -0
  43. package/Components/ContentEntryForm/getModelFieldLabels.d.ts +3 -0
  44. package/Components/ContentEntryForm/getModelFieldLabels.js +8 -0
  45. package/Components/ContentEntryForm/getModelFieldLabels.js.map +1 -0
  46. package/Components/ContentEntryForm/index.d.ts +5 -0
  47. package/Components/ContentEntryForm/index.js +5 -0
  48. package/Components/ContentReviews/CmsContentReviews.d.ts +2 -0
  49. package/Components/ContentReviews/CmsContentReviews.js +11 -0
  50. package/Components/ContentReviews/CmsContentReviews.js.map +1 -0
  51. package/Components/ContentReviews/CmsContentReviews.test.d.ts +1 -0
  52. package/Components/ContentReviews/CmsContentReviews.test.js +214 -0
  53. package/Components/ContentReviews/CmsContentReviews.test.js.map +1 -0
  54. package/Components/ContentReviews/CmsContentReviewsMount.d.ts +4 -0
  55. package/Components/ContentReviews/CmsContentReviewsMount.js +44 -0
  56. package/Components/ContentReviews/CmsContentReviewsMount.js.map +1 -0
  57. package/Components/ContentReviews/CmsContentReviewsSidebarItem.d.ts +2 -0
  58. package/Components/ContentReviews/CmsContentReviewsSidebarItem.js +20 -0
  59. package/Components/ContentReviews/CmsContentReviewsSidebarItem.js.map +1 -0
  60. package/Components/ContentReviews/CmsContentReviewsSidebarItem.test.d.ts +1 -0
  61. package/Components/ContentReviews/CmsContentReviewsSidebarItem.test.js +83 -0
  62. package/Components/ContentReviews/CmsContentReviewsSidebarItem.test.js.map +1 -0
  63. package/Components/ModelDelete/ModelBoundToWorkflowErrorData.d.ts +8 -0
  64. package/Components/ModelDelete/ModelBoundToWorkflowErrorData.js +0 -0
  65. package/Components/ModelDelete/ModelDeleteWorkflowCopy.d.ts +10 -0
  66. package/Components/ModelDelete/ModelDeleteWorkflowCopy.js +0 -0
  67. package/Components/ModelDelete/ModelDeleteWorkflowError.d.ts +2 -0
  68. package/Components/ModelDelete/ModelDeleteWorkflowError.js +34 -0
  69. package/Components/ModelDelete/ModelDeleteWorkflowError.js.map +1 -0
  70. package/Components/ModelDelete/ModelDeleteWorkflowError.test.d.ts +1 -0
  71. package/Components/ModelDelete/ModelDeleteWorkflowError.test.js +73 -0
  72. package/Components/ModelDelete/ModelDeleteWorkflowError.test.js.map +1 -0
  73. package/Components/ModelDelete/getModelDeleteWorkflowCopy.d.ts +3 -0
  74. package/Components/ModelDelete/getModelDeleteWorkflowCopy.js +17 -0
  75. package/Components/ModelDelete/getModelDeleteWorkflowCopy.js.map +1 -0
  76. package/Components/ModelDelete/getModelDeleteWorkflowCopy.test.d.ts +1 -0
  77. package/Components/ModelDelete/getModelDeleteWorkflowCopy.test.js +28 -0
  78. package/Components/ModelDelete/getModelDeleteWorkflowCopy.test.js.map +1 -0
  79. package/Components/ignoreAction.d.ts +1 -0
  80. package/Components/ignoreAction.js +4 -0
  81. package/Components/ignoreAction.js.map +1 -0
  82. package/LICENSE +21 -0
  83. package/README.md +11 -0
  84. package/Routes/CmsWorkflowEditor.d.ts +2 -0
  85. package/Routes/CmsWorkflowEditor.js +23 -0
  86. package/Routes/CmsWorkflowEditor.js.map +1 -0
  87. package/Routes/CmsWorkflowEditor.test.d.ts +1 -0
  88. package/Routes/CmsWorkflowEditor.test.js +141 -0
  89. package/Routes/CmsWorkflowEditor.test.js.map +1 -0
  90. package/Routes/index.d.ts +1 -0
  91. package/Routes/index.js +1 -0
  92. package/features/cache/CmsReviewCacheSyncHandler.d.ts +8 -0
  93. package/features/cache/CmsReviewCacheSyncHandler.js +14 -0
  94. package/features/cache/CmsReviewCacheSyncHandler.js.map +1 -0
  95. package/features/cache/CmsReviewCacheWriter.d.ts +14 -0
  96. package/features/cache/CmsReviewCacheWriter.js +39 -0
  97. package/features/cache/CmsReviewCacheWriter.js.map +1 -0
  98. package/features/cache/CmsReviewCacheWriter.test.d.ts +1 -0
  99. package/features/cache/CmsReviewCacheWriter.test.js +207 -0
  100. package/features/cache/CmsReviewCacheWriter.test.js.map +1 -0
  101. package/features/cache/CmsReviewEntriesCacheProviderDecorator.d.ts +12 -0
  102. package/features/cache/CmsReviewEntriesCacheProviderDecorator.js +17 -0
  103. package/features/cache/CmsReviewEntriesCacheProviderDecorator.js.map +1 -0
  104. package/features/cache/CmsReviewEntriesCacheProviderDecorator.test.d.ts +1 -0
  105. package/features/cache/CmsReviewEntriesCacheProviderDecorator.test.js +129 -0
  106. package/features/cache/CmsReviewEntriesCacheProviderDecorator.test.js.map +1 -0
  107. package/features/cache/ReviewPreservingEntriesCache.d.ts +18 -0
  108. package/features/cache/ReviewPreservingEntriesCache.js +54 -0
  109. package/features/cache/ReviewPreservingEntriesCache.js.map +1 -0
  110. package/features/cache/abstractions.d.ts +5 -0
  111. package/features/cache/abstractions.js +5 -0
  112. package/features/cache/abstractions.js.map +1 -0
  113. package/features/editorGateway/CmsWorkflowEditorGateway/CmsWorkflowEditorGateway.d.ts +26 -0
  114. package/features/editorGateway/CmsWorkflowEditorGateway/CmsWorkflowEditorGateway.js +104 -0
  115. package/features/editorGateway/CmsWorkflowEditorGateway/CmsWorkflowEditorGateway.js.map +1 -0
  116. package/features/editorGateway/CmsWorkflowEditorGateway/CmsWorkflowEditorGateway.test.d.ts +1 -0
  117. package/features/editorGateway/CmsWorkflowEditorGateway/CmsWorkflowEditorGateway.test.js +589 -0
  118. package/features/editorGateway/CmsWorkflowEditorGateway/CmsWorkflowEditorGateway.test.js.map +1 -0
  119. package/features/editorGateway/feature.d.ts +1 -0
  120. package/features/editorGateway/feature.js +11 -0
  121. package/features/editorGateway/feature.js.map +1 -0
  122. package/features/editorGateway/feature.test.d.ts +1 -0
  123. package/features/editorGateway/feature.test.js +272 -0
  124. package/features/editorGateway/feature.test.js.map +1 -0
  125. package/features/editorGateway/graphql/cmsEntryFolderExists.d.ts +1 -0
  126. package/features/editorGateway/graphql/cmsEntryFolderExists.js +16 -0
  127. package/features/editorGateway/graphql/cmsEntryFolderExists.js.map +1 -0
  128. package/features/editorGateway/graphql/deleteCmsEntryWorkflow.d.ts +1 -0
  129. package/features/editorGateway/graphql/deleteCmsEntryWorkflow.js +19 -0
  130. package/features/editorGateway/graphql/deleteCmsEntryWorkflow.js.map +1 -0
  131. package/features/editorGateway/graphql/getCmsEntryWorkflow.d.ts +1 -0
  132. package/features/editorGateway/graphql/getCmsEntryWorkflow.js +19 -0
  133. package/features/editorGateway/graphql/getCmsEntryWorkflow.js.map +1 -0
  134. package/features/editorGateway/graphql/inspectCmsEntryRouting.d.ts +1 -0
  135. package/features/editorGateway/graphql/inspectCmsEntryRouting.js +19 -0
  136. package/features/editorGateway/graphql/inspectCmsEntryRouting.js.map +1 -0
  137. package/features/editorGateway/graphql/listCmsEntryWorkflowModels.d.ts +1 -0
  138. package/features/editorGateway/graphql/listCmsEntryWorkflowModels.js +29 -0
  139. package/features/editorGateway/graphql/listCmsEntryWorkflowModels.js.map +1 -0
  140. package/features/editorGateway/graphql/storeCmsEntryWorkflow.d.ts +1 -0
  141. package/features/editorGateway/graphql/storeCmsEntryWorkflow.js +19 -0
  142. package/features/editorGateway/graphql/storeCmsEntryWorkflow.js.map +1 -0
  143. package/features/editorMounting/CmsWorkflowEditorAppAdapter.d.ts +25 -0
  144. package/features/editorMounting/CmsWorkflowEditorAppAdapter.js +51 -0
  145. package/features/editorMounting/CmsWorkflowEditorAppAdapter.js.map +1 -0
  146. package/features/editorMounting/CmsWorkflowEditorAppAdapter.test.d.ts +1 -0
  147. package/features/editorMounting/CmsWorkflowEditorAppAdapter.test.js +185 -0
  148. package/features/editorMounting/CmsWorkflowEditorAppAdapter.test.js.map +1 -0
  149. package/features/editorMounting/abstractions.d.ts +5 -0
  150. package/features/editorMounting/abstractions.js +5 -0
  151. package/features/editorMounting/abstractions.js.map +1 -0
  152. package/features/editorMounting/feature.d.ts +3 -0
  153. package/features/editorMounting/feature.js +19 -0
  154. package/features/editorMounting/feature.js.map +1 -0
  155. package/features/editorMounting/feature.test.d.ts +1 -0
  156. package/features/editorMounting/feature.test.js +100 -0
  157. package/features/editorMounting/feature.test.js.map +1 -0
  158. package/features/editorReview/CmsEntryReview.d.ts +8 -0
  159. package/features/editorReview/CmsEntryReview.js +14 -0
  160. package/features/editorReview/CmsEntryReview.js.map +1 -0
  161. package/features/editorReview/abstractions.d.ts +5 -0
  162. package/features/editorReview/abstractions.js +5 -0
  163. package/features/editorReview/abstractions.js.map +1 -0
  164. package/features/editorReview/feature.d.ts +3 -0
  165. package/features/editorReview/feature.js +17 -0
  166. package/features/editorReview/feature.js.map +1 -0
  167. package/features/editorReview/feature.test.d.ts +1 -0
  168. package/features/editorReview/feature.test.js +46 -0
  169. package/features/editorReview/feature.test.js.map +1 -0
  170. package/features/editorReview/useCmsEntryReview.d.ts +2 -0
  171. package/features/editorReview/useCmsEntryReview.js +8 -0
  172. package/features/editorReview/useCmsEntryReview.js.map +1 -0
  173. package/features/feature.d.ts +1 -0
  174. package/features/feature.js +15 -0
  175. package/features/feature.js.map +1 -0
  176. package/features/gateway/CmsReviewChangeMessageHandler.d.ts +8 -0
  177. package/features/gateway/CmsReviewChangeMessageHandler.js +16 -0
  178. package/features/gateway/CmsReviewChangeMessageHandler.js.map +1 -0
  179. package/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.d.ts +16 -0
  180. package/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.js +39 -0
  181. package/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.js.map +1 -0
  182. package/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.test.d.ts +1 -0
  183. package/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.test.js +83 -0
  184. package/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.test.js.map +1 -0
  185. package/features/gateway/CmsReviewContentAdapter/abstractions.d.ts +5 -0
  186. package/features/gateway/CmsReviewContentAdapter/abstractions.js +5 -0
  187. package/features/gateway/CmsReviewContentAdapter/abstractions.js.map +1 -0
  188. package/features/gateway/CmsReviewGateway/CmsReviewGateway.d.ts +52 -0
  189. package/features/gateway/CmsReviewGateway/CmsReviewGateway.js +221 -0
  190. package/features/gateway/CmsReviewGateway/CmsReviewGateway.js.map +1 -0
  191. package/features/gateway/CmsReviewGateway/CmsReviewGateway.test.d.ts +1 -0
  192. package/features/gateway/CmsReviewGateway/CmsReviewGateway.test.js +689 -0
  193. package/features/gateway/CmsReviewGateway/CmsReviewGateway.test.js.map +1 -0
  194. package/features/gateway/CmsReviewNotificationHandler.d.ts +8 -0
  195. package/features/gateway/CmsReviewNotificationHandler.js +16 -0
  196. package/features/gateway/CmsReviewNotificationHandler.js.map +1 -0
  197. package/features/gateway/CmsReviewRowProvider/CmsReviewRowProvider.d.ts +8 -0
  198. package/features/gateway/CmsReviewRowProvider/CmsReviewRowProvider.js +14 -0
  199. package/features/gateway/CmsReviewRowProvider/CmsReviewRowProvider.js.map +1 -0
  200. package/features/gateway/CmsReviewRowProvider/abstractions.d.ts +5 -0
  201. package/features/gateway/CmsReviewRowProvider/abstractions.js +5 -0
  202. package/features/gateway/CmsReviewRowProvider/abstractions.js.map +1 -0
  203. package/features/gateway/contentReviewsBindings.test.d.ts +1 -0
  204. package/features/gateway/contentReviewsBindings.test.js +125 -0
  205. package/features/gateway/contentReviewsBindings.test.js.map +1 -0
  206. package/features/gateway/feature.d.ts +4 -0
  207. package/features/gateway/feature.js +27 -0
  208. package/features/gateway/feature.js.map +1 -0
  209. package/features/gateway/feature.test.d.ts +1 -0
  210. package/features/gateway/feature.test.js +79 -0
  211. package/features/gateway/feature.test.js.map +1 -0
  212. package/features/gateway/graphql/CmsOperationResponse.d.ts +3 -0
  213. package/features/gateway/graphql/CmsOperationResponse.js +0 -0
  214. package/features/gateway/graphql/approveCmsEntryReviewStep.d.ts +1 -0
  215. package/features/gateway/graphql/approveCmsEntryReviewStep.js +18 -0
  216. package/features/gateway/graphql/approveCmsEntryReviewStep.js.map +1 -0
  217. package/features/gateway/graphql/cancelCmsEntryReview.d.ts +1 -0
  218. package/features/gateway/graphql/cancelCmsEntryReview.js +18 -0
  219. package/features/gateway/graphql/cancelCmsEntryReview.js.map +1 -0
  220. package/features/gateway/graphql/cancelCmsEntryReviewsForDelete.d.ts +1 -0
  221. package/features/gateway/graphql/cancelCmsEntryReviewsForDelete.js +28 -0
  222. package/features/gateway/graphql/cancelCmsEntryReviewsForDelete.js.map +1 -0
  223. package/features/gateway/graphql/getCmsEntryReview.d.ts +1 -0
  224. package/features/gateway/graphql/getCmsEntryReview.js +18 -0
  225. package/features/gateway/graphql/getCmsEntryReview.js.map +1 -0
  226. package/features/gateway/graphql/getCmsEntryReviewStepRun.d.ts +1 -0
  227. package/features/gateway/graphql/getCmsEntryReviewStepRun.js +18 -0
  228. package/features/gateway/graphql/getCmsEntryReviewStepRun.js.map +1 -0
  229. package/features/gateway/graphql/getCmsEntryTargetReview.d.ts +1 -0
  230. package/features/gateway/graphql/getCmsEntryTargetReview.js +18 -0
  231. package/features/gateway/graphql/getCmsEntryTargetReview.js.map +1 -0
  232. package/features/gateway/graphql/listCmsEntryBlockingReviews.d.ts +1 -0
  233. package/features/gateway/graphql/listCmsEntryBlockingReviews.js +18 -0
  234. package/features/gateway/graphql/listCmsEntryBlockingReviews.js.map +1 -0
  235. package/features/gateway/graphql/listCmsEntryReviewStepCandidates.d.ts +1 -0
  236. package/features/gateway/graphql/listCmsEntryReviewStepCandidates.js +18 -0
  237. package/features/gateway/graphql/listCmsEntryReviewStepCandidates.js.map +1 -0
  238. package/features/gateway/graphql/listCmsEntryReviews.d.ts +1 -0
  239. package/features/gateway/graphql/listCmsEntryReviews.js +34 -0
  240. package/features/gateway/graphql/listCmsEntryReviews.js.map +1 -0
  241. package/features/gateway/graphql/listCmsEntryStepCandidates.d.ts +1 -0
  242. package/features/gateway/graphql/listCmsEntryStepCandidates.js +28 -0
  243. package/features/gateway/graphql/listCmsEntryStepCandidates.js.map +1 -0
  244. package/features/gateway/graphql/listCmsEntryWorkflows.d.ts +1 -0
  245. package/features/gateway/graphql/listCmsEntryWorkflows.js +18 -0
  246. package/features/gateway/graphql/listCmsEntryWorkflows.js.map +1 -0
  247. package/features/gateway/graphql/reassignCmsEntryReviewStep.d.ts +1 -0
  248. package/features/gateway/graphql/reassignCmsEntryReviewStep.js +18 -0
  249. package/features/gateway/graphql/reassignCmsEntryReviewStep.js.map +1 -0
  250. package/features/gateway/graphql/rejectCmsEntryReviewStep.d.ts +1 -0
  251. package/features/gateway/graphql/rejectCmsEntryReviewStep.js +18 -0
  252. package/features/gateway/graphql/rejectCmsEntryReviewStep.js.map +1 -0
  253. package/features/gateway/graphql/requestCmsEntryReview.d.ts +1 -0
  254. package/features/gateway/graphql/requestCmsEntryReview.js +28 -0
  255. package/features/gateway/graphql/requestCmsEntryReview.js.map +1 -0
  256. package/features/gateway/graphql/restartCmsEntryReviewStep.d.ts +1 -0
  257. package/features/gateway/graphql/restartCmsEntryReviewStep.js +18 -0
  258. package/features/gateway/graphql/restartCmsEntryReviewStep.js.map +1 -0
  259. package/features/gateway/graphql/startCmsEntryReviewStep.d.ts +1 -0
  260. package/features/gateway/graphql/startCmsEntryReviewStep.js +18 -0
  261. package/features/gateway/graphql/startCmsEntryReviewStep.js.map +1 -0
  262. package/features/gateway/graphql/takeOverCmsEntryReviewStep.d.ts +1 -0
  263. package/features/gateway/graphql/takeOverCmsEntryReviewStep.js +22 -0
  264. package/features/gateway/graphql/takeOverCmsEntryReviewStep.js.map +1 -0
  265. package/features/trash/BulkDeletePresenterReviewDecorator.d.ts +20 -0
  266. package/features/trash/BulkDeletePresenterReviewDecorator.js +81 -0
  267. package/features/trash/BulkDeletePresenterReviewDecorator.js.map +1 -0
  268. package/features/trash/BulkDeletePresenterReviewDecorator.test.d.ts +1 -0
  269. package/features/trash/BulkDeletePresenterReviewDecorator.test.js +693 -0
  270. package/features/trash/BulkDeletePresenterReviewDecorator.test.js.map +1 -0
  271. package/features/trash/DeleteEntryRevisionUseCaseReviewDecorator.d.ts +13 -0
  272. package/features/trash/DeleteEntryRevisionUseCaseReviewDecorator.js +23 -0
  273. package/features/trash/DeleteEntryRevisionUseCaseReviewDecorator.js.map +1 -0
  274. package/features/trash/DeleteEntryRevisionUseCaseReviewDecorator.test.d.ts +1 -0
  275. package/features/trash/DeleteEntryRevisionUseCaseReviewDecorator.test.js +123 -0
  276. package/features/trash/DeleteEntryRevisionUseCaseReviewDecorator.test.js.map +1 -0
  277. package/features/trash/DeleteEntryUseCaseReviewDecorator.d.ts +13 -0
  278. package/features/trash/DeleteEntryUseCaseReviewDecorator.js +23 -0
  279. package/features/trash/DeleteEntryUseCaseReviewDecorator.js.map +1 -0
  280. package/features/trash/DeleteEntryUseCaseReviewDecorator.test.d.ts +1 -0
  281. package/features/trash/DeleteEntryUseCaseReviewDecorator.test.js +139 -0
  282. package/features/trash/DeleteEntryUseCaseReviewDecorator.test.js.map +1 -0
  283. package/features/trash/PermanentlyDeleteEntryUseCaseReviewDecorator.d.ts +13 -0
  284. package/features/trash/PermanentlyDeleteEntryUseCaseReviewDecorator.js +23 -0
  285. package/features/trash/PermanentlyDeleteEntryUseCaseReviewDecorator.js.map +1 -0
  286. package/features/trash/PermanentlyDeleteEntryUseCaseReviewDecorator.test.d.ts +1 -0
  287. package/features/trash/PermanentlyDeleteEntryUseCaseReviewDecorator.test.js +122 -0
  288. package/features/trash/PermanentlyDeleteEntryUseCaseReviewDecorator.test.js.map +1 -0
  289. package/features/trash/feature.d.ts +1 -0
  290. package/features/trash/feature.js +17 -0
  291. package/features/trash/feature.js.map +1 -0
  292. package/features/trash/feature.test.d.ts +1 -0
  293. package/features/trash/feature.test.js +213 -0
  294. package/features/trash/feature.test.js.map +1 -0
  295. package/index.d.ts +2 -0
  296. package/index.editor.test.d.ts +1 -0
  297. package/index.editor.test.js +149 -0
  298. package/index.editor.test.js.map +1 -0
  299. package/index.js +41 -0
  300. package/index.js.map +1 -0
  301. package/index.lists.test.d.ts +1 -0
  302. package/index.lists.test.js +172 -0
  303. package/index.lists.test.js.map +1 -0
  304. package/index.mount.test.d.ts +1 -0
  305. package/index.mount.test.js +49 -0
  306. package/index.mount.test.js.map +1 -0
  307. package/index.test.d.ts +1 -0
  308. package/index.test.js +414 -0
  309. package/index.test.js.map +1 -0
  310. package/package.json +54 -0
  311. package/presentation/CmsEntryContentReloader.d.ts +8 -0
  312. package/presentation/CmsEntryContentReloader.js +20 -0
  313. package/presentation/CmsEntryContentReloader.js.map +1 -0
  314. package/presentation/CmsEntryContentReloader.test.d.ts +1 -0
  315. package/presentation/CmsEntryContentReloader.test.js +118 -0
  316. package/presentation/CmsEntryContentReloader.test.js.map +1 -0
  317. package/presentation/CmsEntryFormPresenterReviewDecorator.d.ts +27 -0
  318. package/presentation/CmsEntryFormPresenterReviewDecorator.js +167 -0
  319. package/presentation/CmsEntryFormPresenterReviewDecorator.js.map +1 -0
  320. package/presentation/CmsEntryFormPresenterReviewDecorator.test.d.ts +1 -0
  321. package/presentation/CmsEntryFormPresenterReviewDecorator.test.js +601 -0
  322. package/presentation/CmsEntryFormPresenterReviewDecorator.test.js.map +1 -0
  323. package/presentation/CmsEntryUnsavedChanges.d.ts +7 -0
  324. package/presentation/CmsEntryUnsavedChanges.js +12 -0
  325. package/presentation/CmsEntryUnsavedChanges.js.map +1 -0
  326. package/presentation/CmsEntryUnsavedChanges.test.d.ts +1 -0
  327. package/presentation/CmsEntryUnsavedChanges.test.js +23 -0
  328. package/presentation/CmsEntryUnsavedChanges.test.js.map +1 -0
  329. package/presentation/CmsReviewFieldSelections.test.d.ts +1 -0
  330. package/presentation/CmsReviewFieldSelections.test.js +27 -0
  331. package/presentation/CmsReviewFieldSelections.test.js.map +1 -0
  332. package/presentation/CmsReviewGetEntryFieldSelection.d.ts +8 -0
  333. package/presentation/CmsReviewGetEntryFieldSelection.js +16 -0
  334. package/presentation/CmsReviewGetEntryFieldSelection.js.map +1 -0
  335. package/presentation/CmsReviewListEntriesFieldSelection.d.ts +8 -0
  336. package/presentation/CmsReviewListEntriesFieldSelection.js +16 -0
  337. package/presentation/CmsReviewListEntriesFieldSelection.js.map +1 -0
  338. package/presentation/CmsReviewTableRowMapperDecorator.d.ts +11 -0
  339. package/presentation/CmsReviewTableRowMapperDecorator.js +24 -0
  340. package/presentation/CmsReviewTableRowMapperDecorator.js.map +1 -0
  341. package/presentation/CmsReviewTableRowMapperDecorator.test.d.ts +1 -0
  342. package/presentation/CmsReviewTableRowMapperDecorator.test.js +120 -0
  343. package/presentation/CmsReviewTableRowMapperDecorator.test.js.map +1 -0
  344. package/presentation/CmsRevisionsListPresenterDecorator.d.ts +24 -0
  345. package/presentation/CmsRevisionsListPresenterDecorator.js +66 -0
  346. package/presentation/CmsRevisionsListPresenterDecorator.js.map +1 -0
  347. package/presentation/CmsRevisionsListPresenterDecorator.test.d.ts +1 -0
  348. package/presentation/CmsRevisionsListPresenterDecorator.test.js +174 -0
  349. package/presentation/CmsRevisionsListPresenterDecorator.test.js.map +1 -0
  350. package/presentation/contentReviews/CmsContentReviewsPresenter.d.ts +28 -0
  351. package/presentation/contentReviews/CmsContentReviewsPresenter.js +103 -0
  352. package/presentation/contentReviews/CmsContentReviewsPresenter.js.map +1 -0
  353. package/presentation/contentReviews/CmsContentReviewsPresenter.test.d.ts +1 -0
  354. package/presentation/contentReviews/CmsContentReviewsPresenter.test.js +238 -0
  355. package/presentation/contentReviews/CmsContentReviewsPresenter.test.js.map +1 -0
  356. package/presentation/contentReviews/abstractions.d.ts +31 -0
  357. package/presentation/contentReviews/abstractions.js +5 -0
  358. package/presentation/contentReviews/abstractions.js.map +1 -0
  359. package/presentation/contentReviews/feature.d.ts +3 -0
  360. package/presentation/contentReviews/feature.js +17 -0
  361. package/presentation/contentReviews/feature.js.map +1 -0
  362. package/presentation/contentReviews/toContentTypes.d.ts +3 -0
  363. package/presentation/contentReviews/toContentTypes.js +14 -0
  364. package/presentation/contentReviews/toContentTypes.js.map +1 -0
  365. package/presentation/contentReviews/toContentTypes.test.d.ts +1 -0
  366. package/presentation/contentReviews/toContentTypes.test.js +20 -0
  367. package/presentation/contentReviews/toContentTypes.test.js.map +1 -0
  368. package/presentation/feature.d.ts +1 -0
  369. package/presentation/feature.js +19 -0
  370. package/presentation/feature.js.map +1 -0
  371. package/presentation/getCmsEntryReviewContext.d.ts +4 -0
  372. package/presentation/getCmsEntryReviewContext.js +12 -0
  373. package/presentation/getCmsEntryReviewContext.js.map +1 -0
  374. package/presentation/getCmsEntryReviewInitParams.d.ts +13 -0
  375. package/presentation/getCmsEntryReviewInitParams.js +18 -0
  376. package/presentation/getCmsEntryReviewInitParams.js.map +1 -0
  377. package/presentation/getCmsEntryReviewInitParams.test.d.ts +1 -0
  378. package/presentation/getCmsEntryReviewInitParams.test.js +69 -0
  379. package/presentation/getCmsEntryReviewInitParams.test.js.map +1 -0
  380. package/routes.d.ts +11 -0
  381. package/routes.js +21 -0
  382. package/routes.js.map +1 -0
  383. package/testing/createEntry.d.ts +3 -0
  384. package/testing/createEntry.js +22 -0
  385. package/testing/createEntry.js.map +1 -0
  386. package/testing/createEntrySession.d.ts +9 -0
  387. package/testing/createEntrySession.js +29 -0
  388. package/testing/createEntrySession.js.map +1 -0
  389. package/testing/createFolder.d.ts +2 -0
  390. package/testing/createFolder.js +13 -0
  391. package/testing/createFolder.js.map +1 -0
  392. package/testing/createFormVm.d.ts +2 -0
  393. package/testing/createFormVm.js +22 -0
  394. package/testing/createFormVm.js.map +1 -0
  395. package/testing/models.d.ts +4 -0
  396. package/testing/models.js +23 -0
  397. package/testing/models.js.map +1 -0
  398. package/testing/renderEditorTree.d.ts +17 -0
  399. package/testing/renderEditorTree.js +93 -0
  400. package/testing/renderEditorTree.js.map +1 -0
  401. package/testing/reviewStates.d.ts +17 -0
  402. package/testing/reviewStates.js +65 -0
  403. package/testing/reviewStates.js.map +1 -0
  404. package/types.d.ts +10 -0
  405. package/types.js +0 -0
  406. package/utils/appName.d.ts +4 -0
  407. package/utils/appName.js +13 -0
  408. package/utils/appName.js.map +1 -0
  409. package/utils/isReviewableModel.d.ts +2 -0
  410. package/utils/isReviewableModel.js +7 -0
  411. package/utils/isReviewableModel.js.map +1 -0
  412. package/utils/renderModelIcon.d.ts +3 -0
  413. package/utils/renderModelIcon.js +19 -0
  414. package/utils/renderModelIcon.js.map +1 -0
  415. package/utils/renderModelIconOrFallback.d.ts +3 -0
  416. package/utils/renderModelIconOrFallback.js +17 -0
  417. package/utils/renderModelIconOrFallback.js.map +1 -0
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ import { ModelsCache } from "@webiny/app-headless-cms/features/model/abstractions.js";
3
+ import type { ReviewContentRef } from "@webiny/app-workflows/review/content/IReviewContentAdapter.js";
4
+ import { CmsReviewContentAdapter as AdapterAbstraction } from "./abstractions.js";
5
+ declare class CmsReviewContentAdapterImpl implements AdapterAbstraction.Interface {
6
+ private modelsCache;
7
+ constructor(modelsCache: ModelsCache.Interface);
8
+ canHandle(namespace: string): boolean;
9
+ getContentUrl(ref: ReviewContentRef): string;
10
+ getContentTypeLabel(contentTypeId: string): string | null;
11
+ renderContentTypeIcon(contentTypeId: string): React.ReactNode;
12
+ }
13
+ export declare const CmsReviewContentAdapter: typeof CmsReviewContentAdapterImpl & {
14
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/app-workflows/review/content/IReviewContentAdapter.js").IReviewContentAdapter>;
15
+ };
16
+ export {};
@@ -0,0 +1,39 @@
1
+ import "react";
2
+ import { ModelsCache } from "@webiny/app-headless-cms/features/model/abstractions.js";
3
+ import { Routes } from "@webiny/app-headless-cms/routes.js";
4
+ import { renderModelIconOrFallback } from "../../../utils/renderModelIconOrFallback.js";
5
+ import { isCmsAppName, parseAppName } from "../../../utils/appName.js";
6
+ import { CmsReviewContentAdapter } from "./abstractions.js";
7
+ class CmsReviewContentAdapterImpl {
8
+ constructor(modelsCache){
9
+ this.modelsCache = modelsCache;
10
+ }
11
+ canHandle(namespace) {
12
+ return isCmsAppName(namespace);
13
+ }
14
+ getContentUrl(ref) {
15
+ const modelId = parseAppName(ref.namespace);
16
+ const encodedModelId = encodeURIComponent(modelId);
17
+ const encodedRevisionId = encodeURIComponent(ref.targetRevisionId);
18
+ const path = Routes.ContentEntries.List.path.replace(":modelId", encodedModelId);
19
+ return `${path}?id=${encodedRevisionId}`;
20
+ }
21
+ getContentTypeLabel(contentTypeId) {
22
+ const model = this.modelsCache.getItem((item)=>item.modelId === contentTypeId);
23
+ if (!model) return null;
24
+ return model.name;
25
+ }
26
+ renderContentTypeIcon(contentTypeId) {
27
+ const model = this.modelsCache.getItem((item)=>item.modelId === contentTypeId);
28
+ return renderModelIconOrFallback(model, contentTypeId);
29
+ }
30
+ }
31
+ const CmsReviewContentAdapter_CmsReviewContentAdapter = CmsReviewContentAdapter.createImplementation({
32
+ implementation: CmsReviewContentAdapterImpl,
33
+ dependencies: [
34
+ ModelsCache
35
+ ]
36
+ });
37
+ export { CmsReviewContentAdapter_CmsReviewContentAdapter as CmsReviewContentAdapter };
38
+
39
+ //# sourceMappingURL=CmsReviewContentAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.js","sources":["../../../../src/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.tsx"],"sourcesContent":["import React from \"react\";\nimport { ModelsCache } from \"@webiny/app-headless-cms/features/model/abstractions.js\";\nimport { Routes } from \"@webiny/app-headless-cms/routes.js\";\nimport type { ReviewContentRef } from \"@webiny/app-workflows/review/content/IReviewContentAdapter.js\";\nimport { renderModelIconOrFallback } from \"~/utils/renderModelIconOrFallback.js\";\nimport { isCmsAppName } from \"~/utils/appName.js\";\nimport { parseAppName } from \"~/utils/appName.js\";\nimport { CmsReviewContentAdapter as AdapterAbstraction } from \"./abstractions.js\";\n\nclass CmsReviewContentAdapterImpl implements AdapterAbstraction.Interface {\n constructor(private modelsCache: ModelsCache.Interface) {}\n\n canHandle(namespace: string): boolean {\n return isCmsAppName(namespace);\n }\n\n getContentUrl(ref: ReviewContentRef): string {\n const modelId = parseAppName(ref.namespace);\n const encodedModelId = encodeURIComponent(modelId);\n const encodedRevisionId = encodeURIComponent(ref.targetRevisionId);\n const path = Routes.ContentEntries.List.path.replace(\":modelId\", encodedModelId);\n\n return `${path}?id=${encodedRevisionId}`;\n }\n\n getContentTypeLabel(contentTypeId: string): string | null {\n const model = this.modelsCache.getItem(item => item.modelId === contentTypeId);\n\n if (!model) {\n return null;\n }\n\n return model.name;\n }\n\n renderContentTypeIcon(contentTypeId: string): React.ReactNode {\n const model = this.modelsCache.getItem(item => item.modelId === contentTypeId);\n return renderModelIconOrFallback(model, contentTypeId);\n }\n}\n\nexport const CmsReviewContentAdapter = AdapterAbstraction.createImplementation({\n implementation: CmsReviewContentAdapterImpl,\n dependencies: [ModelsCache]\n});\n"],"names":["CmsReviewContentAdapterImpl","modelsCache","namespace","isCmsAppName","ref","modelId","parseAppName","encodedModelId","encodeURIComponent","encodedRevisionId","path","Routes","contentTypeId","model","item","renderModelIconOrFallback","CmsReviewContentAdapter","AdapterAbstraction","ModelsCache"],"mappings":";;;;;;AASA,MAAMA;IACF,YAAoBC,WAAkC,CAAE;aAApCA,WAAW,GAAXA;IAAqC;IAEzD,UAAUC,SAAiB,EAAW;QAClC,OAAOC,aAAaD;IACxB;IAEA,cAAcE,GAAqB,EAAU;QACzC,MAAMC,UAAUC,aAAaF,IAAI,SAAS;QAC1C,MAAMG,iBAAiBC,mBAAmBH;QAC1C,MAAMI,oBAAoBD,mBAAmBJ,IAAI,gBAAgB;QACjE,MAAMM,OAAOC,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAYJ;QAEjE,OAAO,GAAGG,KAAK,IAAI,EAAED,mBAAmB;IAC5C;IAEA,oBAAoBG,aAAqB,EAAiB;QACtD,MAAMC,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,CAACC,CAAAA,OAAQA,KAAK,OAAO,KAAKF;QAEhE,IAAI,CAACC,OACD,OAAO;QAGX,OAAOA,MAAM,IAAI;IACrB;IAEA,sBAAsBD,aAAqB,EAAmB;QAC1D,MAAMC,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,CAACC,CAAAA,OAAQA,KAAK,OAAO,KAAKF;QAChE,OAAOG,0BAA0BF,OAAOD;IAC5C;AACJ;AAEO,MAAMI,kDAA0BC,wBAAAA,oBAAuC,CAAC;IAC3E,gBAAgBjB;IAChB,cAAc;QAACkB;KAAY;AAC/B"}
@@ -0,0 +1,83 @@
1
+ import react from "react";
2
+ import { beforeEach, describe, expect, it } from "vitest";
3
+ import { Container } from "@webiny/di";
4
+ import { ListCache } from "@webiny/app-admin/features/listCache/index.js";
5
+ import { ModelsCache } from "@webiny/app-headless-cms/features/model/abstractions.js";
6
+ import { CmsReviewContentAdapter } from "./abstractions.js";
7
+ import { CmsReviewContentAdapter as external_CmsReviewContentAdapter_js_CmsReviewContentAdapter } from "./CmsReviewContentAdapter.js";
8
+ describe("CmsReviewContentAdapter", ()=>{
9
+ const cache = new ListCache("modelId");
10
+ let adapter;
11
+ beforeEach(()=>{
12
+ const article = {
13
+ modelId: "article",
14
+ name: "Article"
15
+ };
16
+ cache.setItems([
17
+ article
18
+ ]);
19
+ const container = new Container();
20
+ container.registerInstance(ModelsCache, cache);
21
+ container.register(external_CmsReviewContentAdapter_js_CmsReviewContentAdapter);
22
+ adapter = container.resolve(CmsReviewContentAdapter);
23
+ });
24
+ it("handles CMS namespaces only", ()=>{
25
+ expect(adapter.canHandle("cms.article")).toBe(true);
26
+ expect(adapter.canHandle("wb.page")).toBe(false);
27
+ expect(adapter.canHandle("cms")).toBe(false);
28
+ expect(adapter.canHandle("cms.article.extra")).toBe(false);
29
+ });
30
+ it("builds the entry URL from the content entries route with the revision id encoded", ()=>{
31
+ const url = adapter.getContentUrl({
32
+ namespace: "cms.article",
33
+ targetId: "entry-1",
34
+ targetRevisionId: "entry-1#0001",
35
+ contentTypeId: "article"
36
+ });
37
+ expect(url).toBe("/cms/content-entries/article?id=entry-1%230001");
38
+ });
39
+ it("throws for a namespace that is not a CMS one", ()=>{
40
+ expect(()=>{
41
+ adapter.getContentUrl({
42
+ namespace: "wb.page",
43
+ targetId: "page-1",
44
+ targetRevisionId: "page-1#0001",
45
+ contentTypeId: null
46
+ });
47
+ }).toThrow('Invalid app name: "wb.page".');
48
+ });
49
+ it("labels a content type with the model name", ()=>{
50
+ expect(adapter.getContentTypeLabel("article")).toBe("Article");
51
+ });
52
+ it("returns null for an unknown or not yet loaded model", ()=>{
53
+ expect(adapter.getContentTypeLabel("product")).toBeNull();
54
+ cache.clear();
55
+ expect(adapter.getContentTypeLabel("article")).toBeNull();
56
+ });
57
+ it("renders the model icon, or the fallback icon for a model without one", ()=>{
58
+ cache.setItems([
59
+ {
60
+ modelId: "article",
61
+ name: "Article",
62
+ icon: "fas/star"
63
+ },
64
+ {
65
+ modelId: "plain",
66
+ name: "Plain"
67
+ }
68
+ ]);
69
+ const withIcon = adapter.renderContentTypeIcon("article");
70
+ const fallback = adapter.renderContentTypeIcon("plain");
71
+ if (!/*#__PURE__*/ react.isValidElement(withIcon)) throw new Error("The model icon is not an element.");
72
+ if (!/*#__PURE__*/ react.isValidElement(fallback)) throw new Error("The fallback icon is not an element.");
73
+ expect(withIcon.props.label).toBe("Article");
74
+ expect(withIcon.props.icon.props.icon).toEqual([
75
+ "fas",
76
+ "star"
77
+ ]);
78
+ expect(fallback.props.label).toBe("Plain");
79
+ expect(fallback.props.icon.props.icon).toBeUndefined();
80
+ });
81
+ });
82
+
83
+ //# sourceMappingURL=CmsReviewContentAdapter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.test.js","sources":["../../../../src/features/gateway/CmsReviewContentAdapter/CmsReviewContentAdapter.test.tsx"],"sourcesContent":["import React from \"react\";\nimport { beforeEach } from \"vitest\";\nimport { describe } from \"vitest\";\nimport { expect } from \"vitest\";\nimport { it } from \"vitest\";\nimport { Container } from \"@webiny/di\";\nimport { ListCache } from \"@webiny/app-admin/features/listCache/index.js\";\nimport { ModelsCache } from \"@webiny/app-headless-cms/features/model/abstractions.js\";\nimport type { CmsModel } from \"@webiny/app-headless-cms/types.js\";\nimport { CmsReviewContentAdapter as AdapterAbstraction } from \"./abstractions.js\";\nimport { CmsReviewContentAdapter } from \"./CmsReviewContentAdapter.js\";\n\ninterface RenderedIconProps {\n label: string;\n icon: React.ReactElement<{ icon?: unknown }>;\n}\n\ndescribe(\"CmsReviewContentAdapter\", () => {\n const cache = new ListCache<CmsModel>(\"modelId\");\n let adapter: AdapterAbstraction.Interface;\n\n beforeEach(() => {\n const article = { modelId: \"article\", name: \"Article\" } as CmsModel;\n cache.setItems([article]);\n\n const container = new Container();\n container.registerInstance(ModelsCache, cache);\n container.register(CmsReviewContentAdapter);\n adapter = container.resolve(AdapterAbstraction);\n });\n\n it(\"handles CMS namespaces only\", () => {\n expect(adapter.canHandle(\"cms.article\")).toBe(true);\n expect(adapter.canHandle(\"wb.page\")).toBe(false);\n expect(adapter.canHandle(\"cms\")).toBe(false);\n expect(adapter.canHandle(\"cms.article.extra\")).toBe(false);\n });\n\n it(\"builds the entry URL from the content entries route with the revision id encoded\", () => {\n const url = adapter.getContentUrl({\n namespace: \"cms.article\",\n targetId: \"entry-1\",\n targetRevisionId: \"entry-1#0001\",\n contentTypeId: \"article\"\n });\n\n expect(url).toBe(\"/cms/content-entries/article?id=entry-1%230001\");\n });\n\n it(\"throws for a namespace that is not a CMS one\", () => {\n expect(() => {\n adapter.getContentUrl({\n namespace: \"wb.page\",\n targetId: \"page-1\",\n targetRevisionId: \"page-1#0001\",\n contentTypeId: null\n });\n }).toThrow('Invalid app name: \"wb.page\".');\n });\n\n it(\"labels a content type with the model name\", () => {\n expect(adapter.getContentTypeLabel(\"article\")).toBe(\"Article\");\n });\n\n it(\"returns null for an unknown or not yet loaded model\", () => {\n expect(adapter.getContentTypeLabel(\"product\")).toBeNull();\n\n cache.clear();\n\n expect(adapter.getContentTypeLabel(\"article\")).toBeNull();\n });\n\n it(\"renders the model icon, or the fallback icon for a model without one\", () => {\n cache.setItems([\n { modelId: \"article\", name: \"Article\", icon: \"fas/star\" } as CmsModel,\n { modelId: \"plain\", name: \"Plain\" } as CmsModel\n ]);\n\n const withIcon = adapter.renderContentTypeIcon(\"article\");\n const fallback = adapter.renderContentTypeIcon(\"plain\");\n\n if (!React.isValidElement<RenderedIconProps>(withIcon)) {\n throw new Error(\"The model icon is not an element.\");\n }\n if (!React.isValidElement<RenderedIconProps>(fallback)) {\n throw new Error(\"The fallback icon is not an element.\");\n }\n expect(withIcon.props.label).toBe(\"Article\");\n expect(withIcon.props.icon.props.icon).toEqual([\"fas\", \"star\"]);\n expect(fallback.props.label).toBe(\"Plain\");\n expect(fallback.props.icon.props.icon).toBeUndefined();\n });\n});\n"],"names":["describe","cache","ListCache","adapter","beforeEach","article","container","Container","ModelsCache","CmsReviewContentAdapter","AdapterAbstraction","it","expect","url","withIcon","fallback","React","Error"],"mappings":";;;;;;;AAiBAA,SAAS,2BAA2B;IAChC,MAAMC,QAAQ,IAAIC,UAAoB;IACtC,IAAIC;IAEJC,WAAW;QACP,MAAMC,UAAU;YAAE,SAAS;YAAW,MAAM;QAAU;QACtDJ,MAAM,QAAQ,CAAC;YAACI;SAAQ;QAExB,MAAMC,YAAY,IAAIC;QACtBD,UAAU,gBAAgB,CAACE,aAAaP;QACxCK,UAAU,QAAQ,CAACG;QACnBN,UAAUG,UAAU,OAAO,CAACI;IAChC;IAEAC,GAAG,+BAA+B;QAC9BC,OAAOT,QAAQ,SAAS,CAAC,gBAAgB,IAAI,CAAC;QAC9CS,OAAOT,QAAQ,SAAS,CAAC,YAAY,IAAI,CAAC;QAC1CS,OAAOT,QAAQ,SAAS,CAAC,QAAQ,IAAI,CAAC;QACtCS,OAAOT,QAAQ,SAAS,CAAC,sBAAsB,IAAI,CAAC;IACxD;IAEAQ,GAAG,oFAAoF;QACnF,MAAME,MAAMV,QAAQ,aAAa,CAAC;YAC9B,WAAW;YACX,UAAU;YACV,kBAAkB;YAClB,eAAe;QACnB;QAEAS,OAAOC,KAAK,IAAI,CAAC;IACrB;IAEAF,GAAG,gDAAgD;QAC/CC,OAAO;YACHT,QAAQ,aAAa,CAAC;gBAClB,WAAW;gBACX,UAAU;gBACV,kBAAkB;gBAClB,eAAe;YACnB;QACJ,GAAG,OAAO,CAAC;IACf;IAEAQ,GAAG,6CAA6C;QAC5CC,OAAOT,QAAQ,mBAAmB,CAAC,YAAY,IAAI,CAAC;IACxD;IAEAQ,GAAG,uDAAuD;QACtDC,OAAOT,QAAQ,mBAAmB,CAAC,YAAY,QAAQ;QAEvDF,MAAM,KAAK;QAEXW,OAAOT,QAAQ,mBAAmB,CAAC,YAAY,QAAQ;IAC3D;IAEAQ,GAAG,wEAAwE;QACvEV,MAAM,QAAQ,CAAC;YACX;gBAAE,SAAS;gBAAW,MAAM;gBAAW,MAAM;YAAW;YACxD;gBAAE,SAAS;gBAAS,MAAM;YAAQ;SACrC;QAED,MAAMa,WAAWX,QAAQ,qBAAqB,CAAC;QAC/C,MAAMY,WAAWZ,QAAQ,qBAAqB,CAAC;QAE/C,IAAI,CAAC,WAAD,GAACa,MAAAA,cAAoB,CAAoBF,WACzC,MAAM,IAAIG,MAAM;QAEpB,IAAI,CAAC,WAAD,GAACD,MAAAA,cAAoB,CAAoBD,WACzC,MAAM,IAAIE,MAAM;QAEpBL,OAAOE,SAAS,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;QAClCF,OAAOE,SAAS,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC;YAAC;YAAO;SAAO;QAC9DF,OAAOG,SAAS,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;QAClCH,OAAOG,SAAS,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa;IACxD;AACJ"}
@@ -0,0 +1,5 @@
1
+ import type { IReviewContentAdapter } from "@webiny/app-workflows/review/content/IReviewContentAdapter.js";
2
+ export declare const CmsReviewContentAdapter: import("@webiny/di").Abstraction<IReviewContentAdapter>;
3
+ export declare namespace CmsReviewContentAdapter {
4
+ type Interface = IReviewContentAdapter;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const CmsReviewContentAdapter = createAbstraction("Cms/Workflows/ReviewContentAdapter");
3
+ export { CmsReviewContentAdapter };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/gateway/CmsReviewContentAdapter/abstractions.js","sources":["../../../../src/features/gateway/CmsReviewContentAdapter/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { IReviewContentAdapter } from \"@webiny/app-workflows/review/content/IReviewContentAdapter.js\";\n\nexport const CmsReviewContentAdapter = createAbstraction<IReviewContentAdapter>(\n \"Cms/Workflows/ReviewContentAdapter\"\n);\n\nexport namespace CmsReviewContentAdapter {\n export type Interface = IReviewContentAdapter;\n}\n"],"names":["CmsReviewContentAdapter","createAbstraction"],"mappings":";AAGO,MAAMA,0BAA0BC,kBACnC"}
@@ -0,0 +1,52 @@
1
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient/abstractions.js";
2
+ import type { ReviewTarget } from "@webiny/app-workflows/review/domain/types.js";
3
+ import type { ReviewDto } from "@webiny/app-workflows/review/gateway/dto.js";
4
+ import type { ReviewEnvelope } from "@webiny/app-workflows/review/gateway/dto.js";
5
+ import type { ReviewListEnvelope } from "@webiny/app-workflows/review/gateway/dto.js";
6
+ import type { ReviewWithFlagsDto } from "@webiny/app-workflows/review/gateway/dto.js";
7
+ import type { StepCandidateDto } from "@webiny/app-workflows/review/gateway/dto.js";
8
+ import type { WorkflowDto } from "@webiny/app-workflows/review/gateway/dto.js";
9
+ import type { ApproveReviewParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
10
+ import type { CancelForDeleteParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
11
+ import type { CancelReviewParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
12
+ import type { ListReviewsParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
13
+ import type { ListReviewStepCandidatesParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
14
+ import type { ListStepCandidatesParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
15
+ import type { ReassignReviewParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
16
+ import type { RejectReviewParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
17
+ import type { RequestReviewParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
18
+ import type { ReviewStepRef } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
19
+ import type { TakeOverReviewParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
20
+ import type { WorkflowAppKind } from "@webiny/app-workflows/domain/WorkflowAppKind.js";
21
+ import { ReviewAppGateway as GatewayAbstraction } from "@webiny/app-workflows/review/appGateway/abstractions.js";
22
+ import type { BlockingReviewDto } from "@webiny/app-workflows/review/gateway/dto.js";
23
+ import type { ReviewStepRunInfoDto } from "@webiny/app-workflows/review/gateway/dto.js";
24
+ import type { GetStepRunParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
25
+ import type { ListBlockingReviewsParams } from "@webiny/app-workflows/review/appGateway/IReviewAppGateway.js";
26
+ declare class CmsReviewGatewayImpl implements GatewayAbstraction.Interface {
27
+ private client;
28
+ readonly app: WorkflowAppKind;
29
+ constructor(client: MainGraphQLClient.Interface);
30
+ canHandle(namespace: string): boolean;
31
+ listWorkflows(): Promise<ReviewEnvelope<WorkflowDto[]>>;
32
+ getTargetReview(target: ReviewTarget): Promise<ReviewEnvelope<ReviewWithFlagsDto | null>>;
33
+ getReview(reviewId: string): Promise<ReviewEnvelope<ReviewWithFlagsDto>>;
34
+ listStepCandidates(params: ListStepCandidatesParams): Promise<ReviewEnvelope<StepCandidateDto[]>>;
35
+ listReviewStepCandidates(params: ListReviewStepCandidatesParams): Promise<ReviewEnvelope<StepCandidateDto[]>>;
36
+ listReviews(params: ListReviewsParams): Promise<ReviewListEnvelope>;
37
+ requestReview(params: RequestReviewParams): Promise<ReviewEnvelope<ReviewDto>>;
38
+ startStep(params: ReviewStepRef): Promise<ReviewEnvelope<ReviewDto>>;
39
+ takeOverStep(params: TakeOverReviewParams): Promise<ReviewEnvelope<ReviewDto>>;
40
+ reassignStep(params: ReassignReviewParams): Promise<ReviewEnvelope<ReviewDto>>;
41
+ approveStep(params: ApproveReviewParams): Promise<ReviewEnvelope<ReviewDto>>;
42
+ rejectStep(params: RejectReviewParams): Promise<ReviewEnvelope<ReviewDto>>;
43
+ cancelReview(params: CancelReviewParams): Promise<ReviewEnvelope<ReviewDto>>;
44
+ restartStep(params: ReviewStepRef): Promise<ReviewEnvelope<ReviewDto>>;
45
+ getStepRun(params: GetStepRunParams): Promise<ReviewEnvelope<ReviewStepRunInfoDto | null>>;
46
+ listBlockingReviews(params: ListBlockingReviewsParams): Promise<ReviewEnvelope<BlockingReviewDto[]>>;
47
+ cancelForDelete(params: CancelForDeleteParams): Promise<ReviewEnvelope<ReviewDto[]>>;
48
+ }
49
+ export declare const CmsReviewGateway: typeof CmsReviewGatewayImpl & {
50
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/app-workflows/review/appGateway/IReviewAppGateway.js").IReviewAppGateway>;
51
+ };
52
+ export {};
@@ -0,0 +1,221 @@
1
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient/abstractions.js";
2
+ import { isCmsAppName, parseAppName } from "../../../utils/appName.js";
3
+ import { ReviewAppGateway } from "@webiny/app-workflows/review/appGateway/abstractions.js";
4
+ import { APPROVE_CMS_ENTRY_REVIEW_STEP } from "../graphql/approveCmsEntryReviewStep.js";
5
+ import { CANCEL_CMS_ENTRY_REVIEW } from "../graphql/cancelCmsEntryReview.js";
6
+ import { CANCEL_CMS_ENTRY_REVIEWS_FOR_DELETE } from "../graphql/cancelCmsEntryReviewsForDelete.js";
7
+ import { GET_CMS_ENTRY_REVIEW } from "../graphql/getCmsEntryReview.js";
8
+ import { GET_CMS_ENTRY_TARGET_REVIEW } from "../graphql/getCmsEntryTargetReview.js";
9
+ import { LIST_CMS_ENTRY_REVIEW_STEP_CANDIDATES } from "../graphql/listCmsEntryReviewStepCandidates.js";
10
+ import { LIST_CMS_ENTRY_REVIEWS } from "../graphql/listCmsEntryReviews.js";
11
+ import { LIST_CMS_ENTRY_STEP_CANDIDATES } from "../graphql/listCmsEntryStepCandidates.js";
12
+ import { LIST_CMS_ENTRY_WORKFLOWS } from "../graphql/listCmsEntryWorkflows.js";
13
+ import { REASSIGN_CMS_ENTRY_REVIEW_STEP } from "../graphql/reassignCmsEntryReviewStep.js";
14
+ import { REJECT_CMS_ENTRY_REVIEW_STEP } from "../graphql/rejectCmsEntryReviewStep.js";
15
+ import { REQUEST_CMS_ENTRY_REVIEW } from "../graphql/requestCmsEntryReview.js";
16
+ import { START_CMS_ENTRY_REVIEW_STEP } from "../graphql/startCmsEntryReviewStep.js";
17
+ import { TAKE_OVER_CMS_ENTRY_REVIEW_STEP } from "../graphql/takeOverCmsEntryReviewStep.js";
18
+ import { GET_CMS_ENTRY_REVIEW_STEP_RUN } from "../graphql/getCmsEntryReviewStepRun.js";
19
+ import { LIST_CMS_ENTRY_BLOCKING_REVIEWS } from "../graphql/listCmsEntryBlockingReviews.js";
20
+ import { RESTART_CMS_ENTRY_REVIEW_STEP } from "../graphql/restartCmsEntryReviewStep.js";
21
+ class CmsReviewGatewayImpl {
22
+ constructor(client){
23
+ this.client = client;
24
+ this.app = "cms";
25
+ }
26
+ canHandle(namespace) {
27
+ return isCmsAppName(namespace);
28
+ }
29
+ async listWorkflows() {
30
+ const response = await this.client.execute({
31
+ query: LIST_CMS_ENTRY_WORKFLOWS
32
+ });
33
+ return response.cms.listCmsEntryWorkflows;
34
+ }
35
+ async getTargetReview(target) {
36
+ const modelId = parseAppName(target.namespace);
37
+ const response = await this.client.execute({
38
+ query: GET_CMS_ENTRY_TARGET_REVIEW,
39
+ variables: {
40
+ modelId,
41
+ revisionId: target.targetRevisionId
42
+ }
43
+ });
44
+ return response.cms.getCmsEntryTargetReview;
45
+ }
46
+ async getReview(reviewId) {
47
+ const response = await this.client.execute({
48
+ query: GET_CMS_ENTRY_REVIEW,
49
+ variables: {
50
+ id: reviewId
51
+ }
52
+ });
53
+ return response.cms.getCmsEntryReview;
54
+ }
55
+ async listStepCandidates(params) {
56
+ const modelId = parseAppName(params.target.namespace);
57
+ const response = await this.client.execute({
58
+ query: LIST_CMS_ENTRY_STEP_CANDIDATES,
59
+ variables: {
60
+ workflowId: params.workflowId,
61
+ stepId: params.stepId,
62
+ modelId,
63
+ revisionId: params.target.targetRevisionId
64
+ }
65
+ });
66
+ return response.cms.listCmsEntryStepCandidates;
67
+ }
68
+ async listReviewStepCandidates(params) {
69
+ const response = await this.client.execute({
70
+ query: LIST_CMS_ENTRY_REVIEW_STEP_CANDIDATES,
71
+ variables: {
72
+ reviewId: params.reviewId,
73
+ stepId: params.stepId
74
+ }
75
+ });
76
+ return response.cms.listCmsEntryReviewStepCandidates;
77
+ }
78
+ async listReviews(params) {
79
+ const response = await this.client.execute({
80
+ query: LIST_CMS_ENTRY_REVIEWS,
81
+ variables: {
82
+ list: params.list,
83
+ where: params.where,
84
+ sort: params.sort,
85
+ limit: params.limit,
86
+ after: params.after
87
+ }
88
+ });
89
+ return response.cms.listCmsEntryReviews;
90
+ }
91
+ async requestReview(params) {
92
+ const modelId = parseAppName(params.target.namespace);
93
+ const response = await this.client.execute({
94
+ query: REQUEST_CMS_ENTRY_REVIEW,
95
+ variables: {
96
+ modelId,
97
+ revisionId: params.target.targetRevisionId,
98
+ title: params.title,
99
+ picks: params.picks
100
+ }
101
+ });
102
+ return response.cms.requestCmsEntryReview;
103
+ }
104
+ async startStep(params) {
105
+ const response = await this.client.execute({
106
+ query: START_CMS_ENTRY_REVIEW_STEP,
107
+ variables: {
108
+ reviewId: params.reviewId,
109
+ stepId: params.stepId
110
+ }
111
+ });
112
+ return response.cms.startCmsEntryReviewStep;
113
+ }
114
+ async takeOverStep(params) {
115
+ const response = await this.client.execute({
116
+ query: TAKE_OVER_CMS_ENTRY_REVIEW_STEP,
117
+ variables: {
118
+ reviewId: params.reviewId,
119
+ stepId: params.stepId,
120
+ notifyPreviousOwner: params.notifyPreviousOwner
121
+ }
122
+ });
123
+ return response.cms.takeOverCmsEntryReviewStep;
124
+ }
125
+ async reassignStep(params) {
126
+ const response = await this.client.execute({
127
+ query: REASSIGN_CMS_ENTRY_REVIEW_STEP,
128
+ variables: {
129
+ reviewId: params.reviewId,
130
+ stepId: params.stepId,
131
+ userId: params.userId
132
+ }
133
+ });
134
+ return response.cms.reassignCmsEntryReviewStep;
135
+ }
136
+ async approveStep(params) {
137
+ const response = await this.client.execute({
138
+ query: APPROVE_CMS_ENTRY_REVIEW_STEP,
139
+ variables: {
140
+ reviewId: params.reviewId,
141
+ stepId: params.stepId,
142
+ comment: params.comment
143
+ }
144
+ });
145
+ return response.cms.approveCmsEntryReviewStep;
146
+ }
147
+ async rejectStep(params) {
148
+ const response = await this.client.execute({
149
+ query: REJECT_CMS_ENTRY_REVIEW_STEP,
150
+ variables: {
151
+ reviewId: params.reviewId,
152
+ stepId: params.stepId,
153
+ comment: params.comment
154
+ }
155
+ });
156
+ return response.cms.rejectCmsEntryReviewStep;
157
+ }
158
+ async cancelReview(params) {
159
+ const response = await this.client.execute({
160
+ query: CANCEL_CMS_ENTRY_REVIEW,
161
+ variables: {
162
+ reviewId: params.reviewId
163
+ }
164
+ });
165
+ return response.cms.cancelCmsEntryReview;
166
+ }
167
+ async restartStep(params) {
168
+ const response = await this.client.execute({
169
+ query: RESTART_CMS_ENTRY_REVIEW_STEP,
170
+ variables: {
171
+ reviewId: params.reviewId,
172
+ stepId: params.stepId
173
+ }
174
+ });
175
+ return response.cms.restartCmsEntryReviewStep;
176
+ }
177
+ async getStepRun(params) {
178
+ const response = await this.client.execute({
179
+ query: GET_CMS_ENTRY_REVIEW_STEP_RUN,
180
+ variables: {
181
+ reviewId: params.reviewId,
182
+ stepId: params.stepId,
183
+ taskId: params.taskId
184
+ }
185
+ });
186
+ return response.cms.getCmsEntryReviewStepRun;
187
+ }
188
+ async listBlockingReviews(params) {
189
+ const modelId = parseAppName(params.namespace);
190
+ const response = await this.client.execute({
191
+ query: LIST_CMS_ENTRY_BLOCKING_REVIEWS,
192
+ variables: {
193
+ modelId,
194
+ entryIds: params.targetIds
195
+ }
196
+ });
197
+ return response.cms.listCmsEntryBlockingReviews;
198
+ }
199
+ async cancelForDelete(params) {
200
+ const modelId = parseAppName(params.namespace);
201
+ const response = await this.client.execute({
202
+ query: CANCEL_CMS_ENTRY_REVIEWS_FOR_DELETE,
203
+ variables: {
204
+ modelId,
205
+ entryId: params.targetId,
206
+ revisionId: params.targetRevisionId,
207
+ action: params.action
208
+ }
209
+ });
210
+ return response.cms.cancelCmsEntryReviewsForDelete;
211
+ }
212
+ }
213
+ const CmsReviewGateway = ReviewAppGateway.createImplementation({
214
+ implementation: CmsReviewGatewayImpl,
215
+ dependencies: [
216
+ MainGraphQLClient
217
+ ]
218
+ });
219
+ export { CmsReviewGateway };
220
+
221
+ //# sourceMappingURL=CmsReviewGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/gateway/CmsReviewGateway/CmsReviewGateway.js","sources":["../../../../src/features/gateway/CmsReviewGateway/CmsReviewGateway.ts"],"sourcesContent":["import { MainGraphQLClient } from \"@webiny/app/features/mainGraphQLClient/abstractions.js\";\nimport type { ReviewTarget } from \"@webiny/app-workflows/review/domain/types.js\";\nimport type { ReviewDto } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { ReviewEnvelope } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { ReviewListEnvelope } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { ReviewWithFlagsDto } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { StepCandidateDto } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { WorkflowDto } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { ApproveReviewParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { CancelForDeleteParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { CancelReviewParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { ListReviewsParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { ListReviewStepCandidatesParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { ListStepCandidatesParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { ReassignReviewParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { RejectReviewParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { RequestReviewParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { ReviewStepRef } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { TakeOverReviewParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { WorkflowAppKind } from \"@webiny/app-workflows/domain/WorkflowAppKind.js\";\nimport { isCmsAppName } from \"~/utils/appName.js\";\nimport { parseAppName } from \"~/utils/appName.js\";\nimport { ReviewAppGateway as GatewayAbstraction } from \"@webiny/app-workflows/review/appGateway/abstractions.js\";\nimport type { CmsOperationResponse } from \"../graphql/CmsOperationResponse.js\";\nimport type { BlockingReviewDto } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { ReviewStepRunInfoDto } from \"@webiny/app-workflows/review/gateway/dto.js\";\nimport type { GetStepRunParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport type { ListBlockingReviewsParams } from \"@webiny/app-workflows/review/appGateway/IReviewAppGateway.js\";\nimport { APPROVE_CMS_ENTRY_REVIEW_STEP } from \"../graphql/approveCmsEntryReviewStep.js\";\nimport { CANCEL_CMS_ENTRY_REVIEW } from \"../graphql/cancelCmsEntryReview.js\";\nimport { CANCEL_CMS_ENTRY_REVIEWS_FOR_DELETE } from \"../graphql/cancelCmsEntryReviewsForDelete.js\";\nimport { GET_CMS_ENTRY_REVIEW } from \"../graphql/getCmsEntryReview.js\";\nimport { GET_CMS_ENTRY_TARGET_REVIEW } from \"../graphql/getCmsEntryTargetReview.js\";\nimport { LIST_CMS_ENTRY_REVIEW_STEP_CANDIDATES } from \"../graphql/listCmsEntryReviewStepCandidates.js\";\nimport { LIST_CMS_ENTRY_REVIEWS } from \"../graphql/listCmsEntryReviews.js\";\nimport { LIST_CMS_ENTRY_STEP_CANDIDATES } from \"../graphql/listCmsEntryStepCandidates.js\";\nimport { LIST_CMS_ENTRY_WORKFLOWS } from \"../graphql/listCmsEntryWorkflows.js\";\nimport { REASSIGN_CMS_ENTRY_REVIEW_STEP } from \"../graphql/reassignCmsEntryReviewStep.js\";\nimport { REJECT_CMS_ENTRY_REVIEW_STEP } from \"../graphql/rejectCmsEntryReviewStep.js\";\nimport { REQUEST_CMS_ENTRY_REVIEW } from \"../graphql/requestCmsEntryReview.js\";\nimport { START_CMS_ENTRY_REVIEW_STEP } from \"../graphql/startCmsEntryReviewStep.js\";\nimport { TAKE_OVER_CMS_ENTRY_REVIEW_STEP } from \"../graphql/takeOverCmsEntryReviewStep.js\";\nimport { GET_CMS_ENTRY_REVIEW_STEP_RUN } from \"../graphql/getCmsEntryReviewStepRun.js\";\nimport { LIST_CMS_ENTRY_BLOCKING_REVIEWS } from \"../graphql/listCmsEntryBlockingReviews.js\";\nimport { RESTART_CMS_ENTRY_REVIEW_STEP } from \"../graphql/restartCmsEntryReviewStep.js\";\n\nclass CmsReviewGatewayImpl implements GatewayAbstraction.Interface {\n public readonly app: WorkflowAppKind = \"cms\";\n\n constructor(private client: MainGraphQLClient.Interface) {}\n\n // Every `cms.<modelId>` namespace (R347).\n canHandle(namespace: string): boolean {\n return isCmsAppName(namespace);\n }\n\n async listWorkflows(): Promise<ReviewEnvelope<WorkflowDto[]>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"listCmsEntryWorkflows\", ReviewEnvelope<WorkflowDto[]>>\n >({\n query: LIST_CMS_ENTRY_WORKFLOWS\n });\n\n return response.cms.listCmsEntryWorkflows;\n }\n\n async getTargetReview(\n target: ReviewTarget\n ): Promise<ReviewEnvelope<ReviewWithFlagsDto | null>> {\n const modelId = parseAppName(target.namespace);\n\n const response = await this.client.execute<\n CmsOperationResponse<\n \"getCmsEntryTargetReview\",\n ReviewEnvelope<ReviewWithFlagsDto | null>\n >\n >({\n query: GET_CMS_ENTRY_TARGET_REVIEW,\n variables: { modelId, revisionId: target.targetRevisionId }\n });\n\n return response.cms.getCmsEntryTargetReview;\n }\n\n async getReview(reviewId: string): Promise<ReviewEnvelope<ReviewWithFlagsDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"getCmsEntryReview\", ReviewEnvelope<ReviewWithFlagsDto>>\n >({\n query: GET_CMS_ENTRY_REVIEW,\n variables: { id: reviewId }\n });\n\n return response.cms.getCmsEntryReview;\n }\n\n async listStepCandidates(\n params: ListStepCandidatesParams\n ): Promise<ReviewEnvelope<StepCandidateDto[]>> {\n const modelId = parseAppName(params.target.namespace);\n\n const response = await this.client.execute<\n CmsOperationResponse<\"listCmsEntryStepCandidates\", ReviewEnvelope<StepCandidateDto[]>>\n >({\n query: LIST_CMS_ENTRY_STEP_CANDIDATES,\n variables: {\n workflowId: params.workflowId,\n stepId: params.stepId,\n modelId,\n revisionId: params.target.targetRevisionId\n }\n });\n\n return response.cms.listCmsEntryStepCandidates;\n }\n\n async listReviewStepCandidates(\n params: ListReviewStepCandidatesParams\n ): Promise<ReviewEnvelope<StepCandidateDto[]>> {\n const response = await this.client.execute<\n CmsOperationResponse<\n \"listCmsEntryReviewStepCandidates\",\n ReviewEnvelope<StepCandidateDto[]>\n >\n >({\n query: LIST_CMS_ENTRY_REVIEW_STEP_CANDIDATES,\n variables: { reviewId: params.reviewId, stepId: params.stepId }\n });\n\n return response.cms.listCmsEntryReviewStepCandidates;\n }\n\n async listReviews(params: ListReviewsParams): Promise<ReviewListEnvelope> {\n const response = await this.client.execute<\n CmsOperationResponse<\"listCmsEntryReviews\", ReviewListEnvelope>\n >({\n query: LIST_CMS_ENTRY_REVIEWS,\n variables: {\n list: params.list,\n where: params.where,\n sort: params.sort,\n limit: params.limit,\n after: params.after\n }\n });\n\n return response.cms.listCmsEntryReviews;\n }\n\n async requestReview(params: RequestReviewParams): Promise<ReviewEnvelope<ReviewDto>> {\n const modelId = parseAppName(params.target.namespace);\n\n const response = await this.client.execute<\n CmsOperationResponse<\"requestCmsEntryReview\", ReviewEnvelope<ReviewDto>>\n >({\n query: REQUEST_CMS_ENTRY_REVIEW,\n variables: {\n modelId,\n revisionId: params.target.targetRevisionId,\n title: params.title,\n picks: params.picks\n }\n });\n\n return response.cms.requestCmsEntryReview;\n }\n\n async startStep(params: ReviewStepRef): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"startCmsEntryReviewStep\", ReviewEnvelope<ReviewDto>>\n >({\n query: START_CMS_ENTRY_REVIEW_STEP,\n variables: { reviewId: params.reviewId, stepId: params.stepId }\n });\n\n return response.cms.startCmsEntryReviewStep;\n }\n\n async takeOverStep(params: TakeOverReviewParams): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"takeOverCmsEntryReviewStep\", ReviewEnvelope<ReviewDto>>\n >({\n query: TAKE_OVER_CMS_ENTRY_REVIEW_STEP,\n variables: {\n reviewId: params.reviewId,\n stepId: params.stepId,\n notifyPreviousOwner: params.notifyPreviousOwner\n }\n });\n\n return response.cms.takeOverCmsEntryReviewStep;\n }\n\n async reassignStep(params: ReassignReviewParams): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"reassignCmsEntryReviewStep\", ReviewEnvelope<ReviewDto>>\n >({\n query: REASSIGN_CMS_ENTRY_REVIEW_STEP,\n variables: {\n reviewId: params.reviewId,\n stepId: params.stepId,\n userId: params.userId\n }\n });\n\n return response.cms.reassignCmsEntryReviewStep;\n }\n\n async approveStep(params: ApproveReviewParams): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"approveCmsEntryReviewStep\", ReviewEnvelope<ReviewDto>>\n >({\n query: APPROVE_CMS_ENTRY_REVIEW_STEP,\n variables: {\n reviewId: params.reviewId,\n stepId: params.stepId,\n comment: params.comment\n }\n });\n\n return response.cms.approveCmsEntryReviewStep;\n }\n\n async rejectStep(params: RejectReviewParams): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"rejectCmsEntryReviewStep\", ReviewEnvelope<ReviewDto>>\n >({\n query: REJECT_CMS_ENTRY_REVIEW_STEP,\n variables: {\n reviewId: params.reviewId,\n stepId: params.stepId,\n comment: params.comment\n }\n });\n\n return response.cms.rejectCmsEntryReviewStep;\n }\n\n async cancelReview(params: CancelReviewParams): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"cancelCmsEntryReview\", ReviewEnvelope<ReviewDto>>\n >({\n query: CANCEL_CMS_ENTRY_REVIEW,\n variables: { reviewId: params.reviewId }\n });\n\n return response.cms.cancelCmsEntryReview;\n }\n\n async restartStep(params: ReviewStepRef): Promise<ReviewEnvelope<ReviewDto>> {\n const response = await this.client.execute<\n CmsOperationResponse<\"restartCmsEntryReviewStep\", ReviewEnvelope<ReviewDto>>\n >({\n query: RESTART_CMS_ENTRY_REVIEW_STEP,\n variables: { reviewId: params.reviewId, stepId: params.stepId }\n });\n\n return response.cms.restartCmsEntryReviewStep;\n }\n\n async getStepRun(\n params: GetStepRunParams\n ): Promise<ReviewEnvelope<ReviewStepRunInfoDto | null>> {\n const response = await this.client.execute<\n CmsOperationResponse<\n \"getCmsEntryReviewStepRun\",\n ReviewEnvelope<ReviewStepRunInfoDto | null>\n >\n >({\n query: GET_CMS_ENTRY_REVIEW_STEP_RUN,\n variables: {\n reviewId: params.reviewId,\n stepId: params.stepId,\n taskId: params.taskId\n }\n });\n\n return response.cms.getCmsEntryReviewStepRun;\n }\n\n async listBlockingReviews(\n params: ListBlockingReviewsParams\n ): Promise<ReviewEnvelope<BlockingReviewDto[]>> {\n const modelId = parseAppName(params.namespace);\n\n const response = await this.client.execute<\n CmsOperationResponse<\"listCmsEntryBlockingReviews\", ReviewEnvelope<BlockingReviewDto[]>>\n >({\n query: LIST_CMS_ENTRY_BLOCKING_REVIEWS,\n variables: { modelId, entryIds: params.targetIds }\n });\n\n return response.cms.listCmsEntryBlockingReviews;\n }\n\n async cancelForDelete(params: CancelForDeleteParams): Promise<ReviewEnvelope<ReviewDto[]>> {\n const modelId = parseAppName(params.namespace);\n\n const response = await this.client.execute<\n CmsOperationResponse<\"cancelCmsEntryReviewsForDelete\", ReviewEnvelope<ReviewDto[]>>\n >({\n query: CANCEL_CMS_ENTRY_REVIEWS_FOR_DELETE,\n variables: {\n modelId,\n entryId: params.targetId,\n revisionId: params.targetRevisionId,\n action: params.action\n }\n });\n\n return response.cms.cancelCmsEntryReviewsForDelete;\n }\n}\n\nexport const CmsReviewGateway = GatewayAbstraction.createImplementation({\n implementation: CmsReviewGatewayImpl,\n dependencies: [MainGraphQLClient]\n});\n"],"names":["CmsReviewGatewayImpl","client","namespace","isCmsAppName","response","LIST_CMS_ENTRY_WORKFLOWS","target","modelId","parseAppName","GET_CMS_ENTRY_TARGET_REVIEW","reviewId","GET_CMS_ENTRY_REVIEW","params","LIST_CMS_ENTRY_STEP_CANDIDATES","LIST_CMS_ENTRY_REVIEW_STEP_CANDIDATES","LIST_CMS_ENTRY_REVIEWS","REQUEST_CMS_ENTRY_REVIEW","START_CMS_ENTRY_REVIEW_STEP","TAKE_OVER_CMS_ENTRY_REVIEW_STEP","REASSIGN_CMS_ENTRY_REVIEW_STEP","APPROVE_CMS_ENTRY_REVIEW_STEP","REJECT_CMS_ENTRY_REVIEW_STEP","CANCEL_CMS_ENTRY_REVIEW","RESTART_CMS_ENTRY_REVIEW_STEP","GET_CMS_ENTRY_REVIEW_STEP_RUN","LIST_CMS_ENTRY_BLOCKING_REVIEWS","CANCEL_CMS_ENTRY_REVIEWS_FOR_DELETE","CmsReviewGateway","GatewayAbstraction","MainGraphQLClient"],"mappings":"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"}