@strapi/review-workflows 0.0.0-next.f6dca5adf05ef6bed9605a1535999ab0bbbf063e → 0.0.0-next.f93d6eabe52aa7681655cfa08eedbc3708dbb90d

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 (377) hide show
  1. package/dist/admin/assets/balloon.png.js +6 -0
  2. package/dist/admin/assets/balloon.png.js.map +1 -0
  3. package/dist/admin/assets/balloon.png.mjs +4 -0
  4. package/dist/admin/assets/balloon.png.mjs.map +1 -0
  5. package/dist/admin/assets/purchase-page-illustration-dark.svg.js +6 -0
  6. package/dist/admin/assets/purchase-page-illustration-dark.svg.js.map +1 -0
  7. package/dist/admin/assets/purchase-page-illustration-dark.svg.mjs +4 -0
  8. package/dist/admin/assets/purchase-page-illustration-dark.svg.mjs.map +1 -0
  9. package/dist/admin/assets/purchase-page-illustration-light.svg.js +6 -0
  10. package/dist/admin/assets/purchase-page-illustration-light.svg.js.map +1 -0
  11. package/dist/admin/assets/purchase-page-illustration-light.svg.mjs +4 -0
  12. package/dist/admin/assets/purchase-page-illustration-light.svg.mjs.map +1 -0
  13. package/dist/admin/components/LimitsModal.js +122 -0
  14. package/dist/admin/components/LimitsModal.js.map +1 -0
  15. package/dist/admin/components/LimitsModal.mjs +120 -0
  16. package/dist/admin/components/LimitsModal.mjs.map +1 -0
  17. package/dist/admin/constants.js +18 -0
  18. package/dist/admin/constants.js.map +1 -0
  19. package/dist/admin/constants.mjs +12 -0
  20. package/dist/admin/constants.mjs.map +1 -0
  21. package/dist/admin/index.js +92 -3
  22. package/dist/admin/index.js.map +1 -1
  23. package/dist/admin/index.mjs +87 -3
  24. package/dist/admin/index.mjs.map +1 -1
  25. package/dist/admin/modules/hooks.js +8 -0
  26. package/dist/admin/modules/hooks.js.map +1 -0
  27. package/dist/admin/modules/hooks.mjs +6 -0
  28. package/dist/admin/modules/hooks.mjs.map +1 -0
  29. package/dist/admin/router.js +30 -0
  30. package/dist/admin/router.js.map +1 -0
  31. package/dist/admin/router.mjs +28 -0
  32. package/dist/admin/router.mjs.map +1 -0
  33. package/dist/admin/routes/content-manager/model/components/TableColumns.js +44 -0
  34. package/dist/admin/routes/content-manager/model/components/TableColumns.js.map +1 -0
  35. package/dist/admin/routes/content-manager/model/components/TableColumns.mjs +41 -0
  36. package/dist/admin/routes/content-manager/model/components/TableColumns.mjs.map +1 -0
  37. package/dist/admin/routes/content-manager/model/constants.js +60 -0
  38. package/dist/admin/routes/content-manager/model/constants.js.map +1 -0
  39. package/dist/admin/routes/content-manager/model/constants.mjs +58 -0
  40. package/dist/admin/routes/content-manager/model/constants.mjs.map +1 -0
  41. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.js +169 -0
  42. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.js.map +1 -0
  43. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.mjs +148 -0
  44. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.mjs.map +1 -0
  45. package/dist/admin/routes/content-manager/model/id/components/Header.js +31 -0
  46. package/dist/admin/routes/content-manager/model/id/components/Header.js.map +1 -0
  47. package/dist/admin/routes/content-manager/model/id/components/Header.mjs +29 -0
  48. package/dist/admin/routes/content-manager/model/id/components/Header.mjs.map +1 -0
  49. package/dist/admin/routes/content-manager/model/id/components/Panel.js +39 -0
  50. package/dist/admin/routes/content-manager/model/id/components/Panel.js.map +1 -0
  51. package/dist/admin/routes/content-manager/model/id/components/Panel.mjs +37 -0
  52. package/dist/admin/routes/content-manager/model/id/components/Panel.mjs.map +1 -0
  53. package/dist/admin/routes/content-manager/model/id/components/StageSelect.js +329 -0
  54. package/dist/admin/routes/content-manager/model/id/components/StageSelect.js.map +1 -0
  55. package/dist/admin/routes/content-manager/model/id/components/StageSelect.mjs +308 -0
  56. package/dist/admin/routes/content-manager/model/id/components/StageSelect.mjs.map +1 -0
  57. package/dist/admin/routes/content-manager/model/id/components/constants.js +8 -0
  58. package/dist/admin/routes/content-manager/model/id/components/constants.js.map +1 -0
  59. package/dist/admin/routes/content-manager/model/id/components/constants.mjs +5 -0
  60. package/dist/admin/routes/content-manager/model/id/components/constants.mjs.map +1 -0
  61. package/dist/admin/routes/purchase-review-workflows.js +194 -0
  62. package/dist/admin/routes/purchase-review-workflows.js.map +1 -0
  63. package/dist/admin/routes/purchase-review-workflows.mjs +192 -0
  64. package/dist/admin/routes/purchase-review-workflows.mjs.map +1 -0
  65. package/dist/admin/routes/settings/components/AddStage.js +51 -0
  66. package/dist/admin/routes/settings/components/AddStage.js.map +1 -0
  67. package/dist/admin/routes/settings/components/AddStage.mjs +49 -0
  68. package/dist/admin/routes/settings/components/AddStage.mjs.map +1 -0
  69. package/dist/admin/routes/settings/components/Layout.js +86 -0
  70. package/dist/admin/routes/settings/components/Layout.js.map +1 -0
  71. package/dist/admin/routes/settings/components/Layout.mjs +82 -0
  72. package/dist/admin/routes/settings/components/Layout.mjs.map +1 -0
  73. package/dist/admin/routes/settings/components/StageDragPreview.js +40 -0
  74. package/dist/admin/routes/settings/components/StageDragPreview.js.map +1 -0
  75. package/dist/admin/routes/settings/components/StageDragPreview.mjs +38 -0
  76. package/dist/admin/routes/settings/components/StageDragPreview.mjs.map +1 -0
  77. package/dist/admin/routes/settings/components/Stages.js +593 -0
  78. package/dist/admin/routes/settings/components/Stages.js.map +1 -0
  79. package/dist/admin/routes/settings/components/Stages.mjs +572 -0
  80. package/dist/admin/routes/settings/components/Stages.mjs.map +1 -0
  81. package/dist/admin/routes/settings/components/WorkflowAttributes.js +203 -0
  82. package/dist/admin/routes/settings/components/WorkflowAttributes.js.map +1 -0
  83. package/dist/admin/routes/settings/components/WorkflowAttributes.mjs +201 -0
  84. package/dist/admin/routes/settings/components/WorkflowAttributes.mjs.map +1 -0
  85. package/dist/admin/routes/settings/constants.js +8 -0
  86. package/dist/admin/routes/settings/constants.js.map +1 -0
  87. package/dist/admin/routes/settings/constants.mjs +6 -0
  88. package/dist/admin/routes/settings/constants.mjs.map +1 -0
  89. package/dist/admin/routes/settings/hooks/useDragAndDrop.js +193 -0
  90. package/dist/admin/routes/settings/hooks/useDragAndDrop.js.map +1 -0
  91. package/dist/admin/routes/settings/hooks/useDragAndDrop.mjs +170 -0
  92. package/dist/admin/routes/settings/hooks/useDragAndDrop.mjs.map +1 -0
  93. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.js +94 -0
  94. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.js.map +1 -0
  95. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.mjs +73 -0
  96. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.mjs.map +1 -0
  97. package/dist/admin/routes/settings/hooks/useReviewWorkflows.js +171 -0
  98. package/dist/admin/routes/settings/hooks/useReviewWorkflows.js.map +1 -0
  99. package/dist/admin/routes/settings/hooks/useReviewWorkflows.mjs +150 -0
  100. package/dist/admin/routes/settings/hooks/useReviewWorkflows.mjs.map +1 -0
  101. package/dist/admin/routes/settings/id.js +404 -0
  102. package/dist/admin/routes/settings/id.js.map +1 -0
  103. package/dist/admin/routes/settings/id.mjs +382 -0
  104. package/dist/admin/routes/settings/id.mjs.map +1 -0
  105. package/dist/admin/routes/settings/index.js +293 -0
  106. package/dist/admin/routes/settings/index.js.map +1 -0
  107. package/dist/admin/routes/settings/index.mjs +271 -0
  108. package/dist/admin/routes/settings/index.mjs.map +1 -0
  109. package/dist/admin/services/admin.js +23 -0
  110. package/dist/admin/services/admin.js.map +1 -0
  111. package/dist/admin/services/admin.mjs +21 -0
  112. package/dist/admin/services/admin.mjs.map +1 -0
  113. package/dist/admin/services/api.js +15 -0
  114. package/dist/admin/services/api.js.map +1 -0
  115. package/dist/admin/services/api.mjs +13 -0
  116. package/dist/admin/services/api.mjs.map +1 -0
  117. package/dist/admin/services/content-manager.js +101 -0
  118. package/dist/admin/services/content-manager.js.map +1 -0
  119. package/dist/admin/services/content-manager.mjs +96 -0
  120. package/dist/admin/services/content-manager.mjs.map +1 -0
  121. package/dist/admin/services/settings.js +123 -0
  122. package/dist/admin/services/settings.js.map +1 -0
  123. package/dist/admin/services/settings.mjs +118 -0
  124. package/dist/admin/services/settings.mjs.map +1 -0
  125. package/dist/admin/src/routes/content-manager/model/id/components/AssigneeSelect.d.ts +4 -0
  126. package/dist/admin/src/routes/content-manager/model/id/components/Header.d.ts +5 -0
  127. package/dist/admin/src/routes/content-manager/model/id/components/StageSelect.d.ts +3 -0
  128. package/dist/admin/src/services/settings.d.ts +7 -3
  129. package/dist/admin/translations/en.json.js +20 -0
  130. package/dist/admin/translations/en.json.js.map +1 -0
  131. package/dist/admin/translations/en.json.mjs +18 -0
  132. package/dist/admin/translations/en.json.mjs.map +1 -0
  133. package/dist/admin/translations/uk.json.js +16 -0
  134. package/dist/admin/translations/uk.json.js.map +1 -0
  135. package/dist/admin/translations/uk.json.mjs +14 -0
  136. package/dist/admin/translations/uk.json.mjs.map +1 -0
  137. package/dist/admin/utils/api.js +22 -0
  138. package/dist/admin/utils/api.js.map +1 -0
  139. package/dist/admin/utils/api.mjs +19 -0
  140. package/dist/admin/utils/api.mjs.map +1 -0
  141. package/dist/admin/utils/cm-hooks.js +23 -0
  142. package/dist/admin/utils/cm-hooks.js.map +1 -0
  143. package/dist/admin/utils/cm-hooks.mjs +21 -0
  144. package/dist/admin/utils/cm-hooks.mjs.map +1 -0
  145. package/dist/admin/utils/colors.js +50 -0
  146. package/dist/admin/utils/colors.js.map +1 -0
  147. package/dist/admin/utils/colors.mjs +47 -0
  148. package/dist/admin/utils/colors.mjs.map +1 -0
  149. package/dist/admin/utils/translations.js +11 -0
  150. package/dist/admin/utils/translations.js.map +1 -0
  151. package/dist/admin/utils/translations.mjs +9 -0
  152. package/dist/admin/utils/translations.mjs.map +1 -0
  153. package/dist/admin/utils/users.js +17 -0
  154. package/dist/admin/utils/users.js.map +1 -0
  155. package/dist/admin/utils/users.mjs +15 -0
  156. package/dist/admin/utils/users.mjs.map +1 -0
  157. package/dist/server/bootstrap.js +54 -0
  158. package/dist/server/bootstrap.js.map +1 -0
  159. package/dist/server/bootstrap.mjs +52 -0
  160. package/dist/server/bootstrap.mjs.map +1 -0
  161. package/dist/server/config/actions.js +47 -0
  162. package/dist/server/config/actions.js.map +1 -0
  163. package/dist/server/config/actions.mjs +45 -0
  164. package/dist/server/config/actions.mjs.map +1 -0
  165. package/dist/server/constants/default-stages.json.js +23 -0
  166. package/dist/server/constants/default-stages.json.js.map +1 -0
  167. package/dist/server/constants/default-stages.json.mjs +21 -0
  168. package/dist/server/constants/default-stages.json.mjs.map +1 -0
  169. package/dist/server/constants/default-workflow.json.js +12 -0
  170. package/dist/server/constants/default-workflow.json.js.map +1 -0
  171. package/dist/server/constants/default-workflow.json.mjs +7 -0
  172. package/dist/server/constants/default-workflow.json.mjs.map +1 -0
  173. package/dist/server/constants/webhook-events.js +12 -0
  174. package/dist/server/constants/webhook-events.js.map +1 -0
  175. package/dist/server/constants/webhook-events.mjs +7 -0
  176. package/dist/server/constants/webhook-events.mjs.map +1 -0
  177. package/dist/server/constants/workflows.js +53 -0
  178. package/dist/server/constants/workflows.js.map +1 -0
  179. package/dist/server/constants/workflows.mjs +42 -0
  180. package/dist/server/constants/workflows.mjs.map +1 -0
  181. package/dist/server/content-types/index.js +12 -0
  182. package/dist/server/content-types/index.js.map +1 -0
  183. package/dist/server/content-types/index.mjs +10 -0
  184. package/dist/server/content-types/index.mjs.map +1 -0
  185. package/dist/server/content-types/workflow/index.js +50 -0
  186. package/dist/server/content-types/workflow/index.js.map +1 -0
  187. package/dist/server/content-types/workflow/index.mjs +48 -0
  188. package/dist/server/content-types/workflow/index.mjs.map +1 -0
  189. package/dist/server/content-types/workflow-stage/index.js +54 -0
  190. package/dist/server/content-types/workflow-stage/index.js.map +1 -0
  191. package/dist/server/content-types/workflow-stage/index.mjs +52 -0
  192. package/dist/server/content-types/workflow-stage/index.mjs.map +1 -0
  193. package/dist/server/controllers/assignees.js +57 -0
  194. package/dist/server/controllers/assignees.js.map +1 -0
  195. package/dist/server/controllers/assignees.mjs +55 -0
  196. package/dist/server/controllers/assignees.mjs.map +1 -0
  197. package/dist/server/controllers/index.js +14 -0
  198. package/dist/server/controllers/index.js.map +1 -0
  199. package/dist/server/controllers/index.mjs +12 -0
  200. package/dist/server/controllers/index.mjs.map +1 -0
  201. package/dist/server/controllers/stages.js +167 -0
  202. package/dist/server/controllers/stages.js.map +1 -0
  203. package/dist/server/controllers/stages.mjs +165 -0
  204. package/dist/server/controllers/stages.mjs.map +1 -0
  205. package/dist/server/controllers/workflows.js +136 -0
  206. package/dist/server/controllers/workflows.js.map +1 -0
  207. package/dist/server/controllers/workflows.mjs +134 -0
  208. package/dist/server/controllers/workflows.mjs.map +1 -0
  209. package/dist/server/destroy.js +6 -0
  210. package/dist/server/destroy.js.map +1 -0
  211. package/dist/server/destroy.mjs +4 -0
  212. package/dist/server/destroy.mjs.map +1 -0
  213. package/dist/server/index.js +25 -8230
  214. package/dist/server/index.js.map +1 -1
  215. package/dist/server/index.mjs +24 -8232
  216. package/dist/server/index.mjs.map +1 -1
  217. package/dist/server/middlewares/review-workflows.js +42 -0
  218. package/dist/server/middlewares/review-workflows.js.map +1 -0
  219. package/dist/server/middlewares/review-workflows.mjs +37 -0
  220. package/dist/server/middlewares/review-workflows.mjs.map +1 -0
  221. package/dist/server/migrations/handle-deleted-ct-in-workflows.js +40 -0
  222. package/dist/server/migrations/handle-deleted-ct-in-workflows.js.map +1 -0
  223. package/dist/server/migrations/handle-deleted-ct-in-workflows.mjs +38 -0
  224. package/dist/server/migrations/handle-deleted-ct-in-workflows.mjs.map +1 -0
  225. package/dist/server/migrations/multiple-workflows.js +41 -0
  226. package/dist/server/migrations/multiple-workflows.js.map +1 -0
  227. package/dist/server/migrations/multiple-workflows.mjs +39 -0
  228. package/dist/server/migrations/multiple-workflows.mjs.map +1 -0
  229. package/dist/server/migrations/set-stages-default-color.js +22 -0
  230. package/dist/server/migrations/set-stages-default-color.js.map +1 -0
  231. package/dist/server/migrations/set-stages-default-color.mjs +20 -0
  232. package/dist/server/migrations/set-stages-default-color.mjs.map +1 -0
  233. package/dist/server/migrations/set-stages-roles.js +56 -0
  234. package/dist/server/migrations/set-stages-roles.js.map +1 -0
  235. package/dist/server/migrations/set-stages-roles.mjs +54 -0
  236. package/dist/server/migrations/set-stages-roles.mjs.map +1 -0
  237. package/dist/server/migrations/set-workflow-default-name.js +29 -0
  238. package/dist/server/migrations/set-workflow-default-name.js.map +1 -0
  239. package/dist/server/migrations/set-workflow-default-name.mjs +27 -0
  240. package/dist/server/migrations/set-workflow-default-name.mjs.map +1 -0
  241. package/dist/server/migrations/shorten-stage-attribute.js +45 -0
  242. package/dist/server/migrations/shorten-stage-attribute.js.map +1 -0
  243. package/dist/server/migrations/shorten-stage-attribute.mjs +43 -0
  244. package/dist/server/migrations/shorten-stage-attribute.mjs.map +1 -0
  245. package/dist/server/register.js +116 -0
  246. package/dist/server/register.js.map +1 -0
  247. package/dist/server/register.mjs +114 -0
  248. package/dist/server/register.mjs.map +1 -0
  249. package/dist/server/routes/index.js +10 -0
  250. package/dist/server/routes/index.js.map +1 -0
  251. package/dist/server/routes/index.mjs +8 -0
  252. package/dist/server/routes/index.mjs.map +1 -0
  253. package/dist/server/routes/review-workflows.js +186 -0
  254. package/dist/server/routes/review-workflows.js.map +1 -0
  255. package/dist/server/routes/review-workflows.mjs +184 -0
  256. package/dist/server/routes/review-workflows.mjs.map +1 -0
  257. package/dist/server/routes/utils.js +11 -0
  258. package/dist/server/routes/utils.js.map +1 -0
  259. package/dist/server/routes/utils.mjs +9 -0
  260. package/dist/server/routes/utils.mjs.map +1 -0
  261. package/dist/server/services/assignees.js +68 -0
  262. package/dist/server/services/assignees.js.map +1 -0
  263. package/dist/server/services/assignees.mjs +66 -0
  264. package/dist/server/services/assignees.mjs.map +1 -0
  265. package/dist/server/services/document-service-middleware.js +130 -0
  266. package/dist/server/services/document-service-middleware.js.map +1 -0
  267. package/dist/server/services/document-service-middleware.mjs +128 -0
  268. package/dist/server/services/document-service-middleware.mjs.map +1 -0
  269. package/dist/server/services/index.js +24 -0
  270. package/dist/server/services/index.js.map +1 -0
  271. package/dist/server/services/index.mjs +22 -0
  272. package/dist/server/services/index.mjs.map +1 -0
  273. package/dist/server/services/metrics/index.js +67 -0
  274. package/dist/server/services/metrics/index.js.map +1 -0
  275. package/dist/server/services/metrics/index.mjs +55 -0
  276. package/dist/server/services/metrics/index.mjs.map +1 -0
  277. package/dist/server/services/metrics/weekly-metrics.js +84 -0
  278. package/dist/server/services/metrics/weekly-metrics.js.map +1 -0
  279. package/dist/server/services/metrics/weekly-metrics.mjs +82 -0
  280. package/dist/server/services/metrics/weekly-metrics.mjs.map +1 -0
  281. package/dist/server/services/stage-permissions.js +59 -0
  282. package/dist/server/services/stage-permissions.js.map +1 -0
  283. package/dist/server/services/stage-permissions.mjs +57 -0
  284. package/dist/server/services/stage-permissions.mjs.map +1 -0
  285. package/dist/server/services/stages.js +353 -0
  286. package/dist/server/services/stages.js.map +1 -0
  287. package/dist/server/services/stages.mjs +351 -0
  288. package/dist/server/services/stages.mjs.map +1 -0
  289. package/dist/server/services/validation.js +69 -0
  290. package/dist/server/services/validation.js.map +1 -0
  291. package/dist/server/services/validation.mjs +67 -0
  292. package/dist/server/services/validation.mjs.map +1 -0
  293. package/dist/server/services/workflow-content-types.js +90 -0
  294. package/dist/server/services/workflow-content-types.js.map +1 -0
  295. package/dist/server/services/workflow-content-types.mjs +88 -0
  296. package/dist/server/services/workflow-content-types.mjs.map +1 -0
  297. package/dist/server/services/workflows.js +279 -0
  298. package/dist/server/services/workflows.js.map +1 -0
  299. package/dist/server/services/workflows.mjs +277 -0
  300. package/dist/server/services/workflows.mjs.map +1 -0
  301. package/dist/server/src/bootstrap.d.ts.map +1 -1
  302. package/dist/server/src/constants/workflows.d.ts +1 -0
  303. package/dist/server/src/constants/workflows.d.ts.map +1 -1
  304. package/dist/server/src/content-types/index.d.ts +6 -0
  305. package/dist/server/src/content-types/index.d.ts.map +1 -1
  306. package/dist/server/src/content-types/workflow/index.d.ts +6 -0
  307. package/dist/server/src/content-types/workflow/index.d.ts.map +1 -1
  308. package/dist/server/src/controllers/assignees.d.ts.map +1 -1
  309. package/dist/server/src/controllers/stages.d.ts.map +1 -1
  310. package/dist/server/src/index.d.ts +28 -6
  311. package/dist/server/src/index.d.ts.map +1 -1
  312. package/dist/server/src/register.d.ts.map +1 -1
  313. package/dist/server/src/services/assignees.d.ts +8 -4
  314. package/dist/server/src/services/assignees.d.ts.map +1 -1
  315. package/dist/server/src/services/document-service-middleware.d.ts +2 -1
  316. package/dist/server/src/services/document-service-middleware.d.ts.map +1 -1
  317. package/dist/server/src/services/index.d.ts +16 -6
  318. package/dist/server/src/services/index.d.ts.map +1 -1
  319. package/dist/server/src/services/metrics/index.d.ts +4 -4
  320. package/dist/server/src/services/metrics/index.d.ts.map +1 -1
  321. package/dist/server/src/services/stages.d.ts +6 -1
  322. package/dist/server/src/services/stages.d.ts.map +1 -1
  323. package/dist/server/src/services/workflows.d.ts.map +1 -1
  324. package/dist/server/src/validation/review-workflows.d.ts +4 -0
  325. package/dist/server/src/validation/review-workflows.d.ts.map +1 -1
  326. package/dist/server/utils/index.js +16 -0
  327. package/dist/server/utils/index.js.map +1 -0
  328. package/dist/server/utils/index.mjs +13 -0
  329. package/dist/server/utils/index.mjs.map +1 -0
  330. package/dist/server/utils/review-workflows.js +36 -0
  331. package/dist/server/utils/review-workflows.js.map +1 -0
  332. package/dist/server/utils/review-workflows.mjs +30 -0
  333. package/dist/server/utils/review-workflows.mjs.map +1 -0
  334. package/dist/server/validation/review-workflows.js +71 -0
  335. package/dist/server/validation/review-workflows.js.map +1 -0
  336. package/dist/server/validation/review-workflows.mjs +65 -0
  337. package/dist/server/validation/review-workflows.mjs.map +1 -0
  338. package/dist/shared/contracts/review-workflows.d.ts +8 -4
  339. package/dist/shared/contracts/review-workflows.d.ts.map +1 -1
  340. package/package.json +16 -15
  341. package/dist/_chunks/Layout-8i0EXRRs.js +0 -251
  342. package/dist/_chunks/Layout-8i0EXRRs.js.map +0 -1
  343. package/dist/_chunks/Layout-C9m07iTY.mjs +0 -233
  344. package/dist/_chunks/Layout-C9m07iTY.mjs.map +0 -1
  345. package/dist/_chunks/en-D9ZrQAV6.mjs +0 -12
  346. package/dist/_chunks/en-D9ZrQAV6.mjs.map +0 -1
  347. package/dist/_chunks/en-xcewH2pC.js +0 -12
  348. package/dist/_chunks/en-xcewH2pC.js.map +0 -1
  349. package/dist/_chunks/id-CmtaTf1x.js +0 -1237
  350. package/dist/_chunks/id-CmtaTf1x.js.map +0 -1
  351. package/dist/_chunks/id-DV0Ndeav.mjs +0 -1217
  352. package/dist/_chunks/id-DV0Ndeav.mjs.map +0 -1
  353. package/dist/_chunks/index-B8WmHbCU.js +0 -233
  354. package/dist/_chunks/index-B8WmHbCU.js.map +0 -1
  355. package/dist/_chunks/index-BCUO98DV.js +0 -830
  356. package/dist/_chunks/index-BCUO98DV.js.map +0 -1
  357. package/dist/_chunks/index-CA5Axcoc.mjs +0 -214
  358. package/dist/_chunks/index-CA5Axcoc.mjs.map +0 -1
  359. package/dist/_chunks/index-CqYVkW3E.mjs +0 -812
  360. package/dist/_chunks/index-CqYVkW3E.mjs.map +0 -1
  361. package/dist/_chunks/purchase-review-workflows-BN-5Ube7.mjs +0 -52
  362. package/dist/_chunks/purchase-review-workflows-BN-5Ube7.mjs.map +0 -1
  363. package/dist/_chunks/purchase-review-workflows-DlCDg0fD.js +0 -52
  364. package/dist/_chunks/purchase-review-workflows-DlCDg0fD.js.map +0 -1
  365. package/dist/_chunks/router-BOXlNnrU.js +0 -24
  366. package/dist/_chunks/router-BOXlNnrU.js.map +0 -1
  367. package/dist/_chunks/router-Jdt6SbIA.mjs +0 -24
  368. package/dist/_chunks/router-Jdt6SbIA.mjs.map +0 -1
  369. package/dist/admin/src/routes/content-manager/[model]/[id]/components/AssigneeSelect.d.ts +0 -2
  370. package/dist/admin/src/routes/content-manager/[model]/[id]/components/StageSelect.d.ts +0 -1
  371. /package/dist/admin/src/routes/content-manager/{[model] → model}/components/AssigneeFilter.d.ts +0 -0
  372. /package/dist/admin/src/routes/content-manager/{[model] → model}/components/StageFilter.d.ts +0 -0
  373. /package/dist/admin/src/routes/content-manager/{[model] → model}/components/TableColumns.d.ts +0 -0
  374. /package/dist/admin/src/routes/content-manager/{[model] → model}/configure/constants.d.ts +0 -0
  375. /package/dist/admin/src/routes/content-manager/{[model] → model}/constants.d.ts +0 -0
  376. /package/dist/admin/src/routes/content-manager/{[model]/[id] → model/id}/components/Panel.d.ts +0 -0
  377. /package/dist/admin/src/routes/content-manager/{[model]/[id] → model/id}/components/constants.d.ts +0 -0
@@ -0,0 +1,277 @@
1
+ import { map, get, set, isString } from 'lodash/fp';
2
+ import { errors } from '@strapi/utils';
3
+ import { WORKFLOW_MODEL_UID, WORKFLOW_POPULATE } from '../constants/workflows.mjs';
4
+ import { getService } from '../utils/index.mjs';
5
+ import { getWorkflowContentTypeFilter } from '../utils/review-workflows.mjs';
6
+ import workflowsContentTypesFactory from './workflow-content-types.mjs';
7
+
8
+ const processFilters = ({ strapi }, filters = {})=>{
9
+ const processedFilters = {
10
+ ...filters
11
+ };
12
+ if (isString(filters.contentTypes)) {
13
+ processedFilters.contentTypes = getWorkflowContentTypeFilter({
14
+ strapi
15
+ }, filters.contentTypes);
16
+ }
17
+ return processedFilters;
18
+ };
19
+ // TODO: How can we improve this? Maybe using traversePopulate?
20
+ const processPopulate = (populate)=>{
21
+ // If it does not exist or it's not an object (like an array) return the default populate
22
+ if (!populate) {
23
+ return WORKFLOW_POPULATE;
24
+ }
25
+ return populate;
26
+ };
27
+ var workflows = (({ strapi })=>{
28
+ const workflowsContentTypes = workflowsContentTypesFactory({
29
+ strapi
30
+ });
31
+ const workflowValidator = getService('validation', {
32
+ strapi
33
+ });
34
+ const metrics = getService('workflow-metrics', {
35
+ strapi
36
+ });
37
+ return {
38
+ /**
39
+ * Returns all the workflows matching the user-defined filters.
40
+ * @param {object} opts - Options for the query.
41
+ * @param {object} opts.filters - Filters object.
42
+ * @returns {Promise<object[]>} - List of workflows that match the user's filters.
43
+ */ async find (opts = {}) {
44
+ const filters = processFilters({
45
+ strapi
46
+ }, opts.filters);
47
+ const populate = processPopulate(opts.populate);
48
+ const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, {
49
+ ...opts,
50
+ filters,
51
+ populate
52
+ });
53
+ return strapi.db.query(WORKFLOW_MODEL_UID).findMany(query);
54
+ },
55
+ /**
56
+ * Returns the workflow with the specified ID.
57
+ * @param {string} id - ID of the requested workflow.
58
+ * @param {object} opts - Options for the query.
59
+ * @returns {Promise<object>} - Workflow object matching the requested ID.
60
+ */ findById (id, opts = {}) {
61
+ const populate = processPopulate(opts.populate);
62
+ const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, {
63
+ populate
64
+ });
65
+ return strapi.db.query(WORKFLOW_MODEL_UID).findOne({
66
+ ...query,
67
+ where: {
68
+ id
69
+ }
70
+ });
71
+ },
72
+ /**
73
+ * Creates a new workflow.
74
+ * @param {object} opts - Options for creating the new workflow.
75
+ * @returns {Promise<object>} - Workflow object that was just created.
76
+ * @throws {ValidationError} - If the workflow has no stages.
77
+ */ async create (opts) {
78
+ let createOpts = {
79
+ ...opts,
80
+ populate: WORKFLOW_POPULATE
81
+ };
82
+ workflowValidator.validateWorkflowStages(opts.data.stages);
83
+ await workflowValidator.validateWorkflowCount(1);
84
+ return strapi.db.transaction(async ()=>{
85
+ // Create stages
86
+ const stages = await getService('stages', {
87
+ strapi
88
+ }).createMany(opts.data.stages);
89
+ const mapIds = map(get('id'));
90
+ createOpts = set('data.stages', mapIds(stages), createOpts);
91
+ if (opts.data.stageRequiredToPublishName) {
92
+ const stageRequiredToPublish = stages.find((stage)=>stage.name === opts.data.stageRequiredToPublishName);
93
+ if (!stageRequiredToPublish) {
94
+ throw new errors.ApplicationError('Stage required to publish does not exist');
95
+ }
96
+ createOpts = set('data.stageRequiredToPublish', stageRequiredToPublish.id, createOpts);
97
+ }
98
+ // Update (un)assigned Content Types
99
+ if (opts.data.contentTypes) {
100
+ await workflowsContentTypes.migrate({
101
+ destContentTypes: opts.data.contentTypes,
102
+ stageId: stages[0].id
103
+ });
104
+ }
105
+ // Create Workflow
106
+ const createdWorkflow = await strapi.db.query(WORKFLOW_MODEL_UID).create(strapi.get('query-params').transform(WORKFLOW_MODEL_UID, createOpts));
107
+ metrics.sendDidCreateWorkflow(createdWorkflow.id, !!opts.data.stageRequiredToPublishName);
108
+ if (opts.data.stageRequiredToPublishName) {
109
+ await strapi.plugin('content-releases').service('release-action').validateActionsByContentTypes(opts.data.contentTypes);
110
+ }
111
+ return createdWorkflow;
112
+ });
113
+ },
114
+ /**
115
+ * Updates an existing workflow.
116
+ * @param {object} workflow - The existing workflow to update.
117
+ * @param {object} opts - Options for updating the workflow.
118
+ * @returns {Promise<object>} - Workflow object that was just updated.
119
+ * @throws {ApplicationError} - If the supplied stage ID does not belong to the workflow.
120
+ */ async update (workflow, opts) {
121
+ const stageService = getService('stages', {
122
+ strapi
123
+ });
124
+ let updateOpts = {
125
+ ...opts,
126
+ populate: {
127
+ ...WORKFLOW_POPULATE
128
+ }
129
+ };
130
+ let updatedStages = [];
131
+ let updatedStageIds;
132
+ await workflowValidator.validateWorkflowCount();
133
+ return strapi.db.transaction(async ()=>{
134
+ // Update stages
135
+ if (opts.data.stages) {
136
+ workflowValidator.validateWorkflowStages(opts.data.stages);
137
+ opts.data.stages.forEach((stage)=>this.assertStageBelongsToWorkflow(stage.id, workflow));
138
+ updatedStages = await stageService.replaceStages(workflow.stages, opts.data.stages, workflow.contentTypes);
139
+ updatedStageIds = updatedStages.map((stage)=>stage.id);
140
+ updateOpts = set('data.stages', updatedStageIds, updateOpts);
141
+ }
142
+ if (opts.data.stageRequiredToPublishName !== undefined) {
143
+ const stages = updatedStages ?? workflow.stages;
144
+ if (opts.data.stageRequiredToPublishName === null) {
145
+ updateOpts = set('data.stageRequiredToPublish', null, updateOpts);
146
+ } else {
147
+ const stageRequiredToPublish = stages.find((stage)=>stage.name === opts.data.stageRequiredToPublishName);
148
+ if (!stageRequiredToPublish) {
149
+ throw new errors.ApplicationError('Stage required to publish does not exist');
150
+ }
151
+ updateOpts = set('data.stageRequiredToPublish', stageRequiredToPublish.id, updateOpts);
152
+ }
153
+ }
154
+ // Update (un)assigned Content Types
155
+ if (opts.data.contentTypes) {
156
+ await workflowsContentTypes.migrate({
157
+ srcContentTypes: workflow.contentTypes,
158
+ destContentTypes: opts.data.contentTypes,
159
+ stageId: updatedStageIds ? updatedStageIds[0] : workflow.stages[0].id
160
+ });
161
+ }
162
+ metrics.sendDidEditWorkflow(workflow.id, !!opts.data.stageRequiredToPublishName);
163
+ const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, updateOpts);
164
+ // Update Workflow
165
+ const updatedWorkflow = await strapi.db.query(WORKFLOW_MODEL_UID).update({
166
+ ...query,
167
+ where: {
168
+ id: workflow.id
169
+ }
170
+ });
171
+ await strapi.plugin('content-releases').service('release-action').validateActionsByContentTypes([
172
+ ...workflow.contentTypes,
173
+ ...opts.data.contentTypes || []
174
+ ]);
175
+ return updatedWorkflow;
176
+ });
177
+ },
178
+ /**
179
+ * Deletes an existing workflow.
180
+ * Also deletes all the workflow stages and migrate all assigned the content types.
181
+ * @param {*} workflow
182
+ * @param {*} opts
183
+ * @returns
184
+ */ async delete (workflow, opts) {
185
+ const stageService = getService('stages', {
186
+ strapi
187
+ });
188
+ const workflowCount = await this.count();
189
+ if (workflowCount <= 1) {
190
+ throw new errors.ApplicationError('Can not delete the last workflow');
191
+ }
192
+ return strapi.db.transaction(async ()=>{
193
+ // Delete stages
194
+ await stageService.deleteMany(workflow.stages);
195
+ // Unassign all content types, this will migrate the content types to null
196
+ await workflowsContentTypes.migrate({
197
+ srcContentTypes: workflow.contentTypes,
198
+ destContentTypes: []
199
+ });
200
+ const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, opts);
201
+ // Delete Workflow
202
+ const deletedWorkflow = await strapi.db.query(WORKFLOW_MODEL_UID).delete({
203
+ ...query,
204
+ where: {
205
+ id: workflow.id
206
+ }
207
+ });
208
+ await strapi.plugin('content-releases').service('release-action').validateActionsByContentTypes(workflow.contentTypes);
209
+ return deletedWorkflow;
210
+ });
211
+ },
212
+ /**
213
+ * Returns the total count of workflows.
214
+ * @returns {Promise<number>} - Total count of workflows.
215
+ */ count () {
216
+ return strapi.db.query(WORKFLOW_MODEL_UID).count();
217
+ },
218
+ /**
219
+ * Finds the assigned workflow for a given content type ID.
220
+ * @param {string} uid - Content type ID to find the assigned workflow for.
221
+ * @param {object} opts - Options for the query.
222
+ * @returns {Promise<object|null>} - Assigned workflow object if found, or null.
223
+ */ async getAssignedWorkflow (uid, opts = {}) {
224
+ const workflows = await this._getAssignedWorkflows(uid, opts);
225
+ return workflows.length > 0 ? workflows[0] : null;
226
+ },
227
+ /**
228
+ * Finds all the assigned workflows for a given content type ID.
229
+ * Normally, there should only be one workflow assigned to a content type.
230
+ * However, edge cases can occur where a content type is assigned to multiple workflows.
231
+ * @param {string} uid - Content type ID to find the assigned workflows for.
232
+ * @param {object} opts - Options for the query.
233
+ * @returns {Promise<object[]>} - List of assigned workflow objects.
234
+ */ async _getAssignedWorkflows (uid, opts = {}) {
235
+ return this.find({
236
+ ...opts,
237
+ filters: {
238
+ contentTypes: getWorkflowContentTypeFilter({
239
+ strapi
240
+ }, uid)
241
+ }
242
+ });
243
+ },
244
+ /**
245
+ * Asserts that a content type has an assigned workflow.
246
+ * @param {string} uid - Content type ID to verify the assignment of.
247
+ * @returns {Promise<object>} - Workflow object associated with the content type ID.
248
+ * @throws {ApplicationError} - If no assigned workflow is found for the content type ID.
249
+ */ async assertContentTypeBelongsToWorkflow (uid) {
250
+ const workflow = await this.getAssignedWorkflow(uid, {
251
+ populate: 'stages'
252
+ });
253
+ if (!workflow) {
254
+ throw new errors.ApplicationError(`Review workflows is not activated on Content Type ${uid}.`);
255
+ }
256
+ return workflow;
257
+ },
258
+ /**
259
+ * Asserts that a stage belongs to a given workflow.
260
+ * @param {string} stageId - ID of stage to check.
261
+ * @param {object} workflow - Workflow object to check against.
262
+ * @returns
263
+ * @throws {ApplicationError} - If the stage does not belong to the specified workflow.
264
+ */ assertStageBelongsToWorkflow (stageId, workflow) {
265
+ if (!stageId) {
266
+ return;
267
+ }
268
+ const belongs = workflow.stages.some((stage)=>stage.id === stageId);
269
+ if (!belongs) {
270
+ throw new errors.ApplicationError(`Stage does not belong to workflow "${workflow.name}"`);
271
+ }
272
+ }
273
+ };
274
+ });
275
+
276
+ export { workflows as default };
277
+ //# sourceMappingURL=workflows.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.mjs","sources":["../../../server/src/services/workflows.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { set, isString, map, get } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport { WORKFLOW_MODEL_UID, WORKFLOW_POPULATE } from '../constants/workflows';\nimport { getService } from '../utils';\nimport { getWorkflowContentTypeFilter } from '../utils/review-workflows';\nimport workflowsContentTypesFactory from './workflow-content-types';\n\nconst processFilters = ({ strapi }: { strapi: Core.Strapi }, filters: any = {}) => {\n const processedFilters = { ...filters };\n\n if (isString(filters.contentTypes)) {\n processedFilters.contentTypes = getWorkflowContentTypeFilter({ strapi }, filters.contentTypes);\n }\n\n return processedFilters;\n};\n\n// TODO: How can we improve this? Maybe using traversePopulate?\nconst processPopulate = (populate: any) => {\n // If it does not exist or it's not an object (like an array) return the default populate\n if (!populate) {\n return WORKFLOW_POPULATE;\n }\n\n return populate;\n};\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => {\n const workflowsContentTypes = workflowsContentTypesFactory({ strapi });\n const workflowValidator = getService('validation', { strapi });\n const metrics = getService('workflow-metrics', { strapi });\n\n return {\n /**\n * Returns all the workflows matching the user-defined filters.\n * @param {object} opts - Options for the query.\n * @param {object} opts.filters - Filters object.\n * @returns {Promise<object[]>} - List of workflows that match the user's filters.\n */\n async find(opts: any = {}) {\n const filters = processFilters({ strapi }, opts.filters);\n const populate = processPopulate(opts.populate);\n\n const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, {\n ...opts,\n filters,\n populate,\n });\n\n return strapi.db.query(WORKFLOW_MODEL_UID).findMany(query);\n },\n\n /**\n * Returns the workflow with the specified ID.\n * @param {string} id - ID of the requested workflow.\n * @param {object} opts - Options for the query.\n * @returns {Promise<object>} - Workflow object matching the requested ID.\n */\n findById(id: any, opts: { populate?: any } = {}) {\n const populate = processPopulate(opts.populate);\n\n const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, { populate });\n\n return strapi.db.query(WORKFLOW_MODEL_UID).findOne({\n ...query,\n where: { id },\n });\n },\n\n /**\n * Creates a new workflow.\n * @param {object} opts - Options for creating the new workflow.\n * @returns {Promise<object>} - Workflow object that was just created.\n * @throws {ValidationError} - If the workflow has no stages.\n */\n async create(opts: { data: any }) {\n let createOpts = { ...opts, populate: WORKFLOW_POPULATE };\n\n workflowValidator.validateWorkflowStages(opts.data.stages);\n await workflowValidator.validateWorkflowCount(1);\n\n return strapi.db.transaction(async () => {\n // Create stages\n const stages = await getService('stages', { strapi }).createMany(opts.data.stages);\n const mapIds = map(get('id'));\n\n createOpts = set('data.stages', mapIds(stages), createOpts);\n\n if (opts.data.stageRequiredToPublishName) {\n const stageRequiredToPublish = stages.find(\n (stage: any) => stage.name === opts.data.stageRequiredToPublishName\n );\n if (!stageRequiredToPublish) {\n throw new errors.ApplicationError('Stage required to publish does not exist');\n }\n\n createOpts = set('data.stageRequiredToPublish', stageRequiredToPublish.id, createOpts);\n }\n\n // Update (un)assigned Content Types\n if (opts.data.contentTypes) {\n await workflowsContentTypes.migrate({\n destContentTypes: opts.data.contentTypes,\n stageId: stages[0].id,\n });\n }\n\n // Create Workflow\n const createdWorkflow = await strapi.db\n .query(WORKFLOW_MODEL_UID)\n .create(strapi.get('query-params').transform(WORKFLOW_MODEL_UID, createOpts));\n\n metrics.sendDidCreateWorkflow(createdWorkflow.id, !!opts.data.stageRequiredToPublishName);\n\n if (opts.data.stageRequiredToPublishName) {\n await strapi\n .plugin('content-releases')\n .service('release-action')\n .validateActionsByContentTypes(opts.data.contentTypes);\n }\n\n return createdWorkflow;\n });\n },\n\n /**\n * Updates an existing workflow.\n * @param {object} workflow - The existing workflow to update.\n * @param {object} opts - Options for updating the workflow.\n * @returns {Promise<object>} - Workflow object that was just updated.\n * @throws {ApplicationError} - If the supplied stage ID does not belong to the workflow.\n */\n async update(workflow: any, opts: any) {\n const stageService = getService('stages', { strapi });\n let updateOpts = { ...opts, populate: { ...WORKFLOW_POPULATE } };\n let updatedStages: any = [];\n let updatedStageIds: any;\n\n await workflowValidator.validateWorkflowCount();\n\n return strapi.db.transaction(async () => {\n // Update stages\n if (opts.data.stages) {\n workflowValidator.validateWorkflowStages(opts.data.stages);\n opts.data.stages.forEach((stage: any) =>\n this.assertStageBelongsToWorkflow(stage.id, workflow)\n );\n\n updatedStages = await stageService.replaceStages(\n workflow.stages,\n opts.data.stages,\n workflow.contentTypes\n );\n updatedStageIds = updatedStages.map((stage: any) => stage.id);\n\n updateOpts = set('data.stages', updatedStageIds, updateOpts);\n }\n\n if (opts.data.stageRequiredToPublishName !== undefined) {\n const stages = updatedStages ?? workflow.stages;\n\n if (opts.data.stageRequiredToPublishName === null) {\n updateOpts = set('data.stageRequiredToPublish', null, updateOpts);\n } else {\n const stageRequiredToPublish = stages.find(\n (stage: any) => stage.name === opts.data.stageRequiredToPublishName\n );\n\n if (!stageRequiredToPublish) {\n throw new errors.ApplicationError('Stage required to publish does not exist');\n }\n\n updateOpts = set('data.stageRequiredToPublish', stageRequiredToPublish.id, updateOpts);\n }\n }\n\n // Update (un)assigned Content Types\n if (opts.data.contentTypes) {\n await workflowsContentTypes.migrate({\n srcContentTypes: workflow.contentTypes,\n destContentTypes: opts.data.contentTypes,\n stageId: updatedStageIds ? updatedStageIds[0] : workflow.stages[0].id,\n });\n }\n\n metrics.sendDidEditWorkflow(workflow.id, !!opts.data.stageRequiredToPublishName);\n\n const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, updateOpts);\n\n // Update Workflow\n const updatedWorkflow = await strapi.db.query(WORKFLOW_MODEL_UID).update({\n ...query,\n where: { id: workflow.id },\n });\n\n await strapi\n .plugin('content-releases')\n .service('release-action')\n .validateActionsByContentTypes([\n ...workflow.contentTypes,\n ...(opts.data.contentTypes || []),\n ]);\n\n return updatedWorkflow;\n });\n },\n\n /**\n * Deletes an existing workflow.\n * Also deletes all the workflow stages and migrate all assigned the content types.\n * @param {*} workflow\n * @param {*} opts\n * @returns\n */\n async delete(workflow: any, opts: any) {\n const stageService = getService('stages', { strapi });\n\n const workflowCount = await this.count();\n\n if (workflowCount <= 1) {\n throw new errors.ApplicationError('Can not delete the last workflow');\n }\n\n return strapi.db.transaction(async () => {\n // Delete stages\n await stageService.deleteMany(workflow.stages);\n\n // Unassign all content types, this will migrate the content types to null\n await workflowsContentTypes.migrate({\n srcContentTypes: workflow.contentTypes,\n destContentTypes: [],\n });\n\n const query = strapi.get('query-params').transform(WORKFLOW_MODEL_UID, opts);\n\n // Delete Workflow\n const deletedWorkflow = await strapi.db.query(WORKFLOW_MODEL_UID).delete({\n ...query,\n where: { id: workflow.id },\n });\n\n await strapi\n .plugin('content-releases')\n .service('release-action')\n .validateActionsByContentTypes(workflow.contentTypes);\n\n return deletedWorkflow;\n });\n },\n /**\n * Returns the total count of workflows.\n * @returns {Promise<number>} - Total count of workflows.\n */\n count() {\n return strapi.db.query(WORKFLOW_MODEL_UID).count();\n },\n\n /**\n * Finds the assigned workflow for a given content type ID.\n * @param {string} uid - Content type ID to find the assigned workflow for.\n * @param {object} opts - Options for the query.\n * @returns {Promise<object|null>} - Assigned workflow object if found, or null.\n */\n async getAssignedWorkflow(uid: any, opts: any = {}) {\n const workflows = await this._getAssignedWorkflows(uid, opts);\n\n return workflows.length > 0 ? workflows[0] : null;\n },\n\n /**\n * Finds all the assigned workflows for a given content type ID.\n * Normally, there should only be one workflow assigned to a content type.\n * However, edge cases can occur where a content type is assigned to multiple workflows.\n * @param {string} uid - Content type ID to find the assigned workflows for.\n * @param {object} opts - Options for the query.\n * @returns {Promise<object[]>} - List of assigned workflow objects.\n */\n async _getAssignedWorkflows(uid: any, opts = {}) {\n return this.find({\n ...opts,\n filters: { contentTypes: getWorkflowContentTypeFilter({ strapi }, uid) },\n });\n },\n\n /**\n * Asserts that a content type has an assigned workflow.\n * @param {string} uid - Content type ID to verify the assignment of.\n * @returns {Promise<object>} - Workflow object associated with the content type ID.\n * @throws {ApplicationError} - If no assigned workflow is found for the content type ID.\n */\n async assertContentTypeBelongsToWorkflow(uid: any) {\n const workflow = await this.getAssignedWorkflow(uid, {\n populate: 'stages',\n });\n\n if (!workflow) {\n throw new errors.ApplicationError(\n `Review workflows is not activated on Content Type ${uid}.`\n );\n }\n\n return workflow;\n },\n\n /**\n * Asserts that a stage belongs to a given workflow.\n * @param {string} stageId - ID of stage to check.\n * @param {object} workflow - Workflow object to check against.\n * @returns\n * @throws {ApplicationError} - If the stage does not belong to the specified workflow.\n */\n assertStageBelongsToWorkflow(stageId: any, workflow: any) {\n if (!stageId) {\n return;\n }\n\n const belongs = workflow.stages.some((stage: any) => stage.id === stageId);\n if (!belongs) {\n throw new errors.ApplicationError(`Stage does not belong to workflow \"${workflow.name}\"`);\n }\n },\n };\n};\n"],"names":["processFilters","strapi","filters","processedFilters","isString","contentTypes","getWorkflowContentTypeFilter","processPopulate","populate","WORKFLOW_POPULATE","workflowsContentTypes","workflowsContentTypesFactory","workflowValidator","getService","metrics","find","opts","query","get","transform","WORKFLOW_MODEL_UID","db","findMany","findById","id","findOne","where","create","createOpts","validateWorkflowStages","data","stages","validateWorkflowCount","transaction","createMany","mapIds","map","set","stageRequiredToPublishName","stageRequiredToPublish","stage","name","errors","ApplicationError","migrate","destContentTypes","stageId","createdWorkflow","sendDidCreateWorkflow","plugin","service","validateActionsByContentTypes","update","workflow","stageService","updateOpts","updatedStages","updatedStageIds","forEach","assertStageBelongsToWorkflow","replaceStages","undefined","srcContentTypes","sendDidEditWorkflow","updatedWorkflow","delete","workflowCount","count","deleteMany","deletedWorkflow","getAssignedWorkflow","uid","workflows","_getAssignedWorkflows","length","assertContentTypeBelongsToWorkflow","belongs","some"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../server/src/bootstrap.ts"],"names":[],"mappings":"+BAwC4B,GAAG;AAA/B,wBAgBE"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../server/src/bootstrap.ts"],"names":[],"mappings":"+BAwC4B,GAAG;AAA/B,wBAiBE"}
@@ -30,5 +30,6 @@ export declare const WORKFLOW_POPULATE: {
30
30
  };
31
31
  };
32
32
  };
33
+ stageRequiredToPublish: boolean;
33
34
  };
34
35
  //# sourceMappingURL=workflows.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflows.d.ts","sourceRoot":"","sources":["../../../../server/src/constants/workflows.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,sCAAsC,CAAC;AACtE,eAAO,MAAM,eAAe,4CAA4C,CAAC;AACzE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,6CAA6C,CAAC;AAE/E,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAC7C,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AACrD,eAAO,MAAM,yBAAyB,oBAAoB,CAAC;AAE3D,eAAO,MAAM,aAAa,MAAM,CAAC;AACjC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,eAAO,MAAM,MAAM;;;;;CAOlB,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAW7B,CAAC"}
1
+ {"version":3,"file":"workflows.d.ts","sourceRoot":"","sources":["../../../../server/src/constants/workflows.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,sCAAsC,CAAC;AACtE,eAAO,MAAM,eAAe,4CAA4C,CAAC;AACzE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,6CAA6C,CAAC;AAE/E,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAC7C,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AACrD,eAAO,MAAM,yBAAyB,oBAAoB,CAAC;AAE3D,eAAO,MAAM,aAAa,MAAM,CAAC;AACjC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,eAAO,MAAM,MAAM;;;;;CAOlB,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;CAY7B,CAAC"}
@@ -30,6 +30,12 @@ declare const _default: {
30
30
  relation: string;
31
31
  mappedBy: string;
32
32
  };
33
+ stageRequiredToPublish: {
34
+ type: string;
35
+ target: string;
36
+ relation: string;
37
+ required: boolean;
38
+ };
33
39
  contentTypes: {
34
40
  type: string;
35
41
  required: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/content-types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAGE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/content-types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAGE"}
@@ -29,6 +29,12 @@ declare const _default: {
29
29
  relation: string;
30
30
  mappedBy: string;
31
31
  };
32
+ stageRequiredToPublish: {
33
+ type: string;
34
+ target: string;
35
+ relation: string;
36
+ required: boolean;
37
+ };
32
38
  contentTypes: {
33
39
  type: string;
34
40
  required: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/workflow/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBAsCE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/workflow/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA4CE"}
@@ -1 +1 @@
1
- {"version":3,"file":"assignees.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/assignees.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;IAOjC;;;;;;;;;;;;OAYG;sBACqB,OAAO;;AAdjC,wBAiEE"}
1
+ {"version":3,"file":"assignees.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/assignees.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;IAOjC;;;;;;;;;;;;OAYG;sBACqB,OAAO;;AAdjC,wBA4DE"}
@@ -1 +1 @@
1
- {"version":3,"file":"stages.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/stages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;IA4BjC;;;OAGG;cACa,OAAO;IAevB;;;OAGG;kBACiB,OAAO;IAgB3B;;;;;;;;;;;;OAYG;sBACqB,OAAO;IAsD/B;;;;;;;;OAQG;6BAC4B,OAAO;;AApHxC,wBAiLE"}
1
+ {"version":3,"file":"stages.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/stages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;IA4BjC;;;OAGG;cACa,OAAO;IAevB;;;OAGG;kBACiB,OAAO;IAgB3B;;;;;;;;;;;;OAYG;sBACqB,OAAO;IAiD/B;;;;;;;;OAQG;6BAC4B,OAAO;;AA/GxC,wBA4KE"}
@@ -39,6 +39,12 @@ declare const _default: {
39
39
  relation: string;
40
40
  mappedBy: string;
41
41
  };
42
+ stageRequiredToPublish: {
43
+ type: string;
44
+ target: string;
45
+ relation: string;
46
+ required: boolean;
47
+ };
42
48
  contentTypes: {
43
49
  type: string;
44
50
  required: boolean;
@@ -126,7 +132,12 @@ declare const _default: {
126
132
  deleteStagePermissions(stages: any): Promise<void>;
127
133
  count({ workflowId }?: any): Promise<number>;
128
134
  replaceStages(srcStages: any, destStages: any, contentTypesToMigrate?: never[]): Promise<any>;
129
- updateEntity(documentId: string, locale: string, model: import("@strapi/types/dist/uid").ContentType, stageId: any): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
135
+ updateEntity(entityToUpdate: {
136
+ id: string | number;
137
+ documentId: string;
138
+ locale: string;
139
+ updatedAt: string;
140
+ }, model: import("@strapi/types/dist/uid").ContentType, stageId: any): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
130
141
  updateEntitiesStage(contentTypeUID: any, { fromStageId, toStageId }: any): Promise<number | number[]>;
131
142
  deleteAllEntitiesStage(contentTypeUID: any): Promise<number>;
132
143
  };
@@ -141,9 +152,13 @@ declare const _default: {
141
152
  assignees: ({ strapi }: {
142
153
  strapi: import("@strapi/types/dist/core").Strapi;
143
154
  }) => {
144
- findEntityAssigneeId(id: string, model: import("@strapi/types/dist/uid").ContentType): Promise<any>;
145
- updateEntityAssignee(documentId: string, locale: string, model: import("@strapi/types/dist/uid").ContentType, assigneeId: string): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
146
- deleteEntityAssignee(documentId: string, locale: string, model: import("@strapi/types/dist/uid").ContentType): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
155
+ findEntityAssigneeId(id: string | number, model: import("@strapi/types/dist/uid").ContentType): Promise<any>;
156
+ updateEntityAssignee(entityToUpdate: {
157
+ id: string | number;
158
+ documentId: string;
159
+ locale: string;
160
+ updatedAt: string;
161
+ }, model: import("@strapi/types/dist/uid").ContentType, assigneeId: string | null): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
147
162
  };
148
163
  validation: ({ strapi }: {
149
164
  strapi: import("@strapi/types/dist/core").Strapi;
@@ -160,14 +175,15 @@ declare const _default: {
160
175
  'document-service-middlewares': () => {
161
176
  assignStageOnCreate: import("@strapi/types/dist/modules/documents/middleware").Middleware;
162
177
  handleStageOnUpdate: import("@strapi/types/dist/modules/documents/middleware").Middleware;
178
+ checkStageBeforePublish: import("@strapi/types/dist/modules/documents/middleware").Middleware;
163
179
  };
164
180
  'workflow-metrics': {
165
181
  sendDidCreateStage: () => Promise<void>;
166
182
  sendDidEditStage: () => Promise<void>;
167
183
  sendDidDeleteStage: () => Promise<void>;
168
184
  sendDidChangeEntryStage: () => Promise<void>;
169
- sendDidCreateWorkflow: () => Promise<void>;
170
- sendDidEditWorkflow: () => Promise<void>;
185
+ sendDidCreateWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
186
+ sendDidEditWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
171
187
  sendDidSendReviewWorkflowPropertiesOnceAWeek: (numberOfActiveWorkflows: number, avgStagesCount: number, maxStagesCount: number, activatedContentTypes: number) => Promise<void>;
172
188
  sendDidEditAssignee: (fromId: any, toId: any) => Promise<void>;
173
189
  };
@@ -254,6 +270,12 @@ declare const _default: {
254
270
  relation: string;
255
271
  mappedBy: string;
256
272
  };
273
+ stageRequiredToPublish: {
274
+ type: string;
275
+ target: string;
276
+ relation: string;
277
+ required: boolean;
278
+ };
257
279
  contentTypes: {
258
280
  type: string;
259
281
  required: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,wBAA2B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,wBAA2B"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../server/src/register.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;qCAgFR;IAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAAE;AAAzD,wBA2BE"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../server/src/register.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAO,MAAM,eAAe,CAAC;qCAqGb;IAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAAE;AAAzD,wBA4BE"}
@@ -1,13 +1,17 @@
1
- import type { Core, UID } from '@strapi/types';
1
+ import type { Core, UID, Modules } from '@strapi/types';
2
2
  declare const _default: ({ strapi }: {
3
3
  strapi: Core.Strapi;
4
4
  }) => {
5
- findEntityAssigneeId(id: string, model: UID.ContentType): Promise<any>;
5
+ findEntityAssigneeId(id: string | number, model: UID.ContentType): Promise<any>;
6
6
  /**
7
7
  * Update the assignee of an entity
8
8
  */
9
- updateEntityAssignee(documentId: string, locale: string, model: UID.ContentType, assigneeId: string): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
10
- deleteEntityAssignee(documentId: string, locale: string, model: UID.ContentType): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
9
+ updateEntityAssignee(entityToUpdate: {
10
+ id: number | string;
11
+ documentId: string;
12
+ locale: string;
13
+ updatedAt: string;
14
+ }, model: UID.ContentType, assigneeId: string | null): Promise<Modules.Documents.AnyDocument | null>;
11
15
  };
12
16
  export default _default;
13
17
  //# sourceMappingURL=assignees.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assignees.d.ts","sourceRoot":"","sources":["../../../../server/src/services/assignees.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;qCAQnB;IAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAAE;6BAIhB,MAAM,SAAS,IAAI,WAAW;IAU7D;;OAEG;qCAEW,MAAM,UACV,MAAM,SACP,IAAI,WAAW,cACV,MAAM;qCAuBmB,MAAM,UAAU,MAAM,SAAS,IAAI,WAAW;;AA5CzF,wBAwDE"}
1
+ {"version":3,"file":"assignees.d.ts","sourceRoot":"","sources":["../../../../server/src/services/assignees.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;qCAQ5B;IAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAAE;6BAIhB,MAAM,GAAG,MAAM,SAAS,IAAI,WAAW;IAUtE;;OAEG;yCAEe;QACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,SACM,IAAI,WAAW,cACV,MAAM,GAAG,IAAI;;AAzB/B,wBA8DE"}
@@ -1,7 +1,8 @@
1
- import { Modules } from '@strapi/types';
1
+ import type { Modules } from '@strapi/types';
2
2
  declare const _default: () => {
3
3
  assignStageOnCreate: Modules.Documents.Middleware.Middleware;
4
4
  handleStageOnUpdate: Modules.Documents.Middleware.Middleware;
5
+ checkStageBeforePublish: Modules.Documents.Middleware.Middleware;
5
6
  };
6
7
  export default _default;
7
8
  //# sourceMappingURL=document-service-middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-service-middleware.d.ts","sourceRoot":"","sources":["../../../../server/src/services/document-service-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;;;;;AA4HxC,wBAGG"}
1
+ {"version":3,"file":"document-service-middleware.d.ts","sourceRoot":"","sources":["../../../../server/src/services/document-service-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;;;;;;AAuJ7C,wBAIG"}
@@ -29,7 +29,12 @@ declare const _default: {
29
29
  deleteStagePermissions(stages: any): Promise<void>;
30
30
  count({ workflowId }?: any): Promise<number>;
31
31
  replaceStages(srcStages: any, destStages: any, contentTypesToMigrate?: never[]): Promise<any>;
32
- updateEntity(documentId: string, locale: string, model: import("@strapi/types/dist/uid").ContentType, stageId: any): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
32
+ updateEntity(entityToUpdate: {
33
+ id: string | number;
34
+ documentId: string;
35
+ locale: string;
36
+ updatedAt: string;
37
+ }, model: import("@strapi/types/dist/uid").ContentType, stageId: any): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
33
38
  updateEntitiesStage(contentTypeUID: any, { fromStageId, toStageId }: any): Promise<number | number[]>;
34
39
  deleteAllEntitiesStage(contentTypeUID: any): Promise<number>;
35
40
  };
@@ -44,9 +49,13 @@ declare const _default: {
44
49
  assignees: ({ strapi }: {
45
50
  strapi: import("@strapi/types/dist/core").Strapi;
46
51
  }) => {
47
- findEntityAssigneeId(id: string, model: import("@strapi/types/dist/uid").ContentType): Promise<any>;
48
- updateEntityAssignee(documentId: string, locale: string, model: import("@strapi/types/dist/uid").ContentType, assigneeId: string): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
49
- deleteEntityAssignee(documentId: string, locale: string, model: import("@strapi/types/dist/uid").ContentType): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
52
+ findEntityAssigneeId(id: string | number, model: import("@strapi/types/dist/uid").ContentType): Promise<any>;
53
+ updateEntityAssignee(entityToUpdate: {
54
+ id: string | number;
55
+ documentId: string;
56
+ locale: string;
57
+ updatedAt: string;
58
+ }, model: import("@strapi/types/dist/uid").ContentType, assigneeId: string | null): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
50
59
  };
51
60
  validation: ({ strapi }: {
52
61
  strapi: import("@strapi/types/dist/core").Strapi;
@@ -63,14 +72,15 @@ declare const _default: {
63
72
  'document-service-middlewares': () => {
64
73
  assignStageOnCreate: import("@strapi/types/dist/modules/documents/middleware").Middleware;
65
74
  handleStageOnUpdate: import("@strapi/types/dist/modules/documents/middleware").Middleware;
75
+ checkStageBeforePublish: import("@strapi/types/dist/modules/documents/middleware").Middleware;
66
76
  };
67
77
  'workflow-metrics': {
68
78
  sendDidCreateStage: () => Promise<void>;
69
79
  sendDidEditStage: () => Promise<void>;
70
80
  sendDidDeleteStage: () => Promise<void>;
71
81
  sendDidChangeEntryStage: () => Promise<void>;
72
- sendDidCreateWorkflow: () => Promise<void>;
73
- sendDidEditWorkflow: () => Promise<void>;
82
+ sendDidCreateWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
83
+ sendDidEditWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
74
84
  sendDidSendReviewWorkflowPropertiesOnceAWeek: (numberOfActiveWorkflows: number, avgStagesCount: number, maxStagesCount: number, activatedContentTypes: number) => Promise<void>;
75
85
  sendDidEditAssignee: (fromId: any, toId: any) => Promise<void>;
76
86
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,wBASE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,wBASE"}
@@ -3,8 +3,8 @@ export declare const sendDidCreateStage: () => Promise<void>;
3
3
  export declare const sendDidEditStage: () => Promise<void>;
4
4
  export declare const sendDidDeleteStage: () => Promise<void>;
5
5
  export declare const sendDidChangeEntryStage: () => Promise<void>;
6
- export declare const sendDidCreateWorkflow: () => Promise<void>;
7
- export declare const sendDidEditWorkflow: () => Promise<void>;
6
+ export declare const sendDidCreateWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
7
+ export declare const sendDidEditWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
8
8
  export declare const sendDidEditAssignee: (fromId: any, toId: any) => Promise<void>;
9
9
  export declare const sendDidSendReviewWorkflowPropertiesOnceAWeek: (numberOfActiveWorkflows: number, avgStagesCount: number, maxStagesCount: number, activatedContentTypes: number) => Promise<void>;
10
10
  declare const _default: {
@@ -12,8 +12,8 @@ declare const _default: {
12
12
  sendDidEditStage: () => Promise<void>;
13
13
  sendDidDeleteStage: () => Promise<void>;
14
14
  sendDidChangeEntryStage: () => Promise<void>;
15
- sendDidCreateWorkflow: () => Promise<void>;
16
- sendDidEditWorkflow: () => Promise<void>;
15
+ sendDidCreateWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
16
+ sendDidEditWorkflow: (workflowId: string, hasRequiredStageToPublish: boolean) => Promise<void>;
17
17
  sendDidSendReviewWorkflowPropertiesOnceAWeek: (numberOfActiveWorkflows: number, avgStagesCount: number, maxStagesCount: number, activatedContentTypes: number) => Promise<void>;
18
18
  sendDidEditAssignee: (fromId: any, toId: any) => Promise<void>;
19
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/services/metrics/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,eAAO,MAAM,kBAAkB,qBAE9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,qBAE5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,qBAE9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,qBAEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB,qBAEjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,qBAE/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,WAAkB,GAAG,QAAQ,GAAG,kBAE/D,CAAC;AAEF,eAAO,MAAM,4CAA4C,4BAC9B,MAAM,kBACf,MAAM,kBACN,MAAM,yBACC,MAAM,kBAU9B,CAAC;;;;;;;;;;;AAEF,wBASE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/services/metrics/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,eAAO,MAAM,kBAAkB,qBAE9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,qBAE5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,qBAE9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,qBAEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB,eACpB,MAAM,6BACS,OAAO,kBAGnC,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAClB,MAAM,6BACS,OAAO,kBAGnC,CAAC;AAEF,eAAO,MAAM,mBAAmB,WAAkB,GAAG,QAAQ,GAAG,kBAE/D,CAAC;AAEF,eAAO,MAAM,4CAA4C,4BAC9B,MAAM,kBACf,MAAM,kBACN,MAAM,yBACC,MAAM,kBAU9B,CAAC;;;;;;;;;;;AAEF,wBASE"}
@@ -14,7 +14,12 @@ declare const _default: ({ strapi }: {
14
14
  /**
15
15
  * Update the stage of an entity
16
16
  */
17
- updateEntity(documentId: string, locale: string, model: UID.ContentType, stageId: any): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
17
+ updateEntity(entityToUpdate: {
18
+ id: number | string;
19
+ documentId: string;
20
+ locale: string;
21
+ updatedAt: string;
22
+ }, model: UID.ContentType, stageId: any): Promise<import("@strapi/types/dist/modules/documents").AnyDocument | null>;
18
23
  /**
19
24
  * Updates entity stages of a content type:
20
25
  * - If fromStageId is undefined, all entities with an existing stage will be assigned the new stage