@strapi/plugin-users-permissions 5.12.1 → 5.12.3

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 (634) hide show
  1. package/dist/admin/components/BoundRoute/getMethodColor.js +49 -0
  2. package/dist/admin/components/BoundRoute/getMethodColor.js.map +1 -0
  3. package/dist/admin/components/BoundRoute/getMethodColor.mjs +47 -0
  4. package/dist/admin/components/BoundRoute/getMethodColor.mjs.map +1 -0
  5. package/dist/admin/components/BoundRoute/index.js +98 -0
  6. package/dist/admin/components/BoundRoute/index.js.map +1 -0
  7. package/dist/admin/components/BoundRoute/index.mjs +96 -0
  8. package/dist/admin/components/BoundRoute/index.mjs.map +1 -0
  9. package/dist/admin/components/FormModal/Input/index.js +123 -0
  10. package/dist/admin/components/FormModal/Input/index.js.map +1 -0
  11. package/dist/admin/components/FormModal/Input/index.mjs +121 -0
  12. package/dist/admin/components/FormModal/Input/index.mjs.map +1 -0
  13. package/dist/admin/components/FormModal/index.js +110 -0
  14. package/dist/admin/components/FormModal/index.js.map +1 -0
  15. package/dist/admin/components/FormModal/index.mjs +108 -0
  16. package/dist/admin/components/FormModal/index.mjs.map +1 -0
  17. package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.js +33 -0
  18. package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.js.map +1 -0
  19. package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.mjs +31 -0
  20. package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.mjs.map +1 -0
  21. package/dist/admin/components/Permissions/PermissionRow/SubCategory.js +156 -0
  22. package/dist/admin/components/Permissions/PermissionRow/SubCategory.js.map +1 -0
  23. package/dist/admin/components/Permissions/PermissionRow/SubCategory.mjs +154 -0
  24. package/dist/admin/components/Permissions/PermissionRow/SubCategory.mjs.map +1 -0
  25. package/dist/admin/components/Permissions/PermissionRow/index.js +50 -0
  26. package/dist/admin/components/Permissions/PermissionRow/index.js.map +1 -0
  27. package/dist/admin/components/Permissions/PermissionRow/index.mjs +48 -0
  28. package/dist/admin/components/Permissions/PermissionRow/index.mjs.map +1 -0
  29. package/dist/admin/components/Permissions/index.js +52 -0
  30. package/dist/admin/components/Permissions/index.js.map +1 -0
  31. package/dist/admin/components/Permissions/index.mjs +50 -0
  32. package/dist/admin/components/Permissions/index.mjs.map +1 -0
  33. package/dist/admin/components/Permissions/init.js +15 -0
  34. package/dist/admin/components/Permissions/init.js.map +1 -0
  35. package/dist/admin/components/Permissions/init.mjs +13 -0
  36. package/dist/admin/components/Permissions/init.mjs.map +1 -0
  37. package/dist/admin/components/Permissions/reducer.js +34 -0
  38. package/dist/admin/components/Permissions/reducer.js.map +1 -0
  39. package/dist/admin/components/Permissions/reducer.mjs +31 -0
  40. package/dist/admin/components/Permissions/reducer.mjs.map +1 -0
  41. package/dist/admin/components/Policies/index.js +67 -0
  42. package/dist/admin/components/Policies/index.js.map +1 -0
  43. package/dist/admin/components/Policies/index.mjs +65 -0
  44. package/dist/admin/components/Policies/index.mjs.map +1 -0
  45. package/dist/admin/components/UsersPermissions/index.js +115 -0
  46. package/dist/admin/components/UsersPermissions/index.js.map +1 -0
  47. package/dist/admin/components/UsersPermissions/index.mjs +113 -0
  48. package/dist/admin/components/UsersPermissions/index.mjs.map +1 -0
  49. package/dist/admin/components/UsersPermissions/init.js +13 -0
  50. package/dist/admin/components/UsersPermissions/init.js.map +1 -0
  51. package/dist/admin/components/UsersPermissions/init.mjs +11 -0
  52. package/dist/admin/components/UsersPermissions/init.mjs.map +1 -0
  53. package/dist/admin/components/UsersPermissions/reducer.js +73 -0
  54. package/dist/admin/components/UsersPermissions/reducer.js.map +1 -0
  55. package/dist/admin/components/UsersPermissions/reducer.mjs +68 -0
  56. package/dist/admin/components/UsersPermissions/reducer.mjs.map +1 -0
  57. package/dist/admin/constants.js +81 -0
  58. package/dist/admin/constants.js.map +1 -0
  59. package/dist/admin/constants.mjs +79 -0
  60. package/dist/admin/constants.mjs.map +1 -0
  61. package/dist/admin/contexts/UsersPermissionsContext/index.js +23 -0
  62. package/dist/admin/contexts/UsersPermissionsContext/index.js.map +1 -0
  63. package/dist/admin/contexts/UsersPermissionsContext/index.mjs +19 -0
  64. package/dist/admin/contexts/UsersPermissionsContext/index.mjs.map +1 -0
  65. package/dist/admin/index.js +119 -2
  66. package/dist/admin/index.js.map +1 -1
  67. package/dist/admin/index.mjs +120 -1
  68. package/dist/admin/index.mjs.map +1 -1
  69. package/dist/admin/package.json.js +14 -0
  70. package/dist/admin/package.json.js.map +1 -0
  71. package/dist/admin/package.json.mjs +11 -0
  72. package/dist/admin/package.json.mjs.map +1 -0
  73. package/dist/admin/{chunks/index-DFnYIqrB.js → pages/AdvancedSettings/index.js} +14 -121
  74. package/dist/admin/pages/AdvancedSettings/index.js.map +1 -0
  75. package/dist/admin/{chunks/index-Cy-tPfRk.mjs → pages/AdvancedSettings/index.mjs} +6 -94
  76. package/dist/admin/pages/AdvancedSettings/index.mjs.map +1 -0
  77. package/dist/admin/pages/AdvancedSettings/utils/layout.js +83 -0
  78. package/dist/admin/pages/AdvancedSettings/utils/layout.js.map +1 -0
  79. package/dist/admin/pages/AdvancedSettings/utils/layout.mjs +81 -0
  80. package/dist/admin/pages/AdvancedSettings/utils/layout.mjs.map +1 -0
  81. package/dist/admin/pages/AdvancedSettings/utils/schema.js +40 -0
  82. package/dist/admin/pages/AdvancedSettings/utils/schema.js.map +1 -0
  83. package/dist/admin/pages/AdvancedSettings/utils/schema.mjs +19 -0
  84. package/dist/admin/pages/AdvancedSettings/utils/schema.mjs.map +1 -0
  85. package/dist/admin/pages/EmailTemplates/components/EmailForm.js +171 -0
  86. package/dist/admin/pages/EmailTemplates/components/EmailForm.js.map +1 -0
  87. package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs +169 -0
  88. package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs.map +1 -0
  89. package/dist/admin/pages/EmailTemplates/components/EmailTable.js +145 -0
  90. package/dist/admin/pages/EmailTemplates/components/EmailTable.js.map +1 -0
  91. package/dist/admin/pages/EmailTemplates/components/EmailTable.mjs +143 -0
  92. package/dist/admin/pages/EmailTemplates/components/EmailTable.mjs.map +1 -0
  93. package/dist/admin/pages/EmailTemplates/index.js +157 -0
  94. package/dist/admin/pages/EmailTemplates/index.js.map +1 -0
  95. package/dist/admin/pages/EmailTemplates/index.mjs +135 -0
  96. package/dist/admin/pages/EmailTemplates/index.mjs.map +1 -0
  97. package/dist/admin/pages/EmailTemplates/utils/schema.js +50 -0
  98. package/dist/admin/pages/EmailTemplates/utils/schema.js.map +1 -0
  99. package/dist/admin/pages/EmailTemplates/utils/schema.mjs +29 -0
  100. package/dist/admin/pages/EmailTemplates/utils/schema.mjs.map +1 -0
  101. package/dist/admin/pages/Providers/index.js +278 -0
  102. package/dist/admin/pages/Providers/index.js.map +1 -0
  103. package/dist/admin/pages/Providers/index.mjs +254 -0
  104. package/dist/admin/pages/Providers/index.mjs.map +1 -0
  105. package/dist/admin/pages/Providers/utils/forms.js +281 -0
  106. package/dist/admin/pages/Providers/utils/forms.js.map +1 -0
  107. package/dist/admin/pages/Providers/utils/forms.mjs +260 -0
  108. package/dist/admin/pages/Providers/utils/forms.mjs.map +1 -0
  109. package/dist/admin/pages/Roles/constants.js +31 -0
  110. package/dist/admin/pages/Roles/constants.js.map +1 -0
  111. package/dist/admin/pages/Roles/constants.mjs +10 -0
  112. package/dist/admin/pages/Roles/constants.mjs.map +1 -0
  113. package/dist/admin/pages/Roles/hooks/usePlugins.js +78 -0
  114. package/dist/admin/pages/Roles/hooks/usePlugins.js.map +1 -0
  115. package/dist/admin/pages/Roles/hooks/usePlugins.mjs +76 -0
  116. package/dist/admin/pages/Roles/hooks/usePlugins.mjs.map +1 -0
  117. package/dist/admin/pages/Roles/index.js +35 -0
  118. package/dist/admin/pages/Roles/index.js.map +1 -0
  119. package/dist/admin/pages/Roles/index.mjs +33 -0
  120. package/dist/admin/pages/Roles/index.mjs.map +1 -0
  121. package/dist/admin/pages/Roles/pages/CreatePage.js +225 -0
  122. package/dist/admin/pages/Roles/pages/CreatePage.js.map +1 -0
  123. package/dist/admin/pages/Roles/pages/CreatePage.mjs +203 -0
  124. package/dist/admin/pages/Roles/pages/CreatePage.mjs.map +1 -0
  125. package/dist/admin/pages/Roles/pages/EditPage.js +229 -0
  126. package/dist/admin/pages/Roles/pages/EditPage.js.map +1 -0
  127. package/dist/admin/pages/Roles/pages/EditPage.mjs +207 -0
  128. package/dist/admin/pages/Roles/pages/EditPage.mjs.map +1 -0
  129. package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.js +125 -0
  130. package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.js.map +1 -0
  131. package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.mjs +123 -0
  132. package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.mjs.map +1 -0
  133. package/dist/admin/pages/Roles/pages/ListPage/index.js +237 -0
  134. package/dist/admin/pages/Roles/pages/ListPage/index.js.map +1 -0
  135. package/dist/admin/pages/Roles/pages/ListPage/index.mjs +234 -0
  136. package/dist/admin/pages/Roles/pages/ListPage/index.mjs.map +1 -0
  137. package/dist/admin/pluginId.js +8 -0
  138. package/dist/admin/pluginId.js.map +1 -0
  139. package/dist/admin/pluginId.mjs +6 -0
  140. package/dist/admin/pluginId.mjs.map +1 -0
  141. package/dist/admin/{chunks/ar-BJwjobLp.js → translations/ar.json.js} +2 -2
  142. package/dist/admin/translations/ar.json.js.map +1 -0
  143. package/dist/admin/{chunks/ar-G6bUGuUb.mjs → translations/ar.json.mjs} +1 -1
  144. package/dist/admin/translations/ar.json.mjs.map +1 -0
  145. package/dist/admin/{chunks/cs-uS_SIEo8.js → translations/cs.json.js} +2 -2
  146. package/dist/admin/translations/cs.json.js.map +1 -0
  147. package/dist/admin/{chunks/cs-Bu59JqhG.mjs → translations/cs.json.mjs} +1 -1
  148. package/dist/admin/translations/cs.json.mjs.map +1 -0
  149. package/dist/admin/{chunks/de-7MVMrqqI.js → translations/de.json.js} +2 -2
  150. package/dist/admin/translations/de.json.js.map +1 -0
  151. package/dist/admin/{chunks/de-B81A69_5.mjs → translations/de.json.mjs} +1 -1
  152. package/dist/admin/translations/de.json.mjs.map +1 -0
  153. package/dist/admin/{chunks/dk-DwCLGmy9.js → translations/dk.json.js} +2 -2
  154. package/dist/admin/translations/dk.json.js.map +1 -0
  155. package/dist/admin/{chunks/dk-BaelzvBE.mjs → translations/dk.json.mjs} +1 -1
  156. package/dist/admin/translations/dk.json.mjs.map +1 -0
  157. package/dist/admin/{chunks/en-DwQjkHi_.js → translations/en.json.js} +2 -2
  158. package/dist/admin/translations/en.json.js.map +1 -0
  159. package/dist/admin/{chunks/en-BhgCBe7M.mjs → translations/en.json.mjs} +1 -1
  160. package/dist/admin/translations/en.json.mjs.map +1 -0
  161. package/dist/admin/{chunks/es-BOJOedG5.js → translations/es.json.js} +2 -2
  162. package/dist/admin/translations/es.json.js.map +1 -0
  163. package/dist/admin/{chunks/es-B0wXmvRj.mjs → translations/es.json.mjs} +1 -1
  164. package/dist/admin/translations/es.json.mjs.map +1 -0
  165. package/dist/admin/{chunks/fr-BDNWCNs0.js → translations/fr.json.js} +2 -2
  166. package/dist/admin/translations/fr.json.js.map +1 -0
  167. package/dist/admin/{chunks/fr-CGYvGUXg.mjs → translations/fr.json.mjs} +1 -1
  168. package/dist/admin/translations/fr.json.mjs.map +1 -0
  169. package/dist/admin/{chunks/id-UqUPykHZ.js → translations/id.json.js} +2 -2
  170. package/dist/admin/translations/id.json.js.map +1 -0
  171. package/dist/admin/{chunks/id-CNzbwFjA.mjs → translations/id.json.mjs} +1 -1
  172. package/dist/admin/translations/id.json.mjs.map +1 -0
  173. package/dist/admin/{chunks/it-D5VuyoLU.js → translations/it.json.js} +2 -2
  174. package/dist/admin/translations/it.json.js.map +1 -0
  175. package/dist/admin/{chunks/it-B2H2foTf.mjs → translations/it.json.mjs} +1 -1
  176. package/dist/admin/translations/it.json.mjs.map +1 -0
  177. package/dist/admin/{chunks/ja-MpqVsCgs.js → translations/ja.json.js} +2 -2
  178. package/dist/admin/translations/ja.json.js.map +1 -0
  179. package/dist/admin/{chunks/ja-C0z9d7L9.mjs → translations/ja.json.mjs} +1 -1
  180. package/dist/admin/translations/ja.json.mjs.map +1 -0
  181. package/dist/admin/{chunks/ko-Bm-grPSc.js → translations/ko.json.js} +2 -2
  182. package/dist/admin/translations/ko.json.js.map +1 -0
  183. package/dist/admin/{chunks/ko-CzUgzpeS.mjs → translations/ko.json.mjs} +1 -1
  184. package/dist/admin/translations/ko.json.mjs.map +1 -0
  185. package/dist/admin/{chunks/ms-D7eyBD5H.js → translations/ms.json.js} +2 -2
  186. package/dist/admin/translations/ms.json.js.map +1 -0
  187. package/dist/admin/{chunks/ms-CCacxjim.mjs → translations/ms.json.mjs} +1 -1
  188. package/dist/admin/translations/ms.json.mjs.map +1 -0
  189. package/dist/admin/{chunks/nl-BIOwAQtI.js → translations/nl.json.js} +2 -2
  190. package/dist/admin/translations/nl.json.js.map +1 -0
  191. package/dist/admin/{chunks/nl-DDC3nZW-.mjs → translations/nl.json.mjs} +1 -1
  192. package/dist/admin/translations/nl.json.mjs.map +1 -0
  193. package/dist/admin/{chunks/pl-D5BeNrg_.js → translations/pl.json.js} +2 -2
  194. package/dist/admin/translations/pl.json.js.map +1 -0
  195. package/dist/admin/{chunks/pl-XkS463rN.mjs → translations/pl.json.mjs} +1 -1
  196. package/dist/admin/translations/pl.json.mjs.map +1 -0
  197. package/dist/admin/{chunks/pt-BR-DxPBzQGx.js → translations/pt-BR.json.js} +2 -2
  198. package/dist/admin/translations/pt-BR.json.js.map +1 -0
  199. package/dist/admin/{chunks/pt-BR-8cC7z8Km.mjs → translations/pt-BR.json.mjs} +1 -1
  200. package/dist/admin/translations/pt-BR.json.mjs.map +1 -0
  201. package/dist/admin/{chunks/pt-kkCwzNvH.js → translations/pt.json.js} +2 -2
  202. package/dist/admin/translations/pt.json.js.map +1 -0
  203. package/dist/admin/{chunks/pt-DQpEvio8.mjs → translations/pt.json.mjs} +1 -1
  204. package/dist/admin/translations/pt.json.mjs.map +1 -0
  205. package/dist/admin/{chunks/ru-BQ0gHmp3.js → translations/ru.json.js} +2 -2
  206. package/dist/admin/translations/ru.json.js.map +1 -0
  207. package/dist/admin/{chunks/ru-nzL_7Mhg.mjs → translations/ru.json.mjs} +1 -1
  208. package/dist/admin/translations/ru.json.mjs.map +1 -0
  209. package/dist/admin/{chunks/sk-nVwAPdYC.js → translations/sk.json.js} +2 -2
  210. package/dist/admin/translations/sk.json.js.map +1 -0
  211. package/dist/admin/{chunks/sk-Ddxc_tZA.mjs → translations/sk.json.mjs} +1 -1
  212. package/dist/admin/translations/sk.json.mjs.map +1 -0
  213. package/dist/admin/{chunks/sv-BDfk2A-F.js → translations/sv.json.js} +2 -2
  214. package/dist/admin/translations/sv.json.js.map +1 -0
  215. package/dist/admin/{chunks/sv-By3RYpMG.mjs → translations/sv.json.mjs} +1 -1
  216. package/dist/admin/translations/sv.json.mjs.map +1 -0
  217. package/dist/admin/{chunks/th-BtTtpHe2.js → translations/th.json.js} +2 -2
  218. package/dist/admin/translations/th.json.js.map +1 -0
  219. package/dist/admin/{chunks/th-COl50vqb.mjs → translations/th.json.mjs} +1 -1
  220. package/dist/admin/translations/th.json.mjs.map +1 -0
  221. package/dist/admin/{chunks/tr-Di-Nf7cT.js → translations/tr.json.js} +2 -2
  222. package/dist/admin/translations/tr.json.js.map +1 -0
  223. package/dist/admin/{chunks/tr-80SJU6jg.mjs → translations/tr.json.mjs} +1 -1
  224. package/dist/admin/translations/tr.json.mjs.map +1 -0
  225. package/dist/admin/{chunks/uk-r5zXTAS7.js → translations/uk.json.js} +2 -2
  226. package/dist/admin/translations/uk.json.js.map +1 -0
  227. package/dist/admin/{chunks/uk-DnrIlPwG.mjs → translations/uk.json.mjs} +1 -1
  228. package/dist/admin/translations/uk.json.mjs.map +1 -0
  229. package/dist/admin/{chunks/vi-D9cCsHsU.js → translations/vi.json.js} +2 -2
  230. package/dist/admin/translations/vi.json.js.map +1 -0
  231. package/dist/admin/{chunks/vi-69AF03Iv.mjs → translations/vi.json.mjs} +1 -1
  232. package/dist/admin/translations/vi.json.mjs.map +1 -0
  233. package/dist/admin/{chunks/zh-Hans-CKqQbpsM.js → translations/zh-Hans.json.js} +2 -2
  234. package/dist/admin/translations/zh-Hans.json.js.map +1 -0
  235. package/dist/admin/{chunks/zh-Hans-DmDcSsp7.mjs → translations/zh-Hans.json.mjs} +1 -1
  236. package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
  237. package/dist/admin/{chunks/zh-BzWgJEzz.js → translations/zh.json.js} +2 -2
  238. package/dist/admin/translations/zh.json.js.map +1 -0
  239. package/dist/admin/{chunks/zh-BzSkqxo-.mjs → translations/zh.json.mjs} +1 -1
  240. package/dist/admin/translations/zh.json.mjs.map +1 -0
  241. package/dist/admin/utils/cleanPermissions.js +24 -0
  242. package/dist/admin/utils/cleanPermissions.js.map +1 -0
  243. package/dist/admin/utils/cleanPermissions.mjs +22 -0
  244. package/dist/admin/utils/cleanPermissions.mjs.map +1 -0
  245. package/dist/admin/utils/formatPluginName.js +29 -0
  246. package/dist/admin/utils/formatPluginName.js.map +1 -0
  247. package/dist/admin/utils/formatPluginName.mjs +27 -0
  248. package/dist/admin/utils/formatPluginName.mjs.map +1 -0
  249. package/dist/admin/utils/getTrad.js +8 -0
  250. package/dist/admin/utils/getTrad.js.map +1 -0
  251. package/dist/admin/utils/getTrad.mjs +6 -0
  252. package/dist/admin/utils/getTrad.mjs.map +1 -0
  253. package/dist/admin/utils/prefixPluginTranslations.js +11 -0
  254. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
  255. package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
  256. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
  257. package/dist/server/_virtual/_commonjsHelpers.js +8 -0
  258. package/dist/server/_virtual/_commonjsHelpers.js.map +1 -0
  259. package/dist/server/_virtual/_commonjsHelpers.mjs +6 -0
  260. package/dist/server/_virtual/_commonjsHelpers.mjs.map +1 -0
  261. package/dist/server/bootstrap/index.js +145 -0
  262. package/dist/server/bootstrap/index.js.map +1 -0
  263. package/dist/server/bootstrap/index.mjs +143 -0
  264. package/dist/server/bootstrap/index.mjs.map +1 -0
  265. package/dist/server/bootstrap/users-permissions-actions.js +98 -0
  266. package/dist/server/bootstrap/users-permissions-actions.js.map +1 -0
  267. package/dist/server/bootstrap/users-permissions-actions.mjs +96 -0
  268. package/dist/server/bootstrap/users-permissions-actions.mjs.map +1 -0
  269. package/dist/server/config.js +54 -0
  270. package/dist/server/config.js.map +1 -0
  271. package/dist/server/config.mjs +52 -0
  272. package/dist/server/config.mjs.map +1 -0
  273. package/dist/server/content-types/index.js +30 -0
  274. package/dist/server/content-types/index.js.map +1 -0
  275. package/dist/server/content-types/index.mjs +28 -0
  276. package/dist/server/content-types/index.mjs.map +1 -0
  277. package/dist/server/content-types/permission/index.js +44 -0
  278. package/dist/server/content-types/permission/index.js.map +1 -0
  279. package/dist/server/content-types/permission/index.mjs +42 -0
  280. package/dist/server/content-types/permission/index.mjs.map +1 -0
  281. package/dist/server/content-types/role/index.js +61 -0
  282. package/dist/server/content-types/role/index.js.map +1 -0
  283. package/dist/server/content-types/role/index.mjs +59 -0
  284. package/dist/server/content-types/role/index.mjs.map +1 -0
  285. package/dist/server/content-types/user/index.js +84 -0
  286. package/dist/server/content-types/user/index.js.map +1 -0
  287. package/dist/server/content-types/user/index.mjs +82 -0
  288. package/dist/server/content-types/user/index.mjs.map +1 -0
  289. package/dist/server/content-types/user/schema-config.js +25 -0
  290. package/dist/server/content-types/user/schema-config.js.map +1 -0
  291. package/dist/server/content-types/user/schema-config.mjs +23 -0
  292. package/dist/server/content-types/user/schema-config.mjs.map +1 -0
  293. package/dist/server/controllers/auth.js +429 -0
  294. package/dist/server/controllers/auth.js.map +1 -0
  295. package/dist/server/controllers/auth.mjs +427 -0
  296. package/dist/server/controllers/auth.mjs.map +1 -0
  297. package/dist/server/controllers/content-manager-user.js +168 -0
  298. package/dist/server/controllers/content-manager-user.js.map +1 -0
  299. package/dist/server/controllers/content-manager-user.mjs +166 -0
  300. package/dist/server/controllers/content-manager-user.mjs.map +1 -0
  301. package/dist/server/controllers/index.js +33 -0
  302. package/dist/server/controllers/index.js.map +1 -0
  303. package/dist/server/controllers/index.mjs +31 -0
  304. package/dist/server/controllers/index.mjs.map +1 -0
  305. package/dist/server/controllers/permissions.js +37 -0
  306. package/dist/server/controllers/permissions.js.map +1 -0
  307. package/dist/server/controllers/permissions.mjs +35 -0
  308. package/dist/server/controllers/permissions.mjs.map +1 -0
  309. package/dist/server/controllers/role.js +91 -0
  310. package/dist/server/controllers/role.js.map +1 -0
  311. package/dist/server/controllers/role.mjs +89 -0
  312. package/dist/server/controllers/role.mjs.map +1 -0
  313. package/dist/server/controllers/settings.js +107 -0
  314. package/dist/server/controllers/settings.js.map +1 -0
  315. package/dist/server/controllers/settings.mjs +105 -0
  316. package/dist/server/controllers/settings.mjs.map +1 -0
  317. package/dist/server/controllers/user.js +201 -0
  318. package/dist/server/controllers/user.js.map +1 -0
  319. package/dist/server/controllers/user.mjs +199 -0
  320. package/dist/server/controllers/user.mjs.map +1 -0
  321. package/dist/server/controllers/validation/auth.js +131 -0
  322. package/dist/server/controllers/validation/auth.js.map +1 -0
  323. package/dist/server/controllers/validation/auth.mjs +129 -0
  324. package/dist/server/controllers/validation/auth.mjs.map +1 -0
  325. package/dist/server/controllers/validation/email-template.js +72 -0
  326. package/dist/server/controllers/validation/email-template.js.map +1 -0
  327. package/dist/server/controllers/validation/email-template.mjs +70 -0
  328. package/dist/server/controllers/validation/email-template.mjs.map +1 -0
  329. package/dist/server/controllers/validation/user.js +49 -0
  330. package/dist/server/controllers/validation/user.js.map +1 -0
  331. package/dist/server/controllers/validation/user.mjs +47 -0
  332. package/dist/server/controllers/validation/user.mjs.map +1 -0
  333. package/dist/server/graphql/index.js +66 -0
  334. package/dist/server/graphql/index.js.map +1 -0
  335. package/dist/server/graphql/index.mjs +64 -0
  336. package/dist/server/graphql/index.mjs.map +1 -0
  337. package/dist/server/graphql/mutations/auth/change-password.js +40 -0
  338. package/dist/server/graphql/mutations/auth/change-password.js.map +1 -0
  339. package/dist/server/graphql/mutations/auth/change-password.mjs +38 -0
  340. package/dist/server/graphql/mutations/auth/change-password.mjs.map +1 -0
  341. package/dist/server/graphql/mutations/auth/email-confirmation.js +38 -0
  342. package/dist/server/graphql/mutations/auth/email-confirmation.js.map +1 -0
  343. package/dist/server/graphql/mutations/auth/email-confirmation.mjs +36 -0
  344. package/dist/server/graphql/mutations/auth/email-confirmation.mjs.map +1 -0
  345. package/dist/server/graphql/mutations/auth/forgot-password.js +37 -0
  346. package/dist/server/graphql/mutations/auth/forgot-password.js.map +1 -0
  347. package/dist/server/graphql/mutations/auth/forgot-password.mjs +35 -0
  348. package/dist/server/graphql/mutations/auth/forgot-password.mjs.map +1 -0
  349. package/dist/server/graphql/mutations/auth/login.js +40 -0
  350. package/dist/server/graphql/mutations/auth/login.js.map +1 -0
  351. package/dist/server/graphql/mutations/auth/login.mjs +38 -0
  352. package/dist/server/graphql/mutations/auth/login.mjs.map +1 -0
  353. package/dist/server/graphql/mutations/auth/register.js +38 -0
  354. package/dist/server/graphql/mutations/auth/register.js.map +1 -0
  355. package/dist/server/graphql/mutations/auth/register.mjs +36 -0
  356. package/dist/server/graphql/mutations/auth/register.mjs.map +1 -0
  357. package/dist/server/graphql/mutations/auth/reset-password.js +40 -0
  358. package/dist/server/graphql/mutations/auth/reset-password.js.map +1 -0
  359. package/dist/server/graphql/mutations/auth/reset-password.mjs +38 -0
  360. package/dist/server/graphql/mutations/auth/reset-password.mjs.map +1 -0
  361. package/dist/server/graphql/mutations/crud/role/create-role.js +37 -0
  362. package/dist/server/graphql/mutations/crud/role/create-role.js.map +1 -0
  363. package/dist/server/graphql/mutations/crud/role/create-role.mjs +35 -0
  364. package/dist/server/graphql/mutations/crud/role/create-role.mjs.map +1 -0
  365. package/dist/server/graphql/mutations/crud/role/delete-role.js +32 -0
  366. package/dist/server/graphql/mutations/crud/role/delete-role.js.map +1 -0
  367. package/dist/server/graphql/mutations/crud/role/delete-role.mjs +30 -0
  368. package/dist/server/graphql/mutations/crud/role/delete-role.mjs.map +1 -0
  369. package/dist/server/graphql/mutations/crud/role/update-role.js +39 -0
  370. package/dist/server/graphql/mutations/crud/role/update-role.js.map +1 -0
  371. package/dist/server/graphql/mutations/crud/role/update-role.mjs +37 -0
  372. package/dist/server/graphql/mutations/crud/role/update-role.mjs.map +1 -0
  373. package/dist/server/graphql/mutations/crud/user/create-user.js +46 -0
  374. package/dist/server/graphql/mutations/crud/user/create-user.js.map +1 -0
  375. package/dist/server/graphql/mutations/crud/user/create-user.mjs +44 -0
  376. package/dist/server/graphql/mutations/crud/user/create-user.mjs.map +1 -0
  377. package/dist/server/graphql/mutations/crud/user/delete-user.js +44 -0
  378. package/dist/server/graphql/mutations/crud/user/delete-user.js.map +1 -0
  379. package/dist/server/graphql/mutations/crud/user/delete-user.mjs +42 -0
  380. package/dist/server/graphql/mutations/crud/user/delete-user.mjs.map +1 -0
  381. package/dist/server/graphql/mutations/crud/user/update-user.js +49 -0
  382. package/dist/server/graphql/mutations/crud/user/update-user.js.map +1 -0
  383. package/dist/server/graphql/mutations/crud/user/update-user.mjs +47 -0
  384. package/dist/server/graphql/mutations/crud/user/update-user.mjs.map +1 -0
  385. package/dist/server/graphql/mutations/index.js +58 -0
  386. package/dist/server/graphql/mutations/index.js.map +1 -0
  387. package/dist/server/graphql/mutations/index.mjs +56 -0
  388. package/dist/server/graphql/mutations/index.mjs.map +1 -0
  389. package/dist/server/graphql/queries/index.js +25 -0
  390. package/dist/server/graphql/queries/index.js.map +1 -0
  391. package/dist/server/graphql/queries/index.mjs +23 -0
  392. package/dist/server/graphql/queries/index.mjs.map +1 -0
  393. package/dist/server/graphql/queries/me.js +23 -0
  394. package/dist/server/graphql/queries/me.js.map +1 -0
  395. package/dist/server/graphql/queries/me.mjs +21 -0
  396. package/dist/server/graphql/queries/me.mjs.map +1 -0
  397. package/dist/server/graphql/resolvers-configs.js +93 -0
  398. package/dist/server/graphql/resolvers-configs.js.map +1 -0
  399. package/dist/server/graphql/resolvers-configs.mjs +91 -0
  400. package/dist/server/graphql/resolvers-configs.mjs.map +1 -0
  401. package/dist/server/graphql/types/create-role-payload.js +20 -0
  402. package/dist/server/graphql/types/create-role-payload.js.map +1 -0
  403. package/dist/server/graphql/types/create-role-payload.mjs +18 -0
  404. package/dist/server/graphql/types/create-role-payload.mjs.map +1 -0
  405. package/dist/server/graphql/types/delete-role-payload.js +20 -0
  406. package/dist/server/graphql/types/delete-role-payload.js.map +1 -0
  407. package/dist/server/graphql/types/delete-role-payload.mjs +18 -0
  408. package/dist/server/graphql/types/delete-role-payload.mjs.map +1 -0
  409. package/dist/server/graphql/types/index.js +41 -0
  410. package/dist/server/graphql/types/index.js.map +1 -0
  411. package/dist/server/graphql/types/index.mjs +39 -0
  412. package/dist/server/graphql/types/index.mjs.map +1 -0
  413. package/dist/server/graphql/types/login-input.js +24 -0
  414. package/dist/server/graphql/types/login-input.js.map +1 -0
  415. package/dist/server/graphql/types/login-input.mjs +22 -0
  416. package/dist/server/graphql/types/login-input.mjs.map +1 -0
  417. package/dist/server/graphql/types/login-payload.js +23 -0
  418. package/dist/server/graphql/types/login-payload.js.map +1 -0
  419. package/dist/server/graphql/types/login-payload.mjs +21 -0
  420. package/dist/server/graphql/types/login-payload.mjs.map +1 -0
  421. package/dist/server/graphql/types/me-role.js +23 -0
  422. package/dist/server/graphql/types/me-role.js.map +1 -0
  423. package/dist/server/graphql/types/me-role.mjs +21 -0
  424. package/dist/server/graphql/types/me-role.mjs.map +1 -0
  425. package/dist/server/graphql/types/me.js +28 -0
  426. package/dist/server/graphql/types/me.js.map +1 -0
  427. package/dist/server/graphql/types/me.mjs +26 -0
  428. package/dist/server/graphql/types/me.mjs.map +1 -0
  429. package/dist/server/graphql/types/password-payload.js +20 -0
  430. package/dist/server/graphql/types/password-payload.js.map +1 -0
  431. package/dist/server/graphql/types/password-payload.mjs +18 -0
  432. package/dist/server/graphql/types/password-payload.mjs.map +1 -0
  433. package/dist/server/graphql/types/register-input.js +22 -0
  434. package/dist/server/graphql/types/register-input.js.map +1 -0
  435. package/dist/server/graphql/types/register-input.mjs +20 -0
  436. package/dist/server/graphql/types/register-input.mjs.map +1 -0
  437. package/dist/server/graphql/types/update-role-payload.js +20 -0
  438. package/dist/server/graphql/types/update-role-payload.js.map +1 -0
  439. package/dist/server/graphql/types/update-role-payload.mjs +18 -0
  440. package/dist/server/graphql/types/update-role-payload.mjs.map +1 -0
  441. package/dist/server/graphql/types/user-input.js +26 -0
  442. package/dist/server/graphql/types/user-input.js.map +1 -0
  443. package/dist/server/graphql/types/user-input.mjs +24 -0
  444. package/dist/server/graphql/types/user-input.mjs.map +1 -0
  445. package/dist/server/graphql/utils.js +32 -0
  446. package/dist/server/graphql/utils.js.map +1 -0
  447. package/dist/server/graphql/utils.mjs +30 -0
  448. package/dist/server/graphql/utils.mjs.map +1 -0
  449. package/dist/server/index.js +4 -4760
  450. package/dist/server/index.js.map +1 -1
  451. package/dist/server/index.mjs +2 -4758
  452. package/dist/server/index.mjs.map +1 -1
  453. package/dist/server/index2.js +39 -0
  454. package/dist/server/index2.js.map +1 -0
  455. package/dist/server/index2.mjs +37 -0
  456. package/dist/server/index2.mjs.map +1 -0
  457. package/dist/server/middlewares/index.js +18 -0
  458. package/dist/server/middlewares/index.js.map +1 -0
  459. package/dist/server/middlewares/index.mjs +16 -0
  460. package/dist/server/middlewares/index.mjs.map +1 -0
  461. package/dist/server/middlewares/rateLimit.js +51 -0
  462. package/dist/server/middlewares/rateLimit.js.map +1 -0
  463. package/dist/server/middlewares/rateLimit.mjs +49 -0
  464. package/dist/server/middlewares/rateLimit.mjs.map +1 -0
  465. package/dist/server/register.js +41 -0
  466. package/dist/server/register.js.map +1 -0
  467. package/dist/server/register.mjs +39 -0
  468. package/dist/server/register.mjs.map +1 -0
  469. package/dist/server/routes/admin/index.js +27 -0
  470. package/dist/server/routes/admin/index.js.map +1 -0
  471. package/dist/server/routes/admin/index.mjs +25 -0
  472. package/dist/server/routes/admin/index.mjs.map +1 -0
  473. package/dist/server/routes/admin/permissions.js +29 -0
  474. package/dist/server/routes/admin/permissions.js.map +1 -0
  475. package/dist/server/routes/admin/permissions.mjs +27 -0
  476. package/dist/server/routes/admin/permissions.mjs.map +1 -0
  477. package/dist/server/routes/admin/role.js +99 -0
  478. package/dist/server/routes/admin/role.js.map +1 -0
  479. package/dist/server/routes/admin/role.mjs +97 -0
  480. package/dist/server/routes/admin/role.mjs.map +1 -0
  481. package/dist/server/routes/admin/settings.js +116 -0
  482. package/dist/server/routes/admin/settings.js.map +1 -0
  483. package/dist/server/routes/admin/settings.mjs +114 -0
  484. package/dist/server/routes/admin/settings.mjs.map +1 -0
  485. package/dist/server/routes/content-api/auth.js +104 -0
  486. package/dist/server/routes/content-api/auth.js.map +1 -0
  487. package/dist/server/routes/content-api/auth.mjs +102 -0
  488. package/dist/server/routes/content-api/auth.mjs.map +1 -0
  489. package/dist/server/routes/content-api/index.js +30 -0
  490. package/dist/server/routes/content-api/index.js.map +1 -0
  491. package/dist/server/routes/content-api/index.mjs +28 -0
  492. package/dist/server/routes/content-api/index.mjs.map +1 -0
  493. package/dist/server/routes/content-api/permissions.js +19 -0
  494. package/dist/server/routes/content-api/permissions.js.map +1 -0
  495. package/dist/server/routes/content-api/permissions.mjs +17 -0
  496. package/dist/server/routes/content-api/permissions.mjs.map +1 -0
  497. package/dist/server/routes/content-api/role.js +39 -0
  498. package/dist/server/routes/content-api/role.js.map +1 -0
  499. package/dist/server/routes/content-api/role.mjs +37 -0
  500. package/dist/server/routes/content-api/role.mjs.map +1 -0
  501. package/dist/server/routes/content-api/user.js +70 -0
  502. package/dist/server/routes/content-api/user.js.map +1 -0
  503. package/dist/server/routes/content-api/user.mjs +68 -0
  504. package/dist/server/routes/content-api/user.mjs.map +1 -0
  505. package/dist/server/routes/index.js +19 -0
  506. package/dist/server/routes/index.js.map +1 -0
  507. package/dist/server/routes/index.mjs +17 -0
  508. package/dist/server/routes/index.mjs.map +1 -0
  509. package/dist/server/services/index.js +36 -0
  510. package/dist/server/services/index.js.map +1 -0
  511. package/dist/server/services/index.mjs +34 -0
  512. package/dist/server/services/index.mjs.map +1 -0
  513. package/dist/server/services/jwt.js +50 -0
  514. package/dist/server/services/jwt.js.map +1 -0
  515. package/dist/server/services/jwt.mjs +48 -0
  516. package/dist/server/services/jwt.mjs.map +1 -0
  517. package/dist/server/services/permission.js +52 -0
  518. package/dist/server/services/permission.js.map +1 -0
  519. package/dist/server/services/permission.mjs +50 -0
  520. package/dist/server/services/permission.mjs.map +1 -0
  521. package/dist/server/services/providers-registry.js +555 -0
  522. package/dist/server/services/providers-registry.js.map +1 -0
  523. package/dist/server/services/providers-registry.mjs +553 -0
  524. package/dist/server/services/providers-registry.mjs.map +1 -0
  525. package/dist/server/services/providers.js +111 -0
  526. package/dist/server/services/providers.js.map +1 -0
  527. package/dist/server/services/providers.mjs +109 -0
  528. package/dist/server/services/providers.mjs.map +1 -0
  529. package/dist/server/services/role.js +186 -0
  530. package/dist/server/services/role.js.map +1 -0
  531. package/dist/server/services/role.mjs +184 -0
  532. package/dist/server/services/role.mjs.map +1 -0
  533. package/dist/server/services/user.js +179 -0
  534. package/dist/server/services/user.js.map +1 -0
  535. package/dist/server/services/user.mjs +177 -0
  536. package/dist/server/services/user.mjs.map +1 -0
  537. package/dist/server/services/users-permissions.js +247 -0
  538. package/dist/server/services/users-permissions.js.map +1 -0
  539. package/dist/server/services/users-permissions.mjs +245 -0
  540. package/dist/server/services/users-permissions.mjs.map +1 -0
  541. package/dist/server/strategies/users-permissions.js +114 -0
  542. package/dist/server/strategies/users-permissions.js.map +1 -0
  543. package/dist/server/strategies/users-permissions.mjs +112 -0
  544. package/dist/server/strategies/users-permissions.mjs.map +1 -0
  545. package/dist/server/utils/index.js +22 -0
  546. package/dist/server/utils/index.js.map +1 -0
  547. package/dist/server/utils/index.mjs +20 -0
  548. package/dist/server/utils/index.mjs.map +1 -0
  549. package/dist/server/utils/sanitize/index.js +21 -0
  550. package/dist/server/utils/sanitize/index.js.map +1 -0
  551. package/dist/server/utils/sanitize/index.mjs +19 -0
  552. package/dist/server/utils/sanitize/index.mjs.map +1 -0
  553. package/dist/server/utils/sanitize/sanitizers.js +32 -0
  554. package/dist/server/utils/sanitize/sanitizers.js.map +1 -0
  555. package/dist/server/utils/sanitize/sanitizers.mjs +30 -0
  556. package/dist/server/utils/sanitize/sanitizers.mjs.map +1 -0
  557. package/dist/server/utils/sanitize/visitors/index.js +17 -0
  558. package/dist/server/utils/sanitize/visitors/index.js.map +1 -0
  559. package/dist/server/utils/sanitize/visitors/index.mjs +15 -0
  560. package/dist/server/utils/sanitize/visitors/index.mjs.map +1 -0
  561. package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.js +17 -0
  562. package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.js.map +1 -0
  563. package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.mjs +15 -0
  564. package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.mjs.map +1 -0
  565. package/package.json +3 -3
  566. package/rollup.config.mjs +15 -48
  567. package/dist/admin/chunks/ar-BJwjobLp.js.map +0 -1
  568. package/dist/admin/chunks/ar-G6bUGuUb.mjs.map +0 -1
  569. package/dist/admin/chunks/cs-Bu59JqhG.mjs.map +0 -1
  570. package/dist/admin/chunks/cs-uS_SIEo8.js.map +0 -1
  571. package/dist/admin/chunks/de-7MVMrqqI.js.map +0 -1
  572. package/dist/admin/chunks/de-B81A69_5.mjs.map +0 -1
  573. package/dist/admin/chunks/dk-BaelzvBE.mjs.map +0 -1
  574. package/dist/admin/chunks/dk-DwCLGmy9.js.map +0 -1
  575. package/dist/admin/chunks/en-BhgCBe7M.mjs.map +0 -1
  576. package/dist/admin/chunks/en-DwQjkHi_.js.map +0 -1
  577. package/dist/admin/chunks/es-B0wXmvRj.mjs.map +0 -1
  578. package/dist/admin/chunks/es-BOJOedG5.js.map +0 -1
  579. package/dist/admin/chunks/fr-BDNWCNs0.js.map +0 -1
  580. package/dist/admin/chunks/fr-CGYvGUXg.mjs.map +0 -1
  581. package/dist/admin/chunks/id-CNzbwFjA.mjs.map +0 -1
  582. package/dist/admin/chunks/id-UqUPykHZ.js.map +0 -1
  583. package/dist/admin/chunks/index--_o6btSC.js +0 -471
  584. package/dist/admin/chunks/index--_o6btSC.js.map +0 -1
  585. package/dist/admin/chunks/index-BBjNJt_G.mjs +0 -448
  586. package/dist/admin/chunks/index-BBjNJt_G.mjs.map +0 -1
  587. package/dist/admin/chunks/index-BgAfLcWs.mjs +0 -1516
  588. package/dist/admin/chunks/index-BgAfLcWs.mjs.map +0 -1
  589. package/dist/admin/chunks/index-CHTUC0LM.mjs +0 -718
  590. package/dist/admin/chunks/index-CHTUC0LM.mjs.map +0 -1
  591. package/dist/admin/chunks/index-CY5JZ38k.mjs +0 -213
  592. package/dist/admin/chunks/index-CY5JZ38k.mjs.map +0 -1
  593. package/dist/admin/chunks/index-Cu1VuLS3.js +0 -741
  594. package/dist/admin/chunks/index-Cu1VuLS3.js.map +0 -1
  595. package/dist/admin/chunks/index-Cy-tPfRk.mjs.map +0 -1
  596. package/dist/admin/chunks/index-DD-Z6c1S.js +0 -217
  597. package/dist/admin/chunks/index-DD-Z6c1S.js.map +0 -1
  598. package/dist/admin/chunks/index-DFnYIqrB.js.map +0 -1
  599. package/dist/admin/chunks/index-DvubCYNe.js +0 -1537
  600. package/dist/admin/chunks/index-DvubCYNe.js.map +0 -1
  601. package/dist/admin/chunks/it-B2H2foTf.mjs.map +0 -1
  602. package/dist/admin/chunks/it-D5VuyoLU.js.map +0 -1
  603. package/dist/admin/chunks/ja-C0z9d7L9.mjs.map +0 -1
  604. package/dist/admin/chunks/ja-MpqVsCgs.js.map +0 -1
  605. package/dist/admin/chunks/ko-Bm-grPSc.js.map +0 -1
  606. package/dist/admin/chunks/ko-CzUgzpeS.mjs.map +0 -1
  607. package/dist/admin/chunks/ms-CCacxjim.mjs.map +0 -1
  608. package/dist/admin/chunks/ms-D7eyBD5H.js.map +0 -1
  609. package/dist/admin/chunks/nl-BIOwAQtI.js.map +0 -1
  610. package/dist/admin/chunks/nl-DDC3nZW-.mjs.map +0 -1
  611. package/dist/admin/chunks/pl-D5BeNrg_.js.map +0 -1
  612. package/dist/admin/chunks/pl-XkS463rN.mjs.map +0 -1
  613. package/dist/admin/chunks/pt-BR-8cC7z8Km.mjs.map +0 -1
  614. package/dist/admin/chunks/pt-BR-DxPBzQGx.js.map +0 -1
  615. package/dist/admin/chunks/pt-DQpEvio8.mjs.map +0 -1
  616. package/dist/admin/chunks/pt-kkCwzNvH.js.map +0 -1
  617. package/dist/admin/chunks/ru-BQ0gHmp3.js.map +0 -1
  618. package/dist/admin/chunks/ru-nzL_7Mhg.mjs.map +0 -1
  619. package/dist/admin/chunks/sk-Ddxc_tZA.mjs.map +0 -1
  620. package/dist/admin/chunks/sk-nVwAPdYC.js.map +0 -1
  621. package/dist/admin/chunks/sv-BDfk2A-F.js.map +0 -1
  622. package/dist/admin/chunks/sv-By3RYpMG.mjs.map +0 -1
  623. package/dist/admin/chunks/th-BtTtpHe2.js.map +0 -1
  624. package/dist/admin/chunks/th-COl50vqb.mjs.map +0 -1
  625. package/dist/admin/chunks/tr-80SJU6jg.mjs.map +0 -1
  626. package/dist/admin/chunks/tr-Di-Nf7cT.js.map +0 -1
  627. package/dist/admin/chunks/uk-DnrIlPwG.mjs.map +0 -1
  628. package/dist/admin/chunks/uk-r5zXTAS7.js.map +0 -1
  629. package/dist/admin/chunks/vi-69AF03Iv.mjs.map +0 -1
  630. package/dist/admin/chunks/vi-D9cCsHsU.js.map +0 -1
  631. package/dist/admin/chunks/zh-BzSkqxo-.mjs.map +0 -1
  632. package/dist/admin/chunks/zh-BzWgJEzz.js.map +0 -1
  633. package/dist/admin/chunks/zh-Hans-CKqQbpsM.js.map +0 -1
  634. package/dist/admin/chunks/zh-Hans-DmDcSsp7.mjs.map +0 -1
@@ -1,1516 +0,0 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
2
- import * as React from 'react';
3
- import { createContext, useContext, useMemo, useCallback, useReducer, forwardRef, useImperativeHandle, memo, useEffect, useState } from 'react';
4
- import { translatedErrors, useNotification, useFetchClient, useAPIErrorHandler, Page, useTracking, Layouts, BackButton, useQueryParams, useRBAC, SearchInput, ConfirmDialog } from '@strapi/strapi/admin';
5
- import { useNavigate, useMatch, NavLink, Routes, Route } from 'react-router-dom';
6
- import { g as getTrad, P as PERMISSIONS } from './index-CY5JZ38k.mjs';
7
- import { Box, Flex, Typography, Checkbox, Grid, VisuallyHidden, Accordion, Main, Button, Field, TextInput, Textarea, Link, Tbody, Tr, Td, IconButton, useNotifyAT, useFilter, useCollator, LinkButton, Table, Thead, Th, EmptyStateLayout, Dialog } from '@strapi/design-system';
8
- import { Cog, Check, Pencil, Trash, Plus } from '@strapi/icons';
9
- import { Formik, Form } from 'formik';
10
- import { useIntl } from 'react-intl';
11
- import { useQueries, useMutation, useQuery } from 'react-query';
12
- import PropTypes from 'prop-types';
13
- import upperFirst from 'lodash/upperFirst';
14
- import sortBy from 'lodash/sortBy';
15
- import get from 'lodash/get';
16
- import { css, styled } from 'styled-components';
17
- import { produce } from 'immer';
18
- import isEmpty from 'lodash/isEmpty';
19
- import without from 'lodash/without';
20
- import map from 'lodash/map';
21
- import tail from 'lodash/tail';
22
- import set from 'lodash/set';
23
- import take from 'lodash/take';
24
- import * as yup from 'yup';
25
-
26
- const UsersPermissions$2 = /*#__PURE__*/ createContext({});
27
- const UsersPermissionsProvider = ({ children, value })=>{
28
- return /*#__PURE__*/ jsx(UsersPermissions$2.Provider, {
29
- value: value,
30
- children: children
31
- });
32
- };
33
- const useUsersPermissions = ()=>useContext(UsersPermissions$2);
34
- UsersPermissionsProvider.propTypes = {
35
- children: PropTypes.node.isRequired,
36
- value: PropTypes.object.isRequired
37
- };
38
-
39
- function formatPluginName(pluginSlug) {
40
- switch(pluginSlug){
41
- case 'application':
42
- return 'Application';
43
- case 'plugin::content-manager':
44
- return 'Content manager';
45
- case 'plugin::content-type-builder':
46
- return 'Content types builder';
47
- case 'plugin::documentation':
48
- return 'Documentation';
49
- case 'plugin::email':
50
- return 'Email';
51
- case 'plugin::i18n':
52
- return 'i18n';
53
- case 'plugin::upload':
54
- return 'Upload';
55
- case 'plugin::users-permissions':
56
- return 'Users-permissions';
57
- default:
58
- return upperFirst(pluginSlug.replace('api::', '').replace('plugin::', ''));
59
- }
60
- }
61
-
62
- const init$1 = (initialState, permissions)=>{
63
- const collapses = Object.keys(permissions).sort().map((name)=>({
64
- name,
65
- isOpen: false
66
- }));
67
- return {
68
- ...initialState,
69
- collapses
70
- };
71
- };
72
-
73
- const activeCheckboxWrapperStyles = css`
74
- background: ${(props)=>props.theme.colors.primary100};
75
-
76
- #cog {
77
- opacity: 1;
78
- }
79
- `;
80
- const CheckboxWrapper = styled(Box)`
81
- display: flex;
82
- justify-content: space-between;
83
- align-items: center;
84
-
85
- #cog {
86
- opacity: 0;
87
- path {
88
- fill: ${(props)=>props.theme.colors.primary600};
89
- }
90
- }
91
-
92
- /* Show active style both on hover and when the action is selected */
93
- ${(props)=>props.isActive && activeCheckboxWrapperStyles}
94
- &:hover {
95
- ${activeCheckboxWrapperStyles}
96
- }
97
- `;
98
-
99
- const Border = styled.div`
100
- flex: 1;
101
- align-self: center;
102
- border-top: 1px solid ${({ theme })=>theme.colors.neutral150};
103
- `;
104
- const SubCategory = ({ subCategory })=>{
105
- const { formatMessage } = useIntl();
106
- const { onChange, onChangeSelectAll, onSelectedAction, selectedAction, modifiedData } = useUsersPermissions();
107
- const currentScopedModifiedData = useMemo(()=>{
108
- return get(modifiedData, subCategory.name, {});
109
- }, [
110
- modifiedData,
111
- subCategory
112
- ]);
113
- const hasAllActionsSelected = useMemo(()=>{
114
- return Object.values(currentScopedModifiedData).every((action)=>action.enabled === true);
115
- }, [
116
- currentScopedModifiedData
117
- ]);
118
- const hasSomeActionsSelected = useMemo(()=>{
119
- return Object.values(currentScopedModifiedData).some((action)=>action.enabled === true) && !hasAllActionsSelected;
120
- }, [
121
- currentScopedModifiedData,
122
- hasAllActionsSelected
123
- ]);
124
- const handleChangeSelectAll = useCallback(({ target: { name } })=>{
125
- onChangeSelectAll({
126
- target: {
127
- name,
128
- value: !hasAllActionsSelected
129
- }
130
- });
131
- }, [
132
- hasAllActionsSelected,
133
- onChangeSelectAll
134
- ]);
135
- const isActionSelected = useCallback((actionName)=>{
136
- return selectedAction === actionName;
137
- }, [
138
- selectedAction
139
- ]);
140
- return /*#__PURE__*/ jsxs(Box, {
141
- children: [
142
- /*#__PURE__*/ jsxs(Flex, {
143
- justifyContent: "space-between",
144
- alignItems: "center",
145
- children: [
146
- /*#__PURE__*/ jsx(Box, {
147
- paddingRight: 4,
148
- children: /*#__PURE__*/ jsx(Typography, {
149
- variant: "sigma",
150
- textColor: "neutral600",
151
- children: subCategory.label
152
- })
153
- }),
154
- /*#__PURE__*/ jsx(Border, {}),
155
- /*#__PURE__*/ jsx(Box, {
156
- paddingLeft: 4,
157
- children: /*#__PURE__*/ jsx(Checkbox, {
158
- name: subCategory.name,
159
- checked: hasSomeActionsSelected ? 'indeterminate' : hasAllActionsSelected,
160
- onCheckedChange: (value)=>handleChangeSelectAll({
161
- target: {
162
- name: subCategory.name,
163
- value
164
- }
165
- }),
166
- children: formatMessage({
167
- id: 'app.utils.select-all',
168
- defaultMessage: 'Select all'
169
- })
170
- })
171
- })
172
- ]
173
- }),
174
- /*#__PURE__*/ jsx(Flex, {
175
- paddingTop: 6,
176
- paddingBottom: 6,
177
- children: /*#__PURE__*/ jsx(Grid.Root, {
178
- gap: 2,
179
- style: {
180
- flex: 1
181
- },
182
- children: subCategory.actions.map((action)=>{
183
- const name = `${action.name}.enabled`;
184
- return /*#__PURE__*/ jsx(Grid.Item, {
185
- col: 6,
186
- direction: "column",
187
- alignItems: "stretch",
188
- children: /*#__PURE__*/ jsxs(CheckboxWrapper, {
189
- isActive: isActionSelected(action.name),
190
- padding: 2,
191
- hasRadius: true,
192
- children: [
193
- /*#__PURE__*/ jsx(Checkbox, {
194
- checked: get(modifiedData, name, false),
195
- name: name,
196
- onCheckedChange: (value)=>onChange({
197
- target: {
198
- name,
199
- value
200
- }
201
- }),
202
- children: action.label
203
- }),
204
- /*#__PURE__*/ jsxs("button", {
205
- type: "button",
206
- onClick: ()=>onSelectedAction(action.name),
207
- style: {
208
- display: 'inline-flex',
209
- alignItems: 'center'
210
- },
211
- children: [
212
- /*#__PURE__*/ jsx(VisuallyHidden, {
213
- tag: "span",
214
- children: formatMessage({
215
- id: 'app.utils.show-bound-route',
216
- defaultMessage: 'Show bound route for {route}'
217
- }, {
218
- route: action.name
219
- })
220
- }),
221
- /*#__PURE__*/ jsx(Cog, {
222
- id: "cog",
223
- cursor: "pointer"
224
- })
225
- ]
226
- })
227
- ]
228
- })
229
- }, action.name);
230
- })
231
- })
232
- })
233
- ]
234
- });
235
- };
236
- SubCategory.propTypes = {
237
- subCategory: PropTypes.object.isRequired
238
- };
239
-
240
- const PermissionRow = ({ name, permissions })=>{
241
- const subCategories = useMemo(()=>{
242
- return sortBy(Object.values(permissions.controllers).reduce((acc, curr, index)=>{
243
- const currentName = `${name}.controllers.${Object.keys(permissions.controllers)[index]}`;
244
- const actions = sortBy(Object.keys(curr).reduce((acc, current)=>{
245
- return [
246
- ...acc,
247
- {
248
- ...curr[current],
249
- label: current,
250
- name: `${currentName}.${current}`
251
- }
252
- ];
253
- }, []), 'label');
254
- return [
255
- ...acc,
256
- {
257
- actions,
258
- label: Object.keys(permissions.controllers)[index],
259
- name: currentName
260
- }
261
- ];
262
- }, []), 'label');
263
- }, [
264
- name,
265
- permissions
266
- ]);
267
- return /*#__PURE__*/ jsx(Box, {
268
- padding: 6,
269
- children: subCategories.map((subCategory)=>/*#__PURE__*/ jsx(SubCategory, {
270
- subCategory: subCategory
271
- }, subCategory.name))
272
- });
273
- };
274
- PermissionRow.propTypes = {
275
- name: PropTypes.string.isRequired,
276
- permissions: PropTypes.object.isRequired
277
- };
278
-
279
- const initialState$1 = {
280
- collapses: []
281
- };
282
- const reducer$1 = (state, action)=>// eslint-disable-next-line consistent-return
283
- produce(state, (draftState)=>{
284
- switch(action.type){
285
- case 'TOGGLE_COLLAPSE':
286
- {
287
- draftState.collapses = state.collapses.map((collapse, index)=>{
288
- if (index === action.index) {
289
- return {
290
- ...collapse,
291
- isOpen: !collapse.isOpen
292
- };
293
- }
294
- return {
295
- ...collapse,
296
- isOpen: false
297
- };
298
- });
299
- break;
300
- }
301
- default:
302
- return draftState;
303
- }
304
- });
305
-
306
- const Permissions = ()=>{
307
- const { modifiedData } = useUsersPermissions();
308
- const { formatMessage } = useIntl();
309
- const [{ collapses }] = useReducer(reducer$1, initialState$1, (state)=>init$1(state, modifiedData));
310
- return /*#__PURE__*/ jsx(Accordion.Root, {
311
- size: "M",
312
- children: /*#__PURE__*/ jsx(Flex, {
313
- direction: "column",
314
- alignItems: "stretch",
315
- gap: 1,
316
- children: collapses.map((collapse, index)=>/*#__PURE__*/ jsxs(Accordion.Item, {
317
- value: collapse.name,
318
- children: [
319
- /*#__PURE__*/ jsx(Accordion.Header, {
320
- variant: index % 2 === 0 ? 'secondary' : undefined,
321
- children: /*#__PURE__*/ jsx(Accordion.Trigger, {
322
- caretPosition: "right",
323
- description: formatMessage({
324
- id: 'users-permissions.Plugin.permissions.plugins.description',
325
- defaultMessage: 'Define all allowed actions for the {name} plugin.'
326
- }, {
327
- name: collapse.name
328
- }),
329
- children: formatPluginName(collapse.name)
330
- })
331
- }),
332
- /*#__PURE__*/ jsx(Accordion.Content, {
333
- children: /*#__PURE__*/ jsx(PermissionRow, {
334
- permissions: modifiedData[collapse.name],
335
- name: collapse.name
336
- })
337
- })
338
- ]
339
- }, collapse.name))
340
- })
341
- });
342
- };
343
-
344
- const getMethodColor = (verb)=>{
345
- switch(verb){
346
- case 'POST':
347
- {
348
- return {
349
- text: 'success600',
350
- border: 'success200',
351
- background: 'success100'
352
- };
353
- }
354
- case 'GET':
355
- {
356
- return {
357
- text: 'secondary600',
358
- border: 'secondary200',
359
- background: 'secondary100'
360
- };
361
- }
362
- case 'PUT':
363
- {
364
- return {
365
- text: 'warning600',
366
- border: 'warning200',
367
- background: 'warning100'
368
- };
369
- }
370
- case 'DELETE':
371
- {
372
- return {
373
- text: 'danger600',
374
- border: 'danger200',
375
- background: 'danger100'
376
- };
377
- }
378
- default:
379
- {
380
- return {
381
- text: 'neutral600',
382
- border: 'neutral200',
383
- background: 'neutral100'
384
- };
385
- }
386
- }
387
- };
388
-
389
- const MethodBox = styled(Box)`
390
- margin: -1px;
391
- border-radius: ${({ theme })=>theme.spaces[1]} 0 0 ${({ theme })=>theme.spaces[1]};
392
- `;
393
- function BoundRoute({ route }) {
394
- const { formatMessage } = useIntl();
395
- const { method, handler: title, path } = route;
396
- const formattedRoute = path ? tail(path.split('/')) : [];
397
- const [controller = '', action = ''] = title ? title.split('.') : [];
398
- const colors = getMethodColor(route.method);
399
- return /*#__PURE__*/ jsxs(Flex, {
400
- direction: "column",
401
- alignItems: "stretch",
402
- gap: 2,
403
- children: [
404
- /*#__PURE__*/ jsxs(Typography, {
405
- variant: "delta",
406
- tag: "h3",
407
- children: [
408
- formatMessage({
409
- id: 'users-permissions.BoundRoute.title',
410
- defaultMessage: 'Bound route to'
411
- }),
412
- " ",
413
- /*#__PURE__*/ jsx("span", {
414
- children: controller
415
- }),
416
- /*#__PURE__*/ jsxs(Typography, {
417
- variant: "delta",
418
- textColor: "primary600",
419
- children: [
420
- ".",
421
- action
422
- ]
423
- })
424
- ]
425
- }),
426
- /*#__PURE__*/ jsxs(Flex, {
427
- hasRadius: true,
428
- background: "neutral0",
429
- borderColor: "neutral200",
430
- gap: 0,
431
- children: [
432
- /*#__PURE__*/ jsx(MethodBox, {
433
- background: colors.background,
434
- borderColor: colors.border,
435
- padding: 2,
436
- children: /*#__PURE__*/ jsx(Typography, {
437
- fontWeight: "bold",
438
- textColor: colors.text,
439
- children: method
440
- })
441
- }),
442
- /*#__PURE__*/ jsx(Box, {
443
- paddingLeft: 2,
444
- paddingRight: 2,
445
- children: map(formattedRoute, (value)=>/*#__PURE__*/ jsxs(Typography, {
446
- textColor: value.includes(':') ? 'neutral600' : 'neutral900',
447
- children: [
448
- "/",
449
- value
450
- ]
451
- }, value))
452
- })
453
- ]
454
- })
455
- ]
456
- });
457
- }
458
- BoundRoute.defaultProps = {
459
- route: {
460
- handler: 'Nocontroller.error',
461
- method: 'GET',
462
- path: '/there-is-no-path'
463
- }
464
- };
465
- BoundRoute.propTypes = {
466
- route: PropTypes.shape({
467
- handler: PropTypes.string,
468
- method: PropTypes.string,
469
- path: PropTypes.string
470
- })
471
- };
472
-
473
- const Policies = ()=>{
474
- const { formatMessage } = useIntl();
475
- const { selectedAction, routes } = useUsersPermissions();
476
- const path = without(selectedAction.split('.'), 'controllers');
477
- const controllerRoutes = get(routes, path[0]);
478
- const pathResolved = path.slice(1).join('.');
479
- const displayedRoutes = isEmpty(controllerRoutes) ? [] : controllerRoutes.filter((o)=>o.handler.endsWith(pathResolved));
480
- return /*#__PURE__*/ jsx(Grid.Item, {
481
- col: 5,
482
- background: "neutral150",
483
- paddingTop: 6,
484
- paddingBottom: 6,
485
- paddingLeft: 7,
486
- paddingRight: 7,
487
- style: {
488
- minHeight: '100%'
489
- },
490
- direction: "column",
491
- alignItems: "stretch",
492
- children: selectedAction ? /*#__PURE__*/ jsx(Flex, {
493
- direction: "column",
494
- alignItems: "stretch",
495
- gap: 2,
496
- children: displayedRoutes.map((route, key)=>// eslint-disable-next-line react/no-array-index-key
497
- /*#__PURE__*/ jsx(BoundRoute, {
498
- route: route
499
- }, key))
500
- }) : /*#__PURE__*/ jsxs(Flex, {
501
- direction: "column",
502
- alignItems: "stretch",
503
- gap: 2,
504
- children: [
505
- /*#__PURE__*/ jsx(Typography, {
506
- variant: "delta",
507
- tag: "h3",
508
- children: formatMessage({
509
- id: 'users-permissions.Policies.header.title',
510
- defaultMessage: 'Advanced settings'
511
- })
512
- }),
513
- /*#__PURE__*/ jsx(Typography, {
514
- tag: "p",
515
- textColor: "neutral600",
516
- children: formatMessage({
517
- id: 'users-permissions.Policies.header.hint',
518
- defaultMessage: "Select the application's actions or the plugin's actions and click on the cog icon to display the bound route"
519
- })
520
- })
521
- ]
522
- })
523
- });
524
- };
525
-
526
- const init = (state, permissions, routes)=>{
527
- return {
528
- ...state,
529
- initialData: permissions,
530
- modifiedData: permissions,
531
- routes
532
- };
533
- };
534
-
535
- const initialState = {
536
- initialData: {},
537
- modifiedData: {},
538
- routes: {},
539
- selectedAction: '',
540
- policies: []
541
- };
542
- const reducer = (state, action)=>produce(state, (draftState)=>{
543
- switch(action.type){
544
- case 'ON_CHANGE':
545
- {
546
- const keysLength = action.keys.length;
547
- const isChangingCheckbox = action.keys[keysLength - 1] === 'enabled';
548
- if (action.value && isChangingCheckbox) {
549
- const selectedAction = take(action.keys, keysLength - 1).join('.');
550
- draftState.selectedAction = selectedAction;
551
- }
552
- set(draftState, [
553
- 'modifiedData',
554
- ...action.keys
555
- ], action.value);
556
- break;
557
- }
558
- case 'ON_CHANGE_SELECT_ALL':
559
- {
560
- const pathToValue = [
561
- 'modifiedData',
562
- ...action.keys
563
- ];
564
- const oldValues = get(state, pathToValue, {});
565
- const updatedValues = Object.keys(oldValues).reduce((acc, current)=>{
566
- acc[current] = {
567
- ...oldValues[current],
568
- enabled: action.value
569
- };
570
- return acc;
571
- }, {});
572
- set(draftState, pathToValue, updatedValues);
573
- break;
574
- }
575
- case 'ON_RESET':
576
- {
577
- draftState.modifiedData = state.initialData;
578
- break;
579
- }
580
- case 'ON_SUBMIT_SUCCEEDED':
581
- {
582
- draftState.initialData = state.modifiedData;
583
- break;
584
- }
585
- case 'SELECT_ACTION':
586
- {
587
- const { actionToSelect } = action;
588
- draftState.selectedAction = actionToSelect === state.selectedAction ? '' : actionToSelect;
589
- break;
590
- }
591
- default:
592
- return draftState;
593
- }
594
- });
595
-
596
- const UsersPermissions = /*#__PURE__*/ forwardRef(({ permissions, routes }, ref)=>{
597
- const { formatMessage } = useIntl();
598
- const [state, dispatch] = useReducer(reducer, initialState, (state)=>init(state, permissions, routes));
599
- useImperativeHandle(ref, ()=>({
600
- getPermissions () {
601
- return {
602
- permissions: state.modifiedData
603
- };
604
- },
605
- resetForm () {
606
- dispatch({
607
- type: 'ON_RESET'
608
- });
609
- },
610
- setFormAfterSubmit () {
611
- dispatch({
612
- type: 'ON_SUBMIT_SUCCEEDED'
613
- });
614
- }
615
- }));
616
- const handleChange = ({ target: { name, value } })=>dispatch({
617
- type: 'ON_CHANGE',
618
- keys: name.split('.'),
619
- value: value === 'empty__string_value' ? '' : value
620
- });
621
- const handleChangeSelectAll = ({ target: { name, value } })=>dispatch({
622
- type: 'ON_CHANGE_SELECT_ALL',
623
- keys: name.split('.'),
624
- value
625
- });
626
- const handleSelectedAction = (actionToSelect)=>dispatch({
627
- type: 'SELECT_ACTION',
628
- actionToSelect
629
- });
630
- const providerValue = {
631
- ...state,
632
- onChange: handleChange,
633
- onChangeSelectAll: handleChangeSelectAll,
634
- onSelectedAction: handleSelectedAction
635
- };
636
- return /*#__PURE__*/ jsx(UsersPermissionsProvider, {
637
- value: providerValue,
638
- children: /*#__PURE__*/ jsxs(Grid.Root, {
639
- gap: 0,
640
- shadow: "filterShadow",
641
- hasRadius: true,
642
- background: "neutral0",
643
- children: [
644
- /*#__PURE__*/ jsx(Grid.Item, {
645
- col: 7,
646
- paddingTop: 6,
647
- paddingBottom: 6,
648
- paddingLeft: 7,
649
- paddingRight: 7,
650
- direction: "column",
651
- alignItems: "stretch",
652
- children: /*#__PURE__*/ jsxs(Flex, {
653
- direction: "column",
654
- alignItems: "stretch",
655
- gap: 6,
656
- children: [
657
- /*#__PURE__*/ jsxs(Flex, {
658
- direction: "column",
659
- alignItems: "stretch",
660
- gap: 2,
661
- children: [
662
- /*#__PURE__*/ jsx(Typography, {
663
- variant: "delta",
664
- tag: "h2",
665
- children: formatMessage({
666
- id: getTrad('Plugins.header.title'),
667
- defaultMessage: 'Permissions'
668
- })
669
- }),
670
- /*#__PURE__*/ jsx(Typography, {
671
- tag: "p",
672
- textColor: "neutral600",
673
- children: formatMessage({
674
- id: getTrad('Plugins.header.description'),
675
- defaultMessage: 'Only actions bound by a route are listed below.'
676
- })
677
- })
678
- ]
679
- }),
680
- /*#__PURE__*/ jsx(Permissions, {})
681
- ]
682
- })
683
- }),
684
- /*#__PURE__*/ jsx(Policies, {})
685
- ]
686
- })
687
- });
688
- });
689
- UsersPermissions.propTypes = {
690
- permissions: PropTypes.object.isRequired,
691
- routes: PropTypes.object.isRequired
692
- };
693
- var UsersPermissions$1 = /*#__PURE__*/ memo(UsersPermissions);
694
-
695
- const createRoleSchema = yup.object().shape({
696
- name: yup.string().required(translatedErrors.required.id),
697
- description: yup.string().required(translatedErrors.required.id)
698
- });
699
-
700
- const cleanPermissions = (permissions)=>Object.keys(permissions).reduce((acc, current)=>{
701
- const currentPermission = permissions[current].controllers;
702
- const cleanedControllers = Object.keys(currentPermission).reduce((acc2, curr)=>{
703
- if (isEmpty(currentPermission[curr])) {
704
- return acc2;
705
- }
706
- acc2[curr] = currentPermission[curr];
707
- return acc2;
708
- }, {});
709
- if (isEmpty(cleanedControllers)) {
710
- return acc;
711
- }
712
- acc[current] = {
713
- controllers: cleanedControllers
714
- };
715
- return acc;
716
- }, {});
717
-
718
- const usePlugins = ()=>{
719
- const { toggleNotification } = useNotification();
720
- const { get } = useFetchClient();
721
- const { formatAPIError } = useAPIErrorHandler(getTrad);
722
- const [{ data: permissions, isLoading: isLoadingPermissions, error: permissionsError, refetch: refetchPermissions }, { data: routes, isLoading: isLoadingRoutes, error: routesError, refetch: refetchRoutes }] = useQueries([
723
- {
724
- queryKey: [
725
- 'users-permissions',
726
- 'permissions'
727
- ],
728
- async queryFn () {
729
- const { data: { permissions } } = await get(`/users-permissions/permissions`);
730
- return permissions;
731
- }
732
- },
733
- {
734
- queryKey: [
735
- 'users-permissions',
736
- 'routes'
737
- ],
738
- async queryFn () {
739
- const { data: { routes } } = await get(`/users-permissions/routes`);
740
- return routes;
741
- }
742
- }
743
- ]);
744
- const refetchQueries = async ()=>{
745
- await Promise.all([
746
- refetchPermissions(),
747
- refetchRoutes()
748
- ]);
749
- };
750
- useEffect(()=>{
751
- if (permissionsError) {
752
- toggleNotification({
753
- type: 'danger',
754
- message: formatAPIError(permissionsError)
755
- });
756
- }
757
- }, [
758
- toggleNotification,
759
- permissionsError,
760
- formatAPIError
761
- ]);
762
- useEffect(()=>{
763
- if (routesError) {
764
- toggleNotification({
765
- type: 'danger',
766
- message: formatAPIError(routesError)
767
- });
768
- }
769
- }, [
770
- toggleNotification,
771
- routesError,
772
- formatAPIError
773
- ]);
774
- const isLoading = isLoadingPermissions || isLoadingRoutes;
775
- return {
776
- // TODO: these return values need to be memoized, otherwise
777
- // they will create infinite rendering loops when used as
778
- // effect dependencies
779
- permissions: permissions ? cleanPermissions(permissions) : {},
780
- routes: routes ?? {},
781
- getData: refetchQueries,
782
- isLoading
783
- };
784
- };
785
-
786
- const CreatePage = ()=>{
787
- const { formatMessage } = useIntl();
788
- const { toggleNotification } = useNotification();
789
- const navigate = useNavigate();
790
- const { isLoading: isLoadingPlugins, permissions, routes } = usePlugins();
791
- const { trackUsage } = useTracking();
792
- const permissionsRef = React.useRef();
793
- const { post } = useFetchClient();
794
- const mutation = useMutation((body)=>post(`/users-permissions/roles`, body), {
795
- onError () {
796
- toggleNotification({
797
- type: 'danger',
798
- message: formatMessage({
799
- id: 'notification.error',
800
- defaultMessage: 'An error occurred'
801
- })
802
- });
803
- },
804
- onSuccess () {
805
- trackUsage('didCreateRole');
806
- toggleNotification({
807
- type: 'success',
808
- message: formatMessage({
809
- id: getTrad('Settings.roles.created'),
810
- defaultMessage: 'Role created'
811
- })
812
- });
813
- // Forcing redirecting since we don't have the id in the response
814
- navigate(-1);
815
- }
816
- });
817
- const handleCreateRoleSubmit = async (data)=>{
818
- // TODO: refactor. Child -> parent component communication is evil;
819
- // We should either move the provider one level up or move the state
820
- // straight into redux.
821
- const permissions = permissionsRef.current.getPermissions();
822
- await mutation.mutate({
823
- ...data,
824
- ...permissions,
825
- users: []
826
- });
827
- };
828
- return /*#__PURE__*/ jsxs(Main, {
829
- children: [
830
- /*#__PURE__*/ jsx(Page.Title, {
831
- children: formatMessage({
832
- id: 'Settings.PageTitle',
833
- defaultMessage: 'Settings - {name}'
834
- }, {
835
- name: 'Roles'
836
- })
837
- }),
838
- /*#__PURE__*/ jsx(Formik, {
839
- enableReinitialize: true,
840
- initialValues: {
841
- name: '',
842
- description: ''
843
- },
844
- onSubmit: handleCreateRoleSubmit,
845
- validationSchema: createRoleSchema,
846
- children: ({ handleSubmit, values, handleChange, errors })=>/*#__PURE__*/ jsxs(Form, {
847
- noValidate: true,
848
- onSubmit: handleSubmit,
849
- children: [
850
- /*#__PURE__*/ jsx(Layouts.Header, {
851
- primaryAction: !isLoadingPlugins && /*#__PURE__*/ jsx(Button, {
852
- type: "submit",
853
- loading: mutation.isLoading,
854
- startIcon: /*#__PURE__*/ jsx(Check, {}),
855
- children: formatMessage({
856
- id: 'global.save',
857
- defaultMessage: 'Save'
858
- })
859
- }),
860
- title: formatMessage({
861
- id: 'Settings.roles.create.title',
862
- defaultMessage: 'Create a role'
863
- }),
864
- subtitle: formatMessage({
865
- id: 'Settings.roles.create.description',
866
- defaultMessage: 'Define the rights given to the role'
867
- })
868
- }),
869
- /*#__PURE__*/ jsx(Layouts.Content, {
870
- children: /*#__PURE__*/ jsxs(Flex, {
871
- background: "neutral0",
872
- direction: "column",
873
- alignItems: "stretch",
874
- gap: 7,
875
- hasRadius: true,
876
- paddingTop: 6,
877
- paddingBottom: 6,
878
- paddingLeft: 7,
879
- paddingRight: 7,
880
- shadow: "filterShadow",
881
- children: [
882
- /*#__PURE__*/ jsxs(Flex, {
883
- direction: "column",
884
- alignItems: "stretch",
885
- children: [
886
- /*#__PURE__*/ jsx(Typography, {
887
- variant: "delta",
888
- tag: "h2",
889
- children: formatMessage({
890
- id: getTrad('EditPage.form.roles'),
891
- defaultMessage: 'Role details'
892
- })
893
- }),
894
- /*#__PURE__*/ jsxs(Grid.Root, {
895
- gap: 4,
896
- children: [
897
- /*#__PURE__*/ jsx(Grid.Item, {
898
- col: 6,
899
- direction: "column",
900
- alignItems: "stretch",
901
- children: /*#__PURE__*/ jsxs(Field.Root, {
902
- name: "name",
903
- error: errors?.name ? formatMessage({
904
- id: errors.name,
905
- defaultMessage: 'Name is required'
906
- }) : false,
907
- required: true,
908
- children: [
909
- /*#__PURE__*/ jsx(Field.Label, {
910
- children: formatMessage({
911
- id: 'global.name',
912
- defaultMessage: 'Name'
913
- })
914
- }),
915
- /*#__PURE__*/ jsx(TextInput, {
916
- value: values.name || '',
917
- onChange: handleChange
918
- }),
919
- /*#__PURE__*/ jsx(Field.Error, {})
920
- ]
921
- })
922
- }),
923
- /*#__PURE__*/ jsx(Grid.Item, {
924
- col: 6,
925
- direction: "column",
926
- alignItems: "stretch",
927
- children: /*#__PURE__*/ jsxs(Field.Root, {
928
- name: "description",
929
- error: errors?.description ? formatMessage({
930
- id: errors.description,
931
- defaultMessage: 'Description is required'
932
- }) : false,
933
- required: true,
934
- children: [
935
- /*#__PURE__*/ jsx(Field.Label, {
936
- children: formatMessage({
937
- id: 'global.description',
938
- defaultMessage: 'Description'
939
- })
940
- }),
941
- /*#__PURE__*/ jsx(Textarea, {
942
- value: values.description || '',
943
- onChange: handleChange
944
- }),
945
- /*#__PURE__*/ jsx(Field.Error, {})
946
- ]
947
- })
948
- })
949
- ]
950
- })
951
- ]
952
- }),
953
- !isLoadingPlugins && /*#__PURE__*/ jsx(UsersPermissions$1, {
954
- ref: permissionsRef,
955
- permissions: permissions,
956
- routes: routes
957
- })
958
- ]
959
- })
960
- })
961
- ]
962
- })
963
- })
964
- ]
965
- });
966
- };
967
- const ProtectedRolesCreatePage = ()=>/*#__PURE__*/ jsx(Page.Protect, {
968
- permissions: PERMISSIONS.createRole,
969
- children: /*#__PURE__*/ jsx(CreatePage, {})
970
- });
971
-
972
- const EditPage = ()=>{
973
- const { formatMessage } = useIntl();
974
- const { toggleNotification } = useNotification();
975
- const { params: { id } } = useMatch(`/settings/users-permissions/roles/:id`);
976
- const { get } = useFetchClient();
977
- const { isLoading: isLoadingPlugins, routes } = usePlugins();
978
- const { data: role, isLoading: isLoadingRole, refetch: refetchRole } = useQuery([
979
- 'users-permissions',
980
- 'role',
981
- id
982
- ], async ()=>{
983
- // TODO: why doesn't this endpoint follow the admin API conventions?
984
- const { data: { role } } = await get(`/users-permissions/roles/${id}`);
985
- return role;
986
- });
987
- const permissionsRef = React.useRef();
988
- const { put } = useFetchClient();
989
- const { formatAPIError } = useAPIErrorHandler();
990
- const mutation = useMutation((body)=>put(`/users-permissions/roles/${id}`, body), {
991
- onError (error) {
992
- toggleNotification({
993
- type: 'danger',
994
- message: formatAPIError(error)
995
- });
996
- },
997
- async onSuccess () {
998
- toggleNotification({
999
- type: 'success',
1000
- message: formatMessage({
1001
- id: getTrad('Settings.roles.created'),
1002
- defaultMessage: 'Role edited'
1003
- })
1004
- });
1005
- await refetchRole();
1006
- }
1007
- });
1008
- const handleEditRoleSubmit = async (data)=>{
1009
- const permissions = permissionsRef.current.getPermissions();
1010
- await mutation.mutate({
1011
- ...data,
1012
- ...permissions,
1013
- users: []
1014
- });
1015
- };
1016
- if (isLoadingRole) {
1017
- return /*#__PURE__*/ jsx(Page.Loading, {});
1018
- }
1019
- return /*#__PURE__*/ jsxs(Main, {
1020
- children: [
1021
- /*#__PURE__*/ jsx(Page.Title, {
1022
- children: formatMessage({
1023
- id: 'Settings.PageTitle',
1024
- defaultMessage: 'Settings - {name}'
1025
- }, {
1026
- name: 'Roles'
1027
- })
1028
- }),
1029
- /*#__PURE__*/ jsx(Formik, {
1030
- enableReinitialize: true,
1031
- initialValues: {
1032
- name: role.name,
1033
- description: role.description
1034
- },
1035
- onSubmit: handleEditRoleSubmit,
1036
- validationSchema: createRoleSchema,
1037
- children: ({ handleSubmit, values, handleChange, errors })=>/*#__PURE__*/ jsxs(Form, {
1038
- noValidate: true,
1039
- onSubmit: handleSubmit,
1040
- children: [
1041
- /*#__PURE__*/ jsx(Layouts.Header, {
1042
- primaryAction: !isLoadingPlugins ? /*#__PURE__*/ jsx(Button, {
1043
- disabled: role.code === 'strapi-super-admin',
1044
- type: "submit",
1045
- loading: mutation.isLoading,
1046
- startIcon: /*#__PURE__*/ jsx(Check, {}),
1047
- children: formatMessage({
1048
- id: 'global.save',
1049
- defaultMessage: 'Save'
1050
- })
1051
- }) : null,
1052
- title: role.name,
1053
- subtitle: role.description,
1054
- navigationAction: /*#__PURE__*/ jsx(BackButton, {
1055
- fallback: ".."
1056
- })
1057
- }),
1058
- /*#__PURE__*/ jsx(Layouts.Content, {
1059
- children: /*#__PURE__*/ jsxs(Flex, {
1060
- background: "neutral0",
1061
- direction: "column",
1062
- alignItems: "stretch",
1063
- gap: 7,
1064
- hasRadius: true,
1065
- paddingTop: 6,
1066
- paddingBottom: 6,
1067
- paddingLeft: 7,
1068
- paddingRight: 7,
1069
- shadow: "filterShadow",
1070
- children: [
1071
- /*#__PURE__*/ jsxs(Flex, {
1072
- direction: "column",
1073
- alignItems: "stretch",
1074
- gap: 4,
1075
- children: [
1076
- /*#__PURE__*/ jsx(Typography, {
1077
- variant: "delta",
1078
- tag: "h2",
1079
- children: formatMessage({
1080
- id: getTrad('EditPage.form.roles'),
1081
- defaultMessage: 'Role details'
1082
- })
1083
- }),
1084
- /*#__PURE__*/ jsxs(Grid.Root, {
1085
- gap: 4,
1086
- children: [
1087
- /*#__PURE__*/ jsx(Grid.Item, {
1088
- col: 6,
1089
- direction: "column",
1090
- alignItems: "stretch",
1091
- children: /*#__PURE__*/ jsxs(Field.Root, {
1092
- name: "name",
1093
- error: errors?.name ? formatMessage({
1094
- id: errors.name,
1095
- defaultMessage: 'Name is required'
1096
- }) : false,
1097
- required: true,
1098
- children: [
1099
- /*#__PURE__*/ jsx(Field.Label, {
1100
- children: formatMessage({
1101
- id: 'global.name',
1102
- defaultMessage: 'Name'
1103
- })
1104
- }),
1105
- /*#__PURE__*/ jsx(TextInput, {
1106
- value: values.name || '',
1107
- onChange: handleChange
1108
- }),
1109
- /*#__PURE__*/ jsx(Field.Error, {})
1110
- ]
1111
- })
1112
- }),
1113
- /*#__PURE__*/ jsx(Grid.Item, {
1114
- col: 6,
1115
- direction: "column",
1116
- alignItems: "stretch",
1117
- children: /*#__PURE__*/ jsxs(Field.Root, {
1118
- name: "description",
1119
- error: errors?.description ? formatMessage({
1120
- id: errors.description,
1121
- defaultMessage: 'Description is required'
1122
- }) : false,
1123
- required: true,
1124
- children: [
1125
- /*#__PURE__*/ jsx(Field.Label, {
1126
- children: formatMessage({
1127
- id: 'global.description',
1128
- defaultMessage: 'Description'
1129
- })
1130
- }),
1131
- /*#__PURE__*/ jsx(Textarea, {
1132
- value: values.description || '',
1133
- onChange: handleChange
1134
- }),
1135
- /*#__PURE__*/ jsx(Field.Error, {})
1136
- ]
1137
- })
1138
- })
1139
- ]
1140
- })
1141
- ]
1142
- }),
1143
- !isLoadingPlugins && /*#__PURE__*/ jsx(UsersPermissions$1, {
1144
- ref: permissionsRef,
1145
- permissions: role.permissions,
1146
- routes: routes
1147
- })
1148
- ]
1149
- })
1150
- })
1151
- ]
1152
- })
1153
- })
1154
- ]
1155
- });
1156
- };
1157
- const ProtectedRolesEditPage = ()=>/*#__PURE__*/ jsx(Page.Protect, {
1158
- permissions: PERMISSIONS.updateRole,
1159
- children: /*#__PURE__*/ jsx(EditPage, {})
1160
- });
1161
-
1162
- const EditLink = styled(Link)`
1163
- align-items: center;
1164
- height: 3.2rem;
1165
- width: 3.2rem;
1166
- display: flex;
1167
- justify-content: center;
1168
- padding: ${({ theme })=>`${theme.spaces[2]}`};
1169
-
1170
- svg {
1171
- height: 1.6rem;
1172
- width: 1.6rem;
1173
-
1174
- path {
1175
- fill: ${({ theme })=>theme.colors.neutral500};
1176
- }
1177
- }
1178
-
1179
- &:hover,
1180
- &:focus {
1181
- svg {
1182
- path {
1183
- fill: ${({ theme })=>theme.colors.neutral800};
1184
- }
1185
- }
1186
- }
1187
- `;
1188
- const TableBody = ({ sortedRoles, canDelete, canUpdate, setRoleToDelete, onDelete })=>{
1189
- const { formatMessage } = useIntl();
1190
- const navigate = useNavigate();
1191
- const [showConfirmDelete, setShowConfirmDelete] = onDelete;
1192
- const checkCanDeleteRole = (role)=>canDelete && ![
1193
- 'public',
1194
- 'authenticated'
1195
- ].includes(role.type);
1196
- const handleClickDelete = (id)=>{
1197
- setRoleToDelete(id);
1198
- setShowConfirmDelete(!showConfirmDelete);
1199
- };
1200
- return /*#__PURE__*/ jsx(Tbody, {
1201
- children: sortedRoles?.map((role)=>/*#__PURE__*/ jsxs(Tr, {
1202
- cursor: "pointer",
1203
- onClick: ()=>navigate(role.id.toString()),
1204
- children: [
1205
- /*#__PURE__*/ jsx(Td, {
1206
- width: "20%",
1207
- children: /*#__PURE__*/ jsx(Typography, {
1208
- children: role.name
1209
- })
1210
- }),
1211
- /*#__PURE__*/ jsx(Td, {
1212
- width: "50%",
1213
- children: /*#__PURE__*/ jsx(Typography, {
1214
- children: role.description
1215
- })
1216
- }),
1217
- /*#__PURE__*/ jsx(Td, {
1218
- width: "30%",
1219
- children: /*#__PURE__*/ jsx(Typography, {
1220
- children: formatMessage({
1221
- id: 'Roles.RoleRow.user-count',
1222
- defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}'
1223
- }, {
1224
- number: role.nb_users
1225
- })
1226
- })
1227
- }),
1228
- /*#__PURE__*/ jsx(Td, {
1229
- children: /*#__PURE__*/ jsxs(Flex, {
1230
- justifyContent: "end",
1231
- onClick: (e)=>e.stopPropagation(),
1232
- children: [
1233
- canUpdate ? /*#__PURE__*/ jsx(EditLink, {
1234
- tag: NavLink,
1235
- to: role.id.toString(),
1236
- "aria-label": formatMessage({
1237
- id: 'app.component.table.edit',
1238
- defaultMessage: 'Edit {target}'
1239
- }, {
1240
- target: `${role.name}`
1241
- }),
1242
- children: /*#__PURE__*/ jsx(Pencil, {})
1243
- }) : null,
1244
- checkCanDeleteRole(role) && /*#__PURE__*/ jsx(IconButton, {
1245
- onClick: ()=>handleClickDelete(role.id.toString()),
1246
- variant: "ghost",
1247
- label: formatMessage({
1248
- id: 'global.delete-target',
1249
- defaultMessage: 'Delete {target}'
1250
- }, {
1251
- target: `${role.name}`
1252
- }),
1253
- children: /*#__PURE__*/ jsx(Trash, {})
1254
- })
1255
- ]
1256
- })
1257
- })
1258
- ]
1259
- }, role.name))
1260
- });
1261
- };
1262
- TableBody.defaultProps = {
1263
- canDelete: false,
1264
- canUpdate: false
1265
- };
1266
- TableBody.propTypes = {
1267
- onDelete: PropTypes.array.isRequired,
1268
- setRoleToDelete: PropTypes.func.isRequired,
1269
- sortedRoles: PropTypes.array.isRequired,
1270
- canDelete: PropTypes.bool,
1271
- canUpdate: PropTypes.bool
1272
- };
1273
-
1274
- const RolesListPage = ()=>{
1275
- const { trackUsage } = useTracking();
1276
- const { formatMessage, locale } = useIntl();
1277
- const { toggleNotification } = useNotification();
1278
- const { notifyStatus } = useNotifyAT();
1279
- const [{ query }] = useQueryParams();
1280
- const _q = query?._q || '';
1281
- const [showConfirmDelete, setShowConfirmDelete] = useState(false);
1282
- const [roleToDelete, setRoleToDelete] = useState();
1283
- const { del, get } = useFetchClient();
1284
- const { isLoading: isLoadingForPermissions, allowedActions: { canRead, canDelete, canCreate, canUpdate } } = useRBAC({
1285
- create: PERMISSIONS.createRole,
1286
- read: PERMISSIONS.readRoles,
1287
- update: PERMISSIONS.updateRole,
1288
- delete: PERMISSIONS.deleteRole
1289
- });
1290
- const { isLoading: isLoadingForData, data: { roles }, isFetching, refetch } = useQuery('get-roles', ()=>fetchData(toggleNotification, formatMessage, notifyStatus), {
1291
- initialData: {},
1292
- enabled: canRead
1293
- });
1294
- const { contains } = useFilter(locale, {
1295
- sensitivity: 'base'
1296
- });
1297
- /**
1298
- * @type {Intl.Collator}
1299
- */ const formatter = useCollator(locale, {
1300
- sensitivity: 'base'
1301
- });
1302
- const isLoading = isLoadingForData || isFetching || isLoadingForPermissions;
1303
- const handleShowConfirmDelete = ()=>{
1304
- setShowConfirmDelete(!showConfirmDelete);
1305
- };
1306
- const deleteData = async (id, formatMessage, toggleNotification)=>{
1307
- try {
1308
- await del(`/users-permissions/roles/${id}`);
1309
- } catch (error) {
1310
- toggleNotification({
1311
- type: 'danger',
1312
- message: formatMessage({
1313
- id: 'notification.error',
1314
- defaultMessage: 'An error occured'
1315
- })
1316
- });
1317
- }
1318
- };
1319
- const fetchData = async (toggleNotification, formatMessage, notifyStatus)=>{
1320
- try {
1321
- const { data } = await get('/users-permissions/roles');
1322
- notifyStatus('The roles have loaded successfully');
1323
- return data;
1324
- } catch (err) {
1325
- toggleNotification({
1326
- type: 'danger',
1327
- message: formatMessage({
1328
- id: 'notification.error',
1329
- defaultMessage: 'An error occurred'
1330
- })
1331
- });
1332
- throw new Error(err);
1333
- }
1334
- };
1335
- const emptyLayout = {
1336
- roles: {
1337
- id: getTrad('Roles.empty'),
1338
- defaultMessage: "You don't have any roles yet."
1339
- },
1340
- search: {
1341
- id: getTrad('Roles.empty.search'),
1342
- defaultMessage: 'No roles match the search.'
1343
- }
1344
- };
1345
- const pageTitle = formatMessage({
1346
- id: 'global.roles',
1347
- defaultMessage: 'Roles'
1348
- });
1349
- const deleteMutation = useMutation((id)=>deleteData(id, formatMessage, toggleNotification), {
1350
- async onSuccess () {
1351
- await refetch();
1352
- }
1353
- });
1354
- const handleConfirmDelete = async ()=>{
1355
- await deleteMutation.mutateAsync(roleToDelete);
1356
- setShowConfirmDelete(!showConfirmDelete);
1357
- };
1358
- const sortedRoles = (roles || []).filter((role)=>contains(role.name, _q) || contains(role.description, _q)).sort((a, b)=>formatter.compare(a.name, b.name) || formatter.compare(a.description, b.description));
1359
- const emptyContent = _q && !sortedRoles.length ? 'search' : 'roles';
1360
- const colCount = 4;
1361
- const rowCount = (roles?.length || 0) + 1;
1362
- if (isLoading) {
1363
- return /*#__PURE__*/ jsx(Page.Loading, {});
1364
- }
1365
- return /*#__PURE__*/ jsxs(Layouts.Root, {
1366
- children: [
1367
- /*#__PURE__*/ jsx(Page.Title, {
1368
- children: formatMessage({
1369
- id: 'Settings.PageTitle',
1370
- defaultMessage: 'Settings - {name}'
1371
- }, {
1372
- name: pageTitle
1373
- })
1374
- }),
1375
- /*#__PURE__*/ jsxs(Page.Main, {
1376
- children: [
1377
- /*#__PURE__*/ jsx(Layouts.Header, {
1378
- title: formatMessage({
1379
- id: 'global.roles',
1380
- defaultMessage: 'Roles'
1381
- }),
1382
- subtitle: formatMessage({
1383
- id: 'Settings.roles.list.description',
1384
- defaultMessage: 'List of roles'
1385
- }),
1386
- primaryAction: canCreate ? /*#__PURE__*/ jsx(LinkButton, {
1387
- to: "new",
1388
- tag: NavLink,
1389
- onClick: ()=>trackUsage('willCreateRole'),
1390
- startIcon: /*#__PURE__*/ jsx(Plus, {}),
1391
- size: "S",
1392
- children: formatMessage({
1393
- id: getTrad('List.button.roles'),
1394
- defaultMessage: 'Add new role'
1395
- })
1396
- }) : null
1397
- }),
1398
- /*#__PURE__*/ jsx(Layouts.Action, {
1399
- startActions: /*#__PURE__*/ jsx(SearchInput, {
1400
- label: formatMessage({
1401
- id: 'app.component.search.label',
1402
- defaultMessage: 'Search'
1403
- })
1404
- })
1405
- }),
1406
- /*#__PURE__*/ jsxs(Layouts.Content, {
1407
- children: [
1408
- !canRead && /*#__PURE__*/ jsx(Page.NoPermissions, {}),
1409
- canRead && sortedRoles && sortedRoles?.length ? /*#__PURE__*/ jsxs(Table, {
1410
- colCount: colCount,
1411
- rowCount: rowCount,
1412
- children: [
1413
- /*#__PURE__*/ jsx(Thead, {
1414
- children: /*#__PURE__*/ jsxs(Tr, {
1415
- children: [
1416
- /*#__PURE__*/ jsx(Th, {
1417
- children: /*#__PURE__*/ jsx(Typography, {
1418
- variant: "sigma",
1419
- textColor: "neutral600",
1420
- children: formatMessage({
1421
- id: 'global.name',
1422
- defaultMessage: 'Name'
1423
- })
1424
- })
1425
- }),
1426
- /*#__PURE__*/ jsx(Th, {
1427
- children: /*#__PURE__*/ jsx(Typography, {
1428
- variant: "sigma",
1429
- textColor: "neutral600",
1430
- children: formatMessage({
1431
- id: 'global.description',
1432
- defaultMessage: 'Description'
1433
- })
1434
- })
1435
- }),
1436
- /*#__PURE__*/ jsx(Th, {
1437
- children: /*#__PURE__*/ jsx(Typography, {
1438
- variant: "sigma",
1439
- textColor: "neutral600",
1440
- children: formatMessage({
1441
- id: 'global.users',
1442
- defaultMessage: 'Users'
1443
- })
1444
- })
1445
- }),
1446
- /*#__PURE__*/ jsx(Th, {
1447
- children: /*#__PURE__*/ jsx(VisuallyHidden, {
1448
- children: formatMessage({
1449
- id: 'global.actions',
1450
- defaultMessage: 'Actions'
1451
- })
1452
- })
1453
- })
1454
- ]
1455
- })
1456
- }),
1457
- /*#__PURE__*/ jsx(TableBody, {
1458
- sortedRoles: sortedRoles,
1459
- canDelete: canDelete,
1460
- canUpdate: canUpdate,
1461
- permissions: PERMISSIONS,
1462
- setRoleToDelete: setRoleToDelete,
1463
- onDelete: [
1464
- showConfirmDelete,
1465
- setShowConfirmDelete
1466
- ]
1467
- })
1468
- ]
1469
- }) : /*#__PURE__*/ jsx(EmptyStateLayout, {
1470
- content: formatMessage(emptyLayout[emptyContent])
1471
- })
1472
- ]
1473
- }),
1474
- /*#__PURE__*/ jsx(Dialog.Root, {
1475
- open: showConfirmDelete,
1476
- onOpenChange: handleShowConfirmDelete,
1477
- children: /*#__PURE__*/ jsx(ConfirmDialog, {
1478
- onConfirm: handleConfirmDelete
1479
- })
1480
- })
1481
- ]
1482
- })
1483
- ]
1484
- });
1485
- };
1486
- const ProtectedRolesListPage = ()=>{
1487
- return /*#__PURE__*/ jsx(Page.Protect, {
1488
- permissions: PERMISSIONS.accessRoles,
1489
- children: /*#__PURE__*/ jsx(RolesListPage, {})
1490
- });
1491
- };
1492
-
1493
- const Roles = ()=>{
1494
- return /*#__PURE__*/ jsx(Page.Protect, {
1495
- permissions: PERMISSIONS.accessRoles,
1496
- children: /*#__PURE__*/ jsxs(Routes, {
1497
- children: [
1498
- /*#__PURE__*/ jsx(Route, {
1499
- index: true,
1500
- element: /*#__PURE__*/ jsx(ProtectedRolesListPage, {})
1501
- }),
1502
- /*#__PURE__*/ jsx(Route, {
1503
- path: "new",
1504
- element: /*#__PURE__*/ jsx(ProtectedRolesCreatePage, {})
1505
- }),
1506
- /*#__PURE__*/ jsx(Route, {
1507
- path: ":id",
1508
- element: /*#__PURE__*/ jsx(ProtectedRolesEditPage, {})
1509
- })
1510
- ]
1511
- })
1512
- });
1513
- };
1514
-
1515
- export { Roles as default };
1516
- //# sourceMappingURL=index-BgAfLcWs.mjs.map