@strapi/admin 4.16.2 → 4.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (804) hide show
  1. package/index.d.ts +1 -1
  2. package/index.js +1 -1
  3. package/package.json +55 -41
  4. package/strapi-server.js +3 -3
  5. package/dist/_chunks/AuthenticatedApp-342bf22f.js +0 -1476
  6. package/dist/_chunks/AuthenticatedApp-342bf22f.js.map +0 -1
  7. package/dist/_chunks/AuthenticatedApp-bb31f306.mjs +0 -1450
  8. package/dist/_chunks/AuthenticatedApp-bb31f306.mjs.map +0 -1
  9. package/dist/_chunks/DragLayer-bff96835.mjs +0 -44
  10. package/dist/_chunks/DragLayer-bff96835.mjs.map +0 -1
  11. package/dist/_chunks/DragLayer-f07eee6c.js +0 -43
  12. package/dist/_chunks/DragLayer-f07eee6c.js.map +0 -1
  13. package/dist/_chunks/HomePage-0c7717c0.mjs +0 -49
  14. package/dist/_chunks/HomePage-0c7717c0.mjs.map +0 -1
  15. package/dist/_chunks/HomePage-175f79c7.js +0 -49
  16. package/dist/_chunks/HomePage-175f79c7.js.map +0 -1
  17. package/dist/_chunks/HomePage-246cc590.mjs +0 -542
  18. package/dist/_chunks/HomePage-246cc590.mjs.map +0 -1
  19. package/dist/_chunks/HomePage-6ff9e578.js +0 -563
  20. package/dist/_chunks/HomePage-6ff9e578.js.map +0 -1
  21. package/dist/_chunks/InstalledPluginsPage-170aff77.mjs +0 -134
  22. package/dist/_chunks/InstalledPluginsPage-170aff77.mjs.map +0 -1
  23. package/dist/_chunks/InstalledPluginsPage-3ae5dbb6.js +0 -153
  24. package/dist/_chunks/InstalledPluginsPage-3ae5dbb6.js.map +0 -1
  25. package/dist/_chunks/InternalErrorPage-040dc993.mjs +0 -41
  26. package/dist/_chunks/InternalErrorPage-040dc993.mjs.map +0 -1
  27. package/dist/_chunks/InternalErrorPage-d0e51ac2.js +0 -41
  28. package/dist/_chunks/InternalErrorPage-d0e51ac2.js.map +0 -1
  29. package/dist/_chunks/Layout-4b3e434a.js +0 -92
  30. package/dist/_chunks/Layout-4b3e434a.js.map +0 -1
  31. package/dist/_chunks/Layout-72fa2ace.mjs +0 -90
  32. package/dist/_chunks/Layout-72fa2ace.mjs.map +0 -1
  33. package/dist/_chunks/LimitsModal-203482b8.js +0 -84
  34. package/dist/_chunks/LimitsModal-203482b8.js.map +0 -1
  35. package/dist/_chunks/LimitsModal-da04700e.mjs +0 -82
  36. package/dist/_chunks/LimitsModal-da04700e.mjs.map +0 -1
  37. package/dist/_chunks/Login-576bbc11.js +0 -64
  38. package/dist/_chunks/Login-576bbc11.js.map +0 -1
  39. package/dist/_chunks/Login-d627bb0a.mjs +0 -62
  40. package/dist/_chunks/Login-d627bb0a.mjs.map +0 -1
  41. package/dist/_chunks/MarketplacePage-1cbfa8fd.mjs +0 -1011
  42. package/dist/_chunks/MarketplacePage-1cbfa8fd.mjs.map +0 -1
  43. package/dist/_chunks/MarketplacePage-e7cd973b.js +0 -1035
  44. package/dist/_chunks/MarketplacePage-e7cd973b.js.map +0 -1
  45. package/dist/_chunks/ProfilePage-52844daa.js +0 -665
  46. package/dist/_chunks/ProfilePage-52844daa.js.map +0 -1
  47. package/dist/_chunks/ProfilePage-ef400907.mjs +0 -642
  48. package/dist/_chunks/ProfilePage-ef400907.mjs.map +0 -1
  49. package/dist/_chunks/SSOProviders-62bfad92.mjs +0 -58
  50. package/dist/_chunks/SSOProviders-62bfad92.mjs.map +0 -1
  51. package/dist/_chunks/SSOProviders-b395a4e6.js +0 -59
  52. package/dist/_chunks/SSOProviders-b395a4e6.js.map +0 -1
  53. package/dist/_chunks/SalesPage-4a0a68fb.js +0 -51
  54. package/dist/_chunks/SalesPage-4a0a68fb.js.map +0 -1
  55. package/dist/_chunks/SalesPage-56bf9463.mjs +0 -48
  56. package/dist/_chunks/SalesPage-56bf9463.mjs.map +0 -1
  57. package/dist/_chunks/SalesPage-66f9ea32.js +0 -51
  58. package/dist/_chunks/SalesPage-66f9ea32.js.map +0 -1
  59. package/dist/_chunks/SalesPage-d0cdc1a7.js +0 -48
  60. package/dist/_chunks/SalesPage-d0cdc1a7.js.map +0 -1
  61. package/dist/_chunks/SalesPage-f9597ae7.mjs +0 -51
  62. package/dist/_chunks/SalesPage-f9597ae7.mjs.map +0 -1
  63. package/dist/_chunks/SalesPage-fceedf48.mjs +0 -51
  64. package/dist/_chunks/SalesPage-fceedf48.mjs.map +0 -1
  65. package/dist/_chunks/ar-21279f4c.js +0 -936
  66. package/dist/_chunks/ar-21279f4c.js.map +0 -1
  67. package/dist/_chunks/ar-62e5e2b3.mjs +0 -936
  68. package/dist/_chunks/ar-62e5e2b3.mjs.map +0 -1
  69. package/dist/_chunks/build-1026ce7c.mjs +0 -68
  70. package/dist/_chunks/build-1026ce7c.mjs.map +0 -1
  71. package/dist/_chunks/build-d99bcc06.js +0 -68
  72. package/dist/_chunks/build-d99bcc06.js.map +0 -1
  73. package/dist/_chunks/ca-d05fb350.js +0 -724
  74. package/dist/_chunks/ca-d05fb350.js.map +0 -1
  75. package/dist/_chunks/ca-e99de225.mjs +0 -724
  76. package/dist/_chunks/ca-e99de225.mjs.map +0 -1
  77. package/dist/_chunks/colors-c24a54f0.js +0 -33
  78. package/dist/_chunks/colors-c24a54f0.js.map +0 -1
  79. package/dist/_chunks/colors-e7489dd4.mjs +0 -34
  80. package/dist/_chunks/colors-e7489dd4.mjs.map +0 -1
  81. package/dist/_chunks/constants-2a8f4e41.mjs +0 -11
  82. package/dist/_chunks/constants-2a8f4e41.mjs.map +0 -1
  83. package/dist/_chunks/constants-40ffa931.js +0 -11
  84. package/dist/_chunks/constants-40ffa931.js.map +0 -1
  85. package/dist/_chunks/constants-4aca55b6.js +0 -85
  86. package/dist/_chunks/constants-4aca55b6.js.map +0 -1
  87. package/dist/_chunks/constants-64899732.js +0 -30
  88. package/dist/_chunks/constants-64899732.js.map +0 -1
  89. package/dist/_chunks/constants-6c68e9a0.js +0 -229
  90. package/dist/_chunks/constants-6c68e9a0.js.map +0 -1
  91. package/dist/_chunks/constants-6ecddc43.mjs +0 -111
  92. package/dist/_chunks/constants-6ecddc43.mjs.map +0 -1
  93. package/dist/_chunks/constants-74b8a935.mjs +0 -52
  94. package/dist/_chunks/constants-74b8a935.mjs.map +0 -1
  95. package/dist/_chunks/constants-7596f6f3.js +0 -132
  96. package/dist/_chunks/constants-7596f6f3.js.map +0 -1
  97. package/dist/_chunks/constants-8092eeb5.mjs +0 -59
  98. package/dist/_chunks/constants-8092eeb5.mjs.map +0 -1
  99. package/dist/_chunks/constants-85da8cc4.js +0 -58
  100. package/dist/_chunks/constants-85da8cc4.js.map +0 -1
  101. package/dist/_chunks/constants-a6fd64fc.mjs +0 -80
  102. package/dist/_chunks/constants-a6fd64fc.mjs.map +0 -1
  103. package/dist/_chunks/constants-a92ce583.mjs +0 -7
  104. package/dist/_chunks/constants-a92ce583.mjs.map +0 -1
  105. package/dist/_chunks/constants-ae0b83df.mjs +0 -227
  106. package/dist/_chunks/constants-ae0b83df.mjs.map +0 -1
  107. package/dist/_chunks/constants-c1f1f698.mjs +0 -85
  108. package/dist/_chunks/constants-c1f1f698.mjs.map +0 -1
  109. package/dist/_chunks/constants-d3dd8ed6.mjs +0 -7
  110. package/dist/_chunks/constants-d3dd8ed6.mjs.map +0 -1
  111. package/dist/_chunks/constants-d5d67ca8.js +0 -6
  112. package/dist/_chunks/constants-d5d67ca8.js.map +0 -1
  113. package/dist/_chunks/constants-da2542a3.js +0 -6
  114. package/dist/_chunks/constants-da2542a3.js.map +0 -1
  115. package/dist/_chunks/constants-ddd2d586.js +0 -82
  116. package/dist/_chunks/constants-ddd2d586.js.map +0 -1
  117. package/dist/_chunks/constants-def33545.mjs +0 -30
  118. package/dist/_chunks/constants-def33545.mjs.map +0 -1
  119. package/dist/_chunks/constants-e05f06d4.js +0 -52
  120. package/dist/_chunks/constants-e05f06d4.js.map +0 -1
  121. package/dist/_chunks/cs-2fa881a2.mjs +0 -291
  122. package/dist/_chunks/cs-2fa881a2.mjs.map +0 -1
  123. package/dist/_chunks/cs-eee75b10.js +0 -291
  124. package/dist/_chunks/cs-eee75b10.js.map +0 -1
  125. package/dist/_chunks/de-28f8bc28.mjs +0 -716
  126. package/dist/_chunks/de-28f8bc28.mjs.map +0 -1
  127. package/dist/_chunks/de-976cc986.js +0 -716
  128. package/dist/_chunks/de-976cc986.js.map +0 -1
  129. package/dist/_chunks/develop-72394876.mjs +0 -61
  130. package/dist/_chunks/develop-72394876.mjs.map +0 -1
  131. package/dist/_chunks/develop-da585b1e.js +0 -61
  132. package/dist/_chunks/develop-da585b1e.js.map +0 -1
  133. package/dist/_chunks/dk-0b759a56.mjs +0 -634
  134. package/dist/_chunks/dk-0b759a56.mjs.map +0 -1
  135. package/dist/_chunks/dk-6189917e.js +0 -634
  136. package/dist/_chunks/dk-6189917e.js.map +0 -1
  137. package/dist/_chunks/edit-29bdf5d6.js +0 -50
  138. package/dist/_chunks/edit-29bdf5d6.js.map +0 -1
  139. package/dist/_chunks/edit-923cefa0.mjs +0 -32
  140. package/dist/_chunks/edit-923cefa0.mjs.map +0 -1
  141. package/dist/_chunks/en-0e9e9327.js +0 -1022
  142. package/dist/_chunks/en-0e9e9327.js.map +0 -1
  143. package/dist/_chunks/en-e728accb.mjs +0 -1022
  144. package/dist/_chunks/en-e728accb.mjs.map +0 -1
  145. package/dist/_chunks/es-18b29db2.mjs +0 -796
  146. package/dist/_chunks/es-18b29db2.mjs.map +0 -1
  147. package/dist/_chunks/es-3ee0992a.js +0 -796
  148. package/dist/_chunks/es-3ee0992a.js.map +0 -1
  149. package/dist/_chunks/eu-8fd773c2.mjs +0 -832
  150. package/dist/_chunks/eu-8fd773c2.mjs.map +0 -1
  151. package/dist/_chunks/eu-be749f31.js +0 -832
  152. package/dist/_chunks/eu-be749f31.js.map +0 -1
  153. package/dist/_chunks/formatAPIErrors-b599cf27.js +0 -20
  154. package/dist/_chunks/formatAPIErrors-b599cf27.js.map +0 -1
  155. package/dist/_chunks/formatAPIErrors-db6ed675.mjs +0 -21
  156. package/dist/_chunks/formatAPIErrors-db6ed675.mjs.map +0 -1
  157. package/dist/_chunks/fr-29c84e1f.js +0 -762
  158. package/dist/_chunks/fr-29c84e1f.js.map +0 -1
  159. package/dist/_chunks/fr-f37df086.mjs +0 -762
  160. package/dist/_chunks/fr-f37df086.mjs.map +0 -1
  161. package/dist/_chunks/gu-377a4b46.js +0 -623
  162. package/dist/_chunks/gu-377a4b46.js.map +0 -1
  163. package/dist/_chunks/gu-69f0e13a.mjs +0 -623
  164. package/dist/_chunks/gu-69f0e13a.mjs.map +0 -1
  165. package/dist/_chunks/he-aec27352.js +0 -326
  166. package/dist/_chunks/he-aec27352.js.map +0 -1
  167. package/dist/_chunks/he-bd769d7e.mjs +0 -326
  168. package/dist/_chunks/he-bd769d7e.mjs.map +0 -1
  169. package/dist/_chunks/hi-1bdc7a46.js +0 -722
  170. package/dist/_chunks/hi-1bdc7a46.js.map +0 -1
  171. package/dist/_chunks/hi-d397a24b.mjs +0 -722
  172. package/dist/_chunks/hi-d397a24b.mjs.map +0 -1
  173. package/dist/_chunks/hu-e2c05f40.js +0 -832
  174. package/dist/_chunks/hu-e2c05f40.js.map +0 -1
  175. package/dist/_chunks/hu-eb88bd0c.mjs +0 -832
  176. package/dist/_chunks/hu-eb88bd0c.mjs.map +0 -1
  177. package/dist/_chunks/id-586df3a2.js +0 -448
  178. package/dist/_chunks/id-586df3a2.js.map +0 -1
  179. package/dist/_chunks/id-f47699e6.mjs +0 -448
  180. package/dist/_chunks/id-f47699e6.mjs.map +0 -1
  181. package/dist/_chunks/index-10a05917.mjs +0 -51
  182. package/dist/_chunks/index-10a05917.mjs.map +0 -1
  183. package/dist/_chunks/index-115d317b.mjs +0 -244
  184. package/dist/_chunks/index-115d317b.mjs.map +0 -1
  185. package/dist/_chunks/index-171715e4.js +0 -697
  186. package/dist/_chunks/index-171715e4.js.map +0 -1
  187. package/dist/_chunks/index-176cc121.mjs +0 -469
  188. package/dist/_chunks/index-176cc121.mjs.map +0 -1
  189. package/dist/_chunks/index-1bac5263.js +0 -338
  190. package/dist/_chunks/index-1bac5263.js.map +0 -1
  191. package/dist/_chunks/index-200c5a6a.js +0 -51
  192. package/dist/_chunks/index-200c5a6a.js.map +0 -1
  193. package/dist/_chunks/index-215b5421.mjs +0 -51
  194. package/dist/_chunks/index-215b5421.mjs.map +0 -1
  195. package/dist/_chunks/index-23401c29.js +0 -418
  196. package/dist/_chunks/index-23401c29.js.map +0 -1
  197. package/dist/_chunks/index-242c859c.js +0 -335
  198. package/dist/_chunks/index-242c859c.js.map +0 -1
  199. package/dist/_chunks/index-26fcb3ca.mjs +0 -1432
  200. package/dist/_chunks/index-26fcb3ca.mjs.map +0 -1
  201. package/dist/_chunks/index-28dd9303.mjs +0 -51
  202. package/dist/_chunks/index-28dd9303.mjs.map +0 -1
  203. package/dist/_chunks/index-296c14bf.mjs +0 -362
  204. package/dist/_chunks/index-296c14bf.mjs.map +0 -1
  205. package/dist/_chunks/index-2de06c32.js +0 -51
  206. package/dist/_chunks/index-2de06c32.js.map +0 -1
  207. package/dist/_chunks/index-2eb69b5d.mjs +0 -399
  208. package/dist/_chunks/index-2eb69b5d.mjs.map +0 -1
  209. package/dist/_chunks/index-2f61e3ae.js +0 -585
  210. package/dist/_chunks/index-2f61e3ae.js.map +0 -1
  211. package/dist/_chunks/index-308b73ba.mjs +0 -60
  212. package/dist/_chunks/index-308b73ba.mjs.map +0 -1
  213. package/dist/_chunks/index-34e41e15.js +0 -134
  214. package/dist/_chunks/index-34e41e15.js.map +0 -1
  215. package/dist/_chunks/index-38115cde.js +0 -66
  216. package/dist/_chunks/index-38115cde.js.map +0 -1
  217. package/dist/_chunks/index-383efae4.mjs +0 -55
  218. package/dist/_chunks/index-383efae4.mjs.map +0 -1
  219. package/dist/_chunks/index-3b426575.js +0 -47
  220. package/dist/_chunks/index-3b426575.js.map +0 -1
  221. package/dist/_chunks/index-47af1603.js +0 -253
  222. package/dist/_chunks/index-47af1603.js.map +0 -1
  223. package/dist/_chunks/index-49b7e6ff.mjs +0 -1266
  224. package/dist/_chunks/index-49b7e6ff.mjs.map +0 -1
  225. package/dist/_chunks/index-4d9b2cb9.js +0 -47
  226. package/dist/_chunks/index-4d9b2cb9.js.map +0 -1
  227. package/dist/_chunks/index-4de70b5d.js +0 -3404
  228. package/dist/_chunks/index-4de70b5d.js.map +0 -1
  229. package/dist/_chunks/index-59b1f604.js +0 -380
  230. package/dist/_chunks/index-59b1f604.js.map +0 -1
  231. package/dist/_chunks/index-5a5217e0.mjs +0 -308
  232. package/dist/_chunks/index-5a5217e0.mjs.map +0 -1
  233. package/dist/_chunks/index-5da07c41.js +0 -418
  234. package/dist/_chunks/index-5da07c41.js.map +0 -1
  235. package/dist/_chunks/index-600cb5dd.js +0 -51
  236. package/dist/_chunks/index-600cb5dd.js.map +0 -1
  237. package/dist/_chunks/index-608d8d10.mjs +0 -393
  238. package/dist/_chunks/index-608d8d10.mjs.map +0 -1
  239. package/dist/_chunks/index-74812118.mjs +0 -53
  240. package/dist/_chunks/index-74812118.mjs.map +0 -1
  241. package/dist/_chunks/index-7d578921.js +0 -847
  242. package/dist/_chunks/index-7d578921.js.map +0 -1
  243. package/dist/_chunks/index-8109fa91.mjs +0 -676
  244. package/dist/_chunks/index-8109fa91.mjs.map +0 -1
  245. package/dist/_chunks/index-82c7a120.js +0 -15401
  246. package/dist/_chunks/index-82c7a120.js.map +0 -1
  247. package/dist/_chunks/index-83d53962.js +0 -62
  248. package/dist/_chunks/index-83d53962.js.map +0 -1
  249. package/dist/_chunks/index-88298941.js +0 -54
  250. package/dist/_chunks/index-88298941.js.map +0 -1
  251. package/dist/_chunks/index-8933483b.mjs +0 -3374
  252. package/dist/_chunks/index-8933483b.mjs.map +0 -1
  253. package/dist/_chunks/index-91df57b1.mjs +0 -826
  254. package/dist/_chunks/index-91df57b1.mjs.map +0 -1
  255. package/dist/_chunks/index-973c363e.mjs +0 -63
  256. package/dist/_chunks/index-973c363e.mjs.map +0 -1
  257. package/dist/_chunks/index-989bbeec.mjs +0 -232
  258. package/dist/_chunks/index-989bbeec.mjs.map +0 -1
  259. package/dist/_chunks/index-9910dda4.js +0 -55
  260. package/dist/_chunks/index-9910dda4.js.map +0 -1
  261. package/dist/_chunks/index-9afb163a.js +0 -418
  262. package/dist/_chunks/index-9afb163a.js.map +0 -1
  263. package/dist/_chunks/index-9f61bef8.js +0 -51
  264. package/dist/_chunks/index-9f61bef8.js.map +0 -1
  265. package/dist/_chunks/index-ab31623a.mjs +0 -273
  266. package/dist/_chunks/index-ab31623a.mjs.map +0 -1
  267. package/dist/_chunks/index-ac85118a.mjs +0 -47
  268. package/dist/_chunks/index-ac85118a.mjs.map +0 -1
  269. package/dist/_chunks/index-ad8e55c0.mjs +0 -866
  270. package/dist/_chunks/index-ad8e55c0.mjs.map +0 -1
  271. package/dist/_chunks/index-aedeaf5a.js +0 -311
  272. package/dist/_chunks/index-aedeaf5a.js.map +0 -1
  273. package/dist/_chunks/index-bbac142a.js +0 -125
  274. package/dist/_chunks/index-bbac142a.js.map +0 -1
  275. package/dist/_chunks/index-bd18f803.mjs +0 -15320
  276. package/dist/_chunks/index-bd18f803.mjs.map +0 -1
  277. package/dist/_chunks/index-c8b8a2ee.mjs +0 -359
  278. package/dist/_chunks/index-c8b8a2ee.mjs.map +0 -1
  279. package/dist/_chunks/index-c97f5820.js +0 -1456
  280. package/dist/_chunks/index-c97f5820.js.map +0 -1
  281. package/dist/_chunks/index-cb6a72d2.mjs +0 -127
  282. package/dist/_chunks/index-cb6a72d2.mjs.map +0 -1
  283. package/dist/_chunks/index-cbc7c054.js +0 -266
  284. package/dist/_chunks/index-cbc7c054.js.map +0 -1
  285. package/dist/_chunks/index-ce5995cd.mjs +0 -132
  286. package/dist/_chunks/index-ce5995cd.mjs.map +0 -1
  287. package/dist/_chunks/index-d1152896.js +0 -294
  288. package/dist/_chunks/index-d1152896.js.map +0 -1
  289. package/dist/_chunks/index-d1dd825b.js +0 -365
  290. package/dist/_chunks/index-d1dd825b.js.map +0 -1
  291. package/dist/_chunks/index-d2d9df41.mjs +0 -270
  292. package/dist/_chunks/index-d2d9df41.mjs.map +0 -1
  293. package/dist/_chunks/index-d3e1fd86.js +0 -490
  294. package/dist/_chunks/index-d3e1fd86.js.map +0 -1
  295. package/dist/_chunks/index-d4517ac4.mjs +0 -582
  296. package/dist/_chunks/index-d4517ac4.mjs.map +0 -1
  297. package/dist/_chunks/index-d49fa655.js +0 -873
  298. package/dist/_chunks/index-d49fa655.js.map +0 -1
  299. package/dist/_chunks/index-d6694cab.mjs +0 -125
  300. package/dist/_chunks/index-d6694cab.mjs.map +0 -1
  301. package/dist/_chunks/index-e117c643.mjs +0 -55
  302. package/dist/_chunks/index-e117c643.mjs.map +0 -1
  303. package/dist/_chunks/index-e1b90981.mjs +0 -314
  304. package/dist/_chunks/index-e1b90981.mjs.map +0 -1
  305. package/dist/_chunks/index-e24df0bf.js +0 -403
  306. package/dist/_chunks/index-e24df0bf.js.map +0 -1
  307. package/dist/_chunks/index-e2d2f58e.mjs +0 -47
  308. package/dist/_chunks/index-e2d2f58e.mjs.map +0 -1
  309. package/dist/_chunks/index-e369d741.mjs +0 -383
  310. package/dist/_chunks/index-e369d741.mjs.map +0 -1
  311. package/dist/_chunks/index-e79b2b9e.mjs +0 -338
  312. package/dist/_chunks/index-e79b2b9e.mjs.map +0 -1
  313. package/dist/_chunks/index-ea18ff22.mjs +0 -51
  314. package/dist/_chunks/index-ea18ff22.mjs.map +0 -1
  315. package/dist/_chunks/index-eb67694f.mjs +0 -261
  316. package/dist/_chunks/index-eb67694f.mjs.map +0 -1
  317. package/dist/_chunks/index-ed3696ec.js +0 -272
  318. package/dist/_chunks/index-ed3696ec.js.map +0 -1
  319. package/dist/_chunks/index-ee1ea38b.js +0 -129
  320. package/dist/_chunks/index-ee1ea38b.js.map +0 -1
  321. package/dist/_chunks/index-efc967f5.js +0 -55
  322. package/dist/_chunks/index-efc967f5.js.map +0 -1
  323. package/dist/_chunks/index-fc700e52.js +0 -263
  324. package/dist/_chunks/index-fc700e52.js.map +0 -1
  325. package/dist/_chunks/index-fd4e5616.mjs +0 -412
  326. package/dist/_chunks/index-fd4e5616.mjs.map +0 -1
  327. package/dist/_chunks/index-ffd2f664.js +0 -1337
  328. package/dist/_chunks/index-ffd2f664.js.map +0 -1
  329. package/dist/_chunks/it-4006227c.mjs +0 -459
  330. package/dist/_chunks/it-4006227c.mjs.map +0 -1
  331. package/dist/_chunks/it-9c4295f1.js +0 -459
  332. package/dist/_chunks/it-9c4295f1.js.map +0 -1
  333. package/dist/_chunks/ja-db43ca3d.mjs +0 -633
  334. package/dist/_chunks/ja-db43ca3d.mjs.map +0 -1
  335. package/dist/_chunks/ja-eb74520f.js +0 -633
  336. package/dist/_chunks/ja-eb74520f.js.map +0 -1
  337. package/dist/_chunks/ko-18e71df4.js +0 -631
  338. package/dist/_chunks/ko-18e71df4.js.map +0 -1
  339. package/dist/_chunks/ko-a7826e25.mjs +0 -631
  340. package/dist/_chunks/ko-a7826e25.mjs.map +0 -1
  341. package/dist/_chunks/ml-90131768.mjs +0 -722
  342. package/dist/_chunks/ml-90131768.mjs.map +0 -1
  343. package/dist/_chunks/ml-c5199364.js +0 -722
  344. package/dist/_chunks/ml-c5199364.js.map +0 -1
  345. package/dist/_chunks/ms-bc514df6.js +0 -342
  346. package/dist/_chunks/ms-bc514df6.js.map +0 -1
  347. package/dist/_chunks/ms-f4f16a83.mjs +0 -342
  348. package/dist/_chunks/ms-f4f16a83.mjs.map +0 -1
  349. package/dist/_chunks/nl-887ce2c3.mjs +0 -828
  350. package/dist/_chunks/nl-887ce2c3.mjs.map +0 -1
  351. package/dist/_chunks/nl-f1aedbe2.js +0 -828
  352. package/dist/_chunks/nl-f1aedbe2.js.map +0 -1
  353. package/dist/_chunks/no-ec6c2927.js +0 -310
  354. package/dist/_chunks/no-ec6c2927.js.map +0 -1
  355. package/dist/_chunks/no-f0b02541.mjs +0 -310
  356. package/dist/_chunks/no-f0b02541.mjs.map +0 -1
  357. package/dist/_chunks/pl-9be86414.js +0 -721
  358. package/dist/_chunks/pl-9be86414.js.map +0 -1
  359. package/dist/_chunks/pl-9ccd35d9.mjs +0 -721
  360. package/dist/_chunks/pl-9ccd35d9.mjs.map +0 -1
  361. package/dist/_chunks/pt-4fcc08f1.js +0 -296
  362. package/dist/_chunks/pt-4fcc08f1.js.map +0 -1
  363. package/dist/_chunks/pt-8acb6ac1.mjs +0 -296
  364. package/dist/_chunks/pt-8acb6ac1.mjs.map +0 -1
  365. package/dist/_chunks/pt-BR-d43239e3.js +0 -794
  366. package/dist/_chunks/pt-BR-d43239e3.js.map +0 -1
  367. package/dist/_chunks/pt-BR-fd73cb13.mjs +0 -794
  368. package/dist/_chunks/pt-BR-fd73cb13.mjs.map +0 -1
  369. package/dist/_chunks/ru-9aad40c5.mjs +0 -993
  370. package/dist/_chunks/ru-9aad40c5.mjs.map +0 -1
  371. package/dist/_chunks/ru-c0293425.js +0 -993
  372. package/dist/_chunks/ru-c0293425.js.map +0 -1
  373. package/dist/_chunks/sa-6bf4c20e.mjs +0 -722
  374. package/dist/_chunks/sa-6bf4c20e.mjs.map +0 -1
  375. package/dist/_chunks/sa-8ffb7ca7.js +0 -722
  376. package/dist/_chunks/sa-8ffb7ca7.js.map +0 -1
  377. package/dist/_chunks/schema-260fec28.js +0 -514
  378. package/dist/_chunks/schema-260fec28.js.map +0 -1
  379. package/dist/_chunks/schema-6bd8bd85.mjs +0 -490
  380. package/dist/_chunks/schema-6bd8bd85.mjs.map +0 -1
  381. package/dist/_chunks/sk-58d31b17.mjs +0 -690
  382. package/dist/_chunks/sk-58d31b17.mjs.map +0 -1
  383. package/dist/_chunks/sk-a9308737.js +0 -690
  384. package/dist/_chunks/sk-a9308737.js.map +0 -1
  385. package/dist/_chunks/sv-0f5ffd1e.js +0 -827
  386. package/dist/_chunks/sv-0f5ffd1e.js.map +0 -1
  387. package/dist/_chunks/sv-d80ad633.mjs +0 -827
  388. package/dist/_chunks/sv-d80ad633.mjs.map +0 -1
  389. package/dist/_chunks/th-a53bbf7a.js +0 -430
  390. package/dist/_chunks/th-a53bbf7a.js.map +0 -1
  391. package/dist/_chunks/th-e72c6a22.mjs +0 -430
  392. package/dist/_chunks/th-e72c6a22.mjs.map +0 -1
  393. package/dist/_chunks/tr-b84a68b0.js +0 -785
  394. package/dist/_chunks/tr-b84a68b0.js.map +0 -1
  395. package/dist/_chunks/tr-e35ecfe8.mjs +0 -785
  396. package/dist/_chunks/tr-e35ecfe8.mjs.map +0 -1
  397. package/dist/_chunks/uk-de367ec1.mjs +0 -343
  398. package/dist/_chunks/uk-de367ec1.mjs.map +0 -1
  399. package/dist/_chunks/uk-e5226227.js +0 -343
  400. package/dist/_chunks/uk-e5226227.js.map +0 -1
  401. package/dist/_chunks/useAdminRolePermissions-603a2709.mjs +0 -2322
  402. package/dist/_chunks/useAdminRolePermissions-603a2709.mjs.map +0 -1
  403. package/dist/_chunks/useAdminRolePermissions-cb1a3ee2.js +0 -2337
  404. package/dist/_chunks/useAdminRolePermissions-cb1a3ee2.js.map +0 -1
  405. package/dist/_chunks/useAdminRoles-68d5d608.js +0 -62
  406. package/dist/_chunks/useAdminRoles-68d5d608.js.map +0 -1
  407. package/dist/_chunks/useAdminRoles-7ab5d521.mjs +0 -44
  408. package/dist/_chunks/useAdminRoles-7ab5d521.mjs.map +0 -1
  409. package/dist/_chunks/useAdminUsers-05d6b26a.js +0 -61
  410. package/dist/_chunks/useAdminUsers-05d6b26a.js.map +0 -1
  411. package/dist/_chunks/useAdminUsers-09f86a58.mjs +0 -43
  412. package/dist/_chunks/useAdminUsers-09f86a58.mjs.map +0 -1
  413. package/dist/_chunks/useContentTypes-53b449bb.mjs +0 -67
  414. package/dist/_chunks/useContentTypes-53b449bb.mjs.map +0 -1
  415. package/dist/_chunks/useContentTypes-7da293cc.js +0 -85
  416. package/dist/_chunks/useContentTypes-7da293cc.js.map +0 -1
  417. package/dist/_chunks/useDebounce-4712871e.js +0 -35
  418. package/dist/_chunks/useDebounce-4712871e.js.map +0 -1
  419. package/dist/_chunks/useDebounce-9364f340.mjs +0 -17
  420. package/dist/_chunks/useDebounce-9364f340.mjs.map +0 -1
  421. package/dist/_chunks/useLicenseLimitNotification-1fd756fa.mjs +0 -80
  422. package/dist/_chunks/useLicenseLimitNotification-1fd756fa.mjs.map +0 -1
  423. package/dist/_chunks/useLicenseLimitNotification-8a4d7fc1.js +0 -100
  424. package/dist/_chunks/useLicenseLimitNotification-8a4d7fc1.js.map +0 -1
  425. package/dist/_chunks/useLicenseLimits-13a102d3.mjs +0 -31
  426. package/dist/_chunks/useLicenseLimits-13a102d3.mjs.map +0 -1
  427. package/dist/_chunks/useLicenseLimits-81ef3cce.js +0 -49
  428. package/dist/_chunks/useLicenseLimits-81ef3cce.js.map +0 -1
  429. package/dist/_chunks/useReviewWorkflows-799e0305.js +0 -59
  430. package/dist/_chunks/useReviewWorkflows-799e0305.js.map +0 -1
  431. package/dist/_chunks/useReviewWorkflows-9e6b8986.mjs +0 -41
  432. package/dist/_chunks/useReviewWorkflows-9e6b8986.mjs.map +0 -1
  433. package/dist/_chunks/validateWorkflow-5693ea2d.js +0 -1124
  434. package/dist/_chunks/validateWorkflow-5693ea2d.js.map +0 -1
  435. package/dist/_chunks/validateWorkflow-7a2b6ab8.mjs +0 -1101
  436. package/dist/_chunks/validateWorkflow-7a2b6ab8.mjs.map +0 -1
  437. package/dist/_chunks/vi-096bccbb.mjs +0 -298
  438. package/dist/_chunks/vi-096bccbb.mjs.map +0 -1
  439. package/dist/_chunks/vi-c5fabb75.js +0 -298
  440. package/dist/_chunks/vi-c5fabb75.js.map +0 -1
  441. package/dist/_chunks/zh-24f618cb.js +0 -836
  442. package/dist/_chunks/zh-24f618cb.js.map +0 -1
  443. package/dist/_chunks/zh-Hans-35d2c374.js +0 -957
  444. package/dist/_chunks/zh-Hans-35d2c374.js.map +0 -1
  445. package/dist/_chunks/zh-Hans-ccf4be4b.mjs +0 -957
  446. package/dist/_chunks/zh-Hans-ccf4be4b.mjs.map +0 -1
  447. package/dist/_chunks/zh-ba29b2e1.mjs +0 -836
  448. package/dist/_chunks/zh-ba29b2e1.mjs.map +0 -1
  449. package/dist/admin/index.js +0 -34
  450. package/dist/admin/index.js.map +0 -1
  451. package/dist/admin/index.mjs +0 -34
  452. package/dist/admin/index.mjs.map +0 -1
  453. package/dist/admin/src/App.d.ts +0 -6
  454. package/dist/admin/src/StrapiApp.d.ts +0 -140
  455. package/dist/admin/src/components/AuthenticatedApp.d.ts +0 -2
  456. package/dist/admin/src/components/ConfigurationProvider.d.ts +0 -11
  457. package/dist/admin/src/components/DefaultDocument.d.ts +0 -5
  458. package/dist/admin/src/components/DragLayer.d.ts +0 -10
  459. package/dist/admin/src/components/GuidedTour/Homepage.d.ts +0 -2
  460. package/dist/admin/src/components/GuidedTour/Modal.d.ts +0 -2
  461. package/dist/admin/src/components/GuidedTour/Ornaments.d.ts +0 -13
  462. package/dist/admin/src/components/GuidedTour/Provider.d.ts +0 -6
  463. package/dist/admin/src/components/GuidedTour/constants.d.ts +0 -165
  464. package/dist/admin/src/components/LanguageProvider.d.ts +0 -19
  465. package/dist/admin/src/components/LeftMenu.d.ts +0 -5
  466. package/dist/admin/src/components/NoJavascript.d.ts +0 -7
  467. package/dist/admin/src/components/NpsSurvey.d.ts +0 -17
  468. package/dist/admin/src/components/Onboarding.d.ts +0 -2
  469. package/dist/admin/src/components/PluginsInitializer.d.ts +0 -5
  470. package/dist/admin/src/components/PrivateRoute.d.ts +0 -8
  471. package/dist/admin/src/components/Providers.d.ts +0 -13
  472. package/dist/admin/src/components/RBACProvider.d.ts +0 -27
  473. package/dist/admin/src/components/Theme.d.ts +0 -6
  474. package/dist/admin/src/components/ThemeToggleProvider.d.ts +0 -12
  475. package/dist/admin/src/components/UnauthenticatedLogo.d.ts +0 -2
  476. package/dist/admin/src/constants.d.ts +0 -195
  477. package/dist/admin/src/content-manager/components/BlocksInput/BlocksContent.d.ts +0 -5
  478. package/dist/admin/src/content-manager/components/BlocksInput/BlocksEditor.d.ts +0 -34
  479. package/dist/admin/src/content-manager/components/BlocksInput/BlocksInput.d.ts +0 -18
  480. package/dist/admin/src/content-manager/components/BlocksInput/BlocksToolbar.d.ts +0 -2
  481. package/dist/admin/src/content-manager/components/BlocksInput/hooks/useBlocksStore.d.ts +0 -32
  482. package/dist/admin/src/content-manager/components/BlocksInput/hooks/useModifiersStore.d.ts +0 -20
  483. package/dist/admin/src/content-manager/components/BlocksInput/plugins/withLinks.d.ts +0 -8
  484. package/dist/admin/src/content-manager/components/BlocksInput/plugins/withStrapiSchema.d.ts +0 -8
  485. package/dist/admin/src/content-manager/components/BlocksInput/tests/mock-schema.d.ts +0 -2
  486. package/dist/admin/src/content-manager/components/BlocksInput/utils/links.d.ts +0 -10
  487. package/dist/admin/src/content-manager/components/BlocksInput/utils/types.d.ts +0 -6
  488. package/dist/admin/src/contexts/admin.d.ts +0 -14
  489. package/dist/admin/src/contexts/apiTokenPermissions.d.ts +0 -36
  490. package/dist/admin/src/contexts/configuration.d.ts +0 -27
  491. package/dist/admin/src/contexts/themeToggle.d.ts +0 -22
  492. package/dist/admin/src/core/apis/Components.d.ts +0 -10
  493. package/dist/admin/src/core/apis/CustomFields.d.ts +0 -8
  494. package/dist/admin/src/core/apis/Fields.d.ts +0 -10
  495. package/dist/admin/src/core/apis/Middlewares.d.ts +0 -9
  496. package/dist/admin/src/core/apis/Plugin.d.ts +0 -19
  497. package/dist/admin/src/core/apis/Reducers.d.ts +0 -10
  498. package/dist/admin/src/core/store/configure.d.ts +0 -29
  499. package/dist/admin/src/core/store/hooks.d.ts +0 -37
  500. package/dist/admin/src/core/utils/basename.d.ts +0 -1
  501. package/dist/admin/src/core/utils/createHook.d.ts +0 -10
  502. package/dist/admin/src/hooks/__mocks__/useAdminUsers.d.ts +0 -2
  503. package/dist/admin/src/hooks/__mocks__/useContentTypes.d.ts +0 -2
  504. package/dist/admin/src/hooks/__mocks__/useSettingsMenu.d.ts +0 -2
  505. package/dist/admin/src/hooks/useAdminRoles.d.ts +0 -13
  506. package/dist/admin/src/hooks/useAdminUsers.d.ts +0 -19
  507. package/dist/admin/src/hooks/useContentTypes.d.ts +0 -7
  508. package/dist/admin/src/hooks/useDebounce.d.ts +0 -1
  509. package/dist/admin/src/hooks/useEnterprise.d.ts +0 -8
  510. package/dist/admin/src/hooks/useInjectReducer.d.ts +0 -10
  511. package/dist/admin/src/hooks/useLicenseLimitNotification.d.ts +0 -1
  512. package/dist/admin/src/hooks/useMenu.d.ts +0 -9
  513. package/dist/admin/src/hooks/useSettingsMenu.d.ts +0 -24
  514. package/dist/admin/src/index.d.ts +0 -3
  515. package/dist/admin/src/layouts/AppLayout.d.ts +0 -7
  516. package/dist/admin/src/layouts/UnauthenticatedLayout.d.ts +0 -11
  517. package/dist/admin/src/pages/Admin.d.ts +0 -7
  518. package/dist/admin/src/pages/Auth/AuthPage.d.ts +0 -6
  519. package/dist/admin/src/pages/Auth/components/FieldActionWrapper.d.ts +0 -3
  520. package/dist/admin/src/pages/Auth/components/ForgotPassword.d.ts +0 -3
  521. package/dist/admin/src/pages/Auth/components/ForgotPasswordSuccess.d.ts +0 -2
  522. package/dist/admin/src/pages/Auth/components/Login.d.ts +0 -8
  523. package/dist/admin/src/pages/Auth/components/Oops.d.ts +0 -2
  524. package/dist/admin/src/pages/Auth/components/Register.d.ts +0 -7
  525. package/dist/admin/src/pages/Auth/components/ResetPassword.d.ts +0 -3
  526. package/dist/admin/src/pages/Auth/constants.d.ts +0 -14
  527. package/dist/admin/src/pages/HomePage.d.ts +0 -3
  528. package/dist/admin/src/pages/InstalledPluginsPage.d.ts +0 -3
  529. package/dist/admin/src/pages/InternalErrorPage.d.ts +0 -7
  530. package/dist/admin/src/pages/Marketplace/MarketplacePage.d.ts +0 -19
  531. package/dist/admin/src/pages/Marketplace/components/NpmPackageCard.d.ts +0 -13
  532. package/dist/admin/src/pages/Marketplace/components/NpmPackagesFilters.d.ts +0 -13
  533. package/dist/admin/src/pages/Marketplace/components/NpmPackagesGrid.d.ts +0 -13
  534. package/dist/admin/src/pages/Marketplace/components/OfflineLayout.d.ts +0 -2
  535. package/dist/admin/src/pages/Marketplace/components/PageHeader.d.ts +0 -8
  536. package/dist/admin/src/pages/Marketplace/components/SortSelect.d.ts +0 -51
  537. package/dist/admin/src/pages/Marketplace/hooks/__mocks__/useNavigatorOnline.d.ts +0 -1
  538. package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +0 -92
  539. package/dist/admin/src/pages/Marketplace/hooks/useNavigatorOnline.d.ts +0 -5
  540. package/dist/admin/src/pages/NotFoundPage.d.ts +0 -1
  541. package/dist/admin/src/pages/ProfilePage.d.ts +0 -2
  542. package/dist/admin/src/pages/SettingsPage/hooks/useRegenerate.d.ts +0 -4
  543. package/dist/admin/src/pages/SettingsPage/pages/Roles/EditPage/hooks/usePermissionsDataManager.d.ts +0 -24
  544. package/dist/admin/src/pages/SettingsPage/pages/Roles/hooks/__mocks__/useAdminRolePermissions.d.ts +0 -2
  545. package/dist/admin/src/pages/SettingsPage/pages/Roles/hooks/useAdminRolePermissions.d.ts +0 -11
  546. package/dist/admin/src/pages/SettingsPage/utils/makeUniqueRoutes.d.ts +0 -6
  547. package/dist/admin/src/pages/UseCasePage.d.ts +0 -8
  548. package/dist/admin/src/reducer.d.ts +0 -21
  549. package/dist/admin/src/render.d.ts +0 -10
  550. package/dist/admin/src/selectors.d.ts +0 -21
  551. package/dist/admin/src/shared/components/InjectionZone.d.ts +0 -53
  552. package/dist/admin/src/shared/hooks/__mocks__/useInjectionZone.d.ts +0 -1
  553. package/dist/admin/src/shared/hooks/useInjectionZone.d.ts +0 -2
  554. package/dist/admin/src/translations/languageNativeNames.d.ts +0 -36
  555. package/dist/admin/src/types/permissions.d.ts +0 -17
  556. package/dist/admin/src/utils/createRoute.d.ts +0 -6
  557. package/dist/admin/src/utils/formatAPIErrors.d.ts +0 -6
  558. package/dist/admin/src/utils/getFullName.d.ts +0 -1
  559. package/dist/admin/src/utils/hashAdminUserEmail.d.ts +0 -6
  560. package/dist/cli.js +0 -48
  561. package/dist/cli.js.map +0 -1
  562. package/dist/cli.mjs +0 -48
  563. package/dist/cli.mjs.map +0 -1
  564. package/dist/ee/admin/src/constants.d.ts +0 -55
  565. package/dist/ee/admin/src/hooks/useLicenseLimitNotification.d.ts +0 -1
  566. package/dist/ee/admin/src/pages/AuthPage/components/Login.d.ts +0 -3
  567. package/dist/ee/admin/src/pages/AuthPage/components/Providers.d.ts +0 -2
  568. package/dist/ee/admin/src/pages/AuthPage/components/SSOProviders.d.ts +0 -8
  569. package/dist/ee/admin/src/pages/AuthPage/constants.d.ts +0 -3
  570. package/dist/ee/admin/src/pages/AuthResponse.d.ts +0 -2
  571. package/dist/ee/admin/src/pages/HomePage.d.ts +0 -1
  572. package/dist/shared/contracts/admin.d.ts +0 -23
  573. package/dist/shared/contracts/authentication.d.ts +0 -126
  574. package/dist/shared/contracts/providers.d.ts +0 -34
  575. package/dist/shared/contracts/roles.d.ts +0 -52
  576. package/dist/shared/contracts/shared.d.ts +0 -39
  577. package/dist/shared/contracts/user.d.ts +0 -40
  578. package/dist/shared/contracts/users.d.ts +0 -52
  579. package/dist/shared/schema.d.ts +0 -7
  580. package/ee/server/bootstrap.js +0 -41
  581. package/ee/server/config/admin-actions.js +0 -72
  582. package/ee/server/constants/default-stages.json +0 -18
  583. package/ee/server/constants/default-workflow.json +0 -3
  584. package/ee/server/constants/webhookEvents.js +0 -5
  585. package/ee/server/constants/workflows.js +0 -33
  586. package/ee/server/content-types/index.js +0 -9
  587. package/ee/server/content-types/workflow/index.js +0 -41
  588. package/ee/server/content-types/workflow-stage/index.js +0 -51
  589. package/ee/server/controllers/__tests__/stages.test.js +0 -174
  590. package/ee/server/controllers/admin.js +0 -50
  591. package/ee/server/controllers/audit-logs.js +0 -24
  592. package/ee/server/controllers/authentication/constants.js +0 -11
  593. package/ee/server/controllers/authentication/index.js +0 -11
  594. package/ee/server/controllers/authentication/middlewares.js +0 -117
  595. package/ee/server/controllers/authentication/utils.js +0 -23
  596. package/ee/server/controllers/authentication.js +0 -64
  597. package/ee/server/controllers/index.js +0 -12
  598. package/ee/server/controllers/role.js +0 -64
  599. package/ee/server/controllers/user.js +0 -110
  600. package/ee/server/controllers/workflows/assignees/index.js +0 -44
  601. package/ee/server/controllers/workflows/index.js +0 -188
  602. package/ee/server/controllers/workflows/stages/index.js +0 -189
  603. package/ee/server/destroy.js +0 -12
  604. package/ee/server/index.js +0 -11
  605. package/ee/server/middlewares/__tests__/review-workflows.test.js +0 -40
  606. package/ee/server/middlewares/review-workflows.js +0 -40
  607. package/ee/server/migrations/audit-logs-table.js +0 -45
  608. package/ee/server/migrations/review-workflows-content-types.js +0 -29
  609. package/ee/server/migrations/review-workflows-deleted-ct-in-workflows.js +0 -39
  610. package/ee/server/migrations/review-workflows-stage-attribute.js +0 -49
  611. package/ee/server/migrations/review-workflows-stages-color.js +0 -20
  612. package/ee/server/migrations/review-workflows-stages-roles.js +0 -68
  613. package/ee/server/migrations/review-workflows-workflow-name.js +0 -28
  614. package/ee/server/register.js +0 -40
  615. package/ee/server/routes/audit-logs.js +0 -43
  616. package/ee/server/routes/index.js +0 -8
  617. package/ee/server/routes/license-limit.js +0 -29
  618. package/ee/server/routes/review-workflows.js +0 -164
  619. package/ee/server/routes/sso.js +0 -69
  620. package/ee/server/routes/utils.js +0 -15
  621. package/ee/server/services/__tests__/assignees.test.js +0 -76
  622. package/ee/server/services/__tests__/audit-logs.test.js +0 -300
  623. package/ee/server/services/__tests__/passport.test.js +0 -95
  624. package/ee/server/services/__tests__/review-workflows-validation.test.js +0 -100
  625. package/ee/server/services/__tests__/review-workflows.test.js +0 -163
  626. package/ee/server/services/__tests__/sso.test.js +0 -117
  627. package/ee/server/services/__tests__/stages.test.js +0 -275
  628. package/ee/server/services/__tests__/workflows.test.js +0 -203
  629. package/ee/server/services/audit-logs.js +0 -236
  630. package/ee/server/services/auth.js +0 -75
  631. package/ee/server/services/index.js +0 -18
  632. package/ee/server/services/passport/provider-registry.js +0 -27
  633. package/ee/server/services/passport/sso.js +0 -37
  634. package/ee/server/services/passport.js +0 -46
  635. package/ee/server/services/review-workflows/__tests__/entity-service-decorator.test.js +0 -211
  636. package/ee/server/services/review-workflows/assignees.js +0 -54
  637. package/ee/server/services/review-workflows/entity-service-decorator.js +0 -101
  638. package/ee/server/services/review-workflows/metrics/__tests__/weekly-metrics.test.js +0 -65
  639. package/ee/server/services/review-workflows/metrics/index.js +0 -56
  640. package/ee/server/services/review-workflows/metrics/weekly-metrics.js +0 -76
  641. package/ee/server/services/review-workflows/review-workflows.js +0 -133
  642. package/ee/server/services/review-workflows/stage-permissions.js +0 -60
  643. package/ee/server/services/review-workflows/stages.js +0 -384
  644. package/ee/server/services/review-workflows/validation.js +0 -68
  645. package/ee/server/services/review-workflows/workflows/__tests__/content-types.test.js +0 -146
  646. package/ee/server/services/review-workflows/workflows/content-types.js +0 -89
  647. package/ee/server/services/review-workflows/workflows/index.js +0 -237
  648. package/ee/server/services/role.js +0 -24
  649. package/ee/server/services/seat-enforcement.js +0 -114
  650. package/ee/server/services/user.js +0 -234
  651. package/ee/server/utils/__tests__/persisted-tables.test.js +0 -38
  652. package/ee/server/utils/__tests__/sso-lock.test.js +0 -84
  653. package/ee/server/utils/index.js +0 -8
  654. package/ee/server/utils/persisted-tables.js +0 -139
  655. package/ee/server/utils/review-workflows.js +0 -39
  656. package/ee/server/utils/sso-lock.js +0 -42
  657. package/ee/server/validation/audit-logs.js +0 -18
  658. package/ee/server/validation/authentication.js +0 -36
  659. package/ee/server/validation/review-workflows.js +0 -92
  660. package/ee/server/validation/role.js +0 -68
  661. package/ee/server/validation/user.js +0 -27
  662. package/ee/strapi-server.js +0 -3
  663. package/server/bootstrap.js +0 -101
  664. package/server/config/admin-actions.js +0 -216
  665. package/server/config/admin-conditions.js +0 -26
  666. package/server/config/email-templates/forgot-password.js +0 -25
  667. package/server/config/index.js +0 -9
  668. package/server/config/settings.js +0 -9
  669. package/server/content-types/Permission.js +0 -64
  670. package/server/content-types/Role.js +0 -59
  671. package/server/content-types/User.js +0 -112
  672. package/server/content-types/api-token-permission.js +0 -36
  673. package/server/content-types/api-token.js +0 -76
  674. package/server/content-types/index.js +0 -11
  675. package/server/content-types/transfer-token-permission.js +0 -36
  676. package/server/content-types/transfer-token.js +0 -66
  677. package/server/controllers/__tests__/admin.test.js +0 -106
  678. package/server/controllers/__tests__/api-token.test.js +0 -496
  679. package/server/controllers/__tests__/content-api.test.js +0 -173
  680. package/server/controllers/__tests__/permission.test.js +0 -200
  681. package/server/controllers/__tests__/role.test.js +0 -201
  682. package/server/controllers/__tests__/transfer/token.test.js +0 -520
  683. package/server/controllers/__tests__/user.test.js +0 -326
  684. package/server/controllers/admin.js +0 -151
  685. package/server/controllers/api-token.js +0 -135
  686. package/server/controllers/authenticated-user.js +0 -52
  687. package/server/controllers/authentication.js +0 -172
  688. package/server/controllers/content-api.js +0 -15
  689. package/server/controllers/formatters/conditions.js +0 -12
  690. package/server/controllers/formatters/format-actions-by-sections.js +0 -40
  691. package/server/controllers/formatters/index.js +0 -9
  692. package/server/controllers/index.js +0 -14
  693. package/server/controllers/permission.js +0 -45
  694. package/server/controllers/role.js +0 -198
  695. package/server/controllers/transfer/index.js +0 -13
  696. package/server/controllers/transfer/runner.js +0 -28
  697. package/server/controllers/transfer/token.js +0 -131
  698. package/server/controllers/user.js +0 -141
  699. package/server/controllers/webhooks.js +0 -132
  700. package/server/destroy.js +0 -10
  701. package/server/domain/action/__tests__/action-domain.test.js +0 -230
  702. package/server/domain/action/__tests__/action-provider.test.js +0 -376
  703. package/server/domain/action/index.js +0 -142
  704. package/server/domain/action/provider.js +0 -83
  705. package/server/domain/condition/__tests__/condition-domain.test.js +0 -122
  706. package/server/domain/condition/__tests__/condition-provider.test.js +0 -156
  707. package/server/domain/condition/index.js +0 -92
  708. package/server/domain/condition/provider.js +0 -42
  709. package/server/domain/permission/__tests__/permission-domain.test.js +0 -285
  710. package/server/domain/permission/index.js +0 -156
  711. package/server/domain/user.js +0 -28
  712. package/server/index.js +0 -26
  713. package/server/middlewares/data-transfer.js +0 -29
  714. package/server/middlewares/index.js +0 -8
  715. package/server/middlewares/rateLimit.js +0 -47
  716. package/server/policies/hasPermissions.js +0 -38
  717. package/server/policies/index.js +0 -7
  718. package/server/policies/isAuthenticatedAdmin.js +0 -5
  719. package/server/policies/isTelemetryEnabled.js +0 -16
  720. package/server/register.js +0 -19
  721. package/server/routes/admin.js +0 -71
  722. package/server/routes/api-tokens.js +0 -70
  723. package/server/routes/authentication.js +0 -57
  724. package/server/routes/content-api.js +0 -20
  725. package/server/routes/index.js +0 -28
  726. package/server/routes/permissions.js +0 -20
  727. package/server/routes/roles.js +0 -107
  728. package/server/routes/serve-admin-panel.js +0 -71
  729. package/server/routes/transfer.js +0 -102
  730. package/server/routes/users.js +0 -88
  731. package/server/routes/webhooks.js +0 -81
  732. package/server/services/__tests__/action.test.js +0 -98
  733. package/server/services/__tests__/api-token.test.js +0 -980
  734. package/server/services/__tests__/auth.test.js +0 -319
  735. package/server/services/__tests__/content-type.test.js +0 -405
  736. package/server/services/__tests__/metrics.test.js +0 -65
  737. package/server/services/__tests__/passport.test.js +0 -90
  738. package/server/services/__tests__/permission.test.js +0 -177
  739. package/server/services/__tests__/permissions-manager-sanitize.test.js +0 -117
  740. package/server/services/__tests__/permissions-manager-validate.test.js +0 -119
  741. package/server/services/__tests__/permissions-manager.test.js +0 -318
  742. package/server/services/__tests__/permissions.section-builder.section.test.js +0 -136
  743. package/server/services/__tests__/project-settings.test.js +0 -397
  744. package/server/services/__tests__/role.test.js +0 -970
  745. package/server/services/__tests__/token.test.js +0 -217
  746. package/server/services/__tests__/transfer/token.test.js +0 -878
  747. package/server/services/__tests__/user.test.js +0 -786
  748. package/server/services/action.js +0 -35
  749. package/server/services/api-token.js +0 -453
  750. package/server/services/auth.js +0 -117
  751. package/server/services/condition.js +0 -14
  752. package/server/services/constants.js +0 -37
  753. package/server/services/content-type.js +0 -208
  754. package/server/services/index.js +0 -18
  755. package/server/services/metrics.js +0 -44
  756. package/server/services/passport/local-strategy.js +0 -28
  757. package/server/services/passport.js +0 -45
  758. package/server/services/permission/engine.js +0 -85
  759. package/server/services/permission/permissions-manager/index.js +0 -53
  760. package/server/services/permission/permissions-manager/query-builders.js +0 -72
  761. package/server/services/permission/permissions-manager/sanitize.js +0 -286
  762. package/server/services/permission/permissions-manager/validate.js +0 -218
  763. package/server/services/permission/queries.js +0 -190
  764. package/server/services/permission/sections-builder/builder.js +0 -84
  765. package/server/services/permission/sections-builder/handlers.js +0 -156
  766. package/server/services/permission/sections-builder/index.js +0 -50
  767. package/server/services/permission/sections-builder/section.js +0 -71
  768. package/server/services/permission/sections-builder/utils.js +0 -26
  769. package/server/services/permission.js +0 -33
  770. package/server/services/project-settings.js +0 -174
  771. package/server/services/role.js +0 -471
  772. package/server/services/token.js +0 -70
  773. package/server/services/transfer/index.js +0 -7
  774. package/server/services/transfer/permission.js +0 -22
  775. package/server/services/transfer/token.js +0 -449
  776. package/server/services/transfer/utils.js +0 -38
  777. package/server/services/user.js +0 -363
  778. package/server/strategies/__tests__/admin.test.js +0 -118
  779. package/server/strategies/__tests__/api-token.test.js +0 -364
  780. package/server/strategies/admin.js +0 -52
  781. package/server/strategies/api-token.js +0 -140
  782. package/server/strategies/data-transfer.js +0 -113
  783. package/server/strategies/index.js +0 -26
  784. package/server/utils/index.d.ts +0 -25
  785. package/server/utils/index.js +0 -9
  786. package/server/validation/__tests__/common-functions.test.js +0 -54
  787. package/server/validation/action-provider.js +0 -67
  788. package/server/validation/api-tokens.js +0 -32
  789. package/server/validation/authentication/forgot-password.js +0 -14
  790. package/server/validation/authentication/index.js +0 -19
  791. package/server/validation/authentication/register.js +0 -45
  792. package/server/validation/authentication/renew-token.js +0 -7
  793. package/server/validation/authentication/reset-password.js +0 -15
  794. package/server/validation/common-functions/check-fields-are-correctly-nested.js +0 -28
  795. package/server/validation/common-functions/check-fields-dont-have-duplicates.js +0 -17
  796. package/server/validation/common-functions/index.js +0 -9
  797. package/server/validation/common-validators.js +0 -209
  798. package/server/validation/permission.js +0 -53
  799. package/server/validation/policies/hasPermissions.js +0 -27
  800. package/server/validation/project-settings.js +0 -48
  801. package/server/validation/role.js +0 -59
  802. package/server/validation/transfer/index.js +0 -5
  803. package/server/validation/transfer/token.js +0 -42
  804. package/server/validation/user.js +0 -65
@@ -1,1456 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const React = require("react");
5
- const designSystem = require("@strapi/design-system");
6
- const helperPlugin = require("@strapi/helper-plugin");
7
- const reactHelmet = require("react-helmet");
8
- const reactIntl = require("react-intl");
9
- const reactRouterDom = require("react-router-dom");
10
- const index = require("./index-4de70b5d.js");
11
- const sortBy = require("lodash/sortBy");
12
- const reactRedux = require("react-redux");
13
- const AuthenticatedApp = require("./AuthenticatedApp-342bf22f.js");
14
- const v2 = require("@strapi/design-system/v2");
15
- const Icons = require("@strapi/icons");
16
- const PropTypes = require("prop-types");
17
- const styled = require("styled-components");
18
- const reactQuery = require("react-query");
19
- const produce = require("immer");
20
- const merge = require("lodash/merge");
21
- require("react-dom/client");
22
- require("invariant");
23
- require("lodash/isFunction");
24
- require("lodash/pick");
25
- require("@radix-ui/react-context");
26
- require("formik");
27
- require("lodash/camelCase");
28
- require("yup");
29
- require("lodash/defaultsDeep");
30
- require("lodash/omit");
31
- require("qs");
32
- require("lodash/get");
33
- require("lodash/set");
34
- require("@reduxjs/toolkit");
35
- require("semver/functions/lt");
36
- require("semver/functions/valid");
37
- require("react-dnd");
38
- require("react-dnd-html5-backend");
39
- require("lodash/cloneDeep");
40
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
41
- function _interopNamespace(e) {
42
- if (e && e.__esModule)
43
- return e;
44
- const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
45
- if (e) {
46
- for (const k in e) {
47
- if (k !== "default") {
48
- const d = Object.getOwnPropertyDescriptor(e, k);
49
- Object.defineProperty(n, k, d.get ? d : {
50
- enumerable: true,
51
- get: () => e[k]
52
- });
53
- }
54
- }
55
- }
56
- n.default = e;
57
- return Object.freeze(n);
58
- }
59
- const React__namespace = /* @__PURE__ */ _interopNamespace(React);
60
- const sortBy__default = /* @__PURE__ */ _interopDefault(sortBy);
61
- const PropTypes__default = /* @__PURE__ */ _interopDefault(PropTypes);
62
- const styled__default = /* @__PURE__ */ _interopDefault(styled);
63
- const produce__default = /* @__PURE__ */ _interopDefault(produce);
64
- const merge__default = /* @__PURE__ */ _interopDefault(merge);
65
- const formatLinks = (menu) => menu.map((menuSection) => {
66
- const formattedLinks = menuSection.links.map((link) => ({
67
- ...link,
68
- isDisplayed: false
69
- }));
70
- return { ...menuSection, links: formattedLinks };
71
- });
72
- const useSettingsMenu = () => {
73
- const [{ isLoading, menu }, setData] = React__namespace.useState({
74
- isLoading: true,
75
- menu: []
76
- });
77
- const { allPermissions: userPermissions } = helperPlugin.useRBACProvider();
78
- const { shouldUpdateStrapi } = helperPlugin.useAppInfo();
79
- const { settings } = helperPlugin.useStrapiApp();
80
- const permissions = reactRedux.useSelector(AuthenticatedApp.selectAdminPermissions);
81
- const ceLinks = React__namespace.useMemo(() => index.SETTINGS_LINKS_CE(), []);
82
- const { admin: adminLinks, global: globalLinks } = index.useEnterprise(
83
- ceLinks,
84
- async () => (await Promise.resolve().then(() => require("./constants-7596f6f3.js"))).SETTINGS_LINKS_EE(),
85
- {
86
- combine(ceLinks2, eeLinks) {
87
- return {
88
- admin: [...eeLinks.admin, ...ceLinks2.admin],
89
- global: [...ceLinks2.global, ...eeLinks.global]
90
- };
91
- },
92
- defaultValue: {
93
- admin: [],
94
- global: []
95
- }
96
- }
97
- );
98
- const addPermissions = React__namespace.useCallback(
99
- (link) => {
100
- if (!link.id) {
101
- throw new Error("The settings menu item must have an id attribute.");
102
- }
103
- return {
104
- ...link,
105
- permissions: permissions.settings?.[link.id]?.main ?? []
106
- };
107
- },
108
- [permissions.settings]
109
- );
110
- React__namespace.useEffect(() => {
111
- const getData = async () => {
112
- const buildMenuPermissions = (sections2) => Promise.all(
113
- sections2.reduce((acc, section, sectionIndex) => {
114
- const linksWithPermissions = section.links.map(async (link, linkIndex) => ({
115
- hasPermission: await helperPlugin.hasPermissions(userPermissions, link.permissions),
116
- sectionIndex,
117
- linkIndex
118
- }));
119
- return [...acc, ...linksWithPermissions];
120
- }, [])
121
- );
122
- const menuPermissions = await buildMenuPermissions(sections);
123
- setData((prev) => {
124
- return {
125
- ...prev,
126
- isLoading: false,
127
- menu: sections.map((section, sectionIndex) => ({
128
- ...section,
129
- links: section.links.map((link, linkIndex) => {
130
- const permission = menuPermissions.find(
131
- (permission2) => permission2.sectionIndex === sectionIndex && permission2.linkIndex === linkIndex
132
- );
133
- return {
134
- ...link,
135
- isDisplayed: Boolean(permission?.hasPermission)
136
- };
137
- })
138
- }))
139
- };
140
- });
141
- };
142
- const { global, ...otherSections } = settings;
143
- const sections = formatLinks([
144
- {
145
- ...global,
146
- links: sortBy__default.default([...global.links, ...globalLinks.map(addPermissions)], (link) => link.id).map(
147
- (link) => ({
148
- ...link,
149
- hasNotification: link.id === "000-application-infos" && shouldUpdateStrapi
150
- })
151
- )
152
- },
153
- {
154
- id: "permissions",
155
- intlLabel: { id: "Settings.permissions", defaultMessage: "Administration Panel" },
156
- links: adminLinks.map(addPermissions)
157
- },
158
- ...Object.values(otherSections)
159
- ]);
160
- getData();
161
- }, [adminLinks, globalLinks, userPermissions, settings, shouldUpdateStrapi, addPermissions]);
162
- return {
163
- isLoading,
164
- menu: menu.map((menuItem) => ({
165
- ...menuItem,
166
- links: menuItem.links.filter((link) => link.isDisplayed)
167
- }))
168
- };
169
- };
170
- const CustomIcon = styled__default.default(designSystem.Icon)`
171
- right: 15px;
172
- position: absolute;
173
- `;
174
- const SettingsNav = ({ menu }) => {
175
- const { formatMessage } = reactIntl.useIntl();
176
- const { trackUsage } = helperPlugin.useTracking();
177
- const { pathname } = reactRouterDom.useLocation();
178
- const filteredMenu = menu.filter(
179
- (section) => !section.links.every((link) => link.isDisplayed === false)
180
- );
181
- const sections = filteredMenu.map((section) => {
182
- return {
183
- ...section,
184
- title: section.intlLabel,
185
- links: section.links.map((link) => {
186
- return {
187
- ...link,
188
- title: link.intlLabel,
189
- name: link.id
190
- };
191
- })
192
- };
193
- });
194
- const label = formatMessage({
195
- id: "global.settings",
196
- defaultMessage: "Settings"
197
- });
198
- const handleClickOnLink = (destination = null) => {
199
- trackUsage("willNavigate", { from: pathname, to: destination });
200
- };
201
- return /* @__PURE__ */ jsxRuntime.jsxs(v2.SubNav, { ariaLabel: label, children: [
202
- /* @__PURE__ */ jsxRuntime.jsx(v2.SubNavHeader, { label }),
203
- /* @__PURE__ */ jsxRuntime.jsx(v2.SubNavSections, { children: sections.map((section) => /* @__PURE__ */ jsxRuntime.jsx(v2.SubNavSection, { label: formatMessage(section.intlLabel), children: section.links.map((link) => {
204
- return /* @__PURE__ */ jsxRuntime.jsxs(
205
- v2.SubNavLink,
206
- {
207
- as: reactRouterDom.NavLink,
208
- withBullet: link.hasNotification,
209
- to: link.to,
210
- onClick: () => handleClickOnLink(link.to),
211
- children: [
212
- formatMessage(link.intlLabel),
213
- link?.lockIcon && /* @__PURE__ */ jsxRuntime.jsx(CustomIcon, { width: `${15 / 16}rem`, height: `${15 / 16}rem`, as: Icons.Lock })
214
- ]
215
- },
216
- link.id
217
- );
218
- }) }, section.id)) })
219
- ] });
220
- };
221
- SettingsNav.propTypes = {
222
- menu: PropTypes__default.default.array.isRequired
223
- };
224
- const ROUTES_CE = [
225
- {
226
- async Component() {
227
- const component = await Promise.resolve().then(() => require("./index-d1dd825b.js"));
228
- return component;
229
- },
230
- to: "/settings/roles",
231
- exact: true
232
- },
233
- {
234
- async Component() {
235
- const component = await Promise.resolve().then(() => require("./index-cbc7c054.js"));
236
- return component;
237
- },
238
- to: "/settings/roles/duplicate/:id",
239
- exact: true
240
- },
241
- {
242
- async Component() {
243
- const component = await Promise.resolve().then(() => require("./index-cbc7c054.js"));
244
- return component;
245
- },
246
- to: "/settings/roles/new",
247
- exact: true
248
- },
249
- {
250
- async Component() {
251
- const component = await Promise.resolve().then(() => require("./index-d1152896.js"));
252
- return component;
253
- },
254
- to: "/settings/roles/:id",
255
- exact: true
256
- },
257
- {
258
- async Component() {
259
- const component = await Promise.resolve().then(() => require("./index-171715e4.js")).then((n) => n.index);
260
- return component;
261
- },
262
- to: "/settings/users",
263
- exact: true
264
- },
265
- {
266
- async Component() {
267
- const component = await Promise.resolve().then(() => require("./index-23401c29.js"));
268
- return component;
269
- },
270
- to: "/settings/users/:id",
271
- exact: true
272
- },
273
- {
274
- async Component() {
275
- const component = await Promise.resolve().then(() => require("./index-4d9b2cb9.js"));
276
- return component;
277
- },
278
- to: "/settings/webhooks/create",
279
- exact: true
280
- },
281
- {
282
- async Component() {
283
- const component = await Promise.resolve().then(() => require("./index-3b426575.js"));
284
- return component;
285
- },
286
- to: "/settings/webhooks/:id",
287
- exact: true
288
- },
289
- {
290
- async Component() {
291
- const component = await Promise.resolve().then(() => require("./index-1bac5263.js"));
292
- return component;
293
- },
294
- to: "/settings/webhooks",
295
- exact: true
296
- },
297
- {
298
- async Component() {
299
- const component = await Promise.resolve().then(() => require("./index-47af1603.js"));
300
- return component;
301
- },
302
- to: "/settings/api-tokens",
303
- exact: true
304
- },
305
- {
306
- async Component() {
307
- const component = await Promise.resolve().then(() => require("./index-efc967f5.js"));
308
- return component;
309
- },
310
- to: "/settings/api-tokens/create",
311
- exact: true
312
- },
313
- {
314
- async Component() {
315
- const component = await Promise.resolve().then(() => require("./index-9910dda4.js"));
316
- return component;
317
- },
318
- to: "/settings/api-tokens/:id",
319
- exact: true
320
- },
321
- {
322
- async Component() {
323
- const component = await Promise.resolve().then(() => require("./index-9f61bef8.js"));
324
- return component;
325
- },
326
- to: "/settings/transfer-tokens/create",
327
- exact: true
328
- },
329
- {
330
- async Component() {
331
- const component = await Promise.resolve().then(() => require("./index-ed3696ec.js"));
332
- return component;
333
- },
334
- to: "/settings/transfer-tokens",
335
- exact: true
336
- },
337
- {
338
- async Component() {
339
- const component = await Promise.resolve().then(() => require("./index-2de06c32.js"));
340
- return component;
341
- },
342
- to: "/settings/transfer-tokens/:id",
343
- exact: true
344
- },
345
- {
346
- async Component() {
347
- const component = await Promise.resolve().then(() => require("./SalesPage-d0cdc1a7.js"));
348
- return component;
349
- },
350
- to: "/settings/purchase-audit-logs",
351
- exact: true
352
- },
353
- {
354
- async Component() {
355
- const component = await Promise.resolve().then(() => require("./SalesPage-4a0a68fb.js"));
356
- return component;
357
- },
358
- to: "/settings/purchase-review-workflows",
359
- exact: true
360
- },
361
- {
362
- async Component() {
363
- const component = await Promise.resolve().then(() => require("./SalesPage-66f9ea32.js"));
364
- return component;
365
- },
366
- to: "/settings/purchase-single-sign-on",
367
- exact: true
368
- }
369
- ];
370
- const DIMENSION = 750;
371
- const SIZE = 100;
372
- const ACCEPTED_FORMAT = ["image/jpeg", "image/png", "image/svg+xml"];
373
- const initialState$2 = {
374
- localImage: void 0
375
- };
376
- const reducer$2 = (state = initialState$2, action) => produce__default.default(state, (draftState) => {
377
- switch (action.type) {
378
- case "SET_LOCAL_IMAGE": {
379
- draftState.localImage = action.value;
380
- break;
381
- }
382
- default: {
383
- return draftState;
384
- }
385
- }
386
- });
387
- const LogoModalStepper = ({
388
- onChangeLogo,
389
- customLogo,
390
- goTo,
391
- Component,
392
- modalTitle,
393
- next,
394
- prev,
395
- currentStep
396
- }) => {
397
- const [{ localImage }, dispatch] = React.useReducer(reducer$2, initialState$2);
398
- const { formatMessage } = reactIntl.useIntl();
399
- const setLocalImage = (asset) => {
400
- dispatch({
401
- type: "SET_LOCAL_IMAGE",
402
- value: asset
403
- });
404
- };
405
- const handleCloseModal = () => {
406
- goTo(null);
407
- };
408
- if (!currentStep) {
409
- return null;
410
- }
411
- return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.ModalLayout, { labelledBy: "modal", onClose: handleCloseModal, children: [
412
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.ModalHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { fontWeight: "bold", as: "h2", id: "modal", children: formatMessage(modalTitle) }) }),
413
- /* @__PURE__ */ jsxRuntime.jsx(
414
- Component,
415
- {
416
- setLocalImage,
417
- goTo,
418
- next,
419
- prev,
420
- onClose: handleCloseModal,
421
- asset: localImage || customLogo,
422
- onChangeLogo
423
- }
424
- )
425
- ] });
426
- };
427
- LogoModalStepper.defaultProps = {
428
- Component: void 0,
429
- currentStep: void 0,
430
- customLogo: void 0,
431
- modalTitle: void 0,
432
- next: null,
433
- prev: null
434
- };
435
- LogoModalStepper.propTypes = {
436
- Component: PropTypes__default.default.elementType,
437
- currentStep: PropTypes__default.default.string,
438
- customLogo: PropTypes__default.default.shape({
439
- name: PropTypes__default.default.string,
440
- url: PropTypes__default.default.string,
441
- width: PropTypes__default.default.number,
442
- height: PropTypes__default.default.number,
443
- ext: PropTypes__default.default.string
444
- }),
445
- goTo: PropTypes__default.default.func.isRequired,
446
- modalTitle: PropTypes__default.default.shape({
447
- id: PropTypes__default.default.string,
448
- defaultMessage: PropTypes__default.default.string
449
- }),
450
- next: PropTypes__default.default.string,
451
- onChangeLogo: PropTypes__default.default.func.isRequired,
452
- prev: PropTypes__default.default.string
453
- };
454
- const initialState$1 = {
455
- currentStep: void 0
456
- };
457
- const reducer$1 = (state = initialState$1, action) => produce__default.default(state, (draftState) => {
458
- switch (action.type) {
459
- case "GO_TO": {
460
- draftState.currentStep = action.to;
461
- break;
462
- }
463
- default: {
464
- return draftState;
465
- }
466
- }
467
- });
468
- const FILE_FORMAT_ERROR_MESSAGE = {
469
- id: "Settings.application.customization.modal.upload.error-format",
470
- defaultMessage: "Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."
471
- };
472
- const FILE_SIZING_ERROR_MESSAGE = {
473
- id: "Settings.application.customization.modal.upload.error-size",
474
- defaultMessage: "The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)"
475
- };
476
- const getFileDimensions = (file) => {
477
- return new Promise((resolve) => {
478
- const reader = new FileReader();
479
- reader.onload = () => {
480
- const img = new Image();
481
- img.onload = function() {
482
- resolve({ width: img.width, height: img.height });
483
- };
484
- img.src = reader.result;
485
- };
486
- reader.readAsDataURL(file);
487
- });
488
- };
489
- const rawFileToAsset = (rawFile, fileDimensions) => {
490
- return {
491
- ext: rawFile.name.split(".").pop(),
492
- size: rawFile.size / 1e3,
493
- name: rawFile.name,
494
- url: URL.createObjectURL(rawFile),
495
- rawFile,
496
- width: fileDimensions.width,
497
- height: fileDimensions.height
498
- };
499
- };
500
- const parseFileMetadatas = async (file) => {
501
- let error;
502
- const isFormatAuthorized = ACCEPTED_FORMAT.includes(file.type);
503
- if (!isFormatAuthorized) {
504
- error = new Error("File format");
505
- error.displayMessage = FILE_FORMAT_ERROR_MESSAGE;
506
- throw error;
507
- }
508
- const fileDimensions = await getFileDimensions(file);
509
- const areDimensionsAuthorized = fileDimensions.width <= DIMENSION && fileDimensions.height <= DIMENSION;
510
- if (!areDimensionsAuthorized) {
511
- error = new Error("File sizing");
512
- error.displayMessage = FILE_SIZING_ERROR_MESSAGE;
513
- throw error;
514
- }
515
- const asset = rawFileToAsset(file, fileDimensions);
516
- const isSizeAuthorized = asset.size <= SIZE;
517
- if (!isSizeAuthorized) {
518
- error = new Error("File sizing");
519
- error.displayMessage = FILE_SIZING_ERROR_MESSAGE;
520
- throw error;
521
- }
522
- return asset;
523
- };
524
- const FileInput = styled__default.default(designSystem.FieldInput)`
525
- opacity: 0;
526
- position: absolute;
527
- top: 0;
528
- bottom: 0;
529
- left: 0;
530
- right: 0;
531
- z-index: 1;
532
- `;
533
- const FromComputerForm = ({ setLocalImage, goTo, next, onClose }) => {
534
- const { formatMessage } = reactIntl.useIntl();
535
- const [dragOver, setDragOver] = React.useState(false);
536
- const [fileError, setFileError] = React.useState(void 0);
537
- const inputRef = React.useRef(null);
538
- const handleDragEnter = () => setDragOver(true);
539
- const handleDragLeave = () => setDragOver(false);
540
- const handleClick = (e) => {
541
- e.preventDefault();
542
- inputRef.current.click();
543
- };
544
- const handleChange = async () => {
545
- handleDragLeave();
546
- const file = inputRef.current.files[0];
547
- if (!file) {
548
- return;
549
- }
550
- try {
551
- const asset = await parseFileMetadatas(file);
552
- setLocalImage(asset);
553
- goTo(next);
554
- } catch (err) {
555
- if (err.displayMessage) {
556
- setFileError(formatMessage(err.displayMessage, { size: SIZE, dimension: DIMENSION }));
557
- inputRef.current.focus();
558
- } else {
559
- throw err;
560
- }
561
- }
562
- };
563
- const getBorderColor = () => {
564
- if (dragOver) {
565
- return "primary500";
566
- }
567
- if (fileError) {
568
- return "danger600";
569
- }
570
- return "neutral300";
571
- };
572
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
573
- /* @__PURE__ */ jsxRuntime.jsx("form", { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingLeft: 8, paddingRight: 8, paddingTop: 6, paddingBottom: 6, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Field, { name: "logo-upload", error: fileError, children: /* @__PURE__ */ jsxRuntime.jsx("label", { htmlFor: "logo-upload", children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { direction: "column", alignItems: "stretch", gap: 2, children: [
574
- /* @__PURE__ */ jsxRuntime.jsxs(
575
- designSystem.Flex,
576
- {
577
- paddingTop: 9,
578
- paddingBottom: 7,
579
- hasRadius: true,
580
- justifyContent: "center",
581
- direction: "column",
582
- background: dragOver ? "primary100" : "neutral100",
583
- borderColor: getBorderColor(),
584
- borderStyle: "dashed",
585
- borderWidth: "1px",
586
- position: "relative",
587
- onDragEnter: handleDragEnter,
588
- onDragLeave: handleDragLeave,
589
- children: [
590
- /* @__PURE__ */ jsxRuntime.jsx(
591
- designSystem.Icon,
592
- {
593
- color: "primary600",
594
- width: `${60 / 16}rem`,
595
- height: `${60 / 16}rem`,
596
- as: Icons.PicturePlus,
597
- "aria-hidden": true
598
- }
599
- ),
600
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingTop: 3, paddingBottom: 5, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "delta", as: "span", children: formatMessage({
601
- id: "Settings.application.customization.modal.upload.drag-drop",
602
- defaultMessage: "Drag and Drop here or"
603
- }) }) }),
604
- /* @__PURE__ */ jsxRuntime.jsx(
605
- FileInput,
606
- {
607
- accept: ACCEPTED_FORMAT,
608
- cursor: "pointer",
609
- as: "input",
610
- type: "file",
611
- name: "files",
612
- tabIndex: -1,
613
- zIndex: 1,
614
- onChange: handleChange,
615
- ref: inputRef,
616
- id: "logo-upload"
617
- }
618
- ),
619
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { type: "button", onClick: handleClick, children: formatMessage({
620
- id: "Settings.application.customization.modal.upload.cta.browse",
621
- defaultMessage: "Browse files"
622
- }) }),
623
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingTop: 6, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "pi", textColor: "neutral600", children: formatMessage(
624
- {
625
- id: "Settings.application.customization.modal.upload.file-validation",
626
- defaultMessage: "Max dimension: {dimension}x{dimension}, Max size: {size}KB"
627
- },
628
- { size: SIZE, dimension: DIMENSION }
629
- ) }) })
630
- ]
631
- }
632
- ),
633
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.FieldError, {})
634
- ] }) }) }) }) }),
635
- /* @__PURE__ */ jsxRuntime.jsx(
636
- designSystem.ModalFooter,
637
- {
638
- startActions: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { onClick: onClose, variant: "tertiary", children: formatMessage({
639
- id: "Settings.application.customization.modal.cancel",
640
- defaultMessage: "Cancel"
641
- }) })
642
- }
643
- )
644
- ] });
645
- };
646
- FromComputerForm.defaultProps = {
647
- next: null
648
- };
649
- FromComputerForm.propTypes = {
650
- goTo: PropTypes__default.default.func.isRequired,
651
- next: PropTypes__default.default.string,
652
- onClose: PropTypes__default.default.func.isRequired,
653
- setLocalImage: PropTypes__default.default.func.isRequired
654
- };
655
- const urlToFile = async (url) => {
656
- try {
657
- const { get } = helperPlugin.getFetchClient();
658
- const res = await get(url, { responseType: "blob", timeout: 8e3 });
659
- const loadedFile = new File([res.data], res.config.url, {
660
- type: res.headers["content-type"]
661
- });
662
- return loadedFile;
663
- } catch (err) {
664
- err.displayMessage = {
665
- id: "Settings.application.customization.modal.upload.error-network",
666
- defaultMessage: "Network error"
667
- };
668
- throw err;
669
- }
670
- };
671
- const FromUrlForm = ({ goTo, next, onClose, setLocalImage }) => {
672
- const { formatMessage } = reactIntl.useIntl();
673
- const [logoUrl, setLogoUrl] = React.useState("");
674
- const [error, setError] = React.useState(null);
675
- const handleChange = (e) => {
676
- setLogoUrl(e.target.value);
677
- };
678
- const handleSubmit = async () => {
679
- try {
680
- const file = await urlToFile(logoUrl);
681
- const asset = await parseFileMetadatas(file);
682
- setLocalImage(asset);
683
- goTo(next);
684
- } catch (err) {
685
- if (err.displayMessage) {
686
- setError(formatMessage(err.displayMessage, { size: SIZE, dimension: DIMENSION }));
687
- } else {
688
- throw err;
689
- }
690
- }
691
- };
692
- return /* @__PURE__ */ jsxRuntime.jsxs(
693
- "form",
694
- {
695
- onSubmit: (e) => {
696
- e.preventDefault();
697
- handleSubmit();
698
- },
699
- children: [
700
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingLeft: 8, paddingRight: 8, paddingTop: 6, paddingBottom: 6, children: /* @__PURE__ */ jsxRuntime.jsx(
701
- designSystem.TextInput,
702
- {
703
- label: formatMessage({
704
- id: "Settings.application.customization.modal.upload.from-url.input-label",
705
- defaultMessage: "URL"
706
- }),
707
- error,
708
- onChange: handleChange,
709
- value: logoUrl,
710
- name: "logo-url"
711
- }
712
- ) }),
713
- /* @__PURE__ */ jsxRuntime.jsx(
714
- designSystem.ModalFooter,
715
- {
716
- startActions: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { onClick: onClose, variant: "tertiary", children: formatMessage({ id: "app.components.Button.cancel", defaultMessage: "Cancel" }) }),
717
- endActions: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { type: "submit", children: formatMessage({
718
- id: "Settings.application.customization.modal.upload.next",
719
- defaultMessage: "Next"
720
- }) })
721
- }
722
- )
723
- ]
724
- }
725
- );
726
- };
727
- FromUrlForm.defaultProps = {
728
- next: null
729
- };
730
- FromUrlForm.propTypes = {
731
- goTo: PropTypes__default.default.func.isRequired,
732
- next: PropTypes__default.default.string,
733
- onClose: PropTypes__default.default.func.isRequired,
734
- setLocalImage: PropTypes__default.default.func.isRequired
735
- };
736
- const AddLogoDialog = ({ setLocalImage, goTo, next, onClose }) => {
737
- const { formatMessage } = reactIntl.useIntl();
738
- return /* @__PURE__ */ jsxRuntime.jsxs(
739
- designSystem.TabGroup,
740
- {
741
- label: formatMessage({
742
- id: "Settings.application.customization.modal.tab.label",
743
- defaultMessage: "How do you want to upload your assets?"
744
- }),
745
- variant: "simple",
746
- children: [
747
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Box, { paddingLeft: 8, paddingRight: 8, children: [
748
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Tabs, { children: [
749
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tab, { children: formatMessage({
750
- id: "Settings.application.customization.modal.upload.from-computer",
751
- defaultMessage: "From computer"
752
- }) }),
753
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tab, { children: formatMessage({
754
- id: "Settings.application.customization.modal.upload.from-url",
755
- defaultMessage: "From url"
756
- }) })
757
- ] }),
758
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Divider, {})
759
- ] }),
760
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.TabPanels, { children: [
761
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.TabPanel, { children: /* @__PURE__ */ jsxRuntime.jsx(
762
- FromComputerForm,
763
- {
764
- onClose,
765
- setLocalImage,
766
- goTo,
767
- next
768
- }
769
- ) }),
770
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.TabPanel, { children: /* @__PURE__ */ jsxRuntime.jsx(FromUrlForm, { onClose, setLocalImage, goTo, next }) })
771
- ] })
772
- ]
773
- }
774
- );
775
- };
776
- AddLogoDialog.defaultProps = {
777
- next: null
778
- };
779
- AddLogoDialog.propTypes = {
780
- goTo: PropTypes__default.default.func.isRequired,
781
- next: PropTypes__default.default.string,
782
- onClose: PropTypes__default.default.func.isRequired,
783
- setLocalImage: PropTypes__default.default.func.isRequired
784
- };
785
- const ImageCardAsset = ({ asset }) => {
786
- const { formatMessage } = reactIntl.useIntl();
787
- return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Card, { children: [
788
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.CardHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.CardAsset, { size: "S", src: asset.url }) }),
789
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.CardBody, { children: [
790
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.CardContent, { children: [
791
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.CardTitle, { children: asset.name }),
792
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.CardSubtitle, { children: `${asset.ext.toUpperCase()} - ${asset.width}✕${asset.height}` })
793
- ] }),
794
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.CardBadge, { children: formatMessage({
795
- id: "Settings.application.customization.modal.pending.card-badge",
796
- defaultMessage: "image"
797
- }) })
798
- ] })
799
- ] });
800
- };
801
- ImageCardAsset.propTypes = {
802
- asset: PropTypes__default.default.shape({
803
- name: PropTypes__default.default.string,
804
- url: PropTypes__default.default.string,
805
- width: PropTypes__default.default.number,
806
- height: PropTypes__default.default.number,
807
- ext: PropTypes__default.default.string
808
- }).isRequired
809
- };
810
- const PendingLogoDialog = ({ onClose, asset, prev, next, goTo, setLocalImage, onChangeLogo }) => {
811
- const { formatMessage } = reactIntl.useIntl();
812
- const handleGoBack = () => {
813
- setLocalImage(void 0);
814
- goTo(prev);
815
- };
816
- const handleUpload = () => {
817
- onChangeLogo(asset);
818
- goTo(next);
819
- };
820
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
821
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Box, { paddingLeft: 8, paddingRight: 8, paddingTop: 6, paddingBottom: 6, children: [
822
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { justifyContent: "space-between", paddingBottom: 6, children: [
823
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { direction: "column", alignItems: "flex-start", children: [
824
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "pi", fontWeight: "bold", children: formatMessage({
825
- id: "Settings.application.customization.modal.pending.title",
826
- defaultMessage: "Logo ready to upload"
827
- }) }),
828
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "pi", textColor: "neutral500", children: formatMessage({
829
- id: "Settings.application.customization.modal.pending.subtitle",
830
- defaultMessage: "Manage the chosen logo before uploading it"
831
- }) })
832
- ] }),
833
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { onClick: handleGoBack, variant: "secondary", children: formatMessage({
834
- id: "Settings.application.customization.modal.pending.choose-another",
835
- defaultMessage: "Choose another logo"
836
- }) })
837
- ] }),
838
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { maxWidth: helperPlugin.pxToRem(180), children: asset.url ? /* @__PURE__ */ jsxRuntime.jsx(ImageCardAsset, { asset }) : null })
839
- ] }),
840
- /* @__PURE__ */ jsxRuntime.jsx(
841
- designSystem.ModalFooter,
842
- {
843
- startActions: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { onClick: onClose, variant: "tertiary", children: formatMessage({
844
- id: "Settings.application.customization.modal.cancel",
845
- defaultMessage: "Cancel"
846
- }) }),
847
- endActions: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { onClick: handleUpload, children: formatMessage({
848
- id: "Settings.application.customization.modal.pending.upload",
849
- defaultMessage: "Upload logo"
850
- }) })
851
- }
852
- )
853
- ] });
854
- };
855
- PendingLogoDialog.defaultProps = {
856
- next: null,
857
- prev: null
858
- };
859
- PendingLogoDialog.propTypes = {
860
- goTo: PropTypes__default.default.func.isRequired,
861
- asset: PropTypes__default.default.shape({
862
- name: PropTypes__default.default.string,
863
- url: PropTypes__default.default.string,
864
- width: PropTypes__default.default.number,
865
- height: PropTypes__default.default.number,
866
- ext: PropTypes__default.default.string
867
- }).isRequired,
868
- next: PropTypes__default.default.string,
869
- onClose: PropTypes__default.default.func.isRequired,
870
- onChangeLogo: PropTypes__default.default.func.isRequired,
871
- prev: PropTypes__default.default.string,
872
- setLocalImage: PropTypes__default.default.func.isRequired
873
- };
874
- const stepper = {
875
- upload: {
876
- Component: AddLogoDialog,
877
- modalTitle: {
878
- id: "Settings.application.customization.modal.upload",
879
- defaultMessage: "Upload logo"
880
- },
881
- next: "pending",
882
- prev: null
883
- },
884
- pending: {
885
- Component: PendingLogoDialog,
886
- modalTitle: {
887
- id: "Settings.application.customization.modal.pending",
888
- defaultMessage: "Pending logo"
889
- },
890
- next: null,
891
- prev: "upload"
892
- }
893
- };
894
- const LogoInput = ({
895
- canUpdate,
896
- customLogo,
897
- defaultLogo,
898
- hint,
899
- label,
900
- onChangeLogo,
901
- onResetLogo
902
- }) => {
903
- const [{ currentStep }, dispatch] = React.useReducer(reducer$1, initialState$1);
904
- const { Component, next, prev, modalTitle } = stepper[currentStep] || {};
905
- const { formatMessage } = reactIntl.useIntl();
906
- const goTo = (to) => {
907
- dispatch({
908
- type: "GO_TO",
909
- to
910
- });
911
- };
912
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
913
- /* @__PURE__ */ jsxRuntime.jsx(
914
- designSystem.CarouselInput,
915
- {
916
- label,
917
- selectedSlide: 0,
918
- hint,
919
- previousLabel: "",
920
- nextLabel: "",
921
- onNext: () => {
922
- },
923
- onPrevious: () => {
924
- },
925
- secondaryLabel: customLogo?.name || "logo.png",
926
- actions: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.CarouselActions, { children: [
927
- /* @__PURE__ */ jsxRuntime.jsx(
928
- designSystem.IconButton,
929
- {
930
- disabled: !canUpdate,
931
- onClick: () => goTo(customLogo ? "pending" : "upload"),
932
- label: formatMessage({
933
- id: "Settings.application.customization.carousel.change-action",
934
- defaultMessage: "Change logo"
935
- }),
936
- icon: /* @__PURE__ */ jsxRuntime.jsx(Icons.Plus, {})
937
- }
938
- ),
939
- customLogo && /* @__PURE__ */ jsxRuntime.jsx(
940
- designSystem.IconButton,
941
- {
942
- disabled: !canUpdate,
943
- onClick: onResetLogo,
944
- label: formatMessage({
945
- id: "Settings.application.customization.carousel.reset-action",
946
- defaultMessage: "Reset logo"
947
- }),
948
- icon: /* @__PURE__ */ jsxRuntime.jsx(Icons.Refresh, {})
949
- }
950
- )
951
- ] }),
952
- children: /* @__PURE__ */ jsxRuntime.jsx(
953
- designSystem.CarouselSlide,
954
- {
955
- label: formatMessage({
956
- id: "Settings.application.customization.carousel-slide.label",
957
- defaultMessage: "Logo slide"
958
- }),
959
- children: /* @__PURE__ */ jsxRuntime.jsx(
960
- designSystem.Box,
961
- {
962
- maxHeight: "40%",
963
- maxWidth: "40%",
964
- as: "img",
965
- src: customLogo?.url || defaultLogo,
966
- alt: formatMessage({
967
- id: "Settings.application.customization.carousel.title",
968
- defaultMessage: "Logo"
969
- })
970
- }
971
- )
972
- }
973
- )
974
- }
975
- ),
976
- /* @__PURE__ */ jsxRuntime.jsx(
977
- LogoModalStepper,
978
- {
979
- Component,
980
- currentStep,
981
- onChangeLogo,
982
- customLogo,
983
- goTo,
984
- next,
985
- prev,
986
- modalTitle
987
- }
988
- )
989
- ] });
990
- };
991
- LogoInput.defaultProps = {
992
- canUpdate: false,
993
- customLogo: null,
994
- hint: null
995
- };
996
- LogoInput.propTypes = {
997
- canUpdate: PropTypes__default.default.bool,
998
- customLogo: PropTypes__default.default.shape({
999
- url: PropTypes__default.default.string,
1000
- name: PropTypes__default.default.string
1001
- }),
1002
- label: PropTypes__default.default.string.isRequired,
1003
- hint: PropTypes__default.default.string,
1004
- defaultLogo: PropTypes__default.default.string.isRequired,
1005
- onChangeLogo: PropTypes__default.default.func.isRequired,
1006
- onResetLogo: PropTypes__default.default.func.isRequired
1007
- };
1008
- const init = (initialState2, projectSettingsStored) => {
1009
- const copyInitialState = merge__default.default(initialState2, {
1010
- menuLogo: {
1011
- display: projectSettingsStored.menuLogo
1012
- },
1013
- authLogo: {
1014
- display: projectSettingsStored.authLogo
1015
- }
1016
- });
1017
- return copyInitialState;
1018
- };
1019
- const initialState = {
1020
- menuLogo: {
1021
- display: null,
1022
- submit: {
1023
- rawFile: null,
1024
- isReset: false
1025
- }
1026
- },
1027
- authLogo: {
1028
- display: null,
1029
- submit: {
1030
- rawFile: null,
1031
- isReset: false
1032
- }
1033
- }
1034
- };
1035
- const reducer = (state = initialState, action) => produce__default.default(state, (draftState) => {
1036
- switch (action.type) {
1037
- case "SET_CUSTOM_MENU_LOGO": {
1038
- draftState.menuLogo.display = action.value;
1039
- draftState.menuLogo.submit.rawFile = action.value.rawFile;
1040
- break;
1041
- }
1042
- case "SET_CUSTOM_AUTH_LOGO": {
1043
- draftState.authLogo.display = action.value;
1044
- draftState.authLogo.submit.rawFile = action.value.rawFile;
1045
- break;
1046
- }
1047
- case "RESET_CUSTOM_MENU_LOGO": {
1048
- draftState.menuLogo.display = null;
1049
- draftState.menuLogo.submit = {
1050
- rawFile: null,
1051
- isReset: true
1052
- };
1053
- break;
1054
- }
1055
- case "RESET_CUSTOM_AUTH_LOGO": {
1056
- draftState.authLogo.display = null;
1057
- draftState.authLogo.submit = {
1058
- rawFile: null,
1059
- isReset: true
1060
- };
1061
- break;
1062
- }
1063
- default: {
1064
- return draftState;
1065
- }
1066
- }
1067
- });
1068
- const CustomizationInfos = React.forwardRef(({ canUpdate, projectSettingsStored }, ref) => {
1069
- const { formatMessage } = reactIntl.useIntl();
1070
- const { trackUsage } = helperPlugin.useTracking();
1071
- const {
1072
- logos: { menu, auth }
1073
- } = index.useConfiguration();
1074
- const [{ menuLogo, authLogo }, dispatch] = React.useReducer(
1075
- reducer,
1076
- initialState,
1077
- () => init(initialState, projectSettingsStored)
1078
- );
1079
- const handleChangeMenuLogo = (asset) => {
1080
- dispatch({
1081
- type: "SET_CUSTOM_MENU_LOGO",
1082
- value: asset
1083
- });
1084
- };
1085
- const handleResetMenuLogo = () => {
1086
- trackUsage("didClickResetLogo", {
1087
- logo: "menu"
1088
- });
1089
- dispatch({
1090
- type: "RESET_CUSTOM_MENU_LOGO"
1091
- });
1092
- };
1093
- const handleChangeAuthLogo = (asset) => {
1094
- dispatch({
1095
- type: "SET_CUSTOM_AUTH_LOGO",
1096
- value: asset
1097
- });
1098
- };
1099
- const handleResetAuthLogo = () => {
1100
- trackUsage("didClickResetLogo", {
1101
- logo: "auth"
1102
- });
1103
- dispatch({
1104
- type: "RESET_CUSTOM_AUTH_LOGO"
1105
- });
1106
- };
1107
- React.useImperativeHandle(ref, () => ({
1108
- getValues: () => ({ menuLogo: menuLogo.submit, authLogo: authLogo.submit })
1109
- }));
1110
- return /* @__PURE__ */ jsxRuntime.jsxs(
1111
- designSystem.Box,
1112
- {
1113
- hasRadius: true,
1114
- background: "neutral0",
1115
- shadow: "tableShadow",
1116
- paddingTop: 6,
1117
- paddingBottom: 6,
1118
- paddingRight: 7,
1119
- paddingLeft: 7,
1120
- children: [
1121
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "delta", as: "h3", children: formatMessage({
1122
- id: "Settings.application.customization",
1123
- defaultMessage: "Customization"
1124
- }) }),
1125
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "pi", textColor: "neutral600", children: formatMessage(
1126
- {
1127
- id: "Settings.application.customization.size-details",
1128
- defaultMessage: "Max dimension: {dimension}×{dimension}, Max file size: {size}KB"
1129
- },
1130
- { dimension: DIMENSION, size: SIZE }
1131
- ) }),
1132
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Grid, { paddingTop: 4, gap: 4, children: [
1133
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.GridItem, { col: 6, s: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
1134
- LogoInput,
1135
- {
1136
- canUpdate,
1137
- customLogo: menuLogo.display,
1138
- defaultLogo: menu.default,
1139
- hint: formatMessage({
1140
- id: "Settings.application.customization.menu-logo.carousel-hint",
1141
- defaultMessage: "Replace the logo in the main navigation"
1142
- }),
1143
- label: formatMessage({
1144
- id: "Settings.application.customization.carousel.menu-logo.title",
1145
- defaultMessage: "Menu logo"
1146
- }),
1147
- onChangeLogo: handleChangeMenuLogo,
1148
- onResetLogo: handleResetMenuLogo
1149
- }
1150
- ) }),
1151
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.GridItem, { col: 6, s: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
1152
- LogoInput,
1153
- {
1154
- canUpdate,
1155
- customLogo: authLogo.display,
1156
- defaultLogo: auth.default,
1157
- hint: formatMessage({
1158
- id: "Settings.application.customization.auth-logo.carousel-hint",
1159
- defaultMessage: "Replace the logo in the authentication pages"
1160
- }),
1161
- label: formatMessage({
1162
- id: "Settings.application.customization.carousel.auth-logo.title",
1163
- defaultMessage: "Auth logo"
1164
- }),
1165
- onChangeLogo: handleChangeAuthLogo,
1166
- onResetLogo: handleResetAuthLogo
1167
- }
1168
- ) })
1169
- ] })
1170
- ]
1171
- }
1172
- );
1173
- });
1174
- CustomizationInfos.defaultProps = {
1175
- canUpdate: false,
1176
- projectSettingsStored: null
1177
- };
1178
- CustomizationInfos.propTypes = {
1179
- canUpdate: PropTypes__default.default.bool,
1180
- projectSettingsStored: PropTypes__default.default.shape({
1181
- menuLogo: PropTypes__default.default.shape({
1182
- url: PropTypes__default.default.string,
1183
- name: PropTypes__default.default.string
1184
- })
1185
- })
1186
- };
1187
- const getFormData = (data) => {
1188
- const formData = new FormData();
1189
- Object.entries(data).forEach(([key, value]) => {
1190
- if (value && value.rawFile instanceof File) {
1191
- formData.append(key, value.rawFile);
1192
- }
1193
- if (value && value.isReset) {
1194
- formData.append(key, null);
1195
- }
1196
- });
1197
- return formData;
1198
- };
1199
- const AdminSeatInfoCE = () => null;
1200
- const ApplicationInfosPage = () => {
1201
- const inputsRef = React__namespace.useRef();
1202
- const toggleNotification = helperPlugin.useNotification();
1203
- const { trackUsage } = helperPlugin.useTracking();
1204
- const { formatMessage } = reactIntl.useIntl();
1205
- const { get, post } = helperPlugin.useFetchClient();
1206
- const { updateProjectSettings } = index.useConfiguration();
1207
- const permissions = reactRedux.useSelector(AuthenticatedApp.selectAdminPermissions);
1208
- const { formatAPIError } = helperPlugin.useAPIErrorHandler();
1209
- const {
1210
- communityEdition,
1211
- latestStrapiReleaseTag,
1212
- nodeVersion,
1213
- shouldUpdateStrapi,
1214
- strapiVersion
1215
- } = helperPlugin.useAppInfo();
1216
- const AdminSeatInfo = index.useEnterprise(
1217
- AdminSeatInfoCE,
1218
- async () => (await Promise.resolve().then(() => require("./index-bbac142a.js"))).AdminSeatInfoEE
1219
- );
1220
- const {
1221
- allowedActions: { canRead, canUpdate }
1222
- } = helperPlugin.useRBAC(permissions.settings["project-settings"]);
1223
- helperPlugin.useFocusWhenNavigate();
1224
- const { data, isLoading } = reactQuery.useQuery(
1225
- ["project-settings"],
1226
- async () => {
1227
- const { data: data2 } = await get("/admin/project-settings");
1228
- return data2;
1229
- },
1230
- {
1231
- cacheTime: 0,
1232
- enabled: canRead,
1233
- select(data2) {
1234
- return {
1235
- ...data2,
1236
- authLogo: data2.authLogo ? {
1237
- ...data2.authLogo,
1238
- url: helperPlugin.prefixFileUrlWithBackendUrl(data2.authLogo.url)
1239
- } : data2.authLogo,
1240
- menuLogo: data2.menuLogo ? {
1241
- ...data2.menuLogo,
1242
- url: helperPlugin.prefixFileUrlWithBackendUrl(data2.menuLogo.url)
1243
- } : data2.menuLogo
1244
- };
1245
- }
1246
- }
1247
- );
1248
- const submitMutation = reactQuery.useMutation(
1249
- (body) => post("/admin/project-settings", body, {
1250
- headers: {
1251
- "Content-Type": "multipart/form-data"
1252
- }
1253
- }),
1254
- {
1255
- onError(error) {
1256
- toggleNotification({
1257
- type: "warning",
1258
- message: formatAPIError(error)
1259
- });
1260
- },
1261
- async onSuccess(data2) {
1262
- const { menuLogo, authLogo } = data2;
1263
- updateProjectSettings({ menuLogo: menuLogo?.url, authLogo: authLogo?.url });
1264
- if (menuLogo?.rawFile) {
1265
- trackUsage("didChangeLogo", {
1266
- logo: "menu"
1267
- });
1268
- }
1269
- if (authLogo?.rawFile) {
1270
- trackUsage("didChangeLogo", {
1271
- logo: "auth"
1272
- });
1273
- }
1274
- toggleNotification({
1275
- type: "success",
1276
- message: formatMessage({ id: "app", defaultMessage: "Saved" })
1277
- });
1278
- }
1279
- }
1280
- );
1281
- const handleSubmit = (e) => {
1282
- e.preventDefault();
1283
- submitMutation.mutate(getFormData(inputsRef.current.getValues()));
1284
- };
1285
- if (!AdminSeatInfo) {
1286
- return null;
1287
- }
1288
- return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Layout, { children: [
1289
- /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.SettingsPageTitle, { name: "Application" }),
1290
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Main, { children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx(designSystem.Loader, { children: formatMessage({
1291
- id: "Settings.application.isLoading",
1292
- defaultMessage: "Loading"
1293
- }) }) : /* @__PURE__ */ jsxRuntime.jsxs("form", { onSubmit: handleSubmit, children: [
1294
- /* @__PURE__ */ jsxRuntime.jsx(
1295
- designSystem.HeaderLayout,
1296
- {
1297
- title: formatMessage({
1298
- id: "Settings.application.title",
1299
- defaultMessage: "Overview"
1300
- }),
1301
- subtitle: formatMessage({
1302
- id: "Settings.application.description",
1303
- defaultMessage: "Administration panel’s global information"
1304
- }),
1305
- primaryAction: canUpdate && /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { type: "submit", startIcon: /* @__PURE__ */ jsxRuntime.jsx(Icons.Check, {}), children: formatMessage({ id: "global.save", defaultMessage: "Save" }) })
1306
- }
1307
- ),
1308
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.ContentLayout, { children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { direction: "column", alignItems: "stretch", gap: 6, children: [
1309
- /* @__PURE__ */ jsxRuntime.jsxs(
1310
- designSystem.Flex,
1311
- {
1312
- direction: "column",
1313
- alignItems: "stretch",
1314
- gap: 4,
1315
- hasRadius: true,
1316
- background: "neutral0",
1317
- shadow: "tableShadow",
1318
- paddingTop: 6,
1319
- paddingBottom: 6,
1320
- paddingRight: 7,
1321
- paddingLeft: 7,
1322
- children: [
1323
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "delta", as: "h3", children: formatMessage({
1324
- id: "global.details",
1325
- defaultMessage: "Details"
1326
- }) }),
1327
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Grid, { gap: 5, as: "dl", children: [
1328
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.GridItem, { col: 6, s: 12, children: [
1329
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "sigma", textColor: "neutral600", as: "dt", children: formatMessage({
1330
- id: "Settings.application.strapiVersion",
1331
- defaultMessage: "strapi version"
1332
- }) }),
1333
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 3, direction: "column", alignItems: "start", as: "dd", children: [
1334
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Typography, { children: [
1335
- "v",
1336
- strapiVersion
1337
- ] }),
1338
- shouldUpdateStrapi && /* @__PURE__ */ jsxRuntime.jsx(
1339
- designSystem.Link,
1340
- {
1341
- href: `https://github.com/strapi/strapi/releases/tag/${latestStrapiReleaseTag}`,
1342
- isExternal: true,
1343
- endIcon: /* @__PURE__ */ jsxRuntime.jsx(Icons.ExternalLink, {}),
1344
- children: formatMessage({
1345
- id: "Settings.application.link-upgrade",
1346
- defaultMessage: "Upgrade your admin panel"
1347
- })
1348
- }
1349
- )
1350
- ] })
1351
- ] }),
1352
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.GridItem, { col: 6, s: 12, children: [
1353
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "sigma", textColor: "neutral600", as: "dt", children: formatMessage({
1354
- id: "Settings.application.edition-title",
1355
- defaultMessage: "current plan"
1356
- }) }),
1357
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 3, direction: "column", alignItems: "start", as: "dd", children: [
1358
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { children: formatMessage(
1359
- {
1360
- id: "Settings.application.ee-or-ce",
1361
- defaultMessage: "{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"
1362
- },
1363
- { communityEdition }
1364
- ) }),
1365
- /* @__PURE__ */ jsxRuntime.jsx(
1366
- designSystem.Link,
1367
- {
1368
- href: "https://strapi.io/pricing-self-hosted",
1369
- isExternal: true,
1370
- endIcon: /* @__PURE__ */ jsxRuntime.jsx(Icons.ExternalLink, {}),
1371
- children: formatMessage({
1372
- id: "Settings.application.link-pricing",
1373
- defaultMessage: "See all pricing plans"
1374
- })
1375
- }
1376
- )
1377
- ] })
1378
- ] }),
1379
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.GridItem, { col: 6, s: 12, children: [
1380
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "sigma", textColor: "neutral600", as: "dt", children: formatMessage({
1381
- id: "Settings.application.node-version",
1382
- defaultMessage: "node version"
1383
- }) }),
1384
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { as: "dd", children: nodeVersion })
1385
- ] }),
1386
- /* @__PURE__ */ jsxRuntime.jsx(AdminSeatInfo, {})
1387
- ] })
1388
- ]
1389
- }
1390
- ),
1391
- canRead && data && /* @__PURE__ */ jsxRuntime.jsx(
1392
- CustomizationInfos,
1393
- {
1394
- canUpdate,
1395
- ref: inputsRef,
1396
- projectSettingsStored: data
1397
- }
1398
- )
1399
- ] }) })
1400
- ] }) })
1401
- ] });
1402
- };
1403
- function makeUniqueRoutes(routes) {
1404
- return routes.filter(
1405
- (route, index2, refArray) => refArray.findIndex((obj) => obj.key === route.key) === index2
1406
- );
1407
- }
1408
- function SettingsPage() {
1409
- const { settingId } = reactRouterDom.useParams();
1410
- const { settings } = helperPlugin.useStrapiApp();
1411
- const { formatMessage } = reactIntl.useIntl();
1412
- const { isLoading, menu } = useSettingsMenu();
1413
- const routes = index.useEnterprise(
1414
- ROUTES_CE,
1415
- async () => (await Promise.resolve().then(() => require("./constants-e05f06d4.js"))).ROUTES_EE,
1416
- {
1417
- combine(ceRoutes, eeRoutes) {
1418
- return [...ceRoutes, ...eeRoutes];
1419
- },
1420
- defaultValue: []
1421
- }
1422
- );
1423
- const adminRoutes = React__namespace.useMemo(() => {
1424
- return makeUniqueRoutes(
1425
- routes.map(({ to, Component, exact }) => index.createRoute(Component, to, exact))
1426
- );
1427
- }, [routes]);
1428
- const pluginsRoutes = Object.values(settings).flatMap((section) => {
1429
- const { links } = section;
1430
- return links.map((link) => index.createRoute(link.Component, link.to, link.exact || false));
1431
- });
1432
- if (isLoading) {
1433
- return /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.LoadingIndicatorPage, {});
1434
- }
1435
- if (!settingId) {
1436
- return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Redirect, { to: "/settings/application-infos" });
1437
- }
1438
- return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Layout, { sideNav: /* @__PURE__ */ jsxRuntime.jsx(SettingsNav, { menu }), children: [
1439
- /* @__PURE__ */ jsxRuntime.jsx(
1440
- reactHelmet.Helmet,
1441
- {
1442
- title: formatMessage({
1443
- id: "global.settings",
1444
- defaultMessage: "Settings"
1445
- })
1446
- }
1447
- ),
1448
- /* @__PURE__ */ jsxRuntime.jsxs(reactRouterDom.Switch, { children: [
1449
- /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Route, { path: "/settings/application-infos", component: ApplicationInfosPage, exact: true }),
1450
- adminRoutes,
1451
- pluginsRoutes
1452
- ] })
1453
- ] });
1454
- }
1455
- exports.SettingsPage = SettingsPage;
1456
- //# sourceMappingURL=index-c97f5820.js.map