@strapi/admin 5.0.0-rc.3 → 5.0.0-rc.30

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 (389) hide show
  1. package/dist/admin/{AdminSeatInfo-E8azTFQY.js → AdminSeatInfo-8vtNB3ck.js} +4 -4
  2. package/dist/admin/AdminSeatInfo-8vtNB3ck.js.map +1 -0
  3. package/dist/admin/{AdminSeatInfo-Q_hUNC5B.mjs → AdminSeatInfo-qIgh5-QA.mjs} +5 -5
  4. package/dist/admin/AdminSeatInfo-qIgh5-QA.mjs.map +1 -0
  5. package/dist/admin/{ApplicationInfoPage-noPIfujW.js → ApplicationInfoPage-ezUPoomC.js} +10 -10
  6. package/dist/admin/ApplicationInfoPage-ezUPoomC.js.map +1 -0
  7. package/dist/admin/{ApplicationInfoPage-kEld-u0P.mjs → ApplicationInfoPage-hvwQQDfu.mjs} +10 -10
  8. package/dist/admin/ApplicationInfoPage-hvwQQDfu.mjs.map +1 -0
  9. package/dist/admin/{AuthResponse-J8A48xdo.mjs → AuthResponse-HYXVuTDF.mjs} +2 -2
  10. package/dist/admin/{AuthResponse-J8A48xdo.mjs.map → AuthResponse-HYXVuTDF.mjs.map} +1 -1
  11. package/dist/admin/{AuthResponse-KlTDmm2i.js → AuthResponse-R8kR_yqS.js} +2 -2
  12. package/dist/admin/{AuthResponse-KlTDmm2i.js.map → AuthResponse-R8kR_yqS.js.map} +1 -1
  13. package/dist/admin/{AuthenticatedLayout-zYfAXNPg.mjs → AuthenticatedLayout-L-NNsHI6.mjs} +69 -82
  14. package/dist/admin/AuthenticatedLayout-L-NNsHI6.mjs.map +1 -0
  15. package/dist/admin/{AuthenticatedLayout-kLMmhrNQ.js → AuthenticatedLayout-U_Y1i-L-.js} +68 -81
  16. package/dist/admin/AuthenticatedLayout-U_Y1i-L-.js.map +1 -0
  17. package/dist/admin/{CreateActionEE-Yfp4hs7a.mjs → CreateActionEE-X2nnG2dm.mjs} +2 -2
  18. package/dist/admin/{CreateActionEE-Yfp4hs7a.mjs.map → CreateActionEE-X2nnG2dm.mjs.map} +1 -1
  19. package/dist/admin/{CreatePage-I7iAq1hY.mjs → CreatePage-J5u689Z3.mjs} +3 -3
  20. package/dist/admin/{CreatePage-I7iAq1hY.mjs.map → CreatePage-J5u689Z3.mjs.map} +1 -1
  21. package/dist/admin/{CreatePage-CUxfLM1W.js → CreatePage-hVCdmn57.js} +3 -3
  22. package/dist/admin/{CreatePage-CUxfLM1W.js.map → CreatePage-hVCdmn57.js.map} +1 -1
  23. package/dist/admin/{CreatePage-bJgO6DND.mjs → CreatePage-kEk8SJfP.mjs} +7 -7
  24. package/dist/admin/CreatePage-kEk8SJfP.mjs.map +1 -0
  25. package/dist/admin/{CreatePage-0dG6JVsn.js → CreatePage-wgAv5nl3.js} +6 -6
  26. package/dist/admin/CreatePage-wgAv5nl3.js.map +1 -0
  27. package/dist/admin/{CreateView-_K_RroGC.js → CreateView-jmN888jP.js} +3 -3
  28. package/dist/admin/{CreateView-_K_RroGC.js.map → CreateView-jmN888jP.js.map} +1 -1
  29. package/dist/admin/{CreateView-uZSogyWz.mjs → CreateView-jyUut1x5.mjs} +3 -3
  30. package/dist/admin/{CreateView-uZSogyWz.mjs.map → CreateView-jyUut1x5.mjs.map} +1 -1
  31. package/dist/admin/{CreateView-dpvub7Dn.mjs → CreateView-m1DVHo7c.mjs} +3 -3
  32. package/dist/admin/{CreateView-dpvub7Dn.mjs.map → CreateView-m1DVHo7c.mjs.map} +1 -1
  33. package/dist/admin/{CreateView-8WdBrUg7.js → CreateView-ormHpP1q.js} +3 -3
  34. package/dist/admin/{CreateView-8WdBrUg7.js.map → CreateView-ormHpP1q.js.map} +1 -1
  35. package/dist/admin/{EditPage-T7HhMiw2.js → EditPage-5io6Tp6t.js} +8 -8
  36. package/dist/admin/EditPage-5io6Tp6t.js.map +1 -0
  37. package/dist/admin/{EditPage-D5r0GV3j.mjs → EditPage-Od_v4_be.mjs} +42 -29
  38. package/dist/admin/EditPage-Od_v4_be.mjs.map +1 -0
  39. package/dist/admin/{EditPage-X8jnX0_l.js → EditPage-Pt5W8neh.js} +40 -27
  40. package/dist/admin/EditPage-Pt5W8neh.js.map +1 -0
  41. package/dist/admin/{EditPage-iksJke6K.js → EditPage-Q95nrnV7.js} +25 -16
  42. package/dist/admin/EditPage-Q95nrnV7.js.map +1 -0
  43. package/dist/admin/{EditPage-Bx_qeoOF.mjs → EditPage-lgiRfwaF.mjs} +26 -17
  44. package/dist/admin/EditPage-lgiRfwaF.mjs.map +1 -0
  45. package/dist/admin/{EditPage-yBDiueEy.mjs → EditPage-tOIK-Cfa.mjs} +9 -9
  46. package/dist/admin/EditPage-tOIK-Cfa.mjs.map +1 -0
  47. package/dist/admin/{EditView-9nfADKvX.mjs → EditView-C2YwNWBO.mjs} +11 -12
  48. package/dist/admin/EditView-C2YwNWBO.mjs.map +1 -0
  49. package/dist/admin/{EditView-kxg0Wurs.js → EditView-gMzPUOqp.js} +9 -10
  50. package/dist/admin/EditView-gMzPUOqp.js.map +1 -0
  51. package/dist/admin/{EditViewPage-PmrZwoCk.mjs → EditViewPage-BgCS0-PW.mjs} +77 -54
  52. package/dist/admin/EditViewPage-BgCS0-PW.mjs.map +1 -0
  53. package/dist/admin/{EditViewPage-I5bq_bCv.js → EditViewPage-ejtUKO-R.js} +76 -53
  54. package/dist/admin/EditViewPage-ejtUKO-R.js.map +1 -0
  55. package/dist/admin/{EventsTable-uNKFTehG.js → EventsTable-A7mZRfim.js} +2 -2
  56. package/dist/admin/{EventsTable-uNKFTehG.js.map → EventsTable-A7mZRfim.js.map} +1 -1
  57. package/dist/admin/{EventsTable-d03-9tkm.mjs → EventsTable-t4y4yZXc.mjs} +2 -2
  58. package/dist/admin/{EventsTable-d03-9tkm.mjs.map → EventsTable-t4y4yZXc.mjs.map} +1 -1
  59. package/dist/admin/{HomePage-183EKMLK.mjs → HomePage-1wvgf7Va.mjs} +3 -3
  60. package/dist/admin/{HomePage-183EKMLK.mjs.map → HomePage-1wvgf7Va.mjs.map} +1 -1
  61. package/dist/admin/{HomePage-n2buy2O4.mjs → HomePage-Uy655P1o.mjs} +11 -14
  62. package/dist/admin/HomePage-Uy655P1o.mjs.map +1 -0
  63. package/dist/admin/{HomePage-XakoaT95.js → HomePage-l2K5VEES.js} +19 -22
  64. package/dist/admin/HomePage-l2K5VEES.js.map +1 -0
  65. package/dist/admin/{HomePage-8mwfR9nn.js → HomePage-zvRCtbch.js} +3 -3
  66. package/dist/admin/{HomePage-8mwfR9nn.js.map → HomePage-zvRCtbch.js.map} +1 -1
  67. package/dist/admin/{InstalledPluginsPage--BdpZuNa.js → InstalledPlugins-SpFdFYND.js} +9 -11
  68. package/dist/admin/InstalledPlugins-SpFdFYND.js.map +1 -0
  69. package/dist/admin/{InstalledPluginsPage-nFNbVJPm.mjs → InstalledPlugins-wPRaVeug.mjs} +9 -11
  70. package/dist/admin/InstalledPlugins-wPRaVeug.mjs.map +1 -0
  71. package/dist/admin/{Layout-2ucTUD08.js → Layout-1pNNiYP1.js} +5 -5
  72. package/dist/admin/{Layout-2ucTUD08.js.map → Layout-1pNNiYP1.js.map} +1 -1
  73. package/dist/admin/{Layout-rXyzByjE.mjs → Layout-WNZbvlel.mjs} +5 -5
  74. package/dist/admin/{Layout-rXyzByjE.mjs.map → Layout-WNZbvlel.mjs.map} +1 -1
  75. package/dist/admin/{ListPage-iBPceR0S.mjs → ListPage-9efPpe0f.mjs} +7 -7
  76. package/dist/admin/ListPage-9efPpe0f.mjs.map +1 -0
  77. package/dist/admin/{ListPage-U0JQnpSG.js → ListPage-C9_pjixy.js} +3 -3
  78. package/dist/admin/{ListPage-U0JQnpSG.js.map → ListPage-C9_pjixy.js.map} +1 -1
  79. package/dist/admin/{ListPage-vZsQ_8fm.mjs → ListPage-RaBcFl-9.mjs} +3 -3
  80. package/dist/admin/{ListPage-vZsQ_8fm.mjs.map → ListPage-RaBcFl-9.mjs.map} +1 -1
  81. package/dist/admin/{ListPage-pwMqUvh3.js → ListPage-SNyqdq5P.js} +46 -28
  82. package/dist/admin/ListPage-SNyqdq5P.js.map +1 -0
  83. package/dist/admin/{ListPage-SnKebmiT.js → ListPage-UJdwjcJg.js} +5 -5
  84. package/dist/admin/ListPage-UJdwjcJg.js.map +1 -0
  85. package/dist/admin/{ListPage-nXLMZNTC.js → ListPage-dkI5xNaW.js} +7 -7
  86. package/dist/admin/ListPage-dkI5xNaW.js.map +1 -0
  87. package/dist/admin/{ListPage-j-5j-VkL.mjs → ListPage-jfLUMF0B.mjs} +5 -5
  88. package/dist/admin/{ListPage-j-5j-VkL.mjs.map → ListPage-jfLUMF0B.mjs.map} +1 -1
  89. package/dist/admin/{ListPage-GUI-KsYW.js → ListPage-vWxKV7tW.js} +6 -6
  90. package/dist/admin/{ListPage-GUI-KsYW.js.map → ListPage-vWxKV7tW.js.map} +1 -1
  91. package/dist/admin/{ListPage-k3F774YE.mjs → ListPage-wxodcCqH.mjs} +6 -6
  92. package/dist/admin/ListPage-wxodcCqH.mjs.map +1 -0
  93. package/dist/admin/{ListPage-pdwlNZO5.mjs → ListPage-z_lGScc3.mjs} +48 -30
  94. package/dist/admin/ListPage-z_lGScc3.mjs.map +1 -0
  95. package/dist/admin/{ListView-6t08ndE1.js → ListView-96suJOx8.js} +4 -4
  96. package/dist/admin/{ListView-6t08ndE1.js.map → ListView-96suJOx8.js.map} +1 -1
  97. package/dist/admin/{ListView-mhOmYiYT.js → ListView-9c2btOtu.js} +5 -5
  98. package/dist/admin/{ListView-mhOmYiYT.js.map → ListView-9c2btOtu.js.map} +1 -1
  99. package/dist/admin/{ListView-vbeM6zm_.mjs → ListView-WuLI8P9g.mjs} +5 -5
  100. package/dist/admin/{ListView-vbeM6zm_.mjs.map → ListView-WuLI8P9g.mjs.map} +1 -1
  101. package/dist/admin/{ListView-gd-uUYo3.mjs → ListView-Xh4ewfST.mjs} +5 -5
  102. package/dist/admin/{ListView-gd-uUYo3.mjs.map → ListView-Xh4ewfST.mjs.map} +1 -1
  103. package/dist/admin/{Login-VnmdXnMj.mjs → Login-Che5xFmG.mjs} +4 -4
  104. package/dist/admin/{Login-VnmdXnMj.mjs.map → Login-Che5xFmG.mjs.map} +1 -1
  105. package/dist/admin/{Login-KEjxL7NL.js → Login-FibrFNCh.js} +4 -4
  106. package/dist/admin/{Login-KEjxL7NL.js.map → Login-FibrFNCh.js.map} +1 -1
  107. package/dist/admin/{MagicLinkEE-lbZ8IiEW.mjs → MagicLinkEE-FrMh9qpI.mjs} +3 -3
  108. package/dist/admin/{MagicLinkEE-lbZ8IiEW.mjs.map → MagicLinkEE-FrMh9qpI.mjs.map} +1 -1
  109. package/dist/admin/{MagicLinkEE-_uF-eBZl.js → MagicLinkEE-XeVNxSHy.js} +3 -3
  110. package/dist/admin/{MagicLinkEE-_uF-eBZl.js.map → MagicLinkEE-XeVNxSHy.js.map} +1 -1
  111. package/dist/admin/{MarketplacePage-Pwwe_Pr9.js → MarketplacePage-BPe_3jP4.js} +87 -74
  112. package/dist/admin/MarketplacePage-BPe_3jP4.js.map +1 -0
  113. package/dist/admin/{MarketplacePage--aN208CJ.mjs → MarketplacePage-hQE7ybnf.mjs} +86 -73
  114. package/dist/admin/MarketplacePage-hQE7ybnf.mjs.map +1 -0
  115. package/dist/admin/{Permissions-oxdduJgE.mjs → Permissions-aSGK8VGG.mjs} +3 -3
  116. package/dist/admin/{Permissions-oxdduJgE.mjs.map → Permissions-aSGK8VGG.mjs.map} +1 -1
  117. package/dist/admin/{Permissions-SuZE5tW3.js → Permissions-bmMBmcv7.js} +3 -3
  118. package/dist/admin/{Permissions-SuZE5tW3.js.map → Permissions-bmMBmcv7.js.map} +1 -1
  119. package/dist/admin/{PrivateRoute-ndqg7K6H.js → PrivateRoute-LO9G_pCJ.js} +2 -2
  120. package/dist/admin/{PrivateRoute-ndqg7K6H.js.map → PrivateRoute-LO9G_pCJ.js.map} +1 -1
  121. package/dist/admin/{PrivateRoute-4oRTB_tX.mjs → PrivateRoute-S4Lol0B9.mjs} +2 -2
  122. package/dist/admin/{PrivateRoute-4oRTB_tX.mjs.map → PrivateRoute-S4Lol0B9.mjs.map} +1 -1
  123. package/dist/admin/{ProfilePage-wo_TrDuQ.mjs → ProfilePage-RM2Dol_b.mjs} +9 -9
  124. package/dist/admin/ProfilePage-RM2Dol_b.mjs.map +1 -0
  125. package/dist/admin/{ProfilePage-9GtyEQef.js → ProfilePage-kBO5al50.js} +8 -8
  126. package/dist/admin/ProfilePage-kBO5al50.js.map +1 -0
  127. package/dist/admin/{PurchaseAuditLogs-YYOVsNMr.js → PurchaseAuditLogs-2mIURI7O.js} +2 -2
  128. package/dist/admin/{PurchaseAuditLogs-YYOVsNMr.js.map → PurchaseAuditLogs-2mIURI7O.js.map} +1 -1
  129. package/dist/admin/{PurchaseAuditLogs-KuzDXxa_.mjs → PurchaseAuditLogs-Mzq8o-DK.mjs} +2 -2
  130. package/dist/admin/{PurchaseAuditLogs-KuzDXxa_.mjs.map → PurchaseAuditLogs-Mzq8o-DK.mjs.map} +1 -1
  131. package/dist/admin/{PurchaseSingleSignOn-UF2SMczk.js → PurchaseSingleSignOn-P_X-9MEx.js} +2 -2
  132. package/dist/admin/{PurchaseSingleSignOn-UF2SMczk.js.map → PurchaseSingleSignOn-P_X-9MEx.js.map} +1 -1
  133. package/dist/admin/{PurchaseSingleSignOn-4m19d5bJ.mjs → PurchaseSingleSignOn-cMTLeK2B.mjs} +2 -2
  134. package/dist/admin/{PurchaseSingleSignOn-4m19d5bJ.mjs.map → PurchaseSingleSignOn-cMTLeK2B.mjs.map} +1 -1
  135. package/dist/admin/{SSOProviders-QBcyB9VI.js → SSOProviders-9-d1vYXb.js} +4 -4
  136. package/dist/admin/SSOProviders-9-d1vYXb.js.map +1 -0
  137. package/dist/admin/{SSOProviders-nMmBLr8g.mjs → SSOProviders-sy3Xon2A.mjs} +4 -4
  138. package/dist/admin/SSOProviders-sy3Xon2A.mjs.map +1 -0
  139. package/dist/admin/{SelectRoles-82KlaNv9.mjs → SelectRoles-MZNlONGM.mjs} +7 -7
  140. package/dist/admin/SelectRoles-MZNlONGM.mjs.map +1 -0
  141. package/dist/admin/{SelectRoles-iUoQ1i46.js → SelectRoles-W7y7odaY.js} +8 -8
  142. package/dist/admin/SelectRoles-W7y7odaY.js.map +1 -0
  143. package/dist/admin/{SingleSignOnPage-xBAVG_IK.js → SingleSignOnPage-OwgCN2hp.js} +14 -5
  144. package/dist/admin/SingleSignOnPage-OwgCN2hp.js.map +1 -0
  145. package/dist/admin/{SingleSignOnPage-N3e0bw3O.mjs → SingleSignOnPage-gvYva6J8.mjs} +15 -6
  146. package/dist/admin/SingleSignOnPage-gvYva6J8.mjs.map +1 -0
  147. package/dist/admin/{Table-YZ9eQlTc.mjs → Table-a9i0e2LJ.mjs} +13 -20
  148. package/dist/admin/Table-a9i0e2LJ.mjs.map +1 -0
  149. package/dist/admin/{Table-M_g0IUVs.js → Table-mhCUTq4S.js} +13 -20
  150. package/dist/admin/Table-mhCUTq4S.js.map +1 -0
  151. package/dist/admin/{Theme-PrUuuGtN.mjs → Theme-frC82ceE.mjs} +221 -20
  152. package/dist/admin/Theme-frC82ceE.mjs.map +1 -0
  153. package/dist/admin/{Theme-7W0we6BI.js → Theme-y_rWTknM.js} +225 -19
  154. package/dist/admin/Theme-y_rWTknM.js.map +1 -0
  155. package/dist/admin/{TokenTypeSelect-vAeDNBmG.mjs → TokenTypeSelect-WifdoxkK.mjs} +5 -6
  156. package/dist/admin/TokenTypeSelect-WifdoxkK.mjs.map +1 -0
  157. package/dist/admin/{TokenTypeSelect-HMyBvTwA.js → TokenTypeSelect-XdGVptL-.js} +5 -6
  158. package/dist/admin/TokenTypeSelect-XdGVptL-.js.map +1 -0
  159. package/dist/admin/{UseCasePage-VlWOTc-k.js → UseCasePage-MjT4gpNe.js} +14 -8
  160. package/dist/admin/UseCasePage-MjT4gpNe.js.map +1 -0
  161. package/dist/admin/{UseCasePage-GupUMZgN.mjs → UseCasePage-URqtqwgm.mjs} +14 -8
  162. package/dist/admin/{UseCasePage-GupUMZgN.mjs.map → UseCasePage-URqtqwgm.mjs.map} +1 -1
  163. package/dist/admin/{admin-B6AW0Kov.mjs → admin-GZ-AP2T0.mjs} +2 -2
  164. package/dist/admin/{admin-B6AW0Kov.mjs.map → admin-GZ-AP2T0.mjs.map} +1 -1
  165. package/dist/admin/{apiTokens-YMUmHnrH.mjs → apiTokens-GQe-GqwZ.mjs} +2 -2
  166. package/dist/admin/{apiTokens-YMUmHnrH.mjs.map → apiTokens-GQe-GqwZ.mjs.map} +1 -1
  167. package/dist/admin/{constants-hpTrGuiB.mjs → constants-HotVFBqh.mjs} +4 -4
  168. package/dist/admin/{constants-hpTrGuiB.mjs.map → constants-HotVFBqh.mjs.map} +1 -1
  169. package/dist/admin/{constants-2ESPgM_p.js → constants-j8FcH7FB.js} +4 -4
  170. package/dist/admin/{constants-2ESPgM_p.js.map → constants-j8FcH7FB.js.map} +1 -1
  171. package/dist/admin/ee.mjs +1 -1
  172. package/dist/admin/{en-TbnMBjZf.js → en-_1-Nn7iH.js} +3 -2
  173. package/dist/admin/{en-TbnMBjZf.js.map → en-_1-Nn7iH.js.map} +1 -1
  174. package/dist/admin/{en-0Ld-ipyI.mjs → en-lDO5lPD0.mjs} +3 -2
  175. package/dist/admin/{en-0Ld-ipyI.mjs.map → en-lDO5lPD0.mjs.map} +1 -1
  176. package/dist/admin/{index-qf9IxVeZ.js → index-h7R8mHHX.js} +145 -291
  177. package/dist/admin/index-h7R8mHHX.js.map +1 -0
  178. package/dist/admin/{index-6pjQxyB0.mjs → index-ukxNzreH.mjs} +141 -284
  179. package/dist/admin/index-ukxNzreH.mjs.map +1 -0
  180. package/dist/admin/index.js +5 -4
  181. package/dist/admin/index.js.map +1 -1
  182. package/dist/admin/index.mjs +3 -3
  183. package/dist/admin/{selectors-ZpHhvPK4.mjs → selectors--muHmKGe.mjs} +2 -2
  184. package/dist/admin/{selectors-ZpHhvPK4.mjs.map → selectors--muHmKGe.mjs.map} +1 -1
  185. package/dist/admin/{selectors-zQKcCNuz.js → selectors-1ySxKbos.js} +2 -2
  186. package/dist/admin/{selectors-zQKcCNuz.js.map → selectors-1ySxKbos.js.map} +1 -1
  187. package/dist/admin/src/StrapiApp.d.ts +8 -6
  188. package/dist/admin/src/components/Form.d.ts +3 -1
  189. package/dist/admin/src/components/FormInputs/Json.d.ts +2 -2
  190. package/dist/admin/src/components/GuidedTour/Provider.d.ts +0 -4
  191. package/dist/admin/src/constants.d.ts +10 -0
  192. package/dist/admin/src/features/Auth.d.ts +1 -1
  193. package/dist/admin/src/hooks/useRBAC.d.ts +1 -1
  194. package/dist/admin/src/index.d.ts +3 -0
  195. package/dist/admin/src/layouts/UnauthenticatedLayout.d.ts +1 -1
  196. package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +2 -1
  197. package/dist/admin/src/pages/Settings/pages/InstalledPlugins.d.ts +3 -0
  198. package/dist/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.d.ts +1 -1
  199. package/dist/admin/src/types/permissions.d.ts +3 -1
  200. package/dist/admin/test.js +3 -3
  201. package/dist/admin/test.js.map +1 -1
  202. package/dist/admin/test.mjs +4 -4
  203. package/dist/admin/test.mjs.map +1 -1
  204. package/dist/admin/{transferTokens-CNI0TFdA.mjs → transferTokens-v8tNpI_l.mjs} +2 -2
  205. package/dist/admin/{transferTokens-CNI0TFdA.mjs.map → transferTokens-v8tNpI_l.mjs.map} +1 -1
  206. package/dist/admin/{useAdminRoles-8Uy9-IbL.js → useAdminRoles-BxjzG1Wt.js} +2 -2
  207. package/dist/admin/{useAdminRoles-8Uy9-IbL.js.map → useAdminRoles-BxjzG1Wt.js.map} +1 -1
  208. package/dist/admin/{useAdminRoles-a4_GH7yG.mjs → useAdminRoles-fAp7mZbB.mjs} +2 -2
  209. package/dist/admin/{useAdminRoles-a4_GH7yG.mjs.map → useAdminRoles-fAp7mZbB.mjs.map} +1 -1
  210. package/dist/admin/{useLicenseLimitNotification-PaR7jmqd.mjs → useLicenseLimitNotification-Qx_rSpUQ.mjs} +3 -3
  211. package/dist/admin/{useLicenseLimitNotification-PaR7jmqd.mjs.map → useLicenseLimitNotification-Qx_rSpUQ.mjs.map} +1 -1
  212. package/dist/admin/{useLicenseLimitNotification-g1vq6nzk.js → useLicenseLimitNotification-eau4ja6h.js} +2 -2
  213. package/dist/admin/{useLicenseLimitNotification-g1vq6nzk.js.map → useLicenseLimitNotification-eau4ja6h.js.map} +1 -1
  214. package/dist/admin/{useLicenseLimits-Jy6E6qc2.mjs → useLicenseLimits-j5znikzW.mjs} +2 -2
  215. package/dist/admin/{useLicenseLimits-Jy6E6qc2.mjs.map → useLicenseLimits-j5znikzW.mjs.map} +1 -1
  216. package/dist/admin/{useWebhooks-7thg-d57.mjs → useWebhooks-upF7mgdZ.mjs} +2 -2
  217. package/dist/admin/{useWebhooks-7thg-d57.mjs.map → useWebhooks-upF7mgdZ.mjs.map} +1 -1
  218. package/dist/admin/{validation-ODUz3BOU.js → validation-6SSeyGur.js} +4 -4
  219. package/dist/admin/validation-6SSeyGur.js.map +1 -0
  220. package/dist/admin/{validation-YqwSDeRS.mjs → validation-cMzmzqCF.mjs} +4 -4
  221. package/dist/admin/validation-cMzmzqCF.mjs.map +1 -0
  222. package/dist/ee/server/src/audit-logs/content-types/audit-log.d.ts +41 -0
  223. package/dist/ee/server/src/audit-logs/content-types/audit-log.d.ts.map +1 -0
  224. package/dist/ee/server/src/audit-logs/controllers/audit-logs.d.ts +7 -0
  225. package/dist/ee/server/src/audit-logs/controllers/audit-logs.d.ts.map +1 -0
  226. package/dist/ee/server/src/audit-logs/routes/audit-logs.d.ts +19 -0
  227. package/dist/ee/server/src/audit-logs/routes/audit-logs.d.ts.map +1 -0
  228. package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts +27 -0
  229. package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts.map +1 -0
  230. package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts +12 -0
  231. package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts.map +1 -0
  232. package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts +6 -0
  233. package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts.map +1 -0
  234. package/dist/ee/server/src/bootstrap.d.ts +3 -0
  235. package/dist/ee/server/src/bootstrap.d.ts.map +1 -0
  236. package/dist/ee/server/src/config/admin-actions.d.ts +20 -0
  237. package/dist/ee/server/src/config/admin-actions.d.ts.map +1 -0
  238. package/dist/ee/server/src/content-types/index.d.ts +3 -0
  239. package/dist/ee/server/src/content-types/index.d.ts.map +1 -0
  240. package/dist/ee/server/src/controllers/admin.d.ts +29 -0
  241. package/dist/ee/server/src/controllers/admin.d.ts.map +1 -0
  242. package/dist/ee/server/src/controllers/authentication-utils/constants.d.ts +10 -0
  243. package/dist/ee/server/src/controllers/authentication-utils/constants.d.ts.map +1 -0
  244. package/dist/ee/server/src/controllers/authentication-utils/index.d.ts +5 -0
  245. package/dist/ee/server/src/controllers/authentication-utils/index.d.ts.map +1 -0
  246. package/dist/ee/server/src/controllers/authentication-utils/middlewares.d.ts +9 -0
  247. package/dist/ee/server/src/controllers/authentication-utils/middlewares.d.ts.map +1 -0
  248. package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts +55 -0
  249. package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts.map +1 -0
  250. package/dist/ee/server/src/controllers/authentication.d.ts +9 -0
  251. package/dist/ee/server/src/controllers/authentication.d.ts.map +1 -0
  252. package/dist/ee/server/src/controllers/index.d.ts +48 -0
  253. package/dist/ee/server/src/controllers/index.d.ts.map +1 -0
  254. package/dist/ee/server/src/controllers/role.d.ts +20 -0
  255. package/dist/ee/server/src/controllers/role.d.ts.map +1 -0
  256. package/dist/ee/server/src/controllers/user.d.ts +8 -0
  257. package/dist/ee/server/src/controllers/user.d.ts.map +1 -0
  258. package/dist/ee/server/src/destroy.d.ts +6 -0
  259. package/dist/ee/server/src/destroy.d.ts.map +1 -0
  260. package/dist/ee/server/src/index.d.ts +380 -0
  261. package/dist/ee/server/src/index.d.ts.map +1 -0
  262. package/dist/ee/server/src/register.d.ts +6 -0
  263. package/dist/ee/server/src/register.d.ts.map +1 -0
  264. package/dist/ee/server/src/routes/index.d.ts +47 -0
  265. package/dist/ee/server/src/routes/index.d.ts.map +1 -0
  266. package/dist/ee/server/src/routes/license-limit.d.ts +18 -0
  267. package/dist/ee/server/src/routes/license-limit.d.ts.map +1 -0
  268. package/dist/ee/server/src/routes/sso.d.ts +29 -0
  269. package/dist/ee/server/src/routes/sso.d.ts.map +1 -0
  270. package/dist/ee/server/src/routes/utils.d.ts +3 -0
  271. package/dist/ee/server/src/routes/utils.d.ts.map +1 -0
  272. package/dist/ee/server/src/services/auth.d.ts +6 -0
  273. package/dist/ee/server/src/services/auth.d.ts.map +1 -0
  274. package/dist/ee/server/src/services/index.d.ts +39 -0
  275. package/dist/ee/server/src/services/index.d.ts.map +1 -0
  276. package/dist/ee/server/src/services/metrics.d.ts +8 -0
  277. package/dist/ee/server/src/services/metrics.d.ts.map +1 -0
  278. package/dist/ee/server/src/services/passport/provider-registry.d.ts +4 -0
  279. package/dist/ee/server/src/services/passport/provider-registry.d.ts.map +1 -0
  280. package/dist/ee/server/src/services/passport/sso.d.ts +19 -0
  281. package/dist/ee/server/src/services/passport/sso.d.ts.map +1 -0
  282. package/dist/ee/server/src/services/passport.d.ts +13 -0
  283. package/dist/ee/server/src/services/passport.d.ts.map +1 -0
  284. package/dist/ee/server/src/services/role.d.ts +5 -0
  285. package/dist/ee/server/src/services/role.d.ts.map +1 -0
  286. package/dist/ee/server/src/services/seat-enforcement.d.ts +6 -0
  287. package/dist/ee/server/src/services/seat-enforcement.d.ts.map +1 -0
  288. package/dist/ee/server/src/services/user.d.ts +10 -0
  289. package/dist/ee/server/src/services/user.d.ts.map +1 -0
  290. package/dist/ee/server/src/utils/index.d.ts +11 -0
  291. package/dist/ee/server/src/utils/index.d.ts.map +1 -0
  292. package/dist/ee/server/src/utils/persisted-tables.d.ts +42 -0
  293. package/dist/ee/server/src/utils/persisted-tables.d.ts.map +1 -0
  294. package/dist/ee/server/src/utils/sso-lock.d.ts +6 -0
  295. package/dist/ee/server/src/utils/sso-lock.d.ts.map +1 -0
  296. package/dist/ee/server/src/validation/authentication.d.ts +15 -0
  297. package/dist/ee/server/src/validation/authentication.d.ts.map +1 -0
  298. package/dist/ee/server/src/validation/role.d.ts +21 -0
  299. package/dist/ee/server/src/validation/role.d.ts.map +1 -0
  300. package/dist/ee/server/src/validation/user.d.ts +19 -0
  301. package/dist/ee/server/src/validation/user.d.ts.map +1 -0
  302. package/dist/package.json.d.ts +16 -15
  303. package/dist/server/index.js +1934 -539
  304. package/dist/server/index.js.map +1 -1
  305. package/dist/server/index.mjs +1734 -338
  306. package/dist/server/index.mjs.map +1 -1
  307. package/dist/server/src/config/admin-actions.d.ts +26 -0
  308. package/dist/server/src/config/admin-actions.d.ts.map +1 -1
  309. package/dist/server/src/domain/action/index.d.ts +51 -1
  310. package/dist/server/src/domain/action/index.d.ts.map +1 -1
  311. package/dist/server/src/domain/action/provider.d.ts +10 -13
  312. package/dist/server/src/domain/action/provider.d.ts.map +1 -1
  313. package/dist/server/src/domain/condition/provider.d.ts +5 -6
  314. package/dist/server/src/domain/condition/provider.d.ts.map +1 -1
  315. package/dist/server/src/domain/permission/index.d.ts +2 -2
  316. package/dist/server/src/domain/permission/index.d.ts.map +1 -1
  317. package/dist/server/src/index.d.ts +738 -10
  318. package/dist/server/src/index.d.ts.map +1 -1
  319. package/dist/server/src/services/action.d.ts +1 -3
  320. package/dist/server/src/services/action.d.ts.map +1 -1
  321. package/dist/server/src/services/permission.d.ts +11 -18
  322. package/dist/server/src/services/permission.d.ts.map +1 -1
  323. package/dist/server/src/services/transfer/permission.d.ts +6 -2
  324. package/dist/server/src/services/transfer/permission.d.ts.map +1 -1
  325. package/dist/server/src/validation/action-provider.d.ts.map +1 -1
  326. package/dist/shared/contracts/admin.d.ts +1 -0
  327. package/dist/shared/contracts/admin.d.ts.map +1 -1
  328. package/dist/shared/contracts/user.d.ts +1 -1
  329. package/dist/shared/contracts/user.d.ts.map +1 -1
  330. package/package.json +17 -16
  331. package/dist/admin/AdminSeatInfo-E8azTFQY.js.map +0 -1
  332. package/dist/admin/AdminSeatInfo-Q_hUNC5B.mjs.map +0 -1
  333. package/dist/admin/ApplicationInfoPage-kEld-u0P.mjs.map +0 -1
  334. package/dist/admin/ApplicationInfoPage-noPIfujW.js.map +0 -1
  335. package/dist/admin/AuthenticatedLayout-kLMmhrNQ.js.map +0 -1
  336. package/dist/admin/AuthenticatedLayout-zYfAXNPg.mjs.map +0 -1
  337. package/dist/admin/ContentBox-3MRTNw0X.js +0 -43
  338. package/dist/admin/ContentBox-3MRTNw0X.js.map +0 -1
  339. package/dist/admin/ContentBox-9LBDzws0.mjs +0 -41
  340. package/dist/admin/ContentBox-9LBDzws0.mjs.map +0 -1
  341. package/dist/admin/CreatePage-0dG6JVsn.js.map +0 -1
  342. package/dist/admin/CreatePage-bJgO6DND.mjs.map +0 -1
  343. package/dist/admin/EditPage-Bx_qeoOF.mjs.map +0 -1
  344. package/dist/admin/EditPage-D5r0GV3j.mjs.map +0 -1
  345. package/dist/admin/EditPage-T7HhMiw2.js.map +0 -1
  346. package/dist/admin/EditPage-X8jnX0_l.js.map +0 -1
  347. package/dist/admin/EditPage-iksJke6K.js.map +0 -1
  348. package/dist/admin/EditPage-yBDiueEy.mjs.map +0 -1
  349. package/dist/admin/EditView-9nfADKvX.mjs.map +0 -1
  350. package/dist/admin/EditView-kxg0Wurs.js.map +0 -1
  351. package/dist/admin/EditViewPage-I5bq_bCv.js.map +0 -1
  352. package/dist/admin/EditViewPage-PmrZwoCk.mjs.map +0 -1
  353. package/dist/admin/HomePage-XakoaT95.js.map +0 -1
  354. package/dist/admin/HomePage-n2buy2O4.mjs.map +0 -1
  355. package/dist/admin/InstalledPluginsPage--BdpZuNa.js.map +0 -1
  356. package/dist/admin/InstalledPluginsPage-nFNbVJPm.mjs.map +0 -1
  357. package/dist/admin/ListPage-SnKebmiT.js.map +0 -1
  358. package/dist/admin/ListPage-iBPceR0S.mjs.map +0 -1
  359. package/dist/admin/ListPage-k3F774YE.mjs.map +0 -1
  360. package/dist/admin/ListPage-nXLMZNTC.js.map +0 -1
  361. package/dist/admin/ListPage-pdwlNZO5.mjs.map +0 -1
  362. package/dist/admin/ListPage-pwMqUvh3.js.map +0 -1
  363. package/dist/admin/MarketplacePage--aN208CJ.mjs.map +0 -1
  364. package/dist/admin/MarketplacePage-Pwwe_Pr9.js.map +0 -1
  365. package/dist/admin/ProfilePage-9GtyEQef.js.map +0 -1
  366. package/dist/admin/ProfilePage-wo_TrDuQ.mjs.map +0 -1
  367. package/dist/admin/SSOProviders-QBcyB9VI.js.map +0 -1
  368. package/dist/admin/SSOProviders-nMmBLr8g.mjs.map +0 -1
  369. package/dist/admin/SelectRoles-82KlaNv9.mjs.map +0 -1
  370. package/dist/admin/SelectRoles-iUoQ1i46.js.map +0 -1
  371. package/dist/admin/SingleSignOnPage-N3e0bw3O.mjs.map +0 -1
  372. package/dist/admin/SingleSignOnPage-xBAVG_IK.js.map +0 -1
  373. package/dist/admin/Table-M_g0IUVs.js.map +0 -1
  374. package/dist/admin/Table-YZ9eQlTc.mjs.map +0 -1
  375. package/dist/admin/Theme-7W0we6BI.js.map +0 -1
  376. package/dist/admin/Theme-PrUuuGtN.mjs.map +0 -1
  377. package/dist/admin/TokenTypeSelect-HMyBvTwA.js.map +0 -1
  378. package/dist/admin/TokenTypeSelect-vAeDNBmG.mjs.map +0 -1
  379. package/dist/admin/UseCasePage-VlWOTc-k.js.map +0 -1
  380. package/dist/admin/index-6pjQxyB0.mjs.map +0 -1
  381. package/dist/admin/index-qf9IxVeZ.js.map +0 -1
  382. package/dist/admin/src/pages/InstalledPluginsPage.d.ts +0 -3
  383. package/dist/admin/validation-ODUz3BOU.js.map +0 -1
  384. package/dist/admin/validation-YqwSDeRS.mjs.map +0 -1
  385. package/dist/ee/server/index.js +0 -2180
  386. package/dist/ee/server/index.js.map +0 -1
  387. package/dist/ee/server/index.mjs +0 -2175
  388. package/dist/ee/server/index.mjs.map +0 -1
  389. package/strapi-server.js +0 -18
@@ -1 +1 @@
1
- {"version":3,"file":"ListView-vbeM6zm_.mjs","sources":["../../admin/src/pages/Settings/pages/TransferTokens/ListView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { Data } from '@strapi/types';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link, useNavigate } from 'react-router-dom';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useOnce } from '../../../../hooks/useOnce';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport {\n useDeleteTransferTokenMutation,\n useGetTransferTokensQuery,\n} from '../../../../services/transferTokens';\nimport { TRANSFER_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { Table } from '../../components/Tokens/Table';\n\nconst tableHeaders = [\n {\n name: 'name',\n label: {\n id: 'Settings.tokens.ListView.headers.name',\n defaultMessage: 'Name',\n },\n sortable: true,\n },\n {\n name: 'description',\n label: {\n id: 'Settings.tokens.ListView.headers.description',\n defaultMessage: 'Description',\n },\n sortable: false,\n },\n {\n name: 'createdAt',\n label: {\n id: 'Settings.tokens.ListView.headers.createdAt',\n defaultMessage: 'Created at',\n },\n sortable: false,\n },\n {\n name: 'lastUsedAt',\n label: {\n id: 'Settings.tokens.ListView.headers.lastUsedAt',\n defaultMessage: 'Last used',\n },\n sortable: false,\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * ListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens']\n );\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canCreate, canDelete, canUpdate, canRead },\n } = useRBAC(permissions);\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n React.useEffect(() => {\n navigate({ search: qs.stringify({ sort: 'name:ASC' }, { encode: false }) });\n }, [navigate]);\n\n useOnce(() => {\n trackUsage('willAccessTokenList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n });\n\n const headers = tableHeaders.map((header) => ({\n ...header,\n label: formatMessage(header.label),\n }));\n\n const {\n data: transferTokens = [],\n isLoading: isLoadingTokens,\n error,\n } = useGetTransferTokensQuery(undefined, {\n skip: !canRead,\n });\n\n React.useEffect(() => {\n if (transferTokens) {\n trackUsage('didAccessTokenList', {\n number: transferTokens.length,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }\n }, [trackUsage, transferTokens]);\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n const [deleteToken] = useDeleteTransferTokenMutation();\n\n const handleDelete = async (id: Data.ID) => {\n try {\n const res = await deleteToken(id);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occured' }),\n });\n }\n };\n\n const isLoading = isLoadingTokens || isLoadingRBAC;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Transfer Tokens',\n }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({\n id: 'Settings.transferTokens.title',\n defaultMessage: 'Transfer Tokens',\n })}\n subtitle={formatMessage({\n id: 'Settings.transferTokens.description',\n defaultMessage: '\"List of generated transfer tokens\"', // TODO change this message\n })}\n primaryAction={\n canCreate ? (\n <LinkButton\n role=\"button\"\n tag={Link}\n data-testid=\"create-transfer-token-button\"\n startIcon={<Plus />}\n size=\"S\"\n onClick={() =>\n trackUsage('willAddTokenFromList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n })\n }\n to=\"/settings/transfer-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.transferTokens.create',\n defaultMessage: 'Create new Transfer Token',\n })}\n </LinkButton>\n ) : undefined\n }\n />\n {!canRead ? (\n <Page.NoPermissions />\n ) : (\n <Page.Main aria-busy={isLoading}>\n <Layouts.Content>\n {transferTokens.length > 0 && (\n <Table\n permissions={{ canRead, canDelete, canUpdate }}\n headers={headers}\n isLoading={isLoading}\n onConfirmDelete={handleDelete}\n tokens={transferTokens}\n tokenType={TRANSFER_TOKEN_TYPE}\n />\n )}\n {canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n action={\n <LinkButton\n tag={Link}\n variant=\"secondary\"\n startIcon={<Plus />}\n to=\"/settings/transfer-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.transferTokens.addNewToken',\n defaultMessage: 'Add new Transfer Token',\n })}\n </LinkButton>\n }\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.addFirstToken',\n defaultMessage: 'Add your first Transfer Token',\n })}\n />\n ) : null}\n {!canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.emptyStateLayout',\n defaultMessage: 'You don’t have any content yet...',\n })}\n />\n ) : null}\n </Layouts.Content>\n </Page.Main>\n )}\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListView />\n </Page.Protect>\n );\n};\n\nexport { ListView, ProtectedListView };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListView-WuLI8P9g.mjs","sources":["../../admin/src/pages/Settings/pages/TransferTokens/ListView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { Data } from '@strapi/types';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link, useNavigate } from 'react-router-dom';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useOnce } from '../../../../hooks/useOnce';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport {\n useDeleteTransferTokenMutation,\n useGetTransferTokensQuery,\n} from '../../../../services/transferTokens';\nimport { TRANSFER_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { Table } from '../../components/Tokens/Table';\n\nconst tableHeaders = [\n {\n name: 'name',\n label: {\n id: 'Settings.tokens.ListView.headers.name',\n defaultMessage: 'Name',\n },\n sortable: true,\n },\n {\n name: 'description',\n label: {\n id: 'Settings.tokens.ListView.headers.description',\n defaultMessage: 'Description',\n },\n sortable: false,\n },\n {\n name: 'createdAt',\n label: {\n id: 'Settings.tokens.ListView.headers.createdAt',\n defaultMessage: 'Created at',\n },\n sortable: false,\n },\n {\n name: 'lastUsedAt',\n label: {\n id: 'Settings.tokens.ListView.headers.lastUsedAt',\n defaultMessage: 'Last used',\n },\n sortable: false,\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * ListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens']\n );\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canCreate, canDelete, canUpdate, canRead },\n } = useRBAC(permissions);\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n React.useEffect(() => {\n navigate({ search: qs.stringify({ sort: 'name:ASC' }, { encode: false }) });\n }, [navigate]);\n\n useOnce(() => {\n trackUsage('willAccessTokenList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n });\n\n const headers = tableHeaders.map((header) => ({\n ...header,\n label: formatMessage(header.label),\n }));\n\n const {\n data: transferTokens = [],\n isLoading: isLoadingTokens,\n error,\n } = useGetTransferTokensQuery(undefined, {\n skip: !canRead,\n });\n\n React.useEffect(() => {\n if (transferTokens) {\n trackUsage('didAccessTokenList', {\n number: transferTokens.length,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }\n }, [trackUsage, transferTokens]);\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n const [deleteToken] = useDeleteTransferTokenMutation();\n\n const handleDelete = async (id: Data.ID) => {\n try {\n const res = await deleteToken(id);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occured' }),\n });\n }\n };\n\n const isLoading = isLoadingTokens || isLoadingRBAC;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Transfer Tokens',\n }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({\n id: 'Settings.transferTokens.title',\n defaultMessage: 'Transfer Tokens',\n })}\n subtitle={formatMessage({\n id: 'Settings.transferTokens.description',\n defaultMessage: '\"List of generated transfer tokens\"', // TODO change this message\n })}\n primaryAction={\n canCreate ? (\n <LinkButton\n role=\"button\"\n tag={Link}\n data-testid=\"create-transfer-token-button\"\n startIcon={<Plus />}\n size=\"S\"\n onClick={() =>\n trackUsage('willAddTokenFromList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n })\n }\n to=\"/settings/transfer-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.transferTokens.create',\n defaultMessage: 'Create new Transfer Token',\n })}\n </LinkButton>\n ) : undefined\n }\n />\n {!canRead ? (\n <Page.NoPermissions />\n ) : (\n <Page.Main aria-busy={isLoading}>\n <Layouts.Content>\n {transferTokens.length > 0 && (\n <Table\n permissions={{ canRead, canDelete, canUpdate }}\n headers={headers}\n isLoading={isLoading}\n onConfirmDelete={handleDelete}\n tokens={transferTokens}\n tokenType={TRANSFER_TOKEN_TYPE}\n />\n )}\n {canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n action={\n <LinkButton\n tag={Link}\n variant=\"secondary\"\n startIcon={<Plus />}\n to=\"/settings/transfer-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.transferTokens.addNewToken',\n defaultMessage: 'Add new Transfer Token',\n })}\n </LinkButton>\n }\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.addFirstToken',\n defaultMessage: 'Add your first Transfer Token',\n })}\n />\n ) : null}\n {!canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.emptyStateLayout',\n defaultMessage: 'You don’t have any content yet...',\n })}\n />\n ) : null}\n </Layouts.Content>\n </Page.Main>\n )}\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListView />\n </Page.Protect>\n );\n};\n\nexport { ListView, ProtectedListView };\n"],"names":[],"mappings":"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"}
@@ -6,12 +6,12 @@ import { EmptyDocuments } from '@strapi/icons/symbols';
6
6
  import * as qs from 'qs';
7
7
  import { useIntl } from 'react-intl';
8
8
  import { useNavigate, Link } from 'react-router-dom';
9
- import { l as useGuidedTour, b as Layouts } from './index-6pjQxyB0.mjs';
10
- import { b as useTypedSelector, P as Page, a as useNotification, k as useRBAC, d as useTracking, f as useAPIErrorHandler } from './Theme-PrUuuGtN.mjs';
9
+ import { b as useTypedSelector, P as Page, a as useNotification, k as useRBAC, c as useTracking, m as useGuidedTour, e as useAPIErrorHandler } from './Theme-frC82ceE.mjs';
10
+ import { b as Layouts } from './index-ukxNzreH.mjs';
11
11
  import { u as useOnce } from './useOnce-GJ2Ta2mZ.mjs';
12
- import { u as useGetAPITokensQuery, a as useDeleteAPITokenMutation } from './apiTokens-YMUmHnrH.mjs';
12
+ import { u as useGetAPITokensQuery, a as useDeleteAPITokenMutation } from './apiTokens-GQe-GqwZ.mjs';
13
13
  import { A as API_TOKEN_TYPE } from './constants-EoEtSd4i.mjs';
14
- import { T as Table } from './Table-YZ9eQlTc.mjs';
14
+ import { T as Table } from './Table-a9i0e2LJ.mjs';
15
15
 
16
16
  const TABLE_HEADERS = [
17
17
  {
@@ -197,4 +197,4 @@ const ProtectedListView = () => {
197
197
  };
198
198
 
199
199
  export { ListView, ProtectedListView };
200
- //# sourceMappingURL=ListView-gd-uUYo3.mjs.map
200
+ //# sourceMappingURL=ListView-Xh4ewfST.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListView-gd-uUYo3.mjs","sources":["../../admin/src/pages/Settings/pages/ApiTokens/ListView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { Data } from '@strapi/types';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link, useNavigate } from 'react-router-dom';\n\nimport { useGuidedTour } from '../../../../components/GuidedTour/Provider';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useOnce } from '../../../../hooks/useOnce';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { useDeleteAPITokenMutation, useGetAPITokensQuery } from '../../../../services/apiTokens';\nimport { API_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { Table } from '../../components/Tokens/Table';\n\nconst TABLE_HEADERS = [\n {\n name: 'name',\n label: {\n id: 'Settings.apiTokens.ListView.headers.name',\n defaultMessage: 'Name',\n },\n sortable: true,\n },\n {\n name: 'description',\n label: {\n id: 'Settings.apiTokens.ListView.headers.description',\n defaultMessage: 'Description',\n },\n sortable: false,\n },\n {\n name: 'createdAt',\n label: {\n id: 'Settings.apiTokens.ListView.headers.createdAt',\n defaultMessage: 'Created at',\n },\n sortable: false,\n },\n {\n name: 'lastUsedAt',\n label: {\n id: 'Settings.apiTokens.ListView.headers.lastUsedAt',\n defaultMessage: 'Last used',\n },\n sortable: false,\n },\n];\n\nexport const ListView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens']\n );\n const {\n allowedActions: { canRead, canCreate, canDelete, canUpdate },\n } = useRBAC(permissions);\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const startSection = useGuidedTour('ListView', (state) => state.startSection);\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n React.useEffect(() => {\n startSection('apiTokens');\n }, [startSection]);\n\n React.useEffect(() => {\n navigate({ search: qs.stringify({ sort: 'name:ASC' }, { encode: false }) });\n }, [navigate]);\n\n const headers = TABLE_HEADERS.map((header) => ({\n ...header,\n label: formatMessage(header.label),\n }));\n\n useOnce(() => {\n trackUsage('willAccessTokenList', {\n tokenType: API_TOKEN_TYPE,\n });\n });\n\n const { data: apiTokens = [], isLoading, error } = useGetAPITokensQuery();\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n React.useEffect(() => {\n trackUsage('didAccessTokenList', { number: apiTokens.length, tokenType: API_TOKEN_TYPE });\n }, [apiTokens, trackUsage]);\n\n const [deleteToken] = useDeleteAPITokenMutation();\n\n const handleDelete = async (id: Data.ID) => {\n try {\n const res = await deleteToken(id);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n trackUsage('didDeleteToken');\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'Something went wrong',\n }),\n });\n }\n };\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n { name: 'API Tokens' }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({ id: 'Settings.apiTokens.title', defaultMessage: 'API Tokens' })}\n subtitle={formatMessage({\n id: 'Settings.apiTokens.description',\n defaultMessage: 'List of generated tokens to consume the API',\n })}\n primaryAction={\n canCreate && (\n <LinkButton\n tag={Link}\n data-testid=\"create-api-token-button\"\n startIcon={<Plus />}\n size=\"S\"\n onClick={() =>\n trackUsage('willAddTokenFromList', {\n tokenType: API_TOKEN_TYPE,\n })\n }\n to=\"/settings/api-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.apiTokens.create',\n defaultMessage: 'Create new API Token',\n })}\n </LinkButton>\n )\n }\n />\n {!canRead ? (\n <Page.NoPermissions />\n ) : (\n <Page.Main aria-busy={isLoading}>\n <Layouts.Content>\n {apiTokens.length > 0 && (\n <Table\n permissions={{ canRead, canDelete, canUpdate }}\n headers={headers}\n isLoading={isLoading}\n onConfirmDelete={handleDelete}\n tokens={apiTokens}\n tokenType={API_TOKEN_TYPE}\n />\n )}\n {canCreate && apiTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.apiTokens.addFirstToken',\n defaultMessage: 'Add your first API Token',\n })}\n action={\n <LinkButton\n tag={Link}\n variant=\"secondary\"\n startIcon={<Plus />}\n to=\"/settings/api-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.apiTokens.addNewToken',\n defaultMessage: 'Add new API Token',\n })}\n </LinkButton>\n }\n />\n ) : null}\n {!canCreate && apiTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.apiTokens.emptyStateLayout',\n defaultMessage: 'You don’t have any content yet...',\n })}\n />\n ) : null}\n </Layouts.Content>\n </Page.Main>\n )}\n </>\n );\n};\n\nexport const ProtectedListView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens'].main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListView />\n </Page.Protect>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListView-Xh4ewfST.mjs","sources":["../../admin/src/pages/Settings/pages/ApiTokens/ListView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { Data } from '@strapi/types';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link, useNavigate } from 'react-router-dom';\n\nimport { useGuidedTour } from '../../../../components/GuidedTour/Provider';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useOnce } from '../../../../hooks/useOnce';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { useDeleteAPITokenMutation, useGetAPITokensQuery } from '../../../../services/apiTokens';\nimport { API_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { Table } from '../../components/Tokens/Table';\n\nconst TABLE_HEADERS = [\n {\n name: 'name',\n label: {\n id: 'Settings.apiTokens.ListView.headers.name',\n defaultMessage: 'Name',\n },\n sortable: true,\n },\n {\n name: 'description',\n label: {\n id: 'Settings.apiTokens.ListView.headers.description',\n defaultMessage: 'Description',\n },\n sortable: false,\n },\n {\n name: 'createdAt',\n label: {\n id: 'Settings.apiTokens.ListView.headers.createdAt',\n defaultMessage: 'Created at',\n },\n sortable: false,\n },\n {\n name: 'lastUsedAt',\n label: {\n id: 'Settings.apiTokens.ListView.headers.lastUsedAt',\n defaultMessage: 'Last used',\n },\n sortable: false,\n },\n];\n\nexport const ListView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens']\n );\n const {\n allowedActions: { canRead, canCreate, canDelete, canUpdate },\n } = useRBAC(permissions);\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const startSection = useGuidedTour('ListView', (state) => state.startSection);\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n React.useEffect(() => {\n startSection('apiTokens');\n }, [startSection]);\n\n React.useEffect(() => {\n navigate({ search: qs.stringify({ sort: 'name:ASC' }, { encode: false }) });\n }, [navigate]);\n\n const headers = TABLE_HEADERS.map((header) => ({\n ...header,\n label: formatMessage(header.label),\n }));\n\n useOnce(() => {\n trackUsage('willAccessTokenList', {\n tokenType: API_TOKEN_TYPE,\n });\n });\n\n const { data: apiTokens = [], isLoading, error } = useGetAPITokensQuery();\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n React.useEffect(() => {\n trackUsage('didAccessTokenList', { number: apiTokens.length, tokenType: API_TOKEN_TYPE });\n }, [apiTokens, trackUsage]);\n\n const [deleteToken] = useDeleteAPITokenMutation();\n\n const handleDelete = async (id: Data.ID) => {\n try {\n const res = await deleteToken(id);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n trackUsage('didDeleteToken');\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'Something went wrong',\n }),\n });\n }\n };\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n { name: 'API Tokens' }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({ id: 'Settings.apiTokens.title', defaultMessage: 'API Tokens' })}\n subtitle={formatMessage({\n id: 'Settings.apiTokens.description',\n defaultMessage: 'List of generated tokens to consume the API',\n })}\n primaryAction={\n canCreate && (\n <LinkButton\n tag={Link}\n data-testid=\"create-api-token-button\"\n startIcon={<Plus />}\n size=\"S\"\n onClick={() =>\n trackUsage('willAddTokenFromList', {\n tokenType: API_TOKEN_TYPE,\n })\n }\n to=\"/settings/api-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.apiTokens.create',\n defaultMessage: 'Create new API Token',\n })}\n </LinkButton>\n )\n }\n />\n {!canRead ? (\n <Page.NoPermissions />\n ) : (\n <Page.Main aria-busy={isLoading}>\n <Layouts.Content>\n {apiTokens.length > 0 && (\n <Table\n permissions={{ canRead, canDelete, canUpdate }}\n headers={headers}\n isLoading={isLoading}\n onConfirmDelete={handleDelete}\n tokens={apiTokens}\n tokenType={API_TOKEN_TYPE}\n />\n )}\n {canCreate && apiTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.apiTokens.addFirstToken',\n defaultMessage: 'Add your first API Token',\n })}\n action={\n <LinkButton\n tag={Link}\n variant=\"secondary\"\n startIcon={<Plus />}\n to=\"/settings/api-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.apiTokens.addNewToken',\n defaultMessage: 'Add new API Token',\n })}\n </LinkButton>\n }\n />\n ) : null}\n {!canCreate && apiTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.apiTokens.emptyStateLayout',\n defaultMessage: 'You don’t have any content yet...',\n })}\n />\n ) : null}\n </Layouts.Content>\n </Page.Main>\n )}\n </>\n );\n};\n\nexport const ProtectedListView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['api-tokens'].main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListView />\n </Page.Protect>\n );\n};\n"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@ import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { Divider, Box, Flex, Typography } from '@strapi/design-system';
3
3
  import { useIntl } from 'react-intl';
4
4
  import { styled } from 'styled-components';
5
- import { d as Login } from './index-6pjQxyB0.mjs';
6
- import { l as useGetProvidersQuery } from './Theme-PrUuuGtN.mjs';
7
- import { S as SSOProviders } from './SSOProviders-nMmBLr8g.mjs';
5
+ import { d as Login } from './index-ukxNzreH.mjs';
6
+ import { l as useGetProvidersQuery } from './Theme-frC82ceE.mjs';
7
+ import { S as SSOProviders } from './SSOProviders-sy3Xon2A.mjs';
8
8
 
9
9
  const DividerFull = styled(Divider)`
10
10
  flex: 1;
@@ -28,4 +28,4 @@ const LoginEE = (loginProps) => {
28
28
  };
29
29
 
30
30
  export { LoginEE };
31
- //# sourceMappingURL=Login-VnmdXnMj.mjs.map
31
+ //# sourceMappingURL=Login-Che5xFmG.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Login-VnmdXnMj.mjs","sources":["../../ee/admin/src/pages/AuthPage/components/Login.tsx"],"sourcesContent":["import { Box, Divider, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { Login, LoginProps } from '../../../../../../admin/src/pages/Auth/components/Login';\nimport { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nconst LoginEE = (loginProps: LoginProps) => {\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Login {...loginProps} />;\n }\n\n return (\n <Login {...loginProps}>\n <Box paddingTop={7}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.divider' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <SSOProviders providers={providers} displayAllProviders={false} />\n </Flex>\n </Box>\n </Login>\n );\n};\n\nexport { LoginEE };\n"],"names":[],"mappings":";;;;;;;;AASA,MAAM,WAAA,GAAc,OAAO,OAAO,CAAA,CAAA;AAAA;AAAA,CAAA,CAAA;AAI5B,MAAA,OAAA,GAAU,CAAC,UAA2B,KAAA;AAC1C,EAAM,MAAA,EAAE,aAAc,EAAA,GAAI,OAAQ,EAAA,CAAA;AAClC,EAAM,MAAA,EAAE,WAAW,IAAM,EAAA,SAAA,GAAY,EAAG,EAAA,GAAI,qBAAqB,KAAW,CAAA,EAAA;AAAA,IAC1E,IAAA,EAAM,CAAC,MAAO,CAAA,MAAA,CAAO,SAAS,SAAU,CAAA,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,GAAG,CAAA;AAAA,GACnE,CAAA,CAAA;AAED,EAAA,IACE,CAAC,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,UAAU,MAAO,CAAA,MAAA,CAAO,QAAS,CAAA,GAAG,CAC3D,IAAA,CAAC,SAAa,IAAA,SAAA,CAAU,WAAW,CACpC,EAAA;AACA,IAAO,uBAAA,GAAA,CAAC,KAAO,EAAA,EAAA,GAAG,UAAY,EAAA,CAAA,CAAA;AAAA,GAChC;AAEA,EAAA,uBACG,GAAA,CAAA,KAAA,EAAA,EAAO,GAAG,UAAA,EACT,8BAAC,GAAI,EAAA,EAAA,UAAA,EAAY,CACf,EAAA,QAAA,kBAAA,IAAA,CAAC,QAAK,SAAU,EAAA,QAAA,EAAS,UAAW,EAAA,SAAA,EAAU,KAAK,CACjD,EAAA,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,IACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,WAAY,EAAA,EAAA,CAAA;AAAA,0BACZ,GAAI,EAAA,EAAA,WAAA,EAAa,GAAG,YAAc,EAAA,CAAA,EACjC,8BAAC,UAAW,EAAA,EAAA,OAAA,EAAQ,OAAQ,EAAA,SAAA,EAAU,cACnC,QAAc,EAAA,aAAA,CAAA,EAAE,IAAI,wBAAyB,EAAC,GACjD,CACF,EAAA,CAAA;AAAA,0BACC,WAAY,EAAA,EAAA,CAAA;AAAA,KACf,EAAA,CAAA;AAAA,oBACC,GAAA,CAAA,YAAA,EAAA,EAAa,SAAsB,EAAA,mBAAA,EAAqB,KAAO,EAAA,CAAA;AAAA,GAAA,EAClE,GACF,CACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Login-Che5xFmG.mjs","sources":["../../ee/admin/src/pages/AuthPage/components/Login.tsx"],"sourcesContent":["import { Box, Divider, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { Login, LoginProps } from '../../../../../../admin/src/pages/Auth/components/Login';\nimport { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nconst LoginEE = (loginProps: LoginProps) => {\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Login {...loginProps} />;\n }\n\n return (\n <Login {...loginProps}>\n <Box paddingTop={7}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.divider' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <SSOProviders providers={providers} displayAllProviders={false} />\n </Flex>\n </Box>\n </Login>\n );\n};\n\nexport { LoginEE };\n"],"names":[],"mappings":";;;;;;;;AASA,MAAM,WAAA,GAAc,OAAO,OAAO,CAAA,CAAA;AAAA;AAAA,CAAA,CAAA;AAI5B,MAAA,OAAA,GAAU,CAAC,UAA2B,KAAA;AAC1C,EAAM,MAAA,EAAE,aAAc,EAAA,GAAI,OAAQ,EAAA,CAAA;AAClC,EAAM,MAAA,EAAE,WAAW,IAAM,EAAA,SAAA,GAAY,EAAG,EAAA,GAAI,qBAAqB,KAAW,CAAA,EAAA;AAAA,IAC1E,IAAA,EAAM,CAAC,MAAO,CAAA,MAAA,CAAO,SAAS,SAAU,CAAA,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,GAAG,CAAA;AAAA,GACnE,CAAA,CAAA;AAED,EAAA,IACE,CAAC,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,UAAU,MAAO,CAAA,MAAA,CAAO,QAAS,CAAA,GAAG,CAC3D,IAAA,CAAC,SAAa,IAAA,SAAA,CAAU,WAAW,CACpC,EAAA;AACA,IAAO,uBAAA,GAAA,CAAC,KAAO,EAAA,EAAA,GAAG,UAAY,EAAA,CAAA,CAAA;AAAA,GAChC;AAEA,EAAA,uBACG,GAAA,CAAA,KAAA,EAAA,EAAO,GAAG,UAAA,EACT,8BAAC,GAAI,EAAA,EAAA,UAAA,EAAY,CACf,EAAA,QAAA,kBAAA,IAAA,CAAC,QAAK,SAAU,EAAA,QAAA,EAAS,UAAW,EAAA,SAAA,EAAU,KAAK,CACjD,EAAA,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,IACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,WAAY,EAAA,EAAA,CAAA;AAAA,0BACZ,GAAI,EAAA,EAAA,WAAA,EAAa,GAAG,YAAc,EAAA,CAAA,EACjC,8BAAC,UAAW,EAAA,EAAA,OAAA,EAAQ,OAAQ,EAAA,SAAA,EAAU,cACnC,QAAc,EAAA,aAAA,CAAA,EAAE,IAAI,wBAAyB,EAAC,GACjD,CACF,EAAA,CAAA;AAAA,0BACC,WAAY,EAAA,EAAA,CAAA;AAAA,KACf,EAAA,CAAA;AAAA,oBACC,GAAA,CAAA,YAAA,EAAA,EAAa,SAAsB,EAAA,mBAAA,EAAqB,KAAO,EAAA,CAAA;AAAA,GAAA,EAClE,GACF,CACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -6,9 +6,9 @@ const jsxRuntime = require('react/jsx-runtime');
6
6
  const designSystem = require('@strapi/design-system');
7
7
  const reactIntl = require('react-intl');
8
8
  const styledComponents = require('styled-components');
9
- const index = require('./index-qf9IxVeZ.js');
10
- const Theme = require('./Theme-7W0we6BI.js');
11
- const SSOProviders = require('./SSOProviders-QBcyB9VI.js');
9
+ const index = require('./index-h7R8mHHX.js');
10
+ const Theme = require('./Theme-y_rWTknM.js');
11
+ const SSOProviders = require('./SSOProviders-9-d1vYXb.js');
12
12
 
13
13
  const DividerFull = styledComponents.styled(designSystem.Divider)`
14
14
  flex: 1;
@@ -32,4 +32,4 @@ const LoginEE = (loginProps) => {
32
32
  };
33
33
 
34
34
  exports.LoginEE = LoginEE;
35
- //# sourceMappingURL=Login-KEjxL7NL.js.map
35
+ //# sourceMappingURL=Login-FibrFNCh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Login-KEjxL7NL.js","sources":["../../ee/admin/src/pages/AuthPage/components/Login.tsx"],"sourcesContent":["import { Box, Divider, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { Login, LoginProps } from '../../../../../../admin/src/pages/Auth/components/Login';\nimport { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nconst LoginEE = (loginProps: LoginProps) => {\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Login {...loginProps} />;\n }\n\n return (\n <Login {...loginProps}>\n <Box paddingTop={7}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.divider' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <SSOProviders providers={providers} displayAllProviders={false} />\n </Flex>\n </Box>\n </Login>\n );\n};\n\nexport { LoginEE };\n"],"names":["styled","Divider","useIntl","useGetProvidersQuery","jsx","Login","Box","jsxs","Flex","Typography","SSOProviders"],"mappings":";;;;;;;;;;;;AASA,MAAM,WAAA,GAAcA,wBAAOC,oBAAO,CAAA,CAAA;AAAA;AAAA,CAAA,CAAA;AAI5B,MAAA,OAAA,GAAU,CAAC,UAA2B,KAAA;AAC1C,EAAM,MAAA,EAAE,aAAc,EAAA,GAAIC,iBAAQ,EAAA,CAAA;AAClC,EAAM,MAAA,EAAE,WAAW,IAAM,EAAA,SAAA,GAAY,EAAG,EAAA,GAAIC,2BAAqB,KAAW,CAAA,EAAA;AAAA,IAC1E,IAAA,EAAM,CAAC,MAAO,CAAA,MAAA,CAAO,SAAS,SAAU,CAAA,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,GAAG,CAAA;AAAA,GACnE,CAAA,CAAA;AAED,EAAA,IACE,CAAC,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,UAAU,MAAO,CAAA,MAAA,CAAO,QAAS,CAAA,GAAG,CAC3D,IAAA,CAAC,SAAa,IAAA,SAAA,CAAU,WAAW,CACpC,EAAA;AACA,IAAO,uBAAAC,cAAA,CAACC,WAAO,EAAA,EAAA,GAAG,UAAY,EAAA,CAAA,CAAA;AAAA,GAChC;AAEA,EAAA,uBACGD,cAAA,CAAAC,WAAA,EAAA,EAAO,GAAG,UAAA,EACT,yCAACC,gBAAI,EAAA,EAAA,UAAA,EAAY,CACf,EAAA,QAAA,kBAAAC,eAAA,CAACC,qBAAK,SAAU,EAAA,QAAA,EAAS,UAAW,EAAA,SAAA,EAAU,KAAK,CACjD,EAAA,QAAA,EAAA;AAAA,oBAAAD,eAAA,CAACC,iBACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAAJ,cAAA,CAAC,WAAY,EAAA,EAAA,CAAA;AAAA,qCACZE,gBAAI,EAAA,EAAA,WAAA,EAAa,GAAG,YAAc,EAAA,CAAA,EACjC,yCAACG,uBAAW,EAAA,EAAA,OAAA,EAAQ,OAAQ,EAAA,SAAA,EAAU,cACnC,QAAc,EAAA,aAAA,CAAA,EAAE,IAAI,wBAAyB,EAAC,GACjD,CACF,EAAA,CAAA;AAAA,qCACC,WAAY,EAAA,EAAA,CAAA;AAAA,KACf,EAAA,CAAA;AAAA,oBACCL,cAAA,CAAAM,yBAAA,EAAA,EAAa,SAAsB,EAAA,mBAAA,EAAqB,KAAO,EAAA,CAAA;AAAA,GAAA,EAClE,GACF,CACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Login-FibrFNCh.js","sources":["../../ee/admin/src/pages/AuthPage/components/Login.tsx"],"sourcesContent":["import { Box, Divider, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { Login, LoginProps } from '../../../../../../admin/src/pages/Auth/components/Login';\nimport { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nconst LoginEE = (loginProps: LoginProps) => {\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Login {...loginProps} />;\n }\n\n return (\n <Login {...loginProps}>\n <Box paddingTop={7}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.divider' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <SSOProviders providers={providers} displayAllProviders={false} />\n </Flex>\n </Box>\n </Login>\n );\n};\n\nexport { LoginEE };\n"],"names":["styled","Divider","useIntl","useGetProvidersQuery","jsx","Login","Box","jsxs","Flex","Typography","SSOProviders"],"mappings":";;;;;;;;;;;;AASA,MAAM,WAAA,GAAcA,wBAAOC,oBAAO,CAAA,CAAA;AAAA;AAAA,CAAA,CAAA;AAI5B,MAAA,OAAA,GAAU,CAAC,UAA2B,KAAA;AAC1C,EAAM,MAAA,EAAE,aAAc,EAAA,GAAIC,iBAAQ,EAAA,CAAA;AAClC,EAAM,MAAA,EAAE,WAAW,IAAM,EAAA,SAAA,GAAY,EAAG,EAAA,GAAIC,2BAAqB,KAAW,CAAA,EAAA;AAAA,IAC1E,IAAA,EAAM,CAAC,MAAO,CAAA,MAAA,CAAO,SAAS,SAAU,CAAA,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,GAAG,CAAA;AAAA,GACnE,CAAA,CAAA;AAED,EAAA,IACE,CAAC,MAAA,CAAO,MAAO,CAAA,QAAA,CAAS,UAAU,MAAO,CAAA,MAAA,CAAO,QAAS,CAAA,GAAG,CAC3D,IAAA,CAAC,SAAa,IAAA,SAAA,CAAU,WAAW,CACpC,EAAA;AACA,IAAO,uBAAAC,cAAA,CAACC,WAAO,EAAA,EAAA,GAAG,UAAY,EAAA,CAAA,CAAA;AAAA,GAChC;AAEA,EAAA,uBACGD,cAAA,CAAAC,WAAA,EAAA,EAAO,GAAG,UAAA,EACT,yCAACC,gBAAI,EAAA,EAAA,UAAA,EAAY,CACf,EAAA,QAAA,kBAAAC,eAAA,CAACC,qBAAK,SAAU,EAAA,QAAA,EAAS,UAAW,EAAA,SAAA,EAAU,KAAK,CACjD,EAAA,QAAA,EAAA;AAAA,oBAAAD,eAAA,CAACC,iBACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAAJ,cAAA,CAAC,WAAY,EAAA,EAAA,CAAA;AAAA,qCACZE,gBAAI,EAAA,EAAA,WAAA,EAAa,GAAG,YAAc,EAAA,CAAA,EACjC,yCAACG,uBAAW,EAAA,EAAA,OAAA,EAAQ,OAAQ,EAAA,SAAA,EAAU,cACnC,QAAc,EAAA,aAAA,CAAA,EAAE,IAAI,wBAAyB,EAAC,GACjD,CACF,EAAA,CAAA;AAAA,qCACC,WAAY,EAAA,EAAA,CAAA;AAAA,KACf,EAAA,CAAA;AAAA,oBACCL,cAAA,CAAAM,yBAAA,EAAA,EAAa,SAAsB,EAAA,mBAAA,EAAqB,KAAO,EAAA,CAAA;AAAA,GAAA,EAClE,GACF,CACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { useIntl } from 'react-intl';
3
- import { m as getBasename } from './index-6pjQxyB0.mjs';
4
- import { a as MagicLinkWrapper } from './SelectRoles-82KlaNv9.mjs';
3
+ import { l as getBasename } from './index-ukxNzreH.mjs';
4
+ import { a as MagicLinkWrapper } from './SelectRoles-MZNlONGM.mjs';
5
5
 
6
6
  const MagicLinkEE = ({ registrationToken }) => {
7
7
  const { formatMessage } = useIntl();
@@ -24,4 +24,4 @@ const MagicLinkEE = ({ registrationToken }) => {
24
24
  };
25
25
 
26
26
  export { MagicLinkEE };
27
- //# sourceMappingURL=MagicLinkEE-lbZ8IiEW.mjs.map
27
+ //# sourceMappingURL=MagicLinkEE-FrMh9qpI.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MagicLinkEE-lbZ8IiEW.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.tsx"],"sourcesContent":["import { useIntl } from 'react-intl';\n\nimport { getBasename } from '../../../../../../../../admin/src/core/utils/basename';\nimport { MagicLinkWrapper } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper';\n\nimport type { MagicLinkCEProps } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkCE';\n\n// FIXME replace with parts compo when ready\nexport const MagicLinkEE = ({ registrationToken }: MagicLinkCEProps) => {\n const { formatMessage } = useIntl();\n\n if (registrationToken) {\n return (\n <MagicLinkWrapper\n target={`${\n window.location.origin\n }${getBasename()}/auth/register?registrationToken=${registrationToken}`}\n >\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect',\n defaultMessage: 'Copy and share this link to give access to this user',\n })}\n </MagicLinkWrapper>\n );\n }\n\n return (\n <MagicLinkWrapper target={`${window.location.origin}${getBasename()}/auth/login`}>\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect.sso',\n defaultMessage:\n 'Send this link to the user, the first login can be made via a SSO provider.',\n })}\n </MagicLinkWrapper>\n );\n};\n"],"names":[],"mappings":";;;;;AAQO,MAAM,WAAc,GAAA,CAAC,EAAE,iBAAA,EAA0C,KAAA;AACtE,EAAM,MAAA,EAAE,aAAc,EAAA,GAAI,OAAQ,EAAA,CAAA;AAElC,EAAA,IAAI,iBAAmB,EAAA;AACrB,IACE,uBAAA,GAAA;AAAA,MAAC,gBAAA;AAAA,MAAA;AAAA,QACC,MAAA,EAAQ,GACN,MAAO,CAAA,QAAA,CAAS,MAClB,CAAG,EAAA,WAAA,EAAa,CAAA,iCAAA,EAAoC,iBAAiB,CAAA,CAAA;AAAA,QAEpE,QAAc,EAAA,aAAA,CAAA;AAAA,UACb,EAAI,EAAA,wCAAA;AAAA,UACJ,cAAgB,EAAA,sDAAA;AAAA,SACjB,CAAA;AAAA,OAAA;AAAA,KACH,CAAA;AAAA,GAEJ;AAEA,EACE,uBAAA,GAAA,CAAC,gBAAiB,EAAA,EAAA,MAAA,EAAQ,CAAG,EAAA,MAAA,CAAO,QAAS,CAAA,MAAM,CAAG,EAAA,WAAA,EAAa,CAAA,WAAA,CAAA,EAChE,QAAc,EAAA,aAAA,CAAA;AAAA,IACb,EAAI,EAAA,4CAAA;AAAA,IACJ,cACE,EAAA,6EAAA;AAAA,GACH,CACH,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"MagicLinkEE-FrMh9qpI.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.tsx"],"sourcesContent":["import { useIntl } from 'react-intl';\n\nimport { getBasename } from '../../../../../../../../admin/src/core/utils/basename';\nimport { MagicLinkWrapper } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper';\n\nimport type { MagicLinkCEProps } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkCE';\n\n// FIXME replace with parts compo when ready\nexport const MagicLinkEE = ({ registrationToken }: MagicLinkCEProps) => {\n const { formatMessage } = useIntl();\n\n if (registrationToken) {\n return (\n <MagicLinkWrapper\n target={`${\n window.location.origin\n }${getBasename()}/auth/register?registrationToken=${registrationToken}`}\n >\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect',\n defaultMessage: 'Copy and share this link to give access to this user',\n })}\n </MagicLinkWrapper>\n );\n }\n\n return (\n <MagicLinkWrapper target={`${window.location.origin}${getBasename()}/auth/login`}>\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect.sso',\n defaultMessage:\n 'Send this link to the user, the first login can be made via a SSO provider.',\n })}\n </MagicLinkWrapper>\n );\n};\n"],"names":[],"mappings":";;;;;AAQO,MAAM,WAAc,GAAA,CAAC,EAAE,iBAAA,EAA0C,KAAA;AACtE,EAAM,MAAA,EAAE,aAAc,EAAA,GAAI,OAAQ,EAAA,CAAA;AAElC,EAAA,IAAI,iBAAmB,EAAA;AACrB,IACE,uBAAA,GAAA;AAAA,MAAC,gBAAA;AAAA,MAAA;AAAA,QACC,MAAA,EAAQ,GACN,MAAO,CAAA,QAAA,CAAS,MAClB,CAAG,EAAA,WAAA,EAAa,CAAA,iCAAA,EAAoC,iBAAiB,CAAA,CAAA;AAAA,QAEpE,QAAc,EAAA,aAAA,CAAA;AAAA,UACb,EAAI,EAAA,wCAAA;AAAA,UACJ,cAAgB,EAAA,sDAAA;AAAA,SACjB,CAAA;AAAA,OAAA;AAAA,KACH,CAAA;AAAA,GAEJ;AAEA,EACE,uBAAA,GAAA,CAAC,gBAAiB,EAAA,EAAA,MAAA,EAAQ,CAAG,EAAA,MAAA,CAAO,QAAS,CAAA,MAAM,CAAG,EAAA,WAAA,EAAa,CAAA,WAAA,CAAA,EAChE,QAAc,EAAA,aAAA,CAAA;AAAA,IACb,EAAI,EAAA,4CAAA;AAAA,IACJ,cACE,EAAA,6EAAA;AAAA,GACH,CACH,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const reactIntl = require('react-intl');
7
- const index = require('./index-qf9IxVeZ.js');
8
- const SelectRoles = require('./SelectRoles-iUoQ1i46.js');
7
+ const index = require('./index-h7R8mHHX.js');
8
+ const SelectRoles = require('./SelectRoles-W7y7odaY.js');
9
9
 
10
10
  const MagicLinkEE = ({ registrationToken }) => {
11
11
  const { formatMessage } = reactIntl.useIntl();
@@ -28,4 +28,4 @@ const MagicLinkEE = ({ registrationToken }) => {
28
28
  };
29
29
 
30
30
  exports.MagicLinkEE = MagicLinkEE;
31
- //# sourceMappingURL=MagicLinkEE-_uF-eBZl.js.map
31
+ //# sourceMappingURL=MagicLinkEE-XeVNxSHy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MagicLinkEE-_uF-eBZl.js","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.tsx"],"sourcesContent":["import { useIntl } from 'react-intl';\n\nimport { getBasename } from '../../../../../../../../admin/src/core/utils/basename';\nimport { MagicLinkWrapper } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper';\n\nimport type { MagicLinkCEProps } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkCE';\n\n// FIXME replace with parts compo when ready\nexport const MagicLinkEE = ({ registrationToken }: MagicLinkCEProps) => {\n const { formatMessage } = useIntl();\n\n if (registrationToken) {\n return (\n <MagicLinkWrapper\n target={`${\n window.location.origin\n }${getBasename()}/auth/register?registrationToken=${registrationToken}`}\n >\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect',\n defaultMessage: 'Copy and share this link to give access to this user',\n })}\n </MagicLinkWrapper>\n );\n }\n\n return (\n <MagicLinkWrapper target={`${window.location.origin}${getBasename()}/auth/login`}>\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect.sso',\n defaultMessage:\n 'Send this link to the user, the first login can be made via a SSO provider.',\n })}\n </MagicLinkWrapper>\n );\n};\n"],"names":["useIntl","jsx","MagicLinkWrapper","getBasename"],"mappings":";;;;;;;;;AAQO,MAAM,WAAc,GAAA,CAAC,EAAE,iBAAA,EAA0C,KAAA;AACtE,EAAM,MAAA,EAAE,aAAc,EAAA,GAAIA,iBAAQ,EAAA,CAAA;AAElC,EAAA,IAAI,iBAAmB,EAAA;AACrB,IACE,uBAAAC,cAAA;AAAA,MAACC,4BAAA;AAAA,MAAA;AAAA,QACC,MAAA,EAAQ,GACN,MAAO,CAAA,QAAA,CAAS,MAClB,CAAG,EAAAC,iBAAA,EAAa,CAAA,iCAAA,EAAoC,iBAAiB,CAAA,CAAA;AAAA,QAEpE,QAAc,EAAA,aAAA,CAAA;AAAA,UACb,EAAI,EAAA,wCAAA;AAAA,UACJ,cAAgB,EAAA,sDAAA;AAAA,SACjB,CAAA;AAAA,OAAA;AAAA,KACH,CAAA;AAAA,GAEJ;AAEA,EACE,uBAAAF,cAAA,CAACC,4BAAiB,EAAA,EAAA,MAAA,EAAQ,CAAG,EAAA,MAAA,CAAO,QAAS,CAAA,MAAM,CAAG,EAAAC,iBAAA,EAAa,CAAA,WAAA,CAAA,EAChE,QAAc,EAAA,aAAA,CAAA;AAAA,IACb,EAAI,EAAA,4CAAA;AAAA,IACJ,cACE,EAAA,6EAAA;AAAA,GACH,CACH,EAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"MagicLinkEE-XeVNxSHy.js","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.tsx"],"sourcesContent":["import { useIntl } from 'react-intl';\n\nimport { getBasename } from '../../../../../../../../admin/src/core/utils/basename';\nimport { MagicLinkWrapper } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper';\n\nimport type { MagicLinkCEProps } from '../../../../../../../../admin/src/pages/Settings/pages/Users/components/MagicLinkCE';\n\n// FIXME replace with parts compo when ready\nexport const MagicLinkEE = ({ registrationToken }: MagicLinkCEProps) => {\n const { formatMessage } = useIntl();\n\n if (registrationToken) {\n return (\n <MagicLinkWrapper\n target={`${\n window.location.origin\n }${getBasename()}/auth/register?registrationToken=${registrationToken}`}\n >\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect',\n defaultMessage: 'Copy and share this link to give access to this user',\n })}\n </MagicLinkWrapper>\n );\n }\n\n return (\n <MagicLinkWrapper target={`${window.location.origin}${getBasename()}/auth/login`}>\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect.sso',\n defaultMessage:\n 'Send this link to the user, the first login can be made via a SSO provider.',\n })}\n </MagicLinkWrapper>\n );\n};\n"],"names":["useIntl","jsx","MagicLinkWrapper","getBasename"],"mappings":";;;;;;;;;AAQO,MAAM,WAAc,GAAA,CAAC,EAAE,iBAAA,EAA0C,KAAA;AACtE,EAAM,MAAA,EAAE,aAAc,EAAA,GAAIA,iBAAQ,EAAA,CAAA;AAElC,EAAA,IAAI,iBAAmB,EAAA;AACrB,IACE,uBAAAC,cAAA;AAAA,MAACC,4BAAA;AAAA,MAAA;AAAA,QACC,MAAA,EAAQ,GACN,MAAO,CAAA,QAAA,CAAS,MAClB,CAAG,EAAAC,iBAAA,EAAa,CAAA,iCAAA,EAAoC,iBAAiB,CAAA,CAAA;AAAA,QAEpE,QAAc,EAAA,aAAA,CAAA;AAAA,UACb,EAAI,EAAA,wCAAA;AAAA,UACJ,cAAgB,EAAA,sDAAA;AAAA,SACjB,CAAA;AAAA,OAAA;AAAA,KACH,CAAA;AAAA,GAEJ;AAEA,EACE,uBAAAF,cAAA,CAACC,4BAAiB,EAAA,EAAA,MAAA,EAAQ,CAAG,EAAA,MAAA,CAAO,QAAS,CAAA,MAAM,CAAG,EAAAC,iBAAA,EAAa,CAAA,WAAA,CAAA,EAChE,QAAc,EAAA,aAAA,CAAA;AAAA,IACb,EAAI,EAAA,4CAAA;AAAA,IACJ,cACE,EAAA,6EAAA;AAAA,GACH,CACH,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -8,9 +8,8 @@ const designSystem = require('@strapi/design-system');
8
8
  const icons = require('@strapi/icons');
9
9
  const symbols = require('@strapi/icons/symbols');
10
10
  const reactIntl = require('react-intl');
11
- const ContentBox = require('./ContentBox-3MRTNw0X.js');
12
- const index = require('./index-qf9IxVeZ.js');
13
- const Theme = require('./Theme-7W0we6BI.js');
11
+ const index = require('./index-h7R8mHHX.js');
12
+ const Theme = require('./Theme-y_rWTknM.js');
14
13
  const styledComponents = require('styled-components');
15
14
  const pluralize = require('pluralize');
16
15
  const semver = require('semver');
@@ -71,65 +70,59 @@ const NpmPackagesFilters = ({
71
70
  handleSelectChange(update);
72
71
  };
73
72
  return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Popover.Root, { children: [
74
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Box, { paddingTop: 1, paddingBottom: 1, children: [
75
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Popover.Trigger, { children: /* @__PURE__ */ jsxRuntime.jsx(ButtonToggle, { variant: "tertiary", startIcon: /* @__PURE__ */ jsxRuntime.jsx(icons.Filter, {}), size: "S", children: formatMessage({ id: "app.utils.filters", defaultMessage: "Filters" }) }) }),
76
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Popover.Content, { sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { padding: 3, direction: "column", alignItems: "stretch", gap: 1, children: [
77
- /* @__PURE__ */ jsxRuntime.jsx(
78
- FilterSelect,
79
- {
80
- message: formatMessage({
81
- id: "admin.pages.MarketPlacePage.filters.collections",
82
- defaultMessage: "Collections"
83
- }),
84
- value: query?.collections || [],
85
- onChange: (newCollections) => {
86
- const update = { collections: newCollections };
87
- handleSelectChange(update);
73
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Popover.Trigger, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { variant: "tertiary", startIcon: /* @__PURE__ */ jsxRuntime.jsx(icons.Filter, {}), children: formatMessage({ id: "app.utils.filters", defaultMessage: "Filters" }) }) }),
74
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Popover.Content, { sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { padding: 3, direction: "column", alignItems: "stretch", gap: 1, children: [
75
+ /* @__PURE__ */ jsxRuntime.jsx(
76
+ FilterSelect,
77
+ {
78
+ message: formatMessage({
79
+ id: "admin.pages.MarketPlacePage.filters.collections",
80
+ defaultMessage: "Collections"
81
+ }),
82
+ value: query?.collections || [],
83
+ onChange: (newCollections) => {
84
+ const update = { collections: newCollections };
85
+ handleSelectChange(update);
86
+ },
87
+ onClear: () => handleSelectClear("collections"),
88
+ possibleFilters: possibleCollections,
89
+ customizeContent: (values) => formatMessage(
90
+ {
91
+ id: "admin.pages.MarketPlacePage.filters.collectionsSelected",
92
+ defaultMessage: "{count, plural, =0 {No collections} one {# collection} other {# collections}} selected"
88
93
  },
89
- onClear: () => handleSelectClear("collections"),
90
- possibleFilters: possibleCollections,
91
- customizeContent: (values) => formatMessage(
92
- {
93
- id: "admin.pages.MarketPlacePage.filters.collectionsSelected",
94
- defaultMessage: "{count, plural, =0 {No collections} one {# collection} other {# collections}} selected"
95
- },
96
- { count: values?.length ?? 0 }
97
- )
98
- }
99
- ),
100
- npmPackageType === "plugin" && /* @__PURE__ */ jsxRuntime.jsx(
101
- FilterSelect,
102
- {
103
- message: formatMessage({
104
- id: "admin.pages.MarketPlacePage.filters.categories",
105
- defaultMessage: "Categories"
106
- }),
107
- value: query?.categories || [],
108
- onChange: (newCategories) => {
109
- const update = { categories: newCategories };
110
- handleSelectChange(update);
94
+ { count: values?.length ?? 0 }
95
+ )
96
+ }
97
+ ),
98
+ npmPackageType === "plugin" && /* @__PURE__ */ jsxRuntime.jsx(
99
+ FilterSelect,
100
+ {
101
+ message: formatMessage({
102
+ id: "admin.pages.MarketPlacePage.filters.categories",
103
+ defaultMessage: "Categories"
104
+ }),
105
+ value: query?.categories || [],
106
+ onChange: (newCategories) => {
107
+ const update = { categories: newCategories };
108
+ handleSelectChange(update);
109
+ },
110
+ onClear: () => handleSelectClear("categories"),
111
+ possibleFilters: possibleCategories,
112
+ customizeContent: (values) => formatMessage(
113
+ {
114
+ id: "admin.pages.MarketPlacePage.filters.categoriesSelected",
115
+ defaultMessage: "{count, plural, =0 {No categories} one {# category} other {# categories}} selected"
111
116
  },
112
- onClear: () => handleSelectClear("categories"),
113
- possibleFilters: possibleCategories,
114
- customizeContent: (values) => formatMessage(
115
- {
116
- id: "admin.pages.MarketPlacePage.filters.categoriesSelected",
117
- defaultMessage: "{count, plural, =0 {No categories} one {# category} other {# categories}} selected"
118
- },
119
- { count: values?.length ?? 0 }
120
- )
121
- }
122
- )
123
- ] }) })
124
- ] }),
117
+ { count: values?.length ?? 0 }
118
+ )
119
+ }
120
+ )
121
+ ] }) }),
125
122
  query.collections?.map((collection) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { padding: 1, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tag, { icon: /* @__PURE__ */ jsxRuntime.jsx(icons.Cross, {}), onClick: () => handleTagRemove(collection, "collections"), children: collection }) }, collection)),
126
123
  npmPackageType === "plugin" && query.categories?.map((category) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { padding: 1, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tag, { icon: /* @__PURE__ */ jsxRuntime.jsx(icons.Cross, {}), onClick: () => handleTagRemove(category, "categories"), children: category }) }, category))
127
124
  ] });
128
125
  };
129
- const ButtonToggle = styledComponents.styled(designSystem.Button)`
130
- height: unset;
131
- padding-block: 1.1rem;
132
- `;
133
126
  const FilterSelect = ({
134
127
  message,
135
128
  value,
@@ -186,6 +179,8 @@ const NpmPackageCard = ({
186
179
  defaultMessage: "Made by Strapi"
187
180
  });
188
181
  const npmPackageHref = `https://market.strapi.io/${pluralize__default.default.plural(npmPackageType)}/${attributes.slug}`;
182
+ const versionRange = semver__namespace.validRange(attributes.strapiVersion);
183
+ const isCompatible = semver__namespace.satisfies(strapiAppVersion ?? "", versionRange ?? "");
189
184
  return /* @__PURE__ */ jsxRuntime.jsxs(
190
185
  designSystem.Flex,
191
186
  {
@@ -284,6 +279,7 @@ const NpmPackageCard = ({
284
279
  {
285
280
  isInstalled,
286
281
  isInDevelopmentMode,
282
+ isCompatible,
287
283
  commandToCopy,
288
284
  strapiAppVersion,
289
285
  strapiPeerDepVersion: attributes.strapiVersion,
@@ -298,6 +294,7 @@ const NpmPackageCard = ({
298
294
  const InstallPluginButton = ({
299
295
  isInstalled,
300
296
  isInDevelopmentMode,
297
+ isCompatible,
301
298
  commandToCopy,
302
299
  strapiAppVersion,
303
300
  strapiPeerDepVersion,
@@ -326,7 +323,7 @@ const InstallPluginButton = ({
326
323
  }) })
327
324
  ] });
328
325
  }
329
- if (isInDevelopmentMode) {
326
+ if (isInDevelopmentMode && isCompatible !== false) {
330
327
  return /* @__PURE__ */ jsxRuntime.jsx(
331
328
  CardButton,
332
329
  {
@@ -472,17 +469,29 @@ const NpmPackagesGrid = ({
472
469
  ] }) })
473
470
  ] });
474
471
  }
475
- return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: npmPackages.map((npmPackage) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Item, { col: 4, s: 6, xs: 12, style: { height: "100%" }, children: /* @__PURE__ */ jsxRuntime.jsx(
476
- NpmPackageCard,
472
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: npmPackages.map((npmPackage) => /* @__PURE__ */ jsxRuntime.jsx(
473
+ designSystem.Grid.Item,
477
474
  {
478
- npmPackage,
479
- isInstalled: installedPackageNames.includes(npmPackage.attributes.npmPackageName),
480
- useYarn,
481
- isInDevelopmentMode,
482
- npmPackageType,
483
- strapiAppVersion
484
- }
485
- ) }, npmPackage.id)) });
475
+ col: 4,
476
+ s: 6,
477
+ xs: 12,
478
+ style: { height: "100%" },
479
+ direction: "column",
480
+ alignItems: "stretch",
481
+ children: /* @__PURE__ */ jsxRuntime.jsx(
482
+ NpmPackageCard,
483
+ {
484
+ npmPackage,
485
+ isInstalled: installedPackageNames.includes(npmPackage.attributes.npmPackageName),
486
+ useYarn,
487
+ isInDevelopmentMode,
488
+ npmPackageType,
489
+ strapiAppVersion
490
+ }
491
+ )
492
+ },
493
+ npmPackage.id
494
+ )) });
486
495
  };
487
496
  const EmptyPluginCard = styledComponents.styled(designSystem.Box)`
488
497
  background: ${({ theme }) => `linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${theme.colors.neutral150} 100%)`};
@@ -626,6 +635,7 @@ const SortSelect = ({ sortQuery, handleSelectChange }) => {
626
635
  id: "admin.pages.MarketPlacePage.sort.label",
627
636
  defaultMessage: "Sort by"
628
637
  }),
638
+ size: "S",
629
639
  children: Object.entries(SORT_TYPES).map(([sortName, messages]) => {
630
640
  return /* @__PURE__ */ jsxRuntime.jsx(designSystem.SingleSelectOption, { value: sortName, children: formatMessage(messages.option) }, sortName);
631
641
  })
@@ -645,7 +655,8 @@ function useMarketplaceData({
645
655
  npmPackageType,
646
656
  debouncedSearch,
647
657
  query,
648
- tabQuery
658
+ tabQuery,
659
+ strapiVersion
649
660
  }) {
650
661
  const { notifyStatus } = designSystem.useNotifyAT();
651
662
  const { formatMessage } = reactIntl.useIntl();
@@ -672,7 +683,8 @@ function useMarketplaceData({
672
683
  const pluginParams = {
673
684
  ...tabQuery.plugin,
674
685
  pagination: paginationParams,
675
- search: debouncedSearch
686
+ search: debouncedSearch,
687
+ version: strapiVersion
676
688
  };
677
689
  const { data: pluginsResponse, status: pluginsStatus } = reactQuery.useQuery(
678
690
  ["marketplace", "plugins", pluginParams],
@@ -704,7 +716,8 @@ function useMarketplaceData({
704
716
  const providerParams = {
705
717
  ...tabQuery.provider,
706
718
  pagination: paginationParams,
707
- search: debouncedSearch
719
+ search: debouncedSearch,
720
+ version: strapiVersion
708
721
  };
709
722
  const { data: providersResponse, status: providersStatus } = reactQuery.useQuery(
710
723
  ["marketplace", "providers", providerParams],
@@ -766,7 +779,7 @@ const MarketplacePage = () => {
766
779
  const { formatMessage } = reactIntl.useIntl();
767
780
  const { trackUsage } = Theme.useTracking();
768
781
  const { toggleNotification } = Theme.useNotification();
769
- const [{ query }, setQuery] = index.useQueryParams();
782
+ const [{ query }, setQuery] = Theme.useQueryParams();
770
783
  const debouncedSearch = useDebounce(query?.search, 500) || "";
771
784
  const {
772
785
  autoReload: isInDevelopmentMode,
@@ -802,7 +815,7 @@ const MarketplacePage = () => {
802
815
  possibleCollections,
803
816
  possibleCategories,
804
817
  pagination
805
- } = useMarketplaceData({ npmPackageType, debouncedSearch, query, tabQuery });
818
+ } = useMarketplaceData({ npmPackageType, debouncedSearch, query, tabQuery, strapiVersion });
806
819
  if (!isOnline) {
807
820
  return /* @__PURE__ */ jsxRuntime.jsx(OfflineLayout, {});
808
821
  }
@@ -963,7 +976,7 @@ const MarketplacePage = () => {
963
976
  style: { textDecoration: "none" },
964
977
  onClick: () => trackUsage("didMissMarketplacePlugin"),
965
978
  children: /* @__PURE__ */ jsxRuntime.jsx(
966
- ContentBox.ContentBox,
979
+ index.ContentBox,
967
980
  {
968
981
  title: formatMessage({
969
982
  id: "admin.pages.MarketPlacePage.missingPlugin.title",
@@ -998,4 +1011,4 @@ const ProtectedMarketplacePage = () => {
998
1011
 
999
1012
  exports.MarketplacePage = MarketplacePage;
1000
1013
  exports.ProtectedMarketplacePage = ProtectedMarketplacePage;
1001
- //# sourceMappingURL=MarketplacePage-Pwwe_Pr9.js.map
1014
+ //# sourceMappingURL=MarketplacePage-BPe_3jP4.js.map