@strapi/plugin-users-permissions 0.0.0-next.f0a0bc26f5ef0693aaea2a616bc6b816cfee54b6 → 0.0.0-next.f271284c756b9467b92aa7769978ff03d09fabbe

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 (273) hide show
  1. package/.eslintignore +2 -1
  2. package/admin/src/components/BoundRoute/index.jsx +1 -1
  3. package/admin/src/components/FormModal/Input/index.jsx +1 -1
  4. package/admin/src/components/FormModal/index.jsx +1 -1
  5. package/admin/src/components/Permissions/PermissionRow/SubCategory.jsx +1 -1
  6. package/admin/src/components/Policies/index.jsx +1 -1
  7. package/admin/src/index.js +2 -2
  8. package/admin/src/pages/AdvancedSettings/index.jsx +1 -1
  9. package/admin/src/pages/EmailTemplates/components/EmailForm.jsx +1 -1
  10. package/admin/src/pages/EmailTemplates/components/EmailTable.jsx +3 -3
  11. package/admin/src/pages/Roles/index.jsx +1 -1
  12. package/admin/src/pages/Roles/pages/ListPage/components/TableBody.jsx +2 -2
  13. package/admin/src/pluginId.js +2 -2
  14. package/admin/src/translations/uk.json +41 -4
  15. package/dist/admin/chunks/ar-BJwjobLp.js +45 -0
  16. package/dist/admin/chunks/ar-BJwjobLp.js.map +1 -0
  17. package/dist/admin/chunks/ar-G6bUGuUb.mjs +43 -0
  18. package/dist/admin/chunks/ar-G6bUGuUb.mjs.map +1 -0
  19. package/dist/admin/chunks/cs-Bu59JqhG.mjs +49 -0
  20. package/dist/admin/chunks/cs-Bu59JqhG.mjs.map +1 -0
  21. package/dist/admin/chunks/cs-uS_SIEo8.js +51 -0
  22. package/dist/admin/chunks/cs-uS_SIEo8.js.map +1 -0
  23. package/dist/admin/chunks/de-7MVMrqqI.js +63 -0
  24. package/dist/admin/chunks/de-7MVMrqqI.js.map +1 -0
  25. package/dist/admin/chunks/de-B81A69_5.mjs +61 -0
  26. package/dist/admin/chunks/de-B81A69_5.mjs.map +1 -0
  27. package/dist/admin/chunks/dk-BaelzvBE.mjs +85 -0
  28. package/dist/admin/chunks/dk-BaelzvBE.mjs.map +1 -0
  29. package/dist/admin/chunks/dk-DwCLGmy9.js +87 -0
  30. package/dist/admin/chunks/dk-DwCLGmy9.js.map +1 -0
  31. package/dist/admin/chunks/en-BhgCBe7M.mjs +85 -0
  32. package/dist/admin/chunks/en-BhgCBe7M.mjs.map +1 -0
  33. package/dist/admin/chunks/en-DwQjkHi_.js +87 -0
  34. package/dist/admin/chunks/en-DwQjkHi_.js.map +1 -0
  35. package/dist/admin/chunks/es-B0wXmvRj.mjs +85 -0
  36. package/dist/admin/chunks/es-B0wXmvRj.mjs.map +1 -0
  37. package/dist/admin/chunks/es-BOJOedG5.js +87 -0
  38. package/dist/admin/chunks/es-BOJOedG5.js.map +1 -0
  39. package/dist/admin/chunks/fr-BDNWCNs0.js +51 -0
  40. package/dist/admin/chunks/fr-BDNWCNs0.js.map +1 -0
  41. package/dist/admin/chunks/fr-CGYvGUXg.mjs +49 -0
  42. package/dist/admin/chunks/fr-CGYvGUXg.mjs.map +1 -0
  43. package/dist/admin/chunks/id-CNzbwFjA.mjs +61 -0
  44. package/dist/admin/chunks/id-CNzbwFjA.mjs.map +1 -0
  45. package/dist/admin/chunks/id-UqUPykHZ.js +63 -0
  46. package/dist/admin/chunks/id-UqUPykHZ.js.map +1 -0
  47. package/dist/admin/chunks/index--_o6btSC.js +471 -0
  48. package/dist/admin/chunks/index--_o6btSC.js.map +1 -0
  49. package/dist/admin/chunks/index-BBjNJt_G.mjs +448 -0
  50. package/dist/admin/chunks/index-BBjNJt_G.mjs.map +1 -0
  51. package/dist/admin/chunks/index-BgAfLcWs.mjs +1516 -0
  52. package/dist/admin/chunks/index-BgAfLcWs.mjs.map +1 -0
  53. package/dist/admin/chunks/index-CHTUC0LM.mjs +718 -0
  54. package/dist/admin/chunks/index-CHTUC0LM.mjs.map +1 -0
  55. package/dist/admin/chunks/index-CY5JZ38k.mjs +213 -0
  56. package/dist/admin/chunks/index-CY5JZ38k.mjs.map +1 -0
  57. package/dist/admin/chunks/index-Cu1VuLS3.js +741 -0
  58. package/dist/admin/chunks/index-Cu1VuLS3.js.map +1 -0
  59. package/dist/admin/chunks/index-Cy-tPfRk.mjs +279 -0
  60. package/dist/admin/chunks/index-Cy-tPfRk.mjs.map +1 -0
  61. package/dist/admin/chunks/index-DD-Z6c1S.js +217 -0
  62. package/dist/admin/chunks/index-DD-Z6c1S.js.map +1 -0
  63. package/dist/admin/chunks/index-DFnYIqrB.js +301 -0
  64. package/dist/admin/chunks/index-DFnYIqrB.js.map +1 -0
  65. package/dist/admin/chunks/index-DvubCYNe.js +1537 -0
  66. package/dist/admin/chunks/index-DvubCYNe.js.map +1 -0
  67. package/dist/admin/chunks/it-B2H2foTf.mjs +61 -0
  68. package/dist/admin/chunks/it-B2H2foTf.mjs.map +1 -0
  69. package/dist/admin/chunks/it-D5VuyoLU.js +63 -0
  70. package/dist/admin/chunks/it-D5VuyoLU.js.map +1 -0
  71. package/dist/admin/chunks/ja-C0z9d7L9.mjs +47 -0
  72. package/dist/admin/chunks/ja-C0z9d7L9.mjs.map +1 -0
  73. package/dist/admin/chunks/ja-MpqVsCgs.js +49 -0
  74. package/dist/admin/chunks/ja-MpqVsCgs.js.map +1 -0
  75. package/dist/admin/chunks/ko-Bm-grPSc.js +87 -0
  76. package/dist/admin/chunks/ko-Bm-grPSc.js.map +1 -0
  77. package/dist/admin/chunks/ko-CzUgzpeS.mjs +85 -0
  78. package/dist/admin/chunks/ko-CzUgzpeS.mjs.map +1 -0
  79. package/dist/admin/chunks/ms-CCacxjim.mjs +48 -0
  80. package/dist/admin/chunks/ms-CCacxjim.mjs.map +1 -0
  81. package/dist/admin/chunks/ms-D7eyBD5H.js +50 -0
  82. package/dist/admin/chunks/ms-D7eyBD5H.js.map +1 -0
  83. package/dist/admin/chunks/nl-BIOwAQtI.js +49 -0
  84. package/dist/admin/chunks/nl-BIOwAQtI.js.map +1 -0
  85. package/dist/admin/chunks/nl-DDC3nZW-.mjs +47 -0
  86. package/dist/admin/chunks/nl-DDC3nZW-.mjs.map +1 -0
  87. package/dist/admin/chunks/pl-D5BeNrg_.js +87 -0
  88. package/dist/admin/chunks/pl-D5BeNrg_.js.map +1 -0
  89. package/dist/admin/chunks/pl-XkS463rN.mjs +85 -0
  90. package/dist/admin/chunks/pl-XkS463rN.mjs.map +1 -0
  91. package/dist/admin/chunks/pt-BR-8cC7z8Km.mjs +43 -0
  92. package/dist/admin/chunks/pt-BR-8cC7z8Km.mjs.map +1 -0
  93. package/dist/admin/chunks/pt-BR-DxPBzQGx.js +45 -0
  94. package/dist/admin/chunks/pt-BR-DxPBzQGx.js.map +1 -0
  95. package/dist/admin/chunks/pt-DQpEvio8.mjs +47 -0
  96. package/dist/admin/chunks/pt-DQpEvio8.mjs.map +1 -0
  97. package/dist/admin/chunks/pt-kkCwzNvH.js +49 -0
  98. package/dist/admin/chunks/pt-kkCwzNvH.js.map +1 -0
  99. package/dist/admin/chunks/ru-BQ0gHmp3.js +87 -0
  100. package/dist/admin/chunks/ru-BQ0gHmp3.js.map +1 -0
  101. package/dist/admin/chunks/ru-nzL_7Mhg.mjs +85 -0
  102. package/dist/admin/chunks/ru-nzL_7Mhg.mjs.map +1 -0
  103. package/dist/admin/chunks/sk-Ddxc_tZA.mjs +49 -0
  104. package/dist/admin/chunks/sk-Ddxc_tZA.mjs.map +1 -0
  105. package/dist/admin/chunks/sk-nVwAPdYC.js +51 -0
  106. package/dist/admin/chunks/sk-nVwAPdYC.js.map +1 -0
  107. package/dist/admin/chunks/sv-BDfk2A-F.js +87 -0
  108. package/dist/admin/chunks/sv-BDfk2A-F.js.map +1 -0
  109. package/dist/admin/chunks/sv-By3RYpMG.mjs +85 -0
  110. package/dist/admin/chunks/sv-By3RYpMG.mjs.map +1 -0
  111. package/dist/admin/chunks/th-BtTtpHe2.js +61 -0
  112. package/dist/admin/chunks/th-BtTtpHe2.js.map +1 -0
  113. package/dist/admin/chunks/th-COl50vqb.mjs +59 -0
  114. package/dist/admin/chunks/th-COl50vqb.mjs.map +1 -0
  115. package/dist/admin/chunks/tr-80SJU6jg.mjs +84 -0
  116. package/dist/admin/chunks/tr-80SJU6jg.mjs.map +1 -0
  117. package/dist/admin/chunks/tr-Di-Nf7cT.js +86 -0
  118. package/dist/admin/chunks/tr-Di-Nf7cT.js.map +1 -0
  119. package/dist/admin/chunks/uk-DnrIlPwG.mjs +85 -0
  120. package/dist/admin/chunks/uk-DnrIlPwG.mjs.map +1 -0
  121. package/dist/admin/chunks/uk-r5zXTAS7.js +87 -0
  122. package/dist/admin/chunks/uk-r5zXTAS7.js.map +1 -0
  123. package/dist/admin/chunks/vi-69AF03Iv.mjs +49 -0
  124. package/dist/admin/chunks/vi-69AF03Iv.mjs.map +1 -0
  125. package/dist/admin/chunks/vi-D9cCsHsU.js +51 -0
  126. package/dist/admin/chunks/vi-D9cCsHsU.js.map +1 -0
  127. package/dist/admin/chunks/zh-BzSkqxo-.mjs +85 -0
  128. package/dist/admin/chunks/zh-BzSkqxo-.mjs.map +1 -0
  129. package/dist/admin/chunks/zh-BzWgJEzz.js +87 -0
  130. package/dist/admin/chunks/zh-BzWgJEzz.js.map +1 -0
  131. package/dist/admin/chunks/zh-Hans-CKqQbpsM.js +87 -0
  132. package/dist/admin/chunks/zh-Hans-CKqQbpsM.js.map +1 -0
  133. package/dist/admin/chunks/zh-Hans-DmDcSsp7.mjs +85 -0
  134. package/dist/admin/chunks/zh-Hans-DmDcSsp7.mjs.map +1 -0
  135. package/dist/admin/index.js +6 -2
  136. package/dist/admin/index.js.map +1 -1
  137. package/dist/admin/index.mjs +1 -4
  138. package/dist/admin/index.mjs.map +1 -1
  139. package/dist/server/index.js +4766 -0
  140. package/dist/server/index.js.map +1 -0
  141. package/dist/server/index.mjs +4764 -0
  142. package/dist/server/index.mjs.map +1 -0
  143. package/package.json +14 -14
  144. package/rollup.config.mjs +52 -0
  145. package/server/controllers/auth.js +1 -1
  146. package/server/controllers/validation/auth.js +24 -1
  147. package/server/graphql/types/me.js +1 -0
  148. package/server/register.js +1 -1
  149. package/dist/_chunks/ar-BguGUqwK.js +0 -44
  150. package/dist/_chunks/ar-BguGUqwK.js.map +0 -1
  151. package/dist/_chunks/ar-CK8BRRXB.mjs +0 -44
  152. package/dist/_chunks/ar-CK8BRRXB.mjs.map +0 -1
  153. package/dist/_chunks/cs-BVigMk0l.mjs +0 -50
  154. package/dist/_chunks/cs-BVigMk0l.mjs.map +0 -1
  155. package/dist/_chunks/cs-BW8-K_GY.js +0 -50
  156. package/dist/_chunks/cs-BW8-K_GY.js.map +0 -1
  157. package/dist/_chunks/de-BKUdRFI4.mjs +0 -62
  158. package/dist/_chunks/de-BKUdRFI4.mjs.map +0 -1
  159. package/dist/_chunks/de-owXpVluI.js +0 -62
  160. package/dist/_chunks/de-owXpVluI.js.map +0 -1
  161. package/dist/_chunks/dk-BQiTK50l.mjs +0 -86
  162. package/dist/_chunks/dk-BQiTK50l.mjs.map +0 -1
  163. package/dist/_chunks/dk-LXAnbuBk.js +0 -86
  164. package/dist/_chunks/dk-LXAnbuBk.js.map +0 -1
  165. package/dist/_chunks/en-DOHtPf-2.mjs +0 -86
  166. package/dist/_chunks/en-DOHtPf-2.mjs.map +0 -1
  167. package/dist/_chunks/en-MHo5mcsU.js +0 -86
  168. package/dist/_chunks/en-MHo5mcsU.js.map +0 -1
  169. package/dist/_chunks/es-BwLCLXAQ.js +0 -86
  170. package/dist/_chunks/es-BwLCLXAQ.js.map +0 -1
  171. package/dist/_chunks/es-DNgOVMjD.mjs +0 -86
  172. package/dist/_chunks/es-DNgOVMjD.mjs.map +0 -1
  173. package/dist/_chunks/fr-DkgRugiU.mjs +0 -50
  174. package/dist/_chunks/fr-DkgRugiU.mjs.map +0 -1
  175. package/dist/_chunks/fr-DkhpSjjm.js +0 -50
  176. package/dist/_chunks/fr-DkhpSjjm.js.map +0 -1
  177. package/dist/_chunks/id-BTemOeTZ.js +0 -62
  178. package/dist/_chunks/id-BTemOeTZ.js.map +0 -1
  179. package/dist/_chunks/id-BdEsvnaF.mjs +0 -62
  180. package/dist/_chunks/id-BdEsvnaF.mjs.map +0 -1
  181. package/dist/_chunks/index-BLjxWgDG.js +0 -366
  182. package/dist/_chunks/index-BLjxWgDG.js.map +0 -1
  183. package/dist/_chunks/index-C31L6WBw.js +0 -640
  184. package/dist/_chunks/index-C31L6WBw.js.map +0 -1
  185. package/dist/_chunks/index-CCTOwoXp.mjs +0 -262
  186. package/dist/_chunks/index-CCTOwoXp.mjs.map +0 -1
  187. package/dist/_chunks/index-CXa1AzHw.mjs +0 -344
  188. package/dist/_chunks/index-CXa1AzHw.mjs.map +0 -1
  189. package/dist/_chunks/index-Cq5Qkbue.mjs +0 -1142
  190. package/dist/_chunks/index-Cq5Qkbue.mjs.map +0 -1
  191. package/dist/_chunks/index-D4pk1BPp.mjs +0 -248
  192. package/dist/_chunks/index-D4pk1BPp.mjs.map +0 -1
  193. package/dist/_chunks/index-DTlS9JEC.js +0 -1172
  194. package/dist/_chunks/index-DTlS9JEC.js.map +0 -1
  195. package/dist/_chunks/index-DV2pmUdT.mjs +0 -617
  196. package/dist/_chunks/index-DV2pmUdT.mjs.map +0 -1
  197. package/dist/_chunks/index-DjBNWa0T-BeiPUoDw.mjs +0 -12005
  198. package/dist/_chunks/index-DjBNWa0T-BeiPUoDw.mjs.map +0 -1
  199. package/dist/_chunks/index-DjBNWa0T-BwTVUy-u.js +0 -12029
  200. package/dist/_chunks/index-DjBNWa0T-BwTVUy-u.js.map +0 -1
  201. package/dist/_chunks/index-jD9f1pCY.js +0 -247
  202. package/dist/_chunks/index-jD9f1pCY.js.map +0 -1
  203. package/dist/_chunks/index-wYYJbIvQ.js +0 -281
  204. package/dist/_chunks/index-wYYJbIvQ.js.map +0 -1
  205. package/dist/_chunks/it-B-rv0E24.mjs +0 -62
  206. package/dist/_chunks/it-B-rv0E24.mjs.map +0 -1
  207. package/dist/_chunks/it-D1rH6V6_.js +0 -62
  208. package/dist/_chunks/it-D1rH6V6_.js.map +0 -1
  209. package/dist/_chunks/ja-C8K-VBPD.mjs +0 -48
  210. package/dist/_chunks/ja-C8K-VBPD.mjs.map +0 -1
  211. package/dist/_chunks/ja-DqShgTMf.js +0 -48
  212. package/dist/_chunks/ja-DqShgTMf.js.map +0 -1
  213. package/dist/_chunks/ko-B9DGEPWH.js +0 -86
  214. package/dist/_chunks/ko-B9DGEPWH.js.map +0 -1
  215. package/dist/_chunks/ko-Busb0wIY.mjs +0 -86
  216. package/dist/_chunks/ko-Busb0wIY.mjs.map +0 -1
  217. package/dist/_chunks/ms-ByvsQjRt.mjs +0 -49
  218. package/dist/_chunks/ms-ByvsQjRt.mjs.map +0 -1
  219. package/dist/_chunks/ms-CPBU3LWf.js +0 -49
  220. package/dist/_chunks/ms-CPBU3LWf.js.map +0 -1
  221. package/dist/_chunks/nl-5qO8Rpcy.mjs +0 -48
  222. package/dist/_chunks/nl-5qO8Rpcy.mjs.map +0 -1
  223. package/dist/_chunks/nl-CwNB6YoO.js +0 -48
  224. package/dist/_chunks/nl-CwNB6YoO.js.map +0 -1
  225. package/dist/_chunks/pl-BdIzifBE.mjs +0 -86
  226. package/dist/_chunks/pl-BdIzifBE.mjs.map +0 -1
  227. package/dist/_chunks/pl-Do9UD69f.js +0 -86
  228. package/dist/_chunks/pl-Do9UD69f.js.map +0 -1
  229. package/dist/_chunks/pt-BIO24ioG.mjs +0 -48
  230. package/dist/_chunks/pt-BIO24ioG.mjs.map +0 -1
  231. package/dist/_chunks/pt-BR-D7dZhxuP.js +0 -44
  232. package/dist/_chunks/pt-BR-D7dZhxuP.js.map +0 -1
  233. package/dist/_chunks/pt-BR-f0p23AQZ.mjs +0 -44
  234. package/dist/_chunks/pt-BR-f0p23AQZ.mjs.map +0 -1
  235. package/dist/_chunks/pt-fdvyOnUp.js +0 -48
  236. package/dist/_chunks/pt-fdvyOnUp.js.map +0 -1
  237. package/dist/_chunks/ru-C94rjPGA.js +0 -86
  238. package/dist/_chunks/ru-C94rjPGA.js.map +0 -1
  239. package/dist/_chunks/ru-VWy-IB7K.mjs +0 -86
  240. package/dist/_chunks/ru-VWy-IB7K.mjs.map +0 -1
  241. package/dist/_chunks/sk-BABEhykl.js +0 -50
  242. package/dist/_chunks/sk-BABEhykl.js.map +0 -1
  243. package/dist/_chunks/sk-B_LIcepm.mjs +0 -50
  244. package/dist/_chunks/sk-B_LIcepm.mjs.map +0 -1
  245. package/dist/_chunks/sv-ABLKOokl.mjs +0 -86
  246. package/dist/_chunks/sv-ABLKOokl.mjs.map +0 -1
  247. package/dist/_chunks/sv-Be43LhA9.js +0 -86
  248. package/dist/_chunks/sv-Be43LhA9.js.map +0 -1
  249. package/dist/_chunks/th-DKyP7ueR.mjs +0 -60
  250. package/dist/_chunks/th-DKyP7ueR.mjs.map +0 -1
  251. package/dist/_chunks/th-DgVhVLhL.js +0 -60
  252. package/dist/_chunks/th-DgVhVLhL.js.map +0 -1
  253. package/dist/_chunks/tr-B_idhkEs.js +0 -85
  254. package/dist/_chunks/tr-B_idhkEs.js.map +0 -1
  255. package/dist/_chunks/tr-qa1Q5UjC.mjs +0 -85
  256. package/dist/_chunks/tr-qa1Q5UjC.mjs.map +0 -1
  257. package/dist/_chunks/uk-BmRqbeQc.mjs +0 -49
  258. package/dist/_chunks/uk-BmRqbeQc.mjs.map +0 -1
  259. package/dist/_chunks/uk-LHOivnhP.js +0 -49
  260. package/dist/_chunks/uk-LHOivnhP.js.map +0 -1
  261. package/dist/_chunks/vi-CdVRdKDw.js +0 -50
  262. package/dist/_chunks/vi-CdVRdKDw.js.map +0 -1
  263. package/dist/_chunks/vi-HW-EdMea.mjs +0 -50
  264. package/dist/_chunks/vi-HW-EdMea.mjs.map +0 -1
  265. package/dist/_chunks/zh-5hKkVPA4.mjs +0 -86
  266. package/dist/_chunks/zh-5hKkVPA4.mjs.map +0 -1
  267. package/dist/_chunks/zh-Cuq8gMnF.js +0 -86
  268. package/dist/_chunks/zh-Cuq8gMnF.js.map +0 -1
  269. package/dist/_chunks/zh-Hans-BHilK-yc.mjs +0 -86
  270. package/dist/_chunks/zh-Hans-BHilK-yc.mjs.map +0 -1
  271. package/dist/_chunks/zh-Hans-GQDMKtY4.js +0 -86
  272. package/dist/_chunks/zh-Hans-GQDMKtY4.js.map +0 -1
  273. package/packup.config.ts +0 -22
@@ -0,0 +1,217 @@
1
+ 'use strict';
2
+
3
+ var name$1 = "@strapi/plugin-users-permissions";
4
+ var strapi = {
5
+ displayName: "Roles & Permissions",
6
+ name: "users-permissions",
7
+ description: "Protect your API with a full authentication process based on JWT. This plugin comes also with an ACL strategy that allows you to manage the permissions between the groups of users.",
8
+ required: true,
9
+ kind: "plugin"
10
+ };
11
+
12
+ const PERMISSIONS = {
13
+ // Roles
14
+ accessRoles: [
15
+ {
16
+ action: 'plugin::users-permissions.roles.create',
17
+ subject: null
18
+ },
19
+ {
20
+ action: 'plugin::users-permissions.roles.read',
21
+ subject: null
22
+ }
23
+ ],
24
+ createRole: [
25
+ {
26
+ action: 'plugin::users-permissions.roles.create',
27
+ subject: null
28
+ }
29
+ ],
30
+ deleteRole: [
31
+ {
32
+ action: 'plugin::users-permissions.roles.delete',
33
+ subject: null
34
+ }
35
+ ],
36
+ readRoles: [
37
+ {
38
+ action: 'plugin::users-permissions.roles.read',
39
+ subject: null
40
+ }
41
+ ],
42
+ updateRole: [
43
+ {
44
+ action: 'plugin::users-permissions.roles.update',
45
+ subject: null
46
+ }
47
+ ],
48
+ // AdvancedSettings
49
+ readAdvancedSettings: [
50
+ {
51
+ action: 'plugin::users-permissions.advanced-settings.read',
52
+ subject: null
53
+ }
54
+ ],
55
+ updateAdvancedSettings: [
56
+ {
57
+ action: 'plugin::users-permissions.advanced-settings.update',
58
+ subject: null
59
+ }
60
+ ],
61
+ // Emails
62
+ readEmailTemplates: [
63
+ {
64
+ action: 'plugin::users-permissions.email-templates.read',
65
+ subject: null
66
+ }
67
+ ],
68
+ updateEmailTemplates: [
69
+ {
70
+ action: 'plugin::users-permissions.email-templates.update',
71
+ subject: null
72
+ }
73
+ ],
74
+ // Providers
75
+ readProviders: [
76
+ {
77
+ action: 'plugin::users-permissions.providers.read',
78
+ subject: null
79
+ }
80
+ ],
81
+ updateProviders: [
82
+ {
83
+ action: 'plugin::users-permissions.providers.update',
84
+ subject: null
85
+ }
86
+ ]
87
+ };
88
+
89
+ const pluginId = name$1.replace(/^@strapi\/plugin-/i, '');
90
+
91
+ const getTrad = (id)=>`${pluginId}.${id}`;
92
+
93
+ const prefixPluginTranslations = (trad, pluginId)=>{
94
+ return Object.keys(trad).reduce((acc, current)=>{
95
+ acc[`${pluginId}.${current}`] = trad[current];
96
+ return acc;
97
+ }, {});
98
+ };
99
+
100
+ function __variableDynamicImportRuntime4__(path) {
101
+ switch (path) {
102
+ case './translations/ar.json': return Promise.resolve().then(function () { return require('./ar-BJwjobLp.js'); });
103
+ case './translations/cs.json': return Promise.resolve().then(function () { return require('./cs-uS_SIEo8.js'); });
104
+ case './translations/de.json': return Promise.resolve().then(function () { return require('./de-7MVMrqqI.js'); });
105
+ case './translations/dk.json': return Promise.resolve().then(function () { return require('./dk-DwCLGmy9.js'); });
106
+ case './translations/en.json': return Promise.resolve().then(function () { return require('./en-DwQjkHi_.js'); });
107
+ case './translations/es.json': return Promise.resolve().then(function () { return require('./es-BOJOedG5.js'); });
108
+ case './translations/fr.json': return Promise.resolve().then(function () { return require('./fr-BDNWCNs0.js'); });
109
+ case './translations/id.json': return Promise.resolve().then(function () { return require('./id-UqUPykHZ.js'); });
110
+ case './translations/it.json': return Promise.resolve().then(function () { return require('./it-D5VuyoLU.js'); });
111
+ case './translations/ja.json': return Promise.resolve().then(function () { return require('./ja-MpqVsCgs.js'); });
112
+ case './translations/ko.json': return Promise.resolve().then(function () { return require('./ko-Bm-grPSc.js'); });
113
+ case './translations/ms.json': return Promise.resolve().then(function () { return require('./ms-D7eyBD5H.js'); });
114
+ case './translations/nl.json': return Promise.resolve().then(function () { return require('./nl-BIOwAQtI.js'); });
115
+ case './translations/pl.json': return Promise.resolve().then(function () { return require('./pl-D5BeNrg_.js'); });
116
+ case './translations/pt-BR.json': return Promise.resolve().then(function () { return require('./pt-BR-DxPBzQGx.js'); });
117
+ case './translations/pt.json': return Promise.resolve().then(function () { return require('./pt-kkCwzNvH.js'); });
118
+ case './translations/ru.json': return Promise.resolve().then(function () { return require('./ru-BQ0gHmp3.js'); });
119
+ case './translations/sk.json': return Promise.resolve().then(function () { return require('./sk-nVwAPdYC.js'); });
120
+ case './translations/sv.json': return Promise.resolve().then(function () { return require('./sv-BDfk2A-F.js'); });
121
+ case './translations/th.json': return Promise.resolve().then(function () { return require('./th-BtTtpHe2.js'); });
122
+ case './translations/tr.json': return Promise.resolve().then(function () { return require('./tr-Di-Nf7cT.js'); });
123
+ case './translations/uk.json': return Promise.resolve().then(function () { return require('./uk-r5zXTAS7.js'); });
124
+ case './translations/vi.json': return Promise.resolve().then(function () { return require('./vi-D9cCsHsU.js'); });
125
+ case './translations/zh-Hans.json': return Promise.resolve().then(function () { return require('./zh-Hans-CKqQbpsM.js'); });
126
+ case './translations/zh.json': return Promise.resolve().then(function () { return require('./zh-BzWgJEzz.js'); });
127
+ default: return new Promise(function(resolve, reject) {
128
+ (typeof queueMicrotask === 'function' ? queueMicrotask : setTimeout)(
129
+ reject.bind(null, new Error("Unknown variable dynamic import: " + path))
130
+ );
131
+ })
132
+ }
133
+ }
134
+ const name = strapi.name;
135
+ var index = {
136
+ register (app) {
137
+ // Create the plugin's settings section
138
+ app.createSettingSection({
139
+ id: 'users-permissions',
140
+ intlLabel: {
141
+ id: getTrad('Settings.section-label'),
142
+ defaultMessage: 'Users & Permissions plugin'
143
+ }
144
+ }, [
145
+ {
146
+ intlLabel: {
147
+ id: 'global.roles',
148
+ defaultMessage: 'Roles'
149
+ },
150
+ id: 'roles',
151
+ to: `users-permissions/roles`,
152
+ Component: ()=>Promise.resolve().then(function () { return require('./index-DvubCYNe.js'); }),
153
+ permissions: PERMISSIONS.accessRoles
154
+ },
155
+ {
156
+ intlLabel: {
157
+ id: getTrad('HeaderNav.link.providers'),
158
+ defaultMessage: 'Providers'
159
+ },
160
+ id: 'providers',
161
+ to: `users-permissions/providers`,
162
+ Component: ()=>Promise.resolve().then(function () { return require('./index-Cu1VuLS3.js'); }),
163
+ permissions: PERMISSIONS.readProviders
164
+ },
165
+ {
166
+ intlLabel: {
167
+ id: getTrad('HeaderNav.link.emailTemplates'),
168
+ defaultMessage: 'Email templates'
169
+ },
170
+ id: 'email-templates',
171
+ to: `users-permissions/email-templates`,
172
+ Component: ()=>Promise.resolve().then(function () { return require('./index--_o6btSC.js'); }).then((mod)=>({
173
+ default: mod.ProtectedEmailTemplatesPage
174
+ })),
175
+ permissions: PERMISSIONS.readEmailTemplates
176
+ },
177
+ {
178
+ intlLabel: {
179
+ id: getTrad('HeaderNav.link.advancedSettings'),
180
+ defaultMessage: 'Advanced Settings'
181
+ },
182
+ id: 'advanced-settings',
183
+ to: `users-permissions/advanced-settings`,
184
+ Component: ()=>Promise.resolve().then(function () { return require('./index-DFnYIqrB.js'); }).then((mod)=>({
185
+ default: mod.ProtectedAdvancedSettingsPage
186
+ })),
187
+ permissions: PERMISSIONS.readAdvancedSettings
188
+ }
189
+ ]);
190
+ app.registerPlugin({
191
+ id: 'users-permissions',
192
+ name
193
+ });
194
+ },
195
+ bootstrap () {},
196
+ async registerTrads ({ locales }) {
197
+ const importedTrads = await Promise.all(locales.map((locale)=>{
198
+ return __variableDynamicImportRuntime4__(`./translations/${locale}.json`).then(({ default: data })=>{
199
+ return {
200
+ data: prefixPluginTranslations(data, 'users-permissions'),
201
+ locale
202
+ };
203
+ }).catch(()=>{
204
+ return {
205
+ data: {},
206
+ locale
207
+ };
208
+ });
209
+ }));
210
+ return Promise.resolve(importedTrads);
211
+ }
212
+ };
213
+
214
+ exports.PERMISSIONS = PERMISSIONS;
215
+ exports.getTrad = getTrad;
216
+ exports.index = index;
217
+ //# sourceMappingURL=index-DD-Z6c1S.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DD-Z6c1S.js","sources":["../../../admin/src/constants.js","../../../admin/src/pluginId.js","../../../admin/src/utils/getTrad.js","../../../admin/src/utils/prefixPluginTranslations.js","../../../admin/src/index.js"],"sourcesContent":["export const PERMISSIONS = {\n // Roles\n accessRoles: [\n { action: 'plugin::users-permissions.roles.create', subject: null },\n { action: 'plugin::users-permissions.roles.read', subject: null },\n ],\n createRole: [{ action: 'plugin::users-permissions.roles.create', subject: null }],\n deleteRole: [{ action: 'plugin::users-permissions.roles.delete', subject: null }],\n readRoles: [{ action: 'plugin::users-permissions.roles.read', subject: null }],\n updateRole: [{ action: 'plugin::users-permissions.roles.update', subject: null }],\n\n // AdvancedSettings\n readAdvancedSettings: [\n { action: 'plugin::users-permissions.advanced-settings.read', subject: null },\n ],\n updateAdvancedSettings: [\n { action: 'plugin::users-permissions.advanced-settings.update', subject: null },\n ],\n\n // Emails\n readEmailTemplates: [{ action: 'plugin::users-permissions.email-templates.read', subject: null }],\n updateEmailTemplates: [\n { action: 'plugin::users-permissions.email-templates.update', subject: null },\n ],\n\n // Providers\n readProviders: [{ action: 'plugin::users-permissions.providers.read', subject: null }],\n updateProviders: [{ action: 'plugin::users-permissions.providers.update', subject: null }],\n};\n","import { name } from '../../package.json';\n\nconst pluginId = name.replace(/^@strapi\\/plugin-/i, '');\n\nexport default pluginId;\n","import pluginId from '../pluginId';\n\nconst getTrad = (id) => `${pluginId}.${id}`;\n\nexport default getTrad;\n","const prefixPluginTranslations = (trad, pluginId) => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n\n return acc;\n }, {});\n};\n\nexport { prefixPluginTranslations };\n","import { strapi as pkgStrapi } from '../../package.json';\n\nimport { PERMISSIONS } from './constants';\nimport getTrad from './utils/getTrad';\nimport { prefixPluginTranslations } from './utils/prefixPluginTranslations';\n\nconst name = pkgStrapi.name;\n\nexport default {\n register(app) {\n // Create the plugin's settings section\n app.createSettingSection(\n {\n id: 'users-permissions',\n intlLabel: {\n id: getTrad('Settings.section-label'),\n defaultMessage: 'Users & Permissions plugin',\n },\n },\n [\n {\n intlLabel: {\n id: 'global.roles',\n defaultMessage: 'Roles',\n },\n id: 'roles',\n to: `users-permissions/roles`,\n Component: () => import('./pages/Roles'),\n permissions: PERMISSIONS.accessRoles,\n },\n {\n intlLabel: {\n id: getTrad('HeaderNav.link.providers'),\n defaultMessage: 'Providers',\n },\n id: 'providers',\n to: `users-permissions/providers`,\n Component: () => import('./pages/Providers'),\n permissions: PERMISSIONS.readProviders,\n },\n {\n intlLabel: {\n id: getTrad('HeaderNav.link.emailTemplates'),\n defaultMessage: 'Email templates',\n },\n id: 'email-templates',\n to: `users-permissions/email-templates`,\n Component: () =>\n import('./pages/EmailTemplates').then((mod) => ({\n default: mod.ProtectedEmailTemplatesPage,\n })),\n permissions: PERMISSIONS.readEmailTemplates,\n },\n {\n intlLabel: {\n id: getTrad('HeaderNav.link.advancedSettings'),\n defaultMessage: 'Advanced Settings',\n },\n id: 'advanced-settings',\n to: `users-permissions/advanced-settings`,\n Component: () =>\n import('./pages/AdvancedSettings').then((mod) => ({\n default: mod.ProtectedAdvancedSettingsPage,\n })),\n permissions: PERMISSIONS.readAdvancedSettings,\n },\n ]\n );\n\n app.registerPlugin({\n id: 'users-permissions',\n name,\n });\n },\n bootstrap() {},\n async registerTrads({ locales }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, 'users-permissions'),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":["PERMISSIONS","accessRoles","action","subject","createRole","deleteRole","readRoles","updateRole","readAdvancedSettings","updateAdvancedSettings","readEmailTemplates","updateEmailTemplates","readProviders","updateProviders","pluginId","name","replace","getTrad","id","prefixPluginTranslations","trad","Object","keys","reduce","acc","current","pkgStrapi","register","app","createSettingSection","intlLabel","defaultMessage","to","Component","permissions","then","mod","default","ProtectedEmailTemplatesPage","ProtectedAdvancedSettingsPage","registerPlugin","bootstrap","registerTrads","locales","importedTrads","Promise","all","map","locale","data","catch","resolve"],"mappings":"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"}
@@ -0,0 +1,301 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ require('react');
5
+ var designSystem = require('@strapi/design-system');
6
+ var icons = require('@strapi/icons');
7
+ var admin = require('@strapi/strapi/admin');
8
+ var reactIntl = require('react-intl');
9
+ var reactQuery = require('react-query');
10
+ var index = require('./index-DD-Z6c1S.js');
11
+ require('lodash/isEmpty');
12
+ var yup = require('yup');
13
+
14
+ function _interopNamespaceDefault(e) {
15
+ var n = Object.create(null);
16
+ if (e) {
17
+ Object.keys(e).forEach(function (k) {
18
+ if (k !== 'default') {
19
+ var d = Object.getOwnPropertyDescriptor(e, k);
20
+ Object.defineProperty(n, k, d.get ? d : {
21
+ enumerable: true,
22
+ get: function () { return e[k]; }
23
+ });
24
+ }
25
+ });
26
+ }
27
+ n.default = e;
28
+ return Object.freeze(n);
29
+ }
30
+
31
+ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
32
+
33
+ const layout = [
34
+ {
35
+ label: {
36
+ id: index.getTrad('EditForm.inputToggle.label.email'),
37
+ defaultMessage: 'One account per email address'
38
+ },
39
+ hint: {
40
+ id: index.getTrad('EditForm.inputToggle.description.email'),
41
+ defaultMessage: 'Disallow the user to create multiple accounts using the same email address with different authentication providers.'
42
+ },
43
+ name: 'unique_email',
44
+ type: 'boolean',
45
+ size: 12
46
+ },
47
+ {
48
+ label: {
49
+ id: index.getTrad('EditForm.inputToggle.label.sign-up'),
50
+ defaultMessage: 'Enable sign-ups'
51
+ },
52
+ hint: {
53
+ id: index.getTrad('EditForm.inputToggle.description.sign-up'),
54
+ defaultMessage: 'When disabled (OFF), the registration process is forbidden. No one can subscribe anymore no matter the used provider.'
55
+ },
56
+ name: 'allow_register',
57
+ type: 'boolean',
58
+ size: 12
59
+ },
60
+ {
61
+ label: {
62
+ id: index.getTrad('EditForm.inputToggle.label.email-reset-password'),
63
+ defaultMessage: 'Reset password page'
64
+ },
65
+ hint: {
66
+ id: index.getTrad('EditForm.inputToggle.description.email-reset-password'),
67
+ defaultMessage: "URL of your application's reset password page."
68
+ },
69
+ placeholder: {
70
+ id: index.getTrad('EditForm.inputToggle.placeholder.email-reset-password'),
71
+ defaultMessage: 'ex: https://youtfrontend.com/reset-password'
72
+ },
73
+ name: 'email_reset_password',
74
+ type: 'string',
75
+ size: 12
76
+ },
77
+ {
78
+ label: {
79
+ id: index.getTrad('EditForm.inputToggle.label.email-confirmation'),
80
+ defaultMessage: 'Enable email confirmation'
81
+ },
82
+ hint: {
83
+ id: index.getTrad('EditForm.inputToggle.description.email-confirmation'),
84
+ defaultMessage: 'When enabled (ON), new registered users receive a confirmation email.'
85
+ },
86
+ name: 'email_confirmation',
87
+ type: 'boolean',
88
+ size: 12
89
+ },
90
+ {
91
+ label: {
92
+ id: index.getTrad('EditForm.inputToggle.label.email-confirmation-redirection'),
93
+ defaultMessage: 'Redirection url'
94
+ },
95
+ hint: {
96
+ id: index.getTrad('EditForm.inputToggle.description.email-confirmation-redirection'),
97
+ defaultMessage: 'After you confirmed your email, choose where you will be redirected.'
98
+ },
99
+ placeholder: {
100
+ id: index.getTrad('EditForm.inputToggle.placeholder.email-confirmation-redirection'),
101
+ defaultMessage: 'ex: https://youtfrontend.com/email-confirmation'
102
+ },
103
+ name: 'email_confirmation_redirection',
104
+ type: 'string',
105
+ size: 12
106
+ }
107
+ ];
108
+
109
+ // eslint-disable-next-line prefer-regex-literals
110
+ const URL_REGEX = new RegExp('(^$)|((.+:\\/\\/.*)(d*)\\/?(.*))');
111
+ const schema = yup__namespace.object().shape({
112
+ email_confirmation_redirection: yup__namespace.mixed().when('email_confirmation', {
113
+ is: true,
114
+ then: yup__namespace.string().matches(URL_REGEX).required(),
115
+ otherwise: yup__namespace.string().nullable()
116
+ }),
117
+ email_reset_password: yup__namespace.string(admin.translatedErrors.string).matches(URL_REGEX, {
118
+ id: admin.translatedErrors.regex.id,
119
+ defaultMessage: 'This is not a valid URL'
120
+ }).nullable()
121
+ });
122
+
123
+ const ProtectedAdvancedSettingsPage = ()=>/*#__PURE__*/ jsxRuntime.jsx(admin.Page.Protect, {
124
+ permissions: index.PERMISSIONS.readAdvancedSettings,
125
+ children: /*#__PURE__*/ jsxRuntime.jsx(AdvancedSettingsPage, {})
126
+ });
127
+ const AdvancedSettingsPage = ()=>{
128
+ const { formatMessage } = reactIntl.useIntl();
129
+ const { toggleNotification } = admin.useNotification();
130
+ const { notifyStatus } = designSystem.useNotifyAT();
131
+ const queryClient = reactQuery.useQueryClient();
132
+ const { get, put } = admin.useFetchClient();
133
+ const { formatAPIError } = admin.useAPIErrorHandler();
134
+ const { isLoading: isLoadingForPermissions, allowedActions: { canUpdate } } = admin.useRBAC({
135
+ update: index.PERMISSIONS.updateAdvancedSettings
136
+ });
137
+ const { isLoading: isLoadingData, data } = reactQuery.useQuery([
138
+ 'users-permissions',
139
+ 'advanced'
140
+ ], async ()=>{
141
+ const { data } = await get('/users-permissions/advanced');
142
+ return data;
143
+ }, {
144
+ onSuccess () {
145
+ notifyStatus(formatMessage({
146
+ id: index.getTrad('Form.advancedSettings.data.loaded'),
147
+ defaultMessage: 'Advanced settings data has been loaded'
148
+ }));
149
+ },
150
+ onError () {
151
+ toggleNotification({
152
+ type: 'danger',
153
+ message: formatMessage({
154
+ id: index.getTrad('notification.error'),
155
+ defaultMessage: 'An error occured'
156
+ })
157
+ });
158
+ }
159
+ });
160
+ const isLoading = isLoadingForPermissions || isLoadingData;
161
+ const submitMutation = reactQuery.useMutation((body)=>put('/users-permissions/advanced', body), {
162
+ async onSuccess () {
163
+ await queryClient.invalidateQueries([
164
+ 'users-permissions',
165
+ 'advanced'
166
+ ]);
167
+ toggleNotification({
168
+ type: 'success',
169
+ message: formatMessage({
170
+ id: index.getTrad('notification.success.saved'),
171
+ defaultMessage: 'Saved'
172
+ })
173
+ });
174
+ },
175
+ onError (error) {
176
+ toggleNotification({
177
+ type: 'danger',
178
+ message: formatAPIError(error)
179
+ });
180
+ },
181
+ refetchActive: true
182
+ });
183
+ const { isLoading: isSubmittingForm } = submitMutation;
184
+ const handleSubmit = async (body)=>{
185
+ submitMutation.mutate({
186
+ ...body,
187
+ email_confirmation_redirection: body.email_confirmation ? body.email_confirmation_redirection : ''
188
+ });
189
+ };
190
+ if (isLoading) {
191
+ return /*#__PURE__*/ jsxRuntime.jsx(admin.Page.Loading, {});
192
+ }
193
+ return /*#__PURE__*/ jsxRuntime.jsxs(admin.Page.Main, {
194
+ "aria-busy": isSubmittingForm,
195
+ children: [
196
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Page.Title, {
197
+ children: formatMessage({
198
+ id: 'Settings.PageTitle',
199
+ defaultMessage: 'Settings - {name}'
200
+ }, {
201
+ name: formatMessage({
202
+ id: index.getTrad('HeaderNav.link.advancedSettings'),
203
+ defaultMessage: 'Advanced Settings'
204
+ })
205
+ })
206
+ }),
207
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Form, {
208
+ onSubmit: handleSubmit,
209
+ initialValues: data.settings,
210
+ validationSchema: schema,
211
+ children: ({ values, isSubmitting, modified })=>{
212
+ return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
213
+ children: [
214
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Layouts.Header, {
215
+ title: formatMessage({
216
+ id: index.getTrad('HeaderNav.link.advancedSettings'),
217
+ defaultMessage: 'Advanced Settings'
218
+ }),
219
+ primaryAction: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
220
+ loading: isSubmitting,
221
+ type: "submit",
222
+ disabled: !modified || !canUpdate,
223
+ startIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.Check, {}),
224
+ size: "S",
225
+ children: formatMessage({
226
+ id: 'global.save',
227
+ defaultMessage: 'Save'
228
+ })
229
+ })
230
+ }),
231
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Layouts.Content, {
232
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
233
+ background: "neutral0",
234
+ hasRadius: true,
235
+ shadow: "filterShadow",
236
+ paddingTop: 6,
237
+ paddingBottom: 6,
238
+ paddingLeft: 7,
239
+ paddingRight: 7,
240
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
241
+ direction: "column",
242
+ alignItems: "stretch",
243
+ gap: 4,
244
+ children: [
245
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
246
+ variant: "delta",
247
+ tag: "h2",
248
+ children: formatMessage({
249
+ id: 'global.settings',
250
+ defaultMessage: 'Settings'
251
+ })
252
+ }),
253
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Root, {
254
+ gap: 6,
255
+ children: [
256
+ {
257
+ label: {
258
+ id: index.getTrad('EditForm.inputSelect.label.role'),
259
+ defaultMessage: 'Default role for authenticated users'
260
+ },
261
+ hint: {
262
+ id: index.getTrad('EditForm.inputSelect.description.role'),
263
+ defaultMessage: 'It will attach the new authenticated user to the selected role.'
264
+ },
265
+ options: data.roles.map((role)=>({
266
+ label: role.name,
267
+ value: role.type
268
+ })),
269
+ name: 'default_role',
270
+ size: 6,
271
+ type: 'enumeration'
272
+ },
273
+ ...layout
274
+ ].map(({ size, ...field })=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
275
+ col: size,
276
+ direction: "column",
277
+ alignItems: "stretch",
278
+ children: /*#__PURE__*/ jsxRuntime.jsx(admin.InputRenderer, {
279
+ ...field,
280
+ disabled: field.name === 'email_confirmation_redirection' && values.email_confirmation === false,
281
+ label: formatMessage(field.label),
282
+ hint: field.hint ? formatMessage(field.hint) : undefined,
283
+ placeholder: field.placeholder ? formatMessage(field.placeholder) : undefined
284
+ })
285
+ }, field.name))
286
+ })
287
+ ]
288
+ })
289
+ })
290
+ })
291
+ ]
292
+ });
293
+ }
294
+ })
295
+ ]
296
+ });
297
+ };
298
+
299
+ exports.AdvancedSettingsPage = AdvancedSettingsPage;
300
+ exports.ProtectedAdvancedSettingsPage = ProtectedAdvancedSettingsPage;
301
+ //# sourceMappingURL=index-DFnYIqrB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DFnYIqrB.js","sources":["../../../admin/src/pages/AdvancedSettings/utils/layout.js","../../../admin/src/pages/AdvancedSettings/utils/schema.js","../../../admin/src/pages/AdvancedSettings/index.jsx"],"sourcesContent":["import { getTrad } from '../../../utils';\n\nconst layout = [\n {\n label: {\n id: getTrad('EditForm.inputToggle.label.email'),\n defaultMessage: 'One account per email address',\n },\n hint: {\n id: getTrad('EditForm.inputToggle.description.email'),\n defaultMessage:\n 'Disallow the user to create multiple accounts using the same email address with different authentication providers.',\n },\n name: 'unique_email',\n type: 'boolean',\n size: 12,\n },\n {\n label: {\n id: getTrad('EditForm.inputToggle.label.sign-up'),\n defaultMessage: 'Enable sign-ups',\n },\n hint: {\n id: getTrad('EditForm.inputToggle.description.sign-up'),\n defaultMessage:\n 'When disabled (OFF), the registration process is forbidden. No one can subscribe anymore no matter the used provider.',\n },\n name: 'allow_register',\n type: 'boolean',\n size: 12,\n },\n {\n label: {\n id: getTrad('EditForm.inputToggle.label.email-reset-password'),\n defaultMessage: 'Reset password page',\n },\n hint: {\n id: getTrad('EditForm.inputToggle.description.email-reset-password'),\n defaultMessage: \"URL of your application's reset password page.\",\n },\n placeholder: {\n id: getTrad('EditForm.inputToggle.placeholder.email-reset-password'),\n defaultMessage: 'ex: https://youtfrontend.com/reset-password',\n },\n name: 'email_reset_password',\n type: 'string',\n size: 12,\n },\n {\n label: {\n id: getTrad('EditForm.inputToggle.label.email-confirmation'),\n defaultMessage: 'Enable email confirmation',\n },\n hint: {\n id: getTrad('EditForm.inputToggle.description.email-confirmation'),\n defaultMessage: 'When enabled (ON), new registered users receive a confirmation email.',\n },\n name: 'email_confirmation',\n type: 'boolean',\n size: 12,\n },\n {\n label: {\n id: getTrad('EditForm.inputToggle.label.email-confirmation-redirection'),\n defaultMessage: 'Redirection url',\n },\n hint: {\n id: getTrad('EditForm.inputToggle.description.email-confirmation-redirection'),\n defaultMessage: 'After you confirmed your email, choose where you will be redirected.',\n },\n placeholder: {\n id: getTrad('EditForm.inputToggle.placeholder.email-confirmation-redirection'),\n defaultMessage: 'ex: https://youtfrontend.com/email-confirmation',\n },\n name: 'email_confirmation_redirection',\n type: 'string',\n size: 12,\n },\n];\n\nexport default layout;\n","import { translatedErrors } from '@strapi/strapi/admin';\nimport * as yup from 'yup';\n\n// eslint-disable-next-line prefer-regex-literals\nconst URL_REGEX = new RegExp('(^$)|((.+:\\\\/\\\\/.*)(d*)\\\\/?(.*))');\n\nconst schema = yup.object().shape({\n email_confirmation_redirection: yup.mixed().when('email_confirmation', {\n is: true,\n then: yup.string().matches(URL_REGEX).required(),\n otherwise: yup.string().nullable(),\n }),\n email_reset_password: yup\n .string(translatedErrors.string)\n .matches(URL_REGEX, {\n id: translatedErrors.regex.id,\n defaultMessage: 'This is not a valid URL',\n })\n .nullable(),\n});\n\nexport default schema;\n","import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography, useNotifyAT } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport {\n useAPIErrorHandler,\n Page,\n Form,\n InputRenderer,\n useNotification,\n useFetchClient,\n useRBAC,\n Layouts,\n} from '@strapi/strapi/admin';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { PERMISSIONS } from '../../constants';\nimport { getTrad } from '../../utils';\n\nimport layout from './utils/layout';\nimport schema from './utils/schema';\n\nconst ProtectedAdvancedSettingsPage = () => (\n <Page.Protect permissions={PERMISSIONS.readAdvancedSettings}>\n <AdvancedSettingsPage />\n </Page.Protect>\n);\n\nconst AdvancedSettingsPage = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { notifyStatus } = useNotifyAT();\n const queryClient = useQueryClient();\n const { get, put } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n\n const {\n isLoading: isLoadingForPermissions,\n allowedActions: { canUpdate },\n } = useRBAC({ update: PERMISSIONS.updateAdvancedSettings });\n\n const { isLoading: isLoadingData, data } = useQuery(\n ['users-permissions', 'advanced'],\n async () => {\n const { data } = await get('/users-permissions/advanced');\n\n return data;\n },\n {\n onSuccess() {\n notifyStatus(\n formatMessage({\n id: getTrad('Form.advancedSettings.data.loaded'),\n defaultMessage: 'Advanced settings data has been loaded',\n })\n );\n },\n onError() {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: getTrad('notification.error'),\n defaultMessage: 'An error occured',\n }),\n });\n },\n }\n );\n\n const isLoading = isLoadingForPermissions || isLoadingData;\n\n const submitMutation = useMutation((body) => put('/users-permissions/advanced', body), {\n async onSuccess() {\n await queryClient.invalidateQueries(['users-permissions', 'advanced']);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: getTrad('notification.success.saved'),\n defaultMessage: 'Saved',\n }),\n });\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n refetchActive: true,\n });\n\n const { isLoading: isSubmittingForm } = submitMutation;\n\n const handleSubmit = async (body) => {\n submitMutation.mutate({\n ...body,\n email_confirmation_redirection: body.email_confirmation\n ? body.email_confirmation_redirection\n : '',\n });\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main aria-busy={isSubmittingForm}>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: formatMessage({\n id: getTrad('HeaderNav.link.advancedSettings'),\n defaultMessage: 'Advanced Settings',\n }),\n }\n )}\n </Page.Title>\n <Form onSubmit={handleSubmit} initialValues={data.settings} validationSchema={schema}>\n {({ values, isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n title={formatMessage({\n id: getTrad('HeaderNav.link.advancedSettings'),\n defaultMessage: 'Advanced Settings',\n })}\n primaryAction={\n <Button\n loading={isSubmitting}\n type=\"submit\"\n disabled={!modified || !canUpdate}\n startIcon={<Check />}\n size=\"S\"\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n />\n <Layouts.Content>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid.Root gap={6}>\n {[\n {\n label: {\n id: getTrad('EditForm.inputSelect.label.role'),\n defaultMessage: 'Default role for authenticated users',\n },\n hint: {\n id: getTrad('EditForm.inputSelect.description.role'),\n defaultMessage:\n 'It will attach the new authenticated user to the selected role.',\n },\n options: data.roles.map((role) => ({\n label: role.name,\n value: role.type,\n })),\n name: 'default_role',\n size: 6,\n type: 'enumeration',\n },\n ...layout,\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={\n field.name === 'email_confirmation_redirection' &&\n values.email_confirmation === false\n }\n label={formatMessage(field.label)}\n hint={field.hint ? formatMessage(field.hint) : undefined}\n placeholder={\n field.placeholder ? formatMessage(field.placeholder) : undefined\n }\n />\n </Grid.Item>\n ))}\n </Grid.Root>\n </Flex>\n </Box>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\nexport { ProtectedAdvancedSettingsPage, AdvancedSettingsPage };\n"],"names":["layout","label","id","getTrad","defaultMessage","hint","name","type","size","placeholder","URL_REGEX","RegExp","schema","yup","object","shape","email_confirmation_redirection","mixed","when","is","then","string","matches","required","otherwise","nullable","email_reset_password","translatedErrors","regex","ProtectedAdvancedSettingsPage","_jsx","Page","Protect","permissions","PERMISSIONS","readAdvancedSettings","AdvancedSettingsPage","formatMessage","useIntl","toggleNotification","useNotification","notifyStatus","useNotifyAT","queryClient","useQueryClient","get","put","useFetchClient","formatAPIError","useAPIErrorHandler","isLoading","isLoadingForPermissions","allowedActions","canUpdate","useRBAC","update","updateAdvancedSettings","isLoadingData","data","useQuery","onSuccess","onError","message","submitMutation","useMutation","body","invalidateQueries","error","refetchActive","isSubmittingForm","handleSubmit","mutate","email_confirmation","Loading","_jsxs","Main","aria-busy","Title","Form","onSubmit","initialValues","settings","validationSchema","values","isSubmitting","modified","_Fragment","Layouts","Header","title","primaryAction","Button","loading","disabled","startIcon","Check","Content","Box","background","hasRadius","shadow","paddingTop","paddingBottom","paddingLeft","paddingRight","Flex","direction","alignItems","gap","Typography","variant","tag","Grid","Root","options","roles","map","role","value","field","Item","col","InputRenderer","undefined"],"mappings":"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"}