@strapi/admin 5.0.0-beta.9 → 5.0.0-rc.1

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 (305) hide show
  1. package/LICENSE +18 -3
  2. package/dist/admin/{AdminSeatInfo-cqB8nHFZ.js → AdminSeatInfo-E8azTFQY.js} +5 -5
  3. package/dist/admin/AdminSeatInfo-E8azTFQY.js.map +1 -0
  4. package/dist/admin/{AdminSeatInfo-_UxgNKbX.mjs → AdminSeatInfo-Q_hUNC5B.mjs} +5 -5
  5. package/dist/admin/AdminSeatInfo-Q_hUNC5B.mjs.map +1 -0
  6. package/dist/admin/{ApplicationInfoPage-6PD2owY8.mjs → ApplicationInfoPage-FvuI2dqs.mjs} +153 -158
  7. package/dist/admin/ApplicationInfoPage-FvuI2dqs.mjs.map +1 -0
  8. package/dist/admin/{ApplicationInfoPage-S18loXTF.js → ApplicationInfoPage-ODW6epX5.js} +161 -166
  9. package/dist/admin/ApplicationInfoPage-ODW6epX5.js.map +1 -0
  10. package/dist/admin/{AuthResponse-Y4lblDuD.mjs → AuthResponse-J8A48xdo.mjs} +9 -5
  11. package/dist/admin/AuthResponse-J8A48xdo.mjs.map +1 -0
  12. package/dist/admin/{AuthResponse-EiDRhJY8.js → AuthResponse-KlTDmm2i.js} +10 -6
  13. package/dist/admin/AuthResponse-KlTDmm2i.js.map +1 -0
  14. package/dist/admin/{AuthenticatedLayout-gOaUXjO8.mjs → AuthenticatedLayout-1zXrNSte.mjs} +177 -166
  15. package/dist/admin/AuthenticatedLayout-1zXrNSte.mjs.map +1 -0
  16. package/dist/admin/{AuthenticatedLayout-MDNNJRPg.js → AuthenticatedLayout-haMSd2JF.js} +192 -181
  17. package/dist/admin/AuthenticatedLayout-haMSd2JF.js.map +1 -0
  18. package/dist/admin/CreateActionEE-Yfp4hs7a.mjs +49 -0
  19. package/dist/admin/CreateActionEE-Yfp4hs7a.mjs.map +1 -0
  20. package/dist/admin/CreateActionEE-uqyKLxwI.js +76 -0
  21. package/dist/admin/CreateActionEE-uqyKLxwI.js.map +1 -0
  22. package/dist/admin/{CreatePage-puzZjQXr.mjs → CreatePage-UzCNaW8h.mjs} +13 -14
  23. package/dist/admin/CreatePage-UzCNaW8h.mjs.map +1 -0
  24. package/dist/admin/{CreatePage-Z_y-A5xj.js → CreatePage-X9rp03gy.js} +5 -5
  25. package/dist/admin/{CreatePage-Z_y-A5xj.js.map → CreatePage-X9rp03gy.js.map} +1 -1
  26. package/dist/admin/{CreatePage-GD7KENsP.mjs → CreatePage-embavU6j.mjs} +3 -3
  27. package/dist/admin/{CreatePage-GD7KENsP.mjs.map → CreatePage-embavU6j.mjs.map} +1 -1
  28. package/dist/admin/{CreatePage-5V60DKB0.js → CreatePage-zeisnPM2.js} +18 -19
  29. package/dist/admin/CreatePage-zeisnPM2.js.map +1 -0
  30. package/dist/admin/{CreateView-EjqRVjU_.mjs → CreateView-SQFk7zP8.mjs} +3 -3
  31. package/dist/admin/{CreateView-EjqRVjU_.mjs.map → CreateView-SQFk7zP8.mjs.map} +1 -1
  32. package/dist/admin/CreateView-Smkfwq2U.js +17 -0
  33. package/dist/admin/{CreateView-VYprogwB.js.map → CreateView-Smkfwq2U.js.map} +1 -1
  34. package/dist/admin/{CreateView-jM_w7R83.mjs → CreateView-phBO6q6q.mjs} +3 -3
  35. package/dist/admin/{CreateView-jM_w7R83.mjs.map → CreateView-phBO6q6q.mjs.map} +1 -1
  36. package/dist/admin/CreateView-yQvtXeP2.js +17 -0
  37. package/dist/admin/{CreateView-5V271zBl.js.map → CreateView-yQvtXeP2.js.map} +1 -1
  38. package/dist/admin/{EditPage-vRwS2OJZ.js → EditPage-1svcLlQN.js} +19 -19
  39. package/dist/admin/EditPage-1svcLlQN.js.map +1 -0
  40. package/dist/admin/{EditPage-HsLjcfgK.js → EditPage-GM7gM7Np.js} +15 -15
  41. package/dist/admin/EditPage-GM7gM7Np.js.map +1 -0
  42. package/dist/admin/{EditPage-W_qlhF-2.mjs → EditPage-QHC3cITE.mjs} +11 -11
  43. package/dist/admin/EditPage-QHC3cITE.mjs.map +1 -0
  44. package/dist/admin/{EditPage-WuJtih1X.js → EditPage-ix4Or3TO.js} +96 -91
  45. package/dist/admin/EditPage-ix4Or3TO.js.map +1 -0
  46. package/dist/admin/{EditPage-8_dXc9y1.mjs → EditPage-riE7hBMx.mjs} +9 -9
  47. package/dist/admin/EditPage-riE7hBMx.mjs.map +1 -0
  48. package/dist/admin/{EditPage-8fk5JEO7.mjs → EditPage-xDZwHLDD.mjs} +91 -86
  49. package/dist/admin/EditPage-xDZwHLDD.mjs.map +1 -0
  50. package/dist/admin/{EditView-Cac025JW.mjs → EditView-3TBDETCw.mjs} +10 -10
  51. package/dist/admin/EditView-3TBDETCw.mjs.map +1 -0
  52. package/dist/admin/{EditView-lhhZAQtN.js → EditView-z-CFelH2.js} +19 -19
  53. package/dist/admin/EditView-z-CFelH2.js.map +1 -0
  54. package/dist/admin/{EditViewPage-Q7N1TLU9.js → EditViewPage-Kw7Ezpay.js} +32 -32
  55. package/dist/admin/EditViewPage-Kw7Ezpay.js.map +1 -0
  56. package/dist/admin/{EditViewPage-f56oKqQ-.mjs → EditViewPage-M5Bto2f0.mjs} +23 -23
  57. package/dist/admin/EditViewPage-M5Bto2f0.mjs.map +1 -0
  58. package/dist/admin/{EventsTable-y6XT7dVi.js → EventsTable-ihsVS1kY.js} +2 -2
  59. package/dist/admin/{EventsTable-y6XT7dVi.js.map → EventsTable-ihsVS1kY.js.map} +1 -1
  60. package/dist/admin/{EventsTable-duSraBTj.mjs → EventsTable-xNALq0Xl.mjs} +2 -2
  61. package/dist/admin/{EventsTable-duSraBTj.mjs.map → EventsTable-xNALq0Xl.mjs.map} +1 -1
  62. package/dist/admin/{HomePage-UTLFs-4n.mjs → HomePage-1iC-u-RM.mjs} +3 -3
  63. package/dist/admin/{HomePage-UTLFs-4n.mjs.map → HomePage-1iC-u-RM.mjs.map} +1 -1
  64. package/dist/admin/{HomePage-vTms2gld.js → HomePage-5XpRwLIS.js} +3 -3
  65. package/dist/admin/{HomePage-vTms2gld.js.map → HomePage-5XpRwLIS.js.map} +1 -1
  66. package/dist/admin/{HomePage-4Hk9puW_.js → HomePage-6JeS-ulc.js} +18 -18
  67. package/dist/admin/HomePage-6JeS-ulc.js.map +1 -0
  68. package/dist/admin/{HomePage-d4h0KEnw.mjs → HomePage-pBVsiRLB.mjs} +12 -12
  69. package/dist/admin/HomePage-pBVsiRLB.mjs.map +1 -0
  70. package/dist/admin/{InstalledPluginsPage-9ooKCsS7.js → InstalledPluginsPage-QYeyWKla.js} +10 -10
  71. package/dist/admin/{InstalledPluginsPage-9ooKCsS7.js.map → InstalledPluginsPage-QYeyWKla.js.map} +1 -1
  72. package/dist/admin/{InstalledPluginsPage-nCdAsAAu.mjs → InstalledPluginsPage-wwA3VULI.mjs} +4 -4
  73. package/dist/admin/{InstalledPluginsPage-nCdAsAAu.mjs.map → InstalledPluginsPage-wwA3VULI.mjs.map} +1 -1
  74. package/dist/admin/{Layout-Ax9QtxH1.mjs → Layout-Dg3BpNCD.mjs} +22 -10
  75. package/dist/admin/Layout-Dg3BpNCD.mjs.map +1 -0
  76. package/dist/admin/{Layout-Bmmqv9h6.js → Layout-n5Z9I_69.js} +26 -14
  77. package/dist/admin/Layout-n5Z9I_69.js.map +1 -0
  78. package/dist/admin/{ListPage-4nzagne8.js → ListPage-8Tez014i.js} +79 -43
  79. package/dist/admin/ListPage-8Tez014i.js.map +1 -0
  80. package/dist/admin/{ListPage-10_h7FUt.js → ListPage-8iWYEe2_.js} +50 -49
  81. package/dist/admin/ListPage-8iWYEe2_.js.map +1 -0
  82. package/dist/admin/{ListPage-TWLqkRt6.js → ListPage-CxUAyot2.js} +27 -32
  83. package/dist/admin/ListPage-CxUAyot2.js.map +1 -0
  84. package/dist/admin/{ListPage-4n-Xb2aE.js → ListPage-KOIEopQN.js} +3 -3
  85. package/dist/admin/{ListPage-4n-Xb2aE.js.map → ListPage-KOIEopQN.js.map} +1 -1
  86. package/dist/admin/{ListPage-4kGSO2Ri.mjs → ListPage-Ka430VWJ.mjs} +40 -39
  87. package/dist/admin/ListPage-Ka430VWJ.mjs.map +1 -0
  88. package/dist/admin/{ListPage-OE9xQffQ.mjs → ListPage-P4Apgmd-.mjs} +18 -23
  89. package/dist/admin/ListPage-P4Apgmd-.mjs.map +1 -0
  90. package/dist/admin/{ListPage-EPIYY3Uf.mjs → ListPage-PfBDJtky.mjs} +71 -35
  91. package/dist/admin/ListPage-PfBDJtky.mjs.map +1 -0
  92. package/dist/admin/{ListPage-gbCO5Otz.mjs → ListPage-SnOw9EMq.mjs} +3 -3
  93. package/dist/admin/{ListPage-gbCO5Otz.mjs.map → ListPage-SnOw9EMq.mjs.map} +1 -1
  94. package/dist/admin/{ListPage-IgkmnCSY.js → ListPage-XYrZSP2n.js} +15 -22
  95. package/dist/admin/ListPage-XYrZSP2n.js.map +1 -0
  96. package/dist/admin/{ListPage-VGqEsiEA.mjs → ListPage-_sJsfVLq.mjs} +7 -14
  97. package/dist/admin/ListPage-_sJsfVLq.mjs.map +1 -0
  98. package/dist/admin/{ListView-uHb_Hgib.js → ListView-6U-6GqOi.js} +13 -13
  99. package/dist/admin/{ListView-uHb_Hgib.js.map → ListView-6U-6GqOi.js.map} +1 -1
  100. package/dist/admin/{ListView-Zvs5X2St.mjs → ListView-UKJyJnd2.mjs} +4 -4
  101. package/dist/admin/{ListView-Zvs5X2St.mjs.map → ListView-UKJyJnd2.mjs.map} +1 -1
  102. package/dist/admin/{ListView-pT2a-fdi.js → ListView-u3bQ6Jrd.js} +13 -13
  103. package/dist/admin/{ListView-pT2a-fdi.js.map → ListView-u3bQ6Jrd.js.map} +1 -1
  104. package/dist/admin/{ListView-gKrpPLEM.mjs → ListView-udsJ7zMT.mjs} +4 -4
  105. package/dist/admin/{ListView-gKrpPLEM.mjs.map → ListView-udsJ7zMT.mjs.map} +1 -1
  106. package/dist/admin/{Login-EcSP4AMG.js → Login-iUJs_YTe.js} +5 -5
  107. package/dist/admin/{Login-EcSP4AMG.js.map → Login-iUJs_YTe.js.map} +1 -1
  108. package/dist/admin/{Login-w4BUlNaE.mjs → Login-qOZJMFOX.mjs} +4 -4
  109. package/dist/admin/{Login-w4BUlNaE.mjs.map → Login-qOZJMFOX.mjs.map} +1 -1
  110. package/dist/admin/{MagicLinkEE-b9NK8XXY.mjs → MagicLinkEE--uHOs_Sh.mjs} +3 -3
  111. package/dist/admin/{MagicLinkEE-b9NK8XXY.mjs.map → MagicLinkEE--uHOs_Sh.mjs.map} +1 -1
  112. package/dist/admin/{MagicLinkEE-qT5OE9Pm.js → MagicLinkEE-ZHDAMHRp.js} +3 -3
  113. package/dist/admin/{MagicLinkEE-qT5OE9Pm.js.map → MagicLinkEE-ZHDAMHRp.js.map} +1 -1
  114. package/dist/admin/{MarketplacePage-MVRrpUSk.js → MarketplacePage-FLcrHGFN.js} +123 -150
  115. package/dist/admin/MarketplacePage-FLcrHGFN.js.map +1 -0
  116. package/dist/admin/{MarketplacePage-oGhZBKgX.mjs → MarketplacePage-KyupKstI.mjs} +111 -138
  117. package/dist/admin/MarketplacePage-KyupKstI.mjs.map +1 -0
  118. package/dist/admin/{Ornaments-h_LCCr5P.mjs → Ornaments-jAwgQeK0.mjs} +2 -2
  119. package/dist/admin/{Ornaments-h_LCCr5P.mjs.map → Ornaments-jAwgQeK0.mjs.map} +1 -1
  120. package/dist/admin/{Ornaments-UTssGzOw.js → Ornaments-sFPQPOtb.js} +2 -2
  121. package/dist/admin/{Ornaments-UTssGzOw.js.map → Ornaments-sFPQPOtb.js.map} +1 -1
  122. package/dist/admin/{Permissions-kNVZVLmu.js → Permissions-SuZE5tW3.js} +265 -277
  123. package/dist/admin/Permissions-SuZE5tW3.js.map +1 -0
  124. package/dist/admin/{Permissions-lf6dNG4S.mjs → Permissions-oxdduJgE.mjs} +256 -269
  125. package/dist/admin/Permissions-oxdduJgE.mjs.map +1 -0
  126. package/dist/admin/{PrivateRoute-1hyhztQM.mjs → PrivateRoute-4oRTB_tX.mjs} +2 -2
  127. package/dist/admin/{PrivateRoute-1hyhztQM.mjs.map → PrivateRoute-4oRTB_tX.mjs.map} +1 -1
  128. package/dist/admin/{PrivateRoute-wBE5vMxe.js → PrivateRoute-ndqg7K6H.js} +3 -3
  129. package/dist/admin/{PrivateRoute-wBE5vMxe.js.map → PrivateRoute-ndqg7K6H.js.map} +1 -1
  130. package/dist/admin/{ProfilePage-zk-Py9wt.mjs → ProfilePage-4dKn6UUc.mjs} +10 -10
  131. package/dist/admin/ProfilePage-4dKn6UUc.mjs.map +1 -0
  132. package/dist/admin/{ProfilePage-ZlpnTKEF.js → ProfilePage-Ryrm4G10.js} +23 -23
  133. package/dist/admin/ProfilePage-Ryrm4G10.js.map +1 -0
  134. package/dist/admin/{PurchaseAuditLogs-9reb0oGz.js → PurchaseAuditLogs-EDV5UGnG.js} +2 -2
  135. package/dist/admin/{PurchaseAuditLogs-9reb0oGz.js.map → PurchaseAuditLogs-EDV5UGnG.js.map} +1 -1
  136. package/dist/admin/{PurchaseAuditLogs-iOYsTJA-.mjs → PurchaseAuditLogs-K5ZTiR8K.mjs} +2 -2
  137. package/dist/admin/{PurchaseAuditLogs-iOYsTJA-.mjs.map → PurchaseAuditLogs-K5ZTiR8K.mjs.map} +1 -1
  138. package/dist/admin/{PurchaseSingleSignOn-S3xLiiv7.js → PurchaseSingleSignOn--Cb7M20e.js} +2 -2
  139. package/dist/admin/{PurchaseSingleSignOn-S3xLiiv7.js.map → PurchaseSingleSignOn--Cb7M20e.js.map} +1 -1
  140. package/dist/admin/{PurchaseSingleSignOn-X629iA7K.mjs → PurchaseSingleSignOn-c143s7mz.mjs} +2 -2
  141. package/dist/admin/{PurchaseSingleSignOn-X629iA7K.mjs.map → PurchaseSingleSignOn-c143s7mz.mjs.map} +1 -1
  142. package/dist/admin/{SSOProviders-AirHFyBl.js → SSOProviders-QBcyB9VI.js} +5 -5
  143. package/dist/admin/SSOProviders-QBcyB9VI.js.map +1 -0
  144. package/dist/admin/{SSOProviders-t8D-v8As.mjs → SSOProviders-nMmBLr8g.mjs} +6 -6
  145. package/dist/admin/SSOProviders-nMmBLr8g.mjs.map +1 -0
  146. package/dist/admin/{SelectRoles-yM-LT458.mjs → SelectRoles-psJuDrRF.mjs} +4 -4
  147. package/dist/admin/{SelectRoles-yM-LT458.mjs.map → SelectRoles-psJuDrRF.mjs.map} +1 -1
  148. package/dist/admin/{SelectRoles-hyiyvsCG.js → SelectRoles-x3GAhhSJ.js} +5 -5
  149. package/dist/admin/{SelectRoles-hyiyvsCG.js.map → SelectRoles-x3GAhhSJ.js.map} +1 -1
  150. package/dist/admin/{SingleSignOnPage-3Mfu4dgn.js → SingleSignOnPage-83q-C4t-.js} +17 -17
  151. package/dist/admin/SingleSignOnPage-83q-C4t-.js.map +1 -0
  152. package/dist/admin/{SingleSignOnPage-wPZ1tqEk.mjs → SingleSignOnPage-9l6JRqDd.mjs} +7 -7
  153. package/dist/admin/SingleSignOnPage-9l6JRqDd.mjs.map +1 -0
  154. package/dist/admin/{Table-OcYvBab7.mjs → Table-I-45hnM1.mjs} +11 -22
  155. package/dist/admin/Table-I-45hnM1.mjs.map +1 -0
  156. package/dist/admin/{Table-N9PZc6xL.js → Table-oO6QTH1W.js} +12 -23
  157. package/dist/admin/Table-oO6QTH1W.js.map +1 -0
  158. package/dist/admin/{rbac-5b9ylhpa.js → Theme-7W0we6BI.js} +147 -80
  159. package/dist/admin/Theme-7W0we6BI.js.map +1 -0
  160. package/dist/admin/{rbac-oJEkQdXG.mjs → Theme-PrUuuGtN.mjs} +140 -81
  161. package/dist/admin/Theme-PrUuuGtN.mjs.map +1 -0
  162. package/dist/admin/{TokenTypeSelect-dWn05yGP.js → TokenTypeSelect-26DfB0-O.js} +10 -12
  163. package/dist/admin/TokenTypeSelect-26DfB0-O.js.map +1 -0
  164. package/dist/admin/{TokenTypeSelect-v6IYPaBF.mjs → TokenTypeSelect-xCzuaMQo.mjs} +7 -9
  165. package/dist/admin/TokenTypeSelect-xCzuaMQo.mjs.map +1 -0
  166. package/dist/admin/{UseCasePage-ijq-Bur_.js → UseCasePage-WtuQk75n.js} +6 -6
  167. package/dist/admin/{UseCasePage-ijq-Bur_.js.map → UseCasePage-WtuQk75n.js.map} +1 -1
  168. package/dist/admin/{UseCasePage-P4AFdcDQ.mjs → UseCasePage-fXNd00ES.mjs} +4 -4
  169. package/dist/admin/{UseCasePage-P4AFdcDQ.mjs.map → UseCasePage-fXNd00ES.mjs.map} +1 -1
  170. package/dist/admin/{constants-sfZ2gFzJ.js → constants-GyaJoB7C.js} +5 -5
  171. package/dist/admin/{constants-sfZ2gFzJ.js.map → constants-GyaJoB7C.js.map} +1 -1
  172. package/dist/admin/{constants-Z-zrJ7Zs.mjs → constants-nzCvle10.mjs} +4 -4
  173. package/dist/admin/{constants-Z-zrJ7Zs.mjs.map → constants-nzCvle10.mjs.map} +1 -1
  174. package/dist/admin/{en-K35WIWVM.mjs → en-0Ld-ipyI.mjs} +3 -2
  175. package/dist/admin/{en-K35WIWVM.mjs.map → en-0Ld-ipyI.mjs.map} +1 -1
  176. package/dist/admin/{en-G-ukrF2h.js → en-TbnMBjZf.js} +3 -2
  177. package/dist/admin/{en-G-ukrF2h.js.map → en-TbnMBjZf.js.map} +1 -1
  178. package/dist/admin/{index-duYn5r8_.js → index-TG8-3711.js} +1524 -1425
  179. package/dist/admin/index-TG8-3711.js.map +1 -0
  180. package/dist/admin/{index-EQL2s09p.mjs → index-f6STHGSC.mjs} +1479 -1377
  181. package/dist/admin/index-f6STHGSC.mjs.map +1 -0
  182. package/dist/admin/index.js +12 -12
  183. package/dist/admin/index.mjs +2 -2
  184. package/dist/admin/{selectors-Ilww6FA-.mjs → selectors-ZpHhvPK4.mjs} +2 -2
  185. package/dist/admin/{selectors-Ilww6FA-.mjs.map → selectors-ZpHhvPK4.mjs.map} +1 -1
  186. package/dist/admin/selectors-zQKcCNuz.js +8 -0
  187. package/dist/admin/{selectors-NDEu6dJa.js.map → selectors-zQKcCNuz.js.map} +1 -1
  188. package/dist/admin/src/StrapiApp.d.ts +17 -45
  189. package/dist/admin/src/components/ConfirmDialog.d.ts +18 -8
  190. package/dist/admin/src/components/Filters.d.ts +4 -8
  191. package/dist/admin/src/components/Form.d.ts +6 -1
  192. package/dist/admin/src/components/FormInputs/Checkbox.d.ts +1 -1
  193. package/dist/admin/src/components/FormInputs/types.d.ts +1 -1
  194. package/dist/admin/src/components/Layouts/HeaderLayout.d.ts +1 -1
  195. package/dist/admin/src/components/Layouts/Layout.d.ts +1 -1
  196. package/dist/admin/src/components/MainNav/NavUser.d.ts +1 -1
  197. package/dist/admin/src/components/Table.d.ts +1 -1
  198. package/dist/admin/src/constants/filters.d.ts +2 -1
  199. package/dist/admin/src/constants.d.ts +3 -3
  200. package/dist/admin/src/core/apis/router.d.ts +73 -0
  201. package/dist/admin/src/features/Auth.d.ts +2 -2
  202. package/dist/admin/src/features/StrapiApp.d.ts +2 -1
  203. package/dist/admin/src/hooks/useSettingsMenu.d.ts +2 -2
  204. package/dist/admin/src/index.d.ts +2 -1
  205. package/dist/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.d.ts +0 -6
  206. package/dist/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.d.ts +4 -2
  207. package/dist/admin/src/pages/Settings/pages/Roles/components/ConditionsModal.d.ts +2 -4
  208. package/dist/admin/src/pages/Settings/pages/Users/components/CreateActionCE.d.ts +2 -1
  209. package/dist/admin/src/reducer.d.ts +7 -2
  210. package/dist/admin/src/render.d.ts +1 -0
  211. package/dist/admin/src/router.d.ts +7 -0
  212. package/dist/admin/src/services/admin.d.ts +5 -5
  213. package/dist/admin/src/types/permissions.d.ts +1 -1
  214. package/dist/admin/test.js +17 -16
  215. package/dist/admin/test.js.map +1 -1
  216. package/dist/admin/test.mjs +10 -9
  217. package/dist/admin/test.mjs.map +1 -1
  218. package/dist/admin/tests/store.d.ts +2 -1
  219. package/dist/admin/tests/utils.d.ts +2 -1
  220. package/dist/admin/{useAdminRoles-cq3ZckdQ.mjs → useAdminRoles-Aj5B2oXT.mjs} +2 -2
  221. package/dist/admin/{useAdminRoles-cq3ZckdQ.mjs.map → useAdminRoles-Aj5B2oXT.mjs.map} +1 -1
  222. package/dist/admin/{useAdminRoles-2VDDweuC.js → useAdminRoles-JbwI6Lrm.js} +2 -2
  223. package/dist/admin/{useAdminRoles-2VDDweuC.js.map → useAdminRoles-JbwI6Lrm.js.map} +1 -1
  224. package/dist/admin/{useLicenseLimitNotification-1Xo24v-C.mjs → useLicenseLimitNotification-PaR7jmqd.mjs} +2 -2
  225. package/dist/admin/{useLicenseLimitNotification-1Xo24v-C.mjs.map → useLicenseLimitNotification-PaR7jmqd.mjs.map} +1 -1
  226. package/dist/admin/{useLicenseLimitNotification-9iq0TFuF.js → useLicenseLimitNotification-g1vq6nzk.js} +3 -3
  227. package/dist/admin/{useLicenseLimitNotification-9iq0TFuF.js.map → useLicenseLimitNotification-g1vq6nzk.js.map} +1 -1
  228. package/dist/admin/{useWebhooks-opYGugiT.js → useWebhooks-0RUEkKAV.js} +4 -4
  229. package/dist/admin/{useWebhooks-opYGugiT.js.map → useWebhooks-0RUEkKAV.js.map} +1 -1
  230. package/dist/admin/{useWebhooks-bgdpL7W6.mjs → useWebhooks-7thg-d57.mjs} +4 -4
  231. package/dist/admin/{useWebhooks-bgdpL7W6.mjs.map → useWebhooks-7thg-d57.mjs.map} +1 -1
  232. package/dist/admin/{validation-qUTUIssJ.mjs → validation-F0JQeiU1.mjs} +2 -2
  233. package/dist/admin/{validation-qUTUIssJ.mjs.map → validation-F0JQeiU1.mjs.map} +1 -1
  234. package/dist/admin/{validation-6PUPWFkz.js → validation-hzptxkSz.js} +2 -2
  235. package/dist/admin/{validation-6PUPWFkz.js.map → validation-hzptxkSz.js.map} +1 -1
  236. package/dist/ee/admin/src/constants.d.ts +10 -0
  237. package/dist/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.d.ts +2 -1
  238. package/dist/ee/server/index.js +1 -3
  239. package/dist/ee/server/index.js.map +1 -1
  240. package/dist/ee/server/index.mjs +1 -3
  241. package/dist/ee/server/index.mjs.map +1 -1
  242. package/dist/package.json.d.ts +13 -10
  243. package/dist/server/index.js +20 -1
  244. package/dist/server/index.js.map +1 -1
  245. package/dist/server/index.mjs +18 -1
  246. package/dist/server/index.mjs.map +1 -1
  247. package/dist/server/src/controllers/webhooks.d.ts.map +1 -1
  248. package/package.json +14 -11
  249. package/dist/admin/AdminSeatInfo-_UxgNKbX.mjs.map +0 -1
  250. package/dist/admin/AdminSeatInfo-cqB8nHFZ.js.map +0 -1
  251. package/dist/admin/ApplicationInfoPage-6PD2owY8.mjs.map +0 -1
  252. package/dist/admin/ApplicationInfoPage-S18loXTF.js.map +0 -1
  253. package/dist/admin/AuthResponse-EiDRhJY8.js.map +0 -1
  254. package/dist/admin/AuthResponse-Y4lblDuD.mjs.map +0 -1
  255. package/dist/admin/AuthenticatedLayout-MDNNJRPg.js.map +0 -1
  256. package/dist/admin/AuthenticatedLayout-gOaUXjO8.mjs.map +0 -1
  257. package/dist/admin/CreateActionEE-dGj-JbWV.js +0 -53
  258. package/dist/admin/CreateActionEE-dGj-JbWV.js.map +0 -1
  259. package/dist/admin/CreateActionEE-uBGAkLbn.mjs +0 -45
  260. package/dist/admin/CreateActionEE-uBGAkLbn.mjs.map +0 -1
  261. package/dist/admin/CreatePage-5V60DKB0.js.map +0 -1
  262. package/dist/admin/CreatePage-puzZjQXr.mjs.map +0 -1
  263. package/dist/admin/CreateView-5V271zBl.js +0 -17
  264. package/dist/admin/CreateView-VYprogwB.js +0 -17
  265. package/dist/admin/EditPage-8_dXc9y1.mjs.map +0 -1
  266. package/dist/admin/EditPage-8fk5JEO7.mjs.map +0 -1
  267. package/dist/admin/EditPage-HsLjcfgK.js.map +0 -1
  268. package/dist/admin/EditPage-W_qlhF-2.mjs.map +0 -1
  269. package/dist/admin/EditPage-WuJtih1X.js.map +0 -1
  270. package/dist/admin/EditPage-vRwS2OJZ.js.map +0 -1
  271. package/dist/admin/EditView-Cac025JW.mjs.map +0 -1
  272. package/dist/admin/EditView-lhhZAQtN.js.map +0 -1
  273. package/dist/admin/EditViewPage-Q7N1TLU9.js.map +0 -1
  274. package/dist/admin/EditViewPage-f56oKqQ-.mjs.map +0 -1
  275. package/dist/admin/HomePage-4Hk9puW_.js.map +0 -1
  276. package/dist/admin/HomePage-d4h0KEnw.mjs.map +0 -1
  277. package/dist/admin/Layout-Ax9QtxH1.mjs.map +0 -1
  278. package/dist/admin/Layout-Bmmqv9h6.js.map +0 -1
  279. package/dist/admin/ListPage-10_h7FUt.js.map +0 -1
  280. package/dist/admin/ListPage-4kGSO2Ri.mjs.map +0 -1
  281. package/dist/admin/ListPage-4nzagne8.js.map +0 -1
  282. package/dist/admin/ListPage-EPIYY3Uf.mjs.map +0 -1
  283. package/dist/admin/ListPage-IgkmnCSY.js.map +0 -1
  284. package/dist/admin/ListPage-OE9xQffQ.mjs.map +0 -1
  285. package/dist/admin/ListPage-TWLqkRt6.js.map +0 -1
  286. package/dist/admin/ListPage-VGqEsiEA.mjs.map +0 -1
  287. package/dist/admin/MarketplacePage-MVRrpUSk.js.map +0 -1
  288. package/dist/admin/MarketplacePage-oGhZBKgX.mjs.map +0 -1
  289. package/dist/admin/Permissions-kNVZVLmu.js.map +0 -1
  290. package/dist/admin/Permissions-lf6dNG4S.mjs.map +0 -1
  291. package/dist/admin/ProfilePage-ZlpnTKEF.js.map +0 -1
  292. package/dist/admin/ProfilePage-zk-Py9wt.mjs.map +0 -1
  293. package/dist/admin/SSOProviders-AirHFyBl.js.map +0 -1
  294. package/dist/admin/SSOProviders-t8D-v8As.mjs.map +0 -1
  295. package/dist/admin/SingleSignOnPage-3Mfu4dgn.js.map +0 -1
  296. package/dist/admin/SingleSignOnPage-wPZ1tqEk.mjs.map +0 -1
  297. package/dist/admin/Table-N9PZc6xL.js.map +0 -1
  298. package/dist/admin/Table-OcYvBab7.mjs.map +0 -1
  299. package/dist/admin/TokenTypeSelect-dWn05yGP.js.map +0 -1
  300. package/dist/admin/TokenTypeSelect-v6IYPaBF.mjs.map +0 -1
  301. package/dist/admin/index-EQL2s09p.mjs.map +0 -1
  302. package/dist/admin/index-duYn5r8_.js.map +0 -1
  303. package/dist/admin/rbac-5b9ylhpa.js.map +0 -1
  304. package/dist/admin/rbac-oJEkQdXG.mjs.map +0 -1
  305. package/dist/admin/selectors-NDEu6dJa.js +0 -8
@@ -1,13 +1,13 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
- import { useNotifyAT, LinkButton, Typography, Button, Table, TFooter, Thead, Tr, Th, BaseCheckbox, VisuallyHidden, Tbody, Td, Flex, Switch, IconButton, EmptyStateLayout } from '@strapi/design-system';
3
+ import { useNotifyAT, LinkButton, Typography, Button, Table, TFooter, Thead, Tr, Th, Checkbox, VisuallyHidden, Tbody, Td, Flex, Switch, IconButton, EmptyStateLayout, Dialog } from '@strapi/design-system';
4
4
  import { Plus, Trash, Pencil } from '@strapi/icons';
5
5
  import { EmptyDocuments } from '@strapi/icons/symbols';
6
6
  import { useIntl } from 'react-intl';
7
7
  import { useNavigate, NavLink } from 'react-router-dom';
8
- import { b as Layouts, C as ConfirmDialog } from './index-EQL2s09p.mjs';
9
- import { b as useTypedSelector, P as Page, f as useAPIErrorHandler, u as useNotification, k as useRBAC } from './rbac-oJEkQdXG.mjs';
10
- import { u as useWebhooks } from './useWebhooks-bgdpL7W6.mjs';
8
+ import { b as Layouts, C as ConfirmDialog } from './index-f6STHGSC.mjs';
9
+ import { b as useTypedSelector, P as Page, f as useAPIErrorHandler, a as useNotification, k as useRBAC } from './Theme-PrUuuGtN.mjs';
10
+ import { u as useWebhooks } from './useWebhooks-7thg-d57.mjs';
11
11
 
12
12
  const ListPage = () => {
13
13
  const [showModal, setShowModal] = React.useState(false);
@@ -65,7 +65,30 @@ const ListPage = () => {
65
65
  });
66
66
  }
67
67
  };
68
- const confirmDelete = async () => {
68
+ const deleteWebhook = async (id) => {
69
+ try {
70
+ const res = await deleteManyWebhooks({
71
+ ids: [id]
72
+ });
73
+ if ("error" in res) {
74
+ toggleNotification({
75
+ type: "danger",
76
+ message: formatAPIError(res.error)
77
+ });
78
+ return;
79
+ }
80
+ setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));
81
+ } catch {
82
+ toggleNotification({
83
+ type: "danger",
84
+ message: formatMessage({
85
+ id: "notification.error",
86
+ defaultMessage: "An error occurred"
87
+ })
88
+ });
89
+ }
90
+ };
91
+ const confirmBulkDelete = async () => {
69
92
  try {
70
93
  const res = await deleteManyWebhooks({
71
94
  ids: webhooksToDelete
@@ -170,15 +193,14 @@ const ListPage = () => {
170
193
  children: [
171
194
  /* @__PURE__ */ jsx(Thead, { children: /* @__PURE__ */ jsxs(Tr, { children: [
172
195
  /* @__PURE__ */ jsx(Th, { children: /* @__PURE__ */ jsx(
173
- BaseCheckbox,
196
+ Checkbox,
174
197
  {
175
198
  "aria-label": formatMessage({
176
199
  id: "global.select-all-entries",
177
200
  defaultMessage: "Select all entries"
178
201
  }),
179
- indeterminate: webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks,
180
- value: webhooksToDeleteLength === numberOfWebhooks,
181
- onValueChange: selectAllCheckbox
202
+ checked: webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks ? "indeterminate" : webhooksToDeleteLength === numberOfWebhooks,
203
+ onCheckedChange: selectAllCheckbox
182
204
  }
183
205
  ) }),
184
206
  /* @__PURE__ */ jsx(Th, { width: "20%", children: /* @__PURE__ */ jsx(Typography, { variant: "sigma", textColor: "neutral600", children: formatMessage({
@@ -209,20 +231,20 @@ const ListPage = () => {
209
231
  style: { cursor: canUpdate ? "pointer" : "default" },
210
232
  children: [
211
233
  /* @__PURE__ */ jsx(Td, { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsx(
212
- BaseCheckbox,
234
+ Checkbox,
213
235
  {
214
236
  "aria-label": `${formatMessage({
215
237
  id: "global.select",
216
238
  defaultMessage: "Select"
217
239
  })} ${webhook.name}`,
218
- value: webhooksToDelete?.includes(webhook.id),
219
- onValueChange: (selected) => selectOneCheckbox(selected, webhook.id),
240
+ checked: webhooksToDelete?.includes(webhook.id),
241
+ onCheckedChange: (selected) => selectOneCheckbox(!!selected, webhook.id),
220
242
  name: "select"
221
243
  }
222
244
  ) }),
223
245
  /* @__PURE__ */ jsx(Td, { children: /* @__PURE__ */ jsx(Typography, { fontWeight: "semiBold", textColor: "neutral800", children: webhook.name }) }),
224
246
  /* @__PURE__ */ jsx(Td, { children: /* @__PURE__ */ jsx(Typography, { textColor: "neutral800", children: webhook.url }) }),
225
- /* @__PURE__ */ jsx(Td, { children: /* @__PURE__ */ jsx(Flex, { children: /* @__PURE__ */ jsx(
247
+ /* @__PURE__ */ jsx(Td, { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsx(Flex, { children: /* @__PURE__ */ jsx(
226
248
  Switch,
227
249
  {
228
250
  onLabel: formatMessage({
@@ -233,16 +255,15 @@ const ListPage = () => {
233
255
  id: "global.disabled",
234
256
  defaultMessage: "Disabled"
235
257
  }),
236
- label: `${webhook.name} ${formatMessage({
258
+ "aria-label": `${webhook.name} ${formatMessage({
237
259
  id: "Settings.webhooks.list.th.status",
238
260
  defaultMessage: "Status"
239
261
  })}`,
240
- selected: webhook.isEnabled,
241
- onChange: (e) => {
242
- e.stopPropagation();
262
+ checked: webhook.isEnabled,
263
+ onCheckedChange: (enabled) => {
243
264
  enableWebhook({
244
265
  ...webhook,
245
- isEnabled: !webhook.isEnabled
266
+ isEnabled: enabled
246
267
  });
247
268
  },
248
269
  visibleLabels: true
@@ -261,19 +282,11 @@ const ListPage = () => {
261
282
  }
262
283
  ),
263
284
  canDelete && /* @__PURE__ */ jsx(
264
- IconButton,
285
+ DeleteActionButton,
265
286
  {
266
- onClick: (e) => {
267
- e.stopPropagation();
268
- setWebhooksToDelete([webhook.id]);
269
- setShowModal(true);
270
- },
271
- label: formatMessage({
272
- id: "Settings.webhooks.events.delete",
273
- defaultMessage: "Delete webhook"
274
- }),
275
- borderWidth: 0,
276
- children: /* @__PURE__ */ jsx(Trash, {})
287
+ onDelete: () => {
288
+ deleteWebhook(webhook.id);
289
+ }
277
290
  }
278
291
  )
279
292
  ] }) })
@@ -298,14 +311,37 @@ const ListPage = () => {
298
311
  }
299
312
  ) })
300
313
  ] }),
314
+ /* @__PURE__ */ jsx(Dialog.Root, { open: showModal, onOpenChange: setShowModal, children: /* @__PURE__ */ jsx(ConfirmDialog, { onConfirm: confirmBulkDelete }) })
315
+ ] });
316
+ };
317
+ const DeleteActionButton = ({ onDelete }) => {
318
+ const [showModal, setShowModal] = React.useState(false);
319
+ const { formatMessage } = useIntl();
320
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
301
321
  /* @__PURE__ */ jsx(
322
+ IconButton,
323
+ {
324
+ onClick: (e) => {
325
+ e.stopPropagation();
326
+ setShowModal(true);
327
+ },
328
+ label: formatMessage({
329
+ id: "Settings.webhooks.events.delete",
330
+ defaultMessage: "Delete webhook"
331
+ }),
332
+ borderWidth: 0,
333
+ children: /* @__PURE__ */ jsx(Trash, {})
334
+ }
335
+ ),
336
+ /* @__PURE__ */ jsx(Dialog.Root, { open: showModal, onOpenChange: setShowModal, children: /* @__PURE__ */ jsx(
302
337
  ConfirmDialog,
303
338
  {
304
- isOpen: showModal,
305
- onClose: () => setShowModal(false),
306
- onConfirm: confirmDelete
339
+ onConfirm: (e) => {
340
+ e?.stopPropagation();
341
+ onDelete();
342
+ }
307
343
  }
308
- )
344
+ ) })
309
345
  ] });
310
346
  };
311
347
  const ProtectedListPage = () => {
@@ -316,4 +352,4 @@ const ProtectedListPage = () => {
316
352
  };
317
353
 
318
354
  export { ListPage, ProtectedListPage };
319
- //# sourceMappingURL=ListPage-EPIYY3Uf.mjs.map
355
+ //# sourceMappingURL=ListPage-PfBDJtky.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListPage-PfBDJtky.mjs","sources":["../../admin/src/pages/Settings/pages/Webhooks/ListPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n useNotifyAT,\n Checkbox,\n Button,\n EmptyStateLayout,\n Flex,\n IconButton,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n LinkButton,\n Dialog,\n} from '@strapi/design-system';\nimport { Pencil, Plus, Trash } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\nimport { NavLink, useNavigate } from 'react-router-dom';\n\nimport { UpdateWebhook } from '../../../../../../shared/contracts/webhooks';\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../hooks/useRBAC';\n\nimport { useWebhooks } from './hooks/useWebhooks';\n\n/* -------------------------------------------------------------------------------------------------\n * ListPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListPage = () => {\n const [showModal, setShowModal] = React.useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = React.useState<string[]>([]);\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.webhooks);\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions);\n const { notifyStatus } = useNotifyAT();\n\n const {\n isLoading: isWebhooksLoading,\n webhooks,\n error: webhooksError,\n updateWebhook,\n deleteManyWebhooks,\n } = useWebhooks();\n\n React.useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const enableWebhook = async (body: UpdateWebhook.Request['body'] & UpdateWebhook.Params) => {\n try {\n const res = await updateWebhook(body);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n }\n };\n\n const deleteWebhook = async (id: string) => {\n try {\n const res = await deleteManyWebhooks({\n ids: [id],\n });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n }\n };\n\n const confirmBulkDelete = async () => {\n try {\n const res = await deleteManyWebhooks({\n ids: webhooksToDelete,\n });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWebhooksToDelete([]);\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n } finally {\n setShowModal(false);\n }\n };\n\n const selectAllCheckbox = (selected: boolean) =>\n selected\n ? setWebhooksToDelete(webhooks?.map((webhook) => webhook.id) ?? [])\n : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected: boolean, id: string) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Webhooks',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isLoading}>\n <Layouts.Header\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton tag={NavLink} startIcon={<Plus />} variant=\"default\" to=\"create\" size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <Layouts.Action\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <Layouts.Content>\n {numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter\n onClick={() => {\n if (canCreate) {\n navigate('create');\n }\n }}\n icon={<Plus />}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <Checkbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n checked={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n ? 'indeterminate'\n : webhooksToDeleteLength === numberOfWebhooks\n }\n onCheckedChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks?.map((webhook) => (\n <Tr\n key={webhook.id}\n onClick={() => {\n if (canUpdate) {\n navigate(webhook.id);\n }\n }}\n style={{ cursor: canUpdate ? 'pointer' : 'default' }}\n >\n <Td onClick={(e) => e.stopPropagation()}>\n <Checkbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n checked={webhooksToDelete?.includes(webhook.id)}\n onCheckedChange={(selected) => selectOneCheckbox(!!selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n aria-label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n checked={webhook.isEnabled}\n onCheckedChange={(enabled) => {\n enableWebhook({\n ...webhook,\n isEnabled: enabled,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n borderWidth={0}\n >\n <Pencil />\n </IconButton>\n )}\n {canDelete && (\n <DeleteActionButton\n onDelete={() => {\n deleteWebhook(webhook.id);\n }}\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n canCreate ? (\n <LinkButton variant=\"secondary\" startIcon={<Plus />} tag={NavLink} to=\"create\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n ) : null\n }\n />\n )}\n </Layouts.Content>\n </Page.Main>\n <Dialog.Root open={showModal} onOpenChange={setShowModal}>\n <ConfirmDialog onConfirm={confirmBulkDelete} />\n </Dialog.Root>\n </Layouts.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DeleteActionButton\n * -----------------------------------------------------------------------------------------------*/\n\ntype DeleteActionButtonProps = {\n onDelete: () => void;\n};\n\nconst DeleteActionButton = ({ onDelete }: DeleteActionButtonProps) => {\n const [showModal, setShowModal] = React.useState(false);\n const { formatMessage } = useIntl();\n\n return (\n <>\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n borderWidth={0}\n >\n <Trash />\n </IconButton>\n\n <Dialog.Root open={showModal} onOpenChange={setShowModal}>\n <ConfirmDialog\n onConfirm={(e) => {\n e?.stopPropagation();\n onDelete();\n }}\n />\n </Dialog.Root>\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListPage />\n </Page.Protect>\n );\n};\n\nexport { ListPage, ProtectedListPage };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { ListPageCE } from './ListPage-4kGSO2Ri.mjs';
3
- import { u as useLicenseLimitNotification } from './useLicenseLimitNotification-1Xo24v-C.mjs';
2
+ import { ListPageCE } from './ListPage-Ka430VWJ.mjs';
3
+ import { u as useLicenseLimitNotification } from './useLicenseLimitNotification-PaR7jmqd.mjs';
4
4
 
5
5
  const UserListPageEE = () => {
6
6
  useLicenseLimitNotification();
@@ -8,4 +8,4 @@ const UserListPageEE = () => {
8
8
  };
9
9
 
10
10
  export { UserListPageEE };
11
- //# sourceMappingURL=ListPage-gbCO5Otz.mjs.map
11
+ //# sourceMappingURL=ListPage-SnOw9EMq.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListPage-gbCO5Otz.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage.tsx"],"sourcesContent":["import { ListPageCE } from '../../../../../../../admin/src/pages/Settings/pages/Users/ListPage';\nimport { useLicenseLimitNotification } from '../../../../hooks/useLicenseLimitNotification';\n\nexport const UserListPageEE = () => {\n useLicenseLimitNotification();\n\n return <ListPageCE />;\n};\n"],"names":[],"mappings":";;;;AAGO,MAAM,iBAAiB,MAAM;AAClC,EAA4B,2BAAA,EAAA,CAAA;AAE5B,EAAA,2BAAQ,UAAW,EAAA,EAAA,CAAA,CAAA;AACrB;;;;"}
1
+ {"version":3,"file":"ListPage-SnOw9EMq.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage.tsx"],"sourcesContent":["import { ListPageCE } from '../../../../../../../admin/src/pages/Settings/pages/Users/ListPage';\nimport { useLicenseLimitNotification } from '../../../../hooks/useLicenseLimitNotification';\n\nexport const UserListPageEE = () => {\n useLicenseLimitNotification();\n\n return <ListPageCE />;\n};\n"],"names":[],"mappings":";;;;AAGO,MAAM,iBAAiB,MAAM;AAClC,EAA4B,2BAAA,EAAA,CAAA;AAE5B,EAAA,2BAAQ,UAAW,EAAA,EAAA,CAAA,CAAA;AACrB;;;;"}
@@ -9,10 +9,10 @@ const icons = require('@strapi/icons');
9
9
  const immer = require('immer');
10
10
  const reactIntl = require('react-intl');
11
11
  const reactRouterDom = require('react-router-dom');
12
- const index = require('./index-duYn5r8_.js');
13
- const rbac = require('./rbac-5b9ylhpa.js');
14
- const useAdminRoles = require('./useAdminRoles-2VDDweuC.js');
15
- const selectors = require('./selectors-NDEu6dJa.js');
12
+ const index = require('./index-TG8-3711.js');
13
+ const Theme = require('./Theme-7W0we6BI.js');
14
+ const useAdminRoles = require('./useAdminRoles-JbwI6Lrm.js');
15
+ const selectors = require('./selectors-zQKcCNuz.js');
16
16
  const admin = require('./admin-p0djr5G6.js');
17
17
 
18
18
  function _interopNamespace(e) {
@@ -76,15 +76,15 @@ const RoleRow = ({
76
76
 
77
77
  const ListPage = () => {
78
78
  const { formatMessage } = reactIntl.useIntl();
79
- const permissions = rbac.useTypedSelector(selectors.selectAdminPermissions);
80
- const { formatAPIError } = rbac.useAPIErrorHandler();
81
- const { toggleNotification } = rbac.useNotification();
79
+ const permissions = Theme.useTypedSelector(selectors.selectAdminPermissions);
80
+ const { formatAPIError } = Theme.useAPIErrorHandler();
81
+ const { toggleNotification } = Theme.useNotification();
82
82
  const [isWarningDeleteAllOpened, setIsWarningDeleteAllOpenend] = React__namespace.useState(false);
83
83
  const [{ query }] = index.useQueryParams();
84
84
  const {
85
85
  isLoading: isLoadingForPermissions,
86
86
  allowedActions: { canCreate, canDelete, canRead, canUpdate }
87
- } = rbac.useRBAC(permissions.settings?.roles);
87
+ } = Theme.useRBAC(permissions.settings?.roles);
88
88
  const { roles, refetch: refetchRoles } = useAdminRoles.useAdminRoles(
89
89
  { filters: query?._q ? { name: { $containsi: query._q } } : void 0 },
90
90
  {
@@ -142,10 +142,10 @@ const ListPage = () => {
142
142
  const rowCount = roles.length + 1;
143
143
  const colCount = 6;
144
144
  if (isLoadingForPermissions) {
145
- return /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.Loading, {});
145
+ return /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.Loading, {});
146
146
  }
147
- return /* @__PURE__ */ jsxRuntime.jsxs(rbac.Page.Main, { children: [
148
- /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.Title, { children: formatMessage(
147
+ return /* @__PURE__ */ jsxRuntime.jsxs(Theme.Page.Main, { children: [
148
+ /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.Title, { children: formatMessage(
149
149
  { id: "Settings.PageTitle", defaultMessage: "Settings - {name}" },
150
150
  {
151
151
  name: "Roles"
@@ -250,14 +250,7 @@ const ListPage = () => {
250
250
  ]
251
251
  }
252
252
  ) }),
253
- /* @__PURE__ */ jsxRuntime.jsx(
254
- index.ConfirmDialog,
255
- {
256
- isOpen: isWarningDeleteAllOpened,
257
- onConfirm: handleDeleteData,
258
- onClose: handleToggleModal
259
- }
260
- )
253
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Dialog.Root, { open: isWarningDeleteAllOpened, onOpenChange: handleToggleModal, children: /* @__PURE__ */ jsxRuntime.jsx(index.ConfirmDialog, { onConfirm: handleDeleteData }) })
261
254
  ] });
262
255
  };
263
256
  const initialState = {
@@ -291,10 +284,10 @@ const reducer = (state, action) => immer.produce(state, (draftState) => {
291
284
  }
292
285
  });
293
286
  const ProtectedListPage = () => {
294
- const permissions = rbac.useTypedSelector((state) => state.admin_app.permissions.settings?.roles.read);
295
- return /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.Protect, { permissions, children: /* @__PURE__ */ jsxRuntime.jsx(ListPage, {}) });
287
+ const permissions = Theme.useTypedSelector((state) => state.admin_app.permissions.settings?.roles.read);
288
+ return /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.Protect, { permissions, children: /* @__PURE__ */ jsxRuntime.jsx(ListPage, {}) });
296
289
  };
297
290
 
298
291
  exports.ListPage = ListPage;
299
292
  exports.ProtectedListPage = ProtectedListPage;
300
- //# sourceMappingURL=ListPage-IgkmnCSY.js.map
293
+ //# sourceMappingURL=ListPage-XYrZSP2n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListPage-XYrZSP2n.js","sources":["../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx","../../admin/src/pages/Settings/pages/Roles/ListPage.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} borderWidth={0} />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n","import * as React from 'react';\n\nimport {\n Button,\n Dialog,\n Table,\n Tbody,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport { Duplicate, Pencil, Plus, Trash } from '@strapi/icons';\nimport { produce } from 'immer';\nimport { useIntl } from 'react-intl';\nimport { useNavigate } from 'react-router-dom';\n\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { SearchInput } from '../../../../components/SearchInput';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAdminRoles, AdminRole } from '../../../../hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useFetchClient } from '../../../../hooks/useFetchClient';\nimport { useQueryParams } from '../../../../hooks/useQueryParams';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { isFetchError } from '../../../../utils/getFetchClient';\n\nimport { RoleRow, RoleRowProps } from './components/RoleRow';\n\nconst ListPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector(selectAdminPermissions);\n const { formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n const [isWarningDeleteAllOpened, setIsWarningDeleteAllOpenend] = React.useState(false);\n const [{ query }] = useQueryParams<{ _q?: string }>();\n const {\n isLoading: isLoadingForPermissions,\n allowedActions: { canCreate, canDelete, canRead, canUpdate },\n } = useRBAC(permissions.settings?.roles);\n\n const { roles, refetch: refetchRoles } = useAdminRoles(\n { filters: query?._q ? { name: { $containsi: query._q } } : undefined },\n {\n refetchOnMountOrArgChange: true,\n skip: isLoadingForPermissions || !canRead,\n }\n );\n\n const navigate = useNavigate();\n const [{ roleToDelete }, dispatch] = React.useReducer(reducer, initialState);\n const { post } = useFetchClient();\n\n const handleDeleteData = async () => {\n try {\n dispatch({\n type: 'ON_REMOVE_ROLES',\n });\n\n await post('/admin/roles/batch-delete', {\n ids: [roleToDelete],\n });\n\n await refetchRoles();\n\n dispatch({\n type: 'RESET_DATA_TO_DELETE',\n });\n } catch (error) {\n if (isFetchError(error)) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n };\n\n const handleNewRoleClick = () => navigate('new');\n\n const handleToggleModal = () => setIsWarningDeleteAllOpenend((prev) => !prev);\n\n const handleClickDelete = (role: AdminRole) => (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (role.usersCount) {\n toggleNotification({\n type: 'info',\n message: formatMessage({ id: 'Roles.ListPage.notification.delete-not-allowed' }),\n });\n } else {\n dispatch({\n type: 'SET_ROLE_TO_DELETE',\n id: role.id,\n });\n\n handleToggleModal();\n }\n };\n\n const handleClickDuplicate = (role: AdminRole) => (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n navigate(`duplicate/${role.id}`);\n };\n\n const rowCount = roles.length + 1;\n const colCount = 6;\n\n if (isLoadingForPermissions) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Layouts.Header\n primaryAction={\n canCreate ? (\n <Button onClick={handleNewRoleClick} startIcon={<Plus />} size=\"S\">\n {formatMessage({\n id: 'Settings.roles.list.button.add',\n defaultMessage: 'Add new role',\n })}\n </Button>\n ) : null\n }\n title={formatMessage({\n id: 'global.roles',\n defaultMessage: 'roles',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.list.description',\n defaultMessage: 'List of roles',\n })}\n />\n {canRead && (\n <Layouts.Action\n startActions={\n <SearchInput\n label={formatMessage(\n { id: 'app.component.search.label', defaultMessage: 'Search for {target}' },\n {\n target: formatMessage({\n id: 'global.roles',\n defaultMessage: 'roles',\n }),\n }\n )}\n />\n }\n />\n )}\n {canRead && (\n <Layouts.Content>\n <Table\n colCount={colCount}\n rowCount={rowCount}\n footer={\n canCreate ? (\n <TFooter onClick={handleNewRoleClick} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.roles.list.button.add',\n defaultMessage: 'Add new role',\n })}\n </TFooter>\n ) : null\n }\n >\n <Thead>\n <Tr aria-rowindex={1}>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.users',\n defaultMessage: 'Users',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'global.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {roles?.map((role, index) => (\n <RoleRow\n key={role.id}\n id={role.id}\n name={role.name}\n description={role.description}\n usersCount={role.usersCount}\n icons={\n [\n canCreate &&\n ({\n onClick: handleClickDuplicate(role),\n label: formatMessage({\n id: 'app.utils.duplicate',\n defaultMessage: 'Duplicate',\n }),\n children: <Duplicate />,\n } satisfies RoleRowProps['icons'][number]),\n canUpdate &&\n ({\n onClick: () => navigate(role.id.toString()),\n label: formatMessage({ id: 'app.utils.edit', defaultMessage: 'Edit' }),\n children: <Pencil />,\n } satisfies RoleRowProps['icons'][number]),\n canDelete &&\n ({\n onClick: handleClickDelete(role),\n label: formatMessage({ id: 'global.delete', defaultMessage: 'Delete' }),\n children: <Trash />,\n } satisfies RoleRowProps['icons'][number]),\n ].filter(Boolean) as RoleRowProps['icons']\n }\n rowIndex={index + 2}\n canUpdate={canUpdate}\n />\n ))}\n </Tbody>\n </Table>\n </Layouts.Content>\n )}\n <Dialog.Root open={isWarningDeleteAllOpened} onOpenChange={handleToggleModal}>\n <ConfirmDialog onConfirm={handleDeleteData} />\n </Dialog.Root>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Reducer\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * TODO: do we actually need this reducer? It's not doing a lot...\n */\n\ninterface State {\n roleToDelete: null | AdminRole['id'];\n showModalConfirmButtonLoading: boolean;\n shouldRefetchData: boolean;\n}\n\nconst initialState = {\n roleToDelete: null,\n showModalConfirmButtonLoading: false,\n shouldRefetchData: false,\n} satisfies State;\n\ninterface SetRoleToDeleteAction extends Pick<AdminRole, 'id'> {\n type: 'SET_ROLE_TO_DELETE';\n}\n\ninterface ResetDataToDeleteAction {\n type: 'RESET_DATA_TO_DELETE';\n}\n\ninterface OnRemoveRolesAction {\n type: 'ON_REMOVE_ROLES';\n}\n\ninterface OnRemoveRolesSucceededAction {\n type: 'ON_REMOVE_ROLES_SUCCEEDED';\n}\n\ntype Action =\n | SetRoleToDeleteAction\n | ResetDataToDeleteAction\n | OnRemoveRolesAction\n | OnRemoveRolesSucceededAction;\n\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n case 'ON_REMOVE_ROLES': {\n draftState.showModalConfirmButtonLoading = true;\n break;\n }\n case 'ON_REMOVE_ROLES_SUCCEEDED': {\n draftState.shouldRefetchData = true;\n draftState.roleToDelete = null;\n break;\n }\n case 'RESET_DATA_TO_DELETE': {\n draftState.shouldRefetchData = false;\n draftState.roleToDelete = null;\n draftState.showModalConfirmButtonLoading = false;\n break;\n }\n case 'SET_ROLE_TO_DELETE': {\n draftState.roleToDelete = action.id;\n\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.roles.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <ListPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedListPage, ListPage };\n"],"names":["useIntl","jsxs","Tr","jsx","Td","Typography","Flex","Box","IconButton","useTypedSelector","selectAdminPermissions","useAPIErrorHandler","useNotification","React","useQueryParams","useRBAC","useAdminRoles","useNavigate","useFetchClient","isFetchError","Page","Layouts","Button","Plus","SearchInput","Table","TFooter","Thead","Th","VisuallyHidden","Tbody","Duplicate","Pencil","Trash","Dialog","ConfirmDialog","produce"],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
- import { Tr, Td, Typography, Flex, Box, IconButton, Button, Table, TFooter, Thead, Th, VisuallyHidden, Tbody } from '@strapi/design-system';
3
+ import { Tr, Td, Typography, Flex, Box, IconButton, Button, Table, TFooter, Thead, Th, VisuallyHidden, Tbody, Dialog } from '@strapi/design-system';
4
4
  import { Plus, Duplicate, Pencil, Trash } from '@strapi/icons';
5
5
  import { produce } from 'immer';
6
6
  import { useIntl } from 'react-intl';
7
7
  import { useNavigate } from 'react-router-dom';
8
- import { o as useQueryParams, p as useFetchClient, b as Layouts, S as SearchInput, C as ConfirmDialog } from './index-EQL2s09p.mjs';
9
- import { b as useTypedSelector, P as Page, f as useAPIErrorHandler, u as useNotification, k as useRBAC } from './rbac-oJEkQdXG.mjs';
10
- import { u as useAdminRoles } from './useAdminRoles-cq3ZckdQ.mjs';
11
- import { s as selectAdminPermissions } from './selectors-Ilww6FA-.mjs';
8
+ import { o as useQueryParams, p as useFetchClient, b as Layouts, S as SearchInput, C as ConfirmDialog } from './index-f6STHGSC.mjs';
9
+ import { b as useTypedSelector, P as Page, f as useAPIErrorHandler, a as useNotification, k as useRBAC } from './Theme-PrUuuGtN.mjs';
10
+ import { u as useAdminRoles } from './useAdminRoles-Aj5B2oXT.mjs';
11
+ import { s as selectAdminPermissions } from './selectors-ZpHhvPK4.mjs';
12
12
  import { c as isFetchError } from './admin-B6AW0Kov.mjs';
13
13
 
14
14
  const RoleRow = ({
@@ -226,14 +226,7 @@ const ListPage = () => {
226
226
  ]
227
227
  }
228
228
  ) }),
229
- /* @__PURE__ */ jsx(
230
- ConfirmDialog,
231
- {
232
- isOpen: isWarningDeleteAllOpened,
233
- onConfirm: handleDeleteData,
234
- onClose: handleToggleModal
235
- }
236
- )
229
+ /* @__PURE__ */ jsx(Dialog.Root, { open: isWarningDeleteAllOpened, onOpenChange: handleToggleModal, children: /* @__PURE__ */ jsx(ConfirmDialog, { onConfirm: handleDeleteData }) })
237
230
  ] });
238
231
  };
239
232
  const initialState = {
@@ -272,4 +265,4 @@ const ProtectedListPage = () => {
272
265
  };
273
266
 
274
267
  export { ListPage, ProtectedListPage };
275
- //# sourceMappingURL=ListPage-VGqEsiEA.mjs.map
268
+ //# sourceMappingURL=ListPage-_sJsfVLq.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListPage-_sJsfVLq.mjs","sources":["../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx","../../admin/src/pages/Settings/pages/Roles/ListPage.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} borderWidth={0} />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n","import * as React from 'react';\n\nimport {\n Button,\n Dialog,\n Table,\n Tbody,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport { Duplicate, Pencil, Plus, Trash } from '@strapi/icons';\nimport { produce } from 'immer';\nimport { useIntl } from 'react-intl';\nimport { useNavigate } from 'react-router-dom';\n\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { SearchInput } from '../../../../components/SearchInput';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAdminRoles, AdminRole } from '../../../../hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useFetchClient } from '../../../../hooks/useFetchClient';\nimport { useQueryParams } from '../../../../hooks/useQueryParams';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { isFetchError } from '../../../../utils/getFetchClient';\n\nimport { RoleRow, RoleRowProps } from './components/RoleRow';\n\nconst ListPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector(selectAdminPermissions);\n const { formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n const [isWarningDeleteAllOpened, setIsWarningDeleteAllOpenend] = React.useState(false);\n const [{ query }] = useQueryParams<{ _q?: string }>();\n const {\n isLoading: isLoadingForPermissions,\n allowedActions: { canCreate, canDelete, canRead, canUpdate },\n } = useRBAC(permissions.settings?.roles);\n\n const { roles, refetch: refetchRoles } = useAdminRoles(\n { filters: query?._q ? { name: { $containsi: query._q } } : undefined },\n {\n refetchOnMountOrArgChange: true,\n skip: isLoadingForPermissions || !canRead,\n }\n );\n\n const navigate = useNavigate();\n const [{ roleToDelete }, dispatch] = React.useReducer(reducer, initialState);\n const { post } = useFetchClient();\n\n const handleDeleteData = async () => {\n try {\n dispatch({\n type: 'ON_REMOVE_ROLES',\n });\n\n await post('/admin/roles/batch-delete', {\n ids: [roleToDelete],\n });\n\n await refetchRoles();\n\n dispatch({\n type: 'RESET_DATA_TO_DELETE',\n });\n } catch (error) {\n if (isFetchError(error)) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n };\n\n const handleNewRoleClick = () => navigate('new');\n\n const handleToggleModal = () => setIsWarningDeleteAllOpenend((prev) => !prev);\n\n const handleClickDelete = (role: AdminRole) => (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (role.usersCount) {\n toggleNotification({\n type: 'info',\n message: formatMessage({ id: 'Roles.ListPage.notification.delete-not-allowed' }),\n });\n } else {\n dispatch({\n type: 'SET_ROLE_TO_DELETE',\n id: role.id,\n });\n\n handleToggleModal();\n }\n };\n\n const handleClickDuplicate = (role: AdminRole) => (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n navigate(`duplicate/${role.id}`);\n };\n\n const rowCount = roles.length + 1;\n const colCount = 6;\n\n if (isLoadingForPermissions) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Layouts.Header\n primaryAction={\n canCreate ? (\n <Button onClick={handleNewRoleClick} startIcon={<Plus />} size=\"S\">\n {formatMessage({\n id: 'Settings.roles.list.button.add',\n defaultMessage: 'Add new role',\n })}\n </Button>\n ) : null\n }\n title={formatMessage({\n id: 'global.roles',\n defaultMessage: 'roles',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.list.description',\n defaultMessage: 'List of roles',\n })}\n />\n {canRead && (\n <Layouts.Action\n startActions={\n <SearchInput\n label={formatMessage(\n { id: 'app.component.search.label', defaultMessage: 'Search for {target}' },\n {\n target: formatMessage({\n id: 'global.roles',\n defaultMessage: 'roles',\n }),\n }\n )}\n />\n }\n />\n )}\n {canRead && (\n <Layouts.Content>\n <Table\n colCount={colCount}\n rowCount={rowCount}\n footer={\n canCreate ? (\n <TFooter onClick={handleNewRoleClick} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.roles.list.button.add',\n defaultMessage: 'Add new role',\n })}\n </TFooter>\n ) : null\n }\n >\n <Thead>\n <Tr aria-rowindex={1}>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.users',\n defaultMessage: 'Users',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'global.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {roles?.map((role, index) => (\n <RoleRow\n key={role.id}\n id={role.id}\n name={role.name}\n description={role.description}\n usersCount={role.usersCount}\n icons={\n [\n canCreate &&\n ({\n onClick: handleClickDuplicate(role),\n label: formatMessage({\n id: 'app.utils.duplicate',\n defaultMessage: 'Duplicate',\n }),\n children: <Duplicate />,\n } satisfies RoleRowProps['icons'][number]),\n canUpdate &&\n ({\n onClick: () => navigate(role.id.toString()),\n label: formatMessage({ id: 'app.utils.edit', defaultMessage: 'Edit' }),\n children: <Pencil />,\n } satisfies RoleRowProps['icons'][number]),\n canDelete &&\n ({\n onClick: handleClickDelete(role),\n label: formatMessage({ id: 'global.delete', defaultMessage: 'Delete' }),\n children: <Trash />,\n } satisfies RoleRowProps['icons'][number]),\n ].filter(Boolean) as RoleRowProps['icons']\n }\n rowIndex={index + 2}\n canUpdate={canUpdate}\n />\n ))}\n </Tbody>\n </Table>\n </Layouts.Content>\n )}\n <Dialog.Root open={isWarningDeleteAllOpened} onOpenChange={handleToggleModal}>\n <ConfirmDialog onConfirm={handleDeleteData} />\n </Dialog.Root>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Reducer\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * TODO: do we actually need this reducer? It's not doing a lot...\n */\n\ninterface State {\n roleToDelete: null | AdminRole['id'];\n showModalConfirmButtonLoading: boolean;\n shouldRefetchData: boolean;\n}\n\nconst initialState = {\n roleToDelete: null,\n showModalConfirmButtonLoading: false,\n shouldRefetchData: false,\n} satisfies State;\n\ninterface SetRoleToDeleteAction extends Pick<AdminRole, 'id'> {\n type: 'SET_ROLE_TO_DELETE';\n}\n\ninterface ResetDataToDeleteAction {\n type: 'RESET_DATA_TO_DELETE';\n}\n\ninterface OnRemoveRolesAction {\n type: 'ON_REMOVE_ROLES';\n}\n\ninterface OnRemoveRolesSucceededAction {\n type: 'ON_REMOVE_ROLES_SUCCEEDED';\n}\n\ntype Action =\n | SetRoleToDeleteAction\n | ResetDataToDeleteAction\n | OnRemoveRolesAction\n | OnRemoveRolesSucceededAction;\n\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n case 'ON_REMOVE_ROLES': {\n draftState.showModalConfirmButtonLoading = true;\n break;\n }\n case 'ON_REMOVE_ROLES_SUCCEEDED': {\n draftState.shouldRefetchData = true;\n draftState.roleToDelete = null;\n break;\n }\n case 'RESET_DATA_TO_DELETE': {\n draftState.shouldRefetchData = false;\n draftState.roleToDelete = null;\n draftState.showModalConfirmButtonLoading = false;\n break;\n }\n case 'SET_ROLE_TO_DELETE': {\n draftState.roleToDelete = action.id;\n\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.roles.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <ListPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedListPage, ListPage };\n"],"names":[],"mappings":"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"}
@@ -10,12 +10,12 @@ const symbols = require('@strapi/icons/symbols');
10
10
  const qs = require('qs');
11
11
  const reactIntl = require('react-intl');
12
12
  const reactRouterDom = require('react-router-dom');
13
- const index = require('./index-duYn5r8_.js');
14
- const rbac = require('./rbac-5b9ylhpa.js');
13
+ const index = require('./index-TG8-3711.js');
14
+ const Theme = require('./Theme-7W0we6BI.js');
15
15
  const useOnce = require('./useOnce--ZSbXFh3.js');
16
16
  const apiTokens = require('./apiTokens-YxfAnO7_.js');
17
17
  const constants = require('./constants-8PhEUZTR.js');
18
- const Table = require('./Table-N9PZc6xL.js');
18
+ const Table = require('./Table-oO6QTH1W.js');
19
19
 
20
20
  function _interopNamespace(e) {
21
21
  if (e && e.__esModule) return e;
@@ -74,17 +74,17 @@ const TABLE_HEADERS = [
74
74
  ];
75
75
  const ListView = () => {
76
76
  const { formatMessage } = reactIntl.useIntl();
77
- const { toggleNotification } = rbac.useNotification();
78
- const permissions = rbac.useTypedSelector(
77
+ const { toggleNotification } = Theme.useNotification();
78
+ const permissions = Theme.useTypedSelector(
79
79
  (state) => state.admin_app.permissions.settings?.["api-tokens"]
80
80
  );
81
81
  const {
82
82
  allowedActions: { canRead, canCreate, canDelete, canUpdate }
83
- } = rbac.useRBAC(permissions);
83
+ } = Theme.useRBAC(permissions);
84
84
  const navigate = reactRouterDom.useNavigate();
85
- const { trackUsage } = rbac.useTracking();
85
+ const { trackUsage } = Theme.useTracking();
86
86
  const startSection = index.useGuidedTour("ListView", (state) => state.startSection);
87
- const { _unstableFormatAPIError: formatAPIError } = rbac.useAPIErrorHandler();
87
+ const { _unstableFormatAPIError: formatAPIError } = Theme.useAPIErrorHandler();
88
88
  React__namespace.useEffect(() => {
89
89
  startSection("apiTokens");
90
90
  }, [startSection]);
@@ -135,7 +135,7 @@ const ListView = () => {
135
135
  }
136
136
  };
137
137
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
138
- /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.Title, { children: formatMessage(
138
+ /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.Title, { children: formatMessage(
139
139
  { id: "Settings.PageTitle", defaultMessage: "Settings - {name}" },
140
140
  { name: "API Tokens" }
141
141
  ) }),
@@ -166,7 +166,7 @@ const ListView = () => {
166
166
  )
167
167
  }
168
168
  ),
169
- !canRead ? /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.NoPermissions, {}) : /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.Main, { "aria-busy": isLoading, children: /* @__PURE__ */ jsxRuntime.jsxs(index.Layouts.Content, { children: [
169
+ !canRead ? /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.NoPermissions, {}) : /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.Main, { "aria-busy": isLoading, children: /* @__PURE__ */ jsxRuntime.jsxs(index.Layouts.Content, { children: [
170
170
  apiTokens$1.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
171
171
  Table.Table,
172
172
  {
@@ -215,12 +215,12 @@ const ListView = () => {
215
215
  ] });
216
216
  };
217
217
  const ProtectedListView = () => {
218
- const permissions = rbac.useTypedSelector(
218
+ const permissions = Theme.useTypedSelector(
219
219
  (state) => state.admin_app.permissions.settings?.["api-tokens"].main
220
220
  );
221
- return /* @__PURE__ */ jsxRuntime.jsx(rbac.Page.Protect, { permissions, children: /* @__PURE__ */ jsxRuntime.jsx(ListView, {}) });
221
+ return /* @__PURE__ */ jsxRuntime.jsx(Theme.Page.Protect, { permissions, children: /* @__PURE__ */ jsxRuntime.jsx(ListView, {}) });
222
222
  };
223
223
 
224
224
  exports.ListView = ListView;
225
225
  exports.ProtectedListView = ProtectedListView;
226
- //# sourceMappingURL=ListView-uHb_Hgib.js.map
226
+ //# sourceMappingURL=ListView-6U-6GqOi.js.map