@strapi/admin 5.33.4 → 5.35.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 (310) hide show
  1. package/dist/admin/admin/src/components/GradientBadge.js +18 -2
  2. package/dist/admin/admin/src/components/GradientBadge.js.map +1 -1
  3. package/dist/admin/admin/src/components/GradientBadge.mjs +19 -3
  4. package/dist/admin/admin/src/components/GradientBadge.mjs.map +1 -1
  5. package/dist/admin/admin/src/components/Layouts/ActionLayout.js +8 -1
  6. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  7. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs +8 -1
  8. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/Layouts/ContentLayout.js +4 -0
  10. package/dist/admin/admin/src/components/Layouts/ContentLayout.js.map +1 -1
  11. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs +4 -0
  12. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs.map +1 -1
  13. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js +84 -50
  14. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
  15. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs +86 -52
  16. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs.map +1 -1
  17. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js +1 -0
  18. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -1
  19. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs +1 -0
  20. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/MainNav/NavLink.js +37 -6
  22. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  23. package/dist/admin/admin/src/components/MainNav/NavLink.mjs +38 -7
  24. package/dist/admin/admin/src/components/MainNav/NavLink.mjs.map +1 -1
  25. package/dist/admin/admin/src/components/NpsSurvey.js +2 -0
  26. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  27. package/dist/admin/admin/src/components/NpsSurvey.mjs +2 -0
  28. package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
  29. package/dist/admin/admin/src/components/SubNav.js +41 -20
  30. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  31. package/dist/admin/admin/src/components/SubNav.mjs +42 -21
  32. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  33. package/dist/admin/admin/src/constants/theme.js +2 -0
  34. package/dist/admin/admin/src/constants/theme.js.map +1 -1
  35. package/dist/admin/admin/src/constants/theme.mjs +2 -1
  36. package/dist/admin/admin/src/constants/theme.mjs.map +1 -1
  37. package/dist/admin/admin/src/core/apis/router.js.map +1 -1
  38. package/dist/admin/admin/src/core/apis/router.mjs.map +1 -1
  39. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  40. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  41. package/dist/admin/admin/src/hooks/useMenu.js +2 -1
  42. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  43. package/dist/admin/admin/src/hooks/useMenu.mjs +2 -1
  44. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  45. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  46. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  47. package/dist/admin/admin/src/pages/Auth/components/Register.js +51 -10
  48. package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
  49. package/dist/admin/admin/src/pages/Auth/components/Register.mjs +51 -10
  50. package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
  51. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js +12 -3
  52. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js.map +1 -1
  53. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs +12 -3
  54. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs.map +1 -1
  55. package/dist/admin/admin/src/pages/Home/HomePage.js +1 -0
  56. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  57. package/dist/admin/admin/src/pages/Home/HomePage.mjs +1 -0
  58. package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
  59. package/dist/admin/admin/src/pages/ProfilePage.js +1 -0
  60. package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
  61. package/dist/admin/admin/src/pages/ProfilePage.mjs +1 -0
  62. package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
  63. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +7 -2
  64. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  65. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +7 -2
  66. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  67. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js +44 -26
  68. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
  69. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs +45 -27
  70. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs.map +1 -1
  71. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js +1 -0
  72. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js.map +1 -1
  73. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs +1 -0
  74. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs.map +1 -1
  75. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +1 -0
  76. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  77. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +1 -0
  78. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  79. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js +3 -0
  80. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js.map +1 -1
  81. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs +3 -0
  82. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs.map +1 -1
  83. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js +9 -11
  84. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js.map +1 -1
  85. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs +10 -12
  86. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs.map +1 -1
  87. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js +1 -0
  88. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js.map +1 -1
  89. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs +1 -0
  90. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs.map +1 -1
  91. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js +1 -0
  92. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js.map +1 -1
  93. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.mjs +1 -0
  94. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.mjs.map +1 -1
  95. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js +1 -0
  96. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js.map +1 -1
  97. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs +1 -0
  98. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs.map +1 -1
  99. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js +1 -0
  100. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js.map +1 -1
  101. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.mjs +1 -0
  102. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.mjs.map +1 -1
  103. package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.js +12 -3
  104. package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.js.map +1 -1
  105. package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.mjs +12 -3
  106. package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.mjs.map +1 -1
  107. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js +1 -0
  108. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
  109. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs +1 -0
  110. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs.map +1 -1
  111. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js +3 -0
  112. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js.map +1 -1
  113. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs +3 -0
  114. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs.map +1 -1
  115. package/dist/admin/admin/src/router.js +0 -9
  116. package/dist/admin/admin/src/router.js.map +1 -1
  117. package/dist/admin/admin/src/router.mjs +0 -9
  118. package/dist/admin/admin/src/router.mjs.map +1 -1
  119. package/dist/admin/admin/src/translations/ar.json.js +0 -42
  120. package/dist/admin/admin/src/translations/ar.json.js.map +1 -1
  121. package/dist/admin/admin/src/translations/ar.json.mjs +0 -42
  122. package/dist/admin/admin/src/translations/ar.json.mjs.map +1 -1
  123. package/dist/admin/admin/src/translations/ca.json.js +0 -21
  124. package/dist/admin/admin/src/translations/ca.json.js.map +1 -1
  125. package/dist/admin/admin/src/translations/ca.json.mjs +0 -21
  126. package/dist/admin/admin/src/translations/ca.json.mjs.map +1 -1
  127. package/dist/admin/admin/src/translations/de.json.js +422 -66
  128. package/dist/admin/admin/src/translations/de.json.js.map +1 -1
  129. package/dist/admin/admin/src/translations/de.json.mjs +419 -67
  130. package/dist/admin/admin/src/translations/de.json.mjs.map +1 -1
  131. package/dist/admin/admin/src/translations/dk.json.js +0 -6
  132. package/dist/admin/admin/src/translations/dk.json.js.map +1 -1
  133. package/dist/admin/admin/src/translations/dk.json.mjs +0 -6
  134. package/dist/admin/admin/src/translations/dk.json.mjs.map +1 -1
  135. package/dist/admin/admin/src/translations/en.json.js +0 -44
  136. package/dist/admin/admin/src/translations/en.json.js.map +1 -1
  137. package/dist/admin/admin/src/translations/en.json.mjs +0 -44
  138. package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
  139. package/dist/admin/admin/src/translations/es.json.js +0 -25
  140. package/dist/admin/admin/src/translations/es.json.js.map +1 -1
  141. package/dist/admin/admin/src/translations/es.json.mjs +0 -25
  142. package/dist/admin/admin/src/translations/es.json.mjs.map +1 -1
  143. package/dist/admin/admin/src/translations/eu.json.js +0 -43
  144. package/dist/admin/admin/src/translations/eu.json.js.map +1 -1
  145. package/dist/admin/admin/src/translations/eu.json.mjs +0 -43
  146. package/dist/admin/admin/src/translations/eu.json.mjs.map +1 -1
  147. package/dist/admin/admin/src/translations/fr.json.js +0 -6
  148. package/dist/admin/admin/src/translations/fr.json.js.map +1 -1
  149. package/dist/admin/admin/src/translations/fr.json.mjs +0 -6
  150. package/dist/admin/admin/src/translations/fr.json.mjs.map +1 -1
  151. package/dist/admin/admin/src/translations/gu.json.js +0 -21
  152. package/dist/admin/admin/src/translations/gu.json.js.map +1 -1
  153. package/dist/admin/admin/src/translations/gu.json.mjs +0 -21
  154. package/dist/admin/admin/src/translations/gu.json.mjs.map +1 -1
  155. package/dist/admin/admin/src/translations/hi.json.js +0 -21
  156. package/dist/admin/admin/src/translations/hi.json.js.map +1 -1
  157. package/dist/admin/admin/src/translations/hi.json.mjs +0 -21
  158. package/dist/admin/admin/src/translations/hi.json.mjs.map +1 -1
  159. package/dist/admin/admin/src/translations/hu.json.js +0 -43
  160. package/dist/admin/admin/src/translations/hu.json.js.map +1 -1
  161. package/dist/admin/admin/src/translations/hu.json.mjs +0 -43
  162. package/dist/admin/admin/src/translations/hu.json.mjs.map +1 -1
  163. package/dist/admin/admin/src/translations/it.json.js +613 -3
  164. package/dist/admin/admin/src/translations/it.json.js.map +1 -1
  165. package/dist/admin/admin/src/translations/it.json.mjs +605 -4
  166. package/dist/admin/admin/src/translations/it.json.mjs.map +1 -1
  167. package/dist/admin/admin/src/translations/ja.json.js +0 -6
  168. package/dist/admin/admin/src/translations/ja.json.js.map +1 -1
  169. package/dist/admin/admin/src/translations/ja.json.mjs +0 -6
  170. package/dist/admin/admin/src/translations/ja.json.mjs.map +1 -1
  171. package/dist/admin/admin/src/translations/ko.json.js +430 -102
  172. package/dist/admin/admin/src/translations/ko.json.js.map +1 -1
  173. package/dist/admin/admin/src/translations/ko.json.mjs +427 -103
  174. package/dist/admin/admin/src/translations/ko.json.mjs.map +1 -1
  175. package/dist/admin/admin/src/translations/ml.json.js +0 -21
  176. package/dist/admin/admin/src/translations/ml.json.js.map +1 -1
  177. package/dist/admin/admin/src/translations/ml.json.mjs +0 -21
  178. package/dist/admin/admin/src/translations/ml.json.mjs.map +1 -1
  179. package/dist/admin/admin/src/translations/nl.json.js +0 -39
  180. package/dist/admin/admin/src/translations/nl.json.js.map +1 -1
  181. package/dist/admin/admin/src/translations/nl.json.mjs +0 -39
  182. package/dist/admin/admin/src/translations/nl.json.mjs.map +1 -1
  183. package/dist/admin/admin/src/translations/pl.json.js +0 -21
  184. package/dist/admin/admin/src/translations/pl.json.js.map +1 -1
  185. package/dist/admin/admin/src/translations/pl.json.mjs +0 -21
  186. package/dist/admin/admin/src/translations/pl.json.mjs.map +1 -1
  187. package/dist/admin/admin/src/translations/pt-BR.json.js +0 -25
  188. package/dist/admin/admin/src/translations/pt-BR.json.js.map +1 -1
  189. package/dist/admin/admin/src/translations/pt-BR.json.mjs +0 -25
  190. package/dist/admin/admin/src/translations/pt-BR.json.mjs.map +1 -1
  191. package/dist/admin/admin/src/translations/ru.json.js +0 -44
  192. package/dist/admin/admin/src/translations/ru.json.js.map +1 -1
  193. package/dist/admin/admin/src/translations/ru.json.mjs +0 -44
  194. package/dist/admin/admin/src/translations/ru.json.mjs.map +1 -1
  195. package/dist/admin/admin/src/translations/sa.json.js +0 -21
  196. package/dist/admin/admin/src/translations/sa.json.js.map +1 -1
  197. package/dist/admin/admin/src/translations/sa.json.mjs +0 -21
  198. package/dist/admin/admin/src/translations/sa.json.mjs.map +1 -1
  199. package/dist/admin/admin/src/translations/sv.json.js +0 -39
  200. package/dist/admin/admin/src/translations/sv.json.js.map +1 -1
  201. package/dist/admin/admin/src/translations/sv.json.mjs +0 -39
  202. package/dist/admin/admin/src/translations/sv.json.mjs.map +1 -1
  203. package/dist/admin/admin/src/translations/tr.json.js +0 -39
  204. package/dist/admin/admin/src/translations/tr.json.js.map +1 -1
  205. package/dist/admin/admin/src/translations/tr.json.mjs +0 -39
  206. package/dist/admin/admin/src/translations/tr.json.mjs.map +1 -1
  207. package/dist/admin/admin/src/translations/uk.json.js +0 -44
  208. package/dist/admin/admin/src/translations/uk.json.js.map +1 -1
  209. package/dist/admin/admin/src/translations/uk.json.mjs +0 -44
  210. package/dist/admin/admin/src/translations/uk.json.mjs.map +1 -1
  211. package/dist/admin/admin/src/translations/vi.json.js +0 -44
  212. package/dist/admin/admin/src/translations/vi.json.js.map +1 -1
  213. package/dist/admin/admin/src/translations/vi.json.mjs +0 -44
  214. package/dist/admin/admin/src/translations/vi.json.mjs.map +1 -1
  215. package/dist/admin/admin/src/translations/zh-Hans.json.js +0 -44
  216. package/dist/admin/admin/src/translations/zh-Hans.json.js.map +1 -1
  217. package/dist/admin/admin/src/translations/zh-Hans.json.mjs +0 -44
  218. package/dist/admin/admin/src/translations/zh-Hans.json.mjs.map +1 -1
  219. package/dist/admin/admin/src/translations/zh.json.js +0 -39
  220. package/dist/admin/admin/src/translations/zh.json.js.map +1 -1
  221. package/dist/admin/admin/src/translations/zh.json.mjs +0 -39
  222. package/dist/admin/admin/src/translations/zh.json.mjs.map +1 -1
  223. package/dist/admin/admin/tests/mockData.js +0 -1413
  224. package/dist/admin/admin/tests/mockData.js.map +1 -1
  225. package/dist/admin/admin/tests/mockData.mjs +0 -1413
  226. package/dist/admin/admin/tests/mockData.mjs.map +1 -1
  227. package/dist/admin/admin/tests/server.js +0 -99
  228. package/dist/admin/admin/tests/server.js.map +1 -1
  229. package/dist/admin/admin/tests/server.mjs +0 -80
  230. package/dist/admin/admin/tests/server.mjs.map +1 -1
  231. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js +1 -0
  232. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  233. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs +1 -0
  234. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  235. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js +2 -0
  236. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js.map +1 -1
  237. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.mjs +2 -0
  238. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.mjs.map +1 -1
  239. package/dist/admin/index.js +3 -0
  240. package/dist/admin/index.js.map +1 -1
  241. package/dist/admin/index.mjs +1 -1
  242. package/dist/admin/src/components/MainNav/NavLink.d.ts +2 -2
  243. package/dist/admin/src/constants/theme.d.ts +2 -1
  244. package/dist/admin/src/core/apis/router.d.ts +1 -0
  245. package/dist/admin/src/features/Tracking.d.ts +1 -1
  246. package/dist/admin/src/hooks/useMenu.d.ts +1 -0
  247. package/dist/admin/src/index.d.ts +1 -1
  248. package/dist/admin/tests/mockData.d.ts +0 -972
  249. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js +53 -0
  250. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js.map +1 -0
  251. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs +51 -0
  252. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs.map +1 -0
  253. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js +7 -8
  254. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js.map +1 -1
  255. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs +10 -11
  256. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs.map +1 -1
  257. package/dist/server/server/src/services/permission/permissions-manager/validate.js +7 -8
  258. package/dist/server/server/src/services/permission/permissions-manager/validate.js.map +1 -1
  259. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs +10 -11
  260. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs.map +1 -1
  261. package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts +21 -0
  262. package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts.map +1 -0
  263. package/dist/server/src/services/permission/permissions-manager/sanitize.d.ts.map +1 -1
  264. package/dist/server/src/services/permission/permissions-manager/validate.d.ts.map +1 -1
  265. package/package.json +7 -7
  266. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.js +0 -339
  267. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.js.map +0 -1
  268. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.mjs +0 -317
  269. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.mjs.map +0 -1
  270. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.js +0 -329
  271. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.js.map +0 -1
  272. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.mjs +0 -308
  273. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.mjs.map +0 -1
  274. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.js +0 -121
  275. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.js.map +0 -1
  276. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.mjs +0 -119
  277. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.mjs.map +0 -1
  278. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.js +0 -93
  279. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.js.map +0 -1
  280. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.mjs +0 -91
  281. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.mjs.map +0 -1
  282. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.js +0 -81
  283. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.js.map +0 -1
  284. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.mjs +0 -79
  285. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.mjs.map +0 -1
  286. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.js +0 -38
  287. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.js.map +0 -1
  288. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.mjs +0 -36
  289. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.mjs.map +0 -1
  290. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.js +0 -85
  291. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.js.map +0 -1
  292. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.mjs +0 -83
  293. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.mjs.map +0 -1
  294. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.js +0 -134
  295. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.js.map +0 -1
  296. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.mjs +0 -113
  297. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.mjs.map +0 -1
  298. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.js +0 -44
  299. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.js.map +0 -1
  300. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.mjs +0 -23
  301. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.mjs.map +0 -1
  302. package/dist/admin/src/pages/Marketplace/MarketplacePage.d.ts +0 -19
  303. package/dist/admin/src/pages/Marketplace/components/NpmPackageCard.d.ts +0 -13
  304. package/dist/admin/src/pages/Marketplace/components/NpmPackagesFilters.d.ts +0 -13
  305. package/dist/admin/src/pages/Marketplace/components/NpmPackagesGrid.d.ts +0 -13
  306. package/dist/admin/src/pages/Marketplace/components/OfflineLayout.d.ts +0 -2
  307. package/dist/admin/src/pages/Marketplace/components/PageHeader.d.ts +0 -8
  308. package/dist/admin/src/pages/Marketplace/components/SortSelect.d.ts +0 -51
  309. package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +0 -93
  310. package/dist/admin/src/pages/Marketplace/hooks/useNavigatorOnline.d.ts +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"EditPage.mjs","sources":["../../../../../../../../admin/src/pages/Settings/pages/Users/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport pick from 'lodash/pick';\nimport { useIntl } from 'react-intl';\nimport { useMatch, useNavigate } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Update } from '../../../../../../shared/contracts/user';\nimport { Form, FormHelpers } from '../../../../components/Form';\nimport { InputRenderer } from '../../../../components/FormInputs/Renderer';\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 { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useEnterprise } from '../../../../hooks/useEnterprise';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { useAdminUsers, useUpdateUserMutation } from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { getDisplayName } from '../../../../utils/users';\n\nimport { MagicLinkCE } from './components/MagicLinkCE';\nimport { SelectRoles } from './components/SelectRoles';\nimport { COMMON_USER_SCHEMA } from './utils/validation';\n\nconst EDIT_VALIDATION_SCHEMA = yup.object().shape({\n ...COMMON_USER_SCHEMA,\n isActive: yup.bool(),\n roles: yup\n .array()\n .min(1, {\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n});\n\nconst fieldsToPick = ['email', 'firstname', 'lastname', 'username', 'isActive', 'roles'] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/users/:id');\n const id = match?.params?.id ?? '';\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE'\n )\n ).MagicLinkEE\n );\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const permissions = useTypedSelector(selectAdminPermissions);\n\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canUpdate },\n } = useRBAC({\n read: permissions.settings?.users.read ?? [],\n update: permissions.settings?.users.update ?? [],\n });\n\n const [updateUser] = useUpdateUserMutation();\n\n const {\n data,\n error,\n isLoading: isLoadingAdminUsers,\n } = useAdminUsers(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [user] = data?.users ?? [];\n\n React.useEffect(() => {\n if (error) {\n // Redirect the user to the homepage if is not allowed to read\n if (error.name === 'UnauthorizedError') {\n toggleNotification({\n type: 'info',\n message: formatMessage({\n id: 'notification.permission.not-allowed-read',\n defaultMessage: 'You are not allowed to see this document',\n }),\n });\n\n navigate('/');\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n }, [error, formatAPIError, formatMessage, navigate, toggleNotification]);\n\n const isLoading = isLoadingAdminUsers || !MagicLink || isLoadingRBAC;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n type InitialData = Pick<Update.Request['body'], (typeof fieldsToPick)[number]> & {\n confirmPassword: string;\n password: string;\n };\n\n const initialData = {\n ...pick(user, fieldsToPick),\n roles: user.roles.map(({ id }) => id),\n password: '',\n confirmPassword: '',\n } satisfies InitialData;\n\n const handleSubmit = async (body: InitialData, actions: FormHelpers<InitialData>) => {\n const { confirmPassword: _confirmPassword, ...bodyRest } = body;\n\n const res = await updateUser({\n id,\n ...bodyRest,\n });\n\n if ('error' in res && isBaseQueryError(res.error)) {\n if (res.error.name === 'ValidationError') {\n actions.setErrors(formatValidationErrors(res.error));\n }\n\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n } else {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n actions.setValues({\n ...pick(body, fieldsToPick),\n password: '',\n confirmPassword: '',\n });\n }\n };\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Users',\n }\n )}\n </Page.Title>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n initialValues={initialData}\n validationSchema={EDIT_VALIDATION_SCHEMA}\n >\n {({ isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={isSubmitting || !canUpdate || !modified}\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n title={formatMessage(\n {\n id: 'app.containers.Users.EditPage.header.label',\n defaultMessage: 'Edit {name}',\n },\n {\n // @ts-expect-error – issues with the Entity ID type, still.\n name: getDisplayName(initialData),\n }\n )}\n navigationAction={\n // The back link for mobile works differently; it is placed higher up in the DOM.\n <Box display={{ initial: 'none', medium: 'block' }}>\n <BackButton fallback=\"../users\" />\n </Box>\n }\n />\n <Layouts.Content>\n {user?.registrationToken && (\n <Box paddingBottom={6}>\n <MagicLink registrationToken={user.registrationToken} />\n </Box>\n )}\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n {LAYOUT.map((row) =>\n row.map(({ size, label, ...field }) => {\n return (\n <Grid.Item\n key={field.name}\n m={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={!canUpdate}\n label={formatMessage(label)}\n placeholder={\n 'placeholder' in field\n ? formatMessage(field.placeholder)\n : undefined\n }\n />\n </Grid.Item>\n );\n })\n )}\n </Grid.Root>\n </Flex>\n </Box>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <SelectRoles disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage LAYOUT\n * -----------------------------------------------------------------------------------------------*/\n\nconst LAYOUT = [\n [\n {\n label: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'string' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n },\n name: 'username',\n placeholder: {\n id: 'Auth.form.username.placeholder',\n defaultMessage: 'e.g. Kai_Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n autoComplete: 'new-password',\n label: {\n id: 'global.password',\n defaultMessage: 'Password',\n },\n name: 'password',\n type: 'password' as const,\n size: 6,\n },\n {\n autoComplete: 'new-password',\n label: {\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Password confirmation',\n },\n name: 'confirmPassword',\n type: 'password' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.active.label',\n defaultMessage: 'Active',\n },\n name: 'isActive',\n type: 'boolean' as const,\n size: 6,\n },\n ],\n];\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.users.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\n"],"names":["EDIT_VALIDATION_SCHEMA","yup","object","shape","COMMON_USER_SCHEMA","isActive","bool","roles","array","min","id","translatedErrors","required","defaultMessage","fieldsToPick","EditPage","formatMessage","useIntl","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","MagicLink","useEnterprise","MagicLinkCE","MagicLinkEE","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","permissions","useTypedSelector","selectAdminPermissions","isLoading","isLoadingRBAC","allowedActions","canUpdate","useRBAC","read","settings","users","update","updateUser","useUpdateUserMutation","data","error","isLoadingAdminUsers","useAdminUsers","refetchOnMountOrArgChange","user","React","useEffect","name","type","message","_jsx","Page","Loading","initialData","pick","map","password","confirmPassword","handleSubmit","body","actions","_confirmPassword","bodyRest","res","isBaseQueryError","setErrors","setValues","_jsxs","Main","Title","Form","method","onSubmit","initialValues","validationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","disabled","startIcon","Check","loading","title","getDisplayName","navigationAction","Box","display","initial","medium","BackButton","fallback","Content","registrationToken","paddingBottom","Flex","direction","alignItems","gap","background","hasRadius","shadow","paddingTop","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","LAYOUT","row","size","label","field","Item","m","xs","InputRenderer","placeholder","undefined","col","SelectRoles","autoComplete","ProtectedEditPage","state","admin_app","Protect"],"mappings":"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"}
1
+ {"version":3,"file":"EditPage.mjs","sources":["../../../../../../../../admin/src/pages/Settings/pages/Users/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport pick from 'lodash/pick';\nimport { useIntl } from 'react-intl';\nimport { useMatch, useNavigate } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Update } from '../../../../../../shared/contracts/user';\nimport { Form, FormHelpers } from '../../../../components/Form';\nimport { InputRenderer } from '../../../../components/FormInputs/Renderer';\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 { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useEnterprise } from '../../../../hooks/useEnterprise';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { useAdminUsers, useUpdateUserMutation } from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { getDisplayName } from '../../../../utils/users';\n\nimport { MagicLinkCE } from './components/MagicLinkCE';\nimport { SelectRoles } from './components/SelectRoles';\nimport { COMMON_USER_SCHEMA } from './utils/validation';\n\nconst EDIT_VALIDATION_SCHEMA = yup.object().shape({\n ...COMMON_USER_SCHEMA,\n isActive: yup.bool(),\n roles: yup\n .array()\n .min(1, {\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n});\n\nconst fieldsToPick = ['email', 'firstname', 'lastname', 'username', 'isActive', 'roles'] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/users/:id');\n const id = match?.params?.id ?? '';\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE'\n )\n ).MagicLinkEE\n );\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const permissions = useTypedSelector(selectAdminPermissions);\n\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canUpdate },\n } = useRBAC({\n read: permissions.settings?.users.read ?? [],\n update: permissions.settings?.users.update ?? [],\n });\n\n const [updateUser] = useUpdateUserMutation();\n\n const {\n data,\n error,\n isLoading: isLoadingAdminUsers,\n } = useAdminUsers(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [user] = data?.users ?? [];\n\n React.useEffect(() => {\n if (error) {\n // Redirect the user to the homepage if is not allowed to read\n if (error.name === 'UnauthorizedError') {\n toggleNotification({\n type: 'info',\n message: formatMessage({\n id: 'notification.permission.not-allowed-read',\n defaultMessage: 'You are not allowed to see this document',\n }),\n });\n\n navigate('/');\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n }, [error, formatAPIError, formatMessage, navigate, toggleNotification]);\n\n const isLoading = isLoadingAdminUsers || !MagicLink || isLoadingRBAC;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n type InitialData = Pick<Update.Request['body'], (typeof fieldsToPick)[number]> & {\n confirmPassword: string;\n password: string;\n };\n\n const initialData = {\n ...pick(user, fieldsToPick),\n roles: user.roles.map(({ id }) => id),\n password: '',\n confirmPassword: '',\n } satisfies InitialData;\n\n const handleSubmit = async (body: InitialData, actions: FormHelpers<InitialData>) => {\n const { confirmPassword: _confirmPassword, ...bodyRest } = body;\n\n const res = await updateUser({\n id,\n ...bodyRest,\n });\n\n if ('error' in res && isBaseQueryError(res.error)) {\n if (res.error.name === 'ValidationError') {\n actions.setErrors(formatValidationErrors(res.error));\n }\n\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n } else {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n actions.setValues({\n ...pick(body, fieldsToPick),\n password: '',\n confirmPassword: '',\n });\n }\n };\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Users',\n }\n )}\n </Page.Title>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n initialValues={initialData}\n validationSchema={EDIT_VALIDATION_SCHEMA}\n >\n {({ isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={isSubmitting || !canUpdate || !modified}\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n title={formatMessage(\n {\n id: 'app.containers.Users.EditPage.header.label',\n defaultMessage: 'Edit {name}',\n },\n {\n // @ts-expect-error – issues with the Entity ID type, still.\n name: getDisplayName(initialData),\n }\n )}\n navigationAction={\n // The back link for mobile works differently; it is placed higher up in the DOM.\n <Box display={{ initial: 'none', medium: 'block' }}>\n <BackButton fallback=\"../users\" />\n </Box>\n }\n />\n <Layouts.Content>\n {user?.registrationToken && (\n <Box paddingBottom={6}>\n <MagicLink registrationToken={user.registrationToken} />\n </Box>\n )}\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n {LAYOUT.map((row) =>\n row.map(({ size, label, ...field }) => {\n return (\n <Grid.Item\n key={field.name}\n m={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={!canUpdate}\n label={formatMessage(label)}\n placeholder={\n 'placeholder' in field\n ? formatMessage(field.placeholder)\n : undefined\n }\n />\n </Grid.Item>\n );\n })\n )}\n </Grid.Root>\n </Flex>\n </Box>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <SelectRoles disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage LAYOUT\n * -----------------------------------------------------------------------------------------------*/\n\nconst LAYOUT = [\n [\n {\n label: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'string' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n },\n name: 'username',\n placeholder: {\n id: 'Auth.form.username.placeholder',\n defaultMessage: 'e.g. Kai_Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n autoComplete: 'new-password',\n label: {\n id: 'global.password',\n defaultMessage: 'Password',\n },\n name: 'password',\n type: 'password' as const,\n size: 6,\n },\n {\n autoComplete: 'new-password',\n label: {\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Password confirmation',\n },\n name: 'confirmPassword',\n type: 'password' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.active.label',\n defaultMessage: 'Active',\n },\n name: 'isActive',\n type: 'boolean' as const,\n size: 6,\n },\n ],\n];\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.users.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\n"],"names":["EDIT_VALIDATION_SCHEMA","yup","object","shape","COMMON_USER_SCHEMA","isActive","bool","roles","array","min","id","translatedErrors","required","defaultMessage","fieldsToPick","EditPage","formatMessage","useIntl","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","MagicLink","useEnterprise","MagicLinkCE","MagicLinkEE","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","permissions","useTypedSelector","selectAdminPermissions","isLoading","isLoadingRBAC","allowedActions","canUpdate","useRBAC","read","settings","users","update","updateUser","useUpdateUserMutation","data","error","isLoadingAdminUsers","useAdminUsers","refetchOnMountOrArgChange","user","React","useEffect","name","type","message","_jsx","Page","Loading","initialData","pick","map","password","confirmPassword","handleSubmit","body","actions","_confirmPassword","bodyRest","res","isBaseQueryError","setErrors","setValues","_jsxs","Main","Title","Form","method","onSubmit","initialValues","validationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","disabled","startIcon","Check","loading","fullWidth","title","getDisplayName","navigationAction","Box","display","initial","medium","BackButton","fallback","Content","registrationToken","paddingBottom","Flex","direction","alignItems","gap","background","hasRadius","shadow","paddingTop","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","LAYOUT","row","size","label","field","Item","m","xs","InputRenderer","placeholder","undefined","col","SelectRoles","autoComplete","ProtectedEditPage","state","admin_app","Protect"],"mappings":"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"}
@@ -32,6 +32,7 @@ const CreateActionCE = /*#__PURE__*/ React__namespace.forwardRef((props, ref)=>{
32
32
  startIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.Mail, {}),
33
33
  size: "S",
34
34
  ...props,
35
+ fullWidth: true,
35
36
  children: formatMessage({
36
37
  id: 'Settings.permissions.users.create',
37
38
  defaultMessage: 'Invite new user'
@@ -1 +1 @@
1
- {"version":3,"file":"CreateActionCE.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/components/CreateActionCE.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, ButtonProps } from '@strapi/design-system';\nimport { Mail } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\ninterface CreateActionCEProps extends Pick<ButtonProps, 'onClick'> {}\n\nconst CreateActionCE = React.forwardRef<HTMLButtonElement, CreateActionCEProps>((props, ref) => {\n const { formatMessage } = useIntl();\n\n return (\n <Button ref={ref} startIcon={<Mail />} size=\"S\" {...props}>\n {formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n })}\n </Button>\n );\n});\n\nexport { CreateActionCE };\nexport type { CreateActionCEProps };\n"],"names":["CreateActionCE","React","forwardRef","props","ref","formatMessage","useIntl","_jsx","Button","startIcon","Mail","size","id","defaultMessage"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAMA,cAAiBC,iBAAAA,gBAAAA,CAAMC,UAAU,CAAyC,CAACC,KAAOC,EAAAA,GAAAA,GAAAA;IACtF,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,qBACEC,cAACC,CAAAA,mBAAAA,EAAAA;QAAOJ,GAAKA,EAAAA,GAAAA;AAAKK,QAAAA,SAAAA,gBAAWF,cAACG,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA;QAASC,IAAK,EAAA,GAAA;AAAK,QAAA,GAAGR,KAAK;kBACtDE,aAAc,CAAA;YACbO,EAAI,EAAA,mCAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;;AAGN,CAAA;;;;"}
1
+ {"version":3,"file":"CreateActionCE.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/components/CreateActionCE.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, ButtonProps } from '@strapi/design-system';\nimport { Mail } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\ninterface CreateActionCEProps extends Pick<ButtonProps, 'onClick'> {}\n\nconst CreateActionCE = React.forwardRef<HTMLButtonElement, CreateActionCEProps>((props, ref) => {\n const { formatMessage } = useIntl();\n\n return (\n <Button ref={ref} startIcon={<Mail />} size=\"S\" {...props} fullWidth>\n {formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n })}\n </Button>\n );\n});\n\nexport { CreateActionCE };\nexport type { CreateActionCEProps };\n"],"names":["CreateActionCE","React","forwardRef","props","ref","formatMessage","useIntl","_jsx","Button","startIcon","Mail","size","fullWidth","id","defaultMessage"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAMA,cAAiBC,iBAAAA,gBAAAA,CAAMC,UAAU,CAAyC,CAACC,KAAOC,EAAAA,GAAAA,GAAAA;IACtF,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,qBACEC,cAACC,CAAAA,mBAAAA,EAAAA;QAAOJ,GAAKA,EAAAA,GAAAA;AAAKK,QAAAA,SAAAA,gBAAWF,cAACG,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA;QAASC,IAAK,EAAA,GAAA;AAAK,QAAA,GAAGR,KAAK;QAAES,SAAS,EAAA,IAAA;kBACjEP,aAAc,CAAA;YACbQ,EAAI,EAAA,mCAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;;AAGN,CAAA;;;;"}
@@ -11,6 +11,7 @@ const CreateActionCE = /*#__PURE__*/ React.forwardRef((props, ref)=>{
11
11
  startIcon: /*#__PURE__*/ jsx(Mail, {}),
12
12
  size: "S",
13
13
  ...props,
14
+ fullWidth: true,
14
15
  children: formatMessage({
15
16
  id: 'Settings.permissions.users.create',
16
17
  defaultMessage: 'Invite new user'
@@ -1 +1 @@
1
- {"version":3,"file":"CreateActionCE.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/components/CreateActionCE.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, ButtonProps } from '@strapi/design-system';\nimport { Mail } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\ninterface CreateActionCEProps extends Pick<ButtonProps, 'onClick'> {}\n\nconst CreateActionCE = React.forwardRef<HTMLButtonElement, CreateActionCEProps>((props, ref) => {\n const { formatMessage } = useIntl();\n\n return (\n <Button ref={ref} startIcon={<Mail />} size=\"S\" {...props}>\n {formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n })}\n </Button>\n );\n});\n\nexport { CreateActionCE };\nexport type { CreateActionCEProps };\n"],"names":["CreateActionCE","React","forwardRef","props","ref","formatMessage","useIntl","_jsx","Button","startIcon","Mail","size","id","defaultMessage"],"mappings":";;;;;;AAQA,MAAMA,cAAiBC,iBAAAA,KAAAA,CAAMC,UAAU,CAAyC,CAACC,KAAOC,EAAAA,GAAAA,GAAAA;IACtF,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,qBACEC,GAACC,CAAAA,MAAAA,EAAAA;QAAOJ,GAAKA,EAAAA,GAAAA;AAAKK,QAAAA,SAAAA,gBAAWF,GAACG,CAAAA,IAAAA,EAAAA,EAAAA,CAAAA;QAASC,IAAK,EAAA,GAAA;AAAK,QAAA,GAAGR,KAAK;kBACtDE,aAAc,CAAA;YACbO,EAAI,EAAA,mCAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;;AAGN,CAAA;;;;"}
1
+ {"version":3,"file":"CreateActionCE.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/components/CreateActionCE.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, ButtonProps } from '@strapi/design-system';\nimport { Mail } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\ninterface CreateActionCEProps extends Pick<ButtonProps, 'onClick'> {}\n\nconst CreateActionCE = React.forwardRef<HTMLButtonElement, CreateActionCEProps>((props, ref) => {\n const { formatMessage } = useIntl();\n\n return (\n <Button ref={ref} startIcon={<Mail />} size=\"S\" {...props} fullWidth>\n {formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n })}\n </Button>\n );\n});\n\nexport { CreateActionCE };\nexport type { CreateActionCEProps };\n"],"names":["CreateActionCE","React","forwardRef","props","ref","formatMessage","useIntl","_jsx","Button","startIcon","Mail","size","fullWidth","id","defaultMessage"],"mappings":";;;;;;AAQA,MAAMA,cAAiBC,iBAAAA,KAAAA,CAAMC,UAAU,CAAyC,CAACC,KAAOC,EAAAA,GAAAA,GAAAA;IACtF,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,qBACEC,GAACC,CAAAA,MAAAA,EAAAA;QAAOJ,GAAKA,EAAAA,GAAAA;AAAKK,QAAAA,SAAAA,gBAAWF,GAACG,CAAAA,IAAAA,EAAAA,EAAAA,CAAAA;QAASC,IAAK,EAAA,GAAA;AAAK,QAAA,GAAGR,KAAK;QAAES,SAAS,EAAA,IAAA;kBACjEP,aAAc,CAAA;YACbQ,EAAI,EAAA,mCAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;;AAGN,CAAA;;;;"}
@@ -46,15 +46,24 @@ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
46
46
  }, function(value) {
47
47
  if (!value) return true;
48
48
  return new TextEncoder().encode(value).length <= 72;
49
- }).matches(/[a-z]/, {
49
+ }).test('lowercase', {
50
50
  id: 'components.Input.error.contain.lowercase',
51
51
  defaultMessage: 'Password must contain at least one lowercase character'
52
- }).matches(/[A-Z]/, {
52
+ }, (value)=>{
53
+ if (!value) return true;
54
+ return /[a-z]/.test(value);
55
+ }).test('uppercase', {
53
56
  id: 'components.Input.error.contain.uppercase',
54
57
  defaultMessage: 'Password must contain at least one uppercase character'
55
- }).matches(/\d/, {
58
+ }, (value)=>{
59
+ if (!value) return true;
60
+ return /[A-Z]/.test(value);
61
+ }).test('number', {
56
62
  id: 'components.Input.error.contain.number',
57
63
  defaultMessage: 'Password must contain at least one number'
64
+ }, (value)=>{
65
+ if (!value) return true;
66
+ return /\d/.test(value);
58
67
  }),
59
68
  confirmPassword: yup__namespace.string().transform((value)=>value === '' ? null : value).nullable().min(8, {
60
69
  ...translatedErrors.translatedErrors.minLength,
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/utils/validation.ts"],"sourcesContent":["import * as yup from 'yup';\n\nimport { translatedErrors } from '../../../../../utils/translatedErrors';\n\n/**\n * @description This needs wrapping in `yup.object().shape()` before use.\n */\nconst COMMON_USER_SCHEMA = {\n firstname: yup.string().trim().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n lastname: yup.string().nullable(),\n email: yup.string().email(translatedErrors.email).lowercase().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n username: yup\n .string()\n .transform((value) => (value === '' ? undefined : value))\n .nullable(),\n password: yup\n .string()\n .transform((value) => (value === '' || value === null ? undefined : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .matches(/[a-z]/, {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least one lowercase character',\n })\n .matches(/[A-Z]/, {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least one uppercase character',\n })\n .matches(/\\d/, {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least one number',\n }),\n confirmPassword: yup\n .string()\n .transform((value) => (value === '' ? null : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .when('password', (password, passSchema) => {\n return password\n ? passSchema\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .nullable()\n : passSchema;\n }),\n};\n\nexport { COMMON_USER_SCHEMA };\n"],"names":["COMMON_USER_SCHEMA","firstname","yup","string","trim","required","id","translatedErrors","defaultMessage","lastname","nullable","email","lowercase","username","transform","value","undefined","password","min","minLength","values","test","TextEncoder","encode","length","matches","confirmPassword","oneOf","ref","when","passSchema"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAIA;;AAEC,UACKA,kBAAqB,GAAA;AACzBC,IAAAA,SAAAA,EAAWC,eAAIC,MAAM,EAAA,CAAGC,IAAI,EAAA,CAAGC,QAAQ,CAAC;QACtCC,EAAIC,EAAAA,iCAAAA,CAAiBF,QAAQ,CAACC,EAAE;QAChCE,cAAgB,EAAA;AAClB,KAAA,CAAA;IACAC,QAAUP,EAAAA,cAAAA,CAAIC,MAAM,EAAA,CAAGO,QAAQ,EAAA;IAC/BC,KAAOT,EAAAA,cAAAA,CAAIC,MAAM,EAAA,CAAGQ,KAAK,CAACJ,iCAAiBI,CAAAA,KAAK,CAAEC,CAAAA,SAAS,EAAGP,CAAAA,QAAQ,CAAC;QACrEC,EAAIC,EAAAA,iCAAAA,CAAiBF,QAAQ,CAACC,EAAE;QAChCE,cAAgB,EAAA;AAClB,KAAA,CAAA;IACAK,QAAUX,EAAAA,cAAAA,CACPC,MAAM,EAAA,CACNW,SAAS,CAAC,CAACC,KAAAA,GAAWA,KAAU,KAAA,EAAA,GAAKC,SAAYD,GAAAA,KAAAA,CAAAA,CACjDL,QAAQ,EAAA;AACXO,IAAAA,QAAAA,EAAUf,eACPC,MAAM,EAAA,CACNW,SAAS,CAAC,CAACC,KAAWA,GAAAA,KAAAA,KAAU,EAAMA,IAAAA,KAAAA,KAAU,OAAOC,SAAYD,GAAAA,KAAAA,CAAAA,CACnEL,QAAQ,EACRQ,CAAAA,GAAG,CAAC,CAAG,EAAA;AACN,QAAA,GAAGX,kCAAiBY,SAAS;QAC7BC,MAAQ,EAAA;YAAEF,GAAK,EAAA;AAAE;KAElBG,CAAAA,CAAAA,IAAI,CACH,WACA,EAAA;QACEf,EAAI,EAAA,yCAAA;QACJE,cAAgB,EAAA;AAClB,KAAA,EACA,SAAUO,KAAK,EAAA;QACb,IAAI,CAACA,OAAO,OAAO,IAAA;AACnB,QAAA,OAAO,IAAIO,WAAcC,EAAAA,CAAAA,MAAM,CAACR,KAAAA,CAAAA,CAAOS,MAAM,IAAI,EAAA;KAGpDC,CAAAA,CAAAA,OAAO,CAAC,OAAS,EAAA;QAChBnB,EAAI,EAAA,0CAAA;QACJE,cAAgB,EAAA;KAEjBiB,CAAAA,CAAAA,OAAO,CAAC,OAAS,EAAA;QAChBnB,EAAI,EAAA,0CAAA;QACJE,cAAgB,EAAA;KAEjBiB,CAAAA,CAAAA,OAAO,CAAC,IAAM,EAAA;QACbnB,EAAI,EAAA,uCAAA;QACJE,cAAgB,EAAA;AAClB,KAAA,CAAA;AACFkB,IAAAA,eAAAA,EAAiBxB,cACdC,CAAAA,MAAM,EACNW,CAAAA,SAAS,CAAC,CAACC,KAAAA,GAAWA,KAAU,KAAA,EAAA,GAAK,OAAOA,KAC5CL,CAAAA,CAAAA,QAAQ,EACRQ,CAAAA,GAAG,CAAC,CAAG,EAAA;AACN,QAAA,GAAGX,kCAAiBY,SAAS;QAC7BC,MAAQ,EAAA;YAAEF,GAAK,EAAA;AAAE;AACnB,KAAA,CAAA,CACCS,KAAK,CAAC;AAACzB,QAAAA,cAAAA,CAAI0B,GAAG,CAAC,UAAA,CAAA;AAAa,QAAA;KAAK,EAAE;QAClCtB,EAAI,EAAA,yCAAA;QACJE,cAAgB,EAAA;AAClB,KAAA,CAAA,CACCqB,IAAI,CAAC,UAAY,EAAA,CAACZ,QAAUa,EAAAA,UAAAA,GAAAA;QAC3B,OAAOb,QAAAA,GACHa,UACGzB,CAAAA,QAAQ,CAAC;YACRC,EAAIC,EAAAA,iCAAAA,CAAiBF,QAAQ,CAACC,EAAE;YAChCE,cAAgB,EAAA;AAClB,SAAA,CAAA,CACCE,QAAQ,EACXoB,GAAAA,UAAAA;AACN,KAAA;AACJ;;;;"}
1
+ {"version":3,"file":"validation.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/utils/validation.ts"],"sourcesContent":["import * as yup from 'yup';\n\nimport { translatedErrors } from '../../../../../utils/translatedErrors';\n\n/**\n * @description This needs wrapping in `yup.object().shape()` before use.\n */\nconst COMMON_USER_SCHEMA = {\n firstname: yup.string().trim().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n lastname: yup.string().nullable(),\n email: yup.string().email(translatedErrors.email).lowercase().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n username: yup\n .string()\n .transform((value) => (value === '' ? undefined : value))\n .nullable(),\n password: yup\n .string()\n .transform((value) => (value === '' || value === null ? undefined : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least one lowercase character',\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least one uppercase character',\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least one number',\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n ),\n confirmPassword: yup\n .string()\n .transform((value) => (value === '' ? null : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .when('password', (password, passSchema) => {\n return password\n ? passSchema\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .nullable()\n : passSchema;\n }),\n};\n\nexport { COMMON_USER_SCHEMA };\n"],"names":["COMMON_USER_SCHEMA","firstname","yup","string","trim","required","id","translatedErrors","defaultMessage","lastname","nullable","email","lowercase","username","transform","value","undefined","password","min","minLength","values","test","TextEncoder","encode","length","confirmPassword","oneOf","ref","when","passSchema"],"mappings":"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"}
@@ -25,15 +25,24 @@ import { translatedErrors as errorsTrads } from '../../../../../utils/translated
25
25
  }, function(value) {
26
26
  if (!value) return true;
27
27
  return new TextEncoder().encode(value).length <= 72;
28
- }).matches(/[a-z]/, {
28
+ }).test('lowercase', {
29
29
  id: 'components.Input.error.contain.lowercase',
30
30
  defaultMessage: 'Password must contain at least one lowercase character'
31
- }).matches(/[A-Z]/, {
31
+ }, (value)=>{
32
+ if (!value) return true;
33
+ return /[a-z]/.test(value);
34
+ }).test('uppercase', {
32
35
  id: 'components.Input.error.contain.uppercase',
33
36
  defaultMessage: 'Password must contain at least one uppercase character'
34
- }).matches(/\d/, {
37
+ }, (value)=>{
38
+ if (!value) return true;
39
+ return /[A-Z]/.test(value);
40
+ }).test('number', {
35
41
  id: 'components.Input.error.contain.number',
36
42
  defaultMessage: 'Password must contain at least one number'
43
+ }, (value)=>{
44
+ if (!value) return true;
45
+ return /\d/.test(value);
37
46
  }),
38
47
  confirmPassword: yup.string().transform((value)=>value === '' ? null : value).nullable().min(8, {
39
48
  ...errorsTrads.minLength,
@@ -1 +1 @@
1
- {"version":3,"file":"validation.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/utils/validation.ts"],"sourcesContent":["import * as yup from 'yup';\n\nimport { translatedErrors } from '../../../../../utils/translatedErrors';\n\n/**\n * @description This needs wrapping in `yup.object().shape()` before use.\n */\nconst COMMON_USER_SCHEMA = {\n firstname: yup.string().trim().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n lastname: yup.string().nullable(),\n email: yup.string().email(translatedErrors.email).lowercase().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n username: yup\n .string()\n .transform((value) => (value === '' ? undefined : value))\n .nullable(),\n password: yup\n .string()\n .transform((value) => (value === '' || value === null ? undefined : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .matches(/[a-z]/, {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least one lowercase character',\n })\n .matches(/[A-Z]/, {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least one uppercase character',\n })\n .matches(/\\d/, {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least one number',\n }),\n confirmPassword: yup\n .string()\n .transform((value) => (value === '' ? null : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .when('password', (password, passSchema) => {\n return password\n ? passSchema\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .nullable()\n : passSchema;\n }),\n};\n\nexport { COMMON_USER_SCHEMA };\n"],"names":["COMMON_USER_SCHEMA","firstname","yup","string","trim","required","id","translatedErrors","defaultMessage","lastname","nullable","email","lowercase","username","transform","value","undefined","password","min","minLength","values","test","TextEncoder","encode","length","matches","confirmPassword","oneOf","ref","when","passSchema"],"mappings":";;;AAIA;;AAEC,UACKA,kBAAqB,GAAA;AACzBC,IAAAA,SAAAA,EAAWC,IAAIC,MAAM,EAAA,CAAGC,IAAI,EAAA,CAAGC,QAAQ,CAAC;QACtCC,EAAIC,EAAAA,WAAAA,CAAiBF,QAAQ,CAACC,EAAE;QAChCE,cAAgB,EAAA;AAClB,KAAA,CAAA;IACAC,QAAUP,EAAAA,GAAAA,CAAIC,MAAM,EAAA,CAAGO,QAAQ,EAAA;IAC/BC,KAAOT,EAAAA,GAAAA,CAAIC,MAAM,EAAA,CAAGQ,KAAK,CAACJ,WAAiBI,CAAAA,KAAK,CAAEC,CAAAA,SAAS,EAAGP,CAAAA,QAAQ,CAAC;QACrEC,EAAIC,EAAAA,WAAAA,CAAiBF,QAAQ,CAACC,EAAE;QAChCE,cAAgB,EAAA;AAClB,KAAA,CAAA;IACAK,QAAUX,EAAAA,GAAAA,CACPC,MAAM,EAAA,CACNW,SAAS,CAAC,CAACC,KAAAA,GAAWA,KAAU,KAAA,EAAA,GAAKC,SAAYD,GAAAA,KAAAA,CAAAA,CACjDL,QAAQ,EAAA;AACXO,IAAAA,QAAAA,EAAUf,IACPC,MAAM,EAAA,CACNW,SAAS,CAAC,CAACC,KAAWA,GAAAA,KAAAA,KAAU,EAAMA,IAAAA,KAAAA,KAAU,OAAOC,SAAYD,GAAAA,KAAAA,CAAAA,CACnEL,QAAQ,EACRQ,CAAAA,GAAG,CAAC,CAAG,EAAA;AACN,QAAA,GAAGX,YAAiBY,SAAS;QAC7BC,MAAQ,EAAA;YAAEF,GAAK,EAAA;AAAE;KAElBG,CAAAA,CAAAA,IAAI,CACH,WACA,EAAA;QACEf,EAAI,EAAA,yCAAA;QACJE,cAAgB,EAAA;AAClB,KAAA,EACA,SAAUO,KAAK,EAAA;QACb,IAAI,CAACA,OAAO,OAAO,IAAA;AACnB,QAAA,OAAO,IAAIO,WAAcC,EAAAA,CAAAA,MAAM,CAACR,KAAAA,CAAAA,CAAOS,MAAM,IAAI,EAAA;KAGpDC,CAAAA,CAAAA,OAAO,CAAC,OAAS,EAAA;QAChBnB,EAAI,EAAA,0CAAA;QACJE,cAAgB,EAAA;KAEjBiB,CAAAA,CAAAA,OAAO,CAAC,OAAS,EAAA;QAChBnB,EAAI,EAAA,0CAAA;QACJE,cAAgB,EAAA;KAEjBiB,CAAAA,CAAAA,OAAO,CAAC,IAAM,EAAA;QACbnB,EAAI,EAAA,uCAAA;QACJE,cAAgB,EAAA;AAClB,KAAA,CAAA;AACFkB,IAAAA,eAAAA,EAAiBxB,GACdC,CAAAA,MAAM,EACNW,CAAAA,SAAS,CAAC,CAACC,KAAAA,GAAWA,KAAU,KAAA,EAAA,GAAK,OAAOA,KAC5CL,CAAAA,CAAAA,QAAQ,EACRQ,CAAAA,GAAG,CAAC,CAAG,EAAA;AACN,QAAA,GAAGX,YAAiBY,SAAS;QAC7BC,MAAQ,EAAA;YAAEF,GAAK,EAAA;AAAE;AACnB,KAAA,CAAA,CACCS,KAAK,CAAC;AAACzB,QAAAA,GAAAA,CAAI0B,GAAG,CAAC,UAAA,CAAA;AAAa,QAAA;KAAK,EAAE;QAClCtB,EAAI,EAAA,yCAAA;QACJE,cAAgB,EAAA;AAClB,KAAA,CAAA,CACCqB,IAAI,CAAC,UAAY,EAAA,CAACZ,QAAUa,EAAAA,UAAAA,GAAAA;QAC3B,OAAOb,QAAAA,GACHa,UACGzB,CAAAA,QAAQ,CAAC;YACRC,EAAIC,EAAAA,WAAAA,CAAiBF,QAAQ,CAACC,EAAE;YAChCE,cAAgB,EAAA;AAClB,SAAA,CAAA,CACCE,QAAQ,EACXoB,GAAAA,UAAAA;AACN,KAAA;AACJ;;;;"}
1
+ {"version":3,"file":"validation.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Users/utils/validation.ts"],"sourcesContent":["import * as yup from 'yup';\n\nimport { translatedErrors } from '../../../../../utils/translatedErrors';\n\n/**\n * @description This needs wrapping in `yup.object().shape()` before use.\n */\nconst COMMON_USER_SCHEMA = {\n firstname: yup.string().trim().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n lastname: yup.string().nullable(),\n email: yup.string().email(translatedErrors.email).lowercase().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n username: yup\n .string()\n .transform((value) => (value === '' ? undefined : value))\n .nullable(),\n password: yup\n .string()\n .transform((value) => (value === '' || value === null ? undefined : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least one lowercase character',\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least one uppercase character',\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least one number',\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n ),\n confirmPassword: yup\n .string()\n .transform((value) => (value === '' ? null : value))\n .nullable()\n .min(8, {\n ...translatedErrors.minLength,\n values: { min: 8 },\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .when('password', (password, passSchema) => {\n return password\n ? passSchema\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .nullable()\n : passSchema;\n }),\n};\n\nexport { COMMON_USER_SCHEMA };\n"],"names":["COMMON_USER_SCHEMA","firstname","yup","string","trim","required","id","translatedErrors","defaultMessage","lastname","nullable","email","lowercase","username","transform","value","undefined","password","min","minLength","values","test","TextEncoder","encode","length","confirmPassword","oneOf","ref","when","passSchema"],"mappings":"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"}
@@ -178,6 +178,7 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
178
178
  variant: "default",
179
179
  to: "create",
180
180
  size: "S",
181
+ fullWidth: true,
181
182
  children: formatMessage({
182
183
  id: 'Settings.webhooks.list.button.add',
183
184
  defaultMessage: 'Create new webhook'
@@ -1 +1 @@
1
- {"version":3,"file":"ListPage.js","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 <>\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 variant=\"ghost\"\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 </>\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 variant=\"ghost\"\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":["ListPage","showModal","setShowModal","React","useState","webhooksToDelete","setWebhooksToDelete","permissions","useTypedSelector","state","admin_app","settings","webhooks","formatMessage","useIntl","_unstableFormatAPIError","formatAPIError","useAPIErrorHandler","toggleNotification","useNotification","navigate","useNavigate","isLoading","isRBACLoading","allowedActions","canCreate","canUpdate","canDelete","useRBAC","notifyStatus","useNotifyAT","isWebhooksLoading","error","webhooksError","updateWebhook","deleteManyWebhooks","useWebhooks","useEffect","type","message","id","defaultMessage","enableWebhook","body","res","deleteWebhook","ids","prev","filter","webhookId","confirmBulkDelete","selectAllCheckbox","selected","map","webhook","selectOneCheckbox","numberOfWebhooks","length","webhooksToDeleteLength","_jsx","Page","Loading","_jsxs","_Fragment","Title","name","Main","aria-busy","Layouts","Header","title","subtitle","primaryAction","LinkButton","tag","NavLink","startIcon","Plus","variant","to","size","Action","startActions","Typography","textColor","Button","onClick","Trash","Content","Table","colCount","rowCount","footer","TFooter","icon","Thead","Tr","Th","Checkbox","aria-label","checked","onCheckedChange","width","VisuallyHidden","Tbody","style","cursor","Td","e","stopPropagation","includes","fontWeight","url","Flex","Switch","onLabel","offLabel","isEnabled","enabled","visibleLabels","gap","IconButton","label","Pencil","DeleteActionButton","onDelete","EmptyStateLayout","EmptyDocuments","content","action","Dialog","Root","open","onOpenChange","ConfirmDialog","onConfirm","ProtectedListPage","main","Protect"],"mappings":"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"}
1
+ {"version":3,"file":"ListPage.js","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 <>\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\n tag={NavLink}\n startIcon={<Plus />}\n variant=\"default\"\n to=\"create\"\n size=\"S\"\n fullWidth\n >\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 variant=\"ghost\"\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 </>\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 variant=\"ghost\"\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":["ListPage","showModal","setShowModal","React","useState","webhooksToDelete","setWebhooksToDelete","permissions","useTypedSelector","state","admin_app","settings","webhooks","formatMessage","useIntl","_unstableFormatAPIError","formatAPIError","useAPIErrorHandler","toggleNotification","useNotification","navigate","useNavigate","isLoading","isRBACLoading","allowedActions","canCreate","canUpdate","canDelete","useRBAC","notifyStatus","useNotifyAT","isWebhooksLoading","error","webhooksError","updateWebhook","deleteManyWebhooks","useWebhooks","useEffect","type","message","id","defaultMessage","enableWebhook","body","res","deleteWebhook","ids","prev","filter","webhookId","confirmBulkDelete","selectAllCheckbox","selected","map","webhook","selectOneCheckbox","numberOfWebhooks","length","webhooksToDeleteLength","_jsx","Page","Loading","_jsxs","_Fragment","Title","name","Main","aria-busy","Layouts","Header","title","subtitle","primaryAction","LinkButton","tag","NavLink","startIcon","Plus","variant","to","size","fullWidth","Action","startActions","Typography","textColor","Button","onClick","Trash","Content","Table","colCount","rowCount","footer","TFooter","icon","Thead","Tr","Th","Checkbox","aria-label","checked","onCheckedChange","width","VisuallyHidden","Tbody","style","cursor","Td","e","stopPropagation","includes","fontWeight","url","Flex","Switch","onLabel","offLabel","isEnabled","enabled","visibleLabels","gap","IconButton","label","Pencil","DeleteActionButton","onDelete","EmptyStateLayout","EmptyDocuments","content","action","Dialog","Root","open","onOpenChange","ConfirmDialog","onConfirm","ProtectedListPage","main","Protect"],"mappings":"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"}
@@ -157,6 +157,7 @@ import { useWebhooks } from './hooks/useWebhooks.mjs';
157
157
  variant: "default",
158
158
  to: "create",
159
159
  size: "S",
160
+ fullWidth: true,
160
161
  children: formatMessage({
161
162
  id: 'Settings.webhooks.list.button.add',
162
163
  defaultMessage: 'Create new webhook'