@strapi/review-workflows 0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b → 0.0.0-next.e7ae51b01f78ddeaa09c4aa3e3882f466a5b3188

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 (389) hide show
  1. package/dist/admin/{chunks/index-Bwgyfg-u.mjs → assets/balloon.png.js} +3 -1078
  2. package/dist/admin/assets/balloon.png.js.map +1 -0
  3. package/dist/admin/{chunks/index-o5qgjdDk.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/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/components/Widgets.js +142 -0
  18. package/dist/admin/components/Widgets.js.map +1 -0
  19. package/dist/admin/components/Widgets.mjs +140 -0
  20. package/dist/admin/components/Widgets.mjs.map +1 -0
  21. package/dist/admin/constants.js +18 -0
  22. package/dist/admin/constants.js.map +1 -0
  23. package/dist/admin/constants.mjs +12 -0
  24. package/dist/admin/constants.mjs.map +1 -0
  25. package/dist/admin/index.js +111 -13
  26. package/dist/admin/index.js.map +1 -1
  27. package/dist/admin/index.mjs +112 -12
  28. package/dist/admin/index.mjs.map +1 -1
  29. package/dist/admin/modules/hooks.js +8 -0
  30. package/dist/admin/modules/hooks.js.map +1 -0
  31. package/dist/admin/modules/hooks.mjs +6 -0
  32. package/dist/admin/modules/hooks.mjs.map +1 -0
  33. package/dist/admin/{chunks/router-B0yP_sPs.js → router.js} +3 -3
  34. package/dist/admin/router.js.map +1 -0
  35. package/dist/admin/{chunks/router-tE19YOje.mjs → router.mjs} +3 -3
  36. package/dist/admin/router.mjs.map +1 -0
  37. package/dist/admin/routes/content-manager/model/components/TableColumns.js +44 -0
  38. package/dist/admin/routes/content-manager/model/components/TableColumns.js.map +1 -0
  39. package/dist/admin/routes/content-manager/model/components/TableColumns.mjs +41 -0
  40. package/dist/admin/routes/content-manager/model/components/TableColumns.mjs.map +1 -0
  41. package/dist/admin/routes/content-manager/model/constants.js +60 -0
  42. package/dist/admin/routes/content-manager/model/constants.js.map +1 -0
  43. package/dist/admin/routes/content-manager/model/constants.mjs +58 -0
  44. package/dist/admin/routes/content-manager/model/constants.mjs.map +1 -0
  45. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.js +169 -0
  46. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.js.map +1 -0
  47. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.mjs +148 -0
  48. package/dist/admin/routes/content-manager/model/id/components/AssigneeSelect.mjs.map +1 -0
  49. package/dist/admin/routes/content-manager/model/id/components/Header.js +31 -0
  50. package/dist/admin/routes/content-manager/model/id/components/Header.js.map +1 -0
  51. package/dist/admin/routes/content-manager/model/id/components/Header.mjs +29 -0
  52. package/dist/admin/routes/content-manager/model/id/components/Header.mjs.map +1 -0
  53. package/dist/admin/routes/content-manager/model/id/components/Panel.js +39 -0
  54. package/dist/admin/routes/content-manager/model/id/components/Panel.js.map +1 -0
  55. package/dist/admin/routes/content-manager/model/id/components/Panel.mjs +37 -0
  56. package/dist/admin/routes/content-manager/model/id/components/Panel.mjs.map +1 -0
  57. package/dist/admin/routes/content-manager/model/id/components/StageSelect.js +329 -0
  58. package/dist/admin/routes/content-manager/model/id/components/StageSelect.js.map +1 -0
  59. package/dist/admin/routes/content-manager/model/id/components/StageSelect.mjs +308 -0
  60. package/dist/admin/routes/content-manager/model/id/components/StageSelect.mjs.map +1 -0
  61. package/dist/admin/routes/content-manager/model/id/components/constants.js +8 -0
  62. package/dist/admin/routes/content-manager/model/id/components/constants.js.map +1 -0
  63. package/dist/admin/routes/content-manager/model/id/components/constants.mjs +5 -0
  64. package/dist/admin/routes/content-manager/model/id/components/constants.mjs.map +1 -0
  65. package/dist/admin/routes/purchase-review-workflows.js +194 -0
  66. package/dist/admin/routes/purchase-review-workflows.js.map +1 -0
  67. package/dist/admin/routes/purchase-review-workflows.mjs +192 -0
  68. package/dist/admin/routes/purchase-review-workflows.mjs.map +1 -0
  69. package/dist/admin/routes/settings/components/AddStage.js +51 -0
  70. package/dist/admin/routes/settings/components/AddStage.js.map +1 -0
  71. package/dist/admin/routes/settings/components/AddStage.mjs +49 -0
  72. package/dist/admin/routes/settings/components/AddStage.mjs.map +1 -0
  73. package/dist/admin/routes/settings/components/Layout.js +86 -0
  74. package/dist/admin/routes/settings/components/Layout.js.map +1 -0
  75. package/dist/admin/routes/settings/components/Layout.mjs +82 -0
  76. package/dist/admin/routes/settings/components/Layout.mjs.map +1 -0
  77. package/dist/admin/routes/settings/components/StageDragPreview.js +40 -0
  78. package/dist/admin/routes/settings/components/StageDragPreview.js.map +1 -0
  79. package/dist/admin/routes/settings/components/StageDragPreview.mjs +38 -0
  80. package/dist/admin/routes/settings/components/StageDragPreview.mjs.map +1 -0
  81. package/dist/admin/routes/settings/components/Stages.js +592 -0
  82. package/dist/admin/routes/settings/components/Stages.js.map +1 -0
  83. package/dist/admin/routes/settings/components/Stages.mjs +571 -0
  84. package/dist/admin/routes/settings/components/Stages.mjs.map +1 -0
  85. package/dist/admin/routes/settings/components/WorkflowAttributes.js +206 -0
  86. package/dist/admin/routes/settings/components/WorkflowAttributes.js.map +1 -0
  87. package/dist/admin/routes/settings/components/WorkflowAttributes.mjs +204 -0
  88. package/dist/admin/routes/settings/components/WorkflowAttributes.mjs.map +1 -0
  89. package/dist/admin/routes/settings/constants.js +8 -0
  90. package/dist/admin/routes/settings/constants.js.map +1 -0
  91. package/dist/admin/routes/settings/constants.mjs +6 -0
  92. package/dist/admin/routes/settings/constants.mjs.map +1 -0
  93. package/dist/admin/routes/settings/hooks/useDragAndDrop.js +193 -0
  94. package/dist/admin/routes/settings/hooks/useDragAndDrop.js.map +1 -0
  95. package/dist/admin/routes/settings/hooks/useDragAndDrop.mjs +170 -0
  96. package/dist/admin/routes/settings/hooks/useDragAndDrop.mjs.map +1 -0
  97. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.js +94 -0
  98. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.js.map +1 -0
  99. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.mjs +73 -0
  100. package/dist/admin/routes/settings/hooks/useKeyboardDragAndDrop.mjs.map +1 -0
  101. package/dist/admin/{chunks/Layout-BMBeVPYC.js → routes/settings/hooks/useReviewWorkflows.js} +6 -125
  102. package/dist/admin/routes/settings/hooks/useReviewWorkflows.js.map +1 -0
  103. package/dist/admin/{chunks/Layout-CVtYAQm6.mjs → routes/settings/hooks/useReviewWorkflows.mjs} +4 -119
  104. package/dist/admin/routes/settings/hooks/useReviewWorkflows.mjs.map +1 -0
  105. package/dist/admin/routes/settings/id.js +411 -0
  106. package/dist/admin/routes/settings/id.js.map +1 -0
  107. package/dist/admin/routes/settings/id.mjs +389 -0
  108. package/dist/admin/routes/settings/id.mjs.map +1 -0
  109. package/dist/admin/{chunks/index-BdonoyEU.js → routes/settings/index.js} +16 -15
  110. package/dist/admin/routes/settings/index.js.map +1 -0
  111. package/dist/admin/{chunks/index-Bo6RFHMy.mjs → routes/settings/index.mjs} +8 -7
  112. package/dist/admin/routes/settings/index.mjs.map +1 -0
  113. package/dist/admin/services/admin.js +23 -0
  114. package/dist/admin/services/admin.js.map +1 -0
  115. package/dist/admin/services/admin.mjs +21 -0
  116. package/dist/admin/services/admin.mjs.map +1 -0
  117. package/dist/admin/services/api.js +15 -0
  118. package/dist/admin/services/api.js.map +1 -0
  119. package/dist/admin/services/api.mjs +13 -0
  120. package/dist/admin/services/api.mjs.map +1 -0
  121. package/dist/admin/services/content-manager.js +116 -0
  122. package/dist/admin/services/content-manager.js.map +1 -0
  123. package/dist/admin/services/content-manager.mjs +110 -0
  124. package/dist/admin/services/content-manager.mjs.map +1 -0
  125. package/dist/admin/services/settings.js +123 -0
  126. package/dist/admin/services/settings.js.map +1 -0
  127. package/dist/admin/services/settings.mjs +118 -0
  128. package/dist/admin/services/settings.mjs.map +1 -0
  129. package/dist/admin/src/components/Widgets.d.ts +2 -0
  130. package/dist/admin/src/services/admin.d.ts +1 -1
  131. package/dist/admin/src/services/api.d.ts +1 -1
  132. package/dist/admin/src/services/content-manager.d.ts +6 -5
  133. package/dist/admin/src/services/settings.d.ts +3 -3
  134. package/dist/admin/{chunks/en-C6SESe-Y.js → translations/en.json.js} +9 -3
  135. package/dist/admin/translations/en.json.js.map +1 -0
  136. package/dist/admin/{chunks/en-BixG7IBu.mjs → translations/en.json.mjs} +8 -2
  137. package/dist/admin/translations/en.json.mjs.map +1 -0
  138. package/dist/admin/{chunks/uk-CbRUr1I7.js → translations/uk.json.js} +2 -2
  139. package/dist/admin/translations/uk.json.js.map +1 -0
  140. package/dist/admin/{chunks/uk-DLlzEBUF.mjs → translations/uk.json.mjs} +1 -1
  141. package/dist/admin/translations/uk.json.mjs.map +1 -0
  142. package/dist/admin/utils/api.js +22 -0
  143. package/dist/admin/utils/api.js.map +1 -0
  144. package/dist/admin/utils/api.mjs +19 -0
  145. package/dist/admin/utils/api.mjs.map +1 -0
  146. package/dist/admin/utils/cm-hooks.js +23 -0
  147. package/dist/admin/utils/cm-hooks.js.map +1 -0
  148. package/dist/admin/utils/cm-hooks.mjs +21 -0
  149. package/dist/admin/utils/cm-hooks.mjs.map +1 -0
  150. package/dist/admin/utils/colors.js +50 -0
  151. package/dist/admin/utils/colors.js.map +1 -0
  152. package/dist/admin/utils/colors.mjs +47 -0
  153. package/dist/admin/utils/colors.mjs.map +1 -0
  154. package/dist/admin/utils/translations.js +11 -0
  155. package/dist/admin/utils/translations.js.map +1 -0
  156. package/dist/admin/utils/translations.mjs +9 -0
  157. package/dist/admin/utils/translations.mjs.map +1 -0
  158. package/dist/admin/utils/users.js +17 -0
  159. package/dist/admin/utils/users.js.map +1 -0
  160. package/dist/admin/utils/users.mjs +15 -0
  161. package/dist/admin/utils/users.mjs.map +1 -0
  162. package/dist/server/bootstrap.js +54 -0
  163. package/dist/server/bootstrap.js.map +1 -0
  164. package/dist/server/bootstrap.mjs +52 -0
  165. package/dist/server/bootstrap.mjs.map +1 -0
  166. package/dist/server/config/actions.js +47 -0
  167. package/dist/server/config/actions.js.map +1 -0
  168. package/dist/server/config/actions.mjs +45 -0
  169. package/dist/server/config/actions.mjs.map +1 -0
  170. package/dist/server/constants/default-stages.json.js +23 -0
  171. package/dist/server/constants/default-stages.json.js.map +1 -0
  172. package/dist/server/constants/default-stages.json.mjs +21 -0
  173. package/dist/server/constants/default-stages.json.mjs.map +1 -0
  174. package/dist/server/constants/default-workflow.json.js +12 -0
  175. package/dist/server/constants/default-workflow.json.js.map +1 -0
  176. package/dist/server/constants/default-workflow.json.mjs +7 -0
  177. package/dist/server/constants/default-workflow.json.mjs.map +1 -0
  178. package/dist/server/constants/webhook-events.js +12 -0
  179. package/dist/server/constants/webhook-events.js.map +1 -0
  180. package/dist/server/constants/webhook-events.mjs +7 -0
  181. package/dist/server/constants/webhook-events.mjs.map +1 -0
  182. package/dist/server/constants/workflows.js +53 -0
  183. package/dist/server/constants/workflows.js.map +1 -0
  184. package/dist/server/constants/workflows.mjs +42 -0
  185. package/dist/server/constants/workflows.mjs.map +1 -0
  186. package/dist/server/content-types/index.js +12 -0
  187. package/dist/server/content-types/index.js.map +1 -0
  188. package/dist/server/content-types/index.mjs +10 -0
  189. package/dist/server/content-types/index.mjs.map +1 -0
  190. package/dist/server/content-types/workflow/index.js +50 -0
  191. package/dist/server/content-types/workflow/index.js.map +1 -0
  192. package/dist/server/content-types/workflow/index.mjs +48 -0
  193. package/dist/server/content-types/workflow/index.mjs.map +1 -0
  194. package/dist/server/content-types/workflow-stage/index.js +54 -0
  195. package/dist/server/content-types/workflow-stage/index.js.map +1 -0
  196. package/dist/server/content-types/workflow-stage/index.mjs +52 -0
  197. package/dist/server/content-types/workflow-stage/index.mjs.map +1 -0
  198. package/dist/server/controllers/assignees.js +57 -0
  199. package/dist/server/controllers/assignees.js.map +1 -0
  200. package/dist/server/controllers/assignees.mjs +55 -0
  201. package/dist/server/controllers/assignees.mjs.map +1 -0
  202. package/dist/server/controllers/index.js +16 -0
  203. package/dist/server/controllers/index.js.map +1 -0
  204. package/dist/server/controllers/index.mjs +14 -0
  205. package/dist/server/controllers/index.mjs.map +1 -0
  206. package/dist/server/controllers/stages.js +167 -0
  207. package/dist/server/controllers/stages.js.map +1 -0
  208. package/dist/server/controllers/stages.mjs +165 -0
  209. package/dist/server/controllers/stages.mjs.map +1 -0
  210. package/dist/server/controllers/workflows.js +136 -0
  211. package/dist/server/controllers/workflows.js.map +1 -0
  212. package/dist/server/controllers/workflows.mjs +134 -0
  213. package/dist/server/controllers/workflows.mjs.map +1 -0
  214. package/dist/server/destroy.js +6 -0
  215. package/dist/server/destroy.js.map +1 -0
  216. package/dist/server/destroy.mjs +4 -0
  217. package/dist/server/destroy.mjs.map +1 -0
  218. package/dist/server/homepage/controllers/homepage.js +15 -0
  219. package/dist/server/homepage/controllers/homepage.js.map +1 -0
  220. package/dist/server/homepage/controllers/homepage.mjs +13 -0
  221. package/dist/server/homepage/controllers/homepage.mjs.map +1 -0
  222. package/dist/server/homepage/controllers/index.js +10 -0
  223. package/dist/server/homepage/controllers/index.js.map +1 -0
  224. package/dist/server/homepage/controllers/index.mjs +8 -0
  225. package/dist/server/homepage/controllers/index.mjs.map +1 -0
  226. package/dist/server/homepage/index.js +14 -0
  227. package/dist/server/homepage/index.js.map +1 -0
  228. package/dist/server/homepage/index.mjs +12 -0
  229. package/dist/server/homepage/index.mjs.map +1 -0
  230. package/dist/server/homepage/routes/homepage.js +25 -0
  231. package/dist/server/homepage/routes/homepage.js.map +1 -0
  232. package/dist/server/homepage/routes/homepage.mjs +23 -0
  233. package/dist/server/homepage/routes/homepage.mjs.map +1 -0
  234. package/dist/server/homepage/routes/index.js +10 -0
  235. package/dist/server/homepage/routes/index.js.map +1 -0
  236. package/dist/server/homepage/routes/index.mjs +8 -0
  237. package/dist/server/homepage/routes/index.mjs.map +1 -0
  238. package/dist/server/homepage/services/homepage.js +24 -0
  239. package/dist/server/homepage/services/homepage.js.map +1 -0
  240. package/dist/server/homepage/services/homepage.mjs +22 -0
  241. package/dist/server/homepage/services/homepage.mjs.map +1 -0
  242. package/dist/server/homepage/services/index.js +10 -0
  243. package/dist/server/homepage/services/index.js.map +1 -0
  244. package/dist/server/homepage/services/index.mjs +8 -0
  245. package/dist/server/homepage/services/index.mjs.map +1 -0
  246. package/dist/server/index.js +12 -2333
  247. package/dist/server/index.js.map +1 -1
  248. package/dist/server/index.mjs +7 -2328
  249. package/dist/server/index.mjs.map +1 -1
  250. package/dist/server/middlewares/review-workflows.js +42 -0
  251. package/dist/server/middlewares/review-workflows.js.map +1 -0
  252. package/dist/server/middlewares/review-workflows.mjs +37 -0
  253. package/dist/server/middlewares/review-workflows.mjs.map +1 -0
  254. package/dist/server/migrations/handle-deleted-ct-in-workflows.js +40 -0
  255. package/dist/server/migrations/handle-deleted-ct-in-workflows.js.map +1 -0
  256. package/dist/server/migrations/handle-deleted-ct-in-workflows.mjs +38 -0
  257. package/dist/server/migrations/handle-deleted-ct-in-workflows.mjs.map +1 -0
  258. package/dist/server/migrations/multiple-workflows.js +41 -0
  259. package/dist/server/migrations/multiple-workflows.js.map +1 -0
  260. package/dist/server/migrations/multiple-workflows.mjs +39 -0
  261. package/dist/server/migrations/multiple-workflows.mjs.map +1 -0
  262. package/dist/server/migrations/set-stages-default-color.js +22 -0
  263. package/dist/server/migrations/set-stages-default-color.js.map +1 -0
  264. package/dist/server/migrations/set-stages-default-color.mjs +20 -0
  265. package/dist/server/migrations/set-stages-default-color.mjs.map +1 -0
  266. package/dist/server/migrations/set-stages-roles.js +56 -0
  267. package/dist/server/migrations/set-stages-roles.js.map +1 -0
  268. package/dist/server/migrations/set-stages-roles.mjs +54 -0
  269. package/dist/server/migrations/set-stages-roles.mjs.map +1 -0
  270. package/dist/server/migrations/set-workflow-default-name.js +29 -0
  271. package/dist/server/migrations/set-workflow-default-name.js.map +1 -0
  272. package/dist/server/migrations/set-workflow-default-name.mjs +27 -0
  273. package/dist/server/migrations/set-workflow-default-name.mjs.map +1 -0
  274. package/dist/server/migrations/shorten-stage-attribute.js +45 -0
  275. package/dist/server/migrations/shorten-stage-attribute.js.map +1 -0
  276. package/dist/server/migrations/shorten-stage-attribute.mjs +43 -0
  277. package/dist/server/migrations/shorten-stage-attribute.mjs.map +1 -0
  278. package/dist/server/register.js +116 -0
  279. package/dist/server/register.js.map +1 -0
  280. package/dist/server/register.mjs +114 -0
  281. package/dist/server/register.mjs.map +1 -0
  282. package/dist/server/routes/index.js +12 -0
  283. package/dist/server/routes/index.js.map +1 -0
  284. package/dist/server/routes/index.mjs +10 -0
  285. package/dist/server/routes/index.mjs.map +1 -0
  286. package/dist/server/routes/review-workflows.js +186 -0
  287. package/dist/server/routes/review-workflows.js.map +1 -0
  288. package/dist/server/routes/review-workflows.mjs +184 -0
  289. package/dist/server/routes/review-workflows.mjs.map +1 -0
  290. package/dist/server/routes/utils.js +11 -0
  291. package/dist/server/routes/utils.js.map +1 -0
  292. package/dist/server/routes/utils.mjs +9 -0
  293. package/dist/server/routes/utils.mjs.map +1 -0
  294. package/dist/server/services/assignees.js +68 -0
  295. package/dist/server/services/assignees.js.map +1 -0
  296. package/dist/server/services/assignees.mjs +66 -0
  297. package/dist/server/services/assignees.mjs.map +1 -0
  298. package/dist/server/services/document-service-middleware.js +130 -0
  299. package/dist/server/services/document-service-middleware.js.map +1 -0
  300. package/dist/server/services/document-service-middleware.mjs +128 -0
  301. package/dist/server/services/document-service-middleware.mjs.map +1 -0
  302. package/dist/server/services/index.js +26 -0
  303. package/dist/server/services/index.js.map +1 -0
  304. package/dist/server/services/index.mjs +24 -0
  305. package/dist/server/services/index.mjs.map +1 -0
  306. package/dist/server/services/metrics/index.js +67 -0
  307. package/dist/server/services/metrics/index.js.map +1 -0
  308. package/dist/server/services/metrics/index.mjs +55 -0
  309. package/dist/server/services/metrics/index.mjs.map +1 -0
  310. package/dist/server/services/metrics/weekly-metrics.js +84 -0
  311. package/dist/server/services/metrics/weekly-metrics.js.map +1 -0
  312. package/dist/server/services/metrics/weekly-metrics.mjs +82 -0
  313. package/dist/server/services/metrics/weekly-metrics.mjs.map +1 -0
  314. package/dist/server/services/stage-permissions.js +59 -0
  315. package/dist/server/services/stage-permissions.js.map +1 -0
  316. package/dist/server/services/stage-permissions.mjs +57 -0
  317. package/dist/server/services/stage-permissions.mjs.map +1 -0
  318. package/dist/server/services/stages.js +353 -0
  319. package/dist/server/services/stages.js.map +1 -0
  320. package/dist/server/services/stages.mjs +351 -0
  321. package/dist/server/services/stages.mjs.map +1 -0
  322. package/dist/server/services/validation.js +69 -0
  323. package/dist/server/services/validation.js.map +1 -0
  324. package/dist/server/services/validation.mjs +67 -0
  325. package/dist/server/services/validation.mjs.map +1 -0
  326. package/dist/server/services/workflow-content-types.js +90 -0
  327. package/dist/server/services/workflow-content-types.js.map +1 -0
  328. package/dist/server/services/workflow-content-types.mjs +88 -0
  329. package/dist/server/services/workflow-content-types.mjs.map +1 -0
  330. package/dist/server/services/workflows.js +279 -0
  331. package/dist/server/services/workflows.js.map +1 -0
  332. package/dist/server/services/workflows.mjs +277 -0
  333. package/dist/server/services/workflows.mjs.map +1 -0
  334. package/dist/server/src/controllers/index.d.ts.map +1 -1
  335. package/dist/server/src/homepage/controllers/homepage.d.ts +6 -0
  336. package/dist/server/src/homepage/controllers/homepage.d.ts.map +1 -0
  337. package/dist/server/src/homepage/controllers/index.d.ts +2 -0
  338. package/dist/server/src/homepage/controllers/index.d.ts.map +1 -0
  339. package/dist/server/src/homepage/index.d.ts +15 -0
  340. package/dist/server/src/homepage/index.d.ts.map +1 -0
  341. package/dist/server/src/homepage/routes/homepage.d.ts +4 -0
  342. package/dist/server/src/homepage/routes/homepage.d.ts.map +1 -0
  343. package/dist/server/src/homepage/routes/index.d.ts +4 -0
  344. package/dist/server/src/homepage/routes/index.d.ts.map +1 -0
  345. package/dist/server/src/homepage/services/homepage.d.ts +9 -0
  346. package/dist/server/src/homepage/services/homepage.d.ts.map +1 -0
  347. package/dist/server/src/homepage/services/index.d.ts +8 -0
  348. package/dist/server/src/homepage/services/index.d.ts.map +1 -0
  349. package/dist/server/src/index.d.ts +6 -0
  350. package/dist/server/src/index.d.ts.map +1 -1
  351. package/dist/server/src/routes/index.d.ts +1 -0
  352. package/dist/server/src/routes/index.d.ts.map +1 -1
  353. package/dist/server/src/services/index.d.ts +5 -0
  354. package/dist/server/src/services/index.d.ts.map +1 -1
  355. package/dist/server/utils/index.js +16 -0
  356. package/dist/server/utils/index.js.map +1 -0
  357. package/dist/server/utils/index.mjs +13 -0
  358. package/dist/server/utils/index.mjs.map +1 -0
  359. package/dist/server/utils/review-workflows.js +36 -0
  360. package/dist/server/utils/review-workflows.js.map +1 -0
  361. package/dist/server/utils/review-workflows.mjs +30 -0
  362. package/dist/server/utils/review-workflows.mjs.map +1 -0
  363. package/dist/server/validation/review-workflows.js +71 -0
  364. package/dist/server/validation/review-workflows.js.map +1 -0
  365. package/dist/server/validation/review-workflows.mjs +65 -0
  366. package/dist/server/validation/review-workflows.mjs.map +1 -0
  367. package/dist/shared/contracts/homepage.d.ts +26 -0
  368. package/dist/shared/contracts/homepage.d.ts.map +1 -0
  369. package/package.json +8 -8
  370. package/dist/admin/chunks/Layout-BMBeVPYC.js.map +0 -1
  371. package/dist/admin/chunks/Layout-CVtYAQm6.mjs.map +0 -1
  372. package/dist/admin/chunks/en-BixG7IBu.mjs.map +0 -1
  373. package/dist/admin/chunks/en-C6SESe-Y.js.map +0 -1
  374. package/dist/admin/chunks/id-BVE88ORy.mjs +0 -1420
  375. package/dist/admin/chunks/id-BVE88ORy.mjs.map +0 -1
  376. package/dist/admin/chunks/id-CDTuaHeo.js +0 -1442
  377. package/dist/admin/chunks/id-CDTuaHeo.js.map +0 -1
  378. package/dist/admin/chunks/index-BdonoyEU.js.map +0 -1
  379. package/dist/admin/chunks/index-Bo6RFHMy.mjs.map +0 -1
  380. package/dist/admin/chunks/index-Bwgyfg-u.mjs.map +0 -1
  381. package/dist/admin/chunks/index-o5qgjdDk.js.map +0 -1
  382. package/dist/admin/chunks/purchase-review-workflows-CEP8kvxZ.mjs +0 -53
  383. package/dist/admin/chunks/purchase-review-workflows-CEP8kvxZ.mjs.map +0 -1
  384. package/dist/admin/chunks/purchase-review-workflows-Drlxm8yP.js +0 -55
  385. package/dist/admin/chunks/purchase-review-workflows-Drlxm8yP.js.map +0 -1
  386. package/dist/admin/chunks/router-B0yP_sPs.js.map +0 -1
  387. package/dist/admin/chunks/router-tE19YOje.mjs.map +0 -1
  388. package/dist/admin/chunks/uk-CbRUr1I7.js.map +0 -1
  389. package/dist/admin/chunks/uk-DLlzEBUF.mjs.map +0 -1
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ var utils = require('@strapi/utils');
4
+ var reviewWorkflows = require('../utils/review-workflows.js');
5
+ var workflows = require('../constants/workflows.js');
6
+
7
+ const stageObject = utils.yup.object().shape({
8
+ id: utils.yup.number().integer().min(1),
9
+ name: utils.yup.string().max(255).required(),
10
+ color: utils.yup.string().matches(/^#(?:[0-9a-fA-F]{3}){1,2}$/i),
11
+ permissions: utils.yup.array().of(utils.yup.object().shape({
12
+ role: utils.yup.number().integer().min(1).required(),
13
+ action: utils.yup.string().oneOf([
14
+ workflows.STAGE_TRANSITION_UID
15
+ ]).required(),
16
+ actionParameters: utils.yup.object().shape({
17
+ from: utils.yup.number().integer().min(1).required(),
18
+ to: utils.yup.number().integer().min(1)
19
+ })
20
+ }))
21
+ });
22
+ const validateUpdateStageOnEntitySchema = utils.yup.object().shape({
23
+ id: utils.yup.number().integer().min(1).required()
24
+ }).required();
25
+ const validateContentTypes = utils.yup.array().of(utils.yup.string().test({
26
+ name: 'content-type-exists',
27
+ message: (value)=>`Content type ${value.originalValue} does not exist`,
28
+ test (uid) {
29
+ // Warning; we use the strapi global - to avoid that, it would need to refactor how
30
+ // we generate validation function by using a factory with the strapi instance as parameter.
31
+ return !!strapi.getModel(uid);
32
+ }
33
+ }).test({
34
+ name: 'content-type-review-workflow-enabled',
35
+ message: (value)=>`Content type ${value.originalValue} does not have review workflow enabled`,
36
+ test (uid) {
37
+ const model = strapi.getModel(uid);
38
+ // It's not a valid content type if it doesn't have the stage attribute
39
+ return reviewWorkflows.hasStageAttribute(model);
40
+ }
41
+ }));
42
+ const validateWorkflowCreateSchema = utils.yup.object().shape({
43
+ name: utils.yup.string().max(255).min(1, 'Workflow name can not be empty').required(),
44
+ stages: utils.yup.array().of(stageObject)// @ts-expect-error - add unique property into the yup namespace typing
45
+ .uniqueProperty('name', 'Stage name must be unique').min(1, 'Can not create a workflow without stages').max(200, 'Can not have more than 200 stages').required('Can not create a workflow without stages'),
46
+ contentTypes: validateContentTypes,
47
+ stageRequiredToPublishName: utils.yup.string().min(1).nullable()
48
+ });
49
+ const validateWorkflowUpdateSchema = utils.yup.object().shape({
50
+ name: utils.yup.string().max(255).min(1, 'Workflow name can not be empty'),
51
+ stages: utils.yup.array().of(stageObject)// @ts-expect-error - add unique property into the yup namespace typing
52
+ .uniqueProperty('name', 'Stage name must be unique').min(1, 'Can not update a workflow without stages').max(200, 'Can not have more than 200 stages'),
53
+ contentTypes: validateContentTypes,
54
+ stageRequiredToPublishName: utils.yup.string().min(1).nullable()
55
+ });
56
+ const validateUpdateAssigneeOnEntitySchema = utils.yup.object().shape({
57
+ id: utils.yup.number().integer().min(1).nullable()
58
+ }).required();
59
+ const validateLocaleSchema = utils.yup.string().nullable();
60
+ const validateWorkflowCreate = utils.validateYupSchema(validateWorkflowCreateSchema);
61
+ const validateUpdateStageOnEntity = utils.validateYupSchema(validateUpdateStageOnEntitySchema);
62
+ const validateUpdateAssigneeOnEntity = utils.validateYupSchema(validateUpdateAssigneeOnEntitySchema);
63
+ const validateWorkflowUpdate = utils.validateYupSchema(validateWorkflowUpdateSchema);
64
+ const validateLocale = utils.validateYupSchema(validateLocaleSchema);
65
+
66
+ exports.validateLocale = validateLocale;
67
+ exports.validateUpdateAssigneeOnEntity = validateUpdateAssigneeOnEntity;
68
+ exports.validateUpdateStageOnEntity = validateUpdateStageOnEntity;
69
+ exports.validateWorkflowCreate = validateWorkflowCreate;
70
+ exports.validateWorkflowUpdate = validateWorkflowUpdate;
71
+ //# sourceMappingURL=review-workflows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review-workflows.js","sources":["../../../server/src/validation/review-workflows.ts"],"sourcesContent":["/* eslint-disable func-names */\nimport { yup, validateYupSchema } from '@strapi/utils';\nimport { hasStageAttribute } from '../utils/review-workflows';\nimport { STAGE_TRANSITION_UID } from '../constants/workflows';\n\nconst stageObject = yup.object().shape({\n id: yup.number().integer().min(1),\n name: yup.string().max(255).required(),\n color: yup.string().matches(/^#(?:[0-9a-fA-F]{3}){1,2}$/i), // hex color\n permissions: yup.array().of(\n yup.object().shape({\n role: yup.number().integer().min(1).required(),\n action: yup.string().oneOf([STAGE_TRANSITION_UID]).required(),\n actionParameters: yup.object().shape({\n from: yup.number().integer().min(1).required(),\n to: yup.number().integer().min(1),\n }),\n })\n ),\n});\n\nconst validateUpdateStageOnEntitySchema = yup\n .object()\n .shape({\n id: yup.number().integer().min(1).required(),\n })\n .required();\n\nconst validateContentTypes = yup.array().of(\n yup\n .string()\n .test({\n name: 'content-type-exists',\n message: (value) => `Content type ${value.originalValue} does not exist`,\n test(uid: any) {\n // Warning; we use the strapi global - to avoid that, it would need to refactor how\n // we generate validation function by using a factory with the strapi instance as parameter.\n return !!strapi.getModel(uid);\n },\n })\n .test({\n name: 'content-type-review-workflow-enabled',\n message: (value) =>\n `Content type ${value.originalValue} does not have review workflow enabled`,\n test(uid: any) {\n const model = strapi.getModel(uid);\n\n // It's not a valid content type if it doesn't have the stage attribute\n return hasStageAttribute(model);\n },\n })\n);\n\nconst validateWorkflowCreateSchema = yup.object().shape({\n name: yup.string().max(255).min(1, 'Workflow name can not be empty').required(),\n stages: yup\n .array()\n .of(stageObject)\n // @ts-expect-error - add unique property into the yup namespace typing\n .uniqueProperty('name', 'Stage name must be unique')\n .min(1, 'Can not create a workflow without stages')\n .max(200, 'Can not have more than 200 stages')\n .required('Can not create a workflow without stages'),\n contentTypes: validateContentTypes,\n stageRequiredToPublishName: yup.string().min(1).nullable(),\n});\n\nconst validateWorkflowUpdateSchema = yup.object().shape({\n name: yup.string().max(255).min(1, 'Workflow name can not be empty'),\n stages: yup\n .array()\n .of(stageObject)\n // @ts-expect-error - add unique property into the yup namespace typing\n .uniqueProperty('name', 'Stage name must be unique')\n .min(1, 'Can not update a workflow without stages')\n .max(200, 'Can not have more than 200 stages'),\n contentTypes: validateContentTypes,\n stageRequiredToPublishName: yup.string().min(1).nullable(),\n});\n\nconst validateUpdateAssigneeOnEntitySchema = yup\n .object()\n .shape({\n id: yup.number().integer().min(1).nullable(),\n })\n .required();\n\nconst validateLocaleSchema = yup.string().nullable();\n\nexport const validateWorkflowCreate = validateYupSchema(validateWorkflowCreateSchema);\nexport const validateUpdateStageOnEntity = validateYupSchema(validateUpdateStageOnEntitySchema);\nexport const validateUpdateAssigneeOnEntity = validateYupSchema(\n validateUpdateAssigneeOnEntitySchema\n);\nexport const validateWorkflowUpdate = validateYupSchema(validateWorkflowUpdateSchema);\nexport const validateLocale = validateYupSchema(validateLocaleSchema);\n\nexport default {\n validateWorkflowCreate,\n validateUpdateStageOnEntity,\n validateUpdateAssigneeOnEntity,\n validateWorkflowUpdate,\n validateLocale,\n};\n"],"names":["stageObject","yup","object","shape","id","number","integer","min","name","string","max","required","color","matches","permissions","array","of","role","action","oneOf","STAGE_TRANSITION_UID","actionParameters","from","to","validateUpdateStageOnEntitySchema","validateContentTypes","test","message","value","originalValue","uid","strapi","getModel","model","hasStageAttribute","validateWorkflowCreateSchema","stages","uniqueProperty","contentTypes","stageRequiredToPublishName","nullable","validateWorkflowUpdateSchema","validateUpdateAssigneeOnEntitySchema","validateLocaleSchema","validateWorkflowCreate","validateYupSchema","validateUpdateStageOnEntity","validateUpdateAssigneeOnEntity","validateWorkflowUpdate","validateLocale"],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { yup, validateYupSchema } from '@strapi/utils';
2
+ import { hasStageAttribute } from '../utils/review-workflows.mjs';
3
+ import { STAGE_TRANSITION_UID } from '../constants/workflows.mjs';
4
+
5
+ const stageObject = yup.object().shape({
6
+ id: yup.number().integer().min(1),
7
+ name: yup.string().max(255).required(),
8
+ color: yup.string().matches(/^#(?:[0-9a-fA-F]{3}){1,2}$/i),
9
+ permissions: yup.array().of(yup.object().shape({
10
+ role: yup.number().integer().min(1).required(),
11
+ action: yup.string().oneOf([
12
+ STAGE_TRANSITION_UID
13
+ ]).required(),
14
+ actionParameters: yup.object().shape({
15
+ from: yup.number().integer().min(1).required(),
16
+ to: yup.number().integer().min(1)
17
+ })
18
+ }))
19
+ });
20
+ const validateUpdateStageOnEntitySchema = yup.object().shape({
21
+ id: yup.number().integer().min(1).required()
22
+ }).required();
23
+ const validateContentTypes = yup.array().of(yup.string().test({
24
+ name: 'content-type-exists',
25
+ message: (value)=>`Content type ${value.originalValue} does not exist`,
26
+ test (uid) {
27
+ // Warning; we use the strapi global - to avoid that, it would need to refactor how
28
+ // we generate validation function by using a factory with the strapi instance as parameter.
29
+ return !!strapi.getModel(uid);
30
+ }
31
+ }).test({
32
+ name: 'content-type-review-workflow-enabled',
33
+ message: (value)=>`Content type ${value.originalValue} does not have review workflow enabled`,
34
+ test (uid) {
35
+ const model = strapi.getModel(uid);
36
+ // It's not a valid content type if it doesn't have the stage attribute
37
+ return hasStageAttribute(model);
38
+ }
39
+ }));
40
+ const validateWorkflowCreateSchema = yup.object().shape({
41
+ name: yup.string().max(255).min(1, 'Workflow name can not be empty').required(),
42
+ stages: yup.array().of(stageObject)// @ts-expect-error - add unique property into the yup namespace typing
43
+ .uniqueProperty('name', 'Stage name must be unique').min(1, 'Can not create a workflow without stages').max(200, 'Can not have more than 200 stages').required('Can not create a workflow without stages'),
44
+ contentTypes: validateContentTypes,
45
+ stageRequiredToPublishName: yup.string().min(1).nullable()
46
+ });
47
+ const validateWorkflowUpdateSchema = yup.object().shape({
48
+ name: yup.string().max(255).min(1, 'Workflow name can not be empty'),
49
+ stages: yup.array().of(stageObject)// @ts-expect-error - add unique property into the yup namespace typing
50
+ .uniqueProperty('name', 'Stage name must be unique').min(1, 'Can not update a workflow without stages').max(200, 'Can not have more than 200 stages'),
51
+ contentTypes: validateContentTypes,
52
+ stageRequiredToPublishName: yup.string().min(1).nullable()
53
+ });
54
+ const validateUpdateAssigneeOnEntitySchema = yup.object().shape({
55
+ id: yup.number().integer().min(1).nullable()
56
+ }).required();
57
+ const validateLocaleSchema = yup.string().nullable();
58
+ const validateWorkflowCreate = validateYupSchema(validateWorkflowCreateSchema);
59
+ const validateUpdateStageOnEntity = validateYupSchema(validateUpdateStageOnEntitySchema);
60
+ const validateUpdateAssigneeOnEntity = validateYupSchema(validateUpdateAssigneeOnEntitySchema);
61
+ const validateWorkflowUpdate = validateYupSchema(validateWorkflowUpdateSchema);
62
+ const validateLocale = validateYupSchema(validateLocaleSchema);
63
+
64
+ export { validateLocale, validateUpdateAssigneeOnEntity, validateUpdateStageOnEntity, validateWorkflowCreate, validateWorkflowUpdate };
65
+ //# sourceMappingURL=review-workflows.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review-workflows.mjs","sources":["../../../server/src/validation/review-workflows.ts"],"sourcesContent":["/* eslint-disable func-names */\nimport { yup, validateYupSchema } from '@strapi/utils';\nimport { hasStageAttribute } from '../utils/review-workflows';\nimport { STAGE_TRANSITION_UID } from '../constants/workflows';\n\nconst stageObject = yup.object().shape({\n id: yup.number().integer().min(1),\n name: yup.string().max(255).required(),\n color: yup.string().matches(/^#(?:[0-9a-fA-F]{3}){1,2}$/i), // hex color\n permissions: yup.array().of(\n yup.object().shape({\n role: yup.number().integer().min(1).required(),\n action: yup.string().oneOf([STAGE_TRANSITION_UID]).required(),\n actionParameters: yup.object().shape({\n from: yup.number().integer().min(1).required(),\n to: yup.number().integer().min(1),\n }),\n })\n ),\n});\n\nconst validateUpdateStageOnEntitySchema = yup\n .object()\n .shape({\n id: yup.number().integer().min(1).required(),\n })\n .required();\n\nconst validateContentTypes = yup.array().of(\n yup\n .string()\n .test({\n name: 'content-type-exists',\n message: (value) => `Content type ${value.originalValue} does not exist`,\n test(uid: any) {\n // Warning; we use the strapi global - to avoid that, it would need to refactor how\n // we generate validation function by using a factory with the strapi instance as parameter.\n return !!strapi.getModel(uid);\n },\n })\n .test({\n name: 'content-type-review-workflow-enabled',\n message: (value) =>\n `Content type ${value.originalValue} does not have review workflow enabled`,\n test(uid: any) {\n const model = strapi.getModel(uid);\n\n // It's not a valid content type if it doesn't have the stage attribute\n return hasStageAttribute(model);\n },\n })\n);\n\nconst validateWorkflowCreateSchema = yup.object().shape({\n name: yup.string().max(255).min(1, 'Workflow name can not be empty').required(),\n stages: yup\n .array()\n .of(stageObject)\n // @ts-expect-error - add unique property into the yup namespace typing\n .uniqueProperty('name', 'Stage name must be unique')\n .min(1, 'Can not create a workflow without stages')\n .max(200, 'Can not have more than 200 stages')\n .required('Can not create a workflow without stages'),\n contentTypes: validateContentTypes,\n stageRequiredToPublishName: yup.string().min(1).nullable(),\n});\n\nconst validateWorkflowUpdateSchema = yup.object().shape({\n name: yup.string().max(255).min(1, 'Workflow name can not be empty'),\n stages: yup\n .array()\n .of(stageObject)\n // @ts-expect-error - add unique property into the yup namespace typing\n .uniqueProperty('name', 'Stage name must be unique')\n .min(1, 'Can not update a workflow without stages')\n .max(200, 'Can not have more than 200 stages'),\n contentTypes: validateContentTypes,\n stageRequiredToPublishName: yup.string().min(1).nullable(),\n});\n\nconst validateUpdateAssigneeOnEntitySchema = yup\n .object()\n .shape({\n id: yup.number().integer().min(1).nullable(),\n })\n .required();\n\nconst validateLocaleSchema = yup.string().nullable();\n\nexport const validateWorkflowCreate = validateYupSchema(validateWorkflowCreateSchema);\nexport const validateUpdateStageOnEntity = validateYupSchema(validateUpdateStageOnEntitySchema);\nexport const validateUpdateAssigneeOnEntity = validateYupSchema(\n validateUpdateAssigneeOnEntitySchema\n);\nexport const validateWorkflowUpdate = validateYupSchema(validateWorkflowUpdateSchema);\nexport const validateLocale = validateYupSchema(validateLocaleSchema);\n\nexport default {\n validateWorkflowCreate,\n validateUpdateStageOnEntity,\n validateUpdateAssigneeOnEntity,\n validateWorkflowUpdate,\n validateLocale,\n};\n"],"names":["stageObject","yup","object","shape","id","number","integer","min","name","string","max","required","color","matches","permissions","array","of","role","action","oneOf","STAGE_TRANSITION_UID","actionParameters","from","to","validateUpdateStageOnEntitySchema","validateContentTypes","test","message","value","originalValue","uid","strapi","getModel","model","hasStageAttribute","validateWorkflowCreateSchema","stages","uniqueProperty","contentTypes","stageRequiredToPublishName","nullable","validateWorkflowUpdateSchema","validateUpdateAssigneeOnEntitySchema","validateLocaleSchema","validateWorkflowCreate","validateYupSchema","validateUpdateStageOnEntity","validateUpdateAssigneeOnEntity","validateWorkflowUpdate","validateLocale"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { errors } from '@strapi/utils';
2
+ import type { Struct, UID } from '@strapi/types';
3
+ export interface RecentDocument {
4
+ kind: Struct.ContentTypeKind;
5
+ contentTypeUid: UID.ContentType;
6
+ contentTypeDisplayName: string;
7
+ documentId: string;
8
+ locale: string | null;
9
+ status?: 'draft' | 'published' | 'modified';
10
+ title: string;
11
+ updatedAt: Date;
12
+ publishedAt?: Date | null;
13
+ strapi_stage?: {
14
+ color?: string;
15
+ name: string;
16
+ };
17
+ }
18
+ export declare namespace GetRecentlyAssignedDocuments {
19
+ interface Request {
20
+ body: {};
21
+ }
22
+ interface Response {
23
+ data: RecentDocument[];
24
+ error?: errors.ApplicationError;
25
+ }
26
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"homepage.d.ts","sourceRoot":"","sources":["../../../shared/contracts/homepage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC;IAC7B,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC;IAChC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,MAAM,CAAC,OAAO,WAAW,4BAA4B,CAAC;IACpD,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;KACV;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/review-workflows",
3
- "version": "0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b",
3
+ "version": "0.0.0-next.e7ae51b01f78ddeaa09c4aa3e3882f466a5b3188",
4
4
  "description": "Review workflows for your content",
5
5
  "repository": {
6
6
  "type": "git",
@@ -57,9 +57,9 @@
57
57
  },
58
58
  "dependencies": {
59
59
  "@reduxjs/toolkit": "1.9.7",
60
- "@strapi/design-system": "2.0.0-rc.18",
61
- "@strapi/icons": "2.0.0-rc.18",
62
- "@strapi/utils": "0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b",
60
+ "@strapi/design-system": "2.0.1",
61
+ "@strapi/icons": "2.0.1",
62
+ "@strapi/utils": "0.0.0-next.e7ae51b01f78ddeaa09c4aa3e3882f466a5b3188",
63
63
  "fractional-indexing": "3.2.0",
64
64
  "react-dnd": "16.0.1",
65
65
  "react-dnd-html5-backend": "16.0.1",
@@ -69,9 +69,9 @@
69
69
  "yup": "0.32.9"
70
70
  },
71
71
  "devDependencies": {
72
- "@strapi/admin": "0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b",
73
- "@strapi/content-manager": "0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b",
74
- "@strapi/types": "0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b",
72
+ "@strapi/admin": "0.0.0-next.e7ae51b01f78ddeaa09c4aa3e3882f466a5b3188",
73
+ "@strapi/content-manager": "0.0.0-next.e7ae51b01f78ddeaa09c4aa3e3882f466a5b3188",
74
+ "@strapi/types": "0.0.0-next.e7ae51b01f78ddeaa09c4aa3e3882f466a5b3188",
75
75
  "@testing-library/react": "15.0.7",
76
76
  "msw": "1.3.0",
77
77
  "react": "18.3.1",
@@ -88,7 +88,7 @@
88
88
  "styled-components": "^6.0.0"
89
89
  },
90
90
  "engines": {
91
- "node": ">=18.0.0 <=22.x.x",
91
+ "node": ">=20.0.0 <=24.x.x",
92
92
  "npm": ">=6.0.0"
93
93
  },
94
94
  "strapi": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"Layout-BMBeVPYC.js","sources":["../../../admin/src/routes/settings/hooks/useReviewWorkflows.ts","../../../admin/src/routes/settings/constants.ts","../../../admin/src/routes/settings/components/StageDragPreview.tsx","../../../admin/src/routes/settings/components/Layout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useAPIErrorHandler, useNotification } from '@strapi/admin/strapi-admin';\nimport { type MessageDescriptor, useIntl } from 'react-intl';\n\nimport {\n GetWorkflowsParams,\n useCreateWorkflowMutation,\n useDeleteWorkflowMutation,\n useGetWorkflowsQuery,\n useUpdateWorkflowMutation,\n} from '../../../services/settings';\n\nimport type { Create, Update } from '../../../../../shared/contracts/review-workflows';\n\nconst DEFAULT_UNEXPECTED_ERROR_MSG = {\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again',\n} satisfies MessageDescriptor;\n\ntype UseReviewWorkflowsArgs = GetWorkflowsParams & {\n skip?: boolean;\n};\n\nconst useReviewWorkflows = (params: UseReviewWorkflowsArgs = {}) => {\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { skip = false, ...queryParams } = params;\n\n const { data, isLoading, error } = useGetWorkflowsQuery(\n {\n populate: ['stages', 'stageRequiredToPublish'],\n ...queryParams,\n },\n {\n skip,\n }\n );\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n const [createWorkflow] = useCreateWorkflowMutation();\n const create = React.useCallback(\n async (data: Create.Request['body']['data']) => {\n try {\n const res = await createWorkflow({ data });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return res;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'actions.created', defaultMessage: 'Created workflow' }),\n });\n\n return res;\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(DEFAULT_UNEXPECTED_ERROR_MSG),\n });\n\n throw err;\n }\n },\n [createWorkflow, formatAPIError, formatMessage, toggleNotification]\n );\n\n const [updateWorkflow] = useUpdateWorkflowMutation();\n const update = React.useCallback(\n async (id: string, data: Update.Request['body']['data']) => {\n try {\n const res = await updateWorkflow({ id, data });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return res;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'actions.updated', defaultMessage: 'Updated workflow' }),\n });\n\n return res;\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(DEFAULT_UNEXPECTED_ERROR_MSG),\n });\n\n throw err;\n }\n },\n [formatAPIError, formatMessage, toggleNotification, updateWorkflow]\n );\n\n const [deleteWorkflow] = useDeleteWorkflowMutation();\n const deleteAction = React.useCallback(\n async (id: string) => {\n try {\n const res = await deleteWorkflow({ id });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'actions.deleted', defaultMessage: 'Deleted workflow' }),\n });\n\n return res.data;\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(DEFAULT_UNEXPECTED_ERROR_MSG),\n });\n\n throw err;\n }\n },\n [deleteWorkflow, formatAPIError, formatMessage, toggleNotification]\n );\n\n const { workflows = [], meta } = data ?? {};\n\n return {\n // meta contains e.g. the total of all workflows. we can not use\n // the pagination object here, because the list is not paginated.\n meta,\n workflows,\n isLoading,\n error,\n create,\n delete: deleteAction,\n update,\n };\n};\n\nexport { useReviewWorkflows };\n","export type DragDropTypes = 'stage';\n\nexport const DRAG_DROP_TYPES: Record<Uppercase<DragDropTypes>, DragDropTypes> = {\n STAGE: 'stage',\n};\n","import { Flex, Typography } from '@strapi/design-system';\nimport { CaretDown } from '@strapi/icons';\n\ninterface StageDragPreviewType {\n name: string | null;\n}\n\nconst StageDragPreview = ({ name }: StageDragPreviewType) => {\n return (\n <Flex\n background=\"primary100\"\n borderStyle=\"dashed\"\n borderColor=\"primary600\"\n borderWidth=\"1px\"\n gap={3}\n hasRadius\n padding={3}\n shadow=\"tableShadow\"\n width=\"30rem\"\n >\n <Flex\n alignItems=\"center\"\n background=\"neutral200\"\n borderRadius=\"50%\"\n height={6}\n justifyContent=\"center\"\n width={6}\n >\n <CaretDown width=\"0.8rem\" fill=\"neutral600\" />\n </Flex>\n\n <Typography fontWeight=\"bold\">{name}</Typography>\n </Flex>\n );\n};\n\nexport { StageDragPreview };\nexport type { StageDragPreviewType };\n","import * as React from 'react';\n\nimport { Page, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box } from '@strapi/design-system';\nimport { XYCoord, useDragLayer } from 'react-dnd';\nimport { useIntl } from 'react-intl';\n\nimport { DRAG_DROP_TYPES } from '../constants';\n\nimport { StageDragPreview } from './StageDragPreview';\n\nfunction getStyle(\n initialOffset: XYCoord | null,\n currentOffset: XYCoord | null,\n mouseOffset: XYCoord | null\n) {\n if (!initialOffset || !currentOffset || !mouseOffset) {\n return { display: 'none' };\n }\n\n const { x, y } = mouseOffset;\n\n return {\n transform: `translate(${x}px, ${y}px)`,\n };\n}\n\nconst DragLayerRendered = () => {\n const { itemType, isDragging, item, initialOffset, currentOffset, mouseOffset } = useDragLayer(\n (monitor) => ({\n item: monitor.getItem(),\n itemType: monitor.getItemType(),\n initialOffset: monitor.getInitialSourceClientOffset(),\n currentOffset: monitor.getSourceClientOffset(),\n isDragging: monitor.isDragging(),\n mouseOffset: monitor.getClientOffset(),\n })\n );\n\n if (!isDragging || itemType !== DRAG_DROP_TYPES.STAGE) {\n return null;\n }\n\n return (\n <Box\n height=\"100%\"\n left={0}\n position=\"fixed\"\n pointerEvents=\"none\"\n top={0}\n zIndex={100}\n width=\"100%\"\n >\n <Box style={getStyle(initialOffset, currentOffset, mouseOffset)}>\n <StageDragPreview name={typeof item.item === 'string' ? item.item : null} />;\n </Box>\n </Box>\n );\n};\n\nconst Root: React.FC<React.PropsWithChildren> = ({ children }) => {\n return (\n <Page.Main>\n <Layouts.Content>{children}</Layouts.Content>\n </Page.Main>\n );\n};\n\ninterface HeaderProps {\n title: string;\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n}\n\nconst Header: React.FC<HeaderProps> = ({ title, subtitle, navigationAction, primaryAction }) => {\n const { formatMessage } = useIntl();\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: title,\n }\n )}\n </Page.Title>\n <Layouts.BaseHeader\n navigationAction={navigationAction}\n primaryAction={primaryAction}\n title={title}\n subtitle={subtitle}\n />\n </>\n );\n};\n\nexport { DragLayerRendered, Header, Root };\n"],"names":["DEFAULT_UNEXPECTED_ERROR_MSG","id","defaultMessage","useReviewWorkflows","params","toggleNotification","useNotification","formatMessage","useIntl","_unstableFormatAPIError","formatAPIError","useAPIErrorHandler","skip","queryParams","data","isLoading","error","useGetWorkflowsQuery","populate","React","useEffect","type","message","createWorkflow","useCreateWorkflowMutation","create","useCallback","res","err","updateWorkflow","useUpdateWorkflowMutation","update","deleteWorkflow","useDeleteWorkflowMutation","deleteAction","workflows","meta","delete","DRAG_DROP_TYPES","STAGE","StageDragPreview","name","_jsxs","Flex","background","borderStyle","borderColor","borderWidth","gap","hasRadius","padding","shadow","width","_jsx","alignItems","borderRadius","height","justifyContent","CaretDown","fill","Typography","fontWeight","getStyle","initialOffset","currentOffset","mouseOffset","display","x","y","transform","DragLayerRendered","itemType","isDragging","item","useDragLayer","monitor","getItem","getItemType","getInitialSourceClientOffset","getSourceClientOffset","getClientOffset","Box","left","position","pointerEvents","top","zIndex","style","Root","children","Page","Main","Layouts","Content","Header","title","subtitle","navigationAction","primaryAction","_Fragment","Title","BaseHeader"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Layout-CVtYAQm6.mjs","sources":["../../../admin/src/routes/settings/hooks/useReviewWorkflows.ts","../../../admin/src/routes/settings/constants.ts","../../../admin/src/routes/settings/components/StageDragPreview.tsx","../../../admin/src/routes/settings/components/Layout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useAPIErrorHandler, useNotification } from '@strapi/admin/strapi-admin';\nimport { type MessageDescriptor, useIntl } from 'react-intl';\n\nimport {\n GetWorkflowsParams,\n useCreateWorkflowMutation,\n useDeleteWorkflowMutation,\n useGetWorkflowsQuery,\n useUpdateWorkflowMutation,\n} from '../../../services/settings';\n\nimport type { Create, Update } from '../../../../../shared/contracts/review-workflows';\n\nconst DEFAULT_UNEXPECTED_ERROR_MSG = {\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again',\n} satisfies MessageDescriptor;\n\ntype UseReviewWorkflowsArgs = GetWorkflowsParams & {\n skip?: boolean;\n};\n\nconst useReviewWorkflows = (params: UseReviewWorkflowsArgs = {}) => {\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { skip = false, ...queryParams } = params;\n\n const { data, isLoading, error } = useGetWorkflowsQuery(\n {\n populate: ['stages', 'stageRequiredToPublish'],\n ...queryParams,\n },\n {\n skip,\n }\n );\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n const [createWorkflow] = useCreateWorkflowMutation();\n const create = React.useCallback(\n async (data: Create.Request['body']['data']) => {\n try {\n const res = await createWorkflow({ data });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return res;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'actions.created', defaultMessage: 'Created workflow' }),\n });\n\n return res;\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(DEFAULT_UNEXPECTED_ERROR_MSG),\n });\n\n throw err;\n }\n },\n [createWorkflow, formatAPIError, formatMessage, toggleNotification]\n );\n\n const [updateWorkflow] = useUpdateWorkflowMutation();\n const update = React.useCallback(\n async (id: string, data: Update.Request['body']['data']) => {\n try {\n const res = await updateWorkflow({ id, data });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return res;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'actions.updated', defaultMessage: 'Updated workflow' }),\n });\n\n return res;\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(DEFAULT_UNEXPECTED_ERROR_MSG),\n });\n\n throw err;\n }\n },\n [formatAPIError, formatMessage, toggleNotification, updateWorkflow]\n );\n\n const [deleteWorkflow] = useDeleteWorkflowMutation();\n const deleteAction = React.useCallback(\n async (id: string) => {\n try {\n const res = await deleteWorkflow({ id });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'actions.deleted', defaultMessage: 'Deleted workflow' }),\n });\n\n return res.data;\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(DEFAULT_UNEXPECTED_ERROR_MSG),\n });\n\n throw err;\n }\n },\n [deleteWorkflow, formatAPIError, formatMessage, toggleNotification]\n );\n\n const { workflows = [], meta } = data ?? {};\n\n return {\n // meta contains e.g. the total of all workflows. we can not use\n // the pagination object here, because the list is not paginated.\n meta,\n workflows,\n isLoading,\n error,\n create,\n delete: deleteAction,\n update,\n };\n};\n\nexport { useReviewWorkflows };\n","export type DragDropTypes = 'stage';\n\nexport const DRAG_DROP_TYPES: Record<Uppercase<DragDropTypes>, DragDropTypes> = {\n STAGE: 'stage',\n};\n","import { Flex, Typography } from '@strapi/design-system';\nimport { CaretDown } from '@strapi/icons';\n\ninterface StageDragPreviewType {\n name: string | null;\n}\n\nconst StageDragPreview = ({ name }: StageDragPreviewType) => {\n return (\n <Flex\n background=\"primary100\"\n borderStyle=\"dashed\"\n borderColor=\"primary600\"\n borderWidth=\"1px\"\n gap={3}\n hasRadius\n padding={3}\n shadow=\"tableShadow\"\n width=\"30rem\"\n >\n <Flex\n alignItems=\"center\"\n background=\"neutral200\"\n borderRadius=\"50%\"\n height={6}\n justifyContent=\"center\"\n width={6}\n >\n <CaretDown width=\"0.8rem\" fill=\"neutral600\" />\n </Flex>\n\n <Typography fontWeight=\"bold\">{name}</Typography>\n </Flex>\n );\n};\n\nexport { StageDragPreview };\nexport type { StageDragPreviewType };\n","import * as React from 'react';\n\nimport { Page, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box } from '@strapi/design-system';\nimport { XYCoord, useDragLayer } from 'react-dnd';\nimport { useIntl } from 'react-intl';\n\nimport { DRAG_DROP_TYPES } from '../constants';\n\nimport { StageDragPreview } from './StageDragPreview';\n\nfunction getStyle(\n initialOffset: XYCoord | null,\n currentOffset: XYCoord | null,\n mouseOffset: XYCoord | null\n) {\n if (!initialOffset || !currentOffset || !mouseOffset) {\n return { display: 'none' };\n }\n\n const { x, y } = mouseOffset;\n\n return {\n transform: `translate(${x}px, ${y}px)`,\n };\n}\n\nconst DragLayerRendered = () => {\n const { itemType, isDragging, item, initialOffset, currentOffset, mouseOffset } = useDragLayer(\n (monitor) => ({\n item: monitor.getItem(),\n itemType: monitor.getItemType(),\n initialOffset: monitor.getInitialSourceClientOffset(),\n currentOffset: monitor.getSourceClientOffset(),\n isDragging: monitor.isDragging(),\n mouseOffset: monitor.getClientOffset(),\n })\n );\n\n if (!isDragging || itemType !== DRAG_DROP_TYPES.STAGE) {\n return null;\n }\n\n return (\n <Box\n height=\"100%\"\n left={0}\n position=\"fixed\"\n pointerEvents=\"none\"\n top={0}\n zIndex={100}\n width=\"100%\"\n >\n <Box style={getStyle(initialOffset, currentOffset, mouseOffset)}>\n <StageDragPreview name={typeof item.item === 'string' ? item.item : null} />;\n </Box>\n </Box>\n );\n};\n\nconst Root: React.FC<React.PropsWithChildren> = ({ children }) => {\n return (\n <Page.Main>\n <Layouts.Content>{children}</Layouts.Content>\n </Page.Main>\n );\n};\n\ninterface HeaderProps {\n title: string;\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n}\n\nconst Header: React.FC<HeaderProps> = ({ title, subtitle, navigationAction, primaryAction }) => {\n const { formatMessage } = useIntl();\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: title,\n }\n )}\n </Page.Title>\n <Layouts.BaseHeader\n navigationAction={navigationAction}\n primaryAction={primaryAction}\n title={title}\n subtitle={subtitle}\n />\n </>\n );\n};\n\nexport { DragLayerRendered, Header, Root };\n"],"names":["DEFAULT_UNEXPECTED_ERROR_MSG","id","defaultMessage","useReviewWorkflows","params","toggleNotification","useNotification","formatMessage","useIntl","_unstableFormatAPIError","formatAPIError","useAPIErrorHandler","skip","queryParams","data","isLoading","error","useGetWorkflowsQuery","populate","React","useEffect","type","message","createWorkflow","useCreateWorkflowMutation","create","useCallback","res","err","updateWorkflow","useUpdateWorkflowMutation","update","deleteWorkflow","useDeleteWorkflowMutation","deleteAction","workflows","meta","delete","DRAG_DROP_TYPES","STAGE","StageDragPreview","name","_jsxs","Flex","background","borderStyle","borderColor","borderWidth","gap","hasRadius","padding","shadow","width","_jsx","alignItems","borderRadius","height","justifyContent","CaretDown","fill","Typography","fontWeight","getStyle","initialOffset","currentOffset","mouseOffset","display","x","y","transform","DragLayerRendered","itemType","isDragging","item","useDragLayer","monitor","getItem","getItemType","getInitialSourceClientOffset","getSourceClientOffset","getClientOffset","Box","left","position","pointerEvents","top","zIndex","style","Root","children","Page","Main","Layouts","Content","Header","title","subtitle","navigationAction","primaryAction","_Fragment","Title","BaseHeader"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-BixG7IBu.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-C6SESe-Y.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}