@strapi/admin 5.10.2 → 5.10.4
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.
- package/dist/admin/chunks/{AdminSeatInfo-Cw1ujAsZ.mjs → AdminSeatInfo-CQ4w8a3g.mjs} +3 -3
- package/dist/admin/chunks/{AdminSeatInfo-Cw1ujAsZ.mjs.map → AdminSeatInfo-CQ4w8a3g.mjs.map} +1 -1
- package/dist/admin/chunks/{AdminSeatInfo-BfPqdNN0.js → AdminSeatInfo-DZ4hBesy.js} +3 -3
- package/dist/admin/chunks/{AdminSeatInfo-BfPqdNN0.js.map → AdminSeatInfo-DZ4hBesy.js.map} +1 -1
- package/dist/admin/chunks/{ApplicationInfoPage-DIiAE-tT.js → ApplicationInfoPage-CsBvES_c.js} +5 -5
- package/dist/admin/chunks/{ApplicationInfoPage-DIiAE-tT.js.map → ApplicationInfoPage-CsBvES_c.js.map} +1 -1
- package/dist/admin/chunks/{ApplicationInfoPage-Ch6hKH4Y.mjs → ApplicationInfoPage-DiEcqVEU.mjs} +5 -5
- package/dist/admin/chunks/{ApplicationInfoPage-Ch6hKH4Y.mjs.map → ApplicationInfoPage-DiEcqVEU.mjs.map} +1 -1
- package/dist/admin/chunks/{AuthResponse-DI-Q1kQL.js → AuthResponse-Ch0hurir.js} +2 -2
- package/dist/admin/chunks/{AuthResponse-DI-Q1kQL.js.map → AuthResponse-Ch0hurir.js.map} +1 -1
- package/dist/admin/chunks/{AuthResponse-DFS6gVO4.mjs → AuthResponse-Cu7HgPEK.mjs} +2 -2
- package/dist/admin/chunks/{AuthResponse-DFS6gVO4.mjs.map → AuthResponse-Cu7HgPEK.mjs.map} +1 -1
- package/dist/admin/chunks/{AuthenticatedLayout-BNWCtSH2.mjs → AuthenticatedLayout-C9eZ12Ue.mjs} +10 -291
- package/dist/admin/chunks/AuthenticatedLayout-C9eZ12Ue.mjs.map +1 -0
- package/dist/admin/chunks/{AuthenticatedLayout-D067wUoO.js → AuthenticatedLayout-D_VSoB1l.js} +5 -286
- package/dist/admin/chunks/AuthenticatedLayout-D_VSoB1l.js.map +1 -0
- package/dist/admin/chunks/{CreatePage-DojcQqvH.mjs → CreatePage-Cb-ETkOn.mjs} +5 -5
- package/dist/admin/chunks/{CreatePage-DojcQqvH.mjs.map → CreatePage-Cb-ETkOn.mjs.map} +1 -1
- package/dist/admin/chunks/{CreatePage-0PdN9Fyc.mjs → CreatePage-DQDa78K3.mjs} +4 -4
- package/dist/admin/chunks/{CreatePage-0PdN9Fyc.mjs.map → CreatePage-DQDa78K3.mjs.map} +1 -1
- package/dist/admin/chunks/{CreatePage-BK_ivKDk.js → CreatePage-DbmpFjHt.js} +4 -4
- package/dist/admin/chunks/{CreatePage-BK_ivKDk.js.map → CreatePage-DbmpFjHt.js.map} +1 -1
- package/dist/admin/chunks/{CreatePage-C8PMNi_P.js → CreatePage-DkzHz0zk.js} +5 -5
- package/dist/admin/chunks/{CreatePage-C8PMNi_P.js.map → CreatePage-DkzHz0zk.js.map} +1 -1
- package/dist/admin/chunks/{CreateView-DtccbWiR.js → CreateView-CE4-drK6.js} +5 -5
- package/dist/admin/chunks/{CreateView-DtccbWiR.js.map → CreateView-CE4-drK6.js.map} +1 -1
- package/dist/admin/chunks/{CreateView-BuN2a7bo.mjs → CreateView-CmubtWzn.mjs} +5 -5
- package/dist/admin/chunks/{CreateView-BuN2a7bo.mjs.map → CreateView-CmubtWzn.mjs.map} +1 -1
- package/dist/admin/chunks/{CreateView-DB0xD4f5.mjs → CreateView-DZaIevIB.mjs} +5 -5
- package/dist/admin/chunks/{CreateView-DB0xD4f5.mjs.map → CreateView-DZaIevIB.mjs.map} +1 -1
- package/dist/admin/chunks/{CreateView-ITRNGoQ6.js → CreateView-yjsS9KUJ.js} +5 -5
- package/dist/admin/chunks/{CreateView-ITRNGoQ6.js.map → CreateView-yjsS9KUJ.js.map} +1 -1
- package/dist/admin/chunks/{EditPage-BazkPM17.mjs → EditPage-Bjr4f1Bs.mjs} +5 -5
- package/dist/admin/chunks/{EditPage-BazkPM17.mjs.map → EditPage-Bjr4f1Bs.mjs.map} +1 -1
- package/dist/admin/chunks/{EditPage-ibh8EtSv.js → EditPage-BrMhV8aB.js} +8 -8
- package/dist/admin/chunks/{EditPage-ibh8EtSv.js.map → EditPage-BrMhV8aB.js.map} +1 -1
- package/dist/admin/chunks/{EditPage-BNZ90ISm.mjs → EditPage-C44OaxjN.mjs} +5 -5
- package/dist/admin/chunks/{EditPage-BNZ90ISm.mjs.map → EditPage-C44OaxjN.mjs.map} +1 -1
- package/dist/admin/chunks/{EditPage-r043NYgB.js → EditPage-CNaAuT5C.js} +5 -5
- package/dist/admin/chunks/{EditPage-r043NYgB.js.map → EditPage-CNaAuT5C.js.map} +1 -1
- package/dist/admin/chunks/{EditPage-DiDSR0tz.js → EditPage-CycQlsFL.js} +5 -5
- package/dist/admin/chunks/{EditPage-DiDSR0tz.js.map → EditPage-CycQlsFL.js.map} +1 -1
- package/dist/admin/chunks/{EditPage-LRn1-C88.mjs → EditPage-MmQQ4hWc.mjs} +8 -8
- package/dist/admin/chunks/{EditPage-LRn1-C88.mjs.map → EditPage-MmQQ4hWc.mjs.map} +1 -1
- package/dist/admin/chunks/{EditView-DxmJI6e0.js → EditView-C9cKaoY1.js} +4 -4
- package/dist/admin/chunks/{EditView-DxmJI6e0.js.map → EditView-C9cKaoY1.js.map} +1 -1
- package/dist/admin/chunks/{EditView-CgMgqsza.mjs → EditView-CFIkvFrt.mjs} +4 -4
- package/dist/admin/chunks/{EditView-CgMgqsza.mjs.map → EditView-CFIkvFrt.mjs.map} +1 -1
- package/dist/admin/chunks/{EditViewPage-BE_u8pQP.mjs → EditViewPage-CwdhHAuX.mjs} +4 -4
- package/dist/admin/chunks/{EditViewPage-BE_u8pQP.mjs.map → EditViewPage-CwdhHAuX.mjs.map} +1 -1
- package/dist/admin/chunks/{EditViewPage-Bz4GEIsc.js → EditViewPage-DBga-70A.js} +4 -4
- package/dist/admin/chunks/{EditViewPage-Bz4GEIsc.js.map → EditViewPage-DBga-70A.js.map} +1 -1
- package/dist/admin/chunks/{EventsTable-CsFf4rOj.mjs → EventsTable-CeqMb1jP.mjs} +5 -5
- package/dist/admin/chunks/{EventsTable-CsFf4rOj.mjs.map → EventsTable-CeqMb1jP.mjs.map} +1 -1
- package/dist/admin/chunks/{EventsTable-CZY0aI5G.js → EventsTable-fkWvAMuL.js} +5 -5
- package/dist/admin/chunks/{EventsTable-CZY0aI5G.js.map → EventsTable-fkWvAMuL.js.map} +1 -1
- package/dist/admin/chunks/{HomePage-ebJLhO6a.js → HomePage-B2skN1xt.js} +5 -5
- package/dist/admin/chunks/{HomePage-ebJLhO6a.js.map → HomePage-B2skN1xt.js.map} +1 -1
- package/dist/admin/chunks/{HomePage-Df0YSqNE.js → HomePage-CVc0RfvD.js} +4 -4
- package/dist/admin/chunks/{HomePage-Df0YSqNE.js.map → HomePage-CVc0RfvD.js.map} +1 -1
- package/dist/admin/chunks/{HomePage-CFTx_SgI.mjs → HomePage-DGTeFboL.mjs} +4 -4
- package/dist/admin/chunks/{HomePage-CFTx_SgI.mjs.map → HomePage-DGTeFboL.mjs.map} +1 -1
- package/dist/admin/chunks/{HomePage-C2Sue0eX.mjs → HomePage-MfOqcIag.mjs} +5 -5
- package/dist/admin/chunks/{HomePage-C2Sue0eX.mjs.map → HomePage-MfOqcIag.mjs.map} +1 -1
- package/dist/admin/chunks/{InstalledPlugins-B4gyKUHh.mjs → InstalledPlugins-5j7xjDqh.mjs} +3 -3
- package/dist/admin/chunks/{InstalledPlugins-B4gyKUHh.mjs.map → InstalledPlugins-5j7xjDqh.mjs.map} +1 -1
- package/dist/admin/chunks/{InstalledPlugins-BtwwVsQ_.js → InstalledPlugins-BXM3i3xr.js} +3 -3
- package/dist/admin/chunks/{InstalledPlugins-BtwwVsQ_.js.map → InstalledPlugins-BXM3i3xr.js.map} +1 -1
- package/dist/admin/chunks/{Layout-BZTqa7oj.js → Layout-DST1PxaO.js} +5 -5
- package/dist/admin/chunks/{Layout-BZTqa7oj.js.map → Layout-DST1PxaO.js.map} +1 -1
- package/dist/admin/chunks/{Layout-B_xkPr1q.mjs → Layout-DYjtK6iP.mjs} +5 -5
- package/dist/admin/chunks/{Layout-B_xkPr1q.mjs.map → Layout-DYjtK6iP.mjs.map} +1 -1
- package/dist/admin/chunks/{ListPage-BtMdu1eQ.mjs → ListPage-B5Hb8BA-.mjs} +7 -7
- package/dist/admin/chunks/{ListPage-BtMdu1eQ.mjs.map → ListPage-B5Hb8BA-.mjs.map} +1 -1
- package/dist/admin/chunks/{ListPage-Beh8uBDE.mjs → ListPage-BVI0O8bq.mjs} +3 -3
- package/dist/admin/chunks/{ListPage-Beh8uBDE.mjs.map → ListPage-BVI0O8bq.mjs.map} +1 -1
- package/dist/admin/chunks/{ListPage-YW-UVjk3.js → ListPage-BgyypnOM.js} +7 -7
- package/dist/admin/chunks/{ListPage-YW-UVjk3.js.map → ListPage-BgyypnOM.js.map} +1 -1
- package/dist/admin/chunks/{ListPage-CENQarKY.mjs → ListPage-BhGt3EBQ.mjs} +3 -3
- package/dist/admin/chunks/{ListPage-CENQarKY.mjs.map → ListPage-BhGt3EBQ.mjs.map} +1 -1
- package/dist/admin/chunks/{ListPage-gKsEm3Px.js → ListPage-CLXy5r60.js} +5 -5
- package/dist/admin/chunks/{ListPage-gKsEm3Px.js.map → ListPage-CLXy5r60.js.map} +1 -1
- package/dist/admin/chunks/{ListPage-Du6Jt5wY.js → ListPage-CWINpwfS.js} +7 -7
- package/dist/admin/chunks/{ListPage-Du6Jt5wY.js.map → ListPage-CWINpwfS.js.map} +1 -1
- package/dist/admin/chunks/{ListPage-DgmOJv7H.js → ListPage-D21yUih2.js} +3 -3
- package/dist/admin/chunks/{ListPage-DgmOJv7H.js.map → ListPage-D21yUih2.js.map} +1 -1
- package/dist/admin/chunks/{ListPage-LqcmQd_Q.js → ListPage-DbfL2rpi.js} +3 -3
- package/dist/admin/chunks/{ListPage-LqcmQd_Q.js.map → ListPage-DbfL2rpi.js.map} +1 -1
- package/dist/admin/chunks/{ListPage-r9rW__R8.mjs → ListPage-PwzVjSsA.mjs} +7 -7
- package/dist/admin/chunks/{ListPage-r9rW__R8.mjs.map → ListPage-PwzVjSsA.mjs.map} +1 -1
- package/dist/admin/chunks/{ListPage-Czwak48Z.mjs → ListPage-srJutHdv.mjs} +5 -5
- package/dist/admin/chunks/{ListPage-Czwak48Z.mjs.map → ListPage-srJutHdv.mjs.map} +1 -1
- package/dist/admin/chunks/{ListView-Q2AO0JSX.mjs → ListView--KzJiQiO.mjs} +4 -4
- package/dist/admin/chunks/{ListView-Q2AO0JSX.mjs.map → ListView--KzJiQiO.mjs.map} +1 -1
- package/dist/admin/chunks/{ListView-CajksON_.mjs → ListView-CoGoDDiF.mjs} +4 -4
- package/dist/admin/chunks/{ListView-CajksON_.mjs.map → ListView-CoGoDDiF.mjs.map} +1 -1
- package/dist/admin/chunks/{ListView-Bys8EN-y.js → ListView-DGfxO89i.js} +4 -4
- package/dist/admin/chunks/{ListView-Bys8EN-y.js.map → ListView-DGfxO89i.js.map} +1 -1
- package/dist/admin/chunks/{ListView-BfwBUxHL.js → ListView-DzwvQ8nW.js} +4 -4
- package/dist/admin/chunks/{ListView-BfwBUxHL.js.map → ListView-DzwvQ8nW.js.map} +1 -1
- package/dist/admin/chunks/{Login-5ByBaKI3.mjs → Login-Dtkhd0GV.mjs} +3 -3
- package/dist/admin/chunks/{Login-5ByBaKI3.mjs.map → Login-Dtkhd0GV.mjs.map} +1 -1
- package/dist/admin/chunks/{Login-BpEOnVbU.js → Login-Iw84AH9L.js} +3 -3
- package/dist/admin/chunks/{Login-BpEOnVbU.js.map → Login-Iw84AH9L.js.map} +1 -1
- package/dist/admin/chunks/{MagicLinkEE-a-AbOB4s.js → MagicLinkEE-C5K8p8Rk.js} +5 -5
- package/dist/admin/chunks/{MagicLinkEE-a-AbOB4s.js.map → MagicLinkEE-C5K8p8Rk.js.map} +1 -1
- package/dist/admin/chunks/{MagicLinkEE-CiQG7NL3.mjs → MagicLinkEE-EcyHC46Y.mjs} +5 -5
- package/dist/admin/chunks/{MagicLinkEE-CiQG7NL3.mjs.map → MagicLinkEE-EcyHC46Y.mjs.map} +1 -1
- package/dist/admin/chunks/{MarketplacePage-my1nDaHy.js → MarketplacePage-BmqfuAvB.js} +3 -3
- package/dist/admin/chunks/{MarketplacePage-my1nDaHy.js.map → MarketplacePage-BmqfuAvB.js.map} +1 -1
- package/dist/admin/chunks/{MarketplacePage-BrHNQ8SG.mjs → MarketplacePage-CcAYozK2.mjs} +3 -3
- package/dist/admin/chunks/{MarketplacePage-BrHNQ8SG.mjs.map → MarketplacePage-CcAYozK2.mjs.map} +1 -1
- package/dist/admin/chunks/{Permissions-C7FA_7J9.js → Permissions-D6qH78lN.js} +2 -2
- package/dist/admin/chunks/{Permissions-C7FA_7J9.js.map → Permissions-D6qH78lN.js.map} +1 -1
- package/dist/admin/chunks/{Permissions-CuLck8vw.mjs → Permissions-rJmE3qb1.mjs} +2 -2
- package/dist/admin/chunks/{Permissions-CuLck8vw.mjs.map → Permissions-rJmE3qb1.mjs.map} +1 -1
- package/dist/admin/chunks/{PrivateRoute-BnxIlIDb.js → PrivateRoute-DvGSyomB.js} +2 -2
- package/dist/admin/chunks/{PrivateRoute-BnxIlIDb.js.map → PrivateRoute-DvGSyomB.js.map} +1 -1
- package/dist/admin/chunks/{PrivateRoute-BYKd2yE4.mjs → PrivateRoute-KL_RhoV8.mjs} +2 -2
- package/dist/admin/chunks/{PrivateRoute-BYKd2yE4.mjs.map → PrivateRoute-KL_RhoV8.mjs.map} +1 -1
- package/dist/admin/chunks/{ProfilePage-Do6nPMsx.mjs → ProfilePage-CN8SAQ9w.mjs} +4 -4
- package/dist/admin/chunks/{ProfilePage-Do6nPMsx.mjs.map → ProfilePage-CN8SAQ9w.mjs.map} +1 -1
- package/dist/admin/chunks/{ProfilePage-C8zWtYzY.js → ProfilePage-DiGV7o6c.js} +4 -4
- package/dist/admin/chunks/{ProfilePage-C8zWtYzY.js.map → ProfilePage-DiGV7o6c.js.map} +1 -1
- package/dist/admin/chunks/{PurchaseAuditLogs-McvZESGI.mjs → PurchaseAuditLogs-BI41XTBD.mjs} +3 -3
- package/dist/admin/chunks/{PurchaseAuditLogs-McvZESGI.mjs.map → PurchaseAuditLogs-BI41XTBD.mjs.map} +1 -1
- package/dist/admin/chunks/{PurchaseAuditLogs-BTAi887h.js → PurchaseAuditLogs-DnWVbru3.js} +3 -3
- package/dist/admin/chunks/{PurchaseAuditLogs-BTAi887h.js.map → PurchaseAuditLogs-DnWVbru3.js.map} +1 -1
- package/dist/admin/chunks/{PurchaseContentHistory-pb7RDvhZ.mjs → PurchaseContentHistory-BzC2C4Pv.mjs} +3 -3
- package/dist/admin/chunks/{PurchaseContentHistory-pb7RDvhZ.mjs.map → PurchaseContentHistory-BzC2C4Pv.mjs.map} +1 -1
- package/dist/admin/chunks/{PurchaseContentHistory-dfepsahq.js → PurchaseContentHistory-DUk7otrp.js} +3 -3
- package/dist/admin/chunks/{PurchaseContentHistory-dfepsahq.js.map → PurchaseContentHistory-DUk7otrp.js.map} +1 -1
- package/dist/admin/chunks/{PurchaseSingleSignOn-Dgal5RnY.js → PurchaseSingleSignOn-Bq0YHAHt.js} +3 -3
- package/dist/admin/chunks/{PurchaseSingleSignOn-Dgal5RnY.js.map → PurchaseSingleSignOn-Bq0YHAHt.js.map} +1 -1
- package/dist/admin/chunks/{PurchaseSingleSignOn-BUB9Irlt.mjs → PurchaseSingleSignOn-G1TKPP15.mjs} +3 -3
- package/dist/admin/chunks/{PurchaseSingleSignOn-BUB9Irlt.mjs.map → PurchaseSingleSignOn-G1TKPP15.mjs.map} +1 -1
- package/dist/admin/chunks/{SelectRoles-Clx1_4zB.js → SelectRoles-CKInlnSd.js} +4 -4
- package/dist/admin/chunks/{SelectRoles-Clx1_4zB.js.map → SelectRoles-CKInlnSd.js.map} +1 -1
- package/dist/admin/chunks/{SelectRoles-CG3Czm0u.mjs → SelectRoles-DR4KBZkw.mjs} +4 -4
- package/dist/admin/chunks/{SelectRoles-CG3Czm0u.mjs.map → SelectRoles-DR4KBZkw.mjs.map} +1 -1
- package/dist/admin/chunks/{SingleSignOnPage-Bqn13t3u.mjs → SingleSignOnPage-CRzrEUGp.mjs} +4 -4
- package/dist/admin/chunks/{SingleSignOnPage-Bqn13t3u.mjs.map → SingleSignOnPage-CRzrEUGp.mjs.map} +1 -1
- package/dist/admin/chunks/{SingleSignOnPage-DqHWnXWQ.js → SingleSignOnPage-DtRVlrGP.js} +4 -4
- package/dist/admin/chunks/{SingleSignOnPage-DqHWnXWQ.js.map → SingleSignOnPage-DtRVlrGP.js.map} +1 -1
- package/dist/admin/chunks/{Table-Ra6bYcx7.mjs → Table-BohVeu0r.mjs} +3 -3
- package/dist/admin/chunks/{Table-Ra6bYcx7.mjs.map → Table-BohVeu0r.mjs.map} +1 -1
- package/dist/admin/chunks/{Table-BHi0q5It.js → Table-CBZnqMuN.js} +3 -3
- package/dist/admin/chunks/{Table-BHi0q5It.js.map → Table-CBZnqMuN.js.map} +1 -1
- package/dist/admin/chunks/{Theme-CDaBfQ-7.mjs → Theme-C3oHrQcy.mjs} +6 -4
- package/dist/admin/chunks/Theme-C3oHrQcy.mjs.map +1 -0
- package/dist/admin/chunks/{Theme-CFGbtvHi.js → Theme-DDlJz91O.js} +6 -3
- package/dist/admin/chunks/Theme-DDlJz91O.js.map +1 -0
- package/dist/admin/chunks/{TokenTypeSelect-EY1WftKo.js → TokenTypeSelect-BV_ZNiY_.js} +3 -3
- package/dist/admin/chunks/{TokenTypeSelect-EY1WftKo.js.map → TokenTypeSelect-BV_ZNiY_.js.map} +1 -1
- package/dist/admin/chunks/{TokenTypeSelect-BIRgChNx.mjs → TokenTypeSelect-CpEAVZ_b.mjs} +3 -3
- package/dist/admin/chunks/{TokenTypeSelect-BIRgChNx.mjs.map → TokenTypeSelect-CpEAVZ_b.mjs.map} +1 -1
- package/dist/admin/chunks/{UseCasePage-Y_h0Fbiv.mjs → UseCasePage-Bro5fyP3.mjs} +4 -4
- package/dist/admin/chunks/{UseCasePage-Y_h0Fbiv.mjs.map → UseCasePage-Bro5fyP3.mjs.map} +1 -1
- package/dist/admin/chunks/{UseCasePage-Dl-WfgYc.js → UseCasePage-CipG2GC4.js} +4 -4
- package/dist/admin/chunks/{UseCasePage-Dl-WfgYc.js.map → UseCasePage-CipG2GC4.js.map} +1 -1
- package/dist/admin/chunks/{constants-DoArvzRr.mjs → constants-BddeukI7.mjs} +3 -3
- package/dist/admin/chunks/{constants-DoArvzRr.mjs.map → constants-BddeukI7.mjs.map} +1 -1
- package/dist/admin/chunks/{constants-DClZ3JYF.js → constants-CaerHoe3.js} +3 -3
- package/dist/admin/chunks/{constants-DClZ3JYF.js.map → constants-CaerHoe3.js.map} +1 -1
- package/dist/admin/chunks/en-GB-3SrHvAFz.mjs +6 -0
- package/dist/admin/chunks/en-GB-3SrHvAFz.mjs.map +1 -0
- package/dist/admin/chunks/en-GB-Cc-PTeUP.js +8 -0
- package/dist/admin/chunks/en-GB-Cc-PTeUP.js.map +1 -0
- package/dist/admin/chunks/{en-CRu3-kTC.mjs → en-n340Bke8.mjs} +2 -1
- package/dist/admin/chunks/{en-CRu3-kTC.mjs.map → en-n340Bke8.mjs.map} +1 -1
- package/dist/admin/chunks/{en-CJjqxA2Q.js → en-rWmm12oE.js} +2 -1
- package/dist/admin/chunks/{en-CJjqxA2Q.js.map → en-rWmm12oE.js.map} +1 -1
- package/dist/admin/chunks/{index-BUGouNML.mjs → index-BM8-DG5K.mjs} +56 -36
- package/dist/admin/chunks/index-BM8-DG5K.mjs.map +1 -0
- package/dist/admin/chunks/{index-D7OmC33R.js → index-HGaughzt.js} +56 -36
- package/dist/admin/chunks/index-HGaughzt.js.map +1 -0
- package/dist/admin/chunks/{selectors-2ohXQx5g.js → selectors-Bf-6Fmez.js} +2 -2
- package/dist/admin/chunks/{selectors-2ohXQx5g.js.map → selectors-Bf-6Fmez.js.map} +1 -1
- package/dist/admin/chunks/{selectors-PQdhPmzv.mjs → selectors-Dej_6h4x.mjs} +2 -2
- package/dist/admin/chunks/{selectors-PQdhPmzv.mjs.map → selectors-Dej_6h4x.mjs.map} +1 -1
- package/dist/admin/chunks/{useAdminRoles-BEmkB0uj.mjs → useAdminRoles-C6Es4UUq.mjs} +2 -2
- package/dist/admin/chunks/{useAdminRoles-BEmkB0uj.mjs.map → useAdminRoles-C6Es4UUq.mjs.map} +1 -1
- package/dist/admin/chunks/{useAdminRoles-DwDqOIvp.js → useAdminRoles-_4HKisJz.js} +2 -2
- package/dist/admin/chunks/{useAdminRoles-DwDqOIvp.js.map → useAdminRoles-_4HKisJz.js.map} +1 -1
- package/dist/admin/chunks/{useLicenseLimitNotification-CGkazzao.mjs → useLicenseLimitNotification-DbPhRccK.mjs} +2 -2
- package/dist/admin/chunks/{useLicenseLimitNotification-CGkazzao.mjs.map → useLicenseLimitNotification-DbPhRccK.mjs.map} +1 -1
- package/dist/admin/chunks/{useLicenseLimitNotification-BMCQ8obE.js → useLicenseLimitNotification-iuozPic9.js} +2 -2
- package/dist/admin/chunks/{useLicenseLimitNotification-BMCQ8obE.js.map → useLicenseLimitNotification-iuozPic9.js.map} +1 -1
- package/dist/admin/chunks/{validation-DOQs6_Ay.mjs → validation-Dmvl0gZQ.mjs} +8 -2
- package/dist/admin/chunks/validation-Dmvl0gZQ.mjs.map +1 -0
- package/dist/admin/chunks/{validation-ECrFbJ6K.js → validation-dPl3P7dv.js} +8 -2
- package/dist/admin/chunks/validation-dPl3P7dv.js.map +1 -0
- package/dist/admin/index.js +2 -2
- package/dist/admin/index.mjs +2 -2
- package/dist/admin/src/features/Configuration.d.ts +1 -3
- package/dist/admin/src/utils/strings.d.ts +2 -1
- package/dist/admin/test.js +1 -2
- package/dist/admin/test.js.map +1 -1
- package/dist/admin/test.mjs +1 -2
- package/dist/admin/test.mjs.map +1 -1
- package/dist/server/index.js +23 -9
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +23 -9
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/routes/authentication.d.ts.map +1 -1
- package/dist/server/src/services/homepage.d.ts.map +1 -1
- package/dist/server/src/validation/common-validators.d.ts.map +1 -1
- package/package.json +9 -9
- package/dist/admin/chunks/AuthenticatedLayout-BNWCtSH2.mjs.map +0 -1
- package/dist/admin/chunks/AuthenticatedLayout-D067wUoO.js.map +0 -1
- package/dist/admin/chunks/Theme-CDaBfQ-7.mjs.map +0 -1
- package/dist/admin/chunks/Theme-CFGbtvHi.js.map +0 -1
- package/dist/admin/chunks/en-GB-CMP_CCZs.js +0 -8
- package/dist/admin/chunks/en-GB-CMP_CCZs.js.map +0 -1
- package/dist/admin/chunks/en-GB-DZyWkup_.mjs +0 -6
- package/dist/admin/chunks/en-GB-DZyWkup_.mjs.map +0 -1
- package/dist/admin/chunks/index-BUGouNML.mjs.map +0 -1
- package/dist/admin/chunks/index-D7OmC33R.js.map +0 -1
- package/dist/admin/chunks/validation-DOQs6_Ay.mjs.map +0 -1
- package/dist/admin/chunks/validation-ECrFbJ6K.js.map +0 -1
- package/dist/admin/src/components/Onboarding.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditPage-DiDSR0tz.js","sources":["../../../admin/src/pages/Settings/pages/Webhooks/components/Events.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/EventsTable.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/TriggerContainer.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.tsx","../../../admin/src/pages/Settings/pages/Webhooks/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Checkbox,\n Flex,\n RawTable as Table,\n RawTbody as Tbody,\n RawTd as Td,\n RawTh as Th,\n RawThead as Thead,\n RawTr as Tr,\n Typography,\n VisuallyHidden,\n Field,\n CheckboxProps,\n} from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useField } from '../../../../../components/Form';\n\n/* -------------------------------------------------------------------------------------------------\n * EventsRoot\n * -----------------------------------------------------------------------------------------------*/\n\ninterface EventsRootProps {\n children: React.ReactNode;\n}\n\nconst EventsRoot = ({ children }: EventsRootProps) => {\n const { formatMessage } = useIntl();\n\n const label = formatMessage({\n id: 'Settings.webhooks.form.events',\n defaultMessage: 'Events',\n });\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Field.Label aria-hidden>{label}</Field.Label>\n {/* @ts-expect-error – TODO: add colCount & rowCount */}\n <StyledTable aria-label={label}>{children}</StyledTable>\n </Flex>\n );\n};\n\n// TODO check whether we want to move alternating background colour tables to the design system\nconst StyledTable = styled(Table)`\n tbody tr:nth-child(odd) {\n background: ${({ theme }) => theme.colors.neutral100};\n }\n\n thead th span {\n color: ${({ theme }) => theme.colors.neutral500};\n }\n\n td,\n th {\n padding-block-start: ${({ theme }) => theme.spaces[3]};\n padding-block-end: ${({ theme }) => theme.spaces[3]};\n width: 6%;\n vertical-align: middle;\n }\n\n tbody tr td:first-child {\n /**\n * Add padding to the start of the first column to avoid the checkbox appearing\n * too close to the edge of the table\n */\n padding-inline-start: ${({ theme }) => theme.spaces[2]};\n }\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * EventsHeaders\n * -----------------------------------------------------------------------------------------------*/\n\ninterface EventsHeadersProps {\n getHeaders?: typeof getCEHeaders;\n}\n\nconst getCEHeaders = (): MessageDescriptor[] => {\n const headers = [\n { id: 'Settings.webhooks.events.create', defaultMessage: 'Create' },\n { id: 'Settings.webhooks.events.update', defaultMessage: 'Update' },\n { id: 'app.utils.delete', defaultMessage: 'Delete' },\n { id: 'app.utils.publish', defaultMessage: 'Publish' },\n { id: 'app.utils.unpublish', defaultMessage: 'Unpublish' },\n ];\n\n return headers;\n};\n\nconst EventsHeaders = ({ getHeaders = getCEHeaders }: EventsHeadersProps) => {\n const { formatMessage } = useIntl();\n const headers = getHeaders();\n\n return (\n <Thead>\n <Tr>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.event.select',\n defaultMessage: 'Select event',\n })}\n </VisuallyHidden>\n </Th>\n {headers.map((header) => {\n if (['app.utils.publish', 'app.utils.unpublish'].includes(header?.id ?? '')) {\n return (\n <Th\n key={header.id}\n title={formatMessage({\n id: 'Settings.webhooks.event.publish-tooltip',\n defaultMessage: 'This event only exists for content with draft & publish enabled',\n })}\n >\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage(header)}\n </Typography>\n </Th>\n );\n }\n\n return (\n <Th key={header.id}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage(header)}\n </Typography>\n </Th>\n );\n })}\n </Tr>\n </Thead>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EventsBody\n * -----------------------------------------------------------------------------------------------*/\ninterface FormikContextValue {\n events: string[];\n}\n\ninterface EventsBodyProps {\n providedEvents?: Record<string, FormikContextValue['events']>;\n}\n\nconst EventsBody = ({ providedEvents }: EventsBodyProps) => {\n const events = providedEvents || getCEEvents();\n const { value = [], onChange } = useField<string[]>('events');\n\n const inputName = 'events';\n const inputValue = value;\n const disabledEvents: string[] = [];\n\n const formattedValue = inputValue.reduce<Record<string, string[]>>((acc, curr) => {\n const key = curr.split('.')[0];\n\n if (!acc[key]) {\n acc[key] = [];\n }\n acc[key].push(curr);\n\n return acc;\n }, {});\n\n const handleSelect: EventsRowProps['handleSelect'] = (name, value) => {\n const set = new Set(inputValue);\n\n if (value) {\n set.add(name);\n } else {\n set.delete(name);\n }\n\n onChange(inputName, Array.from(set));\n };\n\n const handleSelectAll: EventsRowProps['handleSelectAll'] = (name, value) => {\n const set = new Set(inputValue);\n\n if (value) {\n events[name].forEach((event) => {\n if (!disabledEvents.includes(event)) {\n set.add(event);\n }\n });\n } else {\n events[name].forEach((event) => set.delete(event));\n }\n\n onChange(inputName, Array.from(set));\n };\n\n return (\n <Tbody>\n {Object.entries(events).map(([event, value]) => {\n return (\n <EventsRow\n disabledEvents={disabledEvents}\n key={event}\n name={event}\n events={value}\n inputValue={formattedValue[event]}\n handleSelect={handleSelect}\n handleSelectAll={handleSelectAll}\n />\n );\n })}\n </Tbody>\n );\n};\n\nconst getCEEvents = (): Required<Pick<EventsBodyProps, 'providedEvents'>>['providedEvents'] => {\n const entryEvents: FormikContextValue['events'] = [\n 'entry.create',\n 'entry.update',\n 'entry.delete',\n 'entry.publish',\n 'entry.unpublish',\n ];\n\n return {\n entry: entryEvents,\n media: ['media.create', 'media.update', 'media.delete'],\n };\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EventsRow\n * -----------------------------------------------------------------------------------------------*/\n\ninterface EventsRowProps {\n disabledEvents?: string[];\n events?: string[];\n inputValue?: string[];\n handleSelect: (name: string, value: boolean) => void;\n handleSelectAll: (name: string, value: boolean) => void;\n name: string;\n}\n\nconst EventsRow = ({\n disabledEvents = [],\n name,\n events = [],\n inputValue = [],\n handleSelect,\n handleSelectAll,\n}: EventsRowProps) => {\n const { formatMessage } = useIntl();\n const enabledCheckboxes = events.filter((event) => !disabledEvents.includes(event));\n\n const hasSomeCheckboxSelected = inputValue.length > 0;\n const areAllCheckboxesSelected = inputValue.length === enabledCheckboxes.length;\n\n const onChangeAll: CheckboxProps['onCheckedChange'] = () => {\n const valueToSet = !areAllCheckboxesSelected;\n\n handleSelectAll(name, valueToSet);\n };\n\n const targetColumns = 5;\n\n return (\n <Tr>\n <Td>\n <Checkbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n name={name}\n checked={\n hasSomeCheckboxSelected && !areAllCheckboxesSelected\n ? 'indeterminate'\n : areAllCheckboxesSelected\n }\n onCheckedChange={onChangeAll}\n >\n {removeHyphensAndTitleCase(name)}\n </Checkbox>\n </Td>\n\n {events.map((event) => {\n return (\n <Td key={event} textAlign=\"center\">\n <Flex width=\"100%\" justifyContent=\"center\">\n <Checkbox\n disabled={disabledEvents.includes(event)}\n aria-label={event}\n name={event}\n checked={inputValue.includes(event)}\n onCheckedChange={(value) => handleSelect(event, !!value)}\n />\n </Flex>\n </Td>\n );\n })}\n {events.length < targetColumns && <Td colSpan={targetColumns - events.length} />}\n </Tr>\n );\n};\n\n/**\n * Converts a string to title case and removes hyphens.\n */\nconst removeHyphensAndTitleCase = (str: string): string =>\n str\n .replace(/-/g, ' ')\n .split(' ')\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n .join(' ');\n\nconst Events = { Root: EventsRoot, Headers: EventsHeaders, Body: EventsBody, Row: EventsRow };\n\nexport { Events };\nexport type { EventsRowProps, EventsHeadersProps, EventsRootProps, EventsBodyProps };\n","import { Events } from './Events';\n\nconst EventTableCE = () => {\n return (\n <Events.Root>\n <Events.Headers />\n <Events.Body />\n </Events.Root>\n );\n};\n\nexport { EventTableCE };\n","import * as React from 'react';\n\nimport {\n Box,\n Flex,\n Grid,\n TextButton,\n ComboboxOption,\n Combobox,\n ComboboxProps,\n IconButton,\n Field as DSField,\n} from '@strapi/design-system';\nimport { Minus, Plus } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useField, useForm } from '../../../../../components/Form';\nimport { StringInput } from '../../../../../components/FormInputs/String';\n\nconst AddHeaderButton = styled(TextButton)`\n cursor: pointer;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * HeadersInput\n * -----------------------------------------------------------------------------------------------*/\n\ninterface Header {\n key: HTTPHeaders;\n value: string;\n}\n\nconst HeadersInput = () => {\n const { formatMessage } = useIntl();\n\n const addFieldRow = useForm('HeadersInput', (state) => state.addFieldRow);\n const removeFieldRow = useForm('HeadersInput', (state) => state.removeFieldRow);\n const setFieldValue = useForm('HeadersInput', (state) => state.onChange);\n const { value = [] } = useField<Header[]>('headers');\n\n const removeRow = (index: number) => {\n // if we are removing the last row, simply clear it\n if (value.length === 1) {\n setFieldValue('headers', [{ key: '', value: '' }]);\n } else {\n removeFieldRow('headers', index);\n }\n };\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <DSField.Label>\n {formatMessage({\n id: 'Settings.webhooks.form.headers',\n defaultMessage: 'Headers',\n })}\n </DSField.Label>\n <Box padding={8} background=\"neutral100\" hasRadius>\n {value.map((val, index) => {\n return (\n <Grid.Root key={`${index}-${JSON.stringify(val.key)}`} gap={4} padding={2}>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <HeaderCombobox\n name={`headers.${index}.key`}\n aria-label={`row ${index + 1} key`}\n label={formatMessage({\n id: 'Settings.webhooks.key',\n defaultMessage: 'Key',\n })}\n />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Flex alignItems=\"flex-end\" gap={2}>\n <Box style={{ flex: 1 }}>\n <StringInput\n name={`headers.${index}.value`}\n aria-label={`row ${index + 1} value`}\n label={formatMessage({\n id: 'Settings.webhooks.value',\n defaultMessage: 'Value',\n })}\n type=\"string\"\n />\n </Box>\n <IconButton\n width=\"4rem\"\n height=\"4rem\"\n onClick={() => removeRow(index)}\n color=\"primary600\"\n label={formatMessage(\n {\n id: 'Settings.webhooks.headers.remove',\n defaultMessage: 'Remove header row {number}',\n },\n { number: index + 1 }\n )}\n type=\"button\"\n >\n <Minus width=\"0.8rem\" />\n </IconButton>\n </Flex>\n </Grid.Item>\n </Grid.Root>\n );\n })}\n <Box paddingTop={4}>\n <AddHeaderButton\n type=\"button\"\n onClick={() => {\n addFieldRow('headers', { key: '', value: '' });\n }}\n startIcon={<Plus />}\n >\n {formatMessage({\n id: 'Settings.webhooks.create.header',\n defaultMessage: 'Create new header',\n })}\n </AddHeaderButton>\n </Box>\n </Box>\n </Flex>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * HeaderCombobox\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderComboboxProps extends Omit<ComboboxProps, 'children' | 'name'> {\n name: string;\n label: string;\n}\n\nconst HeaderCombobox = ({ name, label, ...restProps }: HeaderComboboxProps) => {\n const [options, setOptions] = React.useState<HTTPHeaders[]>([...HTTP_HEADERS]);\n const { value: headers } = useField<Header[]>('headers');\n const field = useField(name);\n\n React.useEffect(() => {\n const headerOptions = HTTP_HEADERS.filter(\n (key) => !headers?.some((header) => header.key !== field.value && header.key === key)\n );\n\n setOptions(headerOptions);\n }, [headers, field.value]);\n\n const handleChange: ComboboxProps['onChange'] = (value) => {\n field.onChange(name, value);\n };\n\n const handleCreateOption = (value: string) => {\n setOptions((prev) => [...prev, value as HTTPHeaders]);\n\n handleChange(value);\n };\n\n return (\n <DSField.Root name={name} error={field.error}>\n <DSField.Label>{label}</DSField.Label>\n <Combobox\n {...restProps}\n onClear={() => handleChange('')}\n onChange={handleChange}\n onCreateOption={handleCreateOption}\n placeholder=\"\"\n creatable\n value={field.value}\n >\n {options.map((key) => (\n <ComboboxOption value={key} key={key}>\n {key}\n </ComboboxOption>\n ))}\n </Combobox>\n <DSField.Error />\n </DSField.Root>\n );\n};\n\nconst HTTP_HEADERS = [\n 'A-IM',\n 'Accept',\n 'Accept-Charset',\n 'Accept-Encoding',\n 'Accept-Language',\n 'Accept-Datetime',\n 'Access-Control-Request-Method',\n 'Access-Control-Request-Headers',\n 'Authorization',\n 'Cache-Control',\n 'Connection',\n 'Content-Length',\n 'Content-Type',\n 'Cookie',\n 'Date',\n 'Expect',\n 'Forwarded',\n 'From',\n 'Host',\n 'If-Match',\n 'If-Modified-Since',\n 'If-None-Match',\n 'If-Range',\n 'If-Unmodified-Since',\n 'Max-Forwards',\n 'Origin',\n 'Pragma',\n 'Proxy-Authorization',\n 'Range',\n 'Referer',\n 'TE',\n 'User-Agent',\n 'Upgrade',\n 'Via',\n 'Warning',\n] as const;\n\ntype HTTPHeaders = (typeof HTTP_HEADERS)[number];\n\nexport { HeadersInput };\n","import { Box, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check, Cross, Loader } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\n/* -------------------------------------------------------------------------------------------------\n * TriggerContainer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface TriggerContainerProps extends Pick<StatusProps, 'isPending'> {\n onCancel: () => void;\n response?: {\n statusCode: number;\n message?: string;\n };\n}\n\nconst TriggerContainer = ({ isPending, onCancel, response }: TriggerContainerProps) => {\n const { statusCode, message } = response ?? {};\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={5} shadow=\"filterShadow\" hasRadius>\n <Grid.Root gap={4} style={{ alignItems: 'center' }}>\n <Grid.Item col={3} direction=\"column\" alignItems=\"stretch\">\n <Typography>\n {formatMessage({\n id: 'Settings.webhooks.trigger.test',\n defaultMessage: 'Test-trigger',\n })}\n </Typography>\n </Grid.Item>\n <Grid.Item col={3} direction=\"column\" alignItems=\"stretch\">\n <Status isPending={isPending} statusCode={statusCode} />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n {!isPending ? (\n <Message statusCode={statusCode} message={message} />\n ) : (\n <Flex justifyContent=\"flex-end\">\n <button onClick={onCancel} type=\"button\">\n <Flex gap={2} alignItems=\"center\">\n <Typography textColor=\"neutral400\">\n {formatMessage({\n id: 'Settings.webhooks.trigger.cancel',\n defaultMessage: 'cancel',\n })}\n </Typography>\n <Cross fill=\"neutral400\" height=\"1.2rem\" width=\"1.2rem\" />\n </Flex>\n </button>\n </Flex>\n )}\n </Grid.Item>\n </Grid.Root>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Status\n * -----------------------------------------------------------------------------------------------*/\n\ninterface StatusProps {\n isPending: boolean;\n statusCode?: number;\n}\n\nconst Status = ({ isPending, statusCode }: StatusProps) => {\n const { formatMessage } = useIntl();\n\n if (isPending || !statusCode) {\n return (\n <Flex gap={2} alignItems=\"center\">\n <Loader height=\"1.2rem\" width=\"1.2rem\" />\n <Typography>\n {formatMessage({ id: 'Settings.webhooks.trigger.pending', defaultMessage: 'pending' })}\n </Typography>\n </Flex>\n );\n }\n\n if (statusCode >= 200 && statusCode < 300) {\n return (\n <Flex gap={2} alignItems=\"center\">\n <Check fill=\"success700\" height=\"1.2rem\" width=\"1.2rem\" />\n <Typography>\n {formatMessage({ id: 'Settings.webhooks.trigger.success', defaultMessage: 'success' })}\n </Typography>\n </Flex>\n );\n }\n\n if (statusCode >= 300) {\n return (\n <Flex gap={2} alignItems=\"center\">\n <Cross fill=\"danger700\" height=\"1.2rem\" width=\"1.2rem\" />\n <Typography>\n {formatMessage({ id: 'Settings.error', defaultMessage: 'error' })} {statusCode}\n </Typography>\n </Flex>\n );\n }\n\n return null;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Message\n * -----------------------------------------------------------------------------------------------*/\n\ninterface MessageProps {\n statusCode?: number;\n message?: string;\n}\n\nconst Message = ({ statusCode, message }: MessageProps) => {\n const { formatMessage } = useIntl();\n\n if (!statusCode) {\n return null;\n }\n\n if (statusCode >= 200 && statusCode < 300) {\n return (\n <Flex justifyContent=\"flex-end\">\n <Typography textColor=\"neutral600\" ellipsis>\n {formatMessage({\n id: 'Settings.webhooks.trigger.success.label',\n defaultMessage: 'Trigger succeeded',\n })}\n </Typography>\n </Flex>\n );\n }\n\n if (statusCode >= 300) {\n return (\n <Flex justifyContent=\"flex-end\">\n <Flex maxWidth={`25rem`} justifyContent=\"flex-end\" title={message}>\n <Typography ellipsis textColor=\"neutral600\">\n {message}\n </Typography>\n </Flex>\n </Flex>\n );\n }\n\n return null;\n};\n\nexport { TriggerContainer };\n","import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, TextInput } from '@strapi/design-system';\nimport { Check, Play as Publish } from '@strapi/icons';\nimport { IntlShape, useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport { TriggerWebhook } from '../../../../../../../shared/contracts/webhooks';\nimport { Form, FormHelpers } from '../../../../../components/Form';\nimport { InputRenderer } from '../../../../../components/FormInputs/Renderer';\nimport { Layouts } from '../../../../../components/Layouts/Layout';\nimport { BackButton } from '../../../../../features/BackButton';\nimport { useEnterprise } from '../../../../../hooks/useEnterprise';\n\nimport { EventTableCE } from './EventsTable';\nimport { HeadersInput } from './HeadersInput';\nimport { TriggerContainer } from './TriggerContainer';\n\nimport type { Modules } from '@strapi/types';\n\ninterface WebhookFormValues {\n name: Modules.WebhookStore.Webhook['name'];\n url: Modules.WebhookStore.Webhook['url'];\n headers: Array<{ key: string; value: string }>;\n events: Modules.WebhookStore.Webhook['events'];\n}\n\ninterface WebhookFormProps {\n data?: Modules.WebhookStore.Webhook;\n handleSubmit: (\n values: WebhookFormValues,\n helpers: FormHelpers<WebhookFormValues>\n ) => Promise<void>;\n isCreating: boolean;\n isTriggering: boolean;\n triggerWebhook: () => void;\n triggerResponse?: TriggerWebhook.Response['data'];\n}\n\nconst WebhookForm = ({\n handleSubmit,\n triggerWebhook,\n isCreating,\n isTriggering,\n triggerResponse,\n data,\n}: WebhookFormProps) => {\n const { formatMessage } = useIntl();\n const [showTriggerResponse, setShowTriggerResponse] = React.useState(false);\n const EventTable = useEnterprise(\n EventTableCE,\n async () =>\n (\n await import(\n '../../../../../../../ee/admin/src/pages/SettingsPage/pages/Webhooks/components/EventsTable'\n )\n ).EventsTableEE\n );\n\n /**\n * Map the headers into a form that can be used within the formik form\n */\n const mapHeaders = (headers: Modules.WebhookStore.Webhook['headers']) => {\n if (!Object.keys(headers).length) {\n return [{ key: '', value: '' }];\n }\n\n return Object.entries(headers).map(([key, value]) => ({ key, value }));\n };\n\n // block rendering until the EE component is fully loaded\n if (!EventTable) {\n return null;\n }\n\n return (\n <Form\n initialValues={{\n name: data?.name || '',\n url: data?.url || '',\n headers: mapHeaders(data?.headers || {}),\n events: data?.events || [],\n }}\n method={isCreating ? 'POST' : 'PUT'}\n onSubmit={handleSubmit}\n validationSchema={makeWebhookValidationSchema({ formatMessage })}\n >\n {({ isSubmitting, modified }) => (\n <>\n <Layouts.Header\n primaryAction={\n <Flex gap={2}>\n <Button\n onClick={() => {\n triggerWebhook();\n setShowTriggerResponse(true);\n }}\n variant=\"tertiary\"\n startIcon={<Publish />}\n disabled={isCreating || isTriggering}\n >\n {formatMessage({\n id: 'Settings.webhooks.trigger',\n defaultMessage: 'Trigger',\n })}\n </Button>\n <Button\n startIcon={<Check />}\n type=\"submit\"\n disabled={!modified}\n loading={isSubmitting}\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n }\n title={\n isCreating\n ? formatMessage({\n id: 'Settings.webhooks.create',\n defaultMessage: 'Create a webhook',\n })\n : data?.name\n }\n navigationAction={<BackButton fallback=\"../webhooks\" />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n {showTriggerResponse && (\n <TriggerContainer\n isPending={isTriggering}\n response={triggerResponse}\n onCancel={() => setShowTriggerResponse(false)}\n />\n )}\n <Box background=\"neutral0\" padding={8} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Grid.Root gap={6}>\n {[\n {\n label: formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n }),\n name: 'name',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: 'Settings.roles.form.input.url',\n defaultMessage: 'Url',\n }),\n name: 'url',\n required: true,\n size: 12,\n type: 'string' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <HeadersInput />\n <EventTable />\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n )}\n </Form>\n );\n};\n\nconst NAME_REGEX = /(^$)|(^[A-Za-z][_0-9A-Za-z ]*$)/;\nconst URL_REGEX = /(^$)|((https?:\\/\\/.*)(d*)\\/?(.*))/;\n\nconst makeWebhookValidationSchema = ({ formatMessage }: Pick<IntlShape, 'formatMessage'>) =>\n yup.object().shape({\n name: yup\n .string()\n .nullable()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.name.required',\n defaultMessage: 'Name is required',\n })\n )\n .matches(\n NAME_REGEX,\n formatMessage({\n id: 'Settings.webhooks.validation.name.regex',\n defaultMessage:\n 'The name must start with a letter and only contain letters, numbers, spaces and underscores',\n })\n ),\n url: yup\n .string()\n .nullable()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.url.required',\n defaultMessage: 'Url is required',\n })\n )\n .matches(\n URL_REGEX,\n formatMessage({\n id: 'Settings.webhooks.validation.url.regex',\n defaultMessage: 'The value must be a valid Url',\n })\n ),\n headers: yup.lazy((array) => {\n const baseSchema = yup.array();\n\n if (array.length === 1) {\n const { key, value } = array[0];\n\n if (!key && !value) {\n return baseSchema;\n }\n }\n\n return baseSchema.of(\n yup.object().shape({\n key: yup\n .string()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.key',\n defaultMessage: 'Key is required',\n })\n )\n .nullable(),\n value: yup\n .string()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.value',\n defaultMessage: 'Value is required',\n })\n )\n .nullable(),\n })\n );\n }),\n events: yup.array(),\n });\n\nexport { WebhookForm };\nexport type { WebhookFormValues, WebhookFormProps };\n","import * as React from 'react';\n\nimport { Main } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { useNavigate, useMatch } from 'react-router-dom';\n\nimport { CreateWebhook, TriggerWebhook } from '../../../../../../shared/contracts/webhooks';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\n\nimport { WebhookForm, WebhookFormProps, WebhookFormValues } from './components/WebhookForm';\nimport { useWebhooks } from './hooks/useWebhooks';\n\nimport type { Modules } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * EditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst cleanData = (\n data: WebhookFormValues\n): Omit<CreateWebhook.Request['body'], 'id' | 'isEnabled'> => ({\n ...data,\n headers: data.headers.reduce<Modules.WebhookStore.Webhook['headers']>((acc, { key, value }) => {\n if (key !== '') {\n acc[key] = value;\n }\n\n return acc;\n }, {}),\n});\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/webhooks/:id');\n const id = match?.params.id;\n const isCreating = id === 'create';\n\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n /**\n * Prevents the notifications from showing up twice because the function identity\n * coming from the helper plugin is not stable\n */\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const stableFormatAPIError = React.useCallback(formatAPIError, []);\n const [isTriggering, setIsTriggering] = React.useState(false);\n const [triggerResponse, setTriggerResponse] = React.useState<TriggerWebhook.Response['data']>();\n\n const { isLoading, webhooks, error, createWebhook, updateWebhook, triggerWebhook } = useWebhooks(\n { id: id! },\n {\n skip: isCreating,\n }\n );\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: stableFormatAPIError(error),\n });\n }\n }, [error, toggleNotification, stableFormatAPIError]);\n\n const handleTriggerWebhook = async () => {\n try {\n setIsTriggering(true);\n\n const res = await triggerWebhook(id!);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setTriggerResponse(res.data);\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n } finally {\n setIsTriggering(false);\n }\n };\n\n const handleSubmit: WebhookFormProps['handleSubmit'] = async (data, helpers) => {\n try {\n if (isCreating) {\n const res = await createWebhook(cleanData(data));\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'Settings.webhooks.created' }),\n });\n\n navigate(`../webhooks/${res.data.id}`, { replace: true });\n } else {\n const res = await updateWebhook({ id: id!, ...cleanData(data) });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.form.success.fields' }),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n }\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n const [webhook] = webhooks ?? [];\n\n return (\n <Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Webhooks',\n }\n )}\n </Page.Title>\n <WebhookForm\n data={webhook}\n handleSubmit={handleSubmit}\n triggerWebhook={handleTriggerWebhook}\n isCreating={isCreating}\n isTriggering={isTriggering}\n triggerResponse={triggerResponse}\n />\n </Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedEditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector(selectAdminPermissions);\n\n return (\n <Page.Protect permissions={permissions.settings?.webhooks.update}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedEditPage, EditPage };\n"],"names":["EventsRoot","children","formatMessage","useIntl","label","id","defaultMessage","_jsxs","Flex","direction","alignItems","gap","_jsx","Field","Label","aria-hidden","StyledTable","aria-label","styled","Table","theme","colors","neutral100","neutral500","spaces","getCEHeaders","headers","EventsHeaders","getHeaders","Thead","Tr","Th","VisuallyHidden","map","header","includes","title","Typography","variant","textColor","EventsBody","providedEvents","events","getCEEvents","value","onChange","useField","inputName","inputValue","disabledEvents","formattedValue","reduce","acc","curr","key","split","push","handleSelect","name","set","Set","add","delete","Array","from","handleSelectAll","forEach","event","Tbody","Object","entries","EventsRow","entryEvents","entry","media","enabledCheckboxes","filter","hasSomeCheckboxSelected","length","areAllCheckboxesSelected","onChangeAll","valueToSet","targetColumns","Td","Checkbox","checked","onCheckedChange","removeHyphensAndTitleCase","textAlign","width","justifyContent","disabled","colSpan","str","replace","word","charAt","toUpperCase","slice","toLowerCase","join","Events","Root","Headers","Body","Row","EventTableCE","AddHeaderButton","TextButton","HeadersInput","addFieldRow","useForm","state","removeFieldRow","setFieldValue","removeRow","index","DSField","Box","padding","background","hasRadius","val","Grid","Item","col","HeaderCombobox","style","flex","StringInput","type","IconButton","height","onClick","color","number","Minus","JSON","stringify","paddingTop","startIcon","Plus","restProps","options","setOptions","React","useState","HTTP_HEADERS","field","useEffect","headerOptions","some","handleChange","handleCreateOption","prev","error","Combobox","onClear","onCreateOption","placeholder","creatable","ComboboxOption","Error","TriggerContainer","isPending","onCancel","response","statusCode","message","shadow","Status","Message","button","Cross","fill","Loader","Check","ellipsis","maxWidth","WebhookForm","handleSubmit","triggerWebhook","isCreating","isTriggering","triggerResponse","data","showTriggerResponse","setShowTriggerResponse","EventTable","useEnterprise","EventsTableEE","mapHeaders","keys","Form","initialValues","url","method","onSubmit","validationSchema","makeWebhookValidationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","Publish","loading","navigationAction","BackButton","fallback","Content","required","size","InputRenderer","NAME_REGEX","URL_REGEX","yup","object","shape","string","nullable","matches","lazy","array","baseSchema","of","cleanData","EditPage","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","stableFormatAPIError","useCallback","setIsTriggering","setTriggerResponse","isLoading","webhooks","createWebhook","updateWebhook","useWebhooks","skip","handleTriggerWebhook","res","helpers","isBaseQueryError","setErrors","Page","Loading","webhook","Main","Title","ProtectedEditPage","permissions","useTypedSelector","selectAdminPermissions","Protect","settings","update"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EditPage-CycQlsFL.js","sources":["../../../admin/src/pages/Settings/pages/Webhooks/components/Events.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/EventsTable.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/TriggerContainer.tsx","../../../admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.tsx","../../../admin/src/pages/Settings/pages/Webhooks/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Checkbox,\n Flex,\n RawTable as Table,\n RawTbody as Tbody,\n RawTd as Td,\n RawTh as Th,\n RawThead as Thead,\n RawTr as Tr,\n Typography,\n VisuallyHidden,\n Field,\n CheckboxProps,\n} from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useField } from '../../../../../components/Form';\n\n/* -------------------------------------------------------------------------------------------------\n * EventsRoot\n * -----------------------------------------------------------------------------------------------*/\n\ninterface EventsRootProps {\n children: React.ReactNode;\n}\n\nconst EventsRoot = ({ children }: EventsRootProps) => {\n const { formatMessage } = useIntl();\n\n const label = formatMessage({\n id: 'Settings.webhooks.form.events',\n defaultMessage: 'Events',\n });\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Field.Label aria-hidden>{label}</Field.Label>\n {/* @ts-expect-error – TODO: add colCount & rowCount */}\n <StyledTable aria-label={label}>{children}</StyledTable>\n </Flex>\n );\n};\n\n// TODO check whether we want to move alternating background colour tables to the design system\nconst StyledTable = styled(Table)`\n tbody tr:nth-child(odd) {\n background: ${({ theme }) => theme.colors.neutral100};\n }\n\n thead th span {\n color: ${({ theme }) => theme.colors.neutral500};\n }\n\n td,\n th {\n padding-block-start: ${({ theme }) => theme.spaces[3]};\n padding-block-end: ${({ theme }) => theme.spaces[3]};\n width: 6%;\n vertical-align: middle;\n }\n\n tbody tr td:first-child {\n /**\n * Add padding to the start of the first column to avoid the checkbox appearing\n * too close to the edge of the table\n */\n padding-inline-start: ${({ theme }) => theme.spaces[2]};\n }\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * EventsHeaders\n * -----------------------------------------------------------------------------------------------*/\n\ninterface EventsHeadersProps {\n getHeaders?: typeof getCEHeaders;\n}\n\nconst getCEHeaders = (): MessageDescriptor[] => {\n const headers = [\n { id: 'Settings.webhooks.events.create', defaultMessage: 'Create' },\n { id: 'Settings.webhooks.events.update', defaultMessage: 'Update' },\n { id: 'app.utils.delete', defaultMessage: 'Delete' },\n { id: 'app.utils.publish', defaultMessage: 'Publish' },\n { id: 'app.utils.unpublish', defaultMessage: 'Unpublish' },\n ];\n\n return headers;\n};\n\nconst EventsHeaders = ({ getHeaders = getCEHeaders }: EventsHeadersProps) => {\n const { formatMessage } = useIntl();\n const headers = getHeaders();\n\n return (\n <Thead>\n <Tr>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.event.select',\n defaultMessage: 'Select event',\n })}\n </VisuallyHidden>\n </Th>\n {headers.map((header) => {\n if (['app.utils.publish', 'app.utils.unpublish'].includes(header?.id ?? '')) {\n return (\n <Th\n key={header.id}\n title={formatMessage({\n id: 'Settings.webhooks.event.publish-tooltip',\n defaultMessage: 'This event only exists for content with draft & publish enabled',\n })}\n >\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage(header)}\n </Typography>\n </Th>\n );\n }\n\n return (\n <Th key={header.id}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage(header)}\n </Typography>\n </Th>\n );\n })}\n </Tr>\n </Thead>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EventsBody\n * -----------------------------------------------------------------------------------------------*/\ninterface FormikContextValue {\n events: string[];\n}\n\ninterface EventsBodyProps {\n providedEvents?: Record<string, FormikContextValue['events']>;\n}\n\nconst EventsBody = ({ providedEvents }: EventsBodyProps) => {\n const events = providedEvents || getCEEvents();\n const { value = [], onChange } = useField<string[]>('events');\n\n const inputName = 'events';\n const inputValue = value;\n const disabledEvents: string[] = [];\n\n const formattedValue = inputValue.reduce<Record<string, string[]>>((acc, curr) => {\n const key = curr.split('.')[0];\n\n if (!acc[key]) {\n acc[key] = [];\n }\n acc[key].push(curr);\n\n return acc;\n }, {});\n\n const handleSelect: EventsRowProps['handleSelect'] = (name, value) => {\n const set = new Set(inputValue);\n\n if (value) {\n set.add(name);\n } else {\n set.delete(name);\n }\n\n onChange(inputName, Array.from(set));\n };\n\n const handleSelectAll: EventsRowProps['handleSelectAll'] = (name, value) => {\n const set = new Set(inputValue);\n\n if (value) {\n events[name].forEach((event) => {\n if (!disabledEvents.includes(event)) {\n set.add(event);\n }\n });\n } else {\n events[name].forEach((event) => set.delete(event));\n }\n\n onChange(inputName, Array.from(set));\n };\n\n return (\n <Tbody>\n {Object.entries(events).map(([event, value]) => {\n return (\n <EventsRow\n disabledEvents={disabledEvents}\n key={event}\n name={event}\n events={value}\n inputValue={formattedValue[event]}\n handleSelect={handleSelect}\n handleSelectAll={handleSelectAll}\n />\n );\n })}\n </Tbody>\n );\n};\n\nconst getCEEvents = (): Required<Pick<EventsBodyProps, 'providedEvents'>>['providedEvents'] => {\n const entryEvents: FormikContextValue['events'] = [\n 'entry.create',\n 'entry.update',\n 'entry.delete',\n 'entry.publish',\n 'entry.unpublish',\n ];\n\n return {\n entry: entryEvents,\n media: ['media.create', 'media.update', 'media.delete'],\n };\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EventsRow\n * -----------------------------------------------------------------------------------------------*/\n\ninterface EventsRowProps {\n disabledEvents?: string[];\n events?: string[];\n inputValue?: string[];\n handleSelect: (name: string, value: boolean) => void;\n handleSelectAll: (name: string, value: boolean) => void;\n name: string;\n}\n\nconst EventsRow = ({\n disabledEvents = [],\n name,\n events = [],\n inputValue = [],\n handleSelect,\n handleSelectAll,\n}: EventsRowProps) => {\n const { formatMessage } = useIntl();\n const enabledCheckboxes = events.filter((event) => !disabledEvents.includes(event));\n\n const hasSomeCheckboxSelected = inputValue.length > 0;\n const areAllCheckboxesSelected = inputValue.length === enabledCheckboxes.length;\n\n const onChangeAll: CheckboxProps['onCheckedChange'] = () => {\n const valueToSet = !areAllCheckboxesSelected;\n\n handleSelectAll(name, valueToSet);\n };\n\n const targetColumns = 5;\n\n return (\n <Tr>\n <Td>\n <Checkbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n name={name}\n checked={\n hasSomeCheckboxSelected && !areAllCheckboxesSelected\n ? 'indeterminate'\n : areAllCheckboxesSelected\n }\n onCheckedChange={onChangeAll}\n >\n {removeHyphensAndTitleCase(name)}\n </Checkbox>\n </Td>\n\n {events.map((event) => {\n return (\n <Td key={event} textAlign=\"center\">\n <Flex width=\"100%\" justifyContent=\"center\">\n <Checkbox\n disabled={disabledEvents.includes(event)}\n aria-label={event}\n name={event}\n checked={inputValue.includes(event)}\n onCheckedChange={(value) => handleSelect(event, !!value)}\n />\n </Flex>\n </Td>\n );\n })}\n {events.length < targetColumns && <Td colSpan={targetColumns - events.length} />}\n </Tr>\n );\n};\n\n/**\n * Converts a string to title case and removes hyphens.\n */\nconst removeHyphensAndTitleCase = (str: string): string =>\n str\n .replace(/-/g, ' ')\n .split(' ')\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n .join(' ');\n\nconst Events = { Root: EventsRoot, Headers: EventsHeaders, Body: EventsBody, Row: EventsRow };\n\nexport { Events };\nexport type { EventsRowProps, EventsHeadersProps, EventsRootProps, EventsBodyProps };\n","import { Events } from './Events';\n\nconst EventTableCE = () => {\n return (\n <Events.Root>\n <Events.Headers />\n <Events.Body />\n </Events.Root>\n );\n};\n\nexport { EventTableCE };\n","import * as React from 'react';\n\nimport {\n Box,\n Flex,\n Grid,\n TextButton,\n ComboboxOption,\n Combobox,\n ComboboxProps,\n IconButton,\n Field as DSField,\n} from '@strapi/design-system';\nimport { Minus, Plus } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useField, useForm } from '../../../../../components/Form';\nimport { StringInput } from '../../../../../components/FormInputs/String';\n\nconst AddHeaderButton = styled(TextButton)`\n cursor: pointer;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * HeadersInput\n * -----------------------------------------------------------------------------------------------*/\n\ninterface Header {\n key: HTTPHeaders;\n value: string;\n}\n\nconst HeadersInput = () => {\n const { formatMessage } = useIntl();\n\n const addFieldRow = useForm('HeadersInput', (state) => state.addFieldRow);\n const removeFieldRow = useForm('HeadersInput', (state) => state.removeFieldRow);\n const setFieldValue = useForm('HeadersInput', (state) => state.onChange);\n const { value = [] } = useField<Header[]>('headers');\n\n const removeRow = (index: number) => {\n // if we are removing the last row, simply clear it\n if (value.length === 1) {\n setFieldValue('headers', [{ key: '', value: '' }]);\n } else {\n removeFieldRow('headers', index);\n }\n };\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <DSField.Label>\n {formatMessage({\n id: 'Settings.webhooks.form.headers',\n defaultMessage: 'Headers',\n })}\n </DSField.Label>\n <Box padding={8} background=\"neutral100\" hasRadius>\n {value.map((val, index) => {\n return (\n <Grid.Root key={`${index}-${JSON.stringify(val.key)}`} gap={4} padding={2}>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <HeaderCombobox\n name={`headers.${index}.key`}\n aria-label={`row ${index + 1} key`}\n label={formatMessage({\n id: 'Settings.webhooks.key',\n defaultMessage: 'Key',\n })}\n />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <Flex alignItems=\"flex-end\" gap={2}>\n <Box style={{ flex: 1 }}>\n <StringInput\n name={`headers.${index}.value`}\n aria-label={`row ${index + 1} value`}\n label={formatMessage({\n id: 'Settings.webhooks.value',\n defaultMessage: 'Value',\n })}\n type=\"string\"\n />\n </Box>\n <IconButton\n width=\"4rem\"\n height=\"4rem\"\n onClick={() => removeRow(index)}\n color=\"primary600\"\n label={formatMessage(\n {\n id: 'Settings.webhooks.headers.remove',\n defaultMessage: 'Remove header row {number}',\n },\n { number: index + 1 }\n )}\n type=\"button\"\n >\n <Minus width=\"0.8rem\" />\n </IconButton>\n </Flex>\n </Grid.Item>\n </Grid.Root>\n );\n })}\n <Box paddingTop={4}>\n <AddHeaderButton\n type=\"button\"\n onClick={() => {\n addFieldRow('headers', { key: '', value: '' });\n }}\n startIcon={<Plus />}\n >\n {formatMessage({\n id: 'Settings.webhooks.create.header',\n defaultMessage: 'Create new header',\n })}\n </AddHeaderButton>\n </Box>\n </Box>\n </Flex>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * HeaderCombobox\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderComboboxProps extends Omit<ComboboxProps, 'children' | 'name'> {\n name: string;\n label: string;\n}\n\nconst HeaderCombobox = ({ name, label, ...restProps }: HeaderComboboxProps) => {\n const [options, setOptions] = React.useState<HTTPHeaders[]>([...HTTP_HEADERS]);\n const { value: headers } = useField<Header[]>('headers');\n const field = useField(name);\n\n React.useEffect(() => {\n const headerOptions = HTTP_HEADERS.filter(\n (key) => !headers?.some((header) => header.key !== field.value && header.key === key)\n );\n\n setOptions(headerOptions);\n }, [headers, field.value]);\n\n const handleChange: ComboboxProps['onChange'] = (value) => {\n field.onChange(name, value);\n };\n\n const handleCreateOption = (value: string) => {\n setOptions((prev) => [...prev, value as HTTPHeaders]);\n\n handleChange(value);\n };\n\n return (\n <DSField.Root name={name} error={field.error}>\n <DSField.Label>{label}</DSField.Label>\n <Combobox\n {...restProps}\n onClear={() => handleChange('')}\n onChange={handleChange}\n onCreateOption={handleCreateOption}\n placeholder=\"\"\n creatable\n value={field.value}\n >\n {options.map((key) => (\n <ComboboxOption value={key} key={key}>\n {key}\n </ComboboxOption>\n ))}\n </Combobox>\n <DSField.Error />\n </DSField.Root>\n );\n};\n\nconst HTTP_HEADERS = [\n 'A-IM',\n 'Accept',\n 'Accept-Charset',\n 'Accept-Encoding',\n 'Accept-Language',\n 'Accept-Datetime',\n 'Access-Control-Request-Method',\n 'Access-Control-Request-Headers',\n 'Authorization',\n 'Cache-Control',\n 'Connection',\n 'Content-Length',\n 'Content-Type',\n 'Cookie',\n 'Date',\n 'Expect',\n 'Forwarded',\n 'From',\n 'Host',\n 'If-Match',\n 'If-Modified-Since',\n 'If-None-Match',\n 'If-Range',\n 'If-Unmodified-Since',\n 'Max-Forwards',\n 'Origin',\n 'Pragma',\n 'Proxy-Authorization',\n 'Range',\n 'Referer',\n 'TE',\n 'User-Agent',\n 'Upgrade',\n 'Via',\n 'Warning',\n] as const;\n\ntype HTTPHeaders = (typeof HTTP_HEADERS)[number];\n\nexport { HeadersInput };\n","import { Box, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check, Cross, Loader } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\n/* -------------------------------------------------------------------------------------------------\n * TriggerContainer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface TriggerContainerProps extends Pick<StatusProps, 'isPending'> {\n onCancel: () => void;\n response?: {\n statusCode: number;\n message?: string;\n };\n}\n\nconst TriggerContainer = ({ isPending, onCancel, response }: TriggerContainerProps) => {\n const { statusCode, message } = response ?? {};\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={5} shadow=\"filterShadow\" hasRadius>\n <Grid.Root gap={4} style={{ alignItems: 'center' }}>\n <Grid.Item col={3} direction=\"column\" alignItems=\"stretch\">\n <Typography>\n {formatMessage({\n id: 'Settings.webhooks.trigger.test',\n defaultMessage: 'Test-trigger',\n })}\n </Typography>\n </Grid.Item>\n <Grid.Item col={3} direction=\"column\" alignItems=\"stretch\">\n <Status isPending={isPending} statusCode={statusCode} />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n {!isPending ? (\n <Message statusCode={statusCode} message={message} />\n ) : (\n <Flex justifyContent=\"flex-end\">\n <button onClick={onCancel} type=\"button\">\n <Flex gap={2} alignItems=\"center\">\n <Typography textColor=\"neutral400\">\n {formatMessage({\n id: 'Settings.webhooks.trigger.cancel',\n defaultMessage: 'cancel',\n })}\n </Typography>\n <Cross fill=\"neutral400\" height=\"1.2rem\" width=\"1.2rem\" />\n </Flex>\n </button>\n </Flex>\n )}\n </Grid.Item>\n </Grid.Root>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Status\n * -----------------------------------------------------------------------------------------------*/\n\ninterface StatusProps {\n isPending: boolean;\n statusCode?: number;\n}\n\nconst Status = ({ isPending, statusCode }: StatusProps) => {\n const { formatMessage } = useIntl();\n\n if (isPending || !statusCode) {\n return (\n <Flex gap={2} alignItems=\"center\">\n <Loader height=\"1.2rem\" width=\"1.2rem\" />\n <Typography>\n {formatMessage({ id: 'Settings.webhooks.trigger.pending', defaultMessage: 'pending' })}\n </Typography>\n </Flex>\n );\n }\n\n if (statusCode >= 200 && statusCode < 300) {\n return (\n <Flex gap={2} alignItems=\"center\">\n <Check fill=\"success700\" height=\"1.2rem\" width=\"1.2rem\" />\n <Typography>\n {formatMessage({ id: 'Settings.webhooks.trigger.success', defaultMessage: 'success' })}\n </Typography>\n </Flex>\n );\n }\n\n if (statusCode >= 300) {\n return (\n <Flex gap={2} alignItems=\"center\">\n <Cross fill=\"danger700\" height=\"1.2rem\" width=\"1.2rem\" />\n <Typography>\n {formatMessage({ id: 'Settings.error', defaultMessage: 'error' })} {statusCode}\n </Typography>\n </Flex>\n );\n }\n\n return null;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Message\n * -----------------------------------------------------------------------------------------------*/\n\ninterface MessageProps {\n statusCode?: number;\n message?: string;\n}\n\nconst Message = ({ statusCode, message }: MessageProps) => {\n const { formatMessage } = useIntl();\n\n if (!statusCode) {\n return null;\n }\n\n if (statusCode >= 200 && statusCode < 300) {\n return (\n <Flex justifyContent=\"flex-end\">\n <Typography textColor=\"neutral600\" ellipsis>\n {formatMessage({\n id: 'Settings.webhooks.trigger.success.label',\n defaultMessage: 'Trigger succeeded',\n })}\n </Typography>\n </Flex>\n );\n }\n\n if (statusCode >= 300) {\n return (\n <Flex justifyContent=\"flex-end\">\n <Flex maxWidth={`25rem`} justifyContent=\"flex-end\" title={message}>\n <Typography ellipsis textColor=\"neutral600\">\n {message}\n </Typography>\n </Flex>\n </Flex>\n );\n }\n\n return null;\n};\n\nexport { TriggerContainer };\n","import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, TextInput } from '@strapi/design-system';\nimport { Check, Play as Publish } from '@strapi/icons';\nimport { IntlShape, useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport { TriggerWebhook } from '../../../../../../../shared/contracts/webhooks';\nimport { Form, FormHelpers } from '../../../../../components/Form';\nimport { InputRenderer } from '../../../../../components/FormInputs/Renderer';\nimport { Layouts } from '../../../../../components/Layouts/Layout';\nimport { BackButton } from '../../../../../features/BackButton';\nimport { useEnterprise } from '../../../../../hooks/useEnterprise';\n\nimport { EventTableCE } from './EventsTable';\nimport { HeadersInput } from './HeadersInput';\nimport { TriggerContainer } from './TriggerContainer';\n\nimport type { Modules } from '@strapi/types';\n\ninterface WebhookFormValues {\n name: Modules.WebhookStore.Webhook['name'];\n url: Modules.WebhookStore.Webhook['url'];\n headers: Array<{ key: string; value: string }>;\n events: Modules.WebhookStore.Webhook['events'];\n}\n\ninterface WebhookFormProps {\n data?: Modules.WebhookStore.Webhook;\n handleSubmit: (\n values: WebhookFormValues,\n helpers: FormHelpers<WebhookFormValues>\n ) => Promise<void>;\n isCreating: boolean;\n isTriggering: boolean;\n triggerWebhook: () => void;\n triggerResponse?: TriggerWebhook.Response['data'];\n}\n\nconst WebhookForm = ({\n handleSubmit,\n triggerWebhook,\n isCreating,\n isTriggering,\n triggerResponse,\n data,\n}: WebhookFormProps) => {\n const { formatMessage } = useIntl();\n const [showTriggerResponse, setShowTriggerResponse] = React.useState(false);\n const EventTable = useEnterprise(\n EventTableCE,\n async () =>\n (\n await import(\n '../../../../../../../ee/admin/src/pages/SettingsPage/pages/Webhooks/components/EventsTable'\n )\n ).EventsTableEE\n );\n\n /**\n * Map the headers into a form that can be used within the formik form\n */\n const mapHeaders = (headers: Modules.WebhookStore.Webhook['headers']) => {\n if (!Object.keys(headers).length) {\n return [{ key: '', value: '' }];\n }\n\n return Object.entries(headers).map(([key, value]) => ({ key, value }));\n };\n\n // block rendering until the EE component is fully loaded\n if (!EventTable) {\n return null;\n }\n\n return (\n <Form\n initialValues={{\n name: data?.name || '',\n url: data?.url || '',\n headers: mapHeaders(data?.headers || {}),\n events: data?.events || [],\n }}\n method={isCreating ? 'POST' : 'PUT'}\n onSubmit={handleSubmit}\n validationSchema={makeWebhookValidationSchema({ formatMessage })}\n >\n {({ isSubmitting, modified }) => (\n <>\n <Layouts.Header\n primaryAction={\n <Flex gap={2}>\n <Button\n onClick={() => {\n triggerWebhook();\n setShowTriggerResponse(true);\n }}\n variant=\"tertiary\"\n startIcon={<Publish />}\n disabled={isCreating || isTriggering}\n >\n {formatMessage({\n id: 'Settings.webhooks.trigger',\n defaultMessage: 'Trigger',\n })}\n </Button>\n <Button\n startIcon={<Check />}\n type=\"submit\"\n disabled={!modified}\n loading={isSubmitting}\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n }\n title={\n isCreating\n ? formatMessage({\n id: 'Settings.webhooks.create',\n defaultMessage: 'Create a webhook',\n })\n : data?.name\n }\n navigationAction={<BackButton fallback=\"../webhooks\" />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n {showTriggerResponse && (\n <TriggerContainer\n isPending={isTriggering}\n response={triggerResponse}\n onCancel={() => setShowTriggerResponse(false)}\n />\n )}\n <Box background=\"neutral0\" padding={8} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Grid.Root gap={6}>\n {[\n {\n label: formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n }),\n name: 'name',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: 'Settings.roles.form.input.url',\n defaultMessage: 'Url',\n }),\n name: 'url',\n required: true,\n size: 12,\n type: 'string' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <HeadersInput />\n <EventTable />\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n )}\n </Form>\n );\n};\n\nconst NAME_REGEX = /(^$)|(^[A-Za-z][_0-9A-Za-z ]*$)/;\nconst URL_REGEX = /(^$)|((https?:\\/\\/.*)(d*)\\/?(.*))/;\n\nconst makeWebhookValidationSchema = ({ formatMessage }: Pick<IntlShape, 'formatMessage'>) =>\n yup.object().shape({\n name: yup\n .string()\n .nullable()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.name.required',\n defaultMessage: 'Name is required',\n })\n )\n .matches(\n NAME_REGEX,\n formatMessage({\n id: 'Settings.webhooks.validation.name.regex',\n defaultMessage:\n 'The name must start with a letter and only contain letters, numbers, spaces and underscores',\n })\n ),\n url: yup\n .string()\n .nullable()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.url.required',\n defaultMessage: 'Url is required',\n })\n )\n .matches(\n URL_REGEX,\n formatMessage({\n id: 'Settings.webhooks.validation.url.regex',\n defaultMessage: 'The value must be a valid Url',\n })\n ),\n headers: yup.lazy((array) => {\n const baseSchema = yup.array();\n\n if (array.length === 1) {\n const { key, value } = array[0];\n\n if (!key && !value) {\n return baseSchema;\n }\n }\n\n return baseSchema.of(\n yup.object().shape({\n key: yup\n .string()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.key',\n defaultMessage: 'Key is required',\n })\n )\n .nullable(),\n value: yup\n .string()\n .required(\n formatMessage({\n id: 'Settings.webhooks.validation.value',\n defaultMessage: 'Value is required',\n })\n )\n .nullable(),\n })\n );\n }),\n events: yup.array(),\n });\n\nexport { WebhookForm };\nexport type { WebhookFormValues, WebhookFormProps };\n","import * as React from 'react';\n\nimport { Main } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { useNavigate, useMatch } from 'react-router-dom';\n\nimport { CreateWebhook, TriggerWebhook } from '../../../../../../shared/contracts/webhooks';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\n\nimport { WebhookForm, WebhookFormProps, WebhookFormValues } from './components/WebhookForm';\nimport { useWebhooks } from './hooks/useWebhooks';\n\nimport type { Modules } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * EditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst cleanData = (\n data: WebhookFormValues\n): Omit<CreateWebhook.Request['body'], 'id' | 'isEnabled'> => ({\n ...data,\n headers: data.headers.reduce<Modules.WebhookStore.Webhook['headers']>((acc, { key, value }) => {\n if (key !== '') {\n acc[key] = value;\n }\n\n return acc;\n }, {}),\n});\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/webhooks/:id');\n const id = match?.params.id;\n const isCreating = id === 'create';\n\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n /**\n * Prevents the notifications from showing up twice because the function identity\n * coming from the helper plugin is not stable\n */\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const stableFormatAPIError = React.useCallback(formatAPIError, []);\n const [isTriggering, setIsTriggering] = React.useState(false);\n const [triggerResponse, setTriggerResponse] = React.useState<TriggerWebhook.Response['data']>();\n\n const { isLoading, webhooks, error, createWebhook, updateWebhook, triggerWebhook } = useWebhooks(\n { id: id! },\n {\n skip: isCreating,\n }\n );\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: stableFormatAPIError(error),\n });\n }\n }, [error, toggleNotification, stableFormatAPIError]);\n\n const handleTriggerWebhook = async () => {\n try {\n setIsTriggering(true);\n\n const res = await triggerWebhook(id!);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setTriggerResponse(res.data);\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n } finally {\n setIsTriggering(false);\n }\n };\n\n const handleSubmit: WebhookFormProps['handleSubmit'] = async (data, helpers) => {\n try {\n if (isCreating) {\n const res = await createWebhook(cleanData(data));\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'Settings.webhooks.created' }),\n });\n\n navigate(`../webhooks/${res.data.id}`, { replace: true });\n } else {\n const res = await updateWebhook({ id: id!, ...cleanData(data) });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.form.success.fields' }),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n }\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n const [webhook] = webhooks ?? [];\n\n return (\n <Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Webhooks',\n }\n )}\n </Page.Title>\n <WebhookForm\n data={webhook}\n handleSubmit={handleSubmit}\n triggerWebhook={handleTriggerWebhook}\n isCreating={isCreating}\n isTriggering={isTriggering}\n triggerResponse={triggerResponse}\n />\n </Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedEditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector(selectAdminPermissions);\n\n return (\n <Page.Protect permissions={permissions.settings?.webhooks.update}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedEditPage, EditPage };\n"],"names":["EventsRoot","children","formatMessage","useIntl","label","id","defaultMessage","_jsxs","Flex","direction","alignItems","gap","_jsx","Field","Label","aria-hidden","StyledTable","aria-label","styled","Table","theme","colors","neutral100","neutral500","spaces","getCEHeaders","headers","EventsHeaders","getHeaders","Thead","Tr","Th","VisuallyHidden","map","header","includes","title","Typography","variant","textColor","EventsBody","providedEvents","events","getCEEvents","value","onChange","useField","inputName","inputValue","disabledEvents","formattedValue","reduce","acc","curr","key","split","push","handleSelect","name","set","Set","add","delete","Array","from","handleSelectAll","forEach","event","Tbody","Object","entries","EventsRow","entryEvents","entry","media","enabledCheckboxes","filter","hasSomeCheckboxSelected","length","areAllCheckboxesSelected","onChangeAll","valueToSet","targetColumns","Td","Checkbox","checked","onCheckedChange","removeHyphensAndTitleCase","textAlign","width","justifyContent","disabled","colSpan","str","replace","word","charAt","toUpperCase","slice","toLowerCase","join","Events","Root","Headers","Body","Row","EventTableCE","AddHeaderButton","TextButton","HeadersInput","addFieldRow","useForm","state","removeFieldRow","setFieldValue","removeRow","index","DSField","Box","padding","background","hasRadius","val","Grid","Item","col","HeaderCombobox","style","flex","StringInput","type","IconButton","height","onClick","color","number","Minus","JSON","stringify","paddingTop","startIcon","Plus","restProps","options","setOptions","React","useState","HTTP_HEADERS","field","useEffect","headerOptions","some","handleChange","handleCreateOption","prev","error","Combobox","onClear","onCreateOption","placeholder","creatable","ComboboxOption","Error","TriggerContainer","isPending","onCancel","response","statusCode","message","shadow","Status","Message","button","Cross","fill","Loader","Check","ellipsis","maxWidth","WebhookForm","handleSubmit","triggerWebhook","isCreating","isTriggering","triggerResponse","data","showTriggerResponse","setShowTriggerResponse","EventTable","useEnterprise","EventsTableEE","mapHeaders","keys","Form","initialValues","url","method","onSubmit","validationSchema","makeWebhookValidationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","Publish","loading","navigationAction","BackButton","fallback","Content","required","size","InputRenderer","NAME_REGEX","URL_REGEX","yup","object","shape","string","nullable","matches","lazy","array","baseSchema","of","cleanData","EditPage","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","stableFormatAPIError","useCallback","setIsTriggering","setTriggerResponse","isLoading","webhooks","createWebhook","updateWebhook","useWebhooks","skip","handleTriggerWebhook","res","helpers","isBaseQueryError","setErrors","Page","Loading","webhook","Main","Title","ProtectedEditPage","permissions","useTypedSelector","selectAdminPermissions","Protect","settings","update"],"mappings":"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"}
|
|
@@ -6,14 +6,14 @@ import pick from 'lodash/pick';
|
|
|
6
6
|
import { useIntl } from 'react-intl';
|
|
7
7
|
import { useMatch, useNavigate } from 'react-router-dom';
|
|
8
8
|
import * as yup from 'yup';
|
|
9
|
-
import { e as errorsTrads, j as useUpdateUserMutation, k as useAdminUsers, F as Form, b as Layouts, B as BackButton, M as MemoizedInputRenderer } from './index-
|
|
10
|
-
import { b as useTypedSelector, P as Page, a as useNotification, e as useAPIErrorHandler, k as useRBAC } from './Theme-
|
|
9
|
+
import { e as errorsTrads, j as useUpdateUserMutation, k as useAdminUsers, F as Form, b as Layouts, B as BackButton, M as MemoizedInputRenderer } from './index-BM8-DG5K.mjs';
|
|
10
|
+
import { b as useTypedSelector, P as Page, a as useNotification, e as useAPIErrorHandler, k as useRBAC } from './Theme-C3oHrQcy.mjs';
|
|
11
11
|
import { u as useEnterprise } from './useEnterprise-Dy8wMNV5.mjs';
|
|
12
|
-
import { s as selectAdminPermissions } from './selectors-
|
|
12
|
+
import { s as selectAdminPermissions } from './selectors-Dej_6h4x.mjs';
|
|
13
13
|
import { i as isBaseQueryError } from './admin-BBS7sDVu.mjs';
|
|
14
14
|
import { g as getDisplayName } from './users-B3iOAYG-.mjs';
|
|
15
|
-
import { M as MagicLinkCE, S as SelectRoles } from './SelectRoles-
|
|
16
|
-
import { C as COMMON_USER_SCHEMA } from './validation-
|
|
15
|
+
import { M as MagicLinkCE, S as SelectRoles } from './SelectRoles-DR4KBZkw.mjs';
|
|
16
|
+
import { C as COMMON_USER_SCHEMA } from './validation-Dmvl0gZQ.mjs';
|
|
17
17
|
import 'react-dom/client';
|
|
18
18
|
import 'invariant';
|
|
19
19
|
import 'lodash/isFunction';
|
|
@@ -42,7 +42,7 @@ import 'lodash/defaultsDeep';
|
|
|
42
42
|
import 'lodash/trimEnd';
|
|
43
43
|
import '@reduxjs/toolkit/query/react';
|
|
44
44
|
import 'lodash/fp/pipe';
|
|
45
|
-
import './useAdminRoles-
|
|
45
|
+
import './useAdminRoles-C6Es4UUq.mjs';
|
|
46
46
|
|
|
47
47
|
const EDIT_VALIDATION_SCHEMA = yup.object().shape({
|
|
48
48
|
...COMMON_USER_SCHEMA,
|
|
@@ -71,7 +71,7 @@ const fieldsToPick = [
|
|
|
71
71
|
const id = match?.params?.id ?? '';
|
|
72
72
|
const navigate = useNavigate();
|
|
73
73
|
const { toggleNotification } = useNotification();
|
|
74
|
-
const MagicLink = useEnterprise(MagicLinkCE, async ()=>(await import('./MagicLinkEE-
|
|
74
|
+
const MagicLink = useEnterprise(MagicLinkCE, async ()=>(await import('./MagicLinkEE-EcyHC46Y.mjs')).MagicLinkEE);
|
|
75
75
|
const { _unstableFormatAPIError: formatAPIError, _unstableFormatValidationErrors: formatValidationErrors } = useAPIErrorHandler();
|
|
76
76
|
const permissions = useTypedSelector(selectAdminPermissions);
|
|
77
77
|
const { isLoading: isLoadingRBAC, allowedActions: { canUpdate } } = useRBAC({
|
|
@@ -394,4 +394,4 @@ const ProtectedEditPage = ()=>{
|
|
|
394
394
|
};
|
|
395
395
|
|
|
396
396
|
export { EditPage, ProtectedEditPage };
|
|
397
|
-
//# sourceMappingURL=EditPage-
|
|
397
|
+
//# sourceMappingURL=EditPage-MmQQ4hWc.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditPage-LRn1-C88.mjs","sources":["../../../admin/src/pages/Settings/pages/Users/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport pick from 'lodash/pick';\nimport { useIntl } from 'react-intl';\nimport { useMatch, useNavigate } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Update } from '../../../../../../shared/contracts/user';\nimport { Form, FormHelpers } from '../../../../components/Form';\nimport { InputRenderer } from '../../../../components/FormInputs/Renderer';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useEnterprise } from '../../../../hooks/useEnterprise';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { useAdminUsers, useUpdateUserMutation } from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { getDisplayName } from '../../../../utils/users';\n\nimport { MagicLinkCE } from './components/MagicLinkCE';\nimport { SelectRoles } from './components/SelectRoles';\nimport { COMMON_USER_SCHEMA } from './utils/validation';\n\nconst EDIT_VALIDATION_SCHEMA = yup.object().shape({\n ...COMMON_USER_SCHEMA,\n isActive: yup.bool(),\n roles: yup\n .array()\n .min(1, {\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n});\n\nconst fieldsToPick = ['email', 'firstname', 'lastname', 'username', 'isActive', 'roles'] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/users/:id');\n const id = match?.params?.id ?? '';\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE'\n )\n ).MagicLinkEE\n );\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const permissions = useTypedSelector(selectAdminPermissions);\n\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canUpdate },\n } = useRBAC({\n read: permissions.settings?.users.read ?? [],\n update: permissions.settings?.users.update ?? [],\n });\n\n const [updateUser] = useUpdateUserMutation();\n\n const {\n data,\n error,\n isLoading: isLoadingAdminUsers,\n } = useAdminUsers(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [user] = data?.users ?? [];\n\n React.useEffect(() => {\n if (error) {\n // Redirect the user to the homepage if is not allowed to read\n if (error.name === 'UnauthorizedError') {\n toggleNotification({\n type: 'info',\n message: formatMessage({\n id: 'notification.permission.not-allowed-read',\n defaultMessage: 'You are not allowed to see this document',\n }),\n });\n\n navigate('/');\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n }, [error, formatAPIError, formatMessage, navigate, toggleNotification]);\n\n const isLoading = isLoadingAdminUsers || !MagicLink || isLoadingRBAC;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n type InitialData = Pick<Update.Request['body'], (typeof fieldsToPick)[number]> & {\n confirmPassword: string;\n password: string;\n };\n\n const initialData = {\n ...pick(user, fieldsToPick),\n roles: user.roles.map(({ id }) => id),\n password: '',\n confirmPassword: '',\n } satisfies InitialData;\n\n const handleSubmit = async (body: InitialData, actions: FormHelpers<InitialData>) => {\n const { confirmPassword: _confirmPassword, ...bodyRest } = body;\n\n const res = await updateUser({\n id,\n ...bodyRest,\n });\n\n if ('error' in res && isBaseQueryError(res.error)) {\n if (res.error.name === 'ValidationError') {\n actions.setErrors(formatValidationErrors(res.error));\n }\n\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n } else {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n actions.setValues({\n ...pick(body, fieldsToPick),\n password: '',\n confirmPassword: '',\n });\n }\n };\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Users',\n }\n )}\n </Page.Title>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n initialValues={initialData}\n validationSchema={EDIT_VALIDATION_SCHEMA}\n >\n {({ isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={isSubmitting || !canUpdate || !modified}\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n title={formatMessage(\n {\n id: 'app.containers.Users.EditPage.header.label',\n defaultMessage: 'Edit {name}',\n },\n {\n // @ts-expect-error – issues with the Entity ID type, still.\n name: getDisplayName(initialData),\n }\n )}\n navigationAction={<BackButton fallback=\"../users\" />}\n />\n <Layouts.Content>\n {user?.registrationToken && (\n <Box paddingBottom={6}>\n <MagicLink registrationToken={user.registrationToken} />\n </Box>\n )}\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n {LAYOUT.map((row) =>\n row.map(({ size, label, ...field }) => {\n return (\n <Grid.Item\n key={field.name}\n col={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={!canUpdate}\n label={formatMessage(label)}\n placeholder={\n 'placeholder' in field\n ? formatMessage(field.placeholder)\n : undefined\n }\n />\n </Grid.Item>\n );\n })\n )}\n </Grid.Root>\n </Flex>\n </Box>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <SelectRoles disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage LAYOUT\n * -----------------------------------------------------------------------------------------------*/\n\nconst LAYOUT = [\n [\n {\n label: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'string' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n },\n name: 'username',\n placeholder: {\n id: 'Auth.form.username.placeholder',\n defaultMessage: 'e.g. Kai_Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n autoComplete: 'new-password',\n label: {\n id: 'global.password',\n defaultMessage: 'Password',\n },\n name: 'password',\n type: 'password' as const,\n size: 6,\n },\n {\n autoComplete: 'new-password',\n label: {\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Password confirmation',\n },\n name: 'confirmPassword',\n type: 'password' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.active.label',\n defaultMessage: 'Active',\n },\n name: 'isActive',\n type: 'boolean' as const,\n size: 6,\n },\n ],\n];\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.users.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\n"],"names":["EDIT_VALIDATION_SCHEMA","yup","object","shape","COMMON_USER_SCHEMA","isActive","bool","roles","array","min","id","translatedErrors","required","defaultMessage","fieldsToPick","EditPage","formatMessage","useIntl","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","MagicLink","useEnterprise","MagicLinkCE","MagicLinkEE","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","permissions","useTypedSelector","selectAdminPermissions","isLoading","isLoadingRBAC","allowedActions","canUpdate","useRBAC","read","settings","users","update","updateUser","useUpdateUserMutation","data","error","isLoadingAdminUsers","useAdminUsers","refetchOnMountOrArgChange","user","React","useEffect","name","type","message","_jsx","Page","Loading","initialData","pick","map","password","confirmPassword","handleSubmit","body","actions","_confirmPassword","bodyRest","res","isBaseQueryError","setErrors","setValues","_jsxs","Main","Title","Form","method","onSubmit","initialValues","validationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","disabled","startIcon","Check","loading","title","getDisplayName","navigationAction","BackButton","fallback","Content","registrationToken","Box","paddingBottom","Flex","direction","alignItems","gap","background","hasRadius","shadow","paddingTop","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","LAYOUT","row","size","label","field","Item","col","InputRenderer","placeholder","undefined","xs","SelectRoles","autoComplete","ProtectedEditPage","state","admin_app","Protect"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EditPage-MmQQ4hWc.mjs","sources":["../../../admin/src/pages/Settings/pages/Users/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport pick from 'lodash/pick';\nimport { useIntl } from 'react-intl';\nimport { useMatch, useNavigate } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Update } from '../../../../../../shared/contracts/user';\nimport { Form, FormHelpers } from '../../../../components/Form';\nimport { InputRenderer } from '../../../../components/FormInputs/Renderer';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useEnterprise } from '../../../../hooks/useEnterprise';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { useAdminUsers, useUpdateUserMutation } from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { getDisplayName } from '../../../../utils/users';\n\nimport { MagicLinkCE } from './components/MagicLinkCE';\nimport { SelectRoles } from './components/SelectRoles';\nimport { COMMON_USER_SCHEMA } from './utils/validation';\n\nconst EDIT_VALIDATION_SCHEMA = yup.object().shape({\n ...COMMON_USER_SCHEMA,\n isActive: yup.bool(),\n roles: yup\n .array()\n .min(1, {\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n});\n\nconst fieldsToPick = ['email', 'firstname', 'lastname', 'username', 'isActive', 'roles'] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/users/:id');\n const id = match?.params?.id ?? '';\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE'\n )\n ).MagicLinkEE\n );\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const permissions = useTypedSelector(selectAdminPermissions);\n\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canUpdate },\n } = useRBAC({\n read: permissions.settings?.users.read ?? [],\n update: permissions.settings?.users.update ?? [],\n });\n\n const [updateUser] = useUpdateUserMutation();\n\n const {\n data,\n error,\n isLoading: isLoadingAdminUsers,\n } = useAdminUsers(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [user] = data?.users ?? [];\n\n React.useEffect(() => {\n if (error) {\n // Redirect the user to the homepage if is not allowed to read\n if (error.name === 'UnauthorizedError') {\n toggleNotification({\n type: 'info',\n message: formatMessage({\n id: 'notification.permission.not-allowed-read',\n defaultMessage: 'You are not allowed to see this document',\n }),\n });\n\n navigate('/');\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n }, [error, formatAPIError, formatMessage, navigate, toggleNotification]);\n\n const isLoading = isLoadingAdminUsers || !MagicLink || isLoadingRBAC;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n type InitialData = Pick<Update.Request['body'], (typeof fieldsToPick)[number]> & {\n confirmPassword: string;\n password: string;\n };\n\n const initialData = {\n ...pick(user, fieldsToPick),\n roles: user.roles.map(({ id }) => id),\n password: '',\n confirmPassword: '',\n } satisfies InitialData;\n\n const handleSubmit = async (body: InitialData, actions: FormHelpers<InitialData>) => {\n const { confirmPassword: _confirmPassword, ...bodyRest } = body;\n\n const res = await updateUser({\n id,\n ...bodyRest,\n });\n\n if ('error' in res && isBaseQueryError(res.error)) {\n if (res.error.name === 'ValidationError') {\n actions.setErrors(formatValidationErrors(res.error));\n }\n\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n } else {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n actions.setValues({\n ...pick(body, fieldsToPick),\n password: '',\n confirmPassword: '',\n });\n }\n };\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Users',\n }\n )}\n </Page.Title>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n initialValues={initialData}\n validationSchema={EDIT_VALIDATION_SCHEMA}\n >\n {({ isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={isSubmitting || !canUpdate || !modified}\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n title={formatMessage(\n {\n id: 'app.containers.Users.EditPage.header.label',\n defaultMessage: 'Edit {name}',\n },\n {\n // @ts-expect-error – issues with the Entity ID type, still.\n name: getDisplayName(initialData),\n }\n )}\n navigationAction={<BackButton fallback=\"../users\" />}\n />\n <Layouts.Content>\n {user?.registrationToken && (\n <Box paddingBottom={6}>\n <MagicLink registrationToken={user.registrationToken} />\n </Box>\n )}\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n {LAYOUT.map((row) =>\n row.map(({ size, label, ...field }) => {\n return (\n <Grid.Item\n key={field.name}\n col={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={!canUpdate}\n label={formatMessage(label)}\n placeholder={\n 'placeholder' in field\n ? formatMessage(field.placeholder)\n : undefined\n }\n />\n </Grid.Item>\n );\n })\n )}\n </Grid.Root>\n </Flex>\n </Box>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <SelectRoles disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage LAYOUT\n * -----------------------------------------------------------------------------------------------*/\n\nconst LAYOUT = [\n [\n {\n label: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'string' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n },\n name: 'username',\n placeholder: {\n id: 'Auth.form.username.placeholder',\n defaultMessage: 'e.g. Kai_Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n autoComplete: 'new-password',\n label: {\n id: 'global.password',\n defaultMessage: 'Password',\n },\n name: 'password',\n type: 'password' as const,\n size: 6,\n },\n {\n autoComplete: 'new-password',\n label: {\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Password confirmation',\n },\n name: 'confirmPassword',\n type: 'password' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.active.label',\n defaultMessage: 'Active',\n },\n name: 'isActive',\n type: 'boolean' as const,\n size: 6,\n },\n ],\n];\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.users.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\n"],"names":["EDIT_VALIDATION_SCHEMA","yup","object","shape","COMMON_USER_SCHEMA","isActive","bool","roles","array","min","id","translatedErrors","required","defaultMessage","fieldsToPick","EditPage","formatMessage","useIntl","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","MagicLink","useEnterprise","MagicLinkCE","MagicLinkEE","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","permissions","useTypedSelector","selectAdminPermissions","isLoading","isLoadingRBAC","allowedActions","canUpdate","useRBAC","read","settings","users","update","updateUser","useUpdateUserMutation","data","error","isLoadingAdminUsers","useAdminUsers","refetchOnMountOrArgChange","user","React","useEffect","name","type","message","_jsx","Page","Loading","initialData","pick","map","password","confirmPassword","handleSubmit","body","actions","_confirmPassword","bodyRest","res","isBaseQueryError","setErrors","setValues","_jsxs","Main","Title","Form","method","onSubmit","initialValues","validationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","disabled","startIcon","Check","loading","title","getDisplayName","navigationAction","BackButton","fallback","Content","registrationToken","Box","paddingBottom","Flex","direction","alignItems","gap","background","hasRadius","shadow","paddingTop","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","LAYOUT","row","size","label","field","Item","col","InputRenderer","placeholder","undefined","xs","SelectRoles","autoComplete","ProtectedEditPage","state","admin_app","Protect"],"mappings":"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"}
|
|
@@ -7,12 +7,12 @@ var formik = require('formik');
|
|
|
7
7
|
var reactIntl = require('react-intl');
|
|
8
8
|
var reactRouterDom = require('react-router-dom');
|
|
9
9
|
var yup = require('yup');
|
|
10
|
-
var Theme = require('./Theme-
|
|
11
|
-
var index = require('./index-
|
|
10
|
+
var Theme = require('./Theme-DDlJz91O.js');
|
|
11
|
+
var index = require('./index-HGaughzt.js');
|
|
12
12
|
var transferTokens = require('./transferTokens-oEFM8kkT.js');
|
|
13
13
|
var admin = require('./admin-udBiOv2o.js');
|
|
14
14
|
var constants = require('./constants-tbFuOuW4.js');
|
|
15
|
-
var TokenTypeSelect = require('./TokenTypeSelect-
|
|
15
|
+
var TokenTypeSelect = require('./TokenTypeSelect-BV_ZNiY_.js');
|
|
16
16
|
require('@radix-ui/react-context');
|
|
17
17
|
require('@strapi/icons');
|
|
18
18
|
require('@strapi/icons/symbols');
|
|
@@ -418,4 +418,4 @@ const FormTransferTokenContainer = ({ errors = {}, onChange, canEditInputs, isCr
|
|
|
418
418
|
|
|
419
419
|
exports.EditView = EditView;
|
|
420
420
|
exports.ProtectedEditView = ProtectedEditView;
|
|
421
|
-
//# sourceMappingURL=EditView-
|
|
421
|
+
//# sourceMappingURL=EditView-C9cKaoY1.js.map
|