@strapi/admin 5.1.0 → 5.2.0

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 (164) hide show
  1. package/dist/admin/{ApplicationInfoPage-DldfSSWZ.mjs → ApplicationInfoPage-CSqP03kK.mjs} +2 -2
  2. package/dist/admin/{ApplicationInfoPage-DldfSSWZ.mjs.map → ApplicationInfoPage-CSqP03kK.mjs.map} +1 -1
  3. package/dist/admin/{ApplicationInfoPage-Dd2DDMLg.js → ApplicationInfoPage-DSp-wZPU.js} +2 -2
  4. package/dist/admin/{ApplicationInfoPage-Dd2DDMLg.js.map → ApplicationInfoPage-DSp-wZPU.js.map} +1 -1
  5. package/dist/admin/{AuthenticatedLayout-BDAgwReZ.mjs → AuthenticatedLayout-BIlGCFDE.mjs} +3 -3
  6. package/dist/admin/{AuthenticatedLayout-BDAgwReZ.mjs.map → AuthenticatedLayout-BIlGCFDE.mjs.map} +1 -1
  7. package/dist/admin/{AuthenticatedLayout-MuL9-yz8.js → AuthenticatedLayout-CsWTZJYZ.js} +3 -3
  8. package/dist/admin/{AuthenticatedLayout-MuL9-yz8.js.map → AuthenticatedLayout-CsWTZJYZ.js.map} +1 -1
  9. package/dist/admin/{CreatePage-CbAndJdb.js → CreatePage-CihLLGiA.js} +2 -2
  10. package/dist/admin/{CreatePage-CbAndJdb.js.map → CreatePage-CihLLGiA.js.map} +1 -1
  11. package/dist/admin/{CreatePage-ChoRnWKY.mjs → CreatePage-DNlBK-JL.mjs} +2 -2
  12. package/dist/admin/{CreatePage-ChoRnWKY.mjs.map → CreatePage-DNlBK-JL.mjs.map} +1 -1
  13. package/dist/admin/{CreatePage-B0FyZI6B.mjs → CreatePage-Dn4wbR6d.mjs} +2 -2
  14. package/dist/admin/{CreatePage-B0FyZI6B.mjs.map → CreatePage-Dn4wbR6d.mjs.map} +1 -1
  15. package/dist/admin/{CreatePage-DVJ4J82n.js → CreatePage-hkw435o7.js} +2 -2
  16. package/dist/admin/{CreatePage-DVJ4J82n.js.map → CreatePage-hkw435o7.js.map} +1 -1
  17. package/dist/admin/{CreateView-BVJ5IQit.mjs → CreateView-BHSYSEov.mjs} +2 -2
  18. package/dist/admin/{CreateView-BVJ5IQit.mjs.map → CreateView-BHSYSEov.mjs.map} +1 -1
  19. package/dist/admin/{CreateView-BGgZ3GRG.js → CreateView-BoYhyk-k.js} +2 -2
  20. package/dist/admin/{CreateView-BGgZ3GRG.js.map → CreateView-BoYhyk-k.js.map} +1 -1
  21. package/dist/admin/{CreateView-DUqnuPQo.js → CreateView-DyiCHkze.js} +2 -2
  22. package/dist/admin/{CreateView-DUqnuPQo.js.map → CreateView-DyiCHkze.js.map} +1 -1
  23. package/dist/admin/{CreateView-BNdZxAPZ.mjs → CreateView-a02G3EdU.mjs} +2 -2
  24. package/dist/admin/{CreateView-BNdZxAPZ.mjs.map → CreateView-a02G3EdU.mjs.map} +1 -1
  25. package/dist/admin/{EditPage-D1S9-vQG.mjs → EditPage-8BCMKtyr.mjs} +3 -3
  26. package/dist/admin/{EditPage-D1S9-vQG.mjs.map → EditPage-8BCMKtyr.mjs.map} +1 -1
  27. package/dist/admin/{EditPage-CDk5aBhY.js → EditPage-A9UxoVIJ.js} +3 -3
  28. package/dist/admin/{EditPage-CDk5aBhY.js.map → EditPage-A9UxoVIJ.js.map} +1 -1
  29. package/dist/admin/{EditPage-DN3STZLX.js → EditPage-B5recID8.js} +3 -3
  30. package/dist/admin/{EditPage-DN3STZLX.js.map → EditPage-B5recID8.js.map} +1 -1
  31. package/dist/admin/{EditPage-B0ny2qnv.mjs → EditPage-BUsdSjU9.mjs} +3 -3
  32. package/dist/admin/{EditPage-B0ny2qnv.mjs.map → EditPage-BUsdSjU9.mjs.map} +1 -1
  33. package/dist/admin/{EditPage-Dn4j0d3I.mjs → EditPage-BgyyZJ8E.mjs} +5 -5
  34. package/dist/admin/{EditPage-Dn4j0d3I.mjs.map → EditPage-BgyyZJ8E.mjs.map} +1 -1
  35. package/dist/admin/{EditPage-OkkRwYlD.js → EditPage-apTcQwOj.js} +5 -5
  36. package/dist/admin/{EditPage-OkkRwYlD.js.map → EditPage-apTcQwOj.js.map} +1 -1
  37. package/dist/admin/{EditView-BJXfuSPq.mjs → EditView-C2D-x_Xz.mjs} +3 -3
  38. package/dist/admin/{EditView-BJXfuSPq.mjs.map → EditView-C2D-x_Xz.mjs.map} +1 -1
  39. package/dist/admin/{EditView-BiJcDzgx.js → EditView-CP3Fb1gU.js} +3 -3
  40. package/dist/admin/{EditView-BiJcDzgx.js.map → EditView-CP3Fb1gU.js.map} +1 -1
  41. package/dist/admin/{EditViewPage-1lw3wsYL.mjs → EditViewPage-BxcYobnr.mjs} +3 -3
  42. package/dist/admin/{EditViewPage-1lw3wsYL.mjs.map → EditViewPage-BxcYobnr.mjs.map} +1 -1
  43. package/dist/admin/{EditViewPage--kxq5RmJ.js → EditViewPage-CNHrBxn8.js} +3 -3
  44. package/dist/admin/{EditViewPage--kxq5RmJ.js.map → EditViewPage-CNHrBxn8.js.map} +1 -1
  45. package/dist/admin/{EventsTable-C6kaynHy.js → EventsTable-BZ4u3aCv.js} +2 -2
  46. package/dist/admin/{EventsTable-C6kaynHy.js.map → EventsTable-BZ4u3aCv.js.map} +1 -1
  47. package/dist/admin/{EventsTable-tnn84aiE.mjs → EventsTable-BZ9eLXRo.mjs} +2 -2
  48. package/dist/admin/{EventsTable-tnn84aiE.mjs.map → EventsTable-BZ9eLXRo.mjs.map} +1 -1
  49. package/dist/admin/{HomePage-gLvSEGxc.mjs → HomePage-BRn3pXKH.mjs} +3 -3
  50. package/dist/admin/{HomePage-gLvSEGxc.mjs.map → HomePage-BRn3pXKH.mjs.map} +1 -1
  51. package/dist/admin/{HomePage-rpex--FY.js → HomePage-C1A6nQXm.js} +3 -3
  52. package/dist/admin/{HomePage-rpex--FY.js.map → HomePage-C1A6nQXm.js.map} +1 -1
  53. package/dist/admin/{HomePage-BWutUguU.js → HomePage-DJpdBewm.js} +2 -2
  54. package/dist/admin/{HomePage-BWutUguU.js.map → HomePage-DJpdBewm.js.map} +1 -1
  55. package/dist/admin/{HomePage-DebSqGMR.mjs → HomePage-DTNQWeZ0.mjs} +2 -2
  56. package/dist/admin/{HomePage-DebSqGMR.mjs.map → HomePage-DTNQWeZ0.mjs.map} +1 -1
  57. package/dist/admin/{InstalledPlugins-DNi1Ozge.mjs → InstalledPlugins-DaNtwvGY.mjs} +2 -2
  58. package/dist/admin/{InstalledPlugins-DNi1Ozge.mjs.map → InstalledPlugins-DaNtwvGY.mjs.map} +1 -1
  59. package/dist/admin/{InstalledPlugins-DRB0aaFB.js → InstalledPlugins-KpjVfxeB.js} +2 -2
  60. package/dist/admin/{InstalledPlugins-DRB0aaFB.js.map → InstalledPlugins-KpjVfxeB.js.map} +1 -1
  61. package/dist/admin/{Layout-D6aFOKIt.mjs → Layout-D9lATR6z.mjs} +3 -3
  62. package/dist/admin/{Layout-D6aFOKIt.mjs.map → Layout-D9lATR6z.mjs.map} +1 -1
  63. package/dist/admin/{Layout-BewrL6yj.js → Layout-DMn9sMFI.js} +3 -3
  64. package/dist/admin/{Layout-BewrL6yj.js.map → Layout-DMn9sMFI.js.map} +1 -1
  65. package/dist/admin/{ListPage-C7PzCyz-.mjs → ListPage-9LZO-9Qf.mjs} +2 -2
  66. package/dist/admin/{ListPage-C7PzCyz-.mjs.map → ListPage-9LZO-9Qf.mjs.map} +1 -1
  67. package/dist/admin/{ListPage-CZjpV9DP.mjs → ListPage-B1IT9Dup.mjs} +2 -2
  68. package/dist/admin/{ListPage-CZjpV9DP.mjs.map → ListPage-B1IT9Dup.mjs.map} +1 -1
  69. package/dist/admin/{ListPage-DCIl-NZl.js → ListPage-BDBr31kd.js} +2 -2
  70. package/dist/admin/{ListPage-DCIl-NZl.js.map → ListPage-BDBr31kd.js.map} +1 -1
  71. package/dist/admin/{ListPage-Bi7ZDm1E.mjs → ListPage-Btx39-XQ.mjs} +5 -5
  72. package/dist/admin/{ListPage-Bi7ZDm1E.mjs.map → ListPage-Btx39-XQ.mjs.map} +1 -1
  73. package/dist/admin/{ListPage-Ur4LWaSM.js → ListPage-BvNejJA_.js} +2 -2
  74. package/dist/admin/{ListPage-Ur4LWaSM.js.map → ListPage-BvNejJA_.js.map} +1 -1
  75. package/dist/admin/{ListPage-Bf4BnRo8.mjs → ListPage-Ci918-m8.mjs} +3 -3
  76. package/dist/admin/{ListPage-Bf4BnRo8.mjs.map → ListPage-Ci918-m8.mjs.map} +1 -1
  77. package/dist/admin/{ListPage-Dbe07aE8.js → ListPage-D8cBC-ig.js} +5 -5
  78. package/dist/admin/{ListPage-Dbe07aE8.js.map → ListPage-D8cBC-ig.js.map} +1 -1
  79. package/dist/admin/{ListPage-BghF3W2N.js → ListPage-Djyv7QZO.js} +2 -2
  80. package/dist/admin/{ListPage-BghF3W2N.js.map → ListPage-Djyv7QZO.js.map} +1 -1
  81. package/dist/admin/{ListPage-Dd1M3C-T.mjs → ListPage-I9TzR1dE.mjs} +2 -2
  82. package/dist/admin/{ListPage-Dd1M3C-T.mjs.map → ListPage-I9TzR1dE.mjs.map} +1 -1
  83. package/dist/admin/{ListPage-BCCuc6zH.js → ListPage-YOWelQZs.js} +3 -3
  84. package/dist/admin/{ListPage-BCCuc6zH.js.map → ListPage-YOWelQZs.js.map} +1 -1
  85. package/dist/admin/{ListView-uMtQ9RkH.js → ListView-BB-LXwUB.js} +3 -3
  86. package/dist/admin/{ListView-uMtQ9RkH.js.map → ListView-BB-LXwUB.js.map} +1 -1
  87. package/dist/admin/{ListView-CQeTq-KJ.mjs → ListView-CnQapNRn.mjs} +3 -3
  88. package/dist/admin/{ListView-CQeTq-KJ.mjs.map → ListView-CnQapNRn.mjs.map} +1 -1
  89. package/dist/admin/{ListView-OyD4icSo.js → ListView-CrdcqpD-.js} +3 -3
  90. package/dist/admin/{ListView-OyD4icSo.js.map → ListView-CrdcqpD-.js.map} +1 -1
  91. package/dist/admin/{ListView-BBL0Y5Fr.mjs → ListView-Dix9AWIN.mjs} +3 -3
  92. package/dist/admin/{ListView-BBL0Y5Fr.mjs.map → ListView-Dix9AWIN.mjs.map} +1 -1
  93. package/dist/admin/{Login-R2fEKR0Q.js → Login-BLQ-ZBh7.js} +2 -2
  94. package/dist/admin/{Login-R2fEKR0Q.js.map → Login-BLQ-ZBh7.js.map} +1 -1
  95. package/dist/admin/{Login-BOhhFV9K.mjs → Login-BdyX6Wiu.mjs} +2 -2
  96. package/dist/admin/{Login-BOhhFV9K.mjs.map → Login-BdyX6Wiu.mjs.map} +1 -1
  97. package/dist/admin/{MagicLinkEE-DPF4g25m.mjs → MagicLinkEE-C9pP6oQq.mjs} +3 -3
  98. package/dist/admin/{MagicLinkEE-DPF4g25m.mjs.map → MagicLinkEE-C9pP6oQq.mjs.map} +1 -1
  99. package/dist/admin/{MagicLinkEE-CrlHruSV.js → MagicLinkEE-CzOkNmUy.js} +3 -3
  100. package/dist/admin/{MagicLinkEE-CrlHruSV.js.map → MagicLinkEE-CzOkNmUy.js.map} +1 -1
  101. package/dist/admin/{MarketplacePage-oP73ol8s.js → MarketplacePage-B8qRAPqj.js} +2 -2
  102. package/dist/admin/{MarketplacePage-oP73ol8s.js.map → MarketplacePage-B8qRAPqj.js.map} +1 -1
  103. package/dist/admin/{MarketplacePage-BFjYonEi.mjs → MarketplacePage-CVn9KT9t.mjs} +2 -2
  104. package/dist/admin/{MarketplacePage-BFjYonEi.mjs.map → MarketplacePage-CVn9KT9t.mjs.map} +1 -1
  105. package/dist/admin/{ProfilePage-CjUIVnSq.mjs → ProfilePage-Bl-4mYd2.mjs} +3 -3
  106. package/dist/admin/{ProfilePage-CjUIVnSq.mjs.map → ProfilePage-Bl-4mYd2.mjs.map} +1 -1
  107. package/dist/admin/{ProfilePage-DbUbDHHe.js → ProfilePage-ReGa9dje.js} +3 -3
  108. package/dist/admin/{ProfilePage-DbUbDHHe.js.map → ProfilePage-ReGa9dje.js.map} +1 -1
  109. package/dist/admin/{PurchaseAuditLogs-BGdnFSla.mjs → PurchaseAuditLogs-2oeGFds5.mjs} +2 -2
  110. package/dist/admin/{PurchaseAuditLogs-BGdnFSla.mjs.map → PurchaseAuditLogs-2oeGFds5.mjs.map} +1 -1
  111. package/dist/admin/{PurchaseAuditLogs-Bs773GKu.js → PurchaseAuditLogs-6UP6cZcy.js} +2 -2
  112. package/dist/admin/{PurchaseAuditLogs-Bs773GKu.js.map → PurchaseAuditLogs-6UP6cZcy.js.map} +1 -1
  113. package/dist/admin/{PurchaseSingleSignOn-D3SlyJN0.js → PurchaseSingleSignOn-BzMh0KoO.js} +2 -2
  114. package/dist/admin/{PurchaseSingleSignOn-D3SlyJN0.js.map → PurchaseSingleSignOn-BzMh0KoO.js.map} +1 -1
  115. package/dist/admin/{PurchaseSingleSignOn-C4EtddmS.mjs → PurchaseSingleSignOn-Qk9HDHrC.mjs} +2 -2
  116. package/dist/admin/{PurchaseSingleSignOn-C4EtddmS.mjs.map → PurchaseSingleSignOn-Qk9HDHrC.mjs.map} +1 -1
  117. package/dist/admin/{SelectRoles-DqX-L_B3.mjs → SelectRoles-Bsnj4-X2.mjs} +3 -3
  118. package/dist/admin/{SelectRoles-DqX-L_B3.mjs.map → SelectRoles-Bsnj4-X2.mjs.map} +1 -1
  119. package/dist/admin/{SelectRoles-HDf_cQTp.js → SelectRoles-Da7Gj-ZS.js} +3 -3
  120. package/dist/admin/{SelectRoles-HDf_cQTp.js.map → SelectRoles-Da7Gj-ZS.js.map} +1 -1
  121. package/dist/admin/{SingleSignOnPage-CeXhKg5J.js → SingleSignOnPage--K4FK4Gl.js} +3 -3
  122. package/dist/admin/{SingleSignOnPage-CeXhKg5J.js.map → SingleSignOnPage--K4FK4Gl.js.map} +1 -1
  123. package/dist/admin/{SingleSignOnPage-CJMGSlnC.mjs → SingleSignOnPage-CzkeGzw6.mjs} +3 -3
  124. package/dist/admin/{SingleSignOnPage-CJMGSlnC.mjs.map → SingleSignOnPage-CzkeGzw6.mjs.map} +1 -1
  125. package/dist/admin/{Table-DxU7QkUM.mjs → Table-DjjsXtiF.mjs} +2 -2
  126. package/dist/admin/{Table-DxU7QkUM.mjs.map → Table-DjjsXtiF.mjs.map} +1 -1
  127. package/dist/admin/{Table-BCoWjCx8.js → Table-WJbeUTg2.js} +2 -2
  128. package/dist/admin/{Table-BCoWjCx8.js.map → Table-WJbeUTg2.js.map} +1 -1
  129. package/dist/admin/Theme-K6zNL3JT.js.map +1 -1
  130. package/dist/admin/Theme-NAd2H4cV.mjs.map +1 -1
  131. package/dist/admin/{TokenTypeSelect-CRFfy4R9.mjs → TokenTypeSelect-CAfxT_Q8.mjs} +2 -2
  132. package/dist/admin/{TokenTypeSelect-CRFfy4R9.mjs.map → TokenTypeSelect-CAfxT_Q8.mjs.map} +1 -1
  133. package/dist/admin/{TokenTypeSelect-BUihIiKM.js → TokenTypeSelect-CrmgLBBx.js} +2 -2
  134. package/dist/admin/{TokenTypeSelect-BUihIiKM.js.map → TokenTypeSelect-CrmgLBBx.js.map} +1 -1
  135. package/dist/admin/{UseCasePage-gyvNjMrl.mjs → UseCasePage-BFJAi2Bd.mjs} +2 -2
  136. package/dist/admin/{UseCasePage-gyvNjMrl.mjs.map → UseCasePage-BFJAi2Bd.mjs.map} +1 -1
  137. package/dist/admin/{UseCasePage-nc_IkHEL.js → UseCasePage-UtJuCEgI.js} +2 -2
  138. package/dist/admin/{UseCasePage-nc_IkHEL.js.map → UseCasePage-UtJuCEgI.js.map} +1 -1
  139. package/dist/admin/{constants-SumPT2k0.mjs → constants-BPNvoJmk.mjs} +2 -2
  140. package/dist/admin/{constants-SumPT2k0.mjs.map → constants-BPNvoJmk.mjs.map} +1 -1
  141. package/dist/admin/{constants-CPAbL0gb.js → constants-CC8994T3.js} +2 -2
  142. package/dist/admin/{constants-CPAbL0gb.js.map → constants-CC8994T3.js.map} +1 -1
  143. package/dist/admin/{index-C02D7oHu.mjs → index-DUWx-KG9.mjs} +33 -32
  144. package/dist/admin/index-DUWx-KG9.mjs.map +1 -0
  145. package/dist/admin/{index-DVlQHTOk.js → index-Dev-BOdA.js} +33 -31
  146. package/dist/admin/index-Dev-BOdA.js.map +1 -0
  147. package/dist/admin/index.js +2 -1
  148. package/dist/admin/index.js.map +1 -1
  149. package/dist/admin/index.mjs +1 -1
  150. package/dist/admin/src/features/BackButton.d.ts +2 -1
  151. package/dist/admin/src/features/Tracking.d.ts +1 -1
  152. package/dist/admin/src/index.d.ts +1 -0
  153. package/dist/admin/{useAdminRoles-MxUoA3eI.mjs → useAdminRoles-BiDYgELB.mjs} +2 -2
  154. package/dist/admin/{useAdminRoles-MxUoA3eI.mjs.map → useAdminRoles-BiDYgELB.mjs.map} +1 -1
  155. package/dist/admin/{useAdminRoles-RoyQzbU2.js → useAdminRoles-C9d0hdXa.js} +2 -2
  156. package/dist/admin/{useAdminRoles-RoyQzbU2.js.map → useAdminRoles-C9d0hdXa.js.map} +1 -1
  157. package/dist/admin/{validation-CuBq_NDL.mjs → validation-B3gdYett.mjs} +2 -2
  158. package/dist/admin/{validation-CuBq_NDL.mjs.map → validation-B3gdYett.mjs.map} +1 -1
  159. package/dist/admin/{validation-1_lLs_tO.js → validation-DRptyAiR.js} +2 -2
  160. package/dist/admin/{validation-1_lLs_tO.js.map → validation-DRptyAiR.js.map} +1 -1
  161. package/dist/package.json.d.ts +1 -1
  162. package/package.json +8 -8
  163. package/dist/admin/index-C02D7oHu.mjs.map +0 -1
  164. package/dist/admin/index-DVlQHTOk.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CreatePage-ChoRnWKY.mjs","sources":["../../admin/src/pages/Settings/pages/Roles/CreatePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Main,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { format } from 'date-fns';\nimport { Formik, Form, FormikHelpers } from 'formik';\nimport { useIntl } from 'react-intl';\nimport { useNavigate, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport {\n useCreateRoleMutation,\n useGetRolePermissionLayoutQuery,\n useGetRolePermissionsQuery,\n useUpdateRolePermissionsMutation,\n} from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\n\nimport { Permissions, PermissionsAPI } from './components/Permissions';\n\n/* -------------------------------------------------------------------------------------------------\n * CreatePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst CREATE_SCHEMA = yup.object().shape({\n name: yup.string().required(translatedErrors.required.id),\n description: yup.string().required(translatedErrors.required.id),\n});\n\n/**\n * TODO: be nice if we could just infer this from the schema\n */\ninterface CreateRoleFormValues {\n name: string;\n description: string;\n}\n\n/**\n * TODO: this whole section of the app needs refactoring. Using a ref to\n * manage the state of the child is nonsensical.\n */\nconst CreatePage = () => {\n const { id } = useParams();\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const navigate = useNavigate();\n const permissionsRef = React.useRef<PermissionsAPI>(null);\n const { trackUsage } = useTracking();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingPermissionsLayout, currentData: permissionsLayout } =\n useGetRolePermissionLayoutQuery({\n /**\n * Role here is a query param so if there's no role we pass an empty string\n * which returns us a default layout.\n */\n role: id ?? '',\n });\n\n /**\n * We need this so if we're cloning a role, we can fetch\n * the current permissions that role has.\n */\n const { currentData: rolePermissions, isLoading: isLoadingRole } = useGetRolePermissionsQuery(\n {\n id: id!,\n },\n {\n skip: !id,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [createRole] = useCreateRoleMutation();\n const [updateRolePermissions] = useUpdateRolePermissionsMutation();\n\n const handleCreateRoleSubmit = async (\n data: CreateRoleFormValues,\n formik: FormikHelpers<CreateRoleFormValues>\n ) => {\n try {\n if (id) {\n trackUsage('willDuplicateRole');\n } else {\n trackUsage('willCreateNewRole');\n }\n\n const res = await createRole(data);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n const { permissionsToSend } = permissionsRef.current?.getPermissions() ?? {};\n\n if (res.data.id && Array.isArray(permissionsToSend) && permissionsToSend.length > 0) {\n const updateRes = await updateRolePermissions({\n id: res.data.id,\n permissions: permissionsToSend,\n });\n\n if ('error' in updateRes) {\n if (isBaseQueryError(updateRes.error) && updateRes.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(updateRes.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(updateRes.error),\n });\n }\n\n return;\n }\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'Settings.roles.created', defaultMessage: 'created' }),\n });\n\n navigate(`../roles/${res.data.id.toString()}`, { replace: true });\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n if ((isLoadingPermissionsLayout && isLoadingRole) || !permissionsLayout) {\n return <Page.Loading />;\n }\n\n return (\n <Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Formik\n initialValues={\n {\n name: '',\n description: `${formatMessage({\n id: 'Settings.roles.form.created',\n defaultMessage: 'Created',\n })} ${format(new Date(), 'PPP')}`,\n } satisfies CreateRoleFormValues\n }\n onSubmit={handleCreateRoleSubmit}\n validationSchema={CREATE_SCHEMA}\n validateOnChange={false}\n >\n {({ values, errors, handleReset, handleChange, isSubmitting }) => (\n <Form>\n <>\n <Layouts.Header\n primaryAction={\n <Flex gap={2}>\n <Button\n variant=\"secondary\"\n onClick={() => {\n handleReset();\n permissionsRef.current?.resetForm();\n }}\n >\n {formatMessage({\n id: 'app.components.Button.reset',\n defaultMessage: 'Reset',\n })}\n </Button>\n <Button type=\"submit\" loading={isSubmitting} startIcon={<Check />}>\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n }\n title={formatMessage({\n id: 'Settings.roles.create.title',\n defaultMessage: 'Create a role',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.create.description',\n defaultMessage: 'Define the rights given to the role',\n })}\n navigationAction={<BackButton />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <UsersRoleNumber>\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: 0 }\n )}\n </UsersRoleNumber>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput onChange={handleChange} value={values.name} />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea onChange={handleChange} value={values.description} />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n <Box shadow=\"filterShadow\" hasRadius>\n <Permissions\n isFormDisabled={false}\n ref={permissionsRef}\n permissions={rolePermissions}\n layout={permissionsLayout}\n />\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n </Form>\n )}\n </Formik>\n </Main>\n );\n};\n\nconst UsersRoleNumber = styled.div`\n border: 1px solid ${({ theme }) => theme.colors.primary200};\n background: ${({ theme }) => theme.colors.primary100};\n padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[4]}`};\n color: ${({ theme }) => theme.colors.primary600};\n border-radius: ${({ theme }) => theme.borderRadius};\n font-size: 1.2rem;\n font-weight: bold;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedCreatePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedCreatePage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.roles.create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <CreatePage />\n </Page.Protect>\n );\n};\n\nexport { CreatePage, ProtectedCreatePage };\n"],"names":["translatedErrors"],"mappings":"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"}
1
+ {"version":3,"file":"CreatePage-DNlBK-JL.mjs","sources":["../../admin/src/pages/Settings/pages/Roles/CreatePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Main,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { format } from 'date-fns';\nimport { Formik, Form, FormikHelpers } from 'formik';\nimport { useIntl } from 'react-intl';\nimport { useNavigate, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport {\n useCreateRoleMutation,\n useGetRolePermissionLayoutQuery,\n useGetRolePermissionsQuery,\n useUpdateRolePermissionsMutation,\n} from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\n\nimport { Permissions, PermissionsAPI } from './components/Permissions';\n\n/* -------------------------------------------------------------------------------------------------\n * CreatePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst CREATE_SCHEMA = yup.object().shape({\n name: yup.string().required(translatedErrors.required.id),\n description: yup.string().required(translatedErrors.required.id),\n});\n\n/**\n * TODO: be nice if we could just infer this from the schema\n */\ninterface CreateRoleFormValues {\n name: string;\n description: string;\n}\n\n/**\n * TODO: this whole section of the app needs refactoring. Using a ref to\n * manage the state of the child is nonsensical.\n */\nconst CreatePage = () => {\n const { id } = useParams();\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const navigate = useNavigate();\n const permissionsRef = React.useRef<PermissionsAPI>(null);\n const { trackUsage } = useTracking();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingPermissionsLayout, currentData: permissionsLayout } =\n useGetRolePermissionLayoutQuery({\n /**\n * Role here is a query param so if there's no role we pass an empty string\n * which returns us a default layout.\n */\n role: id ?? '',\n });\n\n /**\n * We need this so if we're cloning a role, we can fetch\n * the current permissions that role has.\n */\n const { currentData: rolePermissions, isLoading: isLoadingRole } = useGetRolePermissionsQuery(\n {\n id: id!,\n },\n {\n skip: !id,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [createRole] = useCreateRoleMutation();\n const [updateRolePermissions] = useUpdateRolePermissionsMutation();\n\n const handleCreateRoleSubmit = async (\n data: CreateRoleFormValues,\n formik: FormikHelpers<CreateRoleFormValues>\n ) => {\n try {\n if (id) {\n trackUsage('willDuplicateRole');\n } else {\n trackUsage('willCreateNewRole');\n }\n\n const res = await createRole(data);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n const { permissionsToSend } = permissionsRef.current?.getPermissions() ?? {};\n\n if (res.data.id && Array.isArray(permissionsToSend) && permissionsToSend.length > 0) {\n const updateRes = await updateRolePermissions({\n id: res.data.id,\n permissions: permissionsToSend,\n });\n\n if ('error' in updateRes) {\n if (isBaseQueryError(updateRes.error) && updateRes.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(updateRes.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(updateRes.error),\n });\n }\n\n return;\n }\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'Settings.roles.created', defaultMessage: 'created' }),\n });\n\n navigate(`../roles/${res.data.id.toString()}`, { replace: true });\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n if ((isLoadingPermissionsLayout && isLoadingRole) || !permissionsLayout) {\n return <Page.Loading />;\n }\n\n return (\n <Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Formik\n initialValues={\n {\n name: '',\n description: `${formatMessage({\n id: 'Settings.roles.form.created',\n defaultMessage: 'Created',\n })} ${format(new Date(), 'PPP')}`,\n } satisfies CreateRoleFormValues\n }\n onSubmit={handleCreateRoleSubmit}\n validationSchema={CREATE_SCHEMA}\n validateOnChange={false}\n >\n {({ values, errors, handleReset, handleChange, isSubmitting }) => (\n <Form>\n <>\n <Layouts.Header\n primaryAction={\n <Flex gap={2}>\n <Button\n variant=\"secondary\"\n onClick={() => {\n handleReset();\n permissionsRef.current?.resetForm();\n }}\n >\n {formatMessage({\n id: 'app.components.Button.reset',\n defaultMessage: 'Reset',\n })}\n </Button>\n <Button type=\"submit\" loading={isSubmitting} startIcon={<Check />}>\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n }\n title={formatMessage({\n id: 'Settings.roles.create.title',\n defaultMessage: 'Create a role',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.create.description',\n defaultMessage: 'Define the rights given to the role',\n })}\n navigationAction={<BackButton />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <UsersRoleNumber>\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: 0 }\n )}\n </UsersRoleNumber>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput onChange={handleChange} value={values.name} />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea onChange={handleChange} value={values.description} />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n <Box shadow=\"filterShadow\" hasRadius>\n <Permissions\n isFormDisabled={false}\n ref={permissionsRef}\n permissions={rolePermissions}\n layout={permissionsLayout}\n />\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n </Form>\n )}\n </Formik>\n </Main>\n );\n};\n\nconst UsersRoleNumber = styled.div`\n border: 1px solid ${({ theme }) => theme.colors.primary200};\n background: ${({ theme }) => theme.colors.primary100};\n padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[4]}`};\n color: ${({ theme }) => theme.colors.primary600};\n border-radius: ${({ theme }) => theme.borderRadius};\n font-size: 1.2rem;\n font-weight: bold;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedCreatePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedCreatePage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.roles.create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <CreatePage />\n </Page.Protect>\n );\n};\n\nexport { CreatePage, ProtectedCreatePage };\n"],"names":["translatedErrors"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { b as useTypedSelector, P as Page } from './Theme-NAd2H4cV.mjs';
3
- import { E as EditPage } from './EditPage-B0ny2qnv.mjs';
3
+ import { E as EditPage } from './EditPage-BUsdSjU9.mjs';
4
4
 
5
5
  const ProtectedCreatePage = () => {
6
6
  const permissions = useTypedSelector(
@@ -10,4 +10,4 @@ const ProtectedCreatePage = () => {
10
10
  };
11
11
 
12
12
  export { EditPage as CreatePage, ProtectedCreatePage };
13
- //# sourceMappingURL=CreatePage-B0FyZI6B.mjs.map
13
+ //# sourceMappingURL=CreatePage-Dn4wbR6d.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreatePage-B0FyZI6B.mjs","sources":["../../admin/src/pages/Settings/pages/Webhooks/CreatePage.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditPage } from './EditPage';\n\nconst ProtectedCreatePage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedCreatePage, EditPage as CreatePage };\n"],"names":[],"mappings":";;;;AAKA,MAAM,sBAAsB,MAAM;AAChC,EAAA,MAAM,WAAc,GAAA,gBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,SAAU,CAAA,WAAA,CAAY,UAAU,QAAS,CAAA,MAAA;AAAA,GAC5D,CAAA;AAEA,EAAA,2BACG,IAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAA,GAAA,CAAC,YAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"CreatePage-Dn4wbR6d.mjs","sources":["../../admin/src/pages/Settings/pages/Webhooks/CreatePage.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditPage } from './EditPage';\n\nconst ProtectedCreatePage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedCreatePage, EditPage as CreatePage };\n"],"names":[],"mappings":";;;;AAKA,MAAM,sBAAsB,MAAM;AAChC,EAAA,MAAM,WAAc,GAAA,gBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,SAAU,CAAA,WAAA,CAAY,UAAU,QAAS,CAAA,MAAA;AAAA,GAC5D,CAAA;AAEA,EAAA,2BACG,IAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAA,GAAA,CAAC,YAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const Theme = require('./Theme-K6zNL3JT.js');
7
- const EditPage = require('./EditPage-CDk5aBhY.js');
7
+ const EditPage = require('./EditPage-A9UxoVIJ.js');
8
8
 
9
9
  const ProtectedCreatePage = () => {
10
10
  const permissions = Theme.useTypedSelector(
@@ -15,4 +15,4 @@ const ProtectedCreatePage = () => {
15
15
 
16
16
  exports.CreatePage = EditPage.EditPage;
17
17
  exports.ProtectedCreatePage = ProtectedCreatePage;
18
- //# sourceMappingURL=CreatePage-DVJ4J82n.js.map
18
+ //# sourceMappingURL=CreatePage-hkw435o7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreatePage-DVJ4J82n.js","sources":["../../admin/src/pages/Settings/pages/Webhooks/CreatePage.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditPage } from './EditPage';\n\nconst ProtectedCreatePage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedCreatePage, EditPage as CreatePage };\n"],"names":["useTypedSelector","Page","jsx","EditPage"],"mappings":";;;;;;;;AAKA,MAAM,sBAAsB,MAAM;AAChC,EAAA,MAAM,WAAc,GAAAA,sBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,SAAU,CAAA,WAAA,CAAY,UAAU,QAAS,CAAA,MAAA;AAAA,GAC5D,CAAA;AAEA,EAAA,sCACGC,UAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAAC,cAAA,CAACC,qBAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;;"}
1
+ {"version":3,"file":"CreatePage-hkw435o7.js","sources":["../../admin/src/pages/Settings/pages/Webhooks/CreatePage.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditPage } from './EditPage';\n\nconst ProtectedCreatePage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedCreatePage, EditPage as CreatePage };\n"],"names":["useTypedSelector","Page","jsx","EditPage"],"mappings":";;;;;;;;AAKA,MAAM,sBAAsB,MAAM;AAChC,EAAA,MAAM,WAAc,GAAAA,sBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,SAAU,CAAA,WAAA,CAAY,UAAU,QAAS,CAAA,MAAA;AAAA,GAC5D,CAAA;AAEA,EAAA,sCACGC,UAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAAC,cAAA,CAACC,qBAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { b as useTypedSelector, P as Page } from './Theme-NAd2H4cV.mjs';
3
- import { EditView } from './EditView-BJXfuSPq.mjs';
3
+ import { EditView } from './EditView-C2D-x_Xz.mjs';
4
4
 
5
5
  const ProtectedCreateView = () => {
6
6
  const permissions = useTypedSelector(
@@ -10,4 +10,4 @@ const ProtectedCreateView = () => {
10
10
  };
11
11
 
12
12
  export { ProtectedCreateView };
13
- //# sourceMappingURL=CreateView-BVJ5IQit.mjs.map
13
+ //# sourceMappingURL=CreateView-BHSYSEov.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateView-BVJ5IQit.mjs","sources":["../../admin/src/pages/Settings/pages/TransferTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAA,gBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,iBAAiB,CAAE,CAAA,MAAA;AAAA,GACvE,CAAA;AAEA,EAAA,2BACG,IAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAA,GAAA,CAAC,YAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"CreateView-BHSYSEov.mjs","sources":["../../admin/src/pages/Settings/pages/TransferTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAA,gBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,iBAAiB,CAAE,CAAA,MAAA;AAAA,GACvE,CAAA;AAEA,EAAA,2BACG,IAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAA,GAAA,CAAC,YAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const Theme = require('./Theme-K6zNL3JT.js');
7
- const EditViewPage = require('./EditViewPage--kxq5RmJ.js');
7
+ const EditViewPage = require('./EditViewPage-CNHrBxn8.js');
8
8
 
9
9
  const ProtectedCreateView = () => {
10
10
  const permissions = Theme.useTypedSelector(
@@ -14,4 +14,4 @@ const ProtectedCreateView = () => {
14
14
  };
15
15
 
16
16
  exports.ProtectedCreateView = ProtectedCreateView;
17
- //# sourceMappingURL=CreateView-BGgZ3GRG.js.map
17
+ //# sourceMappingURL=CreateView-BoYhyk-k.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateView-BGgZ3GRG.js","sources":["../../admin/src/pages/Settings/pages/ApiTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView/EditViewPage';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":["useTypedSelector","Page","jsx","EditView"],"mappings":";;;;;;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAAA,sBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,YAAY,CAAE,CAAA,MAAA;AAAA,GAClE,CAAA;AAEA,EAAA,sCACGC,UAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAAC,cAAA,CAACC,yBAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"CreateView-BoYhyk-k.js","sources":["../../admin/src/pages/Settings/pages/ApiTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView/EditViewPage';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":["useTypedSelector","Page","jsx","EditView"],"mappings":";;;;;;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAAA,sBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,YAAY,CAAE,CAAA,MAAA;AAAA,GAClE,CAAA;AAEA,EAAA,sCACGC,UAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAAC,cAAA,CAACC,yBAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const Theme = require('./Theme-K6zNL3JT.js');
7
- const EditView = require('./EditView-BiJcDzgx.js');
7
+ const EditView = require('./EditView-CP3Fb1gU.js');
8
8
 
9
9
  const ProtectedCreateView = () => {
10
10
  const permissions = Theme.useTypedSelector(
@@ -14,4 +14,4 @@ const ProtectedCreateView = () => {
14
14
  };
15
15
 
16
16
  exports.ProtectedCreateView = ProtectedCreateView;
17
- //# sourceMappingURL=CreateView-DUqnuPQo.js.map
17
+ //# sourceMappingURL=CreateView-DyiCHkze.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateView-DUqnuPQo.js","sources":["../../admin/src/pages/Settings/pages/TransferTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":["useTypedSelector","Page","jsx","EditView"],"mappings":";;;;;;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAAA,sBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,iBAAiB,CAAE,CAAA,MAAA;AAAA,GACvE,CAAA;AAEA,EAAA,sCACGC,UAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAAC,cAAA,CAACC,qBAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"CreateView-DyiCHkze.js","sources":["../../admin/src/pages/Settings/pages/TransferTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":["useTypedSelector","Page","jsx","EditView"],"mappings":";;;;;;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAAA,sBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,iBAAiB,CAAE,CAAA,MAAA;AAAA,GACvE,CAAA;AAEA,EAAA,sCACGC,UAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAAC,cAAA,CAACC,qBAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { b as useTypedSelector, P as Page } from './Theme-NAd2H4cV.mjs';
3
- import { EditView } from './EditViewPage-1lw3wsYL.mjs';
3
+ import { EditView } from './EditViewPage-BxcYobnr.mjs';
4
4
 
5
5
  const ProtectedCreateView = () => {
6
6
  const permissions = useTypedSelector(
@@ -10,4 +10,4 @@ const ProtectedCreateView = () => {
10
10
  };
11
11
 
12
12
  export { ProtectedCreateView };
13
- //# sourceMappingURL=CreateView-BNdZxAPZ.mjs.map
13
+ //# sourceMappingURL=CreateView-a02G3EdU.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateView-BNdZxAPZ.mjs","sources":["../../admin/src/pages/Settings/pages/ApiTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView/EditViewPage';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAA,gBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,YAAY,CAAE,CAAA,MAAA;AAAA,GAClE,CAAA;AAEA,EAAA,2BACG,IAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAA,GAAA,CAAC,YAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"CreateView-a02G3EdU.mjs","sources":["../../admin/src/pages/Settings/pages/ApiTokens/CreateView.tsx"],"sourcesContent":["import { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\n\nimport { EditView } from './EditView/EditViewPage';\n\nexport const ProtectedCreateView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens'].create\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,sBAAsB,MAAM;AACvC,EAAA,MAAM,WAAc,GAAA,gBAAA;AAAA,IAClB,CAAC,KAAU,KAAA,KAAA,CAAM,UAAU,WAAY,CAAA,QAAA,GAAW,YAAY,CAAE,CAAA,MAAA;AAAA,GAClE,CAAA;AAEA,EAAA,2BACG,IAAK,CAAA,OAAA,EAAL,EAAa,WACZ,EAAA,QAAA,kBAAA,GAAA,CAAC,YAAS,CACZ,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -6,9 +6,9 @@ import { Formik } from 'formik';
6
6
  import { useIntl } from 'react-intl';
7
7
  import { useMatch, Navigate } from 'react-router-dom';
8
8
  import * as yup from 'yup';
9
- import { e as errorsTrads, f as useGetRolePermissionLayoutQuery, g as useGetRolePermissionsQuery, o as useUpdateRoleMutation, i as useUpdateRolePermissionsMutation, b as Layouts, B as BackButton } from './index-C02D7oHu.mjs';
9
+ import { e as errorsTrads, f as useGetRolePermissionLayoutQuery, g as useGetRolePermissionsQuery, o as useUpdateRoleMutation, i as useUpdateRolePermissionsMutation, b as Layouts, B as BackButton } from './index-DUWx-KG9.mjs';
10
10
  import { b as useTypedSelector, P as Page, a as useNotification, c as useTracking, e as useAPIErrorHandler } from './Theme-NAd2H4cV.mjs';
11
- import { u as useAdminRoles } from './useAdminRoles-MxUoA3eI.mjs';
11
+ import { u as useAdminRoles } from './useAdminRoles-BiDYgELB.mjs';
12
12
  import { i as isBaseQueryError } from './admin-DIy_Bn_0.mjs';
13
13
  import { P as Permissions } from './Permissions-p_cREK0b.mjs';
14
14
 
@@ -269,4 +269,4 @@ const ProtectedEditPage = () => {
269
269
  };
270
270
 
271
271
  export { EditPage, ProtectedEditPage };
272
- //# sourceMappingURL=EditPage-D1S9-vQG.mjs.map
272
+ //# sourceMappingURL=EditPage-8BCMKtyr.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditPage-D1S9-vQG.mjs","sources":["../../admin/src/pages/Settings/pages/Roles/components/RoleForm.tsx","../../admin/src/pages/Settings/pages/Roles/EditPage.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { FormikProps } from 'formik';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\nimport type { EditRoleFormValues } from '../EditPage';\n\ninterface RoleFormProps extends Pick<FormikProps<EditRoleFormValues>, 'values' | 'errors'> {\n onBlur: FormikProps<EditRoleFormValues>['handleBlur'];\n onChange: FormikProps<EditRoleFormValues>['handleChange'];\n disabled?: boolean;\n role: AdminRole;\n}\n\nconst RoleForm = ({ disabled, role, values, errors, onChange, onBlur }: RoleFormProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {role\n ? role.name\n : formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography textColor=\"neutral500\" variant=\"pi\">\n {role\n ? role.description\n : formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <Button disabled variant=\"secondary\">\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: role.usersCount }\n )}\n </Button>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.name || ''}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.description}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { RoleForm };\nexport type { RoleFormProps };\n","import * as React from 'react';\n\nimport { Box, Button, Flex, Main } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { Formik, FormikHelpers } from 'formik';\nimport { useIntl } from 'react-intl';\nimport { Navigate, useMatch } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAdminRoles } from '../../../../hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport {\n useGetRolePermissionLayoutQuery,\n useGetRolePermissionsQuery,\n useUpdateRoleMutation,\n useUpdateRolePermissionsMutation,\n} from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\n\nimport { Permissions, PermissionsAPI } from './components/Permissions';\nimport { RoleForm } from './components/RoleForm';\n\nconst EDIT_ROLE_SCHEMA = yup.object().shape({\n name: yup.string().required(translatedErrors.required.id),\n description: yup.string().optional(),\n});\n\n/**\n * TODO: be nice if we could just infer this from the schema\n */\ninterface EditRoleFormValues {\n name: string;\n description: string;\n}\n\nconst EditPage = () => {\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/roles/:id');\n const id = match?.params.id;\n const permissionsRef = React.useRef<PermissionsAPI>(null);\n const { trackUsage } = useTracking();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingPermissionsLayout, data: permissionsLayout } =\n useGetRolePermissionLayoutQuery({\n /**\n * Role here is a query param so if there's no role we pass an empty string\n * which returns us a default layout.\n */\n role: id ?? '',\n });\n\n const {\n roles,\n isLoading: isRoleLoading,\n refetch: refetchRole,\n } = useAdminRoles(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const role = roles[0] ?? {};\n\n const { data: permissions, isLoading: isLoadingPermissions } = useGetRolePermissionsQuery(\n {\n id: id!,\n },\n {\n skip: !id,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [updateRole] = useUpdateRoleMutation();\n const [updateRolePermissions] = useUpdateRolePermissionsMutation();\n\n if (!id) {\n return <Navigate to=\"/settings/roles\" />;\n }\n\n const handleEditRoleSubmit = async (\n data: EditRoleFormValues,\n formik: FormikHelpers<EditRoleFormValues>\n ) => {\n try {\n const { permissionsToSend, didUpdateConditions } =\n permissionsRef.current?.getPermissions() ?? {};\n\n const res = await updateRole({\n id,\n ...data,\n });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n if (role.code !== 'strapi-super-admin' && permissionsToSend) {\n const updateRes = await updateRolePermissions({\n id: res.data.id,\n permissions: permissionsToSend,\n });\n\n if ('error' in updateRes) {\n if (isBaseQueryError(updateRes.error) && updateRes.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(updateRes.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(updateRes.error),\n });\n }\n\n return;\n }\n\n if (didUpdateConditions) {\n trackUsage('didUpdateConditions');\n }\n }\n\n permissionsRef.current?.setFormAfterSubmit();\n\n await refetchRole();\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved' }),\n });\n } catch (error) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n const isFormDisabled = !isRoleLoading && role.code === 'strapi-super-admin';\n\n if (isLoadingPermissionsLayout || isRoleLoading || isLoadingPermissions || !permissionsLayout) {\n return <Page.Loading />;\n }\n\n return (\n <Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Formik\n enableReinitialize\n initialValues={\n {\n name: role.name ?? '',\n description: role.description ?? '',\n } satisfies EditRoleFormValues\n }\n onSubmit={handleEditRoleSubmit}\n validationSchema={EDIT_ROLE_SCHEMA}\n validateOnChange={false}\n >\n {({ handleSubmit, values, errors, handleChange, handleBlur, isSubmitting }) => (\n <form onSubmit={handleSubmit}>\n <Layouts.Header\n primaryAction={\n <Flex gap={2}>\n <Button\n type=\"submit\"\n startIcon={<Check />}\n disabled={role.code === 'strapi-super-admin'}\n loading={isSubmitting}\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n }\n title={formatMessage({\n id: 'Settings.roles.edit.title',\n defaultMessage: 'Edit a role',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.create.description',\n defaultMessage: 'Define the rights given to the role',\n })}\n navigationAction={<BackButton />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <RoleForm\n disabled={isFormDisabled}\n errors={errors}\n values={values}\n onChange={handleChange}\n onBlur={handleBlur}\n role={role}\n />\n <Box shadow=\"filterShadow\" hasRadius>\n <Permissions\n isFormDisabled={isFormDisabled}\n permissions={permissions}\n ref={permissionsRef}\n layout={permissionsLayout}\n />\n </Box>\n </Flex>\n </Layouts.Content>\n </form>\n )}\n </Formik>\n </Main>\n );\n};\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.roles.update\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\nexport type { EditRoleFormValues };\n"],"names":["translatedErrors"],"mappings":"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"}
1
+ {"version":3,"file":"EditPage-8BCMKtyr.mjs","sources":["../../admin/src/pages/Settings/pages/Roles/components/RoleForm.tsx","../../admin/src/pages/Settings/pages/Roles/EditPage.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { FormikProps } from 'formik';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\nimport type { EditRoleFormValues } from '../EditPage';\n\ninterface RoleFormProps extends Pick<FormikProps<EditRoleFormValues>, 'values' | 'errors'> {\n onBlur: FormikProps<EditRoleFormValues>['handleBlur'];\n onChange: FormikProps<EditRoleFormValues>['handleChange'];\n disabled?: boolean;\n role: AdminRole;\n}\n\nconst RoleForm = ({ disabled, role, values, errors, onChange, onBlur }: RoleFormProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {role\n ? role.name\n : formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography textColor=\"neutral500\" variant=\"pi\">\n {role\n ? role.description\n : formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <Button disabled variant=\"secondary\">\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: role.usersCount }\n )}\n </Button>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.name || ''}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.description}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { RoleForm };\nexport type { RoleFormProps };\n","import * as React from 'react';\n\nimport { Box, Button, Flex, Main } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { Formik, FormikHelpers } from 'formik';\nimport { useIntl } from 'react-intl';\nimport { Navigate, useMatch } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAdminRoles } from '../../../../hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport {\n useGetRolePermissionLayoutQuery,\n useGetRolePermissionsQuery,\n useUpdateRoleMutation,\n useUpdateRolePermissionsMutation,\n} from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\n\nimport { Permissions, PermissionsAPI } from './components/Permissions';\nimport { RoleForm } from './components/RoleForm';\n\nconst EDIT_ROLE_SCHEMA = yup.object().shape({\n name: yup.string().required(translatedErrors.required.id),\n description: yup.string().optional(),\n});\n\n/**\n * TODO: be nice if we could just infer this from the schema\n */\ninterface EditRoleFormValues {\n name: string;\n description: string;\n}\n\nconst EditPage = () => {\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/roles/:id');\n const id = match?.params.id;\n const permissionsRef = React.useRef<PermissionsAPI>(null);\n const { trackUsage } = useTracking();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingPermissionsLayout, data: permissionsLayout } =\n useGetRolePermissionLayoutQuery({\n /**\n * Role here is a query param so if there's no role we pass an empty string\n * which returns us a default layout.\n */\n role: id ?? '',\n });\n\n const {\n roles,\n isLoading: isRoleLoading,\n refetch: refetchRole,\n } = useAdminRoles(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const role = roles[0] ?? {};\n\n const { data: permissions, isLoading: isLoadingPermissions } = useGetRolePermissionsQuery(\n {\n id: id!,\n },\n {\n skip: !id,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [updateRole] = useUpdateRoleMutation();\n const [updateRolePermissions] = useUpdateRolePermissionsMutation();\n\n if (!id) {\n return <Navigate to=\"/settings/roles\" />;\n }\n\n const handleEditRoleSubmit = async (\n data: EditRoleFormValues,\n formik: FormikHelpers<EditRoleFormValues>\n ) => {\n try {\n const { permissionsToSend, didUpdateConditions } =\n permissionsRef.current?.getPermissions() ?? {};\n\n const res = await updateRole({\n id,\n ...data,\n });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n if (role.code !== 'strapi-super-admin' && permissionsToSend) {\n const updateRes = await updateRolePermissions({\n id: res.data.id,\n permissions: permissionsToSend,\n });\n\n if ('error' in updateRes) {\n if (isBaseQueryError(updateRes.error) && updateRes.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(updateRes.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(updateRes.error),\n });\n }\n\n return;\n }\n\n if (didUpdateConditions) {\n trackUsage('didUpdateConditions');\n }\n }\n\n permissionsRef.current?.setFormAfterSubmit();\n\n await refetchRole();\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved' }),\n });\n } catch (error) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n const isFormDisabled = !isRoleLoading && role.code === 'strapi-super-admin';\n\n if (isLoadingPermissionsLayout || isRoleLoading || isLoadingPermissions || !permissionsLayout) {\n return <Page.Loading />;\n }\n\n return (\n <Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Formik\n enableReinitialize\n initialValues={\n {\n name: role.name ?? '',\n description: role.description ?? '',\n } satisfies EditRoleFormValues\n }\n onSubmit={handleEditRoleSubmit}\n validationSchema={EDIT_ROLE_SCHEMA}\n validateOnChange={false}\n >\n {({ handleSubmit, values, errors, handleChange, handleBlur, isSubmitting }) => (\n <form onSubmit={handleSubmit}>\n <Layouts.Header\n primaryAction={\n <Flex gap={2}>\n <Button\n type=\"submit\"\n startIcon={<Check />}\n disabled={role.code === 'strapi-super-admin'}\n loading={isSubmitting}\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n }\n title={formatMessage({\n id: 'Settings.roles.edit.title',\n defaultMessage: 'Edit a role',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.create.description',\n defaultMessage: 'Define the rights given to the role',\n })}\n navigationAction={<BackButton />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <RoleForm\n disabled={isFormDisabled}\n errors={errors}\n values={values}\n onChange={handleChange}\n onBlur={handleBlur}\n role={role}\n />\n <Box shadow=\"filterShadow\" hasRadius>\n <Permissions\n isFormDisabled={isFormDisabled}\n permissions={permissions}\n ref={permissionsRef}\n layout={permissionsLayout}\n />\n </Box>\n </Flex>\n </Layouts.Content>\n </form>\n )}\n </Formik>\n </Main>\n );\n};\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.roles.update\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\nexport type { EditRoleFormValues };\n"],"names":["translatedErrors"],"mappings":"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"}
@@ -10,7 +10,7 @@ const selectors = require('./selectors-DYNXQ1tD.js');
10
10
  const admin = require('./admin-3FVGSNUT.js');
11
11
  const icons = require('@strapi/icons');
12
12
  const yup = require('yup');
13
- const index = require('./index-DVlQHTOk.js');
13
+ const index = require('./index-Dev-BOdA.js');
14
14
  const useEnterprise = require('./useEnterprise-ijNnK53J.js');
15
15
  const styledComponents = require('styled-components');
16
16
  const useWebhooks = require('./useWebhooks-CkRHgTl_.js');
@@ -460,7 +460,7 @@ const WebhookForm = ({
460
460
  const [showTriggerResponse, setShowTriggerResponse] = React__namespace.useState(false);
461
461
  const EventTable = useEnterprise.useEnterprise(
462
462
  EventTableCE,
463
- async () => (await Promise.resolve().then(() => require('./EventsTable-C6kaynHy.js'))).EventsTableEE
463
+ async () => (await Promise.resolve().then(() => require('./EventsTable-BZ4u3aCv.js'))).EventsTableEE
464
464
  );
465
465
  const mapHeaders = (headers) => {
466
466
  if (!Object.keys(headers).length) {
@@ -776,4 +776,4 @@ const EditPage$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty
776
776
  exports.EditPage = EditPage;
777
777
  exports.EditPage$1 = EditPage$1;
778
778
  exports.Events = Events;
779
- //# sourceMappingURL=EditPage-CDk5aBhY.js.map
779
+ //# sourceMappingURL=EditPage-A9UxoVIJ.js.map