@strapi/review-workflows 5.12.1 → 5.12.3

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 (327) hide show
  1. package/dist/admin/{chunks/index-DcEF47R4.mjs → assets/balloon.png.js} +3 -1078
  2. package/dist/admin/assets/balloon.png.js.map +1 -0
  3. package/dist/admin/{chunks/index-CzdEqFOm.js → assets/balloon.png.mjs} +2 -1113
  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/{chunks/purchase-review-workflows-4n0KXAeo.mjs → assets/purchase-page-illustration-light.svg.js} +3 -197
  10. package/dist/admin/assets/purchase-page-illustration-light.svg.js.map +1 -0
  11. package/dist/admin/{chunks/purchase-review-workflows-BDLncDcz.js → assets/purchase-page-illustration-light.svg.mjs} +2 -200
  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 +87 -13
  22. package/dist/admin/index.js.map +1 -1
  23. package/dist/admin/index.mjs +88 -12
  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/{chunks/router-ChVwf8TN.js → router.js} +3 -3
  30. package/dist/admin/router.js.map +1 -0
  31. package/dist/admin/{chunks/router-D-YCUzYy.mjs → router.mjs} +3 -3
  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/{chunks/Layout-C4ri_ldC.js → routes/settings/hooks/useReviewWorkflows.js} +6 -121
  98. package/dist/admin/routes/settings/hooks/useReviewWorkflows.js.map +1 -0
  99. package/dist/admin/{chunks/Layout-CF497D6H.mjs → routes/settings/hooks/useReviewWorkflows.mjs} +4 -115
  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/{chunks/index-CCx4kT-t.js → routes/settings/index.js} +15 -15
  106. package/dist/admin/routes/settings/index.js.map +1 -0
  107. package/dist/admin/{chunks/index-iChY7MsG.mjs → routes/settings/index.mjs} +7 -7
  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/{chunks/en-BNGiWajd.js → translations/en.json.js} +2 -2
  126. package/dist/admin/translations/en.json.js.map +1 -0
  127. package/dist/admin/{chunks/en-BrZXFtVv.mjs → translations/en.json.mjs} +1 -1
  128. package/dist/admin/translations/en.json.mjs.map +1 -0
  129. package/dist/admin/{chunks/uk-CbRUr1I7.js → translations/uk.json.js} +2 -2
  130. package/dist/admin/translations/uk.json.js.map +1 -0
  131. package/dist/admin/{chunks/uk-DLlzEBUF.mjs → translations/uk.json.mjs} +1 -1
  132. package/dist/admin/translations/uk.json.mjs.map +1 -0
  133. package/dist/admin/utils/api.js +22 -0
  134. package/dist/admin/utils/api.js.map +1 -0
  135. package/dist/admin/utils/api.mjs +19 -0
  136. package/dist/admin/utils/api.mjs.map +1 -0
  137. package/dist/admin/utils/cm-hooks.js +23 -0
  138. package/dist/admin/utils/cm-hooks.js.map +1 -0
  139. package/dist/admin/utils/cm-hooks.mjs +21 -0
  140. package/dist/admin/utils/cm-hooks.mjs.map +1 -0
  141. package/dist/admin/utils/colors.js +50 -0
  142. package/dist/admin/utils/colors.js.map +1 -0
  143. package/dist/admin/utils/colors.mjs +47 -0
  144. package/dist/admin/utils/colors.mjs.map +1 -0
  145. package/dist/admin/utils/translations.js +11 -0
  146. package/dist/admin/utils/translations.js.map +1 -0
  147. package/dist/admin/utils/translations.mjs +9 -0
  148. package/dist/admin/utils/translations.mjs.map +1 -0
  149. package/dist/admin/utils/users.js +17 -0
  150. package/dist/admin/utils/users.js.map +1 -0
  151. package/dist/admin/utils/users.mjs +15 -0
  152. package/dist/admin/utils/users.mjs.map +1 -0
  153. package/dist/server/bootstrap.js +54 -0
  154. package/dist/server/bootstrap.js.map +1 -0
  155. package/dist/server/bootstrap.mjs +52 -0
  156. package/dist/server/bootstrap.mjs.map +1 -0
  157. package/dist/server/config/actions.js +47 -0
  158. package/dist/server/config/actions.js.map +1 -0
  159. package/dist/server/config/actions.mjs +45 -0
  160. package/dist/server/config/actions.mjs.map +1 -0
  161. package/dist/server/constants/default-stages.json.js +23 -0
  162. package/dist/server/constants/default-stages.json.js.map +1 -0
  163. package/dist/server/constants/default-stages.json.mjs +21 -0
  164. package/dist/server/constants/default-stages.json.mjs.map +1 -0
  165. package/dist/server/constants/default-workflow.json.js +12 -0
  166. package/dist/server/constants/default-workflow.json.js.map +1 -0
  167. package/dist/server/constants/default-workflow.json.mjs +7 -0
  168. package/dist/server/constants/default-workflow.json.mjs.map +1 -0
  169. package/dist/server/constants/webhook-events.js +12 -0
  170. package/dist/server/constants/webhook-events.js.map +1 -0
  171. package/dist/server/constants/webhook-events.mjs +7 -0
  172. package/dist/server/constants/webhook-events.mjs.map +1 -0
  173. package/dist/server/constants/workflows.js +53 -0
  174. package/dist/server/constants/workflows.js.map +1 -0
  175. package/dist/server/constants/workflows.mjs +42 -0
  176. package/dist/server/constants/workflows.mjs.map +1 -0
  177. package/dist/server/content-types/index.js +12 -0
  178. package/dist/server/content-types/index.js.map +1 -0
  179. package/dist/server/content-types/index.mjs +10 -0
  180. package/dist/server/content-types/index.mjs.map +1 -0
  181. package/dist/server/content-types/workflow/index.js +50 -0
  182. package/dist/server/content-types/workflow/index.js.map +1 -0
  183. package/dist/server/content-types/workflow/index.mjs +48 -0
  184. package/dist/server/content-types/workflow/index.mjs.map +1 -0
  185. package/dist/server/content-types/workflow-stage/index.js +54 -0
  186. package/dist/server/content-types/workflow-stage/index.js.map +1 -0
  187. package/dist/server/content-types/workflow-stage/index.mjs +52 -0
  188. package/dist/server/content-types/workflow-stage/index.mjs.map +1 -0
  189. package/dist/server/controllers/assignees.js +57 -0
  190. package/dist/server/controllers/assignees.js.map +1 -0
  191. package/dist/server/controllers/assignees.mjs +55 -0
  192. package/dist/server/controllers/assignees.mjs.map +1 -0
  193. package/dist/server/controllers/index.js +14 -0
  194. package/dist/server/controllers/index.js.map +1 -0
  195. package/dist/server/controllers/index.mjs +12 -0
  196. package/dist/server/controllers/index.mjs.map +1 -0
  197. package/dist/server/controllers/stages.js +167 -0
  198. package/dist/server/controllers/stages.js.map +1 -0
  199. package/dist/server/controllers/stages.mjs +165 -0
  200. package/dist/server/controllers/stages.mjs.map +1 -0
  201. package/dist/server/controllers/workflows.js +136 -0
  202. package/dist/server/controllers/workflows.js.map +1 -0
  203. package/dist/server/controllers/workflows.mjs +134 -0
  204. package/dist/server/controllers/workflows.mjs.map +1 -0
  205. package/dist/server/destroy.js +6 -0
  206. package/dist/server/destroy.js.map +1 -0
  207. package/dist/server/destroy.mjs +4 -0
  208. package/dist/server/destroy.mjs.map +1 -0
  209. package/dist/server/index.js +12 -2333
  210. package/dist/server/index.js.map +1 -1
  211. package/dist/server/index.mjs +7 -2328
  212. package/dist/server/index.mjs.map +1 -1
  213. package/dist/server/middlewares/review-workflows.js +42 -0
  214. package/dist/server/middlewares/review-workflows.js.map +1 -0
  215. package/dist/server/middlewares/review-workflows.mjs +37 -0
  216. package/dist/server/middlewares/review-workflows.mjs.map +1 -0
  217. package/dist/server/migrations/handle-deleted-ct-in-workflows.js +40 -0
  218. package/dist/server/migrations/handle-deleted-ct-in-workflows.js.map +1 -0
  219. package/dist/server/migrations/handle-deleted-ct-in-workflows.mjs +38 -0
  220. package/dist/server/migrations/handle-deleted-ct-in-workflows.mjs.map +1 -0
  221. package/dist/server/migrations/multiple-workflows.js +41 -0
  222. package/dist/server/migrations/multiple-workflows.js.map +1 -0
  223. package/dist/server/migrations/multiple-workflows.mjs +39 -0
  224. package/dist/server/migrations/multiple-workflows.mjs.map +1 -0
  225. package/dist/server/migrations/set-stages-default-color.js +22 -0
  226. package/dist/server/migrations/set-stages-default-color.js.map +1 -0
  227. package/dist/server/migrations/set-stages-default-color.mjs +20 -0
  228. package/dist/server/migrations/set-stages-default-color.mjs.map +1 -0
  229. package/dist/server/migrations/set-stages-roles.js +56 -0
  230. package/dist/server/migrations/set-stages-roles.js.map +1 -0
  231. package/dist/server/migrations/set-stages-roles.mjs +54 -0
  232. package/dist/server/migrations/set-stages-roles.mjs.map +1 -0
  233. package/dist/server/migrations/set-workflow-default-name.js +29 -0
  234. package/dist/server/migrations/set-workflow-default-name.js.map +1 -0
  235. package/dist/server/migrations/set-workflow-default-name.mjs +27 -0
  236. package/dist/server/migrations/set-workflow-default-name.mjs.map +1 -0
  237. package/dist/server/migrations/shorten-stage-attribute.js +45 -0
  238. package/dist/server/migrations/shorten-stage-attribute.js.map +1 -0
  239. package/dist/server/migrations/shorten-stage-attribute.mjs +43 -0
  240. package/dist/server/migrations/shorten-stage-attribute.mjs.map +1 -0
  241. package/dist/server/register.js +116 -0
  242. package/dist/server/register.js.map +1 -0
  243. package/dist/server/register.mjs +114 -0
  244. package/dist/server/register.mjs.map +1 -0
  245. package/dist/server/routes/index.js +10 -0
  246. package/dist/server/routes/index.js.map +1 -0
  247. package/dist/server/routes/index.mjs +8 -0
  248. package/dist/server/routes/index.mjs.map +1 -0
  249. package/dist/server/routes/review-workflows.js +186 -0
  250. package/dist/server/routes/review-workflows.js.map +1 -0
  251. package/dist/server/routes/review-workflows.mjs +184 -0
  252. package/dist/server/routes/review-workflows.mjs.map +1 -0
  253. package/dist/server/routes/utils.js +11 -0
  254. package/dist/server/routes/utils.js.map +1 -0
  255. package/dist/server/routes/utils.mjs +9 -0
  256. package/dist/server/routes/utils.mjs.map +1 -0
  257. package/dist/server/services/assignees.js +68 -0
  258. package/dist/server/services/assignees.js.map +1 -0
  259. package/dist/server/services/assignees.mjs +66 -0
  260. package/dist/server/services/assignees.mjs.map +1 -0
  261. package/dist/server/services/document-service-middleware.js +130 -0
  262. package/dist/server/services/document-service-middleware.js.map +1 -0
  263. package/dist/server/services/document-service-middleware.mjs +128 -0
  264. package/dist/server/services/document-service-middleware.mjs.map +1 -0
  265. package/dist/server/services/index.js +24 -0
  266. package/dist/server/services/index.js.map +1 -0
  267. package/dist/server/services/index.mjs +22 -0
  268. package/dist/server/services/index.mjs.map +1 -0
  269. package/dist/server/services/metrics/index.js +67 -0
  270. package/dist/server/services/metrics/index.js.map +1 -0
  271. package/dist/server/services/metrics/index.mjs +55 -0
  272. package/dist/server/services/metrics/index.mjs.map +1 -0
  273. package/dist/server/services/metrics/weekly-metrics.js +84 -0
  274. package/dist/server/services/metrics/weekly-metrics.js.map +1 -0
  275. package/dist/server/services/metrics/weekly-metrics.mjs +82 -0
  276. package/dist/server/services/metrics/weekly-metrics.mjs.map +1 -0
  277. package/dist/server/services/stage-permissions.js +59 -0
  278. package/dist/server/services/stage-permissions.js.map +1 -0
  279. package/dist/server/services/stage-permissions.mjs +57 -0
  280. package/dist/server/services/stage-permissions.mjs.map +1 -0
  281. package/dist/server/services/stages.js +353 -0
  282. package/dist/server/services/stages.js.map +1 -0
  283. package/dist/server/services/stages.mjs +351 -0
  284. package/dist/server/services/stages.mjs.map +1 -0
  285. package/dist/server/services/validation.js +69 -0
  286. package/dist/server/services/validation.js.map +1 -0
  287. package/dist/server/services/validation.mjs +67 -0
  288. package/dist/server/services/validation.mjs.map +1 -0
  289. package/dist/server/services/workflow-content-types.js +90 -0
  290. package/dist/server/services/workflow-content-types.js.map +1 -0
  291. package/dist/server/services/workflow-content-types.mjs +88 -0
  292. package/dist/server/services/workflow-content-types.mjs.map +1 -0
  293. package/dist/server/services/workflows.js +279 -0
  294. package/dist/server/services/workflows.js.map +1 -0
  295. package/dist/server/services/workflows.mjs +277 -0
  296. package/dist/server/services/workflows.mjs.map +1 -0
  297. package/dist/server/utils/index.js +16 -0
  298. package/dist/server/utils/index.js.map +1 -0
  299. package/dist/server/utils/index.mjs +13 -0
  300. package/dist/server/utils/index.mjs.map +1 -0
  301. package/dist/server/utils/review-workflows.js +36 -0
  302. package/dist/server/utils/review-workflows.js.map +1 -0
  303. package/dist/server/utils/review-workflows.mjs +30 -0
  304. package/dist/server/utils/review-workflows.mjs.map +1 -0
  305. package/dist/server/validation/review-workflows.js +71 -0
  306. package/dist/server/validation/review-workflows.js.map +1 -0
  307. package/dist/server/validation/review-workflows.mjs +65 -0
  308. package/dist/server/validation/review-workflows.mjs.map +1 -0
  309. package/package.json +5 -5
  310. package/dist/admin/chunks/Layout-C4ri_ldC.js.map +0 -1
  311. package/dist/admin/chunks/Layout-CF497D6H.mjs.map +0 -1
  312. package/dist/admin/chunks/en-BNGiWajd.js.map +0 -1
  313. package/dist/admin/chunks/en-BrZXFtVv.mjs.map +0 -1
  314. package/dist/admin/chunks/id-DVOtqJqn.js +0 -1442
  315. package/dist/admin/chunks/id-DVOtqJqn.js.map +0 -1
  316. package/dist/admin/chunks/id-QD0V9dME.mjs +0 -1420
  317. package/dist/admin/chunks/id-QD0V9dME.mjs.map +0 -1
  318. package/dist/admin/chunks/index-CCx4kT-t.js.map +0 -1
  319. package/dist/admin/chunks/index-CzdEqFOm.js.map +0 -1
  320. package/dist/admin/chunks/index-DcEF47R4.mjs.map +0 -1
  321. package/dist/admin/chunks/index-iChY7MsG.mjs.map +0 -1
  322. package/dist/admin/chunks/purchase-review-workflows-4n0KXAeo.mjs.map +0 -1
  323. package/dist/admin/chunks/purchase-review-workflows-BDLncDcz.js.map +0 -1
  324. package/dist/admin/chunks/router-ChVwf8TN.js.map +0 -1
  325. package/dist/admin/chunks/router-D-YCUzYy.mjs.map +0 -1
  326. package/dist/admin/chunks/uk-CbRUr1I7.js.map +0 -1
  327. package/dist/admin/chunks/uk-DLlzEBUF.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.mjs","sources":["../../../admin/src/services/settings.ts"],"sourcesContent":["import { reviewWorkflowsApi } from './api';\n\nimport type { Create, Update, Delete, GetAll } from '../../../shared/contracts/review-workflows';\n\nconst settingsApi = reviewWorkflowsApi.injectEndpoints({\n endpoints: (builder) => ({\n getWorkflows: builder.query<\n {\n workflows: GetAll.Response['data'];\n meta?: GetAll.Response['meta'];\n },\n GetWorkflowsParams | void\n >({\n query: (args) => {\n return {\n url: '/review-workflows/workflows',\n method: 'GET',\n config: {\n params: args ?? {},\n },\n };\n },\n transformResponse: (res: GetAll.Response) => {\n return {\n workflows: res.data,\n meta: 'meta' in res ? res.meta : undefined,\n };\n },\n providesTags: (res) => {\n return [\n ...(res?.workflows.map(({ id }) => ({ type: 'ReviewWorkflow' as const, id })) ?? []),\n { type: 'ReviewWorkflow' as const, id: 'LIST' },\n ];\n },\n }),\n createWorkflow: builder.mutation<Create.Response['data'], Create.Request['body']>({\n query: (data) => ({\n url: '/review-workflows/workflows',\n method: 'POST',\n data,\n }),\n transformResponse: (res: Create.Response) => res.data,\n invalidatesTags(res) {\n return [\n { type: 'ReviewWorkflow' as const, id: 'LIST' },\n 'ReviewWorkflowStages',\n { type: 'Document', id: `ALL_LIST` },\n { type: 'ContentTypeSettings', id: 'LIST' },\n ...(res?.contentTypes.map((uid) => ({\n type: 'Document' as const,\n id: `${uid}_ALL_ITEMS`,\n })) ?? []),\n ];\n },\n }),\n updateWorkflow: builder.mutation<\n Update.Response['data'],\n Update.Request['body'] & Update.Params\n >({\n query: ({ id, ...data }) => ({\n url: `/review-workflows/workflows/${id}`,\n method: 'PUT',\n data,\n }),\n transformResponse: (res: Update.Response) => res.data,\n invalidatesTags: (res, _err, arg) => [\n { type: 'ReviewWorkflow' as const, id: arg.id },\n 'ReviewWorkflowStages',\n { type: 'Document', id: 'ALL_LIST' },\n { type: 'ContentTypeSettings', id: 'LIST' },\n ...(res?.contentTypes.map((uid) => ({\n type: 'Document' as const,\n id: `${uid}_ALL_ITEMS`,\n })) ?? []),\n ],\n }),\n deleteWorkflow: builder.mutation<Delete.Response['data'], Delete.Params>({\n query: ({ id }) => ({\n url: `/review-workflows/workflows/${id}`,\n method: 'DELETE',\n }),\n transformResponse: (res: Delete.Response) => res.data,\n invalidatesTags: (res, _err, arg) => [\n { type: 'ReviewWorkflow' as const, id: arg.id },\n 'ReviewWorkflowStages',\n { type: 'Document', id: `ALL_LIST` },\n { type: 'ContentTypeSettings', id: 'LIST' },\n ],\n }),\n }),\n overrideExisting: false,\n});\n\ntype GetWorkflowsParams = GetAll.Request['query'];\n\nconst {\n useGetWorkflowsQuery,\n useCreateWorkflowMutation,\n useDeleteWorkflowMutation,\n useUpdateWorkflowMutation,\n} = settingsApi;\n\nexport {\n useGetWorkflowsQuery,\n useCreateWorkflowMutation,\n useDeleteWorkflowMutation,\n useUpdateWorkflowMutation,\n type GetWorkflowsParams,\n};\n"],"names":["settingsApi","reviewWorkflowsApi","injectEndpoints","endpoints","builder","getWorkflows","query","args","url","method","config","params","transformResponse","res","workflows","data","meta","undefined","providesTags","map","id","type","createWorkflow","mutation","invalidatesTags","contentTypes","uid","updateWorkflow","_err","arg","deleteWorkflow","overrideExisting","useGetWorkflowsQuery","useCreateWorkflowMutation","useDeleteWorkflowMutation","useUpdateWorkflowMutation"],"mappings":";;AAIA,MAAMA,WAAAA,GAAcC,kBAAmBC,CAAAA,eAAe,CAAC;IACrDC,SAAW,EAAA,CAACC,WAAa;YACvBC,YAAcD,EAAAA,OAAAA,CAAQE,KAAK,CAMzB;AACAA,gBAAAA,KAAAA,EAAO,CAACC,IAAAA,GAAAA;oBACN,OAAO;wBACLC,GAAK,EAAA,6BAAA;wBACLC,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNC,4BAAAA,MAAAA,EAAQJ,QAAQ;AAClB;AACF,qBAAA;AACF,iBAAA;AACAK,gBAAAA,iBAAAA,EAAmB,CAACC,GAAAA,GAAAA;oBAClB,OAAO;AACLC,wBAAAA,SAAAA,EAAWD,IAAIE,IAAI;AACnBC,wBAAAA,IAAAA,EAAM,MAAUH,IAAAA,GAAAA,GAAMA,GAAIG,CAAAA,IAAI,GAAGC;AACnC,qBAAA;AACF,iBAAA;AACAC,gBAAAA,YAAAA,EAAc,CAACL,GAAAA,GAAAA;oBACb,OAAO;AACDA,wBAAAA,GAAAA,GAAAA,EAAKC,UAAUK,GAAI,CAAA,CAAC,EAAEC,EAAE,EAAE,IAAM;gCAAEC,IAAM,EAAA,gBAAA;AAA2BD,gCAAAA;AAAG,6BAAA,MAAO,EAAE;AACnF,wBAAA;4BAAEC,IAAM,EAAA,gBAAA;4BAA2BD,EAAI,EAAA;AAAO;AAC/C,qBAAA;AACH;AACF,aAAA,CAAA;YACAE,cAAgBlB,EAAAA,OAAAA,CAAQmB,QAAQ,CAAkD;gBAChFjB,KAAO,EAAA,CAACS,QAAU;wBAChBP,GAAK,EAAA,6BAAA;wBACLC,MAAQ,EAAA,MAAA;AACRM,wBAAAA;qBACF,CAAA;gBACAH,iBAAmB,EAAA,CAACC,GAAyBA,GAAAA,GAAAA,CAAIE,IAAI;AACrDS,gBAAAA,eAAAA,CAAAA,CAAgBX,GAAG,EAAA;oBACjB,OAAO;AACL,wBAAA;4BAAEQ,IAAM,EAAA,gBAAA;4BAA2BD,EAAI,EAAA;AAAO,yBAAA;AAC9C,wBAAA,sBAAA;AACA,wBAAA;4BAAEC,IAAM,EAAA,UAAA;4BAAYD,EAAI,EAAA,CAAC,QAAQ;AAAE,yBAAA;AACnC,wBAAA;4BAAEC,IAAM,EAAA,qBAAA;4BAAuBD,EAAI,EAAA;AAAO,yBAAA;AACtCP,wBAAAA,GAAAA,GAAAA,EAAKY,YAAaN,CAAAA,GAAAA,CAAI,CAACO,GAAAA,IAAS;gCAClCL,IAAM,EAAA,UAAA;AACND,gCAAAA,EAAAA,EAAI,CAAC,EAAEM,GAAI,CAAA,UAAU;AACvB,6BAAA,MAAO;AACR,qBAAA;AACH;AACF,aAAA,CAAA;YACAC,cAAgBvB,EAAAA,OAAAA,CAAQmB,QAAQ,CAG9B;AACAjB,gBAAAA,KAAAA,EAAO,CAAC,EAAEc,EAAE,EAAE,GAAGL,IAAAA,EAAM,IAAM;AAC3BP,wBAAAA,GAAAA,EAAK,CAAC,4BAA4B,EAAEY,EAAAA,CAAG,CAAC;wBACxCX,MAAQ,EAAA,KAAA;AACRM,wBAAAA;qBACF,CAAA;gBACAH,iBAAmB,EAAA,CAACC,GAAyBA,GAAAA,GAAAA,CAAIE,IAAI;gBACrDS,eAAiB,EAAA,CAACX,GAAKe,EAAAA,IAAAA,EAAMC,GAAQ,GAAA;AACnC,wBAAA;4BAAER,IAAM,EAAA,gBAAA;AAA2BD,4BAAAA,EAAAA,EAAIS,IAAIT;AAAG,yBAAA;AAC9C,wBAAA,sBAAA;AACA,wBAAA;4BAAEC,IAAM,EAAA,UAAA;4BAAYD,EAAI,EAAA;AAAW,yBAAA;AACnC,wBAAA;4BAAEC,IAAM,EAAA,qBAAA;4BAAuBD,EAAI,EAAA;AAAO,yBAAA;AACtCP,wBAAAA,GAAAA,GAAAA,EAAKY,YAAaN,CAAAA,GAAAA,CAAI,CAACO,GAAAA,IAAS;gCAClCL,IAAM,EAAA,UAAA;AACND,gCAAAA,EAAAA,EAAI,CAAC,EAAEM,GAAI,CAAA,UAAU;AACvB,6BAAA,MAAO;AACR;AACH,aAAA,CAAA;YACAI,cAAgB1B,EAAAA,OAAAA,CAAQmB,QAAQ,CAAyC;AACvEjB,gBAAAA,KAAAA,EAAO,CAAC,EAAEc,EAAE,EAAE,IAAM;AAClBZ,wBAAAA,GAAAA,EAAK,CAAC,4BAA4B,EAAEY,EAAAA,CAAG,CAAC;wBACxCX,MAAQ,EAAA;qBACV,CAAA;gBACAG,iBAAmB,EAAA,CAACC,GAAyBA,GAAAA,GAAAA,CAAIE,IAAI;gBACrDS,eAAiB,EAAA,CAACX,GAAKe,EAAAA,IAAAA,EAAMC,GAAQ,GAAA;AACnC,wBAAA;4BAAER,IAAM,EAAA,gBAAA;AAA2BD,4BAAAA,EAAAA,EAAIS,IAAIT;AAAG,yBAAA;AAC9C,wBAAA,sBAAA;AACA,wBAAA;4BAAEC,IAAM,EAAA,UAAA;4BAAYD,EAAI,EAAA,CAAC,QAAQ;AAAE,yBAAA;AACnC,wBAAA;4BAAEC,IAAM,EAAA,qBAAA;4BAAuBD,EAAI,EAAA;AAAO;AAC3C;AACH,aAAA;SACF,CAAA;IACAW,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAIM,MAAA,EACJC,oBAAoB,EACpBC,yBAAyB,EACzBC,yBAAyB,EACzBC,yBAAyB,EAC1B,GAAGnC;;;;"}
@@ -16,5 +16,5 @@ var en = {
16
16
  "settings.page.purchase.perks3": "Support for webhooks"
17
17
  };
18
18
 
19
- exports.default = en;
20
- //# sourceMappingURL=en-BNGiWajd.js.map
19
+ module.exports = en;
20
+ //# sourceMappingURL=en.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -15,4 +15,4 @@ var en = {
15
15
  };
16
16
 
17
17
  export { en as default };
18
- //# sourceMappingURL=en-BrZXFtVv.mjs.map
18
+ //# sourceMappingURL=en.json.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
@@ -12,5 +12,5 @@ var uk = {
12
12
  "settings.review-workflows.workflow.stageRequiredToPublish.hint": "Запобігає публікації записів, якщо вони не знаходяться на необхідному етапі."
13
13
  };
14
14
 
15
- exports.default = uk;
16
- //# sourceMappingURL=uk-CbRUr1I7.js.map
15
+ module.exports = uk;
16
+ //# sourceMappingURL=uk.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uk.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -11,4 +11,4 @@ var uk = {
11
11
  };
12
12
 
13
13
  export { uk as default };
14
- //# sourceMappingURL=uk-DLlzEBUF.mjs.map
14
+ //# sourceMappingURL=uk.json.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uk.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ const isBaseQueryError = (error)=>{
4
+ return error.name !== undefined;
5
+ };
6
+ /**
7
+ * @description
8
+ * Creates a valid query params object for get requests
9
+ * ie. plugins[18n][locale]=en becomes locale=en
10
+ */ const buildValidParams = (query)=>{
11
+ if (!query) return query;
12
+ // Extract pluginOptions from the query, they shouldn't be part of the URL
13
+ const { plugins: _, ...validQueryParams } = {
14
+ ...query,
15
+ ...Object.values(query?.plugins ?? {}).reduce((acc, current)=>Object.assign(acc, current), {})
16
+ };
17
+ return validQueryParams;
18
+ };
19
+
20
+ exports.buildValidParams = buildValidParams;
21
+ exports.isBaseQueryError = isBaseQueryError;
22
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sources":["../../../admin/src/utils/api.ts"],"sourcesContent":["import { SerializedError } from '@reduxjs/toolkit';\nimport { type UnknownApiError, type ApiError } from '@strapi/admin/strapi-admin';\n\nexport type BaseQueryError = ApiError | UnknownApiError | SerializedError;\n\nconst isBaseQueryError = (error: BaseQueryError): error is ApiError | UnknownApiError => {\n return error.name !== undefined;\n};\n\ninterface Query {\n plugins?: Record<string, unknown>;\n _q?: string;\n [key: string]: any;\n}\n\n/**\n * This type extracts the plugin options from the query\n * and appends them to the root of the query\n */\ntype TransformedQuery<TQuery extends Query> = Omit<TQuery, 'plugins'> & {\n [key: string]: string;\n};\n\n/**\n * @description\n * Creates a valid query params object for get requests\n * ie. plugins[18n][locale]=en becomes locale=en\n */\nconst buildValidParams = <TQuery extends Query>(query: TQuery): TransformedQuery<TQuery> => {\n if (!query) return query;\n\n // Extract pluginOptions from the query, they shouldn't be part of the URL\n const { plugins: _, ...validQueryParams } = {\n ...query,\n ...Object.values(query?.plugins ?? {}).reduce<Record<string, string>>(\n (acc, current) => Object.assign(acc, current),\n {}\n ),\n };\n\n return validQueryParams;\n};\n\nexport { isBaseQueryError, buildValidParams };\n"],"names":["isBaseQueryError","error","name","undefined","buildValidParams","query","plugins","_","validQueryParams","Object","values","reduce","acc","current","assign"],"mappings":";;AAKA,MAAMA,mBAAmB,CAACC,KAAAA,GAAAA;IACxB,OAAOA,KAAAA,CAAMC,IAAI,KAAKC,SAAAA;AACxB;AAgBA;;;;IAKA,MAAMC,mBAAmB,CAAuBC,KAAAA,GAAAA;IAC9C,IAAI,CAACA,OAAO,OAAOA,KAAAA;;AAGnB,IAAA,MAAM,EAAEC,OAASC,EAAAA,CAAC,EAAE,GAAGC,kBAAkB,GAAG;AAC1C,QAAA,GAAGH,KAAK;AACR,QAAA,GAAGI,OAAOC,MAAM,CAACL,OAAOC,OAAW,IAAA,IAAIK,MAAM,CAC3C,CAACC,GAAAA,EAAKC,UAAYJ,MAAOK,CAAAA,MAAM,CAACF,GAAKC,EAAAA,OAAAA,CAAAA,EACrC,EACD;AACH,KAAA;IAEA,OAAOL,gBAAAA;AACT;;;;;"}
@@ -0,0 +1,19 @@
1
+ const isBaseQueryError = (error)=>{
2
+ return error.name !== undefined;
3
+ };
4
+ /**
5
+ * @description
6
+ * Creates a valid query params object for get requests
7
+ * ie. plugins[18n][locale]=en becomes locale=en
8
+ */ const buildValidParams = (query)=>{
9
+ if (!query) return query;
10
+ // Extract pluginOptions from the query, they shouldn't be part of the URL
11
+ const { plugins: _, ...validQueryParams } = {
12
+ ...query,
13
+ ...Object.values(query?.plugins ?? {}).reduce((acc, current)=>Object.assign(acc, current), {})
14
+ };
15
+ return validQueryParams;
16
+ };
17
+
18
+ export { buildValidParams, isBaseQueryError };
19
+ //# sourceMappingURL=api.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.mjs","sources":["../../../admin/src/utils/api.ts"],"sourcesContent":["import { SerializedError } from '@reduxjs/toolkit';\nimport { type UnknownApiError, type ApiError } from '@strapi/admin/strapi-admin';\n\nexport type BaseQueryError = ApiError | UnknownApiError | SerializedError;\n\nconst isBaseQueryError = (error: BaseQueryError): error is ApiError | UnknownApiError => {\n return error.name !== undefined;\n};\n\ninterface Query {\n plugins?: Record<string, unknown>;\n _q?: string;\n [key: string]: any;\n}\n\n/**\n * This type extracts the plugin options from the query\n * and appends them to the root of the query\n */\ntype TransformedQuery<TQuery extends Query> = Omit<TQuery, 'plugins'> & {\n [key: string]: string;\n};\n\n/**\n * @description\n * Creates a valid query params object for get requests\n * ie. plugins[18n][locale]=en becomes locale=en\n */\nconst buildValidParams = <TQuery extends Query>(query: TQuery): TransformedQuery<TQuery> => {\n if (!query) return query;\n\n // Extract pluginOptions from the query, they shouldn't be part of the URL\n const { plugins: _, ...validQueryParams } = {\n ...query,\n ...Object.values(query?.plugins ?? {}).reduce<Record<string, string>>(\n (acc, current) => Object.assign(acc, current),\n {}\n ),\n };\n\n return validQueryParams;\n};\n\nexport { isBaseQueryError, buildValidParams };\n"],"names":["isBaseQueryError","error","name","undefined","buildValidParams","query","plugins","_","validQueryParams","Object","values","reduce","acc","current","assign"],"mappings":"AAKA,MAAMA,mBAAmB,CAACC,KAAAA,GAAAA;IACxB,OAAOA,KAAAA,CAAMC,IAAI,KAAKC,SAAAA;AACxB;AAgBA;;;;IAKA,MAAMC,mBAAmB,CAAuBC,KAAAA,GAAAA;IAC9C,IAAI,CAACA,OAAO,OAAOA,KAAAA;;AAGnB,IAAA,MAAM,EAAEC,OAASC,EAAAA,CAAC,EAAE,GAAGC,kBAAkB,GAAG;AAC1C,QAAA,GAAGH,KAAK;AACR,QAAA,GAAGI,OAAOC,MAAM,CAACL,OAAOC,OAAW,IAAA,IAAIK,MAAM,CAC3C,CAACC,GAAAA,EAAKC,UAAYJ,MAAOK,CAAAA,MAAM,CAACF,GAAKC,EAAAA,OAAAA,CAAAA,EACrC,EACD;AACH,KAAA;IAEA,OAAOL,gBAAAA;AACT;;;;"}
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ var constants = require('../routes/content-manager/model/constants.js');
4
+
5
+ const addColumnToTableHook = ({ displayedHeaders, layout })=>{
6
+ const { options } = layout;
7
+ if (!options.reviewWorkflows) {
8
+ return {
9
+ displayedHeaders,
10
+ layout
11
+ };
12
+ }
13
+ return {
14
+ displayedHeaders: [
15
+ ...displayedHeaders,
16
+ ...constants.REVIEW_WORKFLOW_COLUMNS
17
+ ],
18
+ layout
19
+ };
20
+ };
21
+
22
+ exports.addColumnToTableHook = addColumnToTableHook;
23
+ //# sourceMappingURL=cm-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cm-hooks.js","sources":["../../../admin/src/utils/cm-hooks.ts"],"sourcesContent":["import { REVIEW_WORKFLOW_COLUMNS } from '../routes/content-manager/model/constants';\n\nimport type { ListFieldLayout, ListLayout } from '@strapi/content-manager/strapi-admin';\n\n/* -------------------------------------------------------------------------------------------------\n * addColumnToTableHook\n * -----------------------------------------------------------------------------------------------*/\ninterface AddColumnToTableHookArgs {\n layout: ListLayout;\n displayedHeaders: ListFieldLayout[];\n}\n\nconst addColumnToTableHook = ({ displayedHeaders, layout }: AddColumnToTableHookArgs) => {\n const { options } = layout;\n\n if (!options.reviewWorkflows) {\n return { displayedHeaders, layout };\n }\n\n return {\n displayedHeaders: [...displayedHeaders, ...REVIEW_WORKFLOW_COLUMNS],\n layout,\n };\n};\n\nexport { addColumnToTableHook };\n"],"names":["addColumnToTableHook","displayedHeaders","layout","options","reviewWorkflows","REVIEW_WORKFLOW_COLUMNS"],"mappings":";;;;AAYA,MAAMA,uBAAuB,CAAC,EAAEC,gBAAgB,EAAEC,MAAM,EAA4B,GAAA;IAClF,MAAM,EAAEC,OAAO,EAAE,GAAGD,MAAAA;IAEpB,IAAI,CAACC,OAAQC,CAAAA,eAAe,EAAE;QAC5B,OAAO;AAAEH,YAAAA,gBAAAA;AAAkBC,YAAAA;AAAO,SAAA;AACpC;IAEA,OAAO;QACLD,gBAAkB,EAAA;AAAIA,YAAAA,GAAAA,gBAAAA;AAAqBI,YAAAA,GAAAA;AAAwB,SAAA;AACnEH,QAAAA;AACF,KAAA;AACF;;;;"}
@@ -0,0 +1,21 @@
1
+ import { REVIEW_WORKFLOW_COLUMNS } from '../routes/content-manager/model/constants.mjs';
2
+
3
+ const addColumnToTableHook = ({ displayedHeaders, layout })=>{
4
+ const { options } = layout;
5
+ if (!options.reviewWorkflows) {
6
+ return {
7
+ displayedHeaders,
8
+ layout
9
+ };
10
+ }
11
+ return {
12
+ displayedHeaders: [
13
+ ...displayedHeaders,
14
+ ...REVIEW_WORKFLOW_COLUMNS
15
+ ],
16
+ layout
17
+ };
18
+ };
19
+
20
+ export { addColumnToTableHook };
21
+ //# sourceMappingURL=cm-hooks.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cm-hooks.mjs","sources":["../../../admin/src/utils/cm-hooks.ts"],"sourcesContent":["import { REVIEW_WORKFLOW_COLUMNS } from '../routes/content-manager/model/constants';\n\nimport type { ListFieldLayout, ListLayout } from '@strapi/content-manager/strapi-admin';\n\n/* -------------------------------------------------------------------------------------------------\n * addColumnToTableHook\n * -----------------------------------------------------------------------------------------------*/\ninterface AddColumnToTableHookArgs {\n layout: ListLayout;\n displayedHeaders: ListFieldLayout[];\n}\n\nconst addColumnToTableHook = ({ displayedHeaders, layout }: AddColumnToTableHookArgs) => {\n const { options } = layout;\n\n if (!options.reviewWorkflows) {\n return { displayedHeaders, layout };\n }\n\n return {\n displayedHeaders: [...displayedHeaders, ...REVIEW_WORKFLOW_COLUMNS],\n layout,\n };\n};\n\nexport { addColumnToTableHook };\n"],"names":["addColumnToTableHook","displayedHeaders","layout","options","reviewWorkflows","REVIEW_WORKFLOW_COLUMNS"],"mappings":";;AAYA,MAAMA,uBAAuB,CAAC,EAAEC,gBAAgB,EAAEC,MAAM,EAA4B,GAAA;IAClF,MAAM,EAAEC,OAAO,EAAE,GAAGD,MAAAA;IAEpB,IAAI,CAACC,OAAQC,CAAAA,eAAe,EAAE;QAC5B,OAAO;AAAEH,YAAAA,gBAAAA;AAAkBC,YAAAA;AAAO,SAAA;AACpC;IAEA,OAAO;QACLD,gBAAkB,EAAA;AAAIA,YAAAA,GAAAA,gBAAAA;AAAqBI,YAAAA,GAAAA;AAAwB,SAAA;AACnEH,QAAAA;AACF,KAAA;AACF;;;;"}
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ var designSystem = require('@strapi/design-system');
4
+
5
+ const STAGE_COLORS = {
6
+ primary600: 'Blue',
7
+ primary200: 'Lilac',
8
+ alternative600: 'Violet',
9
+ alternative200: 'Lavender',
10
+ success600: 'Green',
11
+ success200: 'Pale Green',
12
+ danger500: 'Cherry',
13
+ danger200: 'Pink',
14
+ warning600: 'Orange',
15
+ warning200: 'Yellow',
16
+ secondary600: 'Teal',
17
+ secondary200: 'Baby Blue',
18
+ neutral400: 'Gray',
19
+ neutral0: 'White'
20
+ };
21
+ const getStageColorByHex = (hex)=>{
22
+ if (!hex) {
23
+ return null;
24
+ }
25
+ // there are multiple colors with the same hex code in the design tokens. In order to find
26
+ // the correct one we have to find all matching colors and then check, which ones are usable
27
+ // for stages.
28
+ const themeColors = Object.entries(designSystem.lightTheme.colors).filter(([, value])=>value.toUpperCase() === hex.toUpperCase());
29
+ const themeColorName = themeColors.reduce((acc, [name])=>{
30
+ if (STAGE_COLORS?.[name]) {
31
+ acc = name;
32
+ }
33
+ return acc;
34
+ }, null);
35
+ if (!themeColorName) {
36
+ return null;
37
+ }
38
+ return {
39
+ themeColorName,
40
+ name: STAGE_COLORS[themeColorName]
41
+ };
42
+ };
43
+ const AVAILABLE_COLORS = Object.entries(STAGE_COLORS).map(([themeColorName, name])=>({
44
+ hex: designSystem.lightTheme.colors[themeColorName].toUpperCase(),
45
+ name
46
+ }));
47
+
48
+ exports.AVAILABLE_COLORS = AVAILABLE_COLORS;
49
+ exports.getStageColorByHex = getStageColorByHex;
50
+ //# sourceMappingURL=colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.js","sources":["../../../admin/src/utils/colors.ts"],"sourcesContent":["import { lightTheme } from '@strapi/design-system';\nimport { DefaultTheme } from 'styled-components';\n\nconst STAGE_COLORS: Record<string, string> = {\n primary600: 'Blue',\n primary200: 'Lilac',\n alternative600: 'Violet',\n alternative200: 'Lavender',\n success600: 'Green',\n success200: 'Pale Green',\n danger500: 'Cherry',\n danger200: 'Pink',\n warning600: 'Orange',\n warning200: 'Yellow',\n secondary600: 'Teal',\n secondary200: 'Baby Blue',\n neutral400: 'Gray',\n neutral0: 'White',\n};\n\nconst getStageColorByHex = (hex?: string) => {\n if (!hex) {\n return null;\n }\n\n // there are multiple colors with the same hex code in the design tokens. In order to find\n // the correct one we have to find all matching colors and then check, which ones are usable\n // for stages.\n const themeColors: [string, (keyof typeof STAGE_COLORS)[]][] = Object.entries(\n lightTheme.colors\n ).filter(([, value]) => value.toUpperCase() === hex.toUpperCase());\n\n const themeColorName = themeColors.reduce(\n (acc, [name]) => {\n if (STAGE_COLORS?.[name]) {\n acc = name;\n }\n\n return acc;\n },\n null as keyof typeof STAGE_COLORS | null\n );\n\n if (!themeColorName) {\n return null;\n }\n\n return {\n themeColorName,\n name: STAGE_COLORS[themeColorName],\n };\n};\n\nconst AVAILABLE_COLORS = Object.entries(STAGE_COLORS).map(([themeColorName, name]) => ({\n hex: lightTheme.colors[themeColorName as keyof DefaultTheme['colors']].toUpperCase(),\n name,\n}));\n\nexport { AVAILABLE_COLORS, getStageColorByHex };\n"],"names":["STAGE_COLORS","primary600","primary200","alternative600","alternative200","success600","success200","danger500","danger200","warning600","warning200","secondary600","secondary200","neutral400","neutral0","getStageColorByHex","hex","themeColors","Object","entries","lightTheme","colors","filter","value","toUpperCase","themeColorName","reduce","acc","name","AVAILABLE_COLORS","map"],"mappings":";;;;AAGA,MAAMA,YAAuC,GAAA;IAC3CC,UAAY,EAAA,MAAA;IACZC,UAAY,EAAA,OAAA;IACZC,cAAgB,EAAA,QAAA;IAChBC,cAAgB,EAAA,UAAA;IAChBC,UAAY,EAAA,OAAA;IACZC,UAAY,EAAA,YAAA;IACZC,SAAW,EAAA,QAAA;IACXC,SAAW,EAAA,MAAA;IACXC,UAAY,EAAA,QAAA;IACZC,UAAY,EAAA,QAAA;IACZC,YAAc,EAAA,MAAA;IACdC,YAAc,EAAA,WAAA;IACdC,UAAY,EAAA,MAAA;IACZC,QAAU,EAAA;AACZ,CAAA;AAEA,MAAMC,qBAAqB,CAACC,GAAAA,GAAAA;AAC1B,IAAA,IAAI,CAACA,GAAK,EAAA;QACR,OAAO,IAAA;AACT;;;;AAKA,IAAA,MAAMC,cAAyDC,MAAOC,CAAAA,OAAO,CAC3EC,uBAAAA,CAAWC,MAAM,CACjBC,CAAAA,MAAM,CAAC,CAAC,GAAGC,KAAM,CAAA,GAAKA,MAAMC,WAAW,EAAA,KAAOR,IAAIQ,WAAW,EAAA,CAAA;AAE/D,IAAA,MAAMC,iBAAiBR,WAAYS,CAAAA,MAAM,CACvC,CAACC,GAAAA,EAAK,CAACC,IAAK,CAAA,GAAA;QACV,IAAI5B,YAAAA,GAAe4B,IAAAA,CAAK,EAAE;YACxBD,GAAMC,GAAAA,IAAAA;AACR;QAEA,OAAOD,GAAAA;KAET,EAAA,IAAA,CAAA;AAGF,IAAA,IAAI,CAACF,cAAgB,EAAA;QACnB,OAAO,IAAA;AACT;IAEA,OAAO;AACLA,QAAAA,cAAAA;QACAG,IAAM5B,EAAAA,YAAY,CAACyB,cAAe;AACpC,KAAA;AACF;AAEA,MAAMI,gBAAmBX,GAAAA,MAAAA,CAAOC,OAAO,CAACnB,YAAc8B,CAAAA,CAAAA,GAAG,CAAC,CAAC,CAACL,cAAAA,EAAgBG,IAAK,CAAA,IAAM;AACrFZ,QAAAA,GAAAA,EAAKI,uBAAWC,CAAAA,MAAM,CAACI,cAAAA,CAA+C,CAACD,WAAW,EAAA;AAClFI,QAAAA;KACF,CAAA;;;;;"}
@@ -0,0 +1,47 @@
1
+ import { lightTheme } from '@strapi/design-system';
2
+
3
+ const STAGE_COLORS = {
4
+ primary600: 'Blue',
5
+ primary200: 'Lilac',
6
+ alternative600: 'Violet',
7
+ alternative200: 'Lavender',
8
+ success600: 'Green',
9
+ success200: 'Pale Green',
10
+ danger500: 'Cherry',
11
+ danger200: 'Pink',
12
+ warning600: 'Orange',
13
+ warning200: 'Yellow',
14
+ secondary600: 'Teal',
15
+ secondary200: 'Baby Blue',
16
+ neutral400: 'Gray',
17
+ neutral0: 'White'
18
+ };
19
+ const getStageColorByHex = (hex)=>{
20
+ if (!hex) {
21
+ return null;
22
+ }
23
+ // there are multiple colors with the same hex code in the design tokens. In order to find
24
+ // the correct one we have to find all matching colors and then check, which ones are usable
25
+ // for stages.
26
+ const themeColors = Object.entries(lightTheme.colors).filter(([, value])=>value.toUpperCase() === hex.toUpperCase());
27
+ const themeColorName = themeColors.reduce((acc, [name])=>{
28
+ if (STAGE_COLORS?.[name]) {
29
+ acc = name;
30
+ }
31
+ return acc;
32
+ }, null);
33
+ if (!themeColorName) {
34
+ return null;
35
+ }
36
+ return {
37
+ themeColorName,
38
+ name: STAGE_COLORS[themeColorName]
39
+ };
40
+ };
41
+ const AVAILABLE_COLORS = Object.entries(STAGE_COLORS).map(([themeColorName, name])=>({
42
+ hex: lightTheme.colors[themeColorName].toUpperCase(),
43
+ name
44
+ }));
45
+
46
+ export { AVAILABLE_COLORS, getStageColorByHex };
47
+ //# sourceMappingURL=colors.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.mjs","sources":["../../../admin/src/utils/colors.ts"],"sourcesContent":["import { lightTheme } from '@strapi/design-system';\nimport { DefaultTheme } from 'styled-components';\n\nconst STAGE_COLORS: Record<string, string> = {\n primary600: 'Blue',\n primary200: 'Lilac',\n alternative600: 'Violet',\n alternative200: 'Lavender',\n success600: 'Green',\n success200: 'Pale Green',\n danger500: 'Cherry',\n danger200: 'Pink',\n warning600: 'Orange',\n warning200: 'Yellow',\n secondary600: 'Teal',\n secondary200: 'Baby Blue',\n neutral400: 'Gray',\n neutral0: 'White',\n};\n\nconst getStageColorByHex = (hex?: string) => {\n if (!hex) {\n return null;\n }\n\n // there are multiple colors with the same hex code in the design tokens. In order to find\n // the correct one we have to find all matching colors and then check, which ones are usable\n // for stages.\n const themeColors: [string, (keyof typeof STAGE_COLORS)[]][] = Object.entries(\n lightTheme.colors\n ).filter(([, value]) => value.toUpperCase() === hex.toUpperCase());\n\n const themeColorName = themeColors.reduce(\n (acc, [name]) => {\n if (STAGE_COLORS?.[name]) {\n acc = name;\n }\n\n return acc;\n },\n null as keyof typeof STAGE_COLORS | null\n );\n\n if (!themeColorName) {\n return null;\n }\n\n return {\n themeColorName,\n name: STAGE_COLORS[themeColorName],\n };\n};\n\nconst AVAILABLE_COLORS = Object.entries(STAGE_COLORS).map(([themeColorName, name]) => ({\n hex: lightTheme.colors[themeColorName as keyof DefaultTheme['colors']].toUpperCase(),\n name,\n}));\n\nexport { AVAILABLE_COLORS, getStageColorByHex };\n"],"names":["STAGE_COLORS","primary600","primary200","alternative600","alternative200","success600","success200","danger500","danger200","warning600","warning200","secondary600","secondary200","neutral400","neutral0","getStageColorByHex","hex","themeColors","Object","entries","lightTheme","colors","filter","value","toUpperCase","themeColorName","reduce","acc","name","AVAILABLE_COLORS","map"],"mappings":";;AAGA,MAAMA,YAAuC,GAAA;IAC3CC,UAAY,EAAA,MAAA;IACZC,UAAY,EAAA,OAAA;IACZC,cAAgB,EAAA,QAAA;IAChBC,cAAgB,EAAA,UAAA;IAChBC,UAAY,EAAA,OAAA;IACZC,UAAY,EAAA,YAAA;IACZC,SAAW,EAAA,QAAA;IACXC,SAAW,EAAA,MAAA;IACXC,UAAY,EAAA,QAAA;IACZC,UAAY,EAAA,QAAA;IACZC,YAAc,EAAA,MAAA;IACdC,YAAc,EAAA,WAAA;IACdC,UAAY,EAAA,MAAA;IACZC,QAAU,EAAA;AACZ,CAAA;AAEA,MAAMC,qBAAqB,CAACC,GAAAA,GAAAA;AAC1B,IAAA,IAAI,CAACA,GAAK,EAAA;QACR,OAAO,IAAA;AACT;;;;AAKA,IAAA,MAAMC,cAAyDC,MAAOC,CAAAA,OAAO,CAC3EC,UAAAA,CAAWC,MAAM,CACjBC,CAAAA,MAAM,CAAC,CAAC,GAAGC,KAAM,CAAA,GAAKA,MAAMC,WAAW,EAAA,KAAOR,IAAIQ,WAAW,EAAA,CAAA;AAE/D,IAAA,MAAMC,iBAAiBR,WAAYS,CAAAA,MAAM,CACvC,CAACC,GAAAA,EAAK,CAACC,IAAK,CAAA,GAAA;QACV,IAAI5B,YAAAA,GAAe4B,IAAAA,CAAK,EAAE;YACxBD,GAAMC,GAAAA,IAAAA;AACR;QAEA,OAAOD,GAAAA;KAET,EAAA,IAAA,CAAA;AAGF,IAAA,IAAI,CAACF,cAAgB,EAAA;QACnB,OAAO,IAAA;AACT;IAEA,OAAO;AACLA,QAAAA,cAAAA;QACAG,IAAM5B,EAAAA,YAAY,CAACyB,cAAe;AACpC,KAAA;AACF;AAEA,MAAMI,gBAAmBX,GAAAA,MAAAA,CAAOC,OAAO,CAACnB,YAAc8B,CAAAA,CAAAA,GAAG,CAAC,CAAC,CAACL,cAAAA,EAAgBG,IAAK,CAAA,IAAM;AACrFZ,QAAAA,GAAAA,EAAKI,UAAWC,CAAAA,MAAM,CAACI,cAAAA,CAA+C,CAACD,WAAW,EAAA;AAClFI,QAAAA;KACF,CAAA;;;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ const prefixPluginTranslations = (trad, pluginId)=>{
4
+ return Object.keys(trad).reduce((acc, current)=>{
5
+ acc[`${pluginId}.${current}`] = trad[current];
6
+ return acc;
7
+ }, {});
8
+ };
9
+
10
+ exports.prefixPluginTranslations = prefixPluginTranslations;
11
+ //# sourceMappingURL=translations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translations.js","sources":["../../../admin/src/utils/translations.ts"],"sourcesContent":["type TradOptions = Record<string, string>;\n\nconst prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n return acc;\n }, {} as TradOptions);\n};\n\nexport { prefixPluginTranslations };\n"],"names":["prefixPluginTranslations","trad","pluginId","Object","keys","reduce","acc","current"],"mappings":";;AAEMA,MAAAA,wBAAAA,GAA2B,CAACC,IAAmBC,EAAAA,QAAAA,GAAAA;AAInD,IAAA,OAAOC,OAAOC,IAAI,CAACH,MAAMI,MAAM,CAAC,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;AACpCD,QAAAA,GAAG,CAAC,CAAC,EAAEJ,QAAAA,CAAS,CAAC,EAAEK,OAAQ,CAAA,CAAC,CAAC,GAAGN,IAAI,CAACM,OAAQ,CAAA;QAC7C,OAAOD,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
@@ -0,0 +1,9 @@
1
+ const prefixPluginTranslations = (trad, pluginId)=>{
2
+ return Object.keys(trad).reduce((acc, current)=>{
3
+ acc[`${pluginId}.${current}`] = trad[current];
4
+ return acc;
5
+ }, {});
6
+ };
7
+
8
+ export { prefixPluginTranslations };
9
+ //# sourceMappingURL=translations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translations.mjs","sources":["../../../admin/src/utils/translations.ts"],"sourcesContent":["type TradOptions = Record<string, string>;\n\nconst prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n return acc;\n }, {} as TradOptions);\n};\n\nexport { prefixPluginTranslations };\n"],"names":["prefixPluginTranslations","trad","pluginId","Object","keys","reduce","acc","current"],"mappings":"AAEMA,MAAAA,wBAAAA,GAA2B,CAACC,IAAmBC,EAAAA,QAAAA,GAAAA;AAInD,IAAA,OAAOC,OAAOC,IAAI,CAACH,MAAMI,MAAM,CAAC,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;AACpCD,QAAAA,GAAG,CAAC,CAAC,EAAEJ,QAAAA,CAAS,CAAC,EAAEK,OAAQ,CAAA,CAAC,CAAC,GAAGN,IAAI,CAACM,OAAQ,CAAA;QAC7C,OAAOD,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Retrieves the display name of an admin panel user
5
+ */ const getDisplayName = ({ firstname, lastname, username, email } = {})=>{
6
+ if (username) {
7
+ return username;
8
+ }
9
+ // firstname is not required if the user is created with a username
10
+ if (firstname) {
11
+ return `${firstname} ${lastname ?? ''}`.trim();
12
+ }
13
+ return email ?? '';
14
+ };
15
+
16
+ exports.getDisplayName = getDisplayName;
17
+ //# sourceMappingURL=users.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.js","sources":["../../../admin/src/utils/users.ts"],"sourcesContent":["import type { SanitizedAdminUser } from '@strapi/admin/strapi-admin';\n\n/**\n * Retrieves the display name of an admin panel user\n */\nconst getDisplayName = ({\n firstname,\n lastname,\n username,\n email,\n}: Partial<\n Pick<SanitizedAdminUser, 'firstname' | 'lastname' | 'username' | 'email'>\n> = {}): string => {\n if (username) {\n return username;\n }\n\n // firstname is not required if the user is created with a username\n if (firstname) {\n return `${firstname} ${lastname ?? ''}`.trim();\n }\n\n return email ?? '';\n};\n\nexport { getDisplayName };\n"],"names":["getDisplayName","firstname","lastname","username","email","trim"],"mappings":";;AAEA;;AAEC,IACKA,MAAAA,cAAAA,GAAiB,CAAC,EACtBC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,KAAK,EAGN,GAAG,EAAE,GAAA;AACJ,IAAA,IAAID,QAAU,EAAA;QACZ,OAAOA,QAAAA;AACT;;AAGA,IAAA,IAAIF,SAAW,EAAA;QACb,OAAO,CAAC,EAAEA,SAAU,CAAA,CAAC,EAAEC,QAAY,IAAA,EAAA,CAAG,CAAC,CAACG,IAAI,EAAA;AAC9C;AAEA,IAAA,OAAOD,KAAS,IAAA,EAAA;AAClB;;;;"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Retrieves the display name of an admin panel user
3
+ */ const getDisplayName = ({ firstname, lastname, username, email } = {})=>{
4
+ if (username) {
5
+ return username;
6
+ }
7
+ // firstname is not required if the user is created with a username
8
+ if (firstname) {
9
+ return `${firstname} ${lastname ?? ''}`.trim();
10
+ }
11
+ return email ?? '';
12
+ };
13
+
14
+ export { getDisplayName };
15
+ //# sourceMappingURL=users.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.mjs","sources":["../../../admin/src/utils/users.ts"],"sourcesContent":["import type { SanitizedAdminUser } from '@strapi/admin/strapi-admin';\n\n/**\n * Retrieves the display name of an admin panel user\n */\nconst getDisplayName = ({\n firstname,\n lastname,\n username,\n email,\n}: Partial<\n Pick<SanitizedAdminUser, 'firstname' | 'lastname' | 'username' | 'email'>\n> = {}): string => {\n if (username) {\n return username;\n }\n\n // firstname is not required if the user is created with a username\n if (firstname) {\n return `${firstname} ${lastname ?? ''}`.trim();\n }\n\n return email ?? '';\n};\n\nexport { getDisplayName };\n"],"names":["getDisplayName","firstname","lastname","username","email","trim"],"mappings":"AAEA;;AAEC,IACKA,MAAAA,cAAAA,GAAiB,CAAC,EACtBC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,KAAK,EAGN,GAAG,EAAE,GAAA;AACJ,IAAA,IAAID,QAAU,EAAA;QACZ,OAAOA,QAAAA;AACT;;AAGA,IAAA,IAAIF,SAAW,EAAA;QACb,OAAO,CAAC,EAAEA,SAAU,CAAA,CAAC,EAAEC,QAAY,IAAA,EAAA,CAAG,CAAC,CAACG,IAAI,EAAA;AAC9C;AAEA,IAAA,OAAOD,KAAS,IAAA,EAAA;AAClB;;;;"}
@@ -0,0 +1,54 @@
1
+ 'use strict';
2
+
3
+ var index = require('./utils/index.js');
4
+ var actions = require('./config/actions.js');
5
+ var defaultStages = require('./constants/default-stages.json.js');
6
+ var defaultWorkflow = require('./constants/default-workflow.json.js');
7
+ var webhookEvents = require('./constants/webhook-events.js');
8
+
9
+ /**
10
+ * Initialize the default workflow if there is no workflow in the database
11
+ */ async function initDefaultWorkflow() {
12
+ const workflowsService = index.getService('workflows', {
13
+ strapi
14
+ });
15
+ const stagesService = index.getService('stages', {
16
+ strapi
17
+ });
18
+ const wfCount = await workflowsService.count();
19
+ const stagesCount = await stagesService.count();
20
+ // Check if there is nothing about review-workflow in DB
21
+ // If any, the feature has already been initialized with a workflow and stages
22
+ if (wfCount === 0 && stagesCount === 0) {
23
+ const workflow = {
24
+ ...defaultWorkflow.default,
25
+ contentTypes: [],
26
+ stages: defaultStages
27
+ };
28
+ await workflowsService.create({
29
+ data: workflow
30
+ });
31
+ }
32
+ }
33
+ /**
34
+ * Webhook store limits the events that can be triggered,
35
+ * this function extends it with the events review workflows can trigger
36
+ */ const registerWebhookEvents = async ()=>Object.entries(webhookEvents.default).forEach(([eventKey, event])=>strapi.get('webhookStore').addAllowedEvent(eventKey, event));
37
+ var bootstrap = (async (args)=>{
38
+ // Permissions
39
+ const { actionProvider } = index.getAdminService('permission');
40
+ await actionProvider.registerMany(actions.reviewWorkflows);
41
+ // Webhooks and events
42
+ await registerWebhookEvents();
43
+ await index.getService('workflow-weekly-metrics').registerCron();
44
+ // Data initialization
45
+ await initDefaultWorkflow();
46
+ // Document service middleware
47
+ const docsMiddlewares = index.getService('document-service-middlewares');
48
+ strapi.documents.use(docsMiddlewares.assignStageOnCreate);
49
+ strapi.documents.use(docsMiddlewares.handleStageOnUpdate);
50
+ strapi.documents.use(docsMiddlewares.checkStageBeforePublish);
51
+ });
52
+
53
+ module.exports = bootstrap;
54
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sources":["../../server/src/bootstrap.ts"],"sourcesContent":["import { getAdminService, getService } from './utils';\nimport actions from './config/actions';\n\nimport defaultStages from './constants/default-stages.json';\nimport defaultWorkflow from './constants/default-workflow.json';\nimport webhookEvents from './constants/webhook-events';\n\n/**\n * Initialize the default workflow if there is no workflow in the database\n */\n\nasync function initDefaultWorkflow() {\n const workflowsService = getService('workflows', { strapi });\n const stagesService = getService('stages', { strapi });\n\n const wfCount = await workflowsService.count();\n const stagesCount = await stagesService.count();\n\n // Check if there is nothing about review-workflow in DB\n // If any, the feature has already been initialized with a workflow and stages\n if (wfCount === 0 && stagesCount === 0) {\n const workflow = {\n ...defaultWorkflow,\n contentTypes: [],\n stages: defaultStages,\n };\n\n await workflowsService.create({ data: workflow });\n }\n}\n\n/**\n * Webhook store limits the events that can be triggered,\n * this function extends it with the events review workflows can trigger\n */\nconst registerWebhookEvents = async () =>\n Object.entries(webhookEvents).forEach(([eventKey, event]) =>\n strapi.get('webhookStore').addAllowedEvent(eventKey, event)\n );\n\nexport default async (args: any) => {\n // Permissions\n const { actionProvider } = getAdminService('permission');\n await actionProvider.registerMany(actions.reviewWorkflows);\n\n // Webhooks and events\n await registerWebhookEvents();\n await getService('workflow-weekly-metrics').registerCron();\n\n // Data initialization\n await initDefaultWorkflow();\n\n // Document service middleware\n const docsMiddlewares = getService('document-service-middlewares');\n strapi.documents.use(docsMiddlewares.assignStageOnCreate);\n strapi.documents.use(docsMiddlewares.handleStageOnUpdate);\n strapi.documents.use(docsMiddlewares.checkStageBeforePublish);\n};\n"],"names":["initDefaultWorkflow","workflowsService","getService","strapi","stagesService","wfCount","count","stagesCount","workflow","defaultWorkflow","contentTypes","stages","defaultStages","create","data","registerWebhookEvents","Object","entries","webhookEvents","forEach","eventKey","event","get","addAllowedEvent","args","actionProvider","getAdminService","registerMany","actions","reviewWorkflows","registerCron","docsMiddlewares","documents","use","assignStageOnCreate","handleStageOnUpdate","checkStageBeforePublish"],"mappings":";;;;;;;;AAOA;;AAEC,IAED,eAAeA,mBAAAA,GAAAA;IACb,MAAMC,gBAAAA,GAAmBC,iBAAW,WAAa,EAAA;AAAEC,QAAAA;AAAO,KAAA,CAAA;IAC1D,MAAMC,aAAAA,GAAgBF,iBAAW,QAAU,EAAA;AAAEC,QAAAA;AAAO,KAAA,CAAA;IAEpD,MAAME,OAAAA,GAAU,MAAMJ,gBAAAA,CAAiBK,KAAK,EAAA;IAC5C,MAAMC,WAAAA,GAAc,MAAMH,aAAAA,CAAcE,KAAK,EAAA;;;IAI7C,IAAID,OAAAA,KAAY,CAAKE,IAAAA,WAAAA,KAAgB,CAAG,EAAA;AACtC,QAAA,MAAMC,QAAW,GAAA;AACf,YAAA,GAAGC,uBAAe;AAClBC,YAAAA,YAAAA,EAAc,EAAE;YAChBC,MAAQC,EAAAA;AACV,SAAA;QAEA,MAAMX,gBAAAA,CAAiBY,MAAM,CAAC;YAAEC,IAAMN,EAAAA;AAAS,SAAA,CAAA;AACjD;AACF;AAEA;;;IAIA,MAAMO,wBAAwB,UAC5BC,MAAAA,CAAOC,OAAO,CAACC,qBAAAA,CAAAA,CAAeC,OAAO,CAAC,CAAC,CAACC,QAAUC,EAAAA,KAAAA,CAAM,GACtDlB,MAAOmB,CAAAA,GAAG,CAAC,cAAgBC,CAAAA,CAAAA,eAAe,CAACH,QAAUC,EAAAA,KAAAA,CAAAA,CAAAA;AAGzD,gBAAe,CAAA,OAAOG,IAAAA,GAAAA;;AAEpB,IAAA,MAAM,EAAEC,cAAc,EAAE,GAAGC,qBAAgB,CAAA,YAAA,CAAA;AAC3C,IAAA,MAAMD,cAAeE,CAAAA,YAAY,CAACC,OAAAA,CAAQC,eAAe,CAAA;;IAGzD,MAAMd,qBAAAA,EAAAA;IACN,MAAMb,gBAAAA,CAAW,2BAA2B4B,YAAY,EAAA;;IAGxD,MAAM9B,mBAAAA,EAAAA;;AAGN,IAAA,MAAM+B,kBAAkB7B,gBAAW,CAAA,8BAAA,CAAA;AACnCC,IAAAA,MAAAA,CAAO6B,SAAS,CAACC,GAAG,CAACF,gBAAgBG,mBAAmB,CAAA;AACxD/B,IAAAA,MAAAA,CAAO6B,SAAS,CAACC,GAAG,CAACF,gBAAgBI,mBAAmB,CAAA;AACxDhC,IAAAA,MAAAA,CAAO6B,SAAS,CAACC,GAAG,CAACF,gBAAgBK,uBAAuB,CAAA;AAC9D,CAAA;;;;"}
@@ -0,0 +1,52 @@
1
+ import { getAdminService, getService } from './utils/index.mjs';
2
+ import actions from './config/actions.mjs';
3
+ import defaultStages from './constants/default-stages.json.mjs';
4
+ import defaultWorkflow from './constants/default-workflow.json.mjs';
5
+ import webhookEvents from './constants/webhook-events.mjs';
6
+
7
+ /**
8
+ * Initialize the default workflow if there is no workflow in the database
9
+ */ async function initDefaultWorkflow() {
10
+ const workflowsService = getService('workflows', {
11
+ strapi
12
+ });
13
+ const stagesService = getService('stages', {
14
+ strapi
15
+ });
16
+ const wfCount = await workflowsService.count();
17
+ const stagesCount = await stagesService.count();
18
+ // Check if there is nothing about review-workflow in DB
19
+ // If any, the feature has already been initialized with a workflow and stages
20
+ if (wfCount === 0 && stagesCount === 0) {
21
+ const workflow = {
22
+ ...defaultWorkflow,
23
+ contentTypes: [],
24
+ stages: defaultStages
25
+ };
26
+ await workflowsService.create({
27
+ data: workflow
28
+ });
29
+ }
30
+ }
31
+ /**
32
+ * Webhook store limits the events that can be triggered,
33
+ * this function extends it with the events review workflows can trigger
34
+ */ const registerWebhookEvents = async ()=>Object.entries(webhookEvents).forEach(([eventKey, event])=>strapi.get('webhookStore').addAllowedEvent(eventKey, event));
35
+ var bootstrap = (async (args)=>{
36
+ // Permissions
37
+ const { actionProvider } = getAdminService('permission');
38
+ await actionProvider.registerMany(actions.reviewWorkflows);
39
+ // Webhooks and events
40
+ await registerWebhookEvents();
41
+ await getService('workflow-weekly-metrics').registerCron();
42
+ // Data initialization
43
+ await initDefaultWorkflow();
44
+ // Document service middleware
45
+ const docsMiddlewares = getService('document-service-middlewares');
46
+ strapi.documents.use(docsMiddlewares.assignStageOnCreate);
47
+ strapi.documents.use(docsMiddlewares.handleStageOnUpdate);
48
+ strapi.documents.use(docsMiddlewares.checkStageBeforePublish);
49
+ });
50
+
51
+ export { bootstrap as default };
52
+ //# sourceMappingURL=bootstrap.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.mjs","sources":["../../server/src/bootstrap.ts"],"sourcesContent":["import { getAdminService, getService } from './utils';\nimport actions from './config/actions';\n\nimport defaultStages from './constants/default-stages.json';\nimport defaultWorkflow from './constants/default-workflow.json';\nimport webhookEvents from './constants/webhook-events';\n\n/**\n * Initialize the default workflow if there is no workflow in the database\n */\n\nasync function initDefaultWorkflow() {\n const workflowsService = getService('workflows', { strapi });\n const stagesService = getService('stages', { strapi });\n\n const wfCount = await workflowsService.count();\n const stagesCount = await stagesService.count();\n\n // Check if there is nothing about review-workflow in DB\n // If any, the feature has already been initialized with a workflow and stages\n if (wfCount === 0 && stagesCount === 0) {\n const workflow = {\n ...defaultWorkflow,\n contentTypes: [],\n stages: defaultStages,\n };\n\n await workflowsService.create({ data: workflow });\n }\n}\n\n/**\n * Webhook store limits the events that can be triggered,\n * this function extends it with the events review workflows can trigger\n */\nconst registerWebhookEvents = async () =>\n Object.entries(webhookEvents).forEach(([eventKey, event]) =>\n strapi.get('webhookStore').addAllowedEvent(eventKey, event)\n );\n\nexport default async (args: any) => {\n // Permissions\n const { actionProvider } = getAdminService('permission');\n await actionProvider.registerMany(actions.reviewWorkflows);\n\n // Webhooks and events\n await registerWebhookEvents();\n await getService('workflow-weekly-metrics').registerCron();\n\n // Data initialization\n await initDefaultWorkflow();\n\n // Document service middleware\n const docsMiddlewares = getService('document-service-middlewares');\n strapi.documents.use(docsMiddlewares.assignStageOnCreate);\n strapi.documents.use(docsMiddlewares.handleStageOnUpdate);\n strapi.documents.use(docsMiddlewares.checkStageBeforePublish);\n};\n"],"names":["initDefaultWorkflow","workflowsService","getService","strapi","stagesService","wfCount","count","stagesCount","workflow","defaultWorkflow","contentTypes","stages","defaultStages","create","data","registerWebhookEvents","Object","entries","webhookEvents","forEach","eventKey","event","get","addAllowedEvent","args","actionProvider","getAdminService","registerMany","actions","reviewWorkflows","registerCron","docsMiddlewares","documents","use","assignStageOnCreate","handleStageOnUpdate","checkStageBeforePublish"],"mappings":";;;;;;AAOA;;AAEC,IAED,eAAeA,mBAAAA,GAAAA;IACb,MAAMC,gBAAAA,GAAmBC,WAAW,WAAa,EAAA;AAAEC,QAAAA;AAAO,KAAA,CAAA;IAC1D,MAAMC,aAAAA,GAAgBF,WAAW,QAAU,EAAA;AAAEC,QAAAA;AAAO,KAAA,CAAA;IAEpD,MAAME,OAAAA,GAAU,MAAMJ,gBAAAA,CAAiBK,KAAK,EAAA;IAC5C,MAAMC,WAAAA,GAAc,MAAMH,aAAAA,CAAcE,KAAK,EAAA;;;IAI7C,IAAID,OAAAA,KAAY,CAAKE,IAAAA,WAAAA,KAAgB,CAAG,EAAA;AACtC,QAAA,MAAMC,QAAW,GAAA;AACf,YAAA,GAAGC,eAAe;AAClBC,YAAAA,YAAAA,EAAc,EAAE;YAChBC,MAAQC,EAAAA;AACV,SAAA;QAEA,MAAMX,gBAAAA,CAAiBY,MAAM,CAAC;YAAEC,IAAMN,EAAAA;AAAS,SAAA,CAAA;AACjD;AACF;AAEA;;;IAIA,MAAMO,wBAAwB,UAC5BC,MAAAA,CAAOC,OAAO,CAACC,aAAAA,CAAAA,CAAeC,OAAO,CAAC,CAAC,CAACC,QAAUC,EAAAA,KAAAA,CAAM,GACtDlB,MAAOmB,CAAAA,GAAG,CAAC,cAAgBC,CAAAA,CAAAA,eAAe,CAACH,QAAUC,EAAAA,KAAAA,CAAAA,CAAAA;AAGzD,gBAAe,CAAA,OAAOG,IAAAA,GAAAA;;AAEpB,IAAA,MAAM,EAAEC,cAAc,EAAE,GAAGC,eAAgB,CAAA,YAAA,CAAA;AAC3C,IAAA,MAAMD,cAAeE,CAAAA,YAAY,CAACC,OAAAA,CAAQC,eAAe,CAAA;;IAGzD,MAAMd,qBAAAA,EAAAA;IACN,MAAMb,UAAAA,CAAW,2BAA2B4B,YAAY,EAAA;;IAGxD,MAAM9B,mBAAAA,EAAAA;;AAGN,IAAA,MAAM+B,kBAAkB7B,UAAW,CAAA,8BAAA,CAAA;AACnCC,IAAAA,MAAAA,CAAO6B,SAAS,CAACC,GAAG,CAACF,gBAAgBG,mBAAmB,CAAA;AACxD/B,IAAAA,MAAAA,CAAO6B,SAAS,CAACC,GAAG,CAACF,gBAAgBI,mBAAmB,CAAA;AACxDhC,IAAAA,MAAAA,CAAO6B,SAAS,CAACC,GAAG,CAACF,gBAAgBK,uBAAuB,CAAA;AAC9D,CAAA;;;;"}
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var actions = {
4
+ reviewWorkflows: [
5
+ {
6
+ uid: 'review-workflows.create',
7
+ displayName: 'Create',
8
+ pluginName: 'admin',
9
+ section: 'settings',
10
+ category: 'review workflows',
11
+ subCategory: 'options'
12
+ },
13
+ {
14
+ uid: 'review-workflows.read',
15
+ displayName: 'Read',
16
+ pluginName: 'admin',
17
+ section: 'settings',
18
+ category: 'review workflows',
19
+ subCategory: 'options'
20
+ },
21
+ {
22
+ uid: 'review-workflows.update',
23
+ displayName: 'Update',
24
+ pluginName: 'admin',
25
+ section: 'settings',
26
+ category: 'review workflows',
27
+ subCategory: 'options'
28
+ },
29
+ {
30
+ uid: 'review-workflows.delete',
31
+ displayName: 'Delete',
32
+ pluginName: 'admin',
33
+ section: 'settings',
34
+ category: 'review workflows',
35
+ subCategory: 'options'
36
+ },
37
+ {
38
+ uid: 'review-workflows.stage.transition',
39
+ displayName: 'Change stage',
40
+ pluginName: 'admin',
41
+ section: 'internal'
42
+ }
43
+ ]
44
+ };
45
+
46
+ module.exports = actions;
47
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sources":["../../../server/src/config/actions.ts"],"sourcesContent":["export default {\n reviewWorkflows: [\n {\n uid: 'review-workflows.create',\n displayName: 'Create',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.read',\n displayName: 'Read',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.update',\n displayName: 'Update',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.delete',\n displayName: 'Delete',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.stage.transition',\n displayName: 'Change stage',\n pluginName: 'admin',\n section: 'internal',\n },\n ],\n};\n"],"names":["reviewWorkflows","uid","displayName","pluginName","section","category","subCategory"],"mappings":";;AAAA,cAAe;IACbA,eAAiB,EAAA;AACf,QAAA;YACEC,GAAK,EAAA,yBAAA;YACLC,WAAa,EAAA,QAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,uBAAA;YACLC,WAAa,EAAA,MAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,yBAAA;YACLC,WAAa,EAAA,QAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,yBAAA;YACLC,WAAa,EAAA,QAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,mCAAA;YACLC,WAAa,EAAA,cAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA;AACX;AACD;AACH,CAAE;;;;"}
@@ -0,0 +1,45 @@
1
+ var actions = {
2
+ reviewWorkflows: [
3
+ {
4
+ uid: 'review-workflows.create',
5
+ displayName: 'Create',
6
+ pluginName: 'admin',
7
+ section: 'settings',
8
+ category: 'review workflows',
9
+ subCategory: 'options'
10
+ },
11
+ {
12
+ uid: 'review-workflows.read',
13
+ displayName: 'Read',
14
+ pluginName: 'admin',
15
+ section: 'settings',
16
+ category: 'review workflows',
17
+ subCategory: 'options'
18
+ },
19
+ {
20
+ uid: 'review-workflows.update',
21
+ displayName: 'Update',
22
+ pluginName: 'admin',
23
+ section: 'settings',
24
+ category: 'review workflows',
25
+ subCategory: 'options'
26
+ },
27
+ {
28
+ uid: 'review-workflows.delete',
29
+ displayName: 'Delete',
30
+ pluginName: 'admin',
31
+ section: 'settings',
32
+ category: 'review workflows',
33
+ subCategory: 'options'
34
+ },
35
+ {
36
+ uid: 'review-workflows.stage.transition',
37
+ displayName: 'Change stage',
38
+ pluginName: 'admin',
39
+ section: 'internal'
40
+ }
41
+ ]
42
+ };
43
+
44
+ export { actions as default };
45
+ //# sourceMappingURL=actions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.mjs","sources":["../../../server/src/config/actions.ts"],"sourcesContent":["export default {\n reviewWorkflows: [\n {\n uid: 'review-workflows.create',\n displayName: 'Create',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.read',\n displayName: 'Read',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.update',\n displayName: 'Update',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.delete',\n displayName: 'Delete',\n pluginName: 'admin',\n section: 'settings',\n category: 'review workflows',\n subCategory: 'options',\n },\n {\n uid: 'review-workflows.stage.transition',\n displayName: 'Change stage',\n pluginName: 'admin',\n section: 'internal',\n },\n ],\n};\n"],"names":["reviewWorkflows","uid","displayName","pluginName","section","category","subCategory"],"mappings":"AAAA,cAAe;IACbA,eAAiB,EAAA;AACf,QAAA;YACEC,GAAK,EAAA,yBAAA;YACLC,WAAa,EAAA,QAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,uBAAA;YACLC,WAAa,EAAA,MAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,yBAAA;YACLC,WAAa,EAAA,QAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,yBAAA;YACLC,WAAa,EAAA,QAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,kBAAA;YACVC,WAAa,EAAA;AACf,SAAA;AACA,QAAA;YACEL,GAAK,EAAA,mCAAA;YACLC,WAAa,EAAA,cAAA;YACbC,UAAY,EAAA,OAAA;YACZC,OAAS,EAAA;AACX;AACD;AACH,CAAE;;;;"}