@strapi/plugin-users-permissions 5.9.0 → 5.10.1

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 (268) 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/Policies/index.jsx +1 -1
  6. package/admin/src/index.js +2 -2
  7. package/admin/src/pages/AdvancedSettings/index.jsx +1 -1
  8. package/admin/src/pages/EmailTemplates/components/EmailForm.jsx +1 -1
  9. package/admin/src/pages/EmailTemplates/components/EmailTable.jsx +1 -1
  10. package/admin/src/pages/Roles/index.jsx +1 -1
  11. package/admin/src/pages/Roles/pages/ListPage/components/TableBody.jsx +1 -1
  12. package/admin/src/pluginId.js +2 -2
  13. package/dist/admin/chunks/ar-BJwjobLp.js +45 -0
  14. package/dist/admin/chunks/ar-BJwjobLp.js.map +1 -0
  15. package/dist/admin/chunks/ar-G6bUGuUb.mjs +43 -0
  16. package/dist/admin/chunks/ar-G6bUGuUb.mjs.map +1 -0
  17. package/dist/admin/chunks/cs-Bu59JqhG.mjs +49 -0
  18. package/dist/admin/chunks/cs-Bu59JqhG.mjs.map +1 -0
  19. package/dist/admin/chunks/cs-uS_SIEo8.js +51 -0
  20. package/dist/admin/chunks/cs-uS_SIEo8.js.map +1 -0
  21. package/dist/admin/chunks/de-7MVMrqqI.js +63 -0
  22. package/dist/admin/chunks/de-7MVMrqqI.js.map +1 -0
  23. package/dist/admin/chunks/de-B81A69_5.mjs +61 -0
  24. package/dist/admin/chunks/de-B81A69_5.mjs.map +1 -0
  25. package/dist/admin/chunks/dk-BaelzvBE.mjs +85 -0
  26. package/dist/admin/chunks/dk-BaelzvBE.mjs.map +1 -0
  27. package/dist/admin/chunks/dk-DwCLGmy9.js +87 -0
  28. package/dist/admin/chunks/dk-DwCLGmy9.js.map +1 -0
  29. package/dist/admin/chunks/en-BhgCBe7M.mjs +85 -0
  30. package/dist/admin/chunks/en-BhgCBe7M.mjs.map +1 -0
  31. package/dist/admin/chunks/en-DwQjkHi_.js +87 -0
  32. package/dist/admin/chunks/en-DwQjkHi_.js.map +1 -0
  33. package/dist/admin/chunks/es-B0wXmvRj.mjs +85 -0
  34. package/dist/admin/chunks/es-B0wXmvRj.mjs.map +1 -0
  35. package/dist/admin/chunks/es-BOJOedG5.js +87 -0
  36. package/dist/admin/chunks/es-BOJOedG5.js.map +1 -0
  37. package/dist/admin/chunks/fr-BDNWCNs0.js +51 -0
  38. package/dist/admin/chunks/fr-BDNWCNs0.js.map +1 -0
  39. package/dist/admin/chunks/fr-CGYvGUXg.mjs +49 -0
  40. package/dist/admin/chunks/fr-CGYvGUXg.mjs.map +1 -0
  41. package/dist/admin/chunks/id-CNzbwFjA.mjs +61 -0
  42. package/dist/admin/chunks/id-CNzbwFjA.mjs.map +1 -0
  43. package/dist/admin/chunks/id-UqUPykHZ.js +63 -0
  44. package/dist/admin/chunks/id-UqUPykHZ.js.map +1 -0
  45. package/dist/admin/chunks/index-B-Z_z_qb.mjs +213 -0
  46. package/dist/admin/chunks/index-B-Z_z_qb.mjs.map +1 -0
  47. package/dist/admin/chunks/index-B2MJiSOD.mjs +279 -0
  48. package/dist/admin/chunks/index-B2MJiSOD.mjs.map +1 -0
  49. package/dist/admin/chunks/index-BPiDUOGt.js +471 -0
  50. package/dist/admin/chunks/index-BPiDUOGt.js.map +1 -0
  51. package/dist/admin/chunks/index-BtYUb_br.js +741 -0
  52. package/dist/admin/chunks/index-BtYUb_br.js.map +1 -0
  53. package/dist/admin/chunks/index-COXjHxFm.mjs +718 -0
  54. package/dist/admin/chunks/index-COXjHxFm.mjs.map +1 -0
  55. package/dist/admin/chunks/index-CkYplz_3.js +301 -0
  56. package/dist/admin/chunks/index-CkYplz_3.js.map +1 -0
  57. package/dist/admin/chunks/index-Cu2GvTiT.mjs +1516 -0
  58. package/dist/admin/chunks/index-Cu2GvTiT.mjs.map +1 -0
  59. package/dist/admin/chunks/index-D01zzG9y.js +1537 -0
  60. package/dist/admin/chunks/index-D01zzG9y.js.map +1 -0
  61. package/dist/admin/chunks/index-DAclA-0k.js +217 -0
  62. package/dist/admin/chunks/index-DAclA-0k.js.map +1 -0
  63. package/dist/admin/chunks/index-DVNIct2-.mjs +448 -0
  64. package/dist/admin/chunks/index-DVNIct2-.mjs.map +1 -0
  65. package/dist/admin/chunks/it-B2H2foTf.mjs +61 -0
  66. package/dist/admin/chunks/it-B2H2foTf.mjs.map +1 -0
  67. package/dist/admin/chunks/it-D5VuyoLU.js +63 -0
  68. package/dist/admin/chunks/it-D5VuyoLU.js.map +1 -0
  69. package/dist/admin/chunks/ja-C0z9d7L9.mjs +47 -0
  70. package/dist/admin/chunks/ja-C0z9d7L9.mjs.map +1 -0
  71. package/dist/admin/chunks/ja-MpqVsCgs.js +49 -0
  72. package/dist/admin/chunks/ja-MpqVsCgs.js.map +1 -0
  73. package/dist/admin/chunks/ko-Bm-grPSc.js +87 -0
  74. package/dist/admin/chunks/ko-Bm-grPSc.js.map +1 -0
  75. package/dist/admin/chunks/ko-CzUgzpeS.mjs +85 -0
  76. package/dist/admin/chunks/ko-CzUgzpeS.mjs.map +1 -0
  77. package/dist/admin/chunks/ms-CCacxjim.mjs +48 -0
  78. package/dist/admin/chunks/ms-CCacxjim.mjs.map +1 -0
  79. package/dist/admin/chunks/ms-D7eyBD5H.js +50 -0
  80. package/dist/admin/chunks/ms-D7eyBD5H.js.map +1 -0
  81. package/dist/admin/chunks/nl-BIOwAQtI.js +49 -0
  82. package/dist/admin/chunks/nl-BIOwAQtI.js.map +1 -0
  83. package/dist/admin/chunks/nl-DDC3nZW-.mjs +47 -0
  84. package/dist/admin/chunks/nl-DDC3nZW-.mjs.map +1 -0
  85. package/dist/admin/chunks/pl-D5BeNrg_.js +87 -0
  86. package/dist/admin/chunks/pl-D5BeNrg_.js.map +1 -0
  87. package/dist/admin/chunks/pl-XkS463rN.mjs +85 -0
  88. package/dist/admin/chunks/pl-XkS463rN.mjs.map +1 -0
  89. package/dist/admin/chunks/pt-BR-8cC7z8Km.mjs +43 -0
  90. package/dist/admin/chunks/pt-BR-8cC7z8Km.mjs.map +1 -0
  91. package/dist/admin/chunks/pt-BR-DxPBzQGx.js +45 -0
  92. package/dist/admin/chunks/pt-BR-DxPBzQGx.js.map +1 -0
  93. package/dist/admin/chunks/pt-DQpEvio8.mjs +47 -0
  94. package/dist/admin/chunks/pt-DQpEvio8.mjs.map +1 -0
  95. package/dist/admin/chunks/pt-kkCwzNvH.js +49 -0
  96. package/dist/admin/chunks/pt-kkCwzNvH.js.map +1 -0
  97. package/dist/admin/chunks/ru-BQ0gHmp3.js +87 -0
  98. package/dist/admin/chunks/ru-BQ0gHmp3.js.map +1 -0
  99. package/dist/admin/chunks/ru-nzL_7Mhg.mjs +85 -0
  100. package/dist/admin/chunks/ru-nzL_7Mhg.mjs.map +1 -0
  101. package/dist/admin/chunks/sk-Ddxc_tZA.mjs +49 -0
  102. package/dist/admin/chunks/sk-Ddxc_tZA.mjs.map +1 -0
  103. package/dist/admin/chunks/sk-nVwAPdYC.js +51 -0
  104. package/dist/admin/chunks/sk-nVwAPdYC.js.map +1 -0
  105. package/dist/admin/chunks/sv-BDfk2A-F.js +87 -0
  106. package/dist/admin/chunks/sv-BDfk2A-F.js.map +1 -0
  107. package/dist/admin/chunks/sv-By3RYpMG.mjs +85 -0
  108. package/dist/admin/chunks/sv-By3RYpMG.mjs.map +1 -0
  109. package/dist/admin/chunks/th-BtTtpHe2.js +61 -0
  110. package/dist/admin/chunks/th-BtTtpHe2.js.map +1 -0
  111. package/dist/admin/chunks/th-COl50vqb.mjs +59 -0
  112. package/dist/admin/chunks/th-COl50vqb.mjs.map +1 -0
  113. package/dist/admin/chunks/tr-80SJU6jg.mjs +84 -0
  114. package/dist/admin/chunks/tr-80SJU6jg.mjs.map +1 -0
  115. package/dist/admin/chunks/tr-Di-Nf7cT.js +86 -0
  116. package/dist/admin/chunks/tr-Di-Nf7cT.js.map +1 -0
  117. package/dist/admin/chunks/uk-CggQOx1l.js +50 -0
  118. package/dist/admin/chunks/uk-CggQOx1l.js.map +1 -0
  119. package/dist/admin/chunks/uk-D8JHuzch.mjs +48 -0
  120. package/dist/admin/chunks/uk-D8JHuzch.mjs.map +1 -0
  121. package/dist/admin/chunks/vi-69AF03Iv.mjs +49 -0
  122. package/dist/admin/chunks/vi-69AF03Iv.mjs.map +1 -0
  123. package/dist/admin/chunks/vi-D9cCsHsU.js +51 -0
  124. package/dist/admin/chunks/vi-D9cCsHsU.js.map +1 -0
  125. package/dist/admin/chunks/zh-BzSkqxo-.mjs +85 -0
  126. package/dist/admin/chunks/zh-BzSkqxo-.mjs.map +1 -0
  127. package/dist/admin/chunks/zh-BzWgJEzz.js +87 -0
  128. package/dist/admin/chunks/zh-BzWgJEzz.js.map +1 -0
  129. package/dist/admin/chunks/zh-Hans-CKqQbpsM.js +87 -0
  130. package/dist/admin/chunks/zh-Hans-CKqQbpsM.js.map +1 -0
  131. package/dist/admin/chunks/zh-Hans-DmDcSsp7.mjs +85 -0
  132. package/dist/admin/chunks/zh-Hans-DmDcSsp7.mjs.map +1 -0
  133. package/dist/admin/index.js +6 -2
  134. package/dist/admin/index.js.map +1 -1
  135. package/dist/admin/index.mjs +1 -4
  136. package/dist/admin/index.mjs.map +1 -1
  137. package/dist/server/index.js +4739 -0
  138. package/dist/server/index.js.map +1 -0
  139. package/dist/server/index.mjs +4737 -0
  140. package/dist/server/index.mjs.map +1 -0
  141. package/package.json +11 -10
  142. package/rollup.config.mjs +52 -0
  143. package/server/register.js +1 -1
  144. package/dist/_chunks/ar-BguGUqwK.js +0 -44
  145. package/dist/_chunks/ar-BguGUqwK.js.map +0 -1
  146. package/dist/_chunks/ar-CK8BRRXB.mjs +0 -44
  147. package/dist/_chunks/ar-CK8BRRXB.mjs.map +0 -1
  148. package/dist/_chunks/cs-BVigMk0l.mjs +0 -50
  149. package/dist/_chunks/cs-BVigMk0l.mjs.map +0 -1
  150. package/dist/_chunks/cs-BW8-K_GY.js +0 -50
  151. package/dist/_chunks/cs-BW8-K_GY.js.map +0 -1
  152. package/dist/_chunks/de-BKUdRFI4.mjs +0 -62
  153. package/dist/_chunks/de-BKUdRFI4.mjs.map +0 -1
  154. package/dist/_chunks/de-owXpVluI.js +0 -62
  155. package/dist/_chunks/de-owXpVluI.js.map +0 -1
  156. package/dist/_chunks/dk-BQiTK50l.mjs +0 -86
  157. package/dist/_chunks/dk-BQiTK50l.mjs.map +0 -1
  158. package/dist/_chunks/dk-LXAnbuBk.js +0 -86
  159. package/dist/_chunks/dk-LXAnbuBk.js.map +0 -1
  160. package/dist/_chunks/en-DOHtPf-2.mjs +0 -86
  161. package/dist/_chunks/en-DOHtPf-2.mjs.map +0 -1
  162. package/dist/_chunks/en-MHo5mcsU.js +0 -86
  163. package/dist/_chunks/en-MHo5mcsU.js.map +0 -1
  164. package/dist/_chunks/es-BwLCLXAQ.js +0 -86
  165. package/dist/_chunks/es-BwLCLXAQ.js.map +0 -1
  166. package/dist/_chunks/es-DNgOVMjD.mjs +0 -86
  167. package/dist/_chunks/es-DNgOVMjD.mjs.map +0 -1
  168. package/dist/_chunks/fr-DkgRugiU.mjs +0 -50
  169. package/dist/_chunks/fr-DkgRugiU.mjs.map +0 -1
  170. package/dist/_chunks/fr-DkhpSjjm.js +0 -50
  171. package/dist/_chunks/fr-DkhpSjjm.js.map +0 -1
  172. package/dist/_chunks/id-BTemOeTZ.js +0 -62
  173. package/dist/_chunks/id-BTemOeTZ.js.map +0 -1
  174. package/dist/_chunks/id-BdEsvnaF.mjs +0 -62
  175. package/dist/_chunks/id-BdEsvnaF.mjs.map +0 -1
  176. package/dist/_chunks/index-BCw6zVHf.mjs +0 -344
  177. package/dist/_chunks/index-BCw6zVHf.mjs.map +0 -1
  178. package/dist/_chunks/index-BSJxpmc1-C5aV1Jb8.js +0 -11116
  179. package/dist/_chunks/index-BSJxpmc1-C5aV1Jb8.js.map +0 -1
  180. package/dist/_chunks/index-BSJxpmc1-Cmh4INWh.mjs +0 -11093
  181. package/dist/_chunks/index-BSJxpmc1-Cmh4INWh.mjs.map +0 -1
  182. package/dist/_chunks/index-BdOumcDH.mjs +0 -262
  183. package/dist/_chunks/index-BdOumcDH.mjs.map +0 -1
  184. package/dist/_chunks/index-BifzOY9J.mjs +0 -1142
  185. package/dist/_chunks/index-BifzOY9J.mjs.map +0 -1
  186. package/dist/_chunks/index-Bk3q4O8M.js +0 -639
  187. package/dist/_chunks/index-Bk3q4O8M.js.map +0 -1
  188. package/dist/_chunks/index-Bl-UGfZ4.js +0 -365
  189. package/dist/_chunks/index-Bl-UGfZ4.js.map +0 -1
  190. package/dist/_chunks/index-BpBvwD7E.mjs +0 -617
  191. package/dist/_chunks/index-BpBvwD7E.mjs.map +0 -1
  192. package/dist/_chunks/index-CsepshPM.mjs +0 -253
  193. package/dist/_chunks/index-CsepshPM.mjs.map +0 -1
  194. package/dist/_chunks/index-DYLqtX6g.js +0 -1171
  195. package/dist/_chunks/index-DYLqtX6g.js.map +0 -1
  196. package/dist/_chunks/index-mrTAEHgX.js +0 -252
  197. package/dist/_chunks/index-mrTAEHgX.js.map +0 -1
  198. package/dist/_chunks/index-s_b84GLl.js +0 -280
  199. package/dist/_chunks/index-s_b84GLl.js.map +0 -1
  200. package/dist/_chunks/it-B-rv0E24.mjs +0 -62
  201. package/dist/_chunks/it-B-rv0E24.mjs.map +0 -1
  202. package/dist/_chunks/it-D1rH6V6_.js +0 -62
  203. package/dist/_chunks/it-D1rH6V6_.js.map +0 -1
  204. package/dist/_chunks/ja-C8K-VBPD.mjs +0 -48
  205. package/dist/_chunks/ja-C8K-VBPD.mjs.map +0 -1
  206. package/dist/_chunks/ja-DqShgTMf.js +0 -48
  207. package/dist/_chunks/ja-DqShgTMf.js.map +0 -1
  208. package/dist/_chunks/ko-B9DGEPWH.js +0 -86
  209. package/dist/_chunks/ko-B9DGEPWH.js.map +0 -1
  210. package/dist/_chunks/ko-Busb0wIY.mjs +0 -86
  211. package/dist/_chunks/ko-Busb0wIY.mjs.map +0 -1
  212. package/dist/_chunks/ms-ByvsQjRt.mjs +0 -49
  213. package/dist/_chunks/ms-ByvsQjRt.mjs.map +0 -1
  214. package/dist/_chunks/ms-CPBU3LWf.js +0 -49
  215. package/dist/_chunks/ms-CPBU3LWf.js.map +0 -1
  216. package/dist/_chunks/nl-5qO8Rpcy.mjs +0 -48
  217. package/dist/_chunks/nl-5qO8Rpcy.mjs.map +0 -1
  218. package/dist/_chunks/nl-CwNB6YoO.js +0 -48
  219. package/dist/_chunks/nl-CwNB6YoO.js.map +0 -1
  220. package/dist/_chunks/pl-BdIzifBE.mjs +0 -86
  221. package/dist/_chunks/pl-BdIzifBE.mjs.map +0 -1
  222. package/dist/_chunks/pl-Do9UD69f.js +0 -86
  223. package/dist/_chunks/pl-Do9UD69f.js.map +0 -1
  224. package/dist/_chunks/pt-BIO24ioG.mjs +0 -48
  225. package/dist/_chunks/pt-BIO24ioG.mjs.map +0 -1
  226. package/dist/_chunks/pt-BR-D7dZhxuP.js +0 -44
  227. package/dist/_chunks/pt-BR-D7dZhxuP.js.map +0 -1
  228. package/dist/_chunks/pt-BR-f0p23AQZ.mjs +0 -44
  229. package/dist/_chunks/pt-BR-f0p23AQZ.mjs.map +0 -1
  230. package/dist/_chunks/pt-fdvyOnUp.js +0 -48
  231. package/dist/_chunks/pt-fdvyOnUp.js.map +0 -1
  232. package/dist/_chunks/ru-C94rjPGA.js +0 -86
  233. package/dist/_chunks/ru-C94rjPGA.js.map +0 -1
  234. package/dist/_chunks/ru-VWy-IB7K.mjs +0 -86
  235. package/dist/_chunks/ru-VWy-IB7K.mjs.map +0 -1
  236. package/dist/_chunks/sk-BABEhykl.js +0 -50
  237. package/dist/_chunks/sk-BABEhykl.js.map +0 -1
  238. package/dist/_chunks/sk-B_LIcepm.mjs +0 -50
  239. package/dist/_chunks/sk-B_LIcepm.mjs.map +0 -1
  240. package/dist/_chunks/sv-ABLKOokl.mjs +0 -86
  241. package/dist/_chunks/sv-ABLKOokl.mjs.map +0 -1
  242. package/dist/_chunks/sv-Be43LhA9.js +0 -86
  243. package/dist/_chunks/sv-Be43LhA9.js.map +0 -1
  244. package/dist/_chunks/th-DKyP7ueR.mjs +0 -60
  245. package/dist/_chunks/th-DKyP7ueR.mjs.map +0 -1
  246. package/dist/_chunks/th-DgVhVLhL.js +0 -60
  247. package/dist/_chunks/th-DgVhVLhL.js.map +0 -1
  248. package/dist/_chunks/tr-B_idhkEs.js +0 -85
  249. package/dist/_chunks/tr-B_idhkEs.js.map +0 -1
  250. package/dist/_chunks/tr-qa1Q5UjC.mjs +0 -85
  251. package/dist/_chunks/tr-qa1Q5UjC.mjs.map +0 -1
  252. package/dist/_chunks/uk-BmRqbeQc.mjs +0 -49
  253. package/dist/_chunks/uk-BmRqbeQc.mjs.map +0 -1
  254. package/dist/_chunks/uk-LHOivnhP.js +0 -49
  255. package/dist/_chunks/uk-LHOivnhP.js.map +0 -1
  256. package/dist/_chunks/vi-CdVRdKDw.js +0 -50
  257. package/dist/_chunks/vi-CdVRdKDw.js.map +0 -1
  258. package/dist/_chunks/vi-HW-EdMea.mjs +0 -50
  259. package/dist/_chunks/vi-HW-EdMea.mjs.map +0 -1
  260. package/dist/_chunks/zh-5hKkVPA4.mjs +0 -86
  261. package/dist/_chunks/zh-5hKkVPA4.mjs.map +0 -1
  262. package/dist/_chunks/zh-Cuq8gMnF.js +0 -86
  263. package/dist/_chunks/zh-Cuq8gMnF.js.map +0 -1
  264. package/dist/_chunks/zh-Hans-BHilK-yc.mjs +0 -86
  265. package/dist/_chunks/zh-Hans-BHilK-yc.mjs.map +0 -1
  266. package/dist/_chunks/zh-Hans-GQDMKtY4.js +0 -86
  267. package/dist/_chunks/zh-Hans-GQDMKtY4.js.map +0 -1
  268. package/packup.config.ts +0 -22
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-B2MJiSOD.mjs","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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"}
@@ -0,0 +1,471 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var React = require('react');
5
+ var strapiAdmin = require('@strapi/admin/strapi-admin');
6
+ var designSystem = require('@strapi/design-system');
7
+ var admin = require('@strapi/strapi/admin');
8
+ var reactIntl = require('react-intl');
9
+ var reactQuery = require('react-query');
10
+ var index = require('./index-DAclA-0k.js');
11
+ require('lodash/isEmpty');
12
+ var PropTypes = require('prop-types');
13
+ var yup = require('yup');
14
+ var icons = require('@strapi/icons');
15
+
16
+ function _interopNamespaceDefault(e) {
17
+ var n = Object.create(null);
18
+ if (e) {
19
+ Object.keys(e).forEach(function (k) {
20
+ if (k !== 'default') {
21
+ var d = Object.getOwnPropertyDescriptor(e, k);
22
+ Object.defineProperty(n, k, d.get ? d : {
23
+ enumerable: true,
24
+ get: function () { return e[k]; }
25
+ });
26
+ }
27
+ });
28
+ }
29
+ n.default = e;
30
+ return Object.freeze(n);
31
+ }
32
+
33
+ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
34
+ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
35
+
36
+ const schema = yup__namespace.object().shape({
37
+ options: yup__namespace.object().shape({
38
+ from: yup__namespace.object().shape({
39
+ name: yup__namespace.string().required({
40
+ id: admin.translatedErrors.required.id,
41
+ defaultMessage: 'This field is required'
42
+ }),
43
+ email: yup__namespace.string().email(admin.translatedErrors.email).required({
44
+ id: admin.translatedErrors.required.id,
45
+ defaultMessage: 'This field is required'
46
+ })
47
+ }).required(),
48
+ response_email: yup__namespace.string().email(admin.translatedErrors.email),
49
+ object: yup__namespace.string().required({
50
+ id: admin.translatedErrors.required.id,
51
+ defaultMessage: 'This field is required'
52
+ }),
53
+ message: yup__namespace.string().required({
54
+ id: admin.translatedErrors.required.id,
55
+ defaultMessage: 'This field is required'
56
+ })
57
+ }).required(admin.translatedErrors.required.id)
58
+ });
59
+
60
+ const EmailForm = ({ template = {}, onToggle, open, onSubmit })=>{
61
+ const { formatMessage } = reactIntl.useIntl();
62
+ return /*#__PURE__*/ jsxRuntime.jsx(designSystem.Modal.Root, {
63
+ open: open,
64
+ onOpenChange: onToggle,
65
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Modal.Content, {
66
+ children: [
67
+ /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Modal.Header, {
68
+ children: [
69
+ /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Breadcrumbs, {
70
+ label: `${formatMessage({
71
+ id: index.getTrad('PopUpForm.header.edit.email-templates'),
72
+ defaultMessage: 'Edit email template'
73
+ })}, ${template.display ? formatMessage({
74
+ id: index.getTrad(template.display),
75
+ defaultMessage: template.display
76
+ }) : ''}`,
77
+ children: [
78
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Crumb, {
79
+ children: formatMessage({
80
+ id: index.getTrad('PopUpForm.header.edit.email-templates'),
81
+ defaultMessage: 'Edit email template'
82
+ })
83
+ }),
84
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Crumb, {
85
+ isCurrent: true,
86
+ children: template.display ? formatMessage({
87
+ id: index.getTrad(template.display),
88
+ defaultMessage: template.display
89
+ }) : ''
90
+ })
91
+ ]
92
+ }),
93
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.VisuallyHidden, {
94
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Modal.Title, {
95
+ children: `${formatMessage({
96
+ id: index.getTrad('PopUpForm.header.edit.email-templates'),
97
+ defaultMessage: 'Edit email template'
98
+ })}, ${template.display ? formatMessage({
99
+ id: index.getTrad(template.display),
100
+ defaultMessage: template.display
101
+ }) : ''}`
102
+ })
103
+ })
104
+ ]
105
+ }),
106
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Form, {
107
+ onSubmit: onSubmit,
108
+ initialValues: template,
109
+ validationSchema: schema,
110
+ children: ({ isSubmitting })=>{
111
+ return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
112
+ children: [
113
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Modal.Body, {
114
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Root, {
115
+ gap: 5,
116
+ children: [
117
+ {
118
+ label: formatMessage({
119
+ id: index.getTrad('PopUpForm.Email.options.from.name.label'),
120
+ defaultMessage: 'Shipper name'
121
+ }),
122
+ name: 'options.from.name',
123
+ size: 6,
124
+ type: 'string'
125
+ },
126
+ {
127
+ label: formatMessage({
128
+ id: index.getTrad('PopUpForm.Email.options.from.email.label'),
129
+ defaultMessage: 'Shipper email'
130
+ }),
131
+ name: 'options.from.email',
132
+ size: 6,
133
+ type: 'string'
134
+ },
135
+ {
136
+ label: formatMessage({
137
+ id: index.getTrad('PopUpForm.Email.options.response_email.label'),
138
+ defaultMessage: 'Response email'
139
+ }),
140
+ name: 'options.response_email',
141
+ size: 6,
142
+ type: 'string'
143
+ },
144
+ {
145
+ label: formatMessage({
146
+ id: index.getTrad('PopUpForm.Email.options.object.label'),
147
+ defaultMessage: 'Subject'
148
+ }),
149
+ name: 'options.object',
150
+ size: 6,
151
+ type: 'string'
152
+ },
153
+ {
154
+ label: formatMessage({
155
+ id: index.getTrad('PopUpForm.Email.options.message.label'),
156
+ defaultMessage: 'Message'
157
+ }),
158
+ name: 'options.message',
159
+ size: 12,
160
+ type: 'text'
161
+ }
162
+ ].map(({ size, ...field })=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
163
+ col: size,
164
+ direction: "column",
165
+ alignItems: "stretch",
166
+ children: /*#__PURE__*/ jsxRuntime.jsx(admin.InputRenderer, {
167
+ ...field
168
+ })
169
+ }, field.name))
170
+ })
171
+ }),
172
+ /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Modal.Footer, {
173
+ children: [
174
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Modal.Close, {
175
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
176
+ variant: "tertiary",
177
+ children: "Cancel"
178
+ })
179
+ }),
180
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
181
+ loading: isSubmitting,
182
+ type: "submit",
183
+ children: "Finish"
184
+ })
185
+ ]
186
+ })
187
+ ]
188
+ });
189
+ }
190
+ })
191
+ ]
192
+ })
193
+ });
194
+ };
195
+ EmailForm.defaultProps = {
196
+ template: {}
197
+ };
198
+ EmailForm.propTypes = {
199
+ template: PropTypes.shape({
200
+ display: PropTypes.string,
201
+ icon: PropTypes.string,
202
+ options: PropTypes.shape({
203
+ from: PropTypes.shape({
204
+ name: PropTypes.string,
205
+ email: PropTypes.string
206
+ }),
207
+ message: PropTypes.string,
208
+ object: PropTypes.string,
209
+ response_email: PropTypes.string
210
+ })
211
+ }),
212
+ open: PropTypes.bool.isRequired,
213
+ onSubmit: PropTypes.func.isRequired,
214
+ onToggle: PropTypes.func.isRequired
215
+ };
216
+
217
+ const EmailTable = ({ canUpdate, onEditClick })=>{
218
+ const { formatMessage } = reactIntl.useIntl();
219
+ return /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Table, {
220
+ colCount: 3,
221
+ rowCount: 3,
222
+ children: [
223
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Thead, {
224
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
225
+ children: [
226
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
227
+ width: "1%",
228
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.VisuallyHidden, {
229
+ children: formatMessage({
230
+ id: index.getTrad('Email.template.table.icon.label'),
231
+ defaultMessage: 'icon'
232
+ })
233
+ })
234
+ }),
235
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
236
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
237
+ variant: "sigma",
238
+ textColor: "neutral600",
239
+ children: formatMessage({
240
+ id: index.getTrad('Email.template.table.name.label'),
241
+ defaultMessage: 'name'
242
+ })
243
+ })
244
+ }),
245
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
246
+ width: "1%",
247
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.VisuallyHidden, {
248
+ children: formatMessage({
249
+ id: index.getTrad('Email.template.table.action.label'),
250
+ defaultMessage: 'action'
251
+ })
252
+ })
253
+ })
254
+ ]
255
+ })
256
+ }),
257
+ /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tbody, {
258
+ children: [
259
+ /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
260
+ cursor: "pointer",
261
+ onClick: ()=>onEditClick('reset_password'),
262
+ children: [
263
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
264
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
265
+ width: "3.2rem",
266
+ height: "3.2rem",
267
+ padding: "0.8rem",
268
+ children: /*#__PURE__*/ jsxRuntime.jsx(icons.ArrowClockwise, {
269
+ "aria-label": formatMessage({
270
+ id: 'global.reset-password',
271
+ defaultMessage: 'Reset password'
272
+ })
273
+ })
274
+ })
275
+ }),
276
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
277
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
278
+ children: formatMessage({
279
+ id: 'global.reset-password',
280
+ defaultMessage: 'Reset password'
281
+ })
282
+ })
283
+ }),
284
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
285
+ onClick: (e)=>e.stopPropagation(),
286
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
287
+ onClick: ()=>onEditClick('reset_password'),
288
+ label: formatMessage({
289
+ id: index.getTrad('Email.template.form.edit.label'),
290
+ defaultMessage: 'Edit a template'
291
+ }),
292
+ variant: "ghost",
293
+ disabled: !canUpdate,
294
+ children: /*#__PURE__*/ jsxRuntime.jsx(icons.Pencil, {})
295
+ })
296
+ })
297
+ ]
298
+ }),
299
+ /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
300
+ cursor: "pointer",
301
+ onClick: ()=>onEditClick('email_confirmation'),
302
+ children: [
303
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
304
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
305
+ width: "3.2rem",
306
+ height: "3.2rem",
307
+ padding: "0.8rem",
308
+ children: /*#__PURE__*/ jsxRuntime.jsx(icons.Check, {
309
+ "aria-label": formatMessage({
310
+ id: index.getTrad('Email.template.email_confirmation'),
311
+ defaultMessage: 'Email address confirmation'
312
+ })
313
+ })
314
+ })
315
+ }),
316
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
317
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
318
+ children: formatMessage({
319
+ id: index.getTrad('Email.template.email_confirmation'),
320
+ defaultMessage: 'Email address confirmation'
321
+ })
322
+ })
323
+ }),
324
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
325
+ onClick: (e)=>e.stopPropagation(),
326
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
327
+ onClick: ()=>onEditClick('email_confirmation'),
328
+ label: formatMessage({
329
+ id: index.getTrad('Email.template.form.edit.label'),
330
+ defaultMessage: 'Edit a template'
331
+ }),
332
+ variant: "ghost",
333
+ disabled: !canUpdate,
334
+ children: /*#__PURE__*/ jsxRuntime.jsx(icons.Pencil, {})
335
+ })
336
+ })
337
+ ]
338
+ })
339
+ ]
340
+ })
341
+ ]
342
+ });
343
+ };
344
+ EmailTable.propTypes = {
345
+ canUpdate: PropTypes.bool.isRequired,
346
+ onEditClick: PropTypes.func.isRequired
347
+ };
348
+
349
+ const ProtectedEmailTemplatesPage = ()=>/*#__PURE__*/ jsxRuntime.jsx(admin.Page.Protect, {
350
+ permissions: index.PERMISSIONS.readEmailTemplates,
351
+ children: /*#__PURE__*/ jsxRuntime.jsx(EmailTemplatesPage, {})
352
+ });
353
+ const EmailTemplatesPage = ()=>{
354
+ const { formatMessage } = reactIntl.useIntl();
355
+ const { trackUsage } = strapiAdmin.useTracking();
356
+ const { notifyStatus } = designSystem.useNotifyAT();
357
+ const { toggleNotification } = admin.useNotification();
358
+ const queryClient = reactQuery.useQueryClient();
359
+ const { get, put } = admin.useFetchClient();
360
+ const { formatAPIError } = admin.useAPIErrorHandler();
361
+ const [isModalOpen, setIsModalOpen] = React__namespace.useState(false);
362
+ const [templateToEdit, setTemplateToEdit] = React__namespace.useState(null);
363
+ const { isLoading: isLoadingForPermissions, allowedActions: { canUpdate } } = admin.useRBAC({
364
+ update: index.PERMISSIONS.updateEmailTemplates
365
+ });
366
+ const { isLoading: isLoadingData, data } = reactQuery.useQuery([
367
+ 'users-permissions',
368
+ 'email-templates'
369
+ ], async ()=>{
370
+ const { data } = await get('/users-permissions/email-templates');
371
+ return data;
372
+ }, {
373
+ onSuccess () {
374
+ notifyStatus(formatMessage({
375
+ id: index.getTrad('Email.template.data.loaded'),
376
+ defaultMessage: 'Email templates has been loaded'
377
+ }));
378
+ },
379
+ onError (error) {
380
+ toggleNotification({
381
+ type: 'danger',
382
+ message: formatAPIError(error)
383
+ });
384
+ }
385
+ });
386
+ const isLoading = isLoadingForPermissions || isLoadingData;
387
+ const handleToggle = ()=>{
388
+ setIsModalOpen((prev)=>!prev);
389
+ };
390
+ const handleEditClick = (template)=>{
391
+ setTemplateToEdit(template);
392
+ handleToggle();
393
+ };
394
+ const submitMutation = reactQuery.useMutation((body)=>put('/users-permissions/email-templates', {
395
+ 'email-templates': body
396
+ }), {
397
+ async onSuccess () {
398
+ await queryClient.invalidateQueries([
399
+ 'users-permissions',
400
+ 'email-templates'
401
+ ]);
402
+ toggleNotification({
403
+ type: 'success',
404
+ message: formatMessage({
405
+ id: 'notification.success.saved',
406
+ defaultMessage: 'Saved'
407
+ })
408
+ });
409
+ trackUsage('didEditEmailTemplates');
410
+ handleToggle();
411
+ },
412
+ onError (error) {
413
+ toggleNotification({
414
+ type: 'danger',
415
+ message: formatAPIError(error)
416
+ });
417
+ },
418
+ refetchActive: true
419
+ });
420
+ const handleSubmit = (body)=>{
421
+ trackUsage('willEditEmailTemplates');
422
+ const editedTemplates = {
423
+ ...data,
424
+ [templateToEdit]: body
425
+ };
426
+ submitMutation.mutate(editedTemplates);
427
+ };
428
+ if (isLoading) {
429
+ return /*#__PURE__*/ jsxRuntime.jsx(admin.Page.Loading, {});
430
+ }
431
+ return /*#__PURE__*/ jsxRuntime.jsxs(admin.Page.Main, {
432
+ "aria-busy": submitMutation.isLoading,
433
+ children: [
434
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Page.Title, {
435
+ children: formatMessage({
436
+ id: 'Settings.PageTitle',
437
+ defaultMessage: 'Settings - {name}'
438
+ }, {
439
+ name: formatMessage({
440
+ id: index.getTrad('HeaderNav.link.emailTemplates'),
441
+ defaultMessage: 'Email templates'
442
+ })
443
+ })
444
+ }),
445
+ /*#__PURE__*/ jsxRuntime.jsx(admin.Layouts.Header, {
446
+ title: formatMessage({
447
+ id: index.getTrad('HeaderNav.link.emailTemplates'),
448
+ defaultMessage: 'Email templates'
449
+ })
450
+ }),
451
+ /*#__PURE__*/ jsxRuntime.jsxs(admin.Layouts.Content, {
452
+ children: [
453
+ /*#__PURE__*/ jsxRuntime.jsx(EmailTable, {
454
+ onEditClick: handleEditClick,
455
+ canUpdate: canUpdate
456
+ }),
457
+ /*#__PURE__*/ jsxRuntime.jsx(EmailForm, {
458
+ template: data[templateToEdit],
459
+ onToggle: handleToggle,
460
+ open: isModalOpen,
461
+ onSubmit: handleSubmit
462
+ })
463
+ ]
464
+ })
465
+ ]
466
+ });
467
+ };
468
+
469
+ exports.EmailTemplatesPage = EmailTemplatesPage;
470
+ exports.ProtectedEmailTemplatesPage = ProtectedEmailTemplatesPage;
471
+ //# sourceMappingURL=index-BPiDUOGt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BPiDUOGt.js","sources":["../../../admin/src/pages/EmailTemplates/utils/schema.js","../../../admin/src/pages/EmailTemplates/components/EmailForm.jsx","../../../admin/src/pages/EmailTemplates/components/EmailTable.jsx","../../../admin/src/pages/EmailTemplates/index.jsx"],"sourcesContent":["import { translatedErrors } from '@strapi/strapi/admin';\nimport * as yup from 'yup';\n\nconst schema = yup.object().shape({\n options: yup\n .object()\n .shape({\n from: yup\n .object()\n .shape({\n name: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n email: yup.string().email(translatedErrors.email).required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n })\n .required(),\n response_email: yup.string().email(translatedErrors.email),\n object: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n message: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n })\n .required(translatedErrors.required.id),\n});\n\nexport default schema;\n","import * as React from 'react';\n\nimport { Button, Grid, Modal, Breadcrumbs, Crumb, VisuallyHidden } from '@strapi/design-system';\nimport { Form, InputRenderer } from '@strapi/strapi/admin';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../../utils';\nimport schema from '../utils/schema';\n\nconst EmailForm = ({ template = {}, onToggle, open, onSubmit }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Modal.Root open={open} onOpenChange={onToggle}>\n <Modal.Content>\n <Modal.Header>\n <Breadcrumbs\n label={`${formatMessage({\n id: getTrad('PopUpForm.header.edit.email-templates'),\n defaultMessage: 'Edit email template',\n })}, ${\n template.display\n ? formatMessage({\n id: getTrad(template.display),\n defaultMessage: template.display,\n })\n : ''\n }`}\n >\n <Crumb>\n {formatMessage({\n id: getTrad('PopUpForm.header.edit.email-templates'),\n defaultMessage: 'Edit email template',\n })}\n </Crumb>\n <Crumb isCurrent>\n {template.display\n ? formatMessage({ id: getTrad(template.display), defaultMessage: template.display })\n : ''}\n </Crumb>\n </Breadcrumbs>\n <VisuallyHidden>\n <Modal.Title>\n {`${formatMessage({\n id: getTrad('PopUpForm.header.edit.email-templates'),\n defaultMessage: 'Edit email template',\n })}, ${template.display ? formatMessage({ id: getTrad(template.display), defaultMessage: template.display }) : ''}`}\n </Modal.Title>\n </VisuallyHidden>\n </Modal.Header>\n <Form onSubmit={onSubmit} initialValues={template} validationSchema={schema}>\n {({ isSubmitting }) => {\n return (\n <>\n <Modal.Body>\n <Grid.Root gap={5}>\n {[\n {\n label: formatMessage({\n id: getTrad('PopUpForm.Email.options.from.name.label'),\n defaultMessage: 'Shipper name',\n }),\n name: 'options.from.name',\n size: 6,\n type: 'string',\n },\n {\n label: formatMessage({\n id: getTrad('PopUpForm.Email.options.from.email.label'),\n defaultMessage: 'Shipper email',\n }),\n name: 'options.from.email',\n size: 6,\n type: 'string',\n },\n {\n label: formatMessage({\n id: getTrad('PopUpForm.Email.options.response_email.label'),\n defaultMessage: 'Response email',\n }),\n name: 'options.response_email',\n size: 6,\n type: 'string',\n },\n {\n label: formatMessage({\n id: getTrad('PopUpForm.Email.options.object.label'),\n defaultMessage: 'Subject',\n }),\n name: 'options.object',\n size: 6,\n type: 'string',\n },\n {\n label: formatMessage({\n id: getTrad('PopUpForm.Email.options.message.label'),\n defaultMessage: 'Message',\n }),\n name: 'options.message',\n size: 12,\n type: 'text',\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n </Modal.Body>\n <Modal.Footer>\n <Modal.Close>\n <Button variant=\"tertiary\">Cancel</Button>\n </Modal.Close>\n <Button loading={isSubmitting} type=\"submit\">\n Finish\n </Button>\n </Modal.Footer>\n </>\n );\n }}\n </Form>\n </Modal.Content>\n </Modal.Root>\n );\n};\n\nEmailForm.defaultProps = {\n template: {},\n};\n\nEmailForm.propTypes = {\n template: PropTypes.shape({\n display: PropTypes.string,\n icon: PropTypes.string,\n options: PropTypes.shape({\n from: PropTypes.shape({\n name: PropTypes.string,\n email: PropTypes.string,\n }),\n message: PropTypes.string,\n object: PropTypes.string,\n response_email: PropTypes.string,\n }),\n }),\n open: PropTypes.bool.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onToggle: PropTypes.func.isRequired,\n};\n\nexport default EmailForm;\n","import * as React from 'react';\n\nimport {\n IconButton,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n Box,\n} from '@strapi/design-system';\nimport { Check, Pencil, ArrowClockwise as Refresh } from '@strapi/icons';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../../utils';\n\nconst EmailTable = ({ canUpdate, onEditClick }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Table colCount={3} rowCount={3}>\n <Thead>\n <Tr>\n <Th width=\"1%\">\n <VisuallyHidden>\n {formatMessage({\n id: getTrad('Email.template.table.icon.label'),\n defaultMessage: 'icon',\n })}\n </VisuallyHidden>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('Email.template.table.name.label'),\n defaultMessage: 'name',\n })}\n </Typography>\n </Th>\n <Th width=\"1%\">\n <VisuallyHidden>\n {formatMessage({\n id: getTrad('Email.template.table.action.label'),\n defaultMessage: 'action',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n <Tr cursor=\"pointer\" onClick={() => onEditClick('reset_password')}>\n <Td>\n <Box width=\"3.2rem\" height=\"3.2rem\" padding=\"0.8rem\">\n <Refresh\n aria-label={formatMessage({\n id: 'global.reset-password',\n defaultMessage: 'Reset password',\n })}\n />\n </Box>\n </Td>\n <Td>\n <Typography>\n {formatMessage({\n id: 'global.reset-password',\n defaultMessage: 'Reset password',\n })}\n </Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n <IconButton\n onClick={() => onEditClick('reset_password')}\n label={formatMessage({\n id: getTrad('Email.template.form.edit.label'),\n defaultMessage: 'Edit a template',\n })}\n variant=\"ghost\"\n disabled={!canUpdate}\n >\n <Pencil />\n </IconButton>\n </Td>\n </Tr>\n <Tr cursor=\"pointer\" onClick={() => onEditClick('email_confirmation')}>\n <Td>\n <Box width=\"3.2rem\" height=\"3.2rem\" padding=\"0.8rem\">\n <Check\n aria-label={formatMessage({\n id: getTrad('Email.template.email_confirmation'),\n defaultMessage: 'Email address confirmation',\n })}\n />\n </Box>\n </Td>\n <Td>\n <Typography>\n {formatMessage({\n id: getTrad('Email.template.email_confirmation'),\n defaultMessage: 'Email address confirmation',\n })}\n </Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n <IconButton\n onClick={() => onEditClick('email_confirmation')}\n label={formatMessage({\n id: getTrad('Email.template.form.edit.label'),\n defaultMessage: 'Edit a template',\n })}\n variant=\"ghost\"\n disabled={!canUpdate}\n >\n <Pencil />\n </IconButton>\n </Td>\n </Tr>\n </Tbody>\n </Table>\n );\n};\n\nEmailTable.propTypes = {\n canUpdate: PropTypes.bool.isRequired,\n onEditClick: PropTypes.func.isRequired,\n};\n\nexport default EmailTable;\n","import * as React from 'react';\n\nimport { useTracking } from '@strapi/admin/strapi-admin';\nimport { useNotifyAT } from '@strapi/design-system';\nimport {\n Page,\n useAPIErrorHandler,\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 EmailForm from './components/EmailForm';\nimport EmailTable from './components/EmailTable';\n\nconst ProtectedEmailTemplatesPage = () => (\n <Page.Protect permissions={PERMISSIONS.readEmailTemplates}>\n <EmailTemplatesPage />\n </Page.Protect>\n);\nconst EmailTemplatesPage = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const { notifyStatus } = useNotifyAT();\n const { toggleNotification } = useNotification();\n const queryClient = useQueryClient();\n const { get, put } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n\n const [isModalOpen, setIsModalOpen] = React.useState(false);\n const [templateToEdit, setTemplateToEdit] = React.useState(null);\n\n const {\n isLoading: isLoadingForPermissions,\n allowedActions: { canUpdate },\n } = useRBAC({ update: PERMISSIONS.updateEmailTemplates });\n\n const { isLoading: isLoadingData, data } = useQuery(\n ['users-permissions', 'email-templates'],\n async () => {\n const { data } = await get('/users-permissions/email-templates');\n\n return data;\n },\n {\n onSuccess() {\n notifyStatus(\n formatMessage({\n id: getTrad('Email.template.data.loaded'),\n defaultMessage: 'Email templates has been loaded',\n })\n );\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n }\n );\n\n const isLoading = isLoadingForPermissions || isLoadingData;\n\n const handleToggle = () => {\n setIsModalOpen((prev) => !prev);\n };\n\n const handleEditClick = (template) => {\n setTemplateToEdit(template);\n handleToggle();\n };\n\n const submitMutation = useMutation(\n (body) => put('/users-permissions/email-templates', { 'email-templates': body }),\n {\n async onSuccess() {\n await queryClient.invalidateQueries(['users-permissions', 'email-templates']);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n trackUsage('didEditEmailTemplates');\n\n handleToggle();\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n refetchActive: true,\n }\n );\n\n const handleSubmit = (body) => {\n trackUsage('willEditEmailTemplates');\n\n const editedTemplates = { ...data, [templateToEdit]: body };\n submitMutation.mutate(editedTemplates);\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main aria-busy={submitMutation.isLoading}>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: formatMessage({\n id: getTrad('HeaderNav.link.emailTemplates'),\n defaultMessage: 'Email templates',\n }),\n }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({\n id: getTrad('HeaderNav.link.emailTemplates'),\n defaultMessage: 'Email templates',\n })}\n />\n <Layouts.Content>\n <EmailTable onEditClick={handleEditClick} canUpdate={canUpdate} />\n <EmailForm\n template={data[templateToEdit]}\n onToggle={handleToggle}\n open={isModalOpen}\n onSubmit={handleSubmit}\n />\n </Layouts.Content>\n </Page.Main>\n );\n};\n\nexport { ProtectedEmailTemplatesPage, EmailTemplatesPage };\n"],"names":["schema","yup","object","shape","options","from","name","string","required","id","translatedErrors","defaultMessage","email","response_email","message","EmailForm","template","onToggle","open","onSubmit","formatMessage","useIntl","_jsx","Modal","Root","onOpenChange","_jsxs","Content","Header","Breadcrumbs","label","getTrad","display","Crumb","isCurrent","VisuallyHidden","Title","Form","initialValues","validationSchema","isSubmitting","_Fragment","Body","Grid","gap","size","type","map","field","Item","col","direction","alignItems","InputRenderer","Footer","Close","Button","variant","loading","defaultProps","propTypes","PropTypes","icon","bool","isRequired","func","EmailTable","canUpdate","onEditClick","Table","colCount","rowCount","Thead","Tr","Th","width","Typography","textColor","Tbody","cursor","onClick","Td","Box","height","padding","Refresh","aria-label","e","stopPropagation","IconButton","disabled","Pencil","Check","ProtectedEmailTemplatesPage","Page","Protect","permissions","PERMISSIONS","readEmailTemplates","EmailTemplatesPage","trackUsage","useTracking","notifyStatus","useNotifyAT","toggleNotification","useNotification","queryClient","useQueryClient","get","put","useFetchClient","formatAPIError","useAPIErrorHandler","isModalOpen","setIsModalOpen","React","useState","templateToEdit","setTemplateToEdit","isLoading","isLoadingForPermissions","allowedActions","useRBAC","update","updateEmailTemplates","isLoadingData","data","useQuery","onSuccess","onError","error","handleToggle","prev","handleEditClick","submitMutation","useMutation","body","invalidateQueries","refetchActive","handleSubmit","editedTemplates","mutate","Loading","Main","aria-busy","Layouts","title"],"mappings":"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"}