@strapi/admin 4.14.3 → 4.14.4

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 (544) hide show
  1. package/.eslintrc.js +4 -1
  2. package/admin/.eslintrc.js +16 -0
  3. package/admin/custom.d.ts +8 -0
  4. package/admin/src/components/AuthenticatedApp/index.js +3 -7
  5. package/admin/src/components/AuthenticatedApp/utils/api.js +1 -39
  6. package/admin/src/components/AuthenticatedApp/utils/checkLatestStrapiVersion.ts +13 -0
  7. package/admin/src/{hooks/useReleaseNotification/utils/api.js → components/AuthenticatedApp/utils/fetchStrapiLatestRelease.ts} +2 -3
  8. package/admin/src/components/{DragLayer/DragLayer.js → DragLayer.tsx} +18 -10
  9. package/admin/src/components/PrivateRoute.tsx +42 -0
  10. package/admin/src/components/Providers/index.js +2 -2
  11. package/admin/src/components/Theme.tsx +39 -0
  12. package/admin/src/components/ThemeToggleProvider.tsx +50 -0
  13. package/admin/src/components/{UnauthenticatedLogo/index.js → UnauthenticatedLogo.tsx} +2 -4
  14. package/admin/src/content-manager/components/BlocksEditor/BlocksInput/index.js +22 -3
  15. package/admin/src/content-manager/components/BlocksEditor/Toolbar/index.js +263 -134
  16. package/admin/src/content-manager/components/BlocksEditor/hooks/useBlocksStore.js +362 -95
  17. package/admin/src/content-manager/components/BlocksEditor/hooks/useModifiersStore.js +15 -0
  18. package/admin/src/content-manager/components/BlocksEditor/index.js +99 -9
  19. package/admin/src/content-manager/components/BlocksEditor/plugins/index.js +4 -0
  20. package/admin/src/content-manager/components/BlocksEditor/plugins/withLinks.js +61 -0
  21. package/admin/src/content-manager/components/BlocksEditor/plugins/withStrapiSchema.js +33 -0
  22. package/admin/src/content-manager/components/BlocksEditor/utils/links.js +90 -0
  23. package/admin/src/content-manager/components/InputUID/index.js +1 -1
  24. package/admin/src/content-manager/hooks/useAllowedAttributes.js +9 -1
  25. package/admin/src/content-manager/pages/EditSettingsView/index.js +1 -0
  26. package/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js +1 -0
  27. package/admin/src/content-manager/pages/ListSettingsView/constants.js +1 -0
  28. package/admin/src/content-manager/pages/ListView/index.js +2 -1
  29. package/admin/src/content-manager/utils/checkIfAttributeIsDisplayable.js +1 -1
  30. package/admin/src/content-manager/utils/schema.js +2 -2
  31. package/admin/src/contexts/configuration.ts +15 -0
  32. package/admin/src/contexts/index.js +1 -2
  33. package/admin/src/contexts/themeToggle.ts +16 -0
  34. package/admin/src/hooks/{useConfigurations/__mocks__/index.js → __mocks__/useConfigurations.ts} +4 -2
  35. package/admin/src/hooks/index.js +1 -5
  36. package/admin/src/hooks/useConfigurations.ts +5 -0
  37. package/admin/src/hooks/useDebounce.ts +17 -0
  38. package/admin/src/hooks/useLicenseLimitNotification.ts +3 -0
  39. package/admin/src/hooks/useThemeToggle.ts +9 -0
  40. package/admin/src/pages/App/index.js +1 -1
  41. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +1 -1
  42. package/admin/src/pages/AuthPage/components/ForgotPasswordSuccess/index.js +1 -1
  43. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +1 -1
  44. package/admin/src/pages/AuthPage/components/Oops/index.js +1 -1
  45. package/admin/src/pages/AuthPage/components/Register/index.js +1 -1
  46. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +1 -1
  47. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +0 -2
  48. package/admin/src/pages/MarketplacePage/hooks/__mocks__/useNavigatorOnline.ts +1 -0
  49. package/admin/src/{hooks/useNavigatorOnLine/index.js → pages/MarketplacePage/hooks/useNavigatorOnline.ts} +4 -6
  50. package/admin/src/pages/MarketplacePage/index.js +3 -3
  51. package/admin/src/pages/ProfilePage/index.js +1 -1
  52. package/admin/src/pages/SettingsPage/components/Tokens/Regenerate/index.js +1 -1
  53. package/admin/src/{hooks/useRegenerate/index.js → pages/SettingsPage/hooks/useRegenerate.ts} +13 -7
  54. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Regenerate/index.js +1 -1
  55. package/admin/src/pages/UseCasePage/index.js +1 -1
  56. package/admin/src/translations/en.json +8 -0
  57. package/admin/tsconfig.json +5 -0
  58. package/build/1049.f7aed23d.chunk.js +1 -0
  59. package/build/{1227.969e24e6.chunk.js → 1227.f9c74718.chunk.js} +1 -1
  60. package/build/{1386.db9a2795.chunk.js → 1386.6b8819c6.chunk.js} +2 -2
  61. package/build/2224.8af54440.chunk.js +138 -0
  62. package/build/2225.d1bcf7e3.chunk.js +79 -0
  63. package/build/2379.f0baf826.chunk.js +1 -0
  64. package/build/{2395.f6ac2863.chunk.js → 2395.aca6ce66.chunk.js} +1 -1
  65. package/build/2421.a478ba24.chunk.js +105 -0
  66. package/build/2801.c49f88a1.chunk.js +1 -0
  67. package/build/{3483.f6b2439f.chunk.js → 3483.5df8e010.chunk.js} +1 -1
  68. package/build/3911.d4fada48.chunk.js +95 -0
  69. package/build/412.72afdf0c.chunk.js +689 -0
  70. package/build/{4174.3e13fb26.chunk.js → 4174.df9aa09a.chunk.js} +1 -1
  71. package/build/502.8666bbef.chunk.js +25 -0
  72. package/build/570.2f3b4c56.chunk.js +1 -0
  73. package/build/5702.5b433d50.chunk.js +1 -0
  74. package/build/6186.c33ce082.chunk.js +116 -0
  75. package/build/7464.43a4527c.chunk.js +1 -0
  76. package/build/7818.d2196a53.chunk.js +29 -0
  77. package/build/7897.5c03247b.chunk.js +25 -0
  78. package/build/{8276.951e198e.chunk.js → 8276.d4426fd8.chunk.js} +3 -3
  79. package/build/8690.33243bba.chunk.js +38 -0
  80. package/build/{9832.65ed5a44.chunk.js → 8743.31c921b1.chunk.js} +139 -123
  81. package/build/9218.8bc01ab9.chunk.js +1 -0
  82. package/build/Admin-authenticatedApp.27545a1b.chunk.js +112 -0
  83. package/build/{Admin_InternalErrorPage.b3163562.chunk.js → Admin_InternalErrorPage.b66ee9c1.chunk.js} +1 -1
  84. package/build/Admin_homePage.a6281dd6.chunk.js +124 -0
  85. package/build/Admin_marketplace.31b962b8.chunk.js +44 -0
  86. package/build/{Admin_pluginsPage.b9fa2947.chunk.js → Admin_pluginsPage.9217101d.chunk.js} +1 -1
  87. package/build/{Admin_profilePage.a4d41380.chunk.js → Admin_profilePage.680123d9.chunk.js} +2 -2
  88. package/build/{Admin_settingsPage.6dc2af9f.chunk.js → Admin_settingsPage.33378310.chunk.js} +1 -1
  89. package/build/{Upload_ConfigureTheView.cc7ca628.chunk.js → Upload_ConfigureTheView.b40eea4d.chunk.js} +1 -1
  90. package/build/admin-app.e8c52c37.chunk.js +36 -0
  91. package/build/admin-edit-roles-page.fcf056bf.chunk.js +275 -0
  92. package/build/{admin-edit-users.9b42cc9e.chunk.js → admin-edit-users.89efe3c4.chunk.js} +2 -2
  93. package/build/{admin-roles-list.cf964578.chunk.js → admin-roles-list.8b77704a.chunk.js} +3 -3
  94. package/build/admin-users.e3f1be14.chunk.js +19 -0
  95. package/build/{api-tokens-create-page.2f25ddf6.chunk.js → api-tokens-create-page.0dd63e91.chunk.js} +1 -1
  96. package/build/{api-tokens-edit-page.45faac16.chunk.js → api-tokens-edit-page.78d877f8.chunk.js} +1 -1
  97. package/build/{api-tokens-list-page.5baabf1a.chunk.js → api-tokens-list-page.ae13346c.chunk.js} +2 -2
  98. package/build/audit-logs-settings-page.e9c92a75.chunk.js +9 -0
  99. package/build/content-manager.5849dbe3.chunk.js +1226 -0
  100. package/build/{content-type-builder-list-view.aa8a5d1a.chunk.js → content-type-builder-list-view.3fffae65.chunk.js} +1 -1
  101. package/build/{content-type-builder-translation-en-json.b9e5cacd.chunk.js → content-type-builder-translation-en-json.43f9d7bc.chunk.js} +1 -1
  102. package/build/{content-type-builder.885f2cad.chunk.js → content-type-builder.98c71164.chunk.js} +14 -14
  103. package/build/{email-settings-page.6bd7b280.chunk.js → email-settings-page.ecfec9b3.chunk.js} +1 -1
  104. package/build/{en-json.a3973ff5.chunk.js → en-json.bd611a8e.chunk.js} +1 -1
  105. package/build/{i18n-settings-page.6c0157e7.chunk.js → i18n-settings-page.a9708926.chunk.js} +1 -1
  106. package/build/index.html +1 -1
  107. package/build/main.3abb6f34.js +3278 -0
  108. package/build/{review-workflows-settings-create-view.ae369a88.chunk.js → review-workflows-settings-create-view.b7b0c6c5.chunk.js} +1 -1
  109. package/build/{review-workflows-settings-edit-view.9a61c69f.chunk.js → review-workflows-settings-edit-view.c331b3fe.chunk.js} +1 -1
  110. package/build/review-workflows-settings-list-view.70218dc1.chunk.js +75 -0
  111. package/build/{runtime~main.377a22d0.js → runtime~main.450561b1.js} +1 -1
  112. package/build/{sso-settings-page.a29e6c38.chunk.js → sso-settings-page.1a9e7f8f.chunk.js} +1 -1
  113. package/build/{transfer-tokens-create-page.6e1b8cee.chunk.js → transfer-tokens-create-page.e7f541d3.chunk.js} +1 -1
  114. package/build/{transfer-tokens-edit-page.10bb22e2.chunk.js → transfer-tokens-edit-page.bd1276c2.chunk.js} +1 -1
  115. package/build/{transfer-tokens-list-page.0306652c.chunk.js → transfer-tokens-list-page.5de6bb9f.chunk.js} +2 -2
  116. package/build/upload-settings.97ef4c92.chunk.js +14 -0
  117. package/build/{upload.19e14c8e.chunk.js → upload.f08715a1.chunk.js} +1 -1
  118. package/build/{users-advanced-settings-page.ed69812f.chunk.js → users-advanced-settings-page.36a3c363.chunk.js} +1 -1
  119. package/build/users-email-settings-page.47b47962.chunk.js +149 -0
  120. package/build/users-providers-settings-page.1e0c8376.chunk.js +154 -0
  121. package/build/{users-roles-settings-page.afab5a0d.chunk.js → users-roles-settings-page.d5a8e8a1.chunk.js} +4 -4
  122. package/build/{webhook-edit-page.4c037da4.chunk.js → webhook-edit-page.87456194.chunk.js} +3 -3
  123. package/build/{webhook-list-page.56c82f4a.chunk.js → webhook-list-page.c88a382b.chunk.js} +3 -3
  124. package/ee/admin/hooks/{useLicenseLimitNotification.js → useLicenseLimitNotification.ts} +4 -4
  125. package/ee/admin/pages/AuthPage/components/Providers/index.js +1 -1
  126. package/ee/admin/pages/SettingsPage/pages/Users/ListPage/index.js +1 -3
  127. package/package.json +12 -11
  128. package/scripts/build.js +6 -2
  129. package/webpack.config.js +1 -0
  130. package/admin/src/components/AuthenticatedApp/utils/checkLatestStrapiVersion.js +0 -11
  131. package/admin/src/components/DragLayer/index.js +0 -1
  132. package/admin/src/components/GlobalStyle/index.js +0 -9
  133. package/admin/src/components/PrivateRoute/index.js +0 -46
  134. package/admin/src/components/Theme/index.js +0 -26
  135. package/admin/src/components/ThemeToggleProvider/index.js +0 -79
  136. package/admin/src/contexts/Configurations/index.js +0 -5
  137. package/admin/src/contexts/ThemeToggle/index.js +0 -5
  138. package/admin/src/hooks/useConfigurations/index.js +0 -11
  139. package/admin/src/hooks/useDebounce/index.js +0 -19
  140. package/admin/src/hooks/useLicenseLimitNotification/index.js +0 -5
  141. package/admin/src/hooks/useReleaseNotification/index.js +0 -31
  142. package/admin/src/hooks/useReleaseNotification/utils/checkLatestStrapiVersion.js +0 -11
  143. package/admin/src/hooks/useThemeToggle/index.js +0 -11
  144. package/admin/src/tsconfig.json +0 -10
  145. package/build/1049.acb0e730.chunk.js +0 -1
  146. package/build/2225.78fb9b89.chunk.js +0 -79
  147. package/build/2379.906334f0.chunk.js +0 -1
  148. package/build/2614.3e088d3e.chunk.js +0 -35
  149. package/build/2659.cb94f1e7.chunk.js +0 -105
  150. package/build/2801.2afb4757.chunk.js +0 -1
  151. package/build/2950.216f2e89.chunk.js +0 -1
  152. package/build/3021.33ad47fb.chunk.js +0 -103
  153. package/build/3911.488fbde3.chunk.js +0 -95
  154. package/build/4546.1203ac95.chunk.js +0 -1
  155. package/build/502.9918bff7.chunk.js +0 -1
  156. package/build/5158.c85f841a.chunk.js +0 -1
  157. package/build/6266.e8990811.chunk.js +0 -146
  158. package/build/7464.0280cf59.chunk.js +0 -1
  159. package/build/7897.4a39de37.chunk.js +0 -6
  160. package/build/Admin-authenticatedApp.a16cdc37.chunk.js +0 -112
  161. package/build/Admin_homePage.6cb51f18.chunk.js +0 -81
  162. package/build/Admin_marketplace.3eb5e132.chunk.js +0 -55
  163. package/build/admin-app.98cdf43a.chunk.js +0 -36
  164. package/build/admin-edit-roles-page.418bb1c5.chunk.js +0 -267
  165. package/build/admin-users.8385dd73.chunk.js +0 -11
  166. package/build/audit-logs-settings-page.91489670.chunk.js +0 -1
  167. package/build/content-manager.e1e49cc9.chunk.js +0 -1199
  168. package/build/main.105dcf23.js +0 -2665
  169. package/build/review-workflows-settings-list-view.067e0c35.chunk.js +0 -56
  170. package/build/upload-settings.0af6edc5.chunk.js +0 -14
  171. package/build/users-email-settings-page.131a00fb.chunk.js +0 -9
  172. package/build/users-providers-settings-page.b3dca41d.chunk.js +0 -14
  173. package/dist/server/admin/server/src/bootstrap.d.ts +0 -2
  174. package/dist/server/admin/server/src/controllers/admin.d.ts +0 -42
  175. package/dist/server/admin/server/src/controllers/api-token.d.ts +0 -10
  176. package/dist/server/admin/server/src/controllers/authenticated-user.d.ts +0 -6
  177. package/dist/server/admin/server/src/controllers/authentication.d.ts +0 -12
  178. package/dist/server/admin/server/src/controllers/permission.d.ts +0 -13
  179. package/dist/server/admin/server/src/controllers/role.d.ts +0 -43
  180. package/dist/server/admin/server/src/controllers/transfer/token.d.ts +0 -9
  181. package/dist/server/admin/server/src/controllers/user.d.ts +0 -13
  182. package/dist/server/admin/server/src/destroy.d.ts +0 -2
  183. package/dist/server/admin/server/src/domain/condition/index.d.ts +0 -56
  184. package/dist/server/admin/server/src/domain/condition/index.js +0 -53
  185. package/dist/server/admin/server/src/domain/condition/index.js.map +0 -1
  186. package/dist/server/admin/server/src/domain/condition/provider.d.ts +0 -30
  187. package/dist/server/admin/server/src/domain/condition/provider.js +0 -37
  188. package/dist/server/admin/server/src/domain/condition/provider.js.map +0 -1
  189. package/dist/server/admin/server/src/index.d.ts +0 -10
  190. package/dist/server/admin/server/src/middlewares/data-transfer.d.ts +0 -2
  191. package/dist/server/admin/server/src/services/action.d.ts +0 -9
  192. package/dist/server/admin/server/src/services/auth.d.ts +0 -42
  193. package/dist/server/admin/server/src/services/condition.d.ts +0 -2
  194. package/dist/server/admin/server/src/services/content-type.d.ts +0 -51
  195. package/dist/server/admin/server/src/services/index.d.ts +0 -61
  196. package/dist/server/admin/server/src/services/metrics.d.ts +0 -7
  197. package/dist/server/admin/server/src/services/permission/engine.d.ts +0 -15
  198. package/dist/server/admin/server/src/services/permission/queries.d.ts +0 -44
  199. package/dist/server/admin/server/src/services/permission.d.ts +0 -67
  200. package/dist/server/admin/server/src/services/role.d.ts +0 -116
  201. package/dist/server/admin/server/src/services/transfer/token.d.ts +0 -103
  202. package/dist/server/admin/server/src/services/transfer/utils.d.ts +0 -19
  203. package/dist/server/admin/server/src/services/user.d.ts +0 -96
  204. package/dist/server/admin/server/src/strategies/admin.d.ts +0 -25
  205. package/dist/server/admin/server/src/strategies/api-token.d.ts +0 -60
  206. package/dist/server/admin/server/src/strategies/data-transfer.d.ts +0 -50
  207. package/dist/server/admin/server/src/validation/common-validators.d.ts +0 -59
  208. package/dist/server/admin/server/src/validation/permission.d.ts +0 -9
  209. package/dist/server/bootstrap.d.ts +0 -2
  210. package/dist/server/bootstrap.js +0 -84
  211. package/dist/server/bootstrap.js.map +0 -1
  212. package/dist/server/config/admin-actions.d.ts +0 -33
  213. package/dist/server/config/admin-actions.js +0 -219
  214. package/dist/server/config/admin-actions.js.map +0 -1
  215. package/dist/server/config/admin-conditions.d.ts +0 -46
  216. package/dist/server/config/admin-conditions.js +0 -29
  217. package/dist/server/config/admin-conditions.js.map +0 -1
  218. package/dist/server/config/email-templates/forgot-password.d.ts +0 -6
  219. package/dist/server/config/email-templates/forgot-password.js +0 -19
  220. package/dist/server/config/email-templates/forgot-password.js.map +0 -1
  221. package/dist/server/config/index.d.ts +0 -17
  222. package/dist/server/config/index.js +0 -14
  223. package/dist/server/config/index.js.map +0 -1
  224. package/dist/server/config/settings.d.ts +0 -7
  225. package/dist/server/config/settings.js +0 -11
  226. package/dist/server/config/settings.js.map +0 -1
  227. package/dist/server/content-types/Permission.d.ts +0 -62
  228. package/dist/server/content-types/Permission.js +0 -64
  229. package/dist/server/content-types/Permission.js.map +0 -1
  230. package/dist/server/content-types/Role.d.ts +0 -57
  231. package/dist/server/content-types/Role.js +0 -59
  232. package/dist/server/content-types/Role.js.map +0 -1
  233. package/dist/server/content-types/User.d.ts +0 -106
  234. package/dist/server/content-types/User.js +0 -109
  235. package/dist/server/content-types/User.js.map +0 -1
  236. package/dist/server/content-types/api-token-permission.d.ts +0 -35
  237. package/dist/server/content-types/api-token-permission.js +0 -37
  238. package/dist/server/content-types/api-token-permission.js.map +0 -1
  239. package/dist/server/content-types/api-token.d.ts +0 -73
  240. package/dist/server/content-types/api-token.js +0 -79
  241. package/dist/server/content-types/api-token.js.map +0 -1
  242. package/dist/server/content-types/index.d.ts +0 -437
  243. package/dist/server/content-types/index.js +0 -22
  244. package/dist/server/content-types/index.js.map +0 -1
  245. package/dist/server/content-types/transfer-token-permission.d.ts +0 -35
  246. package/dist/server/content-types/transfer-token-permission.js +0 -37
  247. package/dist/server/content-types/transfer-token-permission.js.map +0 -1
  248. package/dist/server/content-types/transfer-token.d.ts +0 -65
  249. package/dist/server/content-types/transfer-token.js +0 -67
  250. package/dist/server/content-types/transfer-token.js.map +0 -1
  251. package/dist/server/controllers/admin.d.ts +0 -42
  252. package/dist/server/controllers/admin.js +0 -131
  253. package/dist/server/controllers/admin.js.map +0 -1
  254. package/dist/server/controllers/api-token.d.ts +0 -10
  255. package/dist/server/controllers/api-token.js +0 -106
  256. package/dist/server/controllers/api-token.js.map +0 -1
  257. package/dist/server/controllers/authenticated-user.d.ts +0 -6
  258. package/dist/server/controllers/authenticated-user.js +0 -41
  259. package/dist/server/controllers/authenticated-user.js.map +0 -1
  260. package/dist/server/controllers/authentication.d.ts +0 -12
  261. package/dist/server/controllers/authentication.js +0 -130
  262. package/dist/server/controllers/authentication.js.map +0 -1
  263. package/dist/server/controllers/content-api.d.ts +0 -5
  264. package/dist/server/controllers/content-api.js +0 -13
  265. package/dist/server/controllers/content-api.js.map +0 -1
  266. package/dist/server/controllers/formatters/conditions.d.ts +0 -3
  267. package/dist/server/controllers/formatters/conditions.js +0 -9
  268. package/dist/server/controllers/formatters/conditions.js.map +0 -1
  269. package/dist/server/controllers/formatters/format-actions-by-sections.d.ts +0 -7
  270. package/dist/server/controllers/formatters/format-actions-by-sections.js +0 -36
  271. package/dist/server/controllers/formatters/format-actions-by-sections.js.map +0 -1
  272. package/dist/server/controllers/formatters/index.d.ts +0 -2
  273. package/dist/server/controllers/formatters/index.js +0 -11
  274. package/dist/server/controllers/formatters/index.js.map +0 -1
  275. package/dist/server/controllers/index.d.ts +0 -68
  276. package/dist/server/controllers/index.js +0 -51
  277. package/dist/server/controllers/index.js.map +0 -1
  278. package/dist/server/controllers/permission.d.ts +0 -13
  279. package/dist/server/controllers/permission.js +0 -38
  280. package/dist/server/controllers/permission.js.map +0 -1
  281. package/dist/server/controllers/role.d.ts +0 -43
  282. package/dist/server/controllers/role.js +0 -148
  283. package/dist/server/controllers/role.js.map +0 -1
  284. package/dist/server/controllers/transfer/index.d.ts +0 -4
  285. package/dist/server/controllers/transfer/index.js +0 -14
  286. package/dist/server/controllers/transfer/index.js.map +0 -1
  287. package/dist/server/controllers/transfer/runner.d.ts +0 -6
  288. package/dist/server/controllers/transfer/runner.js +0 -25
  289. package/dist/server/controllers/transfer/runner.js.map +0 -1
  290. package/dist/server/controllers/transfer/token.d.ts +0 -9
  291. package/dist/server/controllers/transfer/token.js +0 -100
  292. package/dist/server/controllers/transfer/token.js.map +0 -1
  293. package/dist/server/controllers/user.d.ts +0 -13
  294. package/dist/server/controllers/user.js +0 -105
  295. package/dist/server/controllers/user.js.map +0 -1
  296. package/dist/server/controllers/webhooks.d.ts +0 -10
  297. package/dist/server/controllers/webhooks.js +0 -100
  298. package/dist/server/controllers/webhooks.js.map +0 -1
  299. package/dist/server/destroy.d.ts +0 -2
  300. package/dist/server/destroy.js +0 -9
  301. package/dist/server/destroy.js.map +0 -1
  302. package/dist/server/domain/action/index.d.ts +0 -33
  303. package/dist/server/domain/action/index.js +0 -98
  304. package/dist/server/domain/action/index.js.map +0 -1
  305. package/dist/server/domain/action/provider.d.ts +0 -38
  306. package/dist/server/domain/action/provider.js +0 -66
  307. package/dist/server/domain/action/provider.js.map +0 -1
  308. package/dist/server/domain/condition/index.d.ts +0 -53
  309. package/dist/server/domain/condition/index.js +0 -56
  310. package/dist/server/domain/condition/index.js.map +0 -1
  311. package/dist/server/domain/condition/provider.d.ts +0 -30
  312. package/dist/server/domain/condition/provider.js +0 -37
  313. package/dist/server/domain/condition/provider.js.map +0 -1
  314. package/dist/server/domain/permission/index.d.ts +0 -77
  315. package/dist/server/domain/permission/index.js +0 -119
  316. package/dist/server/domain/permission/index.js.map +0 -1
  317. package/dist/server/domain/user.d.ts +0 -32
  318. package/dist/server/domain/user.js +0 -28
  319. package/dist/server/domain/user.js.map +0 -1
  320. package/dist/server/index.d.ts +0 -10
  321. package/dist/server/index.js +0 -27
  322. package/dist/server/index.js.map +0 -1
  323. package/dist/server/middlewares/data-transfer.d.ts +0 -2
  324. package/dist/server/middlewares/data-transfer.js +0 -21
  325. package/dist/server/middlewares/data-transfer.js.map +0 -1
  326. package/dist/server/middlewares/index.d.ts +0 -9
  327. package/dist/server/middlewares/index.js +0 -17
  328. package/dist/server/middlewares/index.js.map +0 -1
  329. package/dist/server/middlewares/rateLimit.d.ts +0 -5
  330. package/dist/server/middlewares/rateLimit.js +0 -42
  331. package/dist/server/middlewares/rateLimit.js.map +0 -1
  332. package/dist/server/policies/hasPermissions.d.ts +0 -6
  333. package/dist/server/policies/hasPermissions.js +0 -38
  334. package/dist/server/policies/hasPermissions.js.map +0 -1
  335. package/dist/server/policies/index.d.ts +0 -14
  336. package/dist/server/policies/index.js +0 -10
  337. package/dist/server/policies/index.js.map +0 -1
  338. package/dist/server/policies/isAuthenticatedAdmin.d.ts +0 -2
  339. package/dist/server/policies/isAuthenticatedAdmin.js +0 -6
  340. package/dist/server/policies/isAuthenticatedAdmin.js.map +0 -1
  341. package/dist/server/policies/isTelemetryEnabled.d.ts +0 -10
  342. package/dist/server/policies/isTelemetryEnabled.js +0 -18
  343. package/dist/server/policies/isTelemetryEnabled.js.map +0 -1
  344. package/dist/server/register.d.ts +0 -2
  345. package/dist/server/register.js +0 -18
  346. package/dist/server/register.js.map +0 -1
  347. package/dist/server/routes/admin.d.ts +0 -23
  348. package/dist/server/routes/admin.js +0 -72
  349. package/dist/server/routes/admin.js.map +0 -1
  350. package/dist/server/routes/api-tokens.d.ts +0 -14
  351. package/dist/server/routes/api-tokens.js +0 -71
  352. package/dist/server/routes/api-tokens.js.map +0 -1
  353. package/dist/server/routes/authentication.d.ts +0 -29
  354. package/dist/server/routes/authentication.js +0 -58
  355. package/dist/server/routes/authentication.js.map +0 -1
  356. package/dist/server/routes/content-api.d.ts +0 -9
  357. package/dist/server/routes/content-api.js +0 -21
  358. package/dist/server/routes/content-api.js.map +0 -1
  359. package/dist/server/routes/index.d.ts +0 -66
  360. package/dist/server/routes/index.js +0 -32
  361. package/dist/server/routes/index.js.map +0 -1
  362. package/dist/server/routes/permissions.d.ts +0 -9
  363. package/dist/server/routes/permissions.js +0 -21
  364. package/dist/server/routes/permissions.js.map +0 -1
  365. package/dist/server/routes/roles.d.ts +0 -14
  366. package/dist/server/routes/roles.js +0 -108
  367. package/dist/server/routes/roles.js.map +0 -1
  368. package/dist/server/routes/serve-admin-panel.d.ts +0 -5
  369. package/dist/server/routes/serve-admin-panel.js +0 -65
  370. package/dist/server/routes/serve-admin-panel.js.map +0 -1
  371. package/dist/server/routes/transfer.d.ts +0 -55
  372. package/dist/server/routes/transfer.js +0 -105
  373. package/dist/server/routes/transfer.js.map +0 -1
  374. package/dist/server/routes/users.d.ts +0 -14
  375. package/dist/server/routes/users.js +0 -89
  376. package/dist/server/routes/users.js.map +0 -1
  377. package/dist/server/routes/webhooks.d.ts +0 -14
  378. package/dist/server/routes/webhooks.js +0 -82
  379. package/dist/server/routes/webhooks.js.map +0 -1
  380. package/dist/server/services/action.d.ts +0 -9
  381. package/dist/server/services/action.js +0 -29
  382. package/dist/server/services/action.js.map +0 -1
  383. package/dist/server/services/api-token.d.ts +0 -102
  384. package/dist/server/services/api-token.js +0 -378
  385. package/dist/server/services/api-token.js.map +0 -1
  386. package/dist/server/services/auth.d.ts +0 -42
  387. package/dist/server/services/auth.js +0 -98
  388. package/dist/server/services/auth.js.map +0 -1
  389. package/dist/server/services/condition.d.ts +0 -2
  390. package/dist/server/services/condition.js +0 -11
  391. package/dist/server/services/condition.js.map +0 -1
  392. package/dist/server/services/constants.d.ts +0 -33
  393. package/dist/server/services/constants.js +0 -37
  394. package/dist/server/services/constants.js.map +0 -1
  395. package/dist/server/services/content-type.d.ts +0 -51
  396. package/dist/server/services/content-type.js +0 -158
  397. package/dist/server/services/content-type.js.map +0 -1
  398. package/dist/server/services/index.d.ts +0 -61
  399. package/dist/server/services/index.js +0 -57
  400. package/dist/server/services/index.js.map +0 -1
  401. package/dist/server/services/metrics.d.ts +0 -7
  402. package/dist/server/services/metrics.js +0 -37
  403. package/dist/server/services/metrics.js.map +0 -1
  404. package/dist/server/services/passport/local-strategy.d.ts +0 -3
  405. package/dist/server/services/passport/local-strategy.js +0 -28
  406. package/dist/server/services/passport/local-strategy.js.map +0 -1
  407. package/dist/server/services/passport.d.ts +0 -7
  408. package/dist/server/services/passport.js +0 -40
  409. package/dist/server/services/passport.js.map +0 -1
  410. package/dist/server/services/permission/engine.d.ts +0 -15
  411. package/dist/server/services/permission/engine.js +0 -67
  412. package/dist/server/services/permission/engine.js.map +0 -1
  413. package/dist/server/services/permission/permissions-manager/index.d.ts +0 -16
  414. package/dist/server/services/permission/permissions-manager/index.js +0 -48
  415. package/dist/server/services/permission/permissions-manager/index.js.map +0 -1
  416. package/dist/server/services/permission/permissions-manager/query-builders.d.ts +0 -3
  417. package/dist/server/services/permission/permissions-manager/query-builders.js +0 -66
  418. package/dist/server/services/permission/permissions-manager/query-builders.js.map +0 -1
  419. package/dist/server/services/permission/permissions-manager/sanitize.d.ts +0 -6
  420. package/dist/server/services/permission/permissions-manager/sanitize.js +0 -184
  421. package/dist/server/services/permission/permissions-manager/sanitize.js.map +0 -1
  422. package/dist/server/services/permission/permissions-manager/validate.d.ts +0 -5
  423. package/dist/server/services/permission/permissions-manager/validate.js +0 -134
  424. package/dist/server/services/permission/permissions-manager/validate.js.map +0 -1
  425. package/dist/server/services/permission/queries.d.ts +0 -44
  426. package/dist/server/services/permission/queries.js +0 -159
  427. package/dist/server/services/permission/queries.js.map +0 -1
  428. package/dist/server/services/permission/sections-builder/builder.d.ts +0 -39
  429. package/dist/server/services/permission/sections-builder/builder.js +0 -75
  430. package/dist/server/services/permission/sections-builder/builder.js.map +0 -1
  431. package/dist/server/services/permission/sections-builder/handlers.d.ts +0 -44
  432. package/dist/server/services/permission/sections-builder/handlers.js +0 -124
  433. package/dist/server/services/permission/sections-builder/handlers.js.map +0 -1
  434. package/dist/server/services/permission/sections-builder/index.d.ts +0 -8
  435. package/dist/server/services/permission/sections-builder/index.js +0 -39
  436. package/dist/server/services/permission/sections-builder/index.js.map +0 -1
  437. package/dist/server/services/permission/sections-builder/section.d.ts +0 -38
  438. package/dist/server/services/permission/sections-builder/section.js +0 -56
  439. package/dist/server/services/permission/sections-builder/section.js.map +0 -1
  440. package/dist/server/services/permission/sections-builder/utils.d.ts +0 -12
  441. package/dist/server/services/permission/sections-builder/utils.js +0 -23
  442. package/dist/server/services/permission/sections-builder/utils.js.map +0 -1
  443. package/dist/server/services/permission.d.ts +0 -67
  444. package/dist/server/services/permission.js +0 -33
  445. package/dist/server/services/permission.js.map +0 -1
  446. package/dist/server/services/project-settings.d.ts +0 -5
  447. package/dist/server/services/project-settings.js +0 -139
  448. package/dist/server/services/project-settings.js.map +0 -1
  449. package/dist/server/services/role.d.ts +0 -116
  450. package/dist/server/services/role.js +0 -382
  451. package/dist/server/services/role.js.map +0 -1
  452. package/dist/server/services/token.d.ts +0 -35
  453. package/dist/server/services/token.js +0 -58
  454. package/dist/server/services/token.js.map +0 -1
  455. package/dist/server/services/transfer/index.d.ts +0 -4
  456. package/dist/server/services/transfer/index.js +0 -33
  457. package/dist/server/services/transfer/index.js.map +0 -1
  458. package/dist/server/services/transfer/permission.d.ts +0 -6
  459. package/dist/server/services/transfer/permission.js +0 -20
  460. package/dist/server/services/transfer/permission.js.map +0 -1
  461. package/dist/server/services/transfer/token.d.ts +0 -84
  462. package/dist/server/services/transfer/token.js +0 -273
  463. package/dist/server/services/transfer/token.js.map +0 -1
  464. package/dist/server/services/transfer/utils.d.ts +0 -13
  465. package/dist/server/services/transfer/utils.js +0 -29
  466. package/dist/server/services/transfer/utils.js.map +0 -1
  467. package/dist/server/services/user.d.ts +0 -96
  468. package/dist/server/services/user.js +0 -311
  469. package/dist/server/services/user.js.map +0 -1
  470. package/dist/server/strategies/admin.d.ts +0 -25
  471. package/dist/server/strategies/admin.js +0 -44
  472. package/dist/server/strategies/admin.js.map +0 -1
  473. package/dist/server/strategies/api-token.d.ts +0 -60
  474. package/dist/server/strategies/api-token.js +0 -121
  475. package/dist/server/strategies/api-token.js.map +0 -1
  476. package/dist/server/strategies/data-transfer.d.ts +0 -66
  477. package/dist/server/strategies/data-transfer.js +0 -94
  478. package/dist/server/strategies/data-transfer.js.map +0 -1
  479. package/dist/server/strategies/index.d.ts +0 -17
  480. package/dist/server/strategies/index.js +0 -27
  481. package/dist/server/strategies/index.js.map +0 -1
  482. package/dist/server/types/src/types/utils/object.d.ts +0 -58
  483. package/dist/server/types/src/types/utils/object.js +0 -3
  484. package/dist/server/types/src/types/utils/object.js.map +0 -1
  485. package/dist/server/utils/index.d.ts +0 -1
  486. package/dist/server/utils/index.js +0 -9
  487. package/dist/server/utils/index.js.map +0 -1
  488. package/dist/server/utils/types.d.ts +0 -14
  489. package/dist/server/utils/types.js +0 -3
  490. package/dist/server/utils/types.js.map +0 -1
  491. package/dist/server/validation/action-provider.d.ts +0 -5
  492. package/dist/server/validation/action-provider.js +0 -58
  493. package/dist/server/validation/action-provider.js.map +0 -1
  494. package/dist/server/validation/api-tokens.d.ts +0 -7
  495. package/dist/server/validation/api-tokens.js +0 -36
  496. package/dist/server/validation/api-tokens.js.map +0 -1
  497. package/dist/server/validation/authentication/forgot-password.d.ts +0 -2
  498. package/dist/server/validation/authentication/forgot-password.js +0 -16
  499. package/dist/server/validation/authentication/forgot-password.js.map +0 -1
  500. package/dist/server/validation/authentication/index.d.ts +0 -5
  501. package/dist/server/validation/authentication/index.js +0 -17
  502. package/dist/server/validation/authentication/index.js.map +0 -1
  503. package/dist/server/validation/authentication/register.d.ts +0 -9
  504. package/dist/server/validation/authentication/register.js +0 -49
  505. package/dist/server/validation/authentication/register.js.map +0 -1
  506. package/dist/server/validation/authentication/renew-token.d.ts +0 -2
  507. package/dist/server/validation/authentication/renew-token.js +0 -6
  508. package/dist/server/validation/authentication/renew-token.js.map +0 -1
  509. package/dist/server/validation/authentication/reset-password.d.ts +0 -2
  510. package/dist/server/validation/authentication/reset-password.js +0 -17
  511. package/dist/server/validation/authentication/reset-password.js.map +0 -1
  512. package/dist/server/validation/common-functions/check-fields-are-correctly-nested.d.ts +0 -2
  513. package/dist/server/validation/common-functions/check-fields-are-correctly-nested.js +0 -26
  514. package/dist/server/validation/common-functions/check-fields-are-correctly-nested.js.map +0 -1
  515. package/dist/server/validation/common-functions/check-fields-dont-have-duplicates.d.ts +0 -2
  516. package/dist/server/validation/common-functions/check-fields-dont-have-duplicates.js +0 -18
  517. package/dist/server/validation/common-functions/check-fields-dont-have-duplicates.js.map +0 -1
  518. package/dist/server/validation/common-functions/index.d.ts +0 -3
  519. package/dist/server/validation/common-functions/index.js +0 -11
  520. package/dist/server/validation/common-functions/index.js.map +0 -1
  521. package/dist/server/validation/common-validators.d.ts +0 -59
  522. package/dist/server/validation/common-validators.js +0 -162
  523. package/dist/server/validation/common-validators.js.map +0 -1
  524. package/dist/server/validation/permission.d.ts +0 -9
  525. package/dist/server/validation/permission.js +0 -46
  526. package/dist/server/validation/permission.js.map +0 -1
  527. package/dist/server/validation/policies/hasPermissions.d.ts +0 -5
  528. package/dist/server/validation/policies/hasPermissions.js +0 -29
  529. package/dist/server/validation/policies/hasPermissions.js.map +0 -1
  530. package/dist/server/validation/project-settings.d.ts +0 -9
  531. package/dist/server/validation/project-settings.js +0 -44
  532. package/dist/server/validation/project-settings.js.map +0 -1
  533. package/dist/server/validation/role.d.ts +0 -11
  534. package/dist/server/validation/role.js +0 -62
  535. package/dist/server/validation/role.js.map +0 -1
  536. package/dist/server/validation/transfer/index.d.ts +0 -1
  537. package/dist/server/validation/transfer/index.js +0 -9
  538. package/dist/server/validation/transfer/index.js.map +0 -1
  539. package/dist/server/validation/transfer/token.d.ts +0 -7
  540. package/dist/server/validation/transfer/token.js +0 -46
  541. package/dist/server/validation/transfer/token.js.map +0 -1
  542. package/dist/server/validation/user.d.ts +0 -117
  543. package/dist/server/validation/user.js +0 -69
  544. package/dist/server/validation/user.js.map +0 -1
@@ -0,0 +1,275 @@
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(W,$,n){"use strict";n.d($,{V:function(){return x}});var e=n(61489),f=n(20108);const x=(h={},M={})=>{const{id:E,...P}=h,{get:C}=(0,e.kY)();if(!E&&(M?.enabled===void 0||M?.enabled))throw new Error('"id" is a required argument');const{data:A,error:N,isError:a,isLoading:k,refetch:u}=(0,f.useQuery)(["roles",E,"permissions",P],async()=>{const{data:{data:S}}=await C(`/admin/roles/${E}/permissions`,{params:P});return S},M);return{permissions:A,error:N,isError:a,isLoading:k,refetch:u}}},86409:function(W,$,n){"use strict";n.d($,{F:function(){return M}});var e=n(32735),f=n(61489),x=n(67879),h=n(20108);const M=(E={},P={})=>{const{id:C="",...A}=E,{get:N}=(0,f.kY)(),{locale:a}=(0,x.Z)(),k=(0,f.Xe)(a,{sensitivity:"base"}),{data:u,error:S,isError:F,isLoading:g,refetch:R}=(0,h.useQuery)(["roles",C,A],async()=>{const{data:w}=await N(`/admin/roles/${C??""}`,{params:A});return w},P);return{roles:e.useMemo(()=>{let w=[];return C&&u?w=[u.data]:Array.isArray(u?.data)&&(w=u.data),[...w].sort((oe,ee)=>k.compare(oe.name,ee.name))},[u,C,k]),error:S,isError:F,isLoading:g,refetch:R}}},15570:function(W,$,n){"use strict";n.r($),n.d($,{CreatePage:function(){return Pe},default:function(){return Se}});var e=n(32735),f=n(95162),x=n(64092),h=n(84642),M=n(91779),E=n(56932),P=n(77981),C=n(8365),A=n(10710),N=n(97037),a=n(2846),k=n(15367),u=n(61489),S=n(70788),F=n(99797),g=n(92802),R=n(86834),G=n.n(R),w=n(67879),oe=n(15062),ee=n(53038),b=n(8471),pe=n(64499),Q=n(30305),H=n(1283),te=n(91720),Ce=n(24346),xe=Ce.Ry().shape({name:Ce.Z_().required(u.I0.required),description:Ce.Z_().required(u.I0.required)});const ie=b.ZP.div`
2
+ border: 1px solid ${({theme:z})=>z.colors.primary200};
3
+ background: ${({theme:z})=>z.colors.primary100};
4
+ padding: ${({theme:z})=>`${z.spaces[2]} ${z.spaces[4]}`};
5
+ color: ${({theme:z})=>z.colors.primary600};
6
+ border-radius: ${({theme:z})=>z.borderRadius};
7
+ font-size: ${12/16}rem;
8
+ font-weight: bold;
9
+ `,Pe=()=>{const z=(0,ee.$B)("/settings/roles/duplicate/:id"),Y=(0,u.lm)(),{lockApp:re,unlockApp:X}=(0,u.o1)(),{formatMessage:j}=(0,w.Z)(),[J,le]=(0,e.useState)(!1),{replace:ge}=(0,ee.k6)(),q=(0,e.useRef)(),{trackUsage:ue}=(0,u.rS)(),{post:Be,put:ke}=(0,u.kY)(),{params:ve}=z??{},{isLoading:Ze,data:Le}=(0,te.d)(ve?.id,{cacheTime:0}),{permissions:ye,isLoading:Me}=(0,pe.V)({id:ve?.id},{cacheTime:0,enabled:!!ve?.id}),Fe=Re=>{re(),le(!0),ve?.id?ue("willDuplicateRole"):ue("willCreateNewRole"),Promise.resolve(Be("/admin/roles",Re)).then(async({data:ne})=>{const{permissionsToSend:ce}=q.current.getPermissions();return ve?.id?ue("didDuplicateRole"):ue("didCreateNewRole"),ne.data.id&&!G()(ce)&&await ke(`/admin/roles/${ne.data.id}/permissions`,{permissions:ce}),ne}).then(ne=>{le(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ge(`/settings/roles/${ne.data.id}`)}).catch(ne=>{console.error(ne),le(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{X()})},Ue=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(f.o,null,e.createElement(u.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:Ue},onSubmit:Fe,validationSchema:xe,validateOnChange:!1},({handleSubmit:Re,values:ne,errors:ce,handleReset:de,handleChange:me})=>e.createElement(u.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(x.T,{primaryAction:e.createElement(h.k,{gap:2},e.createElement(M.z,{variant:"secondary",onClick:()=>{de(),q.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(M.z,{onClick:Re,loading:J,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(u.rU,{startIcon:e.createElement(S.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(E.D,null,e.createElement(h.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(P.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(h.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(h.k,{justifyContent:"space-between"},e.createElement(P.x,null,e.createElement(P.x,null,e.createElement(C.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(P.x,null,e.createElement(C.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ie,null,j({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(A.r,{gap:4},e.createElement(N.P,{col:6},e.createElement(a.o,{name:"name",error:ce.name&&j({id:ce.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:me,required:!0,value:ne.name})),e.createElement(N.P,{col:6},e.createElement(k.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:ce.description&&j({id:ce.description}),onChange:me},ne.description))))),!Ze&&!Me?e.createElement(P.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(H.Z,{isFormDisabled:!1,ref:q,permissions:ye,layout:Le})):e.createElement(P.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(u.dO,null))))))))};function Se(){const z=(0,oe.v9)(Q._);return e.createElement(u.O4,{permissions:z.settings.roles.create},e.createElement(Pe,null))}},1283:function(W,$,n){"use strict";n.d($,{Z:function(){return ts}});var e=n(32735),f=n(49854),x=n(89599),h=n(8623),M=n(61489),E=n(23973),P=n.n(E),C=n(86834),A=n.n(C),N=n(60216),a=n.n(N),k=n(67879),u=n(77981),S=n(98978),F=n.n(S),g=n(8471),R=n(84642),G=n(96669),w=n(76884),oe=n(30465),ee=n(33795),b=n.n(ee),pe=n(9086),Q=n.n(pe),H=n(41755),te=n(91779),Ce=n(19594);const be=g.ZP.div`
10
+ position: relative;
11
+
12
+ ${({hasConditions:t,disabled:s,theme:r})=>t&&`
13
+ &:before {
14
+ content: '';
15
+ position: absolute;
16
+ top: -3px;
17
+ left: -10px;
18
+ width: 6px;
19
+ height: 6px;
20
+ border-radius: ${20/16}rem;;
21
+ background: ${s?r.colors.neutral100:r.colors.primary600};
22
+ }
23
+ `}
24
+ `,xe=({onClick:t,className:s,hasConditions:r,variant:o})=>{const{formatMessage:i}=(0,k.Z)();return e.createElement(be,{hasConditions:r,className:s},e.createElement(te.z,{variant:o,startIcon:e.createElement(Ce.Z,null),onClick:t},i({id:"global.settings",defaultMessage:"Settings"})))};xe.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},xe.propTypes={onClick:a().func.isRequired,className:a().string,hasConditions:a().bool,variant:a().string};var ie=(0,g.ZP)(xe)``,Pe=n(21223),Se=n(98887),z=n(87674),Y=n(8365),re=n(74973),X=n(79129),j=n(2748),J=n(97889),le=n(81346),ge=n.n(le),q=n(23940),ue=n.n(q),Be=n(63057);const ke=t=>Object.values(t).map(s=>Object.entries(s).filter(([,r])=>r).map(([r])=>r)).flat(),ve=t=>t.reduce((s,[r,o])=>(s.push({label:ue()(r),children:o.map(i=>({label:i.displayName,value:i.id}))}),s),[]),Ze=(t,s)=>t.map(([,r])=>r).flat().reduce((r,o)=>({[o.id]:s.includes(o.id),...r}),{}),Le=({arrayOfOptionsGroupedByCategory:t,isFormDisabled:s,isGrey:r,label:o,name:i,onChange:l,value:c})=>{const{formatMessage:d}=(0,k.Z)(),p=m=>{l(i,Ze(t,m))};return e.createElement(R.k,{as:"li",background:r?"neutral100":"neutral0",paddingBottom:3,paddingTop:3},e.createElement(R.k,{paddingLeft:6,style:{width:180}},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},d({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(Y.Z,{variant:"sigma",title:o,textColor:"primary600",ellipsis:!0},d({id:`Settings.roles.form.permissions.${o.toLowerCase()}`,defaultMessage:o})),e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},"\xA0",d({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(u.x,{style:{maxWidth:430,width:"100%"}},e.createElement(Be.Q,{id:i,customizeContent:m=>`${m.length} currently selected`,onChange:p,value:ke(c),options:ve(t),disabled:s})))};Le.propTypes={arrayOfOptionsGroupedByCategory:a().array.isRequired,isFormDisabled:a().bool.isRequired,isGrey:a().bool.isRequired,label:a().string.isRequired,name:a().string.isRequired,value:a().object.isRequired,onChange:a().func.isRequired};var ye=Le;const Me=(t,s)=>t.reduce((r,o)=>(r[o.id]=b()(s,o.id,!1),r),{}),Fe=(t,s)=>t.reduce((r,o)=>{const[i,l]=o,c=Me(l,s);return r[i]=c,r},{});var Re=(t,s,r)=>t.reduce((o,i)=>{const l=b()(s,[...i.pathToConditionsObject,"conditions"],{}),c=Fe(r,l);return o[i.pathToConditionsObject.join("..")]=c,o},{});const ne=({actions:t,headerBreadCrumbs:s,isFormDisabled:r,onClosed:o,onToggle:i})=>{const{formatMessage:l}=(0,k.Z)(),{availableConditions:c,modifiedData:d,onChangeConditions:p}=(0,H.$_)(),m=(0,e.useMemo)(()=>Object.entries(ge()(c,"category")),[c]),y=t.filter(({isDisplayed:v,hasSomeActionsSelected:B,hasAllActionsSelected:L})=>v&&(B||L)),T=(0,e.useMemo)(()=>Re(y,d,m),[y,d,m]),[D,V]=(0,e.useState)(T),I=(v,B)=>{V((0,J.ZP)(L=>{L[v]||(L[v]={}),L[v].default||(L[v].default={}),L[v].default=B}))},O=()=>{const v=Object.entries(D).reduce((B,L)=>{const[Z,se]=L,U=Object.values(se).reduce((_,K)=>({..._,...K}),{});return B[Z]=U,B},{});p(v),i()};return e.createElement(Pe.P,{labelledBy:"condition-modal-breadcrumbs",onClose:o},e.createElement(Se.x,null,e.createElement(X.O,{id:"condition-modal-breadcrumbs",label:s.join(", ")},s.map((v,B,L)=>e.createElement(j.$,{isCurrent:B===L.length-1,key:v},ue()(l({id:v,defaultMessage:v})))))),e.createElement(z.f,null,y.length===0&&e.createElement(Y.Z,null,l({id:"Settings.permissions.conditions.no-actions",defaultMessage:"You first need to select actions (create, read, update, ...) before defining conditions on them."})),e.createElement("ul",null,y.map(({actionId:v,label:B,pathToConditionsObject:L},Z)=>{const se=L.join("..");return e.createElement(ye,{key:v,arrayOfOptionsGroupedByCategory:m,label:B,isFormDisabled:r,isGrey:Z%2===0,name:se,onChange:I,value:b()(D,se,{})})}))),e.createElement(re.m,{startActions:e.createElement(te.z,{variant:"tertiary",onClick:i},l({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(te.z,{onClick:O},l({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};ne.propTypes={actions:a().arrayOf(a().shape({actionId:a().string.isRequired,checkboxName:a().string,hasSomeActionsSelected:a().bool.isRequired,hasAllActionsSelected:a().bool,isDisplayed:a().bool.isRequired,label:a().string})).isRequired,headerBreadCrumbs:a().arrayOf(a().string).isRequired,isFormDisabled:a().bool.isRequired,onClosed:a().func.isRequired,onToggle:a().func.isRequired};var ce=ne;const de=`${120/16}rem`,me=`${200/16}rem`,Ae=`${53/16}rem`;var Ne=g.ZP.div`
25
+ width: ${de};
26
+ `,rt=(0,g.ZP)(R.k)`
27
+ padding-right: ${({theme:t})=>t.spaces[2]};
28
+ overflow: hidden;
29
+ flex: 1;
30
+ ${({isCollapsable:t})=>t&&"cursor: pointer;"}
31
+ `;const Ge=({children:t,isCollapsable:s,isActive:r,isFormDisabled:o,label:i,onChange:l,onClick:c,checkboxName:d,someChecked:p,value:m})=>{const{formatMessage:y}=(0,k.Z)();return e.createElement(R.k,{alignItems:"center",paddingLeft:6,style:{width:me,flexShrink:0}},e.createElement(u.x,{paddingRight:2},e.createElement(G.C,{name:d,"aria-label":y({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:o,onValueChange:T=>l({target:{name:d,value:T}}),indeterminate:p,value:m})),e.createElement(rt,{title:i,alignItems:"center",isCollapsable:s,...s&&{onClick:c,"aria-expanded":r,onKeyDown:({key:T})=>(T==="Enter"||T===" ")&&c(),tabIndex:0,role:"button"}},e.createElement(Y.Z,{fontWeight:r?"bold":"",textColor:r?"primary600":"neutral800",ellipsis:!0},ue()(i)),t))};Ge.defaultProps={children:null,checkboxName:"",onChange(){},value:!1,someChecked:!1,isCollapsable:!1},Ge.propTypes={checkboxName:a().string,children:a().node,label:a().string.isRequired,isCollapsable:a().bool,isFormDisabled:a().bool.isRequired,onChange:a().func,onClick:a().func.isRequired,someChecked:a().bool,value:a().bool,isActive:a().bool.isRequired};var at=(0,e.memo)(Ge),Nt=n(72091),Wt=n.n(Nt),Vt=n(85973),Te=n.n(Vt);const it=t=>Te()(t)?Wt()(Object.values(t).map(s=>Te()(s)?it(s):s)):[];var je=it,ze=t=>t?Object.keys(t).reduce((s,r)=>(r!=="conditions"&&(s[r]=t[r]),s),{}):null,Oe=t=>{const s=ze(t),r=je(s);if(!r.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const o=r.every(l=>l),i=r.some(l=>l)&&!o;return{hasAllActionsSelected:o,hasSomeActionsSelected:i}},Kt=n(91917),We=(0,g.ZP)(Kt.Z)`
32
+ display: none;
33
+ width: ${10/16}rem;
34
+ transform: rotate(${({$isActive:t})=>t?"180":"0"}deg);
35
+ margin-left: ${({theme:t})=>t.spaces[2]};
36
+ `,Ve=t=>`
37
+ ${Y.Z} {
38
+ color: ${t.colors.primary600};
39
+ font-weight: ${t.fontWeights.bold}
40
+ }
41
+ ${We} {
42
+ display: block;
43
+ path {
44
+ fill: ${t.colors.primary600}
45
+ };
46
+ }
47
+ `,Ut=(t,s,r)=>t.map(({actionId:o,isDisplayed:i,applyToProperties:l,label:c})=>{if(!i)return{actionId:o,hasSomeActionsSelected:!1,isDisplayed:i};const d=[...r.split(".."),o],p=A()(l)?[...d,"properties","enabled"]:d,m=p.join(".."),y=b()(s,[...d,"conditions"],null),T=je(y).some(O=>O);if(A()(l)){const O=b()(s,p,!1);return{actionId:o,checkboxName:m,hasAllActionsSelected:O,hasConditions:T,hasSomeActionsSelected:O,isDisplayed:i,isParentCheckbox:!1,label:c,pathToConditionsObject:d}}const D=b()(s,p,null),{hasAllActionsSelected:V,hasSomeActionsSelected:I}=Oe(D);return{actionId:o,checkboxName:m,hasAllActionsSelected:V,hasConditions:T,hasSomeActionsSelected:I,isDisplayed:i,isParentCheckbox:!0,label:c,pathToConditionsObject:d}});const Ye=(t,s)=>`
48
+ ${lt} {
49
+ background-color: ${t.colors.primary100};
50
+ color: ${t.colors.primary600};
51
+ border-radius: ${s?"2px 2px 0 0":"2px"};
52
+ }
53
+ ${dt} {
54
+ display: flex;
55
+ }
56
+ ${ie} {
57
+ display: block;
58
+ }
59
+ &:hover {
60
+ ${Ve(t)}
61
+ }
62
+
63
+ &:focus-within {
64
+ ${({theme:r,isActive:o})=>Ye(r,o)}
65
+ }
66
+
67
+ `,lt=g.ZP.div`
68
+ flex: 1;
69
+ display: flex;
70
+ align-items: center;
71
+ height: ${Ae};
72
+ background-color: ${({isGrey:t,theme:s})=>t?s.colors.neutral100:s.colors.neutral0};
73
+ border: 1px solid transparent;
74
+ `,Ht=g.ZP.div`
75
+ display: inline-flex;
76
+ min-width: 100%;
77
+
78
+ ${ie} {
79
+ display: none;
80
+ }
81
+ ${({isActive:t,theme:s})=>t&&Ye(s,t)}
82
+ &:hover {
83
+ ${({theme:t,isActive:s})=>Ye(t,s)}
84
+ }
85
+ `,ct=(0,g.ZP)(R.k)`
86
+ width: ${de};
87
+ position: relative;
88
+ `,dt=(0,g.ZP)(u.x)`
89
+ display: none;
90
+ svg {
91
+ width: 11px;
92
+ }
93
+ * {
94
+ fill: ${({theme:t})=>t.colors.primary600};
95
+ }
96
+ `,ut=g.ZP.span`
97
+ position: absolute;
98
+ top: -6px;
99
+ left: 37px;
100
+ width: 6px;
101
+ height: 6px;
102
+ border-radius: 20px;
103
+ background: ${({theme:t})=>t.colors.primary600};
104
+ `,Gt=(0,g.ZP)(u.x)`
105
+ position: absolute;
106
+ right: 9px;
107
+ transform: translateY(10px);
108
+ `,mt=({availableActions:t,isActive:s,isGrey:r,isFormDisabled:o,label:i,onClickToggle:l,pathToData:c})=>{const[d,p]=(0,e.useState)(!1),{formatMessage:m}=(0,k.Z)(),{modifiedData:y,onChangeParentCheckbox:T,onChangeSimpleCheckbox:D}=(0,H.$_)(),V=()=>{p(U=>!U)},I=()=>{p(!1)},O=b()(y,c.split(".."),{}),v=(0,e.useMemo)(()=>Object.keys(O).reduce((U,_)=>(U[_]=Q()(O[_],"conditions"),U),{}),[O]),{hasAllActionsSelected:B,hasSomeActionsSelected:L}=Oe(v),Z=(0,e.useMemo)(()=>Ut(t,y,c),[t,y,c]),se=Z.some(({hasConditions:U})=>U);return e.createElement(Ht,{isActive:s},e.createElement(lt,{isGrey:r},e.createElement(at,{isCollapsable:!0,isFormDisabled:o,label:i,checkboxName:c,onChange:T,onClick:l,someChecked:L,value:B,isActive:s},e.createElement(dt,{paddingLeft:2},s?e.createElement(w.Z,null):e.createElement(oe.Z,null))),e.createElement(R.k,{style:{flex:1}},Z.map(({actionId:U,hasConditions:_,hasAllActionsSelected:K,hasSomeActionsSelected:he,isDisplayed:Ie,isParentCheckbox:ae,checkboxName:Ee,label:Ke})=>Ie?ae?e.createElement(ct,{key:U,justifyContent:"center",alignItems:"center"},_&&e.createElement(ut,null),e.createElement(G.C,{disabled:o,name:Ee,"aria-label":m({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${Ke} ${i}`}),onValueChange:$e=>{T({target:{name:Ee,value:$e}})},indeterminate:he,value:K})):e.createElement(ct,{key:U,justifyContent:"center",alignItems:"center"},_&&e.createElement(ut,null),e.createElement(G.C,{disabled:o,indeterminate:_,name:Ee,onValueChange:$e=>{D({target:{name:Ee,value:$e}})},value:K})):e.createElement(Ne,{key:U}))),d&&e.createElement(ce,{headerBreadCrumbs:[i,"Settings.permissions.conditions.conditions"],actions:Z,isFormDisabled:o,onClosed:I,onToggle:V})),e.createElement(Gt,null,e.createElement(ie,{onClick:V,hasConditions:se})))};mt.propTypes={availableActions:a().array.isRequired,isActive:a().bool.isRequired,isGrey:a().bool.isRequired,isFormDisabled:a().bool.isRequired,label:a().string.isRequired,onClickToggle:a().func.isRequired,pathToData:a().string.isRequired};var zt=mt;const Yt=g.ZP.span`
109
+ color: ${({theme:t})=>t.colors.danger700};
110
+ padding-left: ${({theme:t})=>t.spaces[1]}px;
111
+ `;var pt=()=>e.createElement(Yt,null,"*"),Xt=(t,s)=>t.map(r=>{const o=Array.isArray(r.subjects)&&r.subjects.indexOf(s)!==-1;return{...r,isDisplayed:o}});const wt=(0,g.ZP)(u.x)`
112
+ transform: translate(-4px, -12px);
113
+
114
+ &:before {
115
+ content: '';
116
+ width: ${4/16}rem;
117
+ height: ${12/16}rem;
118
+ background: ${({theme:t})=>t.colors.primary200};
119
+ display: block;
120
+ }
121
+ `,Qt=g.ZP.svg`
122
+ position: relative;
123
+ flex-shrink: 0;
124
+ transform: translate(-0.5px, -1px);
125
+
126
+ * {
127
+ fill: ${({theme:t,color:s})=>t.colors[s]};
128
+ }
129
+ `,Xe=t=>e.createElement(wt,null,e.createElement(Qt,{width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.02477 14.7513C8.65865 17.0594 11.6046 18.6059 17.5596 18.8856C18.6836 18.9384 19.5976 19.8435 19.5976 20.9688V20.9688C19.5976 22.0941 18.6841 23.0125 17.5599 22.9643C10.9409 22.6805 6.454 20.9387 3.75496 17.1258C0.937988 13.1464 0.486328 7.39309 0.486328 0.593262H4.50974C4.50974 7.54693 5.06394 11.9813 7.02477 14.7513Z",fill:"#D9D8FF"})));Xe.defaultProps={fill:"primary200"},Xe.propTypes={fill:a().string};var Jt=(0,e.memo)(Xe);const gt=(0,g.ZP)(R.k)`
130
+ width: ${de};
131
+ position: relative;
132
+ `,qt=(0,g.ZP)(R.k)`
133
+ height: ${Ae};
134
+ `,_t=(0,g.ZP)(u.x)`
135
+ padding-left: ${31/16}rem;
136
+ `,en=(0,g.ZP)(u.x)`
137
+ border-left: ${({isVisible:t,theme:s})=>t?`4px solid ${s.colors.primary200}`:"4px solid transparent"};
138
+ `,tn=(0,g.ZP)(R.k)`
139
+ padding-left: ${({theme:t})=>t.spaces[4]};
140
+ width: ${({level:t})=>145-t*36}px;
141
+
142
+ ${({isCollapsable:t,theme:s})=>t&&`
143
+ ${We} {
144
+ display: block;
145
+ color: ${s.colors.neutral100};
146
+ }
147
+ &:hover {
148
+ ${Ve(s)}
149
+ }
150
+ `}
151
+ ${({isActive:t,theme:s})=>t&&Ve(s)};
152
+ `,nn=g.ZP.div`
153
+ padding-top: ${({theme:t})=>t.spaces[2]};
154
+ margin-top: ${({theme:t})=>t.spaces[2]};
155
+ width: ${4/16}rem;
156
+ background-color: ${({theme:t})=>t.colors.primary200};
157
+ border-top-left-radius: 2px;
158
+ border-top-right-radius: 2px;
159
+ `,we=({childrenForm:t,isFormDisabled:s,recursiveLevel:r,pathToDataFromActionRow:o,propertyActions:i,parentName:l,propertyName:c})=>{const{formatMessage:d}=(0,k.Z)(),{modifiedData:p,onChangeParentCheckbox:m,onChangeSimpleCheckbox:y}=(0,H.$_)(),[T,D]=(0,e.useState)(null),V=O=>{D(v=>v===O?null:O)},I=(0,e.useMemo)(()=>T?t.find(({value:O})=>O===T):null,[T,t]);return e.createElement(_t,null,e.createElement(nn,null),t.map(({label:O,value:v,required:B,children:L},Z)=>{const se=Z+1<t.length,U=Array.isArray(L),_=T===v;return e.createElement(en,{key:v,isVisible:se},e.createElement(qt,null,e.createElement(Jt,{color:"primary200"}),e.createElement(R.k,{style:{flex:1}},e.createElement(tn,{level:r,isActive:_,isCollapsable:U},e.createElement(rt,{alignItems:"center",isCollapsable:U,...U&&{onClick:()=>V(v),"aria-expanded":_,onKeyDown:({key:K})=>(K==="Enter"||K===" ")&&V(v),tabIndex:0,role:"button"},title:O},e.createElement(Y.Z,{ellipsis:!0},ue()(O)),B&&e.createElement(pt,null),e.createElement(We,{$isActive:_}))),e.createElement(R.k,{style:{flex:1}},i.map(({actionId:K,label:he,isActionRelatedToCurrentProperty:Ie})=>{if(!Ie)return e.createElement(Ne,{key:K});const ae=[...o.split(".."),K,"properties",c,...l.split(".."),v],Ee=b()(p,ae,!1);if(!L)return e.createElement(gt,{key:he,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{disabled:s,name:ae.join(".."),"aria-label":d({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${O} ${he}`}),onValueChange:De=>{y({target:{name:ae.join(".."),value:De}})},value:Ee}));const{hasAllActionsSelected:Ke,hasSomeActionsSelected:$e}=Oe(Ee);return e.createElement(gt,{key:he,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{key:he,disabled:s,name:ae.join(".."),"aria-label":d({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${O} ${he}`}),onValueChange:De=>{m({target:{name:ae.join(".."),value:De}})},value:Ke,indeterminate:$e}))})))),I&&_&&e.createElement(u.x,{paddingBottom:2},e.createElement(we,{isFormDisabled:s,parentName:`${l}..${v}`,pathToDataFromActionRow:o,propertyActions:i,propertyName:c,recursiveLevel:r+1,childrenForm:I.children})))}))};we.propTypes={childrenForm:a().array.isRequired,isFormDisabled:a().bool.isRequired,parentName:a().string.isRequired,pathToDataFromActionRow:a().string.isRequired,propertyActions:a().array.isRequired,propertyName:a().string.isRequired,recursiveLevel:a().number.isRequired};var sn=(0,e.memo)(we);const on=t=>t.reduce((r,o)=>(o.isActionRelatedToCurrentProperty&&r.push(o.actionId),r),[]);var rn=(t,s,r,o,i)=>{const c=on(t).reduce((d,p)=>{const m=[...r.split(".."),p,"properties",o,i],y=b()(s,m,!1);return d[p]=y,d},{});return Oe(c)};const ft=(0,g.ZP)(R.k)`
160
+ width: ${de};
161
+ position: relative;
162
+ `,an=(0,g.ZP)(R.k)`
163
+ height: ${Ae};
164
+ flex: 1;
165
+
166
+ ${({isCollapsable:t,theme:s})=>t&&`
167
+ ${We} {
168
+ display: block;
169
+ color: ${s.colors.neutral100};
170
+ }
171
+ &:hover {
172
+ ${Ve(s)}
173
+ }
174
+ `}
175
+ ${({isActive:t,theme:s})=>t&&Ve(s)};
176
+ `,Qe=({childrenForm:t,label:s,isFormDisabled:r,name:o,required:i,pathToData:l,propertyActions:c,propertyName:d,isOdd:p})=>{const{formatMessage:m}=(0,k.Z)(),[y,T]=(0,e.useState)(null),{modifiedData:D,onChangeCollectionTypeLeftActionRowCheckbox:V,onChangeParentCheckbox:I,onChangeSimpleCheckbox:O}=(0,H.$_)(),v=y===o,B=(0,e.useMemo)(()=>Array.isArray(t)?t:[],[t]),L=B.length>0,Z=(0,e.useCallback)(()=>{L&&T(K=>K===o?null:o)},[L,o]),se=({target:{value:K}})=>{V(l,d,o,K)},{hasAllActionsSelected:U,hasSomeActionsSelected:_}=(0,e.useMemo)(()=>rn(c,D,l,d,o),[c,D,l,d,o]);return e.createElement(e.Fragment,null,e.createElement(an,{alignItems:"center",isCollapsable:L,isActive:v,background:p?"neutral100":"neutral0"},e.createElement(R.k,null,e.createElement(at,{onChange:se,onClick:Z,isCollapsable:L,isFormDisabled:r,label:s,someChecked:_,value:U,isActive:v},i&&e.createElement(pt,null),e.createElement(We,{$isActive:v})),e.createElement(R.k,null,c.map(({label:K,isActionRelatedToCurrentProperty:he,actionId:Ie})=>{if(!he)return e.createElement(Ne,{key:K});const ae=[...l.split(".."),Ie,"properties",d,o];if(!L){const De=b()(D,ae,!1);return e.createElement(ft,{key:Ie,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{disabled:r,name:ae.join(".."),"aria-label":m({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${o} ${K}`}),onValueChange:ns=>{O({target:{name:ae.join(".."),value:ns}})},value:De}))}const Ee=b()(D,ae,{}),{hasAllActionsSelected:Ke,hasSomeActionsSelected:$e}=Oe(Ee);return e.createElement(ft,{key:K,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{disabled:r,name:ae.join(".."),onValueChange:De=>{I({target:{name:ae.join(".."),value:De}})},"aria-label":m({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${o} ${K}`}),value:Ke,indeterminate:$e}))})))),v&&e.createElement(sn,{childrenForm:B,isFormDisabled:r,parentName:o,pathToDataFromActionRow:l,propertyName:d,propertyActions:c,recursiveLevel:0}))};Qe.defaultProps={childrenForm:[],required:!1},Qe.propTypes={childrenForm:a().array,label:a().string.isRequired,isFormDisabled:a().bool.isRequired,name:a().string.isRequired,pathToData:a().string.isRequired,propertyActions:a().array.isRequired,propertyName:a().string.isRequired,required:a().bool,isOdd:a().bool.isRequired};var ln=(0,e.memo)(Qe);const ht=(0,g.ZP)(R.k)`
177
+ width: ${de};
178
+ flex-shrink: 0;
179
+ `,cn=(0,g.ZP)(R.k)`
180
+ width: ${me};
181
+ height: ${Ae};
182
+ flex-shrink: 0;
183
+ `,yt=({headers:t,label:s})=>{const{formatMessage:r}=(0,k.Z)(),o=r({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:s});return e.createElement(R.k,null,e.createElement(cn,{alignItems:"center",paddingLeft:6},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral500"},o)),t.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(ht,{justifyContent:"center",key:i.label},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral500"},r({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(ht,{key:i.label})))};yt.propTypes={headers:a().arrayOf(a().shape({label:a().string.isRequired,isActionRelatedToCurrentProperty:a().bool.isRequired})).isRequired,label:a().string.isRequired};var dn=yt,un=(t,s)=>t.map(r=>{const o=Array.isArray(r.applyToProperties)&&r.applyToProperties.indexOf(s)!==-1&&r.isDisplayed;return{label:r.label,actionId:r.actionId,isActionRelatedToCurrentProperty:o}});const mn=g.ZP.div`
184
+ display: inline-flex;
185
+ flex-direction: column;
186
+ min-width: 0;
187
+ `,Ct=({availableActions:t,childrenForm:s,isFormDisabled:r,label:o,pathToData:i,propertyName:l})=>{const c=(0,e.useMemo)(()=>un(t,l),[t,l]);return e.createElement(mn,null,e.createElement(dn,{label:o,headers:c}),e.createElement(u.x,null,s.map(({children:d,label:p,value:m,required:y},T)=>e.createElement(ln,{childrenForm:d,key:m,label:p,isFormDisabled:r,name:m,required:y,propertyActions:c,pathToData:i,propertyName:l,isOdd:T%2===0}))))};Ct.propTypes={childrenForm:a().array.isRequired,availableActions:a().array.isRequired,isFormDisabled:a().bool.isRequired,label:a().string.isRequired,pathToData:a().string.isRequired,propertyName:a().string.isRequired};var pn=Ct;const gn=g.ZP.div`
188
+ flex-direction: column;
189
+ display: inline-flex;
190
+ min-width: 100%;
191
+ ${({theme:t,isActive:s})=>s&&`border: 1px solid ${t.colors.primary600};`}
192
+ `,vt=({allActions:t,contentTypeName:s,label:r,index:o,isActive:i,isFormDisabled:l,onClickToggleCollapse:c,pathToData:d,properties:p})=>{const m=(0,e.useCallback)(()=>{c(s)},[s,c]),y=(0,e.useMemo)(()=>Xt(t,s),[t,s]);return e.createElement(gn,{isActive:i},e.createElement(zt,{availableActions:y,isActive:i,isGrey:o%2===0,isFormDisabled:l,label:r,onClickToggle:m,pathToData:d}),i&&p.map(({label:T,value:D,children:V})=>e.createElement(pn,{availableActions:y,childrenForm:V,isFormDisabled:l,label:T,pathToData:d,propertyName:D,key:D})))};vt.propTypes={allActions:a().array.isRequired,contentTypeName:a().string.isRequired,index:a().number.isRequired,isActive:a().bool.isRequired,isFormDisabled:a().bool.isRequired,label:a().string.isRequired,onClickToggleCollapse:a().func.isRequired,pathToData:a().string.isRequired,properties:a().array.isRequired};var fn=vt;const Je=({actions:t,isFormDisabled:s,pathToData:r,subjects:o})=>{const[i,l]=(0,e.useState)(null),c=d=>{l(i===d?null:d)};return o.map(({uid:d,label:p,properties:m},y)=>e.createElement(fn,{allActions:t,key:d,contentTypeName:d,label:p,isActive:i===d,isFormDisabled:s,index:y,onClickToggleCollapse:c,pathToData:`${r}..${d}`,properties:m}))};Je.defaultProps={actions:[],subjects:[]},Je.propTypes={actions:a().array.isRequired,isFormDisabled:a().bool.isRequired,pathToData:a().string.isRequired,subjects:a().arrayOf(a().shape({uid:a().string.isRequired,label:a().string.isRequired,properties:a().array.isRequired}))};var hn=(0,e.memo)(Je),yn=t=>t.filter(({subjects:s})=>s&&s.length);const Cn=t=>t.map(({actionId:s})=>s),vn=(t,s)=>t.reduce((r,o)=>(Object.keys(s).forEach(i=>{const l=b()(s,[i,o],{}),c={[i]:ze(l)};r[o]?r[o]={...r[o],...c}:r[o]=c}),r),{});var En=(t,s)=>{const r=Cn(t),o=vn(r,s);return Object.keys(o).reduce((l,c)=>(l[c]=Oe(o[c]),l),{})};const bn=(0,g.ZP)(R.k)`
193
+ width: ${de};
194
+ flex-shrink: 0;
195
+ `,qe=({actions:t,isFormDisabled:s,kind:r})=>{const{formatMessage:o}=(0,k.Z)(),{modifiedData:i,onChangeCollectionTypeGlobalActionCheckbox:l}=(0,H.$_)(),c=(0,e.useMemo)(()=>yn(t),[t]),d=(0,e.useMemo)(()=>En(c,i[r]),[i,c,r]);return e.createElement(u.x,{paddingBottom:4,paddingTop:6,style:{paddingLeft:me}},e.createElement(R.k,{gap:0},c.map(({label:p,actionId:m})=>e.createElement(bn,{direction:"column",alignItems:"center",justifyContent:"center",key:m,gap:3},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral500"},o({id:`Settings.roles.form.permissions.${p.toLowerCase()}`,defaultMessage:p})),e.createElement(G.C,{disabled:s,onValueChange:y=>{l(r,m,y)},name:m,"aria-label":o({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:o({id:`Settings.roles.form.permissions.${p.toLowerCase()}`,defaultMessage:p})}),value:b()(d,[m,"hasAllActionsSelected"],!1),indeterminate:b()(d,[m,"hasSomeActionsSelected"],!1)})))))};qe.defaultProps={actions:[]},qe.propTypes={actions:a().arrayOf(a().shape({label:a().string.isRequired,actionId:a().string.isRequired,subjects:a().array.isRequired})),isFormDisabled:a().bool.isRequired,kind:a().string.isRequired};var xn=(0,e.memo)(qe);const Pn=(0,g.ZP)(u.x)`
196
+ overflow-x: auto;
197
+ `,Et=({isFormDisabled:t,kind:s,layout:{actions:r,subjects:o}})=>{const i=F()([...o],"label");return e.createElement(Pn,{background:"neutral0"},e.createElement(xn,{actions:r,kind:s,isFormDisabled:t}),e.createElement(hn,{actions:r,isFormDisabled:t,pathToData:s,subjects:i}))};Et.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().shape({actions:a().array,subjects:a().arrayOf(a().shape({uid:a().string.isRequired,label:a().string.isRequired,properties:a().array.isRequired}))}).isRequired};var bt=(0,e.memo)(Et),Rn=n(41955);const xt=({children:t,value:s})=>e.createElement(Rn.$l.Provider,{value:s},t);xt.propTypes={children:a().node.isRequired,value:a().exact({availableConditions:a().array.isRequired,modifiedData:a().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:a().func.isRequired,onChangeConditions:a().func.isRequired,onChangeSimpleCheckbox:a().func.isRequired,onChangeParentCheckbox:a().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:a().func.isRequired}).isRequired};var An=xt,Tn=n(9435),Sn=n(9379),Mn=n(79624),Pt=n(31014),On=n(10710),$n=n(97037),Dn=(t,s,r)=>t.map(o=>{const i=[...r,o.action,"properties","enabled"],l=b()(s,i,!1),c=b()(s,[...r,o.action,"conditions"],{}),d=je(c).some(p=>p);return{...o,isDisplayed:l,checkboxName:i.join(".."),hasSomeActionsSelected:l,value:l,hasConditions:d,label:o.displayName,actionId:o.action,pathToConditionsObject:[...r,o.action]}}),Ln=t=>{const s=Object.entries(t).reduce((o,i)=>{const[l,{conditions:c}]=i;return o[l]=c,o},{});return je(s).some(o=>o)};const jn=g.ZP.div`
198
+ flex: 1;
199
+ align-self: center;
200
+ border-top: 1px solid ${({theme:t})=>t.colors.neutral150};
201
+ `,In=g.ZP.div`
202
+ position: relative;
203
+ word-break: keep-all;
204
+ ${({hasConditions:t,disabled:s,theme:r})=>t&&`
205
+ &:before {
206
+ content: '';
207
+ position: absolute;
208
+ top: ${-4/16}rem;
209
+ left: ${-8/16}rem;
210
+ width: ${6/16}rem;
211
+ height: ${6/16}rem;
212
+ border-radius: ${20/16}rem;
213
+ background: ${s?r.colors.neutral100:r.colors.primary600};
214
+ }
215
+ `}
216
+ `,Rt=({categoryName:t,isFormDisabled:s,subCategoryName:r,actions:o,pathToData:i})=>{const[l,c]=(0,e.useState)(!1),{modifiedData:d,onChangeParentCheckbox:p,onChangeSimpleCheckbox:m}=(0,H.$_)(),{formatMessage:y}=(0,k.Z)(),T=b()(d,i,{}),D=(0,e.useMemo)(()=>Object.keys(T).reduce((Z,se)=>(Z[se]=ze(T[se]),Z),{}),[T]),{hasAllActionsSelected:V,hasSomeActionsSelected:I}=Oe(D),O=()=>{c(Z=>!Z)},v=()=>{c(!1)},B=Dn(o,d,i),L=Ln(b()(d,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(u.x,null,e.createElement(R.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(u.x,{paddingRight:4},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(u.x,{paddingLeft:4},e.createElement(Pt.X,{name:i.join(".."),disabled:s,onValueChange:Z=>{p({target:{name:i.join(".."),value:Z}})},indeterminate:I,value:V},y({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(R.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},B.map(({checkboxName:Z,value:se,action:U,displayName:_,hasConditions:K})=>e.createElement($n.P,{col:3,key:U},e.createElement(In,{disabled:s,hasConditions:K},e.createElement(Pt.X,{name:Z,disabled:s,onValueChange:he=>{m({target:{name:Z,value:he}})},value:se},_))))),e.createElement(ie,{hasConditions:L,onClick:O}))),l&&e.createElement(ce,{headerBreadCrumbs:[t,r],actions:B,isFormDisabled:s,onClosed:v,onToggle:O}))};Rt.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var Bn=Rt;const _e=({childrenForm:t,kind:s,name:r,isOpen:o,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:d})=>{const{formatMessage:p}=(0,k.Z)(),m=()=>{c(r)},y=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:o,onToggle:m,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:ue()(y),description:`${p({id:"Settings.permissions.category"},{category:y})} ${s==="plugins"?"plugin":s}`}),e.createElement(Mn.v,null,e.createElement(u.x,{padding:6},t.map(({actions:T,subCategoryName:D,subCategoryId:V})=>e.createElement(Bn,{key:D,actions:T,categoryName:y,isFormDisabled:i,subCategoryName:D,pathToData:[...d,V]})))))};_e.defaultProps={},_e.propTypes={childrenForm:a().array.isRequired,isOpen:a().bool.isRequired,isFormDisabled:a().bool.isRequired,isWhite:a().bool.isRequired,kind:a().string.isRequired,name:a().string.isRequired,onOpenCategory:a().func.isRequired,pathToData:a().array.isRequired};var kn=_e;const At=({isFormDisabled:t,kind:s,layout:r})=>{const[o,i]=(0,e.useState)(null),l=c=>{i(c===o?null:c)};return e.createElement(u.x,{padding:6,background:"neutral0"},r.map(({category:c,categoryId:d,childrenForm:p},m)=>e.createElement(kn,{key:c,childrenForm:p,kind:s,isFormDisabled:t,isOpen:o===c,isWhite:m%2===1,name:c,onOpenCategory:l,pathToData:[s,d]})))};At.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().arrayOf(a().shape({category:a().string.isRequired,categoryId:a().string.isRequired,childrenForm:a().arrayOf(a().shape({actions:a().array.isRequired})).isRequired}).isRequired).isRequired};var Tt=At,Zn=n(86349),Fn=n.n(Zn),Nn=n(3040),fe=n.n(Nn),St=(t,s,r)=>t.find(o=>o.action===s&&o.subject===r);const Mt=(t,s=[])=>t.reduce((r,o)=>(r[o.id]=s.indexOf(o.id)!==-1,r),{}),Ot=({children:t},s,r="")=>t.reduce((o,i)=>{if(i.children)return{...o,[i.value]:Ot(i,s,`${r}${i.value}.`)};const l=s.indexOf(`${r}${i.value}`)!==-1;return o[i.value]=l,o},{}),Wn=(t,s,r)=>t.reduce((o,i)=>{const l=s.properties.find(({value:c})=>c===i);if(l){const c=b()(r,["properties",l.value],[]),d=Ot(l,c);o.properties[i]=d}return o},{properties:{}}),Vn=(t,s)=>s.reduce((r,o)=>{const i=t.find(({uid:l})=>l===o)||null;return i&&(r[o]=i),r},{});var $t=({subjects:t},s,r,o=[])=>s.reduce((i,l)=>{const c=l.subjects,d=Vn(t,c);if(A()(d))return i;const p=Object.keys(d).reduce((m,y)=>{const{actionId:T,applyToProperties:D}=l,O=d[y].properties.map(({value:Z})=>Z).every(Z=>(D||[]).indexOf(Z)===-1),v=St(o,T,y),B=Mt(r,b()(v,"conditions",[]));if(A()(D)||O)return fe()(m,[y,T],{properties:{enabled:v!==void 0},conditions:B}),m;const L=Wn(D,d[y],v);return fe()(m,[y,T],{...L,conditions:B}),m},{});return Fn()(i,p)},{});const Kn=(t,s,r)=>t.reduce((o,i)=>{const l=St(r,i.action,null);return o[i.action]={properties:{enabled:l!==void 0},conditions:Mt(s,l?.conditions??[])},o},{}),Un=(t,s,r)=>t.reduce((o,i)=>(o[i.subCategoryId]=Kn(i.actions,s,r),o),{});var Dt=(t,s,r=[])=>t.reduce((o,{categoryId:i,childrenForm:l})=>{const c=Un(l,s,r);return o[i]=c,o},{});const Lt=t=>t.split(" ").join("-");var jt=(t,s)=>Object.entries(ge()(t,s)).map(([r,o])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(ge()(o,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Hn=(t,s)=>{const{conditions:r,sections:{collectionTypes:o,singleTypes:i,plugins:l,settings:c}}=t,d={collectionTypes:o,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(c,"category")},p={collectionTypes:$t(o,o.actions||[],r,s),singleTypes:$t(i,i.actions||[],r,s),plugins:Dt(d.plugins,r,s),settings:Dt(d.settings,r,s)};return{initialData:p,modifiedData:p,layouts:d}},Gn=n(99381),et=n.n(Gn);const It=t=>Object.keys(t).reduce((s,r)=>{const o=t[r];if(Te()(o)&&!P()(o,"conditions"))return{...s,[r]:It(o)};if(Te()(o)&&P()(o,"conditions")&&!je(Q()(o,"conditions")).some(l=>l)){const l=Object.keys(o.conditions).reduce((c,d)=>(c[d]=!1,c),{});return{...s,[r]:{...o,conditions:l}}}return s[r]=o,s},{});var tt=It;const Bt=(t,s,r=!1)=>Object.keys(t).reduce((o,i)=>{const l=t[i];return i==="conditions"&&!r?(o[i]=l,o):Te()(l)?{...o,[i]:Bt(l,s,i==="fields")}:(o[i]=s,o)},{});var He=Bt;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,s)=>(0,J.ZP)(t,r=>{switch(s.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:o,actionId:i,value:l}=s,c=["modifiedData",o];Object.keys(b()(t,c)).forEach(d=>{const p=b()(t,[...c,d,i],void 0);if(p){let m=He(p,l);if(!l&&m.conditions){const y=He(m.conditions,!1);m={...m,conditions:y}}fe()(r,[...c,d,i],m)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:o,propertyName:i,rowName:l,value:c}=s;let d=et()(t.modifiedData);const p=o.split(".."),m=b()(d,p,{});Object.keys(m).forEach(y=>{if(P()(m[y],`properties.${i}`)){const T=b()(m,[y,"properties",i,l]),D=[...p,y,"properties",i,l];if(!Te()(T))fe()(d,D,c);else{const V=He(T,c);fe()(d,D,V)}}}),c||(d=tt(d)),fe()(r,"modifiedData",d);break}case"ON_CHANGE_CONDITIONS":{Object.entries(s.conditions).forEach(o=>{const[i,l]=o;fe()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let o=et()(t.modifiedData);fe()(o,[...s.keys.split("..")],s.value),s.value||(o=tt(o)),fe()(r,"modifiedData",o);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:o,value:i}=s,l=[...o.split("..")];let c=et()(t.modifiedData);const d=b()(c,l,{}),p=He(d,i);fe()(c,l,p),i||(c=tt(c)),fe()(r,["modifiedData"],c);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const nt=t=>Object.entries(t).filter(([,s])=>s).map(([s])=>s),Xn=t=>{const[s,{conditions:r}]=t;return{action:s,subject:null,conditions:nt(r),properties:{}}},wn=t=>Object.values(t).reduce((s,r)=>{const o=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const d=Xn(l);return i.push(d),i},[]);return[...s,...o]},[]);var kt=t=>Object.values(t).reduce((s,r)=>{const o=wn(r);return[...s,...o]},[]);const Zt=(t,s="")=>Object.entries(t).reduce((r,o)=>{const[i,l]=o;return Te()(l)?[...r,...Zt(l,`${s}${i}.`)]:(l&&!Te()(l)&&r.push(`${s}${i}`),r)},[]),Qn=(t,s,{conditions:r,properties:o})=>Object.entries(o).reduce((i,l)=>{const[c,d]=l;return i.properties[c]=Zt(d),i},{action:t,subject:s,conditions:nt(r),properties:{}}),Jn=(t,s,{conditions:r})=>({action:t,subject:s,properties:{},conditions:nt(r)}),qn=(t,s)=>Object.entries(s).reduce((o,i)=>{const[l,c]=i;if(!je(c).some(m=>m))return o;if(!c?.properties?.enabled){const m=Qn(l,t,c);return[...o,m]}if(!c.properties.enabled)return o;const p=Jn(l,t,c);return o.push(p),o},[]);var Ft=t=>Object.entries(t).reduce((r,o)=>{const[i,l]=o,c=qn(i,l);return[...r,...c]},[]),_n=t=>{const s=kt(t.plugins),r=kt(t.settings),o=Ft(t.collectionTypes),i=Ft(t.singleTypes);return[...s,...r,...o,...i]},es=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const st=(0,e.forwardRef)(({layout:t,isFormDisabled:s,permissions:r},o)=>{const[{initialData:i,layouts:l,modifiedData:c},d]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,k.Z)();(0,e.useImperativeHandle)(o,()=>({getPermissions(){const I=(0,M.e5)(i.collectionTypes,c.collectionTypes),O=(0,M.e5)(i.singleTypes,c.singleTypes),v={...I,...O};let B;return A()(v)?B=!1:B=Object.values(v).some(L=>Object.values(L).some(Z=>P()(Z,"conditions"))),{permissionsToSend:_n(c),didUpdateConditions:B}},resetForm(){d({type:"RESET_FORM"})},setFormAfterSubmit(){d({type:"SET_FORM_AFTER_SUBMIT"})}}));const m=(I,O,v,B)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:O,rowName:v,value:B})},y=(I,O,v)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:O,value:v})},T=I=>{d({type:"ON_CHANGE_CONDITIONS",conditions:I})},D=(0,e.useCallback)(({target:{name:I,value:O}})=>{d({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:O})},[]),V=(0,e.useCallback)(({target:{name:I,value:O}})=>{d({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:O})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:c,onChangeConditions:T,onChangeSimpleCheckbox:D,onChangeParentCheckbox:V,onChangeCollectionTypeLeftActionRowCheckbox:m,onChangeCollectionTypeGlobalActionCheckbox:y}},e.createElement(f.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(x.m,null,es.map(I=>e.createElement(x.O,{key:I.id},p({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(h.n,{style:{position:"relative"}},e.createElement(h.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:s})),e.createElement(h.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:s})),e.createElement(h.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:s})),e.createElement(h.x,null,e.createElement(Tt,{layout:l.settings,kind:"settings",isFormDisabled:s})))))});st.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},st.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(st)},87056:function(W,$,n){"use strict";n.r($),n.d($,{default:function(){return Y}});var e=n(32735),f=n(61489),x=n(15062),h=n(53038),M=n(30305),E=n(95162),P=n(64092),C=n(84642),A=n(91779),N=n(56932),a=n(77981),k=n(70788),u=n(92802),S=n(67879),F=n(64499),g=n(86409),R=n(91720),G=n(1283),w=n(8365),oe=n(10710),ee=n(97037),b=n(2846),pe=n(15367),Q=n(60216),H=n.n(Q);const te=({disabled:re,role:X,values:j,errors:J,onChange:le,onBlur:ge})=>{const{formatMessage:q}=(0,S.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(C.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(w.Z,{fontWeight:"bold"},X?X.name:q({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(w.Z,{textColor:"neutral500",variant:"pi"},X?X.description:q({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(A.z,{disabled:!0,variant:"secondary"},q({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:X.usersCount}))),e.createElement(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(b.o,{disabled:re,name:"name",error:J.name&&q({id:J.name}),label:q({id:"global.name",defaultMessage:"Name"}),onChange:le,onBlur:ge,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(pe.g,{disabled:re,label:q({id:"global.description",defaultMessage:"Description"}),id:"description",error:J.name&&q({id:J.name}),onChange:le,onBlur:ge},j.description||"")))))};te.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},te.propTypes={disabled:H().bool,errors:H().object.isRequired,onBlur:H().func.isRequired,onChange:H().func.isRequired,role:H().object,values:H().object};var Ce=te,be=n(24346),ie=be.Ry().shape({name:be.Z_().required(f.I0.required)}),Se=()=>{const re=(0,f.lm)(),{formatMessage:X}=(0,S.Z)(),{params:{id:j}}=(0,h.$B)("/settings/roles/:id"),{put:J}=(0,f.kY)(),[le,ge]=(0,e.useState)(!1),q=(0,e.useRef)(),{lockApp:ue,unlockApp:Be}=(0,f.o1)(),{trackUsage:ke}=(0,f.rS)(),{formatAPIError:ve}=(0,f.So)(),{isLoading:Ze,data:Le}=(0,R.d)(j,{cacheTime:0}),{roles:[ye={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:Ue,isLoading:Re}=(0,F.V)({id:j},{cacheTime:0}),ne=async de=>{try{ue(),ge(!0);const{permissionsToSend:me,didUpdateConditions:Ae}=q.current.getPermissions();await J(`/admin/roles/${j}`,de),ye.code!=="strapi-super-admin"&&(await J(`/admin/roles/${j}/permissions`,{permissions:me}),Ae&&ke("didUpdateConditions")),q.current.setFormAfterSubmit(),await Fe(),re({type:"success",message:{id:"notification.success.saved"}})}catch(me){re({type:"warning",message:ve(me)})}finally{ge(!1),Be()}},ce=!Me&&ye.code==="strapi-super-admin";return e.createElement(E.o,null,e.createElement(f.SL,{name:"Roles"}),e.createElement(u.J9,{enableReinitialize:!0,initialValues:{name:ye.name,description:ye.description},onSubmit:ne,validationSchema:ie,validateOnChange:!1},({handleSubmit:de,values:me,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:de},e.createElement(P.T,{primaryAction:e.createElement(C.k,{gap:2},e.createElement(A.z,{disabled:ye.code==="strapi-super-admin",onClick:de,loading:le,size:"L"},X({id:"global.save",defaultMessage:"Save"}))),title:X({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:X({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(f.rU,{startIcon:e.createElement(k.Z,null),to:"/settings/roles"},X({id:"global.back",defaultMessage:"Back"}))}),e.createElement(N.D,null,e.createElement(C.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Re,disabled:ce,errors:Ae,values:me,onChange:ot,onBlur:Ne,role:ye}),!Ze&&!Me&&!Re?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(G.Z,{isFormDisabled:ce,permissions:Ue,ref:q,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(f.dO,null)))))))},Y=()=>{const re=(0,x.v9)(M._),{isLoading:X,allowedActions:{canRead:j,canUpdate:J}}=(0,f.ss)({read:re.settings.roles.read,update:re.settings.roles.update});return X?e.createElement(f.dO,null):!j&&!J?e.createElement(h.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(W,$,n){"use strict";n.d($,{d:function(){return x}});var e=n(61489),f=n(20108);const x=(h,M={})=>{const{get:E}=(0,e.kY)(),{data:P,error:C,isError:A,isLoading:N}=(0,f.useQuery)(["permissions",h],async()=>{const{data:{data:a}}=await E("/admin/permissions",{params:{role:h}});return a},M);return{data:P,error:C,isError:A,isLoading:N}}},84802:function(W){function $(n,e,f,x){for(var h=-1,M=n==null?0:n.length;++h<M;){var E=n[h];e(x,E,f(E),n)}return x}W.exports=$},62435:function(W,$,n){var e=n(56671);function f(x,h,M,E){return e(x,function(P,C,A){h(E,P,M(P),A)}),E}W.exports=f},85580:function(W,$,n){var e=n(84802),f=n(62435),x=n(88904),h=n(77236);function M(E,P){return function(C,A){var N=h(C)?e:f,a=P?P():{};return N(C,E,x(A,2),a)}}W.exports=M},72091:function(W,$,n){var e=n(40314),f=1/0;function x(h){var M=h==null?0:h.length;return M?e(h,f):[]}W.exports=x},81346:function(W,$,n){var e=n(40999),f=n(85580),x=Object.prototype,h=x.hasOwnProperty,M=f(function(E,P,C){h.call(E,C)?E[C].push(P):e(E,C,[P])});W.exports=M},9435:function(W,$,n){"use strict";n.d($,{U:function(){return k},y:function(){return N}});var e=n(74512),f=n(32735),x=n(8471),h=n(85612),M=n(37808),E=n(8365),P=n(84642),C=n(77981);const A=({theme:u,expanded:S,variant:F,disabled:g,error:R})=>R?`1px solid ${u.colors.danger600} !important`:g?`1px solid ${u.colors.neutral150}`:S?`1px solid ${u.colors.primary600}`:F==="primary"?`1px solid ${u.colors.neutral0}`:`1px solid ${u.colors.neutral100}`,N=(0,x.ZP)(E.Z)``,a=(0,x.ZP)(C.x)`
217
+ border: ${A};
218
+
219
+ &:hover:not([aria-disabled='true']) {
220
+ border: 1px solid ${({theme:u})=>u.colors.primary600};
221
+
222
+ ${N} {
223
+ color: ${({theme:u,expanded:S})=>S?void 0:u.colors.primary700};
224
+ }
225
+
226
+ ${E.Z} {
227
+ color: ${({theme:u,expanded:S})=>S?void 0:u.colors.primary600};
228
+ }
229
+
230
+ & > ${P.k} {
231
+ background: ${({theme:u})=>u.colors.primary100};
232
+ }
233
+
234
+ [data-strapi-dropdown='true'] {
235
+ background: ${({theme:u})=>u.colors.primary200};
236
+ }
237
+ }
238
+ `,k=({children:u,disabled:S=!1,error:F,expanded:g=!1,hasErrorMessage:R=!0,id:G,onToggle:w,toggle:oe,size:ee="M",variant:b="primary",shadow:pe})=>{const Q=(0,M.M)(G),H=f.useMemo(()=>({expanded:g,onToggle:w,toggle:oe,id:Q,size:ee,variant:b,disabled:S}),[S,g,Q,w,ee,oe,b]);return(0,e.jsxs)(h.S.Provider,{value:H,children:[(0,e.jsx)(a,{"data-strapi-expanded":g,disabled:S,"aria-disabled":S,expanded:g,hasRadius:!0,variant:b,error:F,shadow:pe,children:u}),F&&R&&(0,e.jsx)(C.x,{paddingTop:1,children:(0,e.jsx)(E.Z,{variant:"pi",textColor:"danger600",children:F})})]})}},79624:function(W,$,n){"use strict";n.d($,{v:function(){return h}});var e=n(74512),f=n(85612),x=n(77981);const h=({children:M,...E})=>{const{expanded:P,id:C}=(0,f.A)();if(!P)return null;const A=`accordion-content-${C}`,N=`accordion-label-${C}`,a=`accordion-desc-${C}`;return(0,e.jsx)(x.x,{role:"region",id:A,"aria-labelledby":N,"aria-describedby":a,...E,children:M})}},85612:function(W,$,n){"use strict";n.d($,{A:function(){return x},S:function(){return f}});var e=n(32735);const f=(0,e.createContext)({disabled:!1,expanded:!1,id:"",size:"M",variant:"primary"}),x=()=>(0,e.useContext)(f)},9379:function(W,$,n){"use strict";n.d($,{B:function(){return u}});var e=n(74512),f=n(91917),x=n(8471),h=n(9435),M=n(85612);const E=({expanded:S,disabled:F,variant:g})=>{let R="neutral100";return S?R="primary100":F?R="neutral150":g==="primary"&&(R="neutral0"),R};var P=n(43743),C=n(18129),A=n(84642),N=n(8365);const a=(0,x.ZP)(P.A)`
239
+ text-align: left;
240
+
241
+ // necessary to make the ellipsis prop work on the title
242
+ > span {
243
+ max-width: 100%;
244
+ }
245
+
246
+ svg {
247
+ width: ${14/16}rem;
248
+ height: ${14/16}rem;
249
+
250
+ path {
251
+ fill: ${({theme:S,expanded:F})=>F?S.colors.primary600:S.colors.neutral500};
252
+ }
253
+ }
254
+ `,k=(0,x.ZP)(A.k)`
255
+ min-height: ${({theme:S,size:F})=>S.sizes.accordions[F]};
256
+ border-radius: ${({theme:S,expanded:F})=>F?`${S.borderRadius} ${S.borderRadius} 0 0`:S.borderRadius};
257
+
258
+ &:hover {
259
+ svg {
260
+ path {
261
+ fill: ${({theme:S})=>S.colors.primary600};
262
+ }
263
+ }
264
+ }
265
+ `,u=({title:S,description:F,as:g="span",togglePosition:R="right",action:G,...w})=>{const{onToggle:oe,toggle:ee,expanded:b,id:pe,size:Q,variant:H,disabled:te}=(0,M.A)(),Ce=`accordion-content-${pe}`,be=`accordion-label-${pe}`,xe=`accordion-desc-${pe}`,ie=Q==="M"?6:4,Pe=Q==="M"?ie:ie-2,Se=E({expanded:b,disabled:te,variant:H}),Y={as:g,fontWeight:Q==="S"?"bold":void 0,id:be,textColor:b?"primary600":"neutral700",ellipsis:!0,variant:Q==="M"?"delta":void 0},re=b?"primary600":"neutral600",X=b?"primary200":"neutral200",j=Q==="M"?`${32/16}rem`:`${24/16}rem`,J=()=>{te||(ee&&!oe?(console.warn('Deprecation warning: Usage of "toggle" prop in Accordion component is deprecated. This is discouraged and will be removed in the next major release. Please use "onToggle" instead'),ee()):oe&&oe())},le=(0,e.jsx)(A.k,{justifyContent:"center",borderRadius:"50%",height:j,width:j,transform:b?"rotate(180deg)":void 0,"data-strapi-dropdown":!0,"aria-hidden":!0,as:"span",background:X,cursor:te?"not-allowed":"pointer",onClick:J,shrink:0,children:(0,e.jsx)(C.J,{as:f.Z,width:Q==="M"?`${11/16}rem`:`${8/16}rem`,color:b?"primary600":"neutral600"})});return(0,e.jsx)(k,{paddingBottom:Pe,paddingLeft:ie,paddingRight:ie,paddingTop:Pe,background:Se,expanded:b,size:Q,justifyContent:"space-between",cursor:te?"not-allowed":"",children:(0,e.jsxs)(A.k,{gap:3,flex:1,maxWidth:"100%",children:[R==="left"&&le,(0,e.jsx)(a,{onClick:J,"aria-disabled":te,"aria-expanded":b,"aria-controls":Ce,"aria-labelledby":be,"data-strapi-accordion-toggle":!0,expanded:b,type:"button",flex:1,minWidth:0,...w,children:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(h.y,{...Y,children:S}),F&&(0,e.jsx)(N.Z,{as:"p",id:xe,textColor:re,children:F})]})}),R==="right"&&(0,e.jsxs)(A.k,{gap:3,children:[le,G]}),R==="left"&&G]})})}},63057:function(W,$,n){"use strict";n.d($,{Q:function(){return h}});var e=n(74512),f=n(8471),x=n(74323);const h=({options:E,...P})=>(0,e.jsx)(x.NU,{...P,children:E.map(C=>"children"in C?(0,e.jsx)(x.Ab,{label:C.label,values:C.children.map(A=>A.value.toString()),children:C.children.map(A=>(0,e.jsx)(M,{value:A.value,children:A.label},A.value))},C.label):(0,e.jsx)(x.ML,{value:C.value,children:C.label},C.value))}),M=(0,f.ZP)(x.ML)`
266
+ padding-left: ${({theme:E})=>E.spaces[7]};
267
+ `},79129:function(W,$,n){"use strict";n.d($,{O:function(){return A}});var e=n(74512),f=n(32735),x=n(8471),h=n(77981),M=n(8365);const E=()=>(0,e.jsx)(h.x,{"aria-hidden":!0,paddingLeft:1,paddingRight:1,children:(0,e.jsx)(M.Z,{variant:"pi",textColor:"neutral500",children:"/"})});E.displayName="Divider";var P=n(84642);const C=(0,x.ZP)(P.k)`
268
+ // CrumbLinks do have padding-x, because they need to have a
269
+ // interaction effect, which mis-aligns the breadcrumbs on the left.
270
+ // This normalizes the behavior by moving the first item to left by
271
+ // the same amount it has inner padding
272
+ :first-child {
273
+ margin-left: ${({theme:N})=>`calc(-1*${N.spaces[2]})`};
274
+ }
275
+ `,A=({label:N,children:a,...k})=>{const u=f.Children.toArray(a);return(0,e.jsx)(h.x,{"aria-label":N,...k,children:(0,e.jsx)(C,{as:"ol",children:f.Children.map(u,(S,F)=>{const g=u.length>1&&F+1<u.length;return(0,e.jsxs)(P.k,{inline:!0,as:"li",children:[S,g&&(0,e.jsx)(E,{})]})})})})};A.displayName="Breadcrumbs"},2748:function(W,$,n){"use strict";n.d($,{$:function(){return h}});var e=n(74512),f=n(77981),x=n(8365);const h=({children:M,isCurrent:E=!1,...P})=>(0,e.jsx)(f.x,{paddingLeft:2,paddingRight:2,paddingTop:1,paddingBottom:1,children:(0,e.jsx)(x.Z,{variant:"pi",textColor:"neutral800",fontWeight:E?"bold":"normal","aria-current":E,...P,children:M})});h.displayName="Crumb"}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{97108:function(B,i,e){e.d(i,{R:function(){return r}});var t=e(32735),a=e(43806),o=e(20108);function r(E={},d={}){const{id:n="",...u}=E,{get:g}=(0,a.kY)(),{data:s,isError:c,isLoading:f,refetch:y}=(0,o.useQuery)(["users",n,u],async()=>{const{data:{data:M}}=await g(`/admin/users/${n}`,{params:u});return M},d);return{users:t.useMemo(()=>n&&s?[s]:Array.isArray(s?.results)?s.results:[],[s,n]),pagination:t.useMemo(()=>s?.pagination??null,[s?.pagination]),isLoading:f,isError:c,refetch:y}}},28363:function(B,i,e){e.r(i),e.d(i,{default:function(){return re}});var t=e(32735),a=e(43806),o=e(15062),r=e(53038),E=e(30305),d=e(95162),n=e(64092),u=e(91779),g=e(56932),s=e(77981),c=e(84642),f=e(8365),y=e(10710),D=e(97037),M=e(40501),O=e(70788),I=e(92802),j=e(33795),x=e.n(j),N=e(9086),Y=e.n(N),U=e(88423),S=e.n(U),F=e(60216),H=e.n(F),V=e(67879),G=e(97108),v=e(9592),Q=e(90869),ee=e(47577),te=e(18703),ae=e(32720);const se=async(L,m)=>{const{put:C}=(0,a.tg)(),{data:T}=await C(`/admin/users/${L}`,m);return T.data};var ne=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},name:"username",placeholder:{id:"Auth.form.username.placeholder",defaultMessage:"e.g. Kai_Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12},autoComplete:"new-password"},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12},autoComplete:"new-password"}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];const b=["email","firstname","lastname","username","isActive","roles"],w=({canUpdate:L})=>{const{formatMessage:m}=(0,V.Z)(),{params:{id:C}}=(0,r.$B)("/settings/users/:id"),{push:T}=(0,r.k6)(),{setUserDisplayName:Z}=(0,a.L7)(),h=(0,a.lm)(),{lockApp:X,unlockApp:J}=(0,a.o1)(),k=(0,v.c)(ee.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE);(0,a.go)();const{users:[W],isLoading:le}=(0,G.R)({id:C},{cacheTime:0,onError(l){const{status:p}=l.response;p===403?(h({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),T("/")):h({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),ie=async(l,p)=>{X();try{const P=await se(C,Y()(l,"confirmPassword"));h({type:"success",message:m({id:"notification.success.saved",defaultMessage:"Saved"})});const R=a.I8.getUserInfo();if(C.toString()===R.id.toString()){a.I8.setUserInfo(P);const K=x()(l,"username")||(0,Q.Pp)(l.firstname,l.lastname);Z(K)}p.setValues(S()(l,b))}catch(P){const R=(0,Q.Iz)(P.response.data),K=Object.keys(R).reduce(($,A)=>($[A]=R[A].id,$),{});p.setErrors(K),h({type:"warning",message:x()(P,"response.data.error.message","notification.error")})}J()},q=le||!k,de=q?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},z=Object.keys(S()(W,b)).reduce((l,p)=>p==="roles"?(l[p]=(W?.roles||[]).map(({id:P})=>P),l):(l[p]=W?.[p],l),{}),ce=z.username||(0,Q.Pp)(z.firstname,z.lastname),_=m(de,{name:ce});return q?t.createElement(d.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:!0,startIcon:t.createElement(M.Z,null),type:"button",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,t.createElement(a.dO,null))):t.createElement(d.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(I.J9,{onSubmit:ie,initialValues:z,validateOnChange:!1,validationSchema:ae.YM},({errors:l,values:p,handleChange:P,isSubmitting:R,dirty:K})=>t.createElement(a.l0,null,t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:R||!L?!0:!K,startIcon:t.createElement(M.Z,null),loading:R,type:"submit",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,W?.registrationToken&&t.createElement(s.x,{paddingBottom:6},t.createElement(k,{registrationToken:W.registrationToken})),t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(y.r,{gap:5},ne.map($=>$.map(A=>t.createElement(D.P,{key:A.name,...A.size},t.createElement(a.jm,{...A,disabled:!L,error:l[A.name],onChange:P,value:p[A.name]||""}))))))),t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"global.roles",defaultMessage:"User's role"})),t.createElement(y.r,{gap:5},t.createElement(D.P,{col:6,xs:12},t.createElement(te.Z,{disabled:!L,error:l.roles,onChange:P,value:p.roles}))))))))))};w.propTypes={canUpdate:H().bool.isRequired};var oe=w,re=()=>{const L=(0,a.lm)(),m=(0,o.v9)(E._),C=t.useMemo(()=>({read:m.settings.users.read,update:m.settings.users.update}),[m.settings.users]),{isLoading:T,allowedActions:{canRead:Z,canUpdate:h}}=(0,a.ss)(C),{state:X}=(0,r.TH)(),J=X?.from??"/";return(0,t.useEffect)(()=>{T||!Z&&!h&&L({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[T,Z,h,L]),T?t.createElement(a.dO,null):!Z&&!h?t.createElement(r.l_,{to:J}):t.createElement(oe,{canUpdate:h})}},84024:function(B,i,e){var t=e(32735),a=e(14763),o=e(43806),r=e(94958),E=e(60216),d=e.n(E),n=e(67879);const u=({children:g,target:s})=>{const c=(0,o.lm)(),{formatMessage:f}=(0,n.Z)(),{copy:y}=(0,o.VP)(),D=f({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),M=async()=>{await y(s)&&c({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(a.h,{label:D,noBorder:!0,icon:t.createElement(r.Z,null),onClick:M}),title:s,titleEllipsis:!0,subtitle:g,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};u.propTypes={children:d().oneOfType([d().element,d().string]).isRequired,target:d().string.isRequired},i.Z=u},47577:function(B,i,e){e.d(i,{A:function(){return n}});var t=e(32735),a=e(60216),o=e.n(a),r=e(67879),E=e(35231),d=e(84024);const n=({registrationToken:u})=>{const{formatMessage:g}=(0,r.Z)(),s=`${window.location.origin}${E.Z}auth/register?registrationToken=${u}`;return t.createElement(d.Z,{target:s},g({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:o().string}},18703:function(B,i,e){var t=e(32735),a=e(16773),o=e(40260),r=e(43806),E=e(75760),d=e(60216),n=e.n(d),u=e(67879),g=e(20108),s=e(8471);const c=(0,s.F4)`
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{97108:function(B,i,e){e.d(i,{R:function(){return r}});var t=e(32735),a=e(61489),o=e(20108);function r(E={},d={}){const{id:n="",...u}=E,{get:g}=(0,a.kY)(),{data:s,isError:c,isLoading:f,refetch:y}=(0,o.useQuery)(["users",n,u],async()=>{const{data:{data:M}}=await g(`/admin/users/${n}`,{params:u});return M},d);return{users:t.useMemo(()=>n&&s?[s]:Array.isArray(s?.results)?s.results:[],[s,n]),pagination:t.useMemo(()=>s?.pagination??null,[s?.pagination]),isLoading:f,isError:c,refetch:y}}},28363:function(B,i,e){e.r(i),e.d(i,{default:function(){return re}});var t=e(32735),a=e(61489),o=e(15062),r=e(53038),E=e(30305),d=e(95162),n=e(64092),u=e(91779),g=e(56932),s=e(77981),c=e(84642),f=e(8365),y=e(10710),D=e(97037),M=e(40501),O=e(70788),I=e(92802),j=e(33795),x=e.n(j),N=e(9086),Y=e.n(N),U=e(88423),S=e.n(U),F=e(60216),H=e.n(F),V=e(67879),G=e(97108),v=e(9592),Q=e(90869),ee=e(47577),te=e(18703),ae=e(32720);const se=async(L,m)=>{const{put:C}=(0,a.tg)(),{data:T}=await C(`/admin/users/${L}`,m);return T.data};var ne=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},name:"username",placeholder:{id:"Auth.form.username.placeholder",defaultMessage:"e.g. Kai_Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12},autoComplete:"new-password"},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12},autoComplete:"new-password"}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];const b=["email","firstname","lastname","username","isActive","roles"],w=({canUpdate:L})=>{const{formatMessage:m}=(0,V.Z)(),{params:{id:C}}=(0,r.$B)("/settings/users/:id"),{push:T}=(0,r.k6)(),{setUserDisplayName:Z}=(0,a.L7)(),h=(0,a.lm)(),{lockApp:X,unlockApp:J}=(0,a.o1)(),k=(0,v.c)(ee.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE);(0,a.go)();const{users:[W],isLoading:le}=(0,G.R)({id:C},{cacheTime:0,onError(l){const{status:p}=l.response;p===403?(h({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),T("/")):h({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),ie=async(l,p)=>{X();try{const P=await se(C,Y()(l,"confirmPassword"));h({type:"success",message:m({id:"notification.success.saved",defaultMessage:"Saved"})});const R=a.I8.getUserInfo();if(C.toString()===R.id.toString()){a.I8.setUserInfo(P);const K=x()(l,"username")||(0,Q.Pp)(l.firstname,l.lastname);Z(K)}p.setValues(S()(l,b))}catch(P){const R=(0,Q.Iz)(P.response.data),K=Object.keys(R).reduce(($,A)=>($[A]=R[A].id,$),{});p.setErrors(K),h({type:"warning",message:x()(P,"response.data.error.message","notification.error")})}J()},q=le||!k,de=q?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},z=Object.keys(S()(W,b)).reduce((l,p)=>p==="roles"?(l[p]=(W?.roles||[]).map(({id:P})=>P),l):(l[p]=W?.[p],l),{}),ce=z.username||(0,Q.Pp)(z.firstname,z.lastname),_=m(de,{name:ce});return q?t.createElement(d.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:!0,startIcon:t.createElement(M.Z,null),type:"button",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,t.createElement(a.dO,null))):t.createElement(d.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(I.J9,{onSubmit:ie,initialValues:z,validateOnChange:!1,validationSchema:ae.YM},({errors:l,values:p,handleChange:P,isSubmitting:R,dirty:K})=>t.createElement(a.l0,null,t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:R||!L?!0:!K,startIcon:t.createElement(M.Z,null),loading:R,type:"submit",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,W?.registrationToken&&t.createElement(s.x,{paddingBottom:6},t.createElement(k,{registrationToken:W.registrationToken})),t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(y.r,{gap:5},ne.map($=>$.map(A=>t.createElement(D.P,{key:A.name,...A.size},t.createElement(a.jm,{...A,disabled:!L,error:l[A.name],onChange:P,value:p[A.name]||""}))))))),t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"global.roles",defaultMessage:"User's role"})),t.createElement(y.r,{gap:5},t.createElement(D.P,{col:6,xs:12},t.createElement(te.Z,{disabled:!L,error:l.roles,onChange:P,value:p.roles}))))))))))};w.propTypes={canUpdate:H().bool.isRequired};var oe=w,re=()=>{const L=(0,a.lm)(),m=(0,o.v9)(E._),C=t.useMemo(()=>({read:m.settings.users.read,update:m.settings.users.update}),[m.settings.users]),{isLoading:T,allowedActions:{canRead:Z,canUpdate:h}}=(0,a.ss)(C),{state:X}=(0,r.TH)(),J=X?.from??"/";return(0,t.useEffect)(()=>{T||!Z&&!h&&L({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[T,Z,h,L]),T?t.createElement(a.dO,null):!Z&&!h?t.createElement(r.l_,{to:J}):t.createElement(oe,{canUpdate:h})}},84024:function(B,i,e){var t=e(32735),a=e(14763),o=e(61489),r=e(94958),E=e(60216),d=e.n(E),n=e(67879);const u=({children:g,target:s})=>{const c=(0,o.lm)(),{formatMessage:f}=(0,n.Z)(),{copy:y}=(0,o.VP)(),D=f({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),M=async()=>{await y(s)&&c({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(a.h,{label:D,noBorder:!0,icon:t.createElement(r.Z,null),onClick:M}),title:s,titleEllipsis:!0,subtitle:g,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};u.propTypes={children:d().oneOfType([d().element,d().string]).isRequired,target:d().string.isRequired},i.Z=u},47577:function(B,i,e){e.d(i,{A:function(){return n}});var t=e(32735),a=e(60216),o=e.n(a),r=e(67879),E=e(35231),d=e(84024);const n=({registrationToken:u})=>{const{formatMessage:g}=(0,r.Z)(),s=`${window.location.origin}${E.Z}auth/register?registrationToken=${u}`;return t.createElement(d.Z,{target:s},g({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:o().string}},18703:function(B,i,e){var t=e(32735),a=e(16773),o=e(40260),r=e(61489),E=e(75760),d=e(60216),n=e.n(d),u=e(67879),g=e(20108),s=e(8471);const c=(0,s.F4)`
2
2
  from {
3
3
  transform: rotate(0deg);
4
4
  }
@@ -7,4 +7,4 @@
7
7
  }
8
8
  `,f=s.ZP.div`
9
9
  animation: ${c} 2s infinite linear;
10
- `,y=()=>t.createElement(f,null,t.createElement(E.Z,null)),D=async()=>{const{get:O}=(0,r.tg)(),{data:I}=await O("/admin/roles");return I.data},M=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,g.useQuery)(["roles"],D,{staleTime:5e4}),{formatMessage:U}=(0,u.Z)(),S=I?U({id:I,defaultMessage:I}):"",F=U({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),H=U({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),V=U({id:"app.components.Select.placeholder",defaultMessage:"Select"}),G=N==="loading"?t.createElement(y,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:v=>{j({target:{name:"roles",value:v}})},placeholder:V,multi:!0,startIcon:G,value:x.map(v=>v.toString()),withTags:!0,required:!0},(Y||[]).map(v=>t.createElement(o.W,{key:v.id,value:v.id.toString()},U({id:`global.${v.code}`,defaultMessage:v.name}))))};M.defaultProps={disabled:!1,error:void 0},M.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=M},32720:function(B,i,e){e.d(i,{YM:function(){return g},Rw:function(){return E}});var t=e(24346),a=e(43806);const o={firstname:t.Z_().trim().required(a.I0.required),lastname:t.Z_(),email:t.Z_().email(a.I0.email).lowercase().required(a.I0.required),username:t.Z_().nullable(),password:t.Z_().min(8,a.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:t.Z_().min(8,a.I0.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(s,c)=>s?c.required(a.I0.required):c)};var E={...o,currentPassword:t.Z_().when(["password","confirmPassword"],(s,c,f)=>s||c?f.required(a.I0.required):f),preferedLanguage:t.Z_().nullable()},n={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},g=t.Ry().shape({...o,isActive:t.Xg(),...n})},70788:function(B,i,e){e.d(i,{Z:function(){return o}});var t=e(74512);const a=r=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...r,children:(0,t.jsx)("path",{fill:"#212134",d:"M24 13.3a.2.2 0 0 1-.2.2H5.74l8.239 8.239a.2.2 0 0 1 0 .282L12.14 23.86a.2.2 0 0 1-.282 0L.14 12.14a.2.2 0 0 1 0-.282L11.86.14a.2.2 0 0 1 .282 0L13.98 1.98a.2.2 0 0 1 0 .282L5.74 10.5H23.8c.11 0 .2.09.2.2v2.6Z"})}),o=a}}]);
10
+ `,y=()=>t.createElement(f,null,t.createElement(E.Z,null)),D=async()=>{const{get:O}=(0,r.tg)(),{data:I}=await O("/admin/roles");return I.data},M=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,g.useQuery)(["roles"],D,{staleTime:5e4}),{formatMessage:U}=(0,u.Z)(),S=I?U({id:I,defaultMessage:I}):"",F=U({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),H=U({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),V=U({id:"app.components.Select.placeholder",defaultMessage:"Select"}),G=N==="loading"?t.createElement(y,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:v=>{j({target:{name:"roles",value:v}})},placeholder:V,multi:!0,startIcon:G,value:x.map(v=>v.toString()),withTags:!0,required:!0},(Y||[]).map(v=>t.createElement(o.W,{key:v.id,value:v.id.toString()},U({id:`global.${v.code}`,defaultMessage:v.name}))))};M.defaultProps={disabled:!1,error:void 0},M.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=M},32720:function(B,i,e){e.d(i,{YM:function(){return g},Rw:function(){return E}});var t=e(24346),a=e(61489);const o={firstname:t.Z_().trim().required(a.I0.required),lastname:t.Z_(),email:t.Z_().email(a.I0.email).lowercase().required(a.I0.required),username:t.Z_().nullable(),password:t.Z_().min(8,a.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:t.Z_().min(8,a.I0.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(s,c)=>s?c.required(a.I0.required):c)};var E={...o,currentPassword:t.Z_().when(["password","confirmPassword"],(s,c,f)=>s||c?f.required(a.I0.required):f),preferedLanguage:t.Z_().nullable()},n={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},g=t.Ry().shape({...o,isActive:t.Xg(),...n})},70788:function(B,i,e){e.d(i,{Z:function(){return o}});var t=e(74512);const a=r=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...r,children:(0,t.jsx)("path",{fill:"#212134",d:"M24 13.3a.2.2 0 0 1-.2.2H5.74l8.239 8.239a.2.2 0 0 1 0 .282L12.14 23.86a.2.2 0 0 1-.282 0L.14 12.14a.2.2 0 0 1 0-.282L11.86.14a.2.2 0 0 1 .282 0L13.98 1.98a.2.2 0 0 1 0 .282L5.74 10.5H23.8c.11 0 .2.09.2.2v2.6Z"})}),o=a}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86409:function(N,p,t){t.d(p,{F:function(){return u}});var e=t(32735),n=t(43806),i=t(67879),c=t(20108);const u=(I={},j={})=>{const{id:v="",...y}=I,{get:o}=(0,n.kY)(),{locale:Z}=(0,i.Z)(),L=(0,n.Xe)(Z,{sensitivity:"base"}),{data:D,error:d,isError:T,isLoading:Q,refetch:V}=(0,c.useQuery)(["roles",v,y],async()=>{const{data:R}=await o(`/admin/roles/${v??""}`,{params:y});return R},j);return{roles:e.useMemo(()=>{let R=[];return v&&D?R=[D.data]:Array.isArray(D?.data)&&(R=D.data),[...R].sort((H,b)=>L.compare(H.name,b.name))},[D,v,L]),error:d,isError:T,isLoading:Q,refetch:V}}},32239:function(N,p,t){t.r(p),t.d(p,{default:function(){return ue}});var e=t(32735),n=t(43806),i=t(15062),c=t(30305),u=t(95162),I=t(64092),j=t(91779),v=t(95181),y=t(56932),o=t(23699),Z=t(22116),L=t(41013),D=t(45037),d=t(27947),T=t(8365),Q=t(99320),V=t(1690),J=t(94958),R=t(63318),H=t(94997),b=t(82064),k=t(67879),q=t(53038),_=t(86409),ee=()=>"todo empty role",te=t(84642),ne=t(77981),le=t(14763),ae=t(60216),M=t.n(ae);const z=({id:a,name:m,description:s,usersCount:O,icons:r,rowIndex:W,canUpdate:E})=>{const{formatMessage:P}=(0,k.Z)(),[,x]=r,g=P({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:O});return e.createElement(D.Tr,{"aria-rowindex":W,key:a,...E?(0,n.X7)({fn:x.onClick}):{}},e.createElement(d.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},m)),e.createElement(d.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},s)),e.createElement(d.Td,null,e.createElement(T.Z,{textColor:"neutral800"},g)),e.createElement(d.Td,null,e.createElement(te.k,{justifyContent:"flex-end",...n.UW},r.map((h,A)=>h?e.createElement(ne.x,{key:h.label,paddingLeft:A===0?0:1},e.createElement(le.h,{onClick:h.onClick,label:h.label,noBorder:!0,icon:h.icon})):null))))};z.propTypes={id:M().number.isRequired,name:M().string.isRequired,description:M().string.isRequired,usersCount:M().number.isRequired,icons:M().array.isRequired,rowIndex:M().number.isRequired,canUpdate:M().bool},z.defaultProps={canUpdate:!1};var se=z,oe=t(97889);const re={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var ie=(a,m)=>(0,oe.ZP)(a,s=>{switch(m.type){case"ON_REMOVE_ROLES":{s.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{s.shouldRefetchData=!0,s.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{s.shouldRefetchData=!1,s.roleToDelete=null,s.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{s.roleToDelete=m.id;break}default:return s}});const de=({canCreate:a,canDelete:m,canUpdate:s,refetchRoles:O})=>{const{formatMessage:r}=(0,k.Z)(),{formatAPIError:W}=(0,n.So)(),E=(0,n.lm)(),[P,x]=(0,e.useState)(!1),{push:g}=(0,q.k6)(),[{selectedRoles:h,showModalConfirmButtonLoading:A,roleToDelete:X},U]=(0,e.useReducer)(ie,re),{post:G}=(0,n.tg)(),Y=async()=>{try{U({type:"ON_REMOVE_ROLES"}),await G("/admin/roles/batch-delete",{ids:[X]}),await O(),U({type:"RESET_DATA_TO_DELETE"})}catch(l){E({type:"warning",message:W(l)})}B()},K=(0,e.useCallback)(l=>{g(`/settings/roles/duplicate/${l}`)},[g]),$=()=>g("/settings/roles/new"),F=(0,e.useCallback)(l=>{U({type:"SET_ROLE_TO_DELETE",id:l}),B()},[]),B=()=>x(l=>!l),f=(0,e.useCallback)(l=>{g(`/settings/roles/${l}`)},[g]),S=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),C.usersCount?E({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):F(C.id)},[E,F]),w=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),K(C.id)},[K]),me=(0,e.useCallback)(l=>[...a?[{onClick:C=>w(C,l),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(J.Z,null)}]:[],...s?[{onClick:()=>f(l.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(R.Z,null)}]:[],...m?[{onClick:C=>S(C,l),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(H.Z,null)}]:[]],[r,S,w,f,a,s,m]);return{handleNewRoleClick:$,getIcons:me,selectedRoles:h,isWarningDeleteAllOpened:P,showModalConfirmButtonLoading:A,handleToggleModal:B,handleDeleteData:Y}};var ce=()=>{const{formatMessage:a}=(0,k.Z)();(0,n.go)();const m=(0,i.v9)(c._),[{query:s}]=(0,n.Kx)(),{isLoading:O,allowedActions:{canCreate:r,canDelete:W,canRead:E,canUpdate:P}}=(0,n.ss)(m.settings.roles),{roles:x,isLoading:g,refetch:h}=(0,_.F)({filters:s?._q?{name:{$containsi:s._q}}:void 0},{cacheTime:0,enabled:!O&&E}),{handleNewRoleClick:A,getIcons:X,isWarningDeleteAllOpened:U,showModalConfirmButtonLoading:G,handleToggleModal:Y,handleDeleteData:K}=de({refetchRoles:h,canCreate:r,canDelete:W,canUpdate:P}),$=x.length+1,F=6;if(O)return e.createElement(u.o,null,e.createElement(n.dO,null));const B=a({id:"global.roles",defaultMessage:"roles"});return e.createElement(u.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(I.T,{primaryAction:r?e.createElement(j.z,{onClick:A,startIcon:e.createElement(b.Z,null),size:"S"},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:B,subtitle:a({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),E&&e.createElement(v.Z,{startActions:e.createElement(n.m,{label:a({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:B})})}),E&&e.createElement(y.D,null,e.createElement(o.i,{colCount:F,rowCount:$,footer:r?e.createElement(Z.c,{onClick:A,icon:e.createElement(b.Z,null)},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(L.h,null,e.createElement(D.Tr,{"aria-rowindex":1},e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.name",defaultMessage:"Name"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.description",defaultMessage:"Description"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.users",defaultMessage:"Users"}))),e.createElement(d.Th,null,e.createElement(Q.T,null,a({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(V.p,null,x?.map((f,S)=>e.createElement(se,{key:f.id,id:f.id,name:f.name,description:f.description,usersCount:f.usersCount,icons:X(f),rowIndex:S+2,canUpdate:P})))),!$&&!g&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:U,onConfirm:K,isConfirmButtonLoading:G,onToggleDialog:Y}))},ue=()=>{const a=(0,i.v9)(c._);return e.createElement(n.O4,{permissions:a.settings.roles.main},e.createElement(ce,null))}},95181:function(N,p,t){t.d(p,{Z:function(){return i}});var e=t(74512),n=t(84642);const i=({startActions:c,endActions:u})=>!c&&!u?null:(0,e.jsxs)(n.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,e.jsx)(n.k,{gap:2,wrap:"wrap",children:c}),(0,e.jsx)(n.k,{gap:2,shrink:0,wrap:"wrap",children:u})]})},22116:function(N,p,t){t.d(p,{c:function(){return y}});var e=t(74512),n=t(8471),i=t(77981),c=t(2775),u=t(84642),I=t(8365);const j=(0,n.ZP)(i.x)`
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86409:function(N,v,t){t.d(v,{F:function(){return u}});var e=t(32735),n=t(61489),i=t(67879),c=t(20108);const u=(I={},j={})=>{const{id:p="",...y}=I,{get:o}=(0,n.kY)(),{locale:Z}=(0,i.Z)(),L=(0,n.Xe)(Z,{sensitivity:"base"}),{data:D,error:d,isError:T,isLoading:Q,refetch:V}=(0,c.useQuery)(["roles",p,y],async()=>{const{data:R}=await o(`/admin/roles/${p??""}`,{params:y});return R},j);return{roles:e.useMemo(()=>{let R=[];return p&&D?R=[D.data]:Array.isArray(D?.data)&&(R=D.data),[...R].sort((H,b)=>L.compare(H.name,b.name))},[D,p,L]),error:d,isError:T,isLoading:Q,refetch:V}}},32239:function(N,v,t){t.r(v),t.d(v,{default:function(){return ue}});var e=t(32735),n=t(61489),i=t(15062),c=t(30305),u=t(95162),I=t(64092),j=t(91779),p=t(95181),y=t(56932),o=t(23699),Z=t(22116),L=t(41013),D=t(45037),d=t(27947),T=t(8365),Q=t(99320),V=t(1690),J=t(94958),R=t(63318),H=t(94997),b=t(82064),k=t(67879),q=t(53038),_=t(86409),ee=()=>"todo empty role",te=t(84642),ne=t(77981),le=t(14763),ae=t(60216),M=t.n(ae);const z=({id:a,name:m,description:s,usersCount:O,icons:r,rowIndex:W,canUpdate:E})=>{const{formatMessage:P}=(0,k.Z)(),[,x]=r,g=P({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:O});return e.createElement(D.Tr,{"aria-rowindex":W,key:a,...E?(0,n.X7)({fn:x.onClick}):{}},e.createElement(d.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},m)),e.createElement(d.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},s)),e.createElement(d.Td,null,e.createElement(T.Z,{textColor:"neutral800"},g)),e.createElement(d.Td,null,e.createElement(te.k,{justifyContent:"flex-end",...n.UW},r.map((h,A)=>h?e.createElement(ne.x,{key:h.label,paddingLeft:A===0?0:1},e.createElement(le.h,{onClick:h.onClick,label:h.label,noBorder:!0,icon:h.icon})):null))))};z.propTypes={id:M().number.isRequired,name:M().string.isRequired,description:M().string.isRequired,usersCount:M().number.isRequired,icons:M().array.isRequired,rowIndex:M().number.isRequired,canUpdate:M().bool},z.defaultProps={canUpdate:!1};var se=z,oe=t(97889);const re={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var ie=(a,m)=>(0,oe.ZP)(a,s=>{switch(m.type){case"ON_REMOVE_ROLES":{s.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{s.shouldRefetchData=!0,s.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{s.shouldRefetchData=!1,s.roleToDelete=null,s.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{s.roleToDelete=m.id;break}default:return s}});const de=({canCreate:a,canDelete:m,canUpdate:s,refetchRoles:O})=>{const{formatMessage:r}=(0,k.Z)(),{formatAPIError:W}=(0,n.So)(),E=(0,n.lm)(),[P,x]=(0,e.useState)(!1),{push:g}=(0,q.k6)(),[{selectedRoles:h,showModalConfirmButtonLoading:A,roleToDelete:X},U]=(0,e.useReducer)(ie,re),{post:G}=(0,n.tg)(),Y=async()=>{try{U({type:"ON_REMOVE_ROLES"}),await G("/admin/roles/batch-delete",{ids:[X]}),await O(),U({type:"RESET_DATA_TO_DELETE"})}catch(l){E({type:"warning",message:W(l)})}B()},K=(0,e.useCallback)(l=>{g(`/settings/roles/duplicate/${l}`)},[g]),$=()=>g("/settings/roles/new"),F=(0,e.useCallback)(l=>{U({type:"SET_ROLE_TO_DELETE",id:l}),B()},[]),B=()=>x(l=>!l),f=(0,e.useCallback)(l=>{g(`/settings/roles/${l}`)},[g]),S=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),C.usersCount?E({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):F(C.id)},[E,F]),w=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),K(C.id)},[K]),me=(0,e.useCallback)(l=>[...a?[{onClick:C=>w(C,l),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(J.Z,null)}]:[],...s?[{onClick:()=>f(l.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(R.Z,null)}]:[],...m?[{onClick:C=>S(C,l),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(H.Z,null)}]:[]],[r,S,w,f,a,s,m]);return{handleNewRoleClick:$,getIcons:me,selectedRoles:h,isWarningDeleteAllOpened:P,showModalConfirmButtonLoading:A,handleToggleModal:B,handleDeleteData:Y}};var ce=()=>{const{formatMessage:a}=(0,k.Z)();(0,n.go)();const m=(0,i.v9)(c._),[{query:s}]=(0,n.Kx)(),{isLoading:O,allowedActions:{canCreate:r,canDelete:W,canRead:E,canUpdate:P}}=(0,n.ss)(m.settings.roles),{roles:x,isLoading:g,refetch:h}=(0,_.F)({filters:s?._q?{name:{$containsi:s._q}}:void 0},{cacheTime:0,enabled:!O&&E}),{handleNewRoleClick:A,getIcons:X,isWarningDeleteAllOpened:U,showModalConfirmButtonLoading:G,handleToggleModal:Y,handleDeleteData:K}=de({refetchRoles:h,canCreate:r,canDelete:W,canUpdate:P}),$=x.length+1,F=6;if(O)return e.createElement(u.o,null,e.createElement(n.dO,null));const B=a({id:"global.roles",defaultMessage:"roles"});return e.createElement(u.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(I.T,{primaryAction:r?e.createElement(j.z,{onClick:A,startIcon:e.createElement(b.Z,null),size:"S"},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:B,subtitle:a({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),E&&e.createElement(p.Z,{startActions:e.createElement(n.m,{label:a({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:B})})}),E&&e.createElement(y.D,null,e.createElement(o.i,{colCount:F,rowCount:$,footer:r?e.createElement(Z.c,{onClick:A,icon:e.createElement(b.Z,null)},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(L.h,null,e.createElement(D.Tr,{"aria-rowindex":1},e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.name",defaultMessage:"Name"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.description",defaultMessage:"Description"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.users",defaultMessage:"Users"}))),e.createElement(d.Th,null,e.createElement(Q.T,null,a({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(V.p,null,x?.map((f,S)=>e.createElement(se,{key:f.id,id:f.id,name:f.name,description:f.description,usersCount:f.usersCount,icons:X(f),rowIndex:S+2,canUpdate:P})))),!$&&!g&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:U,onConfirm:K,isConfirmButtonLoading:G,onToggleDialog:Y}))},ue=()=>{const a=(0,i.v9)(c._);return e.createElement(n.O4,{permissions:a.settings.roles.main},e.createElement(ce,null))}},95181:function(N,v,t){t.d(v,{Z:function(){return i}});var e=t(74512),n=t(84642);const i=({startActions:c,endActions:u})=>!c&&!u?null:(0,e.jsxs)(n.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,e.jsx)(n.k,{gap:2,wrap:"wrap",children:c}),(0,e.jsx)(n.k,{gap:2,shrink:0,wrap:"wrap",children:u})]})},22116:function(N,v,t){t.d(v,{c:function(){return y}});var e=t(74512),n=t(8471),i=t(77981),c=t(2775),u=t(84642),I=t(8365);const j=(0,n.ZP)(i.x)`
2
2
  height: ${24/16}rem;
3
3
  width: ${24/16}rem;
4
4
  border-radius: 50%;
@@ -14,9 +14,9 @@
14
14
  svg path {
15
15
  fill: ${({theme:o})=>o.colors.primary600};
16
16
  }
17
- `,v=(0,n.ZP)(i.x)`
17
+ `,p=(0,n.ZP)(i.x)`
18
18
  border-radius: 0 0 ${({theme:o})=>o.borderRadius} ${({theme:o})=>o.borderRadius};
19
19
  display: block;
20
20
  width: 100%;
21
21
  border: none;
22
- `,y=({children:o,icon:Z,...L})=>(0,e.jsxs)("div",{children:[(0,e.jsx)(c.i,{}),(0,e.jsx)(v,{as:"button",background:"primary100",padding:5,...L,children:(0,e.jsxs)(u.k,{children:[(0,e.jsx)(j,{"aria-hidden":!0,background:"primary200",children:Z}),(0,e.jsx)(i.x,{paddingLeft:3,children:(0,e.jsx)(I.Z,{variant:"pi",fontWeight:"bold",textColor:"primary600",children:o})})]})})]})}}]);
22
+ `,y=({children:o,icon:Z,...L})=>(0,e.jsxs)("div",{children:[(0,e.jsx)(c.i,{}),(0,e.jsx)(p,{as:"button",background:"primary100",padding:5,...L,children:(0,e.jsxs)(u.k,{children:[(0,e.jsx)(j,{"aria-hidden":!0,background:"primary200",children:Z}),(0,e.jsx)(i.x,{paddingLeft:3,children:(0,e.jsx)(I.Z,{variant:"pi",fontWeight:"bold",textColor:"primary600",children:o})})]})})]})}}]);
@@ -0,0 +1,19 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{97108:function(L,i,e){e.d(i,{R:function(){return r}});var t=e(32735),l=e(61489),o=e(20108);function r(c={},a={}){const{id:n="",...g}=c,{get:u}=(0,l.kY)(),{data:s,isError:P,isLoading:D,refetch:y}=(0,o.useQuery)(["users",n,g],async()=>{const{data:{data:f}}=await u(`/admin/users/${n}`,{params:g});return f},a);return{users:t.useMemo(()=>n&&s?[s]:Array.isArray(s?.results)?s.results:[],[s,n]),pagination:t.useMemo(()=>s?.pagination??null,[s?.pagination]),isLoading:D,isError:P,refetch:y}}},59092:function(L,i,e){var t=e(32735),l=e(77981),o=e(91779),r=e(61489),c=e(68527),a=e(60216),n=e.n(a),g=e(67879);const u=({displayedFilters:s})=>{const[P,D]=(0,t.useState)(!1),{formatMessage:y}=(0,g.Z)(),p=(0,t.useRef)(),f=()=>{D(T=>!T)};return t.createElement(t.Fragment,null,t.createElement(l.x,{paddingTop:1,paddingBottom:1},t.createElement(o.z,{variant:"tertiary",ref:p,startIcon:t.createElement(c.Z,null),onClick:f,size:"S"},y({id:"app.utils.filters",defaultMessage:"Filters"})),P&&t.createElement(r.J5,{displayedFilters:s,isVisible:P,onToggle:f,source:p})),t.createElement(r.W$,{filtersSchema:s}))};u.propTypes={displayedFilters:n().arrayOf(n().shape({name:n().string.isRequired,metadatas:n().shape({label:n().string}),fieldSchema:n().shape({type:n().string})})).isRequired},i.Z=u},99528:function(L,i,e){e.d(i,{W:function(){return pe},Z:function(){return Ze}});var t=e(32735),l=e(95162),o=e(64092),r=e(95181),c=e(56932),a=e(61489),n=e(33348),g=e.n(n),u=e(67879),s=e(20108),P=e(15062),D=e(53038),y=e(97108),p=e(9592),f=e(30305),T=e(59092),R=e(91779),ae=e(50720),ne=e(60216),E=e.n(ne);const q=({onClick:d})=>{const{formatMessage:M}=(0,u.Z)();return t.createElement(R.z,{onClick:d,startIcon:t.createElement(ae.Z,null),size:"S"},M({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}))};q.propTypes={onClick:E().func.isRequired};var Z=e(1690),se=e(45037),J=e(27947),re=e(96669),b=e(8365),F=e(84642),O=e(14763),$=e(77981),fe=e(63318),Me=e(94997),le=e(90869);const oe=({canDelete:d,headers:M,entriesToDelete:I,onClickDelete:k,onSelectRow:N,withMainAction:j,withBulkActions:W,rows:B})=>{const{push:C,location:{pathname:V}}=(0,D.k6)(),{formatMessage:A}=(0,u.Z)();return t.createElement(Z.p,null,B.map(m=>{const z=I.findIndex(S=>S===m.id)!==-1;return t.createElement(se.Tr,{key:m.id,...(0,a.X7)({fn:()=>C(`${V}/${m.id}`),condition:W})},j&&t.createElement(J.Td,{...a.UW},t.createElement(re.C,{"aria-label":A({id:"app.component.table.select.one-entry",defaultMessage:"Select {target}"},{target:(0,le.Pp)(m.firstname,m.lastname)}),checked:z,onChange:()=>{N({name:m.id,value:!z})}})),M.map(({key:S,cellFormatter:H,name:K,...Y})=>t.createElement(J.Td,{key:S},typeof H=="function"?H(m,{key:S,name:K,formatMessage:A,...Y}):t.createElement(b.Z,{textColor:"neutral800"},m[K]||"-"))),W&&t.createElement(J.Td,null,t.createElement(F.k,{justifyContent:"end"},t.createElement(O.h,{onClick:()=>C(`${V}/${m.id}`),label:A({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:(0,le.Pp)(m.firstname,m.lastname)}),noBorder:!0,icon:t.createElement(fe.Z,null)}),d&&t.createElement($.x,{paddingLeft:1,...a.UW},t.createElement(O.h,{onClick:()=>k(m.id),label:A({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:(0,le.Pp)(m.firstname,m.lastname)}),noBorder:!0,icon:t.createElement(Me.Z,null)})))))}))};oe.defaultProps={canDelete:!1,entriesToDelete:[],onClickDelete(){},onSelectRow(){},rows:[],withBulkActions:!1,withMainAction:!1},oe.propTypes={canDelete:E().bool,entriesToDelete:E().array,headers:E().array.isRequired,onClickDelete:E().func,onSelectRow:E().func,rows:E().array,withBulkActions:E().bool,withMainAction:E().bool};var ve=oe,he=e(21223),ye=e(98887),Pe=e(87674),me=e(10710),ie=e(97037),De=e(74973),Ce=e(79129),Oe=e(2748),Ae=e(92802),Le=e(47577),Te=e(18703),X=e(24346);const ue={firstname:"",lastname:"",email:"",roles:[]},Re=[],Ie=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0}]],Ue=X.Ry().shape({firstname:X.Z_().trim().required(a.I0.required),lastname:X.Z_(),email:X.Z_().email(a.I0.email).required(a.I0.required),roles:X.IX().min(1,a.I0.required).required(a.I0.required)}),Be={create:{buttonSubmitLabel:{id:"app.containers.Users.ModalForm.footer.button-success",defaultMessage:"Invite user"},isDisabled:!1,next:"magic-link"},"magic-link":{buttonSubmitLabel:{id:"global.finish",defaultMessage:"Finish"},isDisabled:!0,next:null}},Ee=({onSuccess:d,onToggle:M})=>{const[I,k]=(0,t.useState)("create"),[N,j]=(0,t.useState)(!1),[W,B]=(0,t.useState)(null),{formatMessage:C}=(0,u.Z)(),V=(0,a.lm)(),{lockApp:A,unlockApp:m}=(0,a.o1)(),{post:z}=(0,a.kY)(),S=(0,p.c)(Re,async()=>(await e.e(311).then(e.bind(e,40311))).ROLE_LAYOUT,{combine(h,x){return[...h,x]},defaultValue:[]}),H=(0,p.c)(ue,async()=>(await e.e(311).then(e.bind(e,40311))).FORM_INITIAL_VALUES,{combine(h,x){return{...h,...x}},defaultValue:ue}),K=(0,p.c)(Le.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE),Y=(0,s.useMutation)(h=>z("/admin/users",h),{async onSuccess({data:h}){B(h.data.registrationToken),await d(),te(),j(!1)},onError(h){throw j(!1),V({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),h},onSettled(){m()}}),w=C({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}),ee=async(h,{setErrors:x})=>{A(),j(!0);try{await Y.mutateAsync(h)}catch(G){m(),G?.response?.data?.error.message==="Email already taken"&&x({email:G.response.data.error.message})}},te=()=>{v?k(v):M()},{buttonSubmitLabel:_,isDisabled:Q,next:v}=Be[I],be=I==="create"?t.createElement(R.z,{type:"submit",loading:N},C(_)):t.createElement(R.z,{type:"button",loading:N,onClick:M},C(_));return K?t.createElement(he.P,{onClose:M,labelledBy:"title"},t.createElement(ye.x,null,t.createElement(Ce.O,{label:w},t.createElement(Oe.$,{isCurrent:!0},w))),t.createElement(Ae.J9,{enableReinitialize:!0,initialValues:H,onSubmit:ee,validationSchema:Ue,validateOnChange:!1},({errors:h,handleChange:x,values:G})=>t.createElement(a.l0,null,t.createElement(Pe.f,null,t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},I!=="create"&&t.createElement(K,{registrationToken:W}),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},C({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"User details"})),t.createElement($.x,{paddingTop:4},t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:1},t.createElement(me.r,{gap:5},Ie.map(de=>de.map(U=>t.createElement(ie.P,{key:U.name,...U.size},t.createElement(a.jm,{...U,disabled:Q,error:h[U.name],onChange:x,value:G[U.name]})))))))),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},C({id:"global.roles",defaultMessage:"User's role"})),t.createElement($.x,{paddingTop:4},t.createElement(me.r,{gap:5},t.createElement(ie.P,{col:6,xs:12},t.createElement(Te.Z,{disabled:Q,error:h.roles,onChange:x,value:G.roles})),S.map(de=>de.map(U=>t.createElement(ie.P,{key:U.name,...U.size},t.createElement(a.jm,{...U,disabled:Q,onChange:x,value:G[U.name]}))))))))),t.createElement(De.m,{startActions:t.createElement(R.z,{variant:"tertiary",onClick:M,type:"button"},C({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:be})))):null};Ee.propTypes={onToggle:E().func.isRequired,onSuccess:E().func.isRequired};var Se=Ee;const ce=({pagination:d})=>t.createElement($.x,{paddingTop:4},t.createElement(F.k,{alignItems:"flex-end",justifyContent:"space-between"},t.createElement(a.v4,null),t.createElement(a.tU,{pagination:d})));ce.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},ce.propTypes={pagination:E().shape({page:E().number,pageCount:E().number,pageSize:E().number,total:E().number})};var xe=ce,We=[{name:"firstname",metadatas:{label:"Firstname"},fieldSchema:{type:"string"}},{name:"lastname",metadatas:{label:"Lastname"},fieldSchema:{type:"string"}},{name:"email",metadatas:{label:"Email"},fieldSchema:{type:"email"}},{name:"username",metadatas:{label:"Username"},fieldSchema:{type:"string"}},{name:"isActive",metadatas:{label:"Active user"},fieldSchema:{type:"boolean"}}],Ke=[{name:"firstname",key:"firstname",metadatas:{label:{id:"Settings.permissions.users.firstname",defaultMessage:"Firstname"},sortable:!0}},{name:"lastname",key:"lastname",metadatas:{label:{id:"Settings.permissions.users.lastname",defaultMessage:"Lastname"},sortable:!0}},{key:"email",name:"email",metadatas:{label:{id:"Settings.permissions.users.email",defaultMessage:"Email"},sortable:!0}},{key:"roles",name:"roles",metadatas:{label:{id:"Settings.permissions.users.roles",defaultMessage:"Roles"},sortable:!1},cellFormatter({roles:d},{formatMessage:M}){return t.createElement(b.Z,{textColor:"neutral800"},d.map(I=>M({id:`Settings.permissions.users.${I.code}`,defaultMessage:I.name})).join(`,
2
+ `))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:d},{formatMessage:M}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:d,variant:d?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},M({id:d?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:d?"Active":"Inactive"})))}}];const ge=["ee","license-limit-info"],pe=()=>{const{post:d}=(0,a.kY)(),{formatAPIError:M}=(0,a.So)(),[I,k]=(0,t.useState)(!1),N=(0,P.v9)(f._),{allowedActions:{canCreate:j,canDelete:W,canRead:B}}=(0,a.ss)(N.settings.users),C=(0,s.useQueryClient)(),V=(0,a.lm)(),{formatMessage:A}=(0,u.Z)(),{search:m}=(0,D.TH)();(0,a.go)();const{users:z,pagination:S,isError:H,isLoading:K,refetch:Y}=(0,y.R)(g().parse(m,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:B}),w=(0,p.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=Ke.map(v=>({...v,metadatas:{...v.metadatas,label:A(v.metadatas.label)}})),te=A({id:"global.users",defaultMessage:"Users"}),_=()=>{k(v=>!v)},Q=(0,s.useMutation)(async v=>{await d("/admin/users/batch-delete",{ids:v})},{async onSuccess(){await Y(),await C.refetchQueries(ge)},onError(v){V({type:"warning",message:{id:"notification.error",message:M(v),defaultMessage:"An error occured"}})}});return w?t.createElement(l.o,{"aria-busy":K},t.createElement(a.SL,{name:"Users"}),t.createElement(o.T,{primaryAction:j&&t.createElement(w,{onClick:_}),title:te,subtitle:A({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),B&&t.createElement(r.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:A({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:te})}),t.createElement(T.Z,{displayedFilters:We}))}),t.createElement(c.D,{canRead:B},!B&&t.createElement(a.ZF,null),H&&t.createElement("div",null,"TODO: An error occurred"),B&&t.createElement(t.Fragment,null,t.createElement(a.tM,{contentType:"Users",isLoading:K,onConfirmDeleteAll:Q.mutateAsync,onConfirmDelete:v=>Q.mutateAsync([v]),headers:ee,rows:z,withBulkActions:!0,withMainAction:W},t.createElement(ve,{canDelete:W,headers:ee,rows:z,withBulkActions:!0,withMainAction:W})),S&&t.createElement(xe,{pagination:S}))),I&&t.createElement(Se,{onSuccess:async()=>{await Y(),await C.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const d=(0,p.c)(pe,async()=>(await e.e(2801).then(e.bind(e,12801))).UserListPageEE);return d?t.createElement(d,null):null}},25691:function(L,i,e){e.r(i);var t=e(32735),l=e(61489),o=e(15062),r=e(30305),c=e(99528);const a=()=>{const n=(0,o.v9)(r._);return t.createElement(l.O4,{permissions:n.settings.users.main},t.createElement(c.Z,null))};i.default=a},84024:function(L,i,e){var t=e(32735),l=e(14763),o=e(61489),r=e(94958),c=e(60216),a=e.n(c),n=e(67879);const g=({children:u,target:s})=>{const P=(0,o.lm)(),{formatMessage:D}=(0,n.Z)(),{copy:y}=(0,o.VP)(),p=D({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),f=async()=>{await y(s)&&P({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(l.h,{label:p,noBorder:!0,icon:t.createElement(r.Z,null),onClick:f}),title:s,titleEllipsis:!0,subtitle:u,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};g.propTypes={children:a().oneOfType([a().element,a().string]).isRequired,target:a().string.isRequired},i.Z=g},47577:function(L,i,e){e.d(i,{A:function(){return n}});var t=e(32735),l=e(60216),o=e.n(l),r=e(67879),c=e(35231),a=e(84024);const n=({registrationToken:g})=>{const{formatMessage:u}=(0,r.Z)(),s=`${window.location.origin}${c.Z}auth/register?registrationToken=${g}`;return t.createElement(a.Z,{target:s},u({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:o().string}},18703:function(L,i,e){var t=e(32735),l=e(16773),o=e(40260),r=e(61489),c=e(75760),a=e(60216),n=e.n(a),g=e(67879),u=e(20108),s=e(8471);const P=(0,s.F4)`
3
+ from {
4
+ transform: rotate(0deg);
5
+ }
6
+ to {
7
+ transform: rotate(359deg);
8
+ }
9
+ `,D=s.ZP.div`
10
+ animation: ${P} 2s infinite linear;
11
+ `,y=()=>t.createElement(D,null,t.createElement(c.Z,null)),p=async()=>{const{get:T}=(0,r.tg)(),{data:R}=await T("/admin/roles");return R.data},f=({disabled:T,error:R,onChange:ae,value:ne})=>{const{status:E,data:q}=(0,u.useQuery)(["roles"],p,{staleTime:5e4}),{formatMessage:Z}=(0,g.Z)(),se=R?Z({id:R,defaultMessage:R}):"",J=Z({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),re=Z({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),b=Z({id:"app.components.Select.placeholder",defaultMessage:"Select"}),F=E==="loading"?t.createElement(y,null):void 0;return t.createElement(l.P,{id:"roles",disabled:T,error:se,hint:re,label:J,name:"roles",onChange:O=>{ae({target:{name:"roles",value:O}})},placeholder:b,multi:!0,startIcon:F,value:ne.map(O=>O.toString()),withTags:!0,required:!0},(q||[]).map(O=>t.createElement(o.W,{key:O.id,value:O.id.toString()},Z({id:`global.${O.code}`,defaultMessage:O.name}))))};f.defaultProps={disabled:!1,error:void 0},f.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=f},95181:function(L,i,e){e.d(i,{Z:function(){return o}});var t=e(74512),l=e(84642);const o=({startActions:r,endActions:c})=>!r&&!c?null:(0,t.jsxs)(l.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,t.jsx)(l.k,{gap:2,wrap:"wrap",children:r}),(0,t.jsx)(l.k,{gap:2,shrink:0,wrap:"wrap",children:c})]})},79129:function(L,i,e){e.d(i,{O:function(){return u}});var t=e(74512),l=e(32735),o=e(8471),r=e(77981),c=e(8365);const a=()=>(0,t.jsx)(r.x,{"aria-hidden":!0,paddingLeft:1,paddingRight:1,children:(0,t.jsx)(c.Z,{variant:"pi",textColor:"neutral500",children:"/"})});a.displayName="Divider";var n=e(84642);const g=(0,o.ZP)(n.k)`
12
+ // CrumbLinks do have padding-x, because they need to have a
13
+ // interaction effect, which mis-aligns the breadcrumbs on the left.
14
+ // This normalizes the behavior by moving the first item to left by
15
+ // the same amount it has inner padding
16
+ :first-child {
17
+ margin-left: ${({theme:s})=>`calc(-1*${s.spaces[2]})`};
18
+ }
19
+ `,u=({label:s,children:P,...D})=>{const y=l.Children.toArray(P);return(0,t.jsx)(r.x,{"aria-label":s,...D,children:(0,t.jsx)(g,{as:"ol",children:l.Children.map(y,(p,f)=>{const T=y.length>1&&f+1<y.length;return(0,t.jsxs)(n.k,{inline:!0,as:"li",children:[p,T&&(0,t.jsx)(a,{})]})})})})};u.displayName="Breadcrumbs"},2748:function(L,i,e){e.d(i,{$:function(){return r}});var t=e(74512),l=e(77981),o=e(8365);const r=({children:c,isCurrent:a=!1,...n})=>(0,t.jsx)(l.x,{paddingLeft:2,paddingRight:2,paddingTop:1,paddingBottom:1,children:(0,t.jsx)(o.Z,{variant:"pi",textColor:"neutral800",fontWeight:a?"bold":"normal","aria-current":a,...n,children:c})});r.displayName="Crumb"},50720:function(L,i,e){e.d(i,{Z:function(){return o}});var t=e(74512);const l=r=>(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...r,children:[(0,t.jsx)("path",{fill:"#32324D",d:"M0 2.8A.8.8 0 0 1 .8 2h22.4a.8.8 0 0 1 .8.8v2.71a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2.8Z"}),(0,t.jsx)("path",{fill:"#32324D",d:"M1.922 7.991C.197 6.675 0 6.252 0 5.289h23.953c.305 1.363-1.594 2.506-2.297 3.125-1.953 1.363-6.253 4.36-7.828 5.45-1.575 1.09-3.031.455-3.562 0-2.063-1.41-6.62-4.557-8.344-5.873ZM22.8 18H1.2c-.663 0-1.2.471-1.2 1.053v1.894C0 21.529.537 22 1.2 22h21.6c.663 0 1.2-.471 1.2-1.053v-1.894c0-.582-.537-1.053-1.2-1.053Z"}),(0,t.jsx)("path",{fill:"#32324D",d:"M0 9.555v10.972h24V9.554c-2.633 1.95-8.367 6.113-9.96 7.166-1.595 1.052-3.352.438-4.032 0L0 9.555Z"})]}),o=l}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{79494:function(l,e,t){t.r(e);var s=t(32735),_=t(43806),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return s.createElement(_.O4,{permissions:r.settings["api-tokens"].create},s.createElement(a.Z,null))};e.default=i}}]);
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{79494:function(l,e,t){t.r(e);var s=t(32735),_=t(61489),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return s.createElement(_.O4,{permissions:r.settings["api-tokens"].create},s.createElement(a.Z,null))};e.default=i}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{77238:function(l,s,t){t.r(s);var _=t(32735),e=t(43806),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return _.createElement(e.O4,{permissions:r.settings["api-tokens"].read},_.createElement(a.Z,null))};s.default=i}}]);
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{77238:function(l,s,t){t.r(s);var _=t(32735),e=t(61489),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return _.createElement(e.O4,{permissions:r.settings["api-tokens"].read},_.createElement(a.Z,null))};s.default=i}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(K,E,t){t.d(E,{Z:function(){return p}});var e=t(32735),a=t(1690),P=t(45037),u=t(27947),k=t(8365),V=t(84642),l=t(43806),b=t(60216),n=t.n(b),S=t(67879),I=t(53038),D=t(77981),O=t(14763),v=t(94997);const N=({tokenName:s,onClickDelete:i,tokenType:y})=>{const{formatMessage:g}=(0,S.Z)(),{trackUsage:T}=(0,l.rS)(),[f,c]=(0,e.useState)(!1),C=()=>{c(!1),T("willDeleteToken",{tokenType:y}),i()};return e.createElement(D.x,{paddingLeft:1,onClick:d=>d.stopPropagation()},e.createElement(O.h,{onClick:()=>{c(!0)},label:g({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${s}`}),name:"delete",noBorder:!0,icon:e.createElement(v.Z,null)}),e.createElement(l.QH,{onToggleDialog:()=>c(!1),onConfirm:C,isOpen:f}))};N.propTypes={tokenName:n().string.isRequired,onClickDelete:n().func.isRequired,tokenType:n().string.isRequired};var w=N,Q=t(10364),J=t(8471);const $={edit:{id:"app.component.table.edit",defaultMessage:"Edit {target}"},read:{id:"app.component.table.read",defaultMessage:"Read {target}"}},z=(0,J.ZP)(l.rU)`
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(K,E,t){t.d(E,{Z:function(){return p}});var e=t(32735),a=t(1690),P=t(45037),u=t(27947),k=t(8365),V=t(84642),l=t(61489),b=t(60216),n=t.n(b),S=t(67879),I=t(53038),D=t(77981),O=t(14763),v=t(94997);const N=({tokenName:s,onClickDelete:i,tokenType:y})=>{const{formatMessage:g}=(0,S.Z)(),{trackUsage:T}=(0,l.rS)(),[f,c]=(0,e.useState)(!1),C=()=>{c(!1),T("willDeleteToken",{tokenType:y}),i()};return e.createElement(D.x,{paddingLeft:1,onClick:d=>d.stopPropagation()},e.createElement(O.h,{onClick:()=>{c(!0)},label:g({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${s}`}),name:"delete",noBorder:!0,icon:e.createElement(v.Z,null)}),e.createElement(l.QH,{onToggleDialog:()=>c(!1),onConfirm:C,isOpen:f}))};N.propTypes={tokenName:n().string.isRequired,onClickDelete:n().func.isRequired,tokenType:n().string.isRequired};var w=N,Q=t(10364),J=t(8471);const $={edit:{id:"app.component.table.edit",defaultMessage:"Edit {target}"},read:{id:"app.component.table.read",defaultMessage:"Read {target}"}},z=(0,J.ZP)(l.rU)`
2
2
  svg {
3
3
  path {
4
4
  fill: ${({theme:s})=>s.colors.neutral500};
@@ -13,4 +13,4 @@
13
13
  }
14
14
  }
15
15
  }
16
- `,L=({tokenName:s,tokenId:i,buttonType:y,children:g})=>{const{formatMessage:T}=(0,S.Z)(),{location:{pathname:f}}=(0,I.k6)();return e.createElement(z,{to:`${f}/${i}`,title:T($[y],{target:s})},g)};L.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired,buttonType:n().string,children:n().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const m=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(Q.Z,null));m.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var U=m,F=t(63318);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(F.Z,null));A.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var H=A;const R=({permissions:s,headers:i,contentType:y,isLoading:g,tokens:T,onConfirmDelete:f,tokenType:c})=>{const{canDelete:C,canUpdate:d,canRead:B}=s,M=C||d||B,[{query:x}]=(0,l.Kx)(),{formatMessage:Z}=(0,S.Z)(),[,j]=x?x.sort.split(":"):"ASC",{push:W,location:{pathname:Y}}=(0,I.k6)(),{trackUsage:o}=(0,l.rS)(),X=T.sort((r,q)=>{const G=r.name.localeCompare(q.name);return j==="DESC"?-G:G});return e.createElement(l.tM,{headers:i,contentType:y,rows:T,withBulkActions:M,isLoading:g,onConfirmDelete:f},e.createElement(a.p,null,X.map(r=>e.createElement(P.Tr,{key:r.id,...(0,l.X7)({fn(){o("willEditTokenFromList",{tokenType:c}),W(`${Y}/${r.id}`)},condition:d})},e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},r.name)),e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},r.description)),e.createElement(u.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.createdAt)}))),e.createElement(u.Td,null,r.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:Z({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),M&&e.createElement(u.Td,null,e.createElement(V.k,{justifyContent:"end"},d&&e.createElement(H,{tokenName:r.name,tokenId:r.id}),!d&&B&&e.createElement(U,{tokenName:r.name,tokenId:r.id}),C&&e.createElement(w,{tokenName:r.name,onClickDelete:()=>f(r.id),tokenType:c})))))))};R.propTypes={tokens:n().array,permissions:n().shape({canRead:n().bool,canDelete:n().bool,canUpdate:n().bool}).isRequired,headers:n().arrayOf(n().shape({cellFormatter:n().func,key:n().string.isRequired,metadatas:n().shape({label:n().string.isRequired,sortable:n().bool}).isRequired,name:n().string.isRequired})),contentType:n().string.isRequired,isLoading:n().bool,onConfirmDelete:n().func,tokenType:n().string.isRequired},R.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var p=R},49756:function(K,E,t){t.d(E,{Z:function(){return e},f:function(){return a}});const e="api-token",a="transfer-token"},22614:function(K,E,t){t.r(E),t.d(E,{default:function(){return L}});var e=t(32735),a=t(43806),P=t(15062),u=t(30305),k=t(95162),V=t(64092),l=t(56932),b=t(82064),n=t(33348),S=t.n(n),I=t(67879),D=t(20108),O=t(53038),v=t(49756),N=t(12584),Q=[{name:"name",key:"name",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.name",defaultMessage:"Name"},sortable:!0}},{name:"description",key:"description",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.description",defaultMessage:"Description"},sortable:!1}},{name:"createdAt",key:"createdAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.createdAt",defaultMessage:"Created at"},sortable:!1}},{name:"lastUsedAt",key:"lastUsedAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.lastUsedAt",defaultMessage:"Last used"},sortable:!1}}],$=()=>{(0,a.go)();const h=(0,D.useQueryClient)(),{formatMessage:m}=(0,I.Z)(),U=(0,a.lm)(),F=(0,P.v9)(u._),{allowedActions:{canCreate:A,canDelete:H,canUpdate:R,canRead:p}}=(0,a.ss)(F.settings["api-tokens"]),{push:s}=(0,O.k6)(),{trackUsage:i}=(0,a.rS)(),{startSection:y}=(0,a.c1)(),g=e.useRef(y),{get:T,del:f}=(0,a.kY)(),{formatAPIError:c}=(0,a.So)();e.useEffect(()=>{g.current&&g.current("apiTokens")},[]),e.useEffect(()=>{s({search:S().stringify({sort:"name:ASC"},{encode:!1})})},[s]);const C=Q.map(o=>({...o,metadatas:{...o.metadatas,label:m(o.metadatas.label)}})),{data:d,isLoading:B}=(0,D.useQuery)(["api-tokens"],async()=>{i("willAccessTokenList",{tokenType:v.Z});const{data:{data:o}}=await T("/admin/api-tokens");return i("didAccessTokenList",{number:o.length,tokenType:v.Z}),o},{cacheTime:0,enabled:p,onError(o){U({type:"warning",message:c(o)})}}),M=B,x=(0,D.useMutation)(async o=>{await f(`/admin/api-tokens/${o}`)},{async onSuccess(){await h.invalidateQueries(["api-tokens"]),i("didDeleteToken")},onError(o){U({type:"warning",message:c(o)})}}),Z=d&&d.length>0,j=p&&Z,W=p&&!Z&&!A,Y=p&&!Z&&A;return e.createElement(k.o,{"aria-busy":M},e.createElement(a.SL,{name:"API Tokens"}),e.createElement(V.T,{title:m({id:"Settings.apiTokens.title",defaultMessage:"API Tokens"}),subtitle:m({id:"Settings.apiTokens.description",defaultMessage:"List of generated tokens to consume the API"}),primaryAction:A&&e.createElement(a.Qj,{"data-testid":"create-api-token-button",startIcon:e.createElement(b.Z,null),size:"S",onClick:()=>i("willAddTokenFromList",{tokenType:v.Z}),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.create",defaultMessage:"Create new API Token"}))}),e.createElement(l.D,null,!p&&e.createElement(a.ZF,null),j&&e.createElement(N.Z,{permissions:{canRead:p,canDelete:H,canUpdate:R},headers:C,contentType:"api-tokens",rows:d,isLoading:M,onConfirmDelete:o=>x.mutateAsync(o),tokens:d,tokenType:v.Z}),Y&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.addFirstToken",defaultMessage:"Add your first API Token"},action:e.createElement(a.Qj,{variant:"secondary",startIcon:e.createElement(b.Z,null),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.addNewToken",defaultMessage:"Add new API Token"}))}),W&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.emptyStateLayout",defaultMessage:"You don\u2019t have any content yet..."}})))},L=()=>{const h=(0,P.v9)(u._);return e.createElement(a.O4,{permissions:h.settings["api-tokens"].main},e.createElement($,null))}}}]);
16
+ `,L=({tokenName:s,tokenId:i,buttonType:y,children:g})=>{const{formatMessage:T}=(0,S.Z)(),{location:{pathname:f}}=(0,I.k6)();return e.createElement(z,{to:`${f}/${i}`,title:T($[y],{target:s})},g)};L.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired,buttonType:n().string,children:n().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const m=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(Q.Z,null));m.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var U=m,F=t(63318);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(F.Z,null));A.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var H=A;const R=({permissions:s,headers:i,contentType:y,isLoading:g,tokens:T,onConfirmDelete:f,tokenType:c})=>{const{canDelete:C,canUpdate:d,canRead:B}=s,M=C||d||B,[{query:x}]=(0,l.Kx)(),{formatMessage:Z}=(0,S.Z)(),[,j]=x?x.sort.split(":"):"ASC",{push:W,location:{pathname:Y}}=(0,I.k6)(),{trackUsage:o}=(0,l.rS)(),X=T.sort((r,q)=>{const G=r.name.localeCompare(q.name);return j==="DESC"?-G:G});return e.createElement(l.tM,{headers:i,contentType:y,rows:T,withBulkActions:M,isLoading:g,onConfirmDelete:f},e.createElement(a.p,null,X.map(r=>e.createElement(P.Tr,{key:r.id,...(0,l.X7)({fn(){o("willEditTokenFromList",{tokenType:c}),W(`${Y}/${r.id}`)},condition:d})},e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},r.name)),e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},r.description)),e.createElement(u.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.createdAt)}))),e.createElement(u.Td,null,r.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:Z({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),M&&e.createElement(u.Td,null,e.createElement(V.k,{justifyContent:"end"},d&&e.createElement(H,{tokenName:r.name,tokenId:r.id}),!d&&B&&e.createElement(U,{tokenName:r.name,tokenId:r.id}),C&&e.createElement(w,{tokenName:r.name,onClickDelete:()=>f(r.id),tokenType:c})))))))};R.propTypes={tokens:n().array,permissions:n().shape({canRead:n().bool,canDelete:n().bool,canUpdate:n().bool}).isRequired,headers:n().arrayOf(n().shape({cellFormatter:n().func,key:n().string.isRequired,metadatas:n().shape({label:n().string.isRequired,sortable:n().bool}).isRequired,name:n().string.isRequired})),contentType:n().string.isRequired,isLoading:n().bool,onConfirmDelete:n().func,tokenType:n().string.isRequired},R.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var p=R},49756:function(K,E,t){t.d(E,{Z:function(){return e},f:function(){return a}});const e="api-token",a="transfer-token"},22614:function(K,E,t){t.r(E),t.d(E,{default:function(){return L}});var e=t(32735),a=t(61489),P=t(15062),u=t(30305),k=t(95162),V=t(64092),l=t(56932),b=t(82064),n=t(33348),S=t.n(n),I=t(67879),D=t(20108),O=t(53038),v=t(49756),N=t(12584),Q=[{name:"name",key:"name",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.name",defaultMessage:"Name"},sortable:!0}},{name:"description",key:"description",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.description",defaultMessage:"Description"},sortable:!1}},{name:"createdAt",key:"createdAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.createdAt",defaultMessage:"Created at"},sortable:!1}},{name:"lastUsedAt",key:"lastUsedAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.lastUsedAt",defaultMessage:"Last used"},sortable:!1}}],$=()=>{(0,a.go)();const h=(0,D.useQueryClient)(),{formatMessage:m}=(0,I.Z)(),U=(0,a.lm)(),F=(0,P.v9)(u._),{allowedActions:{canCreate:A,canDelete:H,canUpdate:R,canRead:p}}=(0,a.ss)(F.settings["api-tokens"]),{push:s}=(0,O.k6)(),{trackUsage:i}=(0,a.rS)(),{startSection:y}=(0,a.c1)(),g=e.useRef(y),{get:T,del:f}=(0,a.kY)(),{formatAPIError:c}=(0,a.So)();e.useEffect(()=>{g.current&&g.current("apiTokens")},[]),e.useEffect(()=>{s({search:S().stringify({sort:"name:ASC"},{encode:!1})})},[s]);const C=Q.map(o=>({...o,metadatas:{...o.metadatas,label:m(o.metadatas.label)}})),{data:d,isLoading:B}=(0,D.useQuery)(["api-tokens"],async()=>{i("willAccessTokenList",{tokenType:v.Z});const{data:{data:o}}=await T("/admin/api-tokens");return i("didAccessTokenList",{number:o.length,tokenType:v.Z}),o},{cacheTime:0,enabled:p,onError(o){U({type:"warning",message:c(o)})}}),M=B,x=(0,D.useMutation)(async o=>{await f(`/admin/api-tokens/${o}`)},{async onSuccess(){await h.invalidateQueries(["api-tokens"]),i("didDeleteToken")},onError(o){U({type:"warning",message:c(o)})}}),Z=d&&d.length>0,j=p&&Z,W=p&&!Z&&!A,Y=p&&!Z&&A;return e.createElement(k.o,{"aria-busy":M},e.createElement(a.SL,{name:"API Tokens"}),e.createElement(V.T,{title:m({id:"Settings.apiTokens.title",defaultMessage:"API Tokens"}),subtitle:m({id:"Settings.apiTokens.description",defaultMessage:"List of generated tokens to consume the API"}),primaryAction:A&&e.createElement(a.Qj,{"data-testid":"create-api-token-button",startIcon:e.createElement(b.Z,null),size:"S",onClick:()=>i("willAddTokenFromList",{tokenType:v.Z}),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.create",defaultMessage:"Create new API Token"}))}),e.createElement(l.D,null,!p&&e.createElement(a.ZF,null),j&&e.createElement(N.Z,{permissions:{canRead:p,canDelete:H,canUpdate:R},headers:C,contentType:"api-tokens",rows:d,isLoading:M,onConfirmDelete:o=>x.mutateAsync(o),tokens:d,tokenType:v.Z}),Y&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.addFirstToken",defaultMessage:"Add your first API Token"},action:e.createElement(a.Qj,{variant:"secondary",startIcon:e.createElement(b.Z,null),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.addNewToken",defaultMessage:"Add new API Token"}))}),W&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.emptyStateLayout",defaultMessage:"You don\u2019t have any content yet..."}})))},L=()=>{const h=(0,P.v9)(u._);return e.createElement(a.O4,{permissions:h.settings["api-tokens"].main},e.createElement($,null))}}}]);