@strapi/admin 5.0.0-rc.3 → 5.0.0-rc.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/{AdminSeatInfo-E8azTFQY.js → AdminSeatInfo-8vtNB3ck.js} +4 -4
- package/dist/admin/AdminSeatInfo-8vtNB3ck.js.map +1 -0
- package/dist/admin/{AdminSeatInfo-Q_hUNC5B.mjs → AdminSeatInfo-qIgh5-QA.mjs} +5 -5
- package/dist/admin/AdminSeatInfo-qIgh5-QA.mjs.map +1 -0
- package/dist/admin/{ApplicationInfoPage-noPIfujW.js → ApplicationInfoPage-ezUPoomC.js} +10 -10
- package/dist/admin/ApplicationInfoPage-ezUPoomC.js.map +1 -0
- package/dist/admin/{ApplicationInfoPage-kEld-u0P.mjs → ApplicationInfoPage-hvwQQDfu.mjs} +10 -10
- package/dist/admin/ApplicationInfoPage-hvwQQDfu.mjs.map +1 -0
- package/dist/admin/{AuthResponse-J8A48xdo.mjs → AuthResponse-HYXVuTDF.mjs} +2 -2
- package/dist/admin/{AuthResponse-J8A48xdo.mjs.map → AuthResponse-HYXVuTDF.mjs.map} +1 -1
- package/dist/admin/{AuthResponse-KlTDmm2i.js → AuthResponse-R8kR_yqS.js} +2 -2
- package/dist/admin/{AuthResponse-KlTDmm2i.js.map → AuthResponse-R8kR_yqS.js.map} +1 -1
- package/dist/admin/{AuthenticatedLayout-zYfAXNPg.mjs → AuthenticatedLayout-L-NNsHI6.mjs} +69 -82
- package/dist/admin/AuthenticatedLayout-L-NNsHI6.mjs.map +1 -0
- package/dist/admin/{AuthenticatedLayout-kLMmhrNQ.js → AuthenticatedLayout-U_Y1i-L-.js} +68 -81
- package/dist/admin/AuthenticatedLayout-U_Y1i-L-.js.map +1 -0
- package/dist/admin/{CreateActionEE-Yfp4hs7a.mjs → CreateActionEE-X2nnG2dm.mjs} +2 -2
- package/dist/admin/{CreateActionEE-Yfp4hs7a.mjs.map → CreateActionEE-X2nnG2dm.mjs.map} +1 -1
- package/dist/admin/{CreatePage-I7iAq1hY.mjs → CreatePage-J5u689Z3.mjs} +3 -3
- package/dist/admin/{CreatePage-I7iAq1hY.mjs.map → CreatePage-J5u689Z3.mjs.map} +1 -1
- package/dist/admin/{CreatePage-CUxfLM1W.js → CreatePage-hVCdmn57.js} +3 -3
- package/dist/admin/{CreatePage-CUxfLM1W.js.map → CreatePage-hVCdmn57.js.map} +1 -1
- package/dist/admin/{CreatePage-bJgO6DND.mjs → CreatePage-kEk8SJfP.mjs} +7 -7
- package/dist/admin/CreatePage-kEk8SJfP.mjs.map +1 -0
- package/dist/admin/{CreatePage-0dG6JVsn.js → CreatePage-wgAv5nl3.js} +6 -6
- package/dist/admin/CreatePage-wgAv5nl3.js.map +1 -0
- package/dist/admin/{CreateView-_K_RroGC.js → CreateView-jmN888jP.js} +3 -3
- package/dist/admin/{CreateView-_K_RroGC.js.map → CreateView-jmN888jP.js.map} +1 -1
- package/dist/admin/{CreateView-uZSogyWz.mjs → CreateView-jyUut1x5.mjs} +3 -3
- package/dist/admin/{CreateView-uZSogyWz.mjs.map → CreateView-jyUut1x5.mjs.map} +1 -1
- package/dist/admin/{CreateView-dpvub7Dn.mjs → CreateView-m1DVHo7c.mjs} +3 -3
- package/dist/admin/{CreateView-dpvub7Dn.mjs.map → CreateView-m1DVHo7c.mjs.map} +1 -1
- package/dist/admin/{CreateView-8WdBrUg7.js → CreateView-ormHpP1q.js} +3 -3
- package/dist/admin/{CreateView-8WdBrUg7.js.map → CreateView-ormHpP1q.js.map} +1 -1
- package/dist/admin/{EditPage-T7HhMiw2.js → EditPage-5io6Tp6t.js} +8 -8
- package/dist/admin/EditPage-5io6Tp6t.js.map +1 -0
- package/dist/admin/{EditPage-D5r0GV3j.mjs → EditPage-Od_v4_be.mjs} +42 -29
- package/dist/admin/EditPage-Od_v4_be.mjs.map +1 -0
- package/dist/admin/{EditPage-X8jnX0_l.js → EditPage-Pt5W8neh.js} +40 -27
- package/dist/admin/EditPage-Pt5W8neh.js.map +1 -0
- package/dist/admin/{EditPage-iksJke6K.js → EditPage-Q95nrnV7.js} +25 -16
- package/dist/admin/EditPage-Q95nrnV7.js.map +1 -0
- package/dist/admin/{EditPage-Bx_qeoOF.mjs → EditPage-lgiRfwaF.mjs} +26 -17
- package/dist/admin/EditPage-lgiRfwaF.mjs.map +1 -0
- package/dist/admin/{EditPage-yBDiueEy.mjs → EditPage-tOIK-Cfa.mjs} +9 -9
- package/dist/admin/EditPage-tOIK-Cfa.mjs.map +1 -0
- package/dist/admin/{EditView-9nfADKvX.mjs → EditView-C2YwNWBO.mjs} +11 -12
- package/dist/admin/EditView-C2YwNWBO.mjs.map +1 -0
- package/dist/admin/{EditView-kxg0Wurs.js → EditView-gMzPUOqp.js} +9 -10
- package/dist/admin/EditView-gMzPUOqp.js.map +1 -0
- package/dist/admin/{EditViewPage-PmrZwoCk.mjs → EditViewPage-BgCS0-PW.mjs} +77 -54
- package/dist/admin/EditViewPage-BgCS0-PW.mjs.map +1 -0
- package/dist/admin/{EditViewPage-I5bq_bCv.js → EditViewPage-ejtUKO-R.js} +76 -53
- package/dist/admin/EditViewPage-ejtUKO-R.js.map +1 -0
- package/dist/admin/{EventsTable-uNKFTehG.js → EventsTable-A7mZRfim.js} +2 -2
- package/dist/admin/{EventsTable-uNKFTehG.js.map → EventsTable-A7mZRfim.js.map} +1 -1
- package/dist/admin/{EventsTable-d03-9tkm.mjs → EventsTable-t4y4yZXc.mjs} +2 -2
- package/dist/admin/{EventsTable-d03-9tkm.mjs.map → EventsTable-t4y4yZXc.mjs.map} +1 -1
- package/dist/admin/{HomePage-183EKMLK.mjs → HomePage-1wvgf7Va.mjs} +3 -3
- package/dist/admin/{HomePage-183EKMLK.mjs.map → HomePage-1wvgf7Va.mjs.map} +1 -1
- package/dist/admin/{HomePage-n2buy2O4.mjs → HomePage-Uy655P1o.mjs} +11 -14
- package/dist/admin/HomePage-Uy655P1o.mjs.map +1 -0
- package/dist/admin/{HomePage-XakoaT95.js → HomePage-l2K5VEES.js} +19 -22
- package/dist/admin/HomePage-l2K5VEES.js.map +1 -0
- package/dist/admin/{HomePage-8mwfR9nn.js → HomePage-zvRCtbch.js} +3 -3
- package/dist/admin/{HomePage-8mwfR9nn.js.map → HomePage-zvRCtbch.js.map} +1 -1
- package/dist/admin/{InstalledPluginsPage--BdpZuNa.js → InstalledPlugins-SpFdFYND.js} +9 -11
- package/dist/admin/InstalledPlugins-SpFdFYND.js.map +1 -0
- package/dist/admin/{InstalledPluginsPage-nFNbVJPm.mjs → InstalledPlugins-wPRaVeug.mjs} +9 -11
- package/dist/admin/InstalledPlugins-wPRaVeug.mjs.map +1 -0
- package/dist/admin/{Layout-2ucTUD08.js → Layout-1pNNiYP1.js} +5 -5
- package/dist/admin/{Layout-2ucTUD08.js.map → Layout-1pNNiYP1.js.map} +1 -1
- package/dist/admin/{Layout-rXyzByjE.mjs → Layout-WNZbvlel.mjs} +5 -5
- package/dist/admin/{Layout-rXyzByjE.mjs.map → Layout-WNZbvlel.mjs.map} +1 -1
- package/dist/admin/{ListPage-iBPceR0S.mjs → ListPage-9efPpe0f.mjs} +7 -7
- package/dist/admin/ListPage-9efPpe0f.mjs.map +1 -0
- package/dist/admin/{ListPage-U0JQnpSG.js → ListPage-C9_pjixy.js} +3 -3
- package/dist/admin/{ListPage-U0JQnpSG.js.map → ListPage-C9_pjixy.js.map} +1 -1
- package/dist/admin/{ListPage-vZsQ_8fm.mjs → ListPage-RaBcFl-9.mjs} +3 -3
- package/dist/admin/{ListPage-vZsQ_8fm.mjs.map → ListPage-RaBcFl-9.mjs.map} +1 -1
- package/dist/admin/{ListPage-pwMqUvh3.js → ListPage-SNyqdq5P.js} +46 -28
- package/dist/admin/ListPage-SNyqdq5P.js.map +1 -0
- package/dist/admin/{ListPage-SnKebmiT.js → ListPage-UJdwjcJg.js} +5 -5
- package/dist/admin/ListPage-UJdwjcJg.js.map +1 -0
- package/dist/admin/{ListPage-nXLMZNTC.js → ListPage-dkI5xNaW.js} +7 -7
- package/dist/admin/ListPage-dkI5xNaW.js.map +1 -0
- package/dist/admin/{ListPage-j-5j-VkL.mjs → ListPage-jfLUMF0B.mjs} +5 -5
- package/dist/admin/{ListPage-j-5j-VkL.mjs.map → ListPage-jfLUMF0B.mjs.map} +1 -1
- package/dist/admin/{ListPage-GUI-KsYW.js → ListPage-vWxKV7tW.js} +6 -6
- package/dist/admin/{ListPage-GUI-KsYW.js.map → ListPage-vWxKV7tW.js.map} +1 -1
- package/dist/admin/{ListPage-k3F774YE.mjs → ListPage-wxodcCqH.mjs} +6 -6
- package/dist/admin/ListPage-wxodcCqH.mjs.map +1 -0
- package/dist/admin/{ListPage-pdwlNZO5.mjs → ListPage-z_lGScc3.mjs} +48 -30
- package/dist/admin/ListPage-z_lGScc3.mjs.map +1 -0
- package/dist/admin/{ListView-6t08ndE1.js → ListView-96suJOx8.js} +4 -4
- package/dist/admin/{ListView-6t08ndE1.js.map → ListView-96suJOx8.js.map} +1 -1
- package/dist/admin/{ListView-mhOmYiYT.js → ListView-9c2btOtu.js} +5 -5
- package/dist/admin/{ListView-mhOmYiYT.js.map → ListView-9c2btOtu.js.map} +1 -1
- package/dist/admin/{ListView-vbeM6zm_.mjs → ListView-WuLI8P9g.mjs} +5 -5
- package/dist/admin/{ListView-vbeM6zm_.mjs.map → ListView-WuLI8P9g.mjs.map} +1 -1
- package/dist/admin/{ListView-gd-uUYo3.mjs → ListView-Xh4ewfST.mjs} +5 -5
- package/dist/admin/{ListView-gd-uUYo3.mjs.map → ListView-Xh4ewfST.mjs.map} +1 -1
- package/dist/admin/{Login-VnmdXnMj.mjs → Login-Che5xFmG.mjs} +4 -4
- package/dist/admin/{Login-VnmdXnMj.mjs.map → Login-Che5xFmG.mjs.map} +1 -1
- package/dist/admin/{Login-KEjxL7NL.js → Login-FibrFNCh.js} +4 -4
- package/dist/admin/{Login-KEjxL7NL.js.map → Login-FibrFNCh.js.map} +1 -1
- package/dist/admin/{MagicLinkEE-lbZ8IiEW.mjs → MagicLinkEE-FrMh9qpI.mjs} +3 -3
- package/dist/admin/{MagicLinkEE-lbZ8IiEW.mjs.map → MagicLinkEE-FrMh9qpI.mjs.map} +1 -1
- package/dist/admin/{MagicLinkEE-_uF-eBZl.js → MagicLinkEE-XeVNxSHy.js} +3 -3
- package/dist/admin/{MagicLinkEE-_uF-eBZl.js.map → MagicLinkEE-XeVNxSHy.js.map} +1 -1
- package/dist/admin/{MarketplacePage-Pwwe_Pr9.js → MarketplacePage-BPe_3jP4.js} +87 -74
- package/dist/admin/MarketplacePage-BPe_3jP4.js.map +1 -0
- package/dist/admin/{MarketplacePage--aN208CJ.mjs → MarketplacePage-hQE7ybnf.mjs} +86 -73
- package/dist/admin/MarketplacePage-hQE7ybnf.mjs.map +1 -0
- package/dist/admin/{Permissions-oxdduJgE.mjs → Permissions-aSGK8VGG.mjs} +3 -3
- package/dist/admin/{Permissions-oxdduJgE.mjs.map → Permissions-aSGK8VGG.mjs.map} +1 -1
- package/dist/admin/{Permissions-SuZE5tW3.js → Permissions-bmMBmcv7.js} +3 -3
- package/dist/admin/{Permissions-SuZE5tW3.js.map → Permissions-bmMBmcv7.js.map} +1 -1
- package/dist/admin/{PrivateRoute-ndqg7K6H.js → PrivateRoute-LO9G_pCJ.js} +2 -2
- package/dist/admin/{PrivateRoute-ndqg7K6H.js.map → PrivateRoute-LO9G_pCJ.js.map} +1 -1
- package/dist/admin/{PrivateRoute-4oRTB_tX.mjs → PrivateRoute-S4Lol0B9.mjs} +2 -2
- package/dist/admin/{PrivateRoute-4oRTB_tX.mjs.map → PrivateRoute-S4Lol0B9.mjs.map} +1 -1
- package/dist/admin/{ProfilePage-wo_TrDuQ.mjs → ProfilePage-RM2Dol_b.mjs} +9 -9
- package/dist/admin/ProfilePage-RM2Dol_b.mjs.map +1 -0
- package/dist/admin/{ProfilePage-9GtyEQef.js → ProfilePage-kBO5al50.js} +8 -8
- package/dist/admin/ProfilePage-kBO5al50.js.map +1 -0
- package/dist/admin/{PurchaseAuditLogs-YYOVsNMr.js → PurchaseAuditLogs-2mIURI7O.js} +2 -2
- package/dist/admin/{PurchaseAuditLogs-YYOVsNMr.js.map → PurchaseAuditLogs-2mIURI7O.js.map} +1 -1
- package/dist/admin/{PurchaseAuditLogs-KuzDXxa_.mjs → PurchaseAuditLogs-Mzq8o-DK.mjs} +2 -2
- package/dist/admin/{PurchaseAuditLogs-KuzDXxa_.mjs.map → PurchaseAuditLogs-Mzq8o-DK.mjs.map} +1 -1
- package/dist/admin/{PurchaseSingleSignOn-UF2SMczk.js → PurchaseSingleSignOn-P_X-9MEx.js} +2 -2
- package/dist/admin/{PurchaseSingleSignOn-UF2SMczk.js.map → PurchaseSingleSignOn-P_X-9MEx.js.map} +1 -1
- package/dist/admin/{PurchaseSingleSignOn-4m19d5bJ.mjs → PurchaseSingleSignOn-cMTLeK2B.mjs} +2 -2
- package/dist/admin/{PurchaseSingleSignOn-4m19d5bJ.mjs.map → PurchaseSingleSignOn-cMTLeK2B.mjs.map} +1 -1
- package/dist/admin/{SSOProviders-QBcyB9VI.js → SSOProviders-9-d1vYXb.js} +4 -4
- package/dist/admin/SSOProviders-9-d1vYXb.js.map +1 -0
- package/dist/admin/{SSOProviders-nMmBLr8g.mjs → SSOProviders-sy3Xon2A.mjs} +4 -4
- package/dist/admin/SSOProviders-sy3Xon2A.mjs.map +1 -0
- package/dist/admin/{SelectRoles-82KlaNv9.mjs → SelectRoles-MZNlONGM.mjs} +7 -7
- package/dist/admin/SelectRoles-MZNlONGM.mjs.map +1 -0
- package/dist/admin/{SelectRoles-iUoQ1i46.js → SelectRoles-W7y7odaY.js} +8 -8
- package/dist/admin/SelectRoles-W7y7odaY.js.map +1 -0
- package/dist/admin/{SingleSignOnPage-xBAVG_IK.js → SingleSignOnPage-OwgCN2hp.js} +14 -5
- package/dist/admin/SingleSignOnPage-OwgCN2hp.js.map +1 -0
- package/dist/admin/{SingleSignOnPage-N3e0bw3O.mjs → SingleSignOnPage-gvYva6J8.mjs} +15 -6
- package/dist/admin/SingleSignOnPage-gvYva6J8.mjs.map +1 -0
- package/dist/admin/{Table-YZ9eQlTc.mjs → Table-a9i0e2LJ.mjs} +13 -20
- package/dist/admin/Table-a9i0e2LJ.mjs.map +1 -0
- package/dist/admin/{Table-M_g0IUVs.js → Table-mhCUTq4S.js} +13 -20
- package/dist/admin/Table-mhCUTq4S.js.map +1 -0
- package/dist/admin/{Theme-PrUuuGtN.mjs → Theme-frC82ceE.mjs} +221 -20
- package/dist/admin/Theme-frC82ceE.mjs.map +1 -0
- package/dist/admin/{Theme-7W0we6BI.js → Theme-y_rWTknM.js} +225 -19
- package/dist/admin/Theme-y_rWTknM.js.map +1 -0
- package/dist/admin/{TokenTypeSelect-vAeDNBmG.mjs → TokenTypeSelect-WifdoxkK.mjs} +5 -6
- package/dist/admin/TokenTypeSelect-WifdoxkK.mjs.map +1 -0
- package/dist/admin/{TokenTypeSelect-HMyBvTwA.js → TokenTypeSelect-XdGVptL-.js} +5 -6
- package/dist/admin/TokenTypeSelect-XdGVptL-.js.map +1 -0
- package/dist/admin/{UseCasePage-VlWOTc-k.js → UseCasePage-MjT4gpNe.js} +14 -8
- package/dist/admin/UseCasePage-MjT4gpNe.js.map +1 -0
- package/dist/admin/{UseCasePage-GupUMZgN.mjs → UseCasePage-URqtqwgm.mjs} +14 -8
- package/dist/admin/{UseCasePage-GupUMZgN.mjs.map → UseCasePage-URqtqwgm.mjs.map} +1 -1
- package/dist/admin/{admin-B6AW0Kov.mjs → admin-GZ-AP2T0.mjs} +2 -2
- package/dist/admin/{admin-B6AW0Kov.mjs.map → admin-GZ-AP2T0.mjs.map} +1 -1
- package/dist/admin/{apiTokens-YMUmHnrH.mjs → apiTokens-GQe-GqwZ.mjs} +2 -2
- package/dist/admin/{apiTokens-YMUmHnrH.mjs.map → apiTokens-GQe-GqwZ.mjs.map} +1 -1
- package/dist/admin/{constants-hpTrGuiB.mjs → constants-HotVFBqh.mjs} +4 -4
- package/dist/admin/{constants-hpTrGuiB.mjs.map → constants-HotVFBqh.mjs.map} +1 -1
- package/dist/admin/{constants-2ESPgM_p.js → constants-j8FcH7FB.js} +4 -4
- package/dist/admin/{constants-2ESPgM_p.js.map → constants-j8FcH7FB.js.map} +1 -1
- package/dist/admin/ee.mjs +1 -1
- package/dist/admin/{en-TbnMBjZf.js → en-_1-Nn7iH.js} +3 -2
- package/dist/admin/{en-TbnMBjZf.js.map → en-_1-Nn7iH.js.map} +1 -1
- package/dist/admin/{en-0Ld-ipyI.mjs → en-lDO5lPD0.mjs} +3 -2
- package/dist/admin/{en-0Ld-ipyI.mjs.map → en-lDO5lPD0.mjs.map} +1 -1
- package/dist/admin/{index-qf9IxVeZ.js → index-h7R8mHHX.js} +145 -291
- package/dist/admin/index-h7R8mHHX.js.map +1 -0
- package/dist/admin/{index-6pjQxyB0.mjs → index-ukxNzreH.mjs} +141 -284
- package/dist/admin/index-ukxNzreH.mjs.map +1 -0
- package/dist/admin/index.js +5 -4
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +3 -3
- package/dist/admin/{selectors-ZpHhvPK4.mjs → selectors--muHmKGe.mjs} +2 -2
- package/dist/admin/{selectors-ZpHhvPK4.mjs.map → selectors--muHmKGe.mjs.map} +1 -1
- package/dist/admin/{selectors-zQKcCNuz.js → selectors-1ySxKbos.js} +2 -2
- package/dist/admin/{selectors-zQKcCNuz.js.map → selectors-1ySxKbos.js.map} +1 -1
- package/dist/admin/src/StrapiApp.d.ts +8 -6
- package/dist/admin/src/components/Form.d.ts +3 -1
- package/dist/admin/src/components/FormInputs/Json.d.ts +2 -2
- package/dist/admin/src/components/GuidedTour/Provider.d.ts +0 -4
- package/dist/admin/src/constants.d.ts +10 -0
- package/dist/admin/src/features/Auth.d.ts +1 -1
- package/dist/admin/src/hooks/useRBAC.d.ts +1 -1
- package/dist/admin/src/index.d.ts +3 -0
- package/dist/admin/src/layouts/UnauthenticatedLayout.d.ts +1 -1
- package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +2 -1
- package/dist/admin/src/pages/Settings/pages/InstalledPlugins.d.ts +3 -0
- package/dist/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.d.ts +1 -1
- package/dist/admin/src/types/permissions.d.ts +3 -1
- package/dist/admin/test.js +3 -3
- package/dist/admin/test.js.map +1 -1
- package/dist/admin/test.mjs +4 -4
- package/dist/admin/test.mjs.map +1 -1
- package/dist/admin/{transferTokens-CNI0TFdA.mjs → transferTokens-v8tNpI_l.mjs} +2 -2
- package/dist/admin/{transferTokens-CNI0TFdA.mjs.map → transferTokens-v8tNpI_l.mjs.map} +1 -1
- package/dist/admin/{useAdminRoles-8Uy9-IbL.js → useAdminRoles-BxjzG1Wt.js} +2 -2
- package/dist/admin/{useAdminRoles-8Uy9-IbL.js.map → useAdminRoles-BxjzG1Wt.js.map} +1 -1
- package/dist/admin/{useAdminRoles-a4_GH7yG.mjs → useAdminRoles-fAp7mZbB.mjs} +2 -2
- package/dist/admin/{useAdminRoles-a4_GH7yG.mjs.map → useAdminRoles-fAp7mZbB.mjs.map} +1 -1
- package/dist/admin/{useLicenseLimitNotification-PaR7jmqd.mjs → useLicenseLimitNotification-Qx_rSpUQ.mjs} +3 -3
- package/dist/admin/{useLicenseLimitNotification-PaR7jmqd.mjs.map → useLicenseLimitNotification-Qx_rSpUQ.mjs.map} +1 -1
- package/dist/admin/{useLicenseLimitNotification-g1vq6nzk.js → useLicenseLimitNotification-eau4ja6h.js} +2 -2
- package/dist/admin/{useLicenseLimitNotification-g1vq6nzk.js.map → useLicenseLimitNotification-eau4ja6h.js.map} +1 -1
- package/dist/admin/{useLicenseLimits-Jy6E6qc2.mjs → useLicenseLimits-j5znikzW.mjs} +2 -2
- package/dist/admin/{useLicenseLimits-Jy6E6qc2.mjs.map → useLicenseLimits-j5znikzW.mjs.map} +1 -1
- package/dist/admin/{useWebhooks-7thg-d57.mjs → useWebhooks-upF7mgdZ.mjs} +2 -2
- package/dist/admin/{useWebhooks-7thg-d57.mjs.map → useWebhooks-upF7mgdZ.mjs.map} +1 -1
- package/dist/admin/{validation-ODUz3BOU.js → validation-6SSeyGur.js} +4 -4
- package/dist/admin/validation-6SSeyGur.js.map +1 -0
- package/dist/admin/{validation-YqwSDeRS.mjs → validation-cMzmzqCF.mjs} +4 -4
- package/dist/admin/validation-cMzmzqCF.mjs.map +1 -0
- package/dist/ee/server/src/audit-logs/content-types/audit-log.d.ts +41 -0
- package/dist/ee/server/src/audit-logs/content-types/audit-log.d.ts.map +1 -0
- package/dist/ee/server/src/audit-logs/controllers/audit-logs.d.ts +7 -0
- package/dist/ee/server/src/audit-logs/controllers/audit-logs.d.ts.map +1 -0
- package/dist/ee/server/src/audit-logs/routes/audit-logs.d.ts +19 -0
- package/dist/ee/server/src/audit-logs/routes/audit-logs.d.ts.map +1 -0
- package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts +27 -0
- package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts.map +1 -0
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts +12 -0
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts.map +1 -0
- package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts +6 -0
- package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts.map +1 -0
- package/dist/ee/server/src/bootstrap.d.ts +3 -0
- package/dist/ee/server/src/bootstrap.d.ts.map +1 -0
- package/dist/ee/server/src/config/admin-actions.d.ts +20 -0
- package/dist/ee/server/src/config/admin-actions.d.ts.map +1 -0
- package/dist/ee/server/src/content-types/index.d.ts +3 -0
- package/dist/ee/server/src/content-types/index.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/admin.d.ts +29 -0
- package/dist/ee/server/src/controllers/admin.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/authentication-utils/constants.d.ts +10 -0
- package/dist/ee/server/src/controllers/authentication-utils/constants.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/authentication-utils/index.d.ts +5 -0
- package/dist/ee/server/src/controllers/authentication-utils/index.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/authentication-utils/middlewares.d.ts +9 -0
- package/dist/ee/server/src/controllers/authentication-utils/middlewares.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts +55 -0
- package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/authentication.d.ts +9 -0
- package/dist/ee/server/src/controllers/authentication.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/index.d.ts +48 -0
- package/dist/ee/server/src/controllers/index.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/role.d.ts +20 -0
- package/dist/ee/server/src/controllers/role.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/user.d.ts +8 -0
- package/dist/ee/server/src/controllers/user.d.ts.map +1 -0
- package/dist/ee/server/src/destroy.d.ts +6 -0
- package/dist/ee/server/src/destroy.d.ts.map +1 -0
- package/dist/ee/server/src/index.d.ts +380 -0
- package/dist/ee/server/src/index.d.ts.map +1 -0
- package/dist/ee/server/src/register.d.ts +6 -0
- package/dist/ee/server/src/register.d.ts.map +1 -0
- package/dist/ee/server/src/routes/index.d.ts +47 -0
- package/dist/ee/server/src/routes/index.d.ts.map +1 -0
- package/dist/ee/server/src/routes/license-limit.d.ts +18 -0
- package/dist/ee/server/src/routes/license-limit.d.ts.map +1 -0
- package/dist/ee/server/src/routes/sso.d.ts +29 -0
- package/dist/ee/server/src/routes/sso.d.ts.map +1 -0
- package/dist/ee/server/src/routes/utils.d.ts +3 -0
- package/dist/ee/server/src/routes/utils.d.ts.map +1 -0
- package/dist/ee/server/src/services/auth.d.ts +6 -0
- package/dist/ee/server/src/services/auth.d.ts.map +1 -0
- package/dist/ee/server/src/services/index.d.ts +39 -0
- package/dist/ee/server/src/services/index.d.ts.map +1 -0
- package/dist/ee/server/src/services/metrics.d.ts +8 -0
- package/dist/ee/server/src/services/metrics.d.ts.map +1 -0
- package/dist/ee/server/src/services/passport/provider-registry.d.ts +4 -0
- package/dist/ee/server/src/services/passport/provider-registry.d.ts.map +1 -0
- package/dist/ee/server/src/services/passport/sso.d.ts +19 -0
- package/dist/ee/server/src/services/passport/sso.d.ts.map +1 -0
- package/dist/ee/server/src/services/passport.d.ts +13 -0
- package/dist/ee/server/src/services/passport.d.ts.map +1 -0
- package/dist/ee/server/src/services/role.d.ts +5 -0
- package/dist/ee/server/src/services/role.d.ts.map +1 -0
- package/dist/ee/server/src/services/seat-enforcement.d.ts +6 -0
- package/dist/ee/server/src/services/seat-enforcement.d.ts.map +1 -0
- package/dist/ee/server/src/services/user.d.ts +10 -0
- package/dist/ee/server/src/services/user.d.ts.map +1 -0
- package/dist/ee/server/src/utils/index.d.ts +11 -0
- package/dist/ee/server/src/utils/index.d.ts.map +1 -0
- package/dist/ee/server/src/utils/persisted-tables.d.ts +42 -0
- package/dist/ee/server/src/utils/persisted-tables.d.ts.map +1 -0
- package/dist/ee/server/src/utils/sso-lock.d.ts +6 -0
- package/dist/ee/server/src/utils/sso-lock.d.ts.map +1 -0
- package/dist/ee/server/src/validation/authentication.d.ts +15 -0
- package/dist/ee/server/src/validation/authentication.d.ts.map +1 -0
- package/dist/ee/server/src/validation/role.d.ts +21 -0
- package/dist/ee/server/src/validation/role.d.ts.map +1 -0
- package/dist/ee/server/src/validation/user.d.ts +19 -0
- package/dist/ee/server/src/validation/user.d.ts.map +1 -0
- package/dist/package.json.d.ts +16 -15
- package/dist/server/index.js +1934 -539
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +1734 -338
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/config/admin-actions.d.ts +26 -0
- package/dist/server/src/config/admin-actions.d.ts.map +1 -1
- package/dist/server/src/domain/action/index.d.ts +51 -1
- package/dist/server/src/domain/action/index.d.ts.map +1 -1
- package/dist/server/src/domain/action/provider.d.ts +10 -13
- package/dist/server/src/domain/action/provider.d.ts.map +1 -1
- package/dist/server/src/domain/condition/provider.d.ts +5 -6
- package/dist/server/src/domain/condition/provider.d.ts.map +1 -1
- package/dist/server/src/domain/permission/index.d.ts +2 -2
- package/dist/server/src/domain/permission/index.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +738 -10
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/services/action.d.ts +1 -3
- package/dist/server/src/services/action.d.ts.map +1 -1
- package/dist/server/src/services/permission.d.ts +11 -18
- package/dist/server/src/services/permission.d.ts.map +1 -1
- package/dist/server/src/services/transfer/permission.d.ts +6 -2
- package/dist/server/src/services/transfer/permission.d.ts.map +1 -1
- package/dist/server/src/validation/action-provider.d.ts.map +1 -1
- package/dist/shared/contracts/admin.d.ts +1 -0
- package/dist/shared/contracts/admin.d.ts.map +1 -1
- package/dist/shared/contracts/user.d.ts +1 -1
- package/dist/shared/contracts/user.d.ts.map +1 -1
- package/package.json +17 -16
- package/dist/admin/AdminSeatInfo-E8azTFQY.js.map +0 -1
- package/dist/admin/AdminSeatInfo-Q_hUNC5B.mjs.map +0 -1
- package/dist/admin/ApplicationInfoPage-kEld-u0P.mjs.map +0 -1
- package/dist/admin/ApplicationInfoPage-noPIfujW.js.map +0 -1
- package/dist/admin/AuthenticatedLayout-kLMmhrNQ.js.map +0 -1
- package/dist/admin/AuthenticatedLayout-zYfAXNPg.mjs.map +0 -1
- package/dist/admin/ContentBox-3MRTNw0X.js +0 -43
- package/dist/admin/ContentBox-3MRTNw0X.js.map +0 -1
- package/dist/admin/ContentBox-9LBDzws0.mjs +0 -41
- package/dist/admin/ContentBox-9LBDzws0.mjs.map +0 -1
- package/dist/admin/CreatePage-0dG6JVsn.js.map +0 -1
- package/dist/admin/CreatePage-bJgO6DND.mjs.map +0 -1
- package/dist/admin/EditPage-Bx_qeoOF.mjs.map +0 -1
- package/dist/admin/EditPage-D5r0GV3j.mjs.map +0 -1
- package/dist/admin/EditPage-T7HhMiw2.js.map +0 -1
- package/dist/admin/EditPage-X8jnX0_l.js.map +0 -1
- package/dist/admin/EditPage-iksJke6K.js.map +0 -1
- package/dist/admin/EditPage-yBDiueEy.mjs.map +0 -1
- package/dist/admin/EditView-9nfADKvX.mjs.map +0 -1
- package/dist/admin/EditView-kxg0Wurs.js.map +0 -1
- package/dist/admin/EditViewPage-I5bq_bCv.js.map +0 -1
- package/dist/admin/EditViewPage-PmrZwoCk.mjs.map +0 -1
- package/dist/admin/HomePage-XakoaT95.js.map +0 -1
- package/dist/admin/HomePage-n2buy2O4.mjs.map +0 -1
- package/dist/admin/InstalledPluginsPage--BdpZuNa.js.map +0 -1
- package/dist/admin/InstalledPluginsPage-nFNbVJPm.mjs.map +0 -1
- package/dist/admin/ListPage-SnKebmiT.js.map +0 -1
- package/dist/admin/ListPage-iBPceR0S.mjs.map +0 -1
- package/dist/admin/ListPage-k3F774YE.mjs.map +0 -1
- package/dist/admin/ListPage-nXLMZNTC.js.map +0 -1
- package/dist/admin/ListPage-pdwlNZO5.mjs.map +0 -1
- package/dist/admin/ListPage-pwMqUvh3.js.map +0 -1
- package/dist/admin/MarketplacePage--aN208CJ.mjs.map +0 -1
- package/dist/admin/MarketplacePage-Pwwe_Pr9.js.map +0 -1
- package/dist/admin/ProfilePage-9GtyEQef.js.map +0 -1
- package/dist/admin/ProfilePage-wo_TrDuQ.mjs.map +0 -1
- package/dist/admin/SSOProviders-QBcyB9VI.js.map +0 -1
- package/dist/admin/SSOProviders-nMmBLr8g.mjs.map +0 -1
- package/dist/admin/SelectRoles-82KlaNv9.mjs.map +0 -1
- package/dist/admin/SelectRoles-iUoQ1i46.js.map +0 -1
- package/dist/admin/SingleSignOnPage-N3e0bw3O.mjs.map +0 -1
- package/dist/admin/SingleSignOnPage-xBAVG_IK.js.map +0 -1
- package/dist/admin/Table-M_g0IUVs.js.map +0 -1
- package/dist/admin/Table-YZ9eQlTc.mjs.map +0 -1
- package/dist/admin/Theme-7W0we6BI.js.map +0 -1
- package/dist/admin/Theme-PrUuuGtN.mjs.map +0 -1
- package/dist/admin/TokenTypeSelect-HMyBvTwA.js.map +0 -1
- package/dist/admin/TokenTypeSelect-vAeDNBmG.mjs.map +0 -1
- package/dist/admin/UseCasePage-VlWOTc-k.js.map +0 -1
- package/dist/admin/index-6pjQxyB0.mjs.map +0 -1
- package/dist/admin/index-qf9IxVeZ.js.map +0 -1
- package/dist/admin/src/pages/InstalledPluginsPage.d.ts +0 -3
- package/dist/admin/validation-ODUz3BOU.js.map +0 -1
- package/dist/admin/validation-YqwSDeRS.mjs.map +0 -1
- package/dist/ee/server/index.js +0 -2180
- package/dist/ee/server/index.js.map +0 -1
- package/dist/ee/server/index.mjs +0 -2175
- package/dist/ee/server/index.mjs.map +0 -1
- package/strapi-server.js +0 -18
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HomePage-XakoaT95.js","sources":["../../admin/src/components/GuidedTour/Homepage.tsx","../../admin/src/services/contentManager.ts","../../admin/src/hooks/useContentTypes.ts","../../admin/src/pages/assets/corner-ornament.svg","../../admin/src/pages/assets/strapi-cloud-background.png","../../admin/src/pages/assets/strapi-cloud-flags.svg","../../admin/src/pages/HomePage.tsx"],"sourcesContent":["import { Box, Button, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { ArrowRight } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useTracking } from '../../features/Tracking';\n\nimport { LAYOUT_DATA, States, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\nimport { GuidedTourContextValue, useGuidedTour } from './Provider';\n\nconst GuidedTourHomepage = () => {\n const guidedTourState = useGuidedTour('GuidedTourHomepage', (state) => state.guidedTourState);\n const setSkipped = useGuidedTour('GuidedTourHomepage', (state) => state.setSkipped);\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const sections = Object.entries(LAYOUT_DATA).map(([key, val]) => ({\n key: key,\n title: val.home.title,\n content: (\n <LinkButton\n onClick={() => trackUsage(val.home.trackingEvent)}\n tag={NavLink}\n to={val.home.cta.target}\n endIcon={<ArrowRight />}\n >\n {formatMessage(val.home.cta.title)}\n </LinkButton>\n ),\n isDone: Object.entries(\n guidedTourState[key as keyof GuidedTourContextValue['guidedTourState']]\n ).every(([, value]) => value),\n }));\n\n const activeSectionIndex = sections.findIndex((section) => !section.isDone);\n\n const handleSkip = () => {\n setSkipped(true);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Box\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={7}\n paddingRight={4}\n paddingLeft={7}\n paddingBottom={4}\n background=\"neutral0\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Typography variant=\"beta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n <Box>\n {sections.map((section, index) => {\n const state = getState(activeSectionIndex, index);\n return (\n <Box key={section.key}>\n <Flex>\n <Box minWidth={`3rem`} marginRight={5}>\n <Number state={state}>{index + 1}</Number>\n </Box>\n <Typography variant=\"delta\" tag=\"h3\">\n {formatMessage(section.title)}\n </Typography>\n </Flex>\n <Flex alignItems=\"flex-start\">\n <Flex\n justifyContent=\"center\"\n minWidth={`3rem`}\n marginBottom={3}\n marginTop={3}\n marginRight={5}\n >\n {index === sections.length - 1 ? null : <VerticalDivider state={state} />}\n </Flex>\n <Box marginTop={2}>{state === STATES.IS_ACTIVE ? section.content : null}</Box>\n </Flex>\n </Box>\n );\n })}\n </Box>\n </Flex>\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nconst getState = (activeSectionIndex: number, index: number): States => {\n if (activeSectionIndex === -1) {\n return STATES.IS_DONE;\n }\n if (index < activeSectionIndex) {\n return STATES.IS_DONE;\n }\n if (index > activeSectionIndex) {\n return STATES.IS_NOT_DONE;\n }\n return STATES.IS_ACTIVE;\n};\n\nexport { GuidedTourHomepage };\n","/**\n * This will 100% be moved into it's own reducer space when\n * we move the content-manager back to it's plugin.\n */\n\nimport { adminApi } from './api';\n\nimport type { ContentType } from '../../../shared/contracts/content-types';\ninterface ContentTypes {\n collectionType: ContentType[];\n singleType: ContentType[];\n}\n\nconst contentManager = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n /**\n * Content Types\n */\n getContentTypes: builder.query<ContentTypes, void>({\n query: () => ({\n url: `/content-manager/content-types`,\n method: 'GET',\n }),\n transformResponse: (res: { data: ContentType[] }) => {\n return res.data.reduce<ContentTypes>(\n (acc, curr) => {\n if (curr.isDisplayed) {\n acc[curr.kind].push(curr);\n }\n return acc;\n },\n {\n collectionType: [],\n singleType: [],\n }\n );\n },\n }),\n }),\n overrideExisting: true,\n});\n\nconst { useGetContentTypesQuery } = contentManager;\n\nexport { useGetContentTypesQuery };\n","import * as React from 'react';\n\nimport { useNotification } from '../features/Notifications';\nimport { useAPIErrorHandler } from '../hooks/useAPIErrorHandler';\nimport { useGetContentTypesQuery } from '../services/contentManager';\n\nimport type { ContentType } from '../../../shared/contracts/content-types';\n\nexport function useContentTypes(): {\n isLoading: boolean;\n collectionTypes: ContentType[];\n singleTypes: ContentType[];\n} {\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n\n const { data, isLoading, error } = useGetContentTypesQuery();\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n return {\n isLoading,\n collectionTypes: data?.collectionType ?? [],\n singleTypes: data?.singleType ?? [],\n };\n}\n","export default \"data:image/svg+xml,%3csvg%20width='148'%20height='148'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20opacity='.8'%20fill-rule='evenodd'%20clip-rule='evenodd'%3e%3cpath%20opacity='.15'%20d='M110.81%2037H73.97V74.1h36.84V37Z'%20fill='url(%23a)'/%3e%3cpath%20opacity='.07'%20d='M36.84%200H0v37.08h36.84V0Z'%20fill='url(%23b)'/%3e%3cpath%20opacity='.07'%20d='M73.92%2073.95H37.08v37.08h36.84V73.95Z'%20fill='url(%23c)'/%3e%3cpath%20opacity='.07'%20d='M147.99%20110.92h-37.3V148H148v-37.08Z'%20fill='url(%23d)'/%3e%3cpath%20opacity='.15'%20d='M73.83%2037H36.84L73.83%200v37Z'%20fill='url(%23e)'/%3e%3cpath%20opacity='.15'%20d='M110.6%20111.02v-37h36.98l-36.99%2037Z'%20fill='url(%23f)'/%3e%3cpath%20opacity='.4'%20d='M73.83%200v37h36.98v37.01h37V3a3%203%200%200%200-3-3H73.82Z'%20fill='url(%23g)'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient%20id='a'%20x1='91.31'%20y1='83.31'%20x2='118.24'%20y2='56.59'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='b'%20x1='40.99'%20y1='13.88'%20x2='.01'%20y2='11.64'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A8B8FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='c'%20x1='54.41'%20y1='120.25'%20x2='81.35'%20y2='93.52'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A8B8FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='d'%20x1='128.24'%20y1='157.22'%20x2='155.17'%20y2='130.17'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A8B8FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='e'%20x1='54.24'%20y1='46.21'%20x2='81.12'%20y2='19.38'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='f'%20x1='126.28'%20y1='74.05'%20x2='124.94'%20y2='111.07'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='g'%20x1='73.37'%20y1='36.87'%20x2='132.87'%20y2='66.74'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233858EA'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\"","export default \"data:image/png;base64,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\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='160'%20fill='none'%20viewBox='29.41%2044%20149.09%2050.35'%3e%3cpath%20stroke='%23EAEAEF'%20d='M30.5%2044.5c37%2027%2047.5%2038%20147.499%2032'/%3e%3cg%20filter='url(%23a)'%3e%3cpath%20fill='%23F29D41'%20d='m129.467%2094.085%208.148-14.142a.598.598%200%200%200-.403-.887%2075.099%2075.099%200%200%200-3.045-.536c-1.875-.274-2.936-.44-4.837-.505-1.838-.064-2.873.01-4.698.153a64.05%2064.05%200%200%200-2.692.293.597.597%200%200%200-.462.851l7.042%2014.737c.186.388.732.41.947.036Z'/%3e%3c/g%3e%3cg%20filter='url(%23b)'%3e%3cpath%20fill='%23F29D41'%20d='m46.99%2075.52%2013.813-8.697a.597.597%200%200%200%20.058-.971%2075.191%2075.191%200%200%200-2.442-1.897c-1.53-1.119-2.39-1.761-4.04-2.707-1.595-.915-2.545-1.334-4.226-2.06a64.09%2064.09%200%200%200-2.516-.999.597.597%200%200%200-.806.537l-.66%2016.319a.535.535%200%200%200%20.82.474Z'/%3e%3c/g%3e%3cg%20filter='url(%23c)'%3e%3cpath%20fill='%235CB176'%20d='m29.41%2063.51%202.102-16.186a.597.597%200%200%201%20.858-.46c.748.371%201.905.954%202.745%201.42%201.657.92%202.602%201.433%204.152%202.534%201.5%201.064%202.278%201.75%203.642%202.972a64.026%2064.026%200%200%201%201.962%201.865c.291.286.214.771-.149.957l-14.538%207.443a.535.535%200%200%201-.774-.545Z'/%3e%3c/g%3e%3cmask%20id='d'%20width='17'%20height='19'%20x='29'%20y='46'%20maskUnits='userSpaceOnUse'%20style='mask-type:alpha'%3e%3cpath%20fill='%235CB176'%20d='m29.412%2063.51%202.101-16.186a.597.597%200%200%201%20.858-.46c.749.371%201.905.954%202.746%201.42%201.657.92%202.601%201.433%204.152%202.534%201.5%201.064%202.278%201.75%203.642%202.972a64.148%2064.148%200%200%201%201.962%201.865c.29.286.214.771-.15.957l-14.537%207.443a.535.535%200%200%201-.774-.545Z'/%3e%3c/mask%3e%3cg%20stroke='%23fff'%20stroke-linecap='round'%20stroke-width='.661'%20mask='url(%23d)'%3e%3cpath%20d='M39.755%2051.218c-1.05%201.558-4.606%204.788-10.44%205.247M36.415%2047.816c-1.05%201.558-4.606%204.789-10.44%205.247M42.97%2053.97c-1.457%201.908-6.341%205.902-14.216%206.619M42.15%2058.499c-1.645%201.748-5.29%204.033-13.197%203.939'/%3e%3c/g%3e%3cg%20filter='url(%23e)'%3e%3cpath%20fill='%237B79FF'%20d='m169.813%2092.983%205.927-15.208a.598.598%200%200%200-.531-.815%2075.213%2075.213%200%200%200-3.091-.072c-1.895.01-2.969.007-4.859.228-1.826.214-2.838.442-4.621.859-.815.19-1.893.488-2.617.694a.596.596%200%200%200-.328.91l9.178%2013.51a.536.536%200%200%200%20.942-.106Z'/%3e%3c/g%3e%3cg%20filter='url(%23f)'%3e%3cpath%20fill='%237B79FF'%20d='m87.001%2090.853-4.466-15.699a.597.597%200%200%201%20.606-.761c.835.045%202.127.123%203.084.22%201.886.19%202.956.287%204.816.685%201.797.385%202.784.709%204.519%201.291.794.267%201.839.665%202.54.938.38.148.501.624.24.938L87.929%2091.048a.535.535%200%200%201-.927-.195Z'/%3e%3c/g%3e%3cg%20filter='url(%23g)'%3e%3cpath%20fill='%23EE5E52'%20d='m66.153%2085.122%2012.355-10.665a.597.597%200%200%200-.087-.97%2075.353%2075.353%200%200%200-2.698-1.51c-1.68-.877-2.627-1.383-4.4-2.072-1.714-.666-2.716-.938-4.486-1.404a64.083%2064.083%200%200%200-2.638-.611.597.597%200%200%200-.716.651l1.788%2016.234a.535.535%200%200%200%20.882.347Z'/%3e%3c/g%3e%3ccircle%20cx='70.793'%20cy='74.511'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2070.793%2074.51)'/%3e%3ccircle%20cx='65.574'%20cy='78.63'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2065.574%2078.63)'/%3e%3ccircle%20cx='65.408'%20cy='74.519'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2065.408%2074.519)'/%3e%3ccircle%20cx='67.834'%20cy='81.943'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2067.834%2081.943)'/%3e%3ccircle%20cx='67.259'%20cy='69.875'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2067.259%2069.875)'/%3e%3ccircle%20cx='74.691'%20cy='72.834'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2074.69%2072.834)'/%3e%3ccircle%20cx='71.171'%20cy='78.968'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2071.171%2078.968)'/%3e%3cg%20filter='url(%23h)'%3e%3cpath%20fill='%23EE5E52'%20d='m149.911%2093.824%206.521-14.963a.598.598%200%200%200-.499-.836%2075.255%2075.255%200%200%200-3.086-.193c-1.894-.064-2.967-.11-4.863.037-1.833.141-2.854.33-4.651.676-.823.158-1.912.414-2.643.59a.596.596%200%200%200-.364.898l8.64%2013.86a.535.535%200%200%200%20.945-.07Z'/%3e%3c/g%3e%3ccircle%20cx='149.5'%20cy='82.25'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20149.5%2082.25)'/%3e%3ccircle%20cx='146.579'%20cy='88.222'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20146.579%2088.222)'/%3e%3ccircle%20cx='144.65'%20cy='84.588'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20144.65%2084.588)'/%3e%3ccircle%20cx='150.049'%20cy='90.231'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20150.049%2090.231)'/%3e%3ccircle%20cx='144.306'%20cy='79.6'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20144.306%2079.6)'/%3e%3ccircle%20cx='152.287'%20cy='79.051'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20152.287%2079.05)'/%3e%3ccircle%20cx='151.77'%20cy='86.103'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20151.77%2086.103)'/%3e%3cg%20filter='url(%23i)'%3e%3cpath%20fill='%235CB176'%20d='m109.171%2093.4%208.86-13.707a.598.598%200%200%200-.357-.906c-.811-.2-2.07-.503-3.013-.69-1.859-.37-2.911-.59-4.806-.753-1.831-.157-2.869-.136-4.699-.086-.837.023-1.953.098-2.703.154a.597.597%200%200%200-.505.827l6.279%2015.077c.166.398.71.447.944.084Z'/%3e%3c/g%3e%3cmask%20id='j'%20width='18'%20height='17'%20x='101'%20y='77'%20maskUnits='userSpaceOnUse'%20style='mask-type:alpha'%3e%3cpath%20fill='%235CB176'%20d='m109.17%2093.4%208.86-13.707a.598.598%200%200%200-.357-.905c-.811-.201-2.07-.504-3.013-.692-1.859-.37-2.911-.589-4.806-.751-1.831-.158-2.869-.137-4.699-.087-.837.023-1.953.099-2.703.154a.597.597%200%200%200-.505.827l6.279%2015.077c.166.398.71.447.944.085Z'/%3e%3c/mask%3e%3cg%20stroke='%23fff'%20stroke-linecap='round'%20stroke-width='.661'%20mask='url(%23j)'%3e%3cpath%20d='M109.225%2077.335c-.207%201.867.418%206.632%204.573%2010.753M113.972%2076.9c-.207%201.867.418%206.631%204.573%2010.753M104.992%2077.357c-.121%202.397%201.023%208.602%206.568%2014.24M102.69%2081.343c.125%202.397%201.429%206.497%207.522%2011.537'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='a'%20width='21.565'%20height='21.649'%20x='118.775'%20y='76.009'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='b'%20width='20.201'%20height='22.741'%20x='43.526'%20y='56.167'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='c'%20width='20.932'%20height='22.602'%20x='26.761'%20y='44.818'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='e'%20width='21.482'%20height='21.724'%20x='156.944'%20y='74.904'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='f'%20width='21.256'%20height='22.139'%20x='79.868'%20y='72.409'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='g'%20width='20.526'%20height='22.664'%20x='60.835'%20y='65.893'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='h'%20width='21.537'%20height='21.662'%20x='137.59'%20y='75.788'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='i'%20width='21.515'%20height='21.712'%20x='99.257'%20y='75.238'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e\"","import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Grid,\n Main,\n Typography,\n Link,\n LinkButton,\n TypographyComponent,\n BoxComponent,\n FlexComponent,\n} from '@strapi/design-system';\nimport { ArrowRight, ExternalLink } from '@strapi/icons';\nimport {\n CodeSquare,\n Discord,\n Discourse,\n FeatherSquare,\n GitHub,\n InformationSquare,\n PlaySquare,\n Reddit,\n Strapi,\n X as Twitter,\n} from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\nimport { useNavigate } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { ContentBox } from '../components/ContentBox';\nimport { GuidedTourHomepage } from '../components/GuidedTour/Homepage';\nimport { useGuidedTour } from '../components/GuidedTour/Provider';\nimport { Layouts } from '../components/Layouts/Layout';\nimport { Page } from '../components/PageHelpers';\nimport { useAppInfo } from '../features/AppInfo';\nimport { useTracking } from '../features/Tracking';\nimport { useContentTypes } from '../hooks/useContentTypes';\nimport { useEnterprise } from '../hooks/useEnterprise';\n\nimport cornerOrnamentPath from './assets/corner-ornament.svg';\nimport cloudIconBackgroundImage from './assets/strapi-cloud-background.png';\nimport cloudFlagsImage from './assets/strapi-cloud-flags.svg';\n\n/* -------------------------------------------------------------------------------------------------\n * HomePageCE\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePageCE = () => {\n const { formatMessage } = useIntl();\n // Temporary until we develop the menu API\n const { collectionTypes, singleTypes, isLoading: isLoadingForModels } = useContentTypes();\n const guidedTourState = useGuidedTour('HomePage', (state) => state.guidedTourState);\n const isGuidedTourVisible = useGuidedTour('HomePage', (state) => state.isGuidedTourVisible);\n const isSkipped = useGuidedTour('HomePage', (state) => state.isSkipped);\n\n const showGuidedTour =\n !Object.values(guidedTourState).every((section) =>\n Object.values(section).every((step) => step)\n ) &&\n isGuidedTourVisible &&\n !isSkipped;\n const navigate = useNavigate();\n const handleClick: React.MouseEventHandler<HTMLButtonElement> = (e) => {\n e.preventDefault();\n\n navigate('/plugins/content-type-builder/content-types/create-content-type');\n };\n\n const hasAlreadyCreatedContentTypes = collectionTypes.length > 1 || singleTypes.length > 0;\n\n if (isLoadingForModels) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage({\n id: 'HomePage.head.title',\n defaultMessage: 'Homepage',\n })}\n </Page.Title>\n <Main>\n <LogoContainer>\n <img alt=\"\" aria-hidden src={cornerOrnamentPath} />\n </LogoContainer>\n <Box padding={10}>\n <Grid.Root>\n <Grid.Item col={8} s={12}>\n <div>\n <Box paddingLeft={6} paddingBottom={10}>\n <Flex direction=\"column\" alignItems=\"flex-start\" gap={5}>\n <Typography tag=\"h1\" variant=\"alpha\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcome.again',\n defaultMessage: 'Welcome 👋',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcome',\n defaultMessage: 'Welcome on board!',\n })}\n </Typography>\n <WordWrap textColor=\"neutral600\" variant=\"epsilon\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content.again',\n defaultMessage:\n 'We hope you are making progress on your project! Feel free to read the latest news about Strapi. We are giving our best to improve the product based on your feedback.',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content',\n defaultMessage:\n 'Congrats! You are logged as the first administrator. To discover the powerful features provided by Strapi, we recommend you to create your first Content type!',\n })}\n </WordWrap>\n {hasAlreadyCreatedContentTypes ? (\n <Link isExternal href=\"https://strapi.io/blog\">\n {formatMessage({\n id: 'app.components.HomePage.button.blog',\n defaultMessage: 'See more on the blog',\n })}\n </Link>\n ) : (\n <Button size=\"L\" onClick={handleClick} endIcon={<ArrowRight />}>\n {formatMessage({\n id: 'app.components.HomePage.create',\n defaultMessage: 'Create your first Content type',\n })}\n </Button>\n )}\n </Flex>\n </Box>\n </div>\n </Grid.Item>\n </Grid.Root>\n <Grid.Root gap={6}>\n <Grid.Item col={8} s={12}>\n {showGuidedTour ? <GuidedTourHomepage /> : <ContentBlocks />}\n </Grid.Item>\n <Grid.Item col={4} s={12}>\n <SocialLinks />\n </Grid.Item>\n </Grid.Root>\n </Box>\n </Main>\n </Layouts.Root>\n );\n};\n\nconst LogoContainer = styled<BoxComponent>(Box)`\n position: absolute;\n top: 0;\n right: 0;\n\n img {\n width: 15rem;\n }\n`;\n\nconst WordWrap = styled<TypographyComponent>(Typography)`\n word-break: break-word;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ContentBlocks\n * -----------------------------------------------------------------------------------------------*/\n\nconst ContentBlocks = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <BlockLink\n href=\"https://cloud.strapi.io\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => {\n trackUsage('didClickOnTryStrapiCloudSection');\n }}\n >\n <Flex\n shadow=\"tableShadow\"\n hasRadius\n padding={6}\n background=\"neutral0\"\n position=\"relative\"\n gap={6}\n >\n <CloudCustomWrapper hasRadius padding={3}>\n <CloudIconWrapper\n width=\"3.2rem\"\n height=\"3.2rem\"\n justifyContent=\"center\"\n hasRadius\n alignItems=\"center\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"15\" fill=\"none\">\n <path\n fill=\"#fff\"\n fillRule=\"evenodd\"\n d=\"M4.39453 13.8298C1.93859 13.6455 0 11.468 0 8.80884 0 6.0289 2.11876 3.7753 4.73238 3.7753c.46775 0 .91964.07218 1.34638.20664C7.21234 1.62909 9.66469 0 12.5073 0c2.5102 0 4.7161 1.27036 5.9782 3.18766a4.54297 4.54297 0 0 1 .6132-.04144C21.8056 3.14622 24 5.54066 24 8.49436c0 2.89194-2.1036 5.24784-4.7323 5.34504v.0031l-1.8948.278a38.18054 38.18054 0 0 1-11.08354 0l-1.89483-.278v-.0127Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </CloudIconWrapper>\n </CloudCustomWrapper>\n <Flex gap={1} direction=\"column\" alignItems=\"start\">\n <Typography fontWeight=\"semiBold\" variant=\"pi\" textColor=\"neutral800\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud',\n defaultMessage: 'Strapi Cloud',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud.content',\n defaultMessage:\n 'A fully composable, and collaborative platform to boost your team velocity.',\n })}\n </Typography>\n <Box src={cloudFlagsImage} position=\"absolute\" top={0} right={0} tag=\"img\" />\n </Flex>\n </Flex>\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/resource-center\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonReadTheDocumentationSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'global.documentation',\n defaultMessage: 'Documentation',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.documentation.content',\n defaultMessage: 'Discover the essential concepts, guides and instructions.',\n })}\n icon={<InformationSquare />}\n iconBackground=\"primary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/starters\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonCodeExampleSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.code',\n defaultMessage: 'Code example',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.code.content',\n defaultMessage: 'Learn by using ready-made starters for your projects.',\n })}\n icon={<CodeSquare />}\n iconBackground=\"warning100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog/categories/tutorials\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonTutorialSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.tutorial',\n defaultMessage: 'Tutorials',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.tutorial.content',\n defaultMessage: 'Follow step-by-step instructions to use and customize Strapi.',\n })}\n icon={<PlaySquare />}\n iconBackground=\"secondary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonBlogSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.blog',\n defaultMessage: 'Blog',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.blog.content',\n defaultMessage: 'Read the latest news about Strapi and the ecosystem.',\n })}\n icon={<FeatherSquare />}\n iconBackground=\"alternative100\"\n />\n </BlockLink>\n </Flex>\n );\n};\n\nconst BlockLink = styled.a`\n text-decoration: none;\n`;\n\nconst CloudCustomWrapper = styled<BoxComponent>(Box)`\n background-image: url(${cloudIconBackgroundImage});\n`;\n\nconst CloudIconWrapper = styled<FlexComponent>(Flex)`\n background: rgba(255, 255, 255, 0.3);\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * SocialLinks\n * -----------------------------------------------------------------------------------------------*/\n\nconst SocialLinks = () => {\n const { formatMessage } = useIntl();\n const communityEdition = useAppInfo('SocialLinks', (state) => state.communityEdition);\n\n const socialLinksExtended = [\n ...SOCIAL_LINKS,\n {\n icon: <StyledStrapi />,\n link: communityEdition\n ? 'https://discord.strapi.io'\n : 'https://support.strapi.io/support/home',\n name: {\n id: 'Settings.application.get-help',\n defaultMessage: 'Get help',\n },\n },\n ];\n\n return (\n <Flex\n tag=\"aside\"\n direction=\"column\"\n aria-labelledby=\"join-the-community\"\n background=\"neutral0\"\n hasRadius\n paddingRight={5}\n paddingLeft={5}\n paddingTop={6}\n paddingBottom={6}\n shadow=\"tableShadow\"\n gap={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Typography variant=\"delta\" tag=\"h2\" id=\"join-the-community\">\n {formatMessage({\n id: 'app.components.HomePage.community',\n defaultMessage: 'Join the community',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.HomePage.community.content',\n defaultMessage:\n 'Discuss with team members, contributors and developers on different channels',\n })}\n </Typography>\n </Flex>\n <Link href=\"https://feedback.strapi.io/\" isExternal endIcon={<ExternalLink />}>\n {formatMessage({\n id: 'app.components.HomePage.roadmap',\n defaultMessage: 'See our road map',\n })}\n </Link>\n </Flex>\n <GridGap>\n {socialLinksExtended.map(({ icon, link, name }) => {\n return (\n <Grid.Item col={6} s={12} key={name.id}>\n <LinkCustom size=\"L\" startIcon={icon} variant=\"tertiary\" href={link} isExternal>\n {formatMessage(name)}\n </LinkCustom>\n </Grid.Item>\n );\n })}\n </GridGap>\n </Flex>\n );\n};\n\nconst StyledGithub = styled(GitHub)`\n path {\n fill: ${(props) => props.theme.colors.neutral800} !important;\n }\n`;\n\nconst StyledDiscord = styled(Discord)`\n path {\n fill: #7289da !important;\n }\n`;\n\nconst StyledReddit = styled(Reddit)`\n > path:first-child {\n fill: #ff4500;\n }\n\n > path:nth-child(2) {\n fill: #fff;\n }\n`;\nconst StyledStrapi = styled(Strapi)`\n > path:first-child {\n fill: #4945ff;\n }\n > path:nth-child(2) {\n fill: #fff;\n }\n > path:nth-child(4) {\n fill: #9593ff;\n }\n`;\n\nconst StyledTwitter = styled(Twitter)`\n path:first-child {\n fill: #fff;\n }\n\n path:nth-child(2) {\n fill: #000 !important;\n }\n`;\n\nconst StyledDiscourse = styled(Discourse)`\n > path:first-child {\n fill: #231f20;\n }\n > path:nth-child(2) {\n fill: #fff9ae;\n }\n > path:nth-child(3) {\n fill: #00aeef;\n }\n > path:nth-child(4) {\n fill: #00a94f;\n }\n > path:nth-child(5) {\n fill: #f15d22;\n }\n > path:nth-child(6) {\n fill: #e31b23;\n }\n`;\n\nconst LinkCustom = styled(LinkButton)`\n display: flex;\n align-items: center;\n border: none;\n\n svg {\n width: ${({ theme }) => theme.spaces[6]};\n height: ${({ theme }) => theme.spaces[6]};\n }\n\n span {\n word-break: keep-all;\n }\n`;\n\nconst GridGap = styled(Grid.Root)`\n row-gap: ${({ theme }) => theme.spaces[2]};\n column-gap: ${({ theme }) => theme.spaces[4]};\n`;\n\nconst SOCIAL_LINKS = [\n {\n name: { id: 'app.components.HomePage.community.links.github', defaultMessage: 'Github' },\n link: 'https://github.com/strapi/strapi/',\n icon: <StyledGithub />,\n alt: 'github',\n },\n {\n name: { id: 'app.components.HomePage.community.links.discord', defaultMessage: 'Discord' },\n link: 'https://discord.strapi.io/',\n icon: <StyledDiscord />,\n alt: 'discord',\n },\n {\n name: { id: 'app.components.HomePage.community.links.reddit', defaultMessage: 'Reddit' },\n link: 'https://www.reddit.com/r/Strapi/',\n icon: <StyledReddit />,\n alt: 'reddit',\n },\n {\n name: { id: 'app.components.HomePage.community.links.twitter', defaultMessage: 'Twitter' },\n link: 'https://twitter.com/strapijs',\n icon: <StyledTwitter />,\n alt: 'twitter',\n },\n {\n name: { id: 'app.components.HomePage.community.links.forum', defaultMessage: 'Forum' },\n link: 'https://forum.strapi.io',\n icon: <StyledDiscourse />,\n alt: 'forum',\n },\n {\n name: { id: 'app.components.HomePage.community.links.blog', defaultMessage: 'Blog' },\n link: 'https://strapi.io/blog?utm_source=referral&utm_medium=admin&utm_campaign=career%20page',\n icon: <StyledStrapi />,\n alt: 'blog',\n },\n {\n name: {\n id: 'app.components.HomePage.community.links.career',\n defaultMessage: 'We are hiring!',\n },\n link: 'https://strapi.io/careers?utm_source=referral&utm_medium=admin&utm_campaign=blog',\n icon: <StyledStrapi />,\n alt: 'career',\n },\n];\n\n/* -------------------------------------------------------------------------------------------------\n * HomePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePage = () => {\n const Page = useEnterprise(\n HomePageCE,\n // eslint-disable-next-line import/no-cycle\n async () => (await import('../../../ee/admin/src/pages/HomePage')).HomePageEE\n );\n\n // block rendering until the EE component is fully loaded\n if (!Page) {\n return null;\n }\n\n return <Page />;\n};\n\nexport { HomePage, HomePageCE };\n"],"names":["useGuidedTour","useIntl","useTracking","LAYOUT_DATA","jsx","LinkButton","NavLink","ArrowRight","jsxs","Box","Flex","Typography","Number","VerticalDivider","STATES","Button","adminApi","useAPIErrorHandler","useNotification","React","useNavigate","Page","Layouts","Main","Grid","Link","styled","ContentBox","InformationSquare","CodeSquare","PlaySquare","FeatherSquare","useAppInfo","ExternalLink","GitHub","Discord","Reddit","Strapi","Twitter","Discourse","useEnterprise"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HomePage-n2buy2O4.mjs","sources":["../../admin/src/components/GuidedTour/Homepage.tsx","../../admin/src/services/contentManager.ts","../../admin/src/hooks/useContentTypes.ts","../../admin/src/pages/assets/corner-ornament.svg","../../admin/src/pages/assets/strapi-cloud-background.png","../../admin/src/pages/assets/strapi-cloud-flags.svg","../../admin/src/pages/HomePage.tsx"],"sourcesContent":["import { Box, Button, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { ArrowRight } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useTracking } from '../../features/Tracking';\n\nimport { LAYOUT_DATA, States, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\nimport { GuidedTourContextValue, useGuidedTour } from './Provider';\n\nconst GuidedTourHomepage = () => {\n const guidedTourState = useGuidedTour('GuidedTourHomepage', (state) => state.guidedTourState);\n const setSkipped = useGuidedTour('GuidedTourHomepage', (state) => state.setSkipped);\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const sections = Object.entries(LAYOUT_DATA).map(([key, val]) => ({\n key: key,\n title: val.home.title,\n content: (\n <LinkButton\n onClick={() => trackUsage(val.home.trackingEvent)}\n tag={NavLink}\n to={val.home.cta.target}\n endIcon={<ArrowRight />}\n >\n {formatMessage(val.home.cta.title)}\n </LinkButton>\n ),\n isDone: Object.entries(\n guidedTourState[key as keyof GuidedTourContextValue['guidedTourState']]\n ).every(([, value]) => value),\n }));\n\n const activeSectionIndex = sections.findIndex((section) => !section.isDone);\n\n const handleSkip = () => {\n setSkipped(true);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Box\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={7}\n paddingRight={4}\n paddingLeft={7}\n paddingBottom={4}\n background=\"neutral0\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Typography variant=\"beta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n <Box>\n {sections.map((section, index) => {\n const state = getState(activeSectionIndex, index);\n return (\n <Box key={section.key}>\n <Flex>\n <Box minWidth={`3rem`} marginRight={5}>\n <Number state={state}>{index + 1}</Number>\n </Box>\n <Typography variant=\"delta\" tag=\"h3\">\n {formatMessage(section.title)}\n </Typography>\n </Flex>\n <Flex alignItems=\"flex-start\">\n <Flex\n justifyContent=\"center\"\n minWidth={`3rem`}\n marginBottom={3}\n marginTop={3}\n marginRight={5}\n >\n {index === sections.length - 1 ? null : <VerticalDivider state={state} />}\n </Flex>\n <Box marginTop={2}>{state === STATES.IS_ACTIVE ? section.content : null}</Box>\n </Flex>\n </Box>\n );\n })}\n </Box>\n </Flex>\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nconst getState = (activeSectionIndex: number, index: number): States => {\n if (activeSectionIndex === -1) {\n return STATES.IS_DONE;\n }\n if (index < activeSectionIndex) {\n return STATES.IS_DONE;\n }\n if (index > activeSectionIndex) {\n return STATES.IS_NOT_DONE;\n }\n return STATES.IS_ACTIVE;\n};\n\nexport { GuidedTourHomepage };\n","/**\n * This will 100% be moved into it's own reducer space when\n * we move the content-manager back to it's plugin.\n */\n\nimport { adminApi } from './api';\n\nimport type { ContentType } from '../../../shared/contracts/content-types';\ninterface ContentTypes {\n collectionType: ContentType[];\n singleType: ContentType[];\n}\n\nconst contentManager = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n /**\n * Content Types\n */\n getContentTypes: builder.query<ContentTypes, void>({\n query: () => ({\n url: `/content-manager/content-types`,\n method: 'GET',\n }),\n transformResponse: (res: { data: ContentType[] }) => {\n return res.data.reduce<ContentTypes>(\n (acc, curr) => {\n if (curr.isDisplayed) {\n acc[curr.kind].push(curr);\n }\n return acc;\n },\n {\n collectionType: [],\n singleType: [],\n }\n );\n },\n }),\n }),\n overrideExisting: true,\n});\n\nconst { useGetContentTypesQuery } = contentManager;\n\nexport { useGetContentTypesQuery };\n","import * as React from 'react';\n\nimport { useNotification } from '../features/Notifications';\nimport { useAPIErrorHandler } from '../hooks/useAPIErrorHandler';\nimport { useGetContentTypesQuery } from '../services/contentManager';\n\nimport type { ContentType } from '../../../shared/contracts/content-types';\n\nexport function useContentTypes(): {\n isLoading: boolean;\n collectionTypes: ContentType[];\n singleTypes: ContentType[];\n} {\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n\n const { data, isLoading, error } = useGetContentTypesQuery();\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n return {\n isLoading,\n collectionTypes: data?.collectionType ?? [],\n singleTypes: data?.singleType ?? [],\n };\n}\n","export default \"data:image/svg+xml,%3csvg%20width='148'%20height='148'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20opacity='.8'%20fill-rule='evenodd'%20clip-rule='evenodd'%3e%3cpath%20opacity='.15'%20d='M110.81%2037H73.97V74.1h36.84V37Z'%20fill='url(%23a)'/%3e%3cpath%20opacity='.07'%20d='M36.84%200H0v37.08h36.84V0Z'%20fill='url(%23b)'/%3e%3cpath%20opacity='.07'%20d='M73.92%2073.95H37.08v37.08h36.84V73.95Z'%20fill='url(%23c)'/%3e%3cpath%20opacity='.07'%20d='M147.99%20110.92h-37.3V148H148v-37.08Z'%20fill='url(%23d)'/%3e%3cpath%20opacity='.15'%20d='M73.83%2037H36.84L73.83%200v37Z'%20fill='url(%23e)'/%3e%3cpath%20opacity='.15'%20d='M110.6%20111.02v-37h36.98l-36.99%2037Z'%20fill='url(%23f)'/%3e%3cpath%20opacity='.4'%20d='M73.83%200v37h36.98v37.01h37V3a3%203%200%200%200-3-3H73.82Z'%20fill='url(%23g)'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient%20id='a'%20x1='91.31'%20y1='83.31'%20x2='118.24'%20y2='56.59'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='b'%20x1='40.99'%20y1='13.88'%20x2='.01'%20y2='11.64'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A8B8FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='c'%20x1='54.41'%20y1='120.25'%20x2='81.35'%20y2='93.52'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A8B8FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='d'%20x1='128.24'%20y1='157.22'%20x2='155.17'%20y2='130.17'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23A8B8FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='e'%20x1='54.24'%20y1='46.21'%20x2='81.12'%20y2='19.38'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='f'%20x1='126.28'%20y1='74.05'%20x2='124.94'%20y2='111.07'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233253EA'/%3e%3c/linearGradient%3e%3clinearGradient%20id='g'%20x1='73.37'%20y1='36.87'%20x2='132.87'%20y2='66.74'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%237A92FF'/%3e%3cstop%20offset='1'%20stop-color='%233858EA'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\"","export default \"data:image/png;base64,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\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='160'%20fill='none'%20viewBox='29.41%2044%20149.09%2050.35'%3e%3cpath%20stroke='%23EAEAEF'%20d='M30.5%2044.5c37%2027%2047.5%2038%20147.499%2032'/%3e%3cg%20filter='url(%23a)'%3e%3cpath%20fill='%23F29D41'%20d='m129.467%2094.085%208.148-14.142a.598.598%200%200%200-.403-.887%2075.099%2075.099%200%200%200-3.045-.536c-1.875-.274-2.936-.44-4.837-.505-1.838-.064-2.873.01-4.698.153a64.05%2064.05%200%200%200-2.692.293.597.597%200%200%200-.462.851l7.042%2014.737c.186.388.732.41.947.036Z'/%3e%3c/g%3e%3cg%20filter='url(%23b)'%3e%3cpath%20fill='%23F29D41'%20d='m46.99%2075.52%2013.813-8.697a.597.597%200%200%200%20.058-.971%2075.191%2075.191%200%200%200-2.442-1.897c-1.53-1.119-2.39-1.761-4.04-2.707-1.595-.915-2.545-1.334-4.226-2.06a64.09%2064.09%200%200%200-2.516-.999.597.597%200%200%200-.806.537l-.66%2016.319a.535.535%200%200%200%20.82.474Z'/%3e%3c/g%3e%3cg%20filter='url(%23c)'%3e%3cpath%20fill='%235CB176'%20d='m29.41%2063.51%202.102-16.186a.597.597%200%200%201%20.858-.46c.748.371%201.905.954%202.745%201.42%201.657.92%202.602%201.433%204.152%202.534%201.5%201.064%202.278%201.75%203.642%202.972a64.026%2064.026%200%200%201%201.962%201.865c.291.286.214.771-.149.957l-14.538%207.443a.535.535%200%200%201-.774-.545Z'/%3e%3c/g%3e%3cmask%20id='d'%20width='17'%20height='19'%20x='29'%20y='46'%20maskUnits='userSpaceOnUse'%20style='mask-type:alpha'%3e%3cpath%20fill='%235CB176'%20d='m29.412%2063.51%202.101-16.186a.597.597%200%200%201%20.858-.46c.749.371%201.905.954%202.746%201.42%201.657.92%202.601%201.433%204.152%202.534%201.5%201.064%202.278%201.75%203.642%202.972a64.148%2064.148%200%200%201%201.962%201.865c.29.286.214.771-.15.957l-14.537%207.443a.535.535%200%200%201-.774-.545Z'/%3e%3c/mask%3e%3cg%20stroke='%23fff'%20stroke-linecap='round'%20stroke-width='.661'%20mask='url(%23d)'%3e%3cpath%20d='M39.755%2051.218c-1.05%201.558-4.606%204.788-10.44%205.247M36.415%2047.816c-1.05%201.558-4.606%204.789-10.44%205.247M42.97%2053.97c-1.457%201.908-6.341%205.902-14.216%206.619M42.15%2058.499c-1.645%201.748-5.29%204.033-13.197%203.939'/%3e%3c/g%3e%3cg%20filter='url(%23e)'%3e%3cpath%20fill='%237B79FF'%20d='m169.813%2092.983%205.927-15.208a.598.598%200%200%200-.531-.815%2075.213%2075.213%200%200%200-3.091-.072c-1.895.01-2.969.007-4.859.228-1.826.214-2.838.442-4.621.859-.815.19-1.893.488-2.617.694a.596.596%200%200%200-.328.91l9.178%2013.51a.536.536%200%200%200%20.942-.106Z'/%3e%3c/g%3e%3cg%20filter='url(%23f)'%3e%3cpath%20fill='%237B79FF'%20d='m87.001%2090.853-4.466-15.699a.597.597%200%200%201%20.606-.761c.835.045%202.127.123%203.084.22%201.886.19%202.956.287%204.816.685%201.797.385%202.784.709%204.519%201.291.794.267%201.839.665%202.54.938.38.148.501.624.24.938L87.929%2091.048a.535.535%200%200%201-.927-.195Z'/%3e%3c/g%3e%3cg%20filter='url(%23g)'%3e%3cpath%20fill='%23EE5E52'%20d='m66.153%2085.122%2012.355-10.665a.597.597%200%200%200-.087-.97%2075.353%2075.353%200%200%200-2.698-1.51c-1.68-.877-2.627-1.383-4.4-2.072-1.714-.666-2.716-.938-4.486-1.404a64.083%2064.083%200%200%200-2.638-.611.597.597%200%200%200-.716.651l1.788%2016.234a.535.535%200%200%200%20.882.347Z'/%3e%3c/g%3e%3ccircle%20cx='70.793'%20cy='74.511'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2070.793%2074.51)'/%3e%3ccircle%20cx='65.574'%20cy='78.63'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2065.574%2078.63)'/%3e%3ccircle%20cx='65.408'%20cy='74.519'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2065.408%2074.519)'/%3e%3ccircle%20cx='67.834'%20cy='81.943'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2067.834%2081.943)'/%3e%3ccircle%20cx='67.259'%20cy='69.875'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2067.259%2069.875)'/%3e%3ccircle%20cx='74.691'%20cy='72.834'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2074.69%2072.834)'/%3e%3ccircle%20cx='71.171'%20cy='78.968'%20r='.992'%20fill='%23fff'%20transform='rotate(8.553%2071.171%2078.968)'/%3e%3cg%20filter='url(%23h)'%3e%3cpath%20fill='%23EE5E52'%20d='m149.911%2093.824%206.521-14.963a.598.598%200%200%200-.499-.836%2075.255%2075.255%200%200%200-3.086-.193c-1.894-.064-2.967-.11-4.863.037-1.833.141-2.854.33-4.651.676-.823.158-1.912.414-2.643.59a.596.596%200%200%200-.364.898l8.64%2013.86a.535.535%200%200%200%20.945-.07Z'/%3e%3c/g%3e%3ccircle%20cx='149.5'%20cy='82.25'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20149.5%2082.25)'/%3e%3ccircle%20cx='146.579'%20cy='88.222'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20146.579%2088.222)'/%3e%3ccircle%20cx='144.65'%20cy='84.588'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20144.65%2084.588)'/%3e%3ccircle%20cx='150.049'%20cy='90.231'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20150.049%2090.231)'/%3e%3ccircle%20cx='144.306'%20cy='79.6'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20144.306%2079.6)'/%3e%3ccircle%20cx='152.287'%20cy='79.051'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20152.287%2079.05)'/%3e%3ccircle%20cx='151.77'%20cy='86.103'%20r='.992'%20fill='%23fff'%20transform='rotate(-17.098%20151.77%2086.103)'/%3e%3cg%20filter='url(%23i)'%3e%3cpath%20fill='%235CB176'%20d='m109.171%2093.4%208.86-13.707a.598.598%200%200%200-.357-.906c-.811-.2-2.07-.503-3.013-.69-1.859-.37-2.911-.59-4.806-.753-1.831-.157-2.869-.136-4.699-.086-.837.023-1.953.098-2.703.154a.597.597%200%200%200-.505.827l6.279%2015.077c.166.398.71.447.944.084Z'/%3e%3c/g%3e%3cmask%20id='j'%20width='18'%20height='17'%20x='101'%20y='77'%20maskUnits='userSpaceOnUse'%20style='mask-type:alpha'%3e%3cpath%20fill='%235CB176'%20d='m109.17%2093.4%208.86-13.707a.598.598%200%200%200-.357-.905c-.811-.201-2.07-.504-3.013-.692-1.859-.37-2.911-.589-4.806-.751-1.831-.158-2.869-.137-4.699-.087-.837.023-1.953.099-2.703.154a.597.597%200%200%200-.505.827l6.279%2015.077c.166.398.71.447.944.085Z'/%3e%3c/mask%3e%3cg%20stroke='%23fff'%20stroke-linecap='round'%20stroke-width='.661'%20mask='url(%23j)'%3e%3cpath%20d='M109.225%2077.335c-.207%201.867.418%206.632%204.573%2010.753M113.972%2076.9c-.207%201.867.418%206.631%204.573%2010.753M104.992%2077.357c-.121%202.397%201.023%208.602%206.568%2014.24M102.69%2081.343c.125%202.397%201.429%206.497%207.522%2011.537'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='a'%20width='21.565'%20height='21.649'%20x='118.775'%20y='76.009'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='b'%20width='20.201'%20height='22.741'%20x='43.526'%20y='56.167'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='c'%20width='20.932'%20height='22.602'%20x='26.761'%20y='44.818'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='e'%20width='21.482'%20height='21.724'%20x='156.944'%20y='74.904'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='f'%20width='21.256'%20height='22.139'%20x='79.868'%20y='72.409'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='g'%20width='20.526'%20height='22.664'%20x='60.835'%20y='65.893'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='h'%20width='21.537'%20height='21.662'%20x='137.59'%20y='75.788'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3cfilter%20id='i'%20width='21.515'%20height='21.712'%20x='99.257'%20y='75.238'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='.661'/%3e%3cfeGaussianBlur%20stdDeviation='1.322'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.129412%200%200%200%200%200.129412%200%200%200%200%200.203922%200%200%200%200.1%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='effect1_dropShadow_12_39'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='effect1_dropShadow_12_39'%20result='shape'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e\"","import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Grid,\n Main,\n Typography,\n Link,\n LinkButton,\n TypographyComponent,\n BoxComponent,\n FlexComponent,\n} from '@strapi/design-system';\nimport { ArrowRight, ExternalLink } from '@strapi/icons';\nimport {\n CodeSquare,\n Discord,\n Discourse,\n FeatherSquare,\n GitHub,\n InformationSquare,\n PlaySquare,\n Reddit,\n Strapi,\n X as Twitter,\n} from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\nimport { useNavigate } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { ContentBox } from '../components/ContentBox';\nimport { GuidedTourHomepage } from '../components/GuidedTour/Homepage';\nimport { useGuidedTour } from '../components/GuidedTour/Provider';\nimport { Layouts } from '../components/Layouts/Layout';\nimport { Page } from '../components/PageHelpers';\nimport { useAppInfo } from '../features/AppInfo';\nimport { useTracking } from '../features/Tracking';\nimport { useContentTypes } from '../hooks/useContentTypes';\nimport { useEnterprise } from '../hooks/useEnterprise';\n\nimport cornerOrnamentPath from './assets/corner-ornament.svg';\nimport cloudIconBackgroundImage from './assets/strapi-cloud-background.png';\nimport cloudFlagsImage from './assets/strapi-cloud-flags.svg';\n\n/* -------------------------------------------------------------------------------------------------\n * HomePageCE\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePageCE = () => {\n const { formatMessage } = useIntl();\n // Temporary until we develop the menu API\n const { collectionTypes, singleTypes, isLoading: isLoadingForModels } = useContentTypes();\n const guidedTourState = useGuidedTour('HomePage', (state) => state.guidedTourState);\n const isGuidedTourVisible = useGuidedTour('HomePage', (state) => state.isGuidedTourVisible);\n const isSkipped = useGuidedTour('HomePage', (state) => state.isSkipped);\n\n const showGuidedTour =\n !Object.values(guidedTourState).every((section) =>\n Object.values(section).every((step) => step)\n ) &&\n isGuidedTourVisible &&\n !isSkipped;\n const navigate = useNavigate();\n const handleClick: React.MouseEventHandler<HTMLButtonElement> = (e) => {\n e.preventDefault();\n\n navigate('/plugins/content-type-builder/content-types/create-content-type');\n };\n\n const hasAlreadyCreatedContentTypes = collectionTypes.length > 1 || singleTypes.length > 0;\n\n if (isLoadingForModels) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage({\n id: 'HomePage.head.title',\n defaultMessage: 'Homepage',\n })}\n </Page.Title>\n <Main>\n <LogoContainer>\n <img alt=\"\" aria-hidden src={cornerOrnamentPath} />\n </LogoContainer>\n <Box padding={10}>\n <Grid.Root>\n <Grid.Item col={8} s={12}>\n <div>\n <Box paddingLeft={6} paddingBottom={10}>\n <Flex direction=\"column\" alignItems=\"flex-start\" gap={5}>\n <Typography tag=\"h1\" variant=\"alpha\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcome.again',\n defaultMessage: 'Welcome 👋',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcome',\n defaultMessage: 'Welcome on board!',\n })}\n </Typography>\n <WordWrap textColor=\"neutral600\" variant=\"epsilon\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content.again',\n defaultMessage:\n 'We hope you are making progress on your project! Feel free to read the latest news about Strapi. We are giving our best to improve the product based on your feedback.',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content',\n defaultMessage:\n 'Congrats! You are logged as the first administrator. To discover the powerful features provided by Strapi, we recommend you to create your first Content type!',\n })}\n </WordWrap>\n {hasAlreadyCreatedContentTypes ? (\n <Link isExternal href=\"https://strapi.io/blog\">\n {formatMessage({\n id: 'app.components.HomePage.button.blog',\n defaultMessage: 'See more on the blog',\n })}\n </Link>\n ) : (\n <Button size=\"L\" onClick={handleClick} endIcon={<ArrowRight />}>\n {formatMessage({\n id: 'app.components.HomePage.create',\n defaultMessage: 'Create your first Content type',\n })}\n </Button>\n )}\n </Flex>\n </Box>\n </div>\n </Grid.Item>\n </Grid.Root>\n <Grid.Root gap={6}>\n <Grid.Item col={8} s={12}>\n {showGuidedTour ? <GuidedTourHomepage /> : <ContentBlocks />}\n </Grid.Item>\n <Grid.Item col={4} s={12}>\n <SocialLinks />\n </Grid.Item>\n </Grid.Root>\n </Box>\n </Main>\n </Layouts.Root>\n );\n};\n\nconst LogoContainer = styled<BoxComponent>(Box)`\n position: absolute;\n top: 0;\n right: 0;\n\n img {\n width: 15rem;\n }\n`;\n\nconst WordWrap = styled<TypographyComponent>(Typography)`\n word-break: break-word;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ContentBlocks\n * -----------------------------------------------------------------------------------------------*/\n\nconst ContentBlocks = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <BlockLink\n href=\"https://cloud.strapi.io\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => {\n trackUsage('didClickOnTryStrapiCloudSection');\n }}\n >\n <Flex\n shadow=\"tableShadow\"\n hasRadius\n padding={6}\n background=\"neutral0\"\n position=\"relative\"\n gap={6}\n >\n <CloudCustomWrapper hasRadius padding={3}>\n <CloudIconWrapper\n width=\"3.2rem\"\n height=\"3.2rem\"\n justifyContent=\"center\"\n hasRadius\n alignItems=\"center\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"15\" fill=\"none\">\n <path\n fill=\"#fff\"\n fillRule=\"evenodd\"\n d=\"M4.39453 13.8298C1.93859 13.6455 0 11.468 0 8.80884 0 6.0289 2.11876 3.7753 4.73238 3.7753c.46775 0 .91964.07218 1.34638.20664C7.21234 1.62909 9.66469 0 12.5073 0c2.5102 0 4.7161 1.27036 5.9782 3.18766a4.54297 4.54297 0 0 1 .6132-.04144C21.8056 3.14622 24 5.54066 24 8.49436c0 2.89194-2.1036 5.24784-4.7323 5.34504v.0031l-1.8948.278a38.18054 38.18054 0 0 1-11.08354 0l-1.89483-.278v-.0127Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </CloudIconWrapper>\n </CloudCustomWrapper>\n <Flex gap={1} direction=\"column\" alignItems=\"start\">\n <Typography fontWeight=\"semiBold\" variant=\"pi\" textColor=\"neutral800\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud',\n defaultMessage: 'Strapi Cloud',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud.content',\n defaultMessage:\n 'A fully composable, and collaborative platform to boost your team velocity.',\n })}\n </Typography>\n <Box src={cloudFlagsImage} position=\"absolute\" top={0} right={0} tag=\"img\" />\n </Flex>\n </Flex>\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/resource-center\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonReadTheDocumentationSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'global.documentation',\n defaultMessage: 'Documentation',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.documentation.content',\n defaultMessage: 'Discover the essential concepts, guides and instructions.',\n })}\n icon={<InformationSquare />}\n iconBackground=\"primary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/starters\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonCodeExampleSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.code',\n defaultMessage: 'Code example',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.code.content',\n defaultMessage: 'Learn by using ready-made starters for your projects.',\n })}\n icon={<CodeSquare />}\n iconBackground=\"warning100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog/categories/tutorials\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonTutorialSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.tutorial',\n defaultMessage: 'Tutorials',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.tutorial.content',\n defaultMessage: 'Follow step-by-step instructions to use and customize Strapi.',\n })}\n icon={<PlaySquare />}\n iconBackground=\"secondary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonBlogSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.blog',\n defaultMessage: 'Blog',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.blog.content',\n defaultMessage: 'Read the latest news about Strapi and the ecosystem.',\n })}\n icon={<FeatherSquare />}\n iconBackground=\"alternative100\"\n />\n </BlockLink>\n </Flex>\n );\n};\n\nconst BlockLink = styled.a`\n text-decoration: none;\n`;\n\nconst CloudCustomWrapper = styled<BoxComponent>(Box)`\n background-image: url(${cloudIconBackgroundImage});\n`;\n\nconst CloudIconWrapper = styled<FlexComponent>(Flex)`\n background: rgba(255, 255, 255, 0.3);\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * SocialLinks\n * -----------------------------------------------------------------------------------------------*/\n\nconst SocialLinks = () => {\n const { formatMessage } = useIntl();\n const communityEdition = useAppInfo('SocialLinks', (state) => state.communityEdition);\n\n const socialLinksExtended = [\n ...SOCIAL_LINKS,\n {\n icon: <StyledStrapi />,\n link: communityEdition\n ? 'https://discord.strapi.io'\n : 'https://support.strapi.io/support/home',\n name: {\n id: 'Settings.application.get-help',\n defaultMessage: 'Get help',\n },\n },\n ];\n\n return (\n <Flex\n tag=\"aside\"\n direction=\"column\"\n aria-labelledby=\"join-the-community\"\n background=\"neutral0\"\n hasRadius\n paddingRight={5}\n paddingLeft={5}\n paddingTop={6}\n paddingBottom={6}\n shadow=\"tableShadow\"\n gap={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Typography variant=\"delta\" tag=\"h2\" id=\"join-the-community\">\n {formatMessage({\n id: 'app.components.HomePage.community',\n defaultMessage: 'Join the community',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.HomePage.community.content',\n defaultMessage:\n 'Discuss with team members, contributors and developers on different channels',\n })}\n </Typography>\n </Flex>\n <Link href=\"https://feedback.strapi.io/\" isExternal endIcon={<ExternalLink />}>\n {formatMessage({\n id: 'app.components.HomePage.roadmap',\n defaultMessage: 'See our road map',\n })}\n </Link>\n </Flex>\n <GridGap>\n {socialLinksExtended.map(({ icon, link, name }) => {\n return (\n <Grid.Item col={6} s={12} key={name.id}>\n <LinkCustom size=\"L\" startIcon={icon} variant=\"tertiary\" href={link} isExternal>\n {formatMessage(name)}\n </LinkCustom>\n </Grid.Item>\n );\n })}\n </GridGap>\n </Flex>\n );\n};\n\nconst StyledGithub = styled(GitHub)`\n path {\n fill: ${(props) => props.theme.colors.neutral800} !important;\n }\n`;\n\nconst StyledDiscord = styled(Discord)`\n path {\n fill: #7289da !important;\n }\n`;\n\nconst StyledReddit = styled(Reddit)`\n > path:first-child {\n fill: #ff4500;\n }\n\n > path:nth-child(2) {\n fill: #fff;\n }\n`;\nconst StyledStrapi = styled(Strapi)`\n > path:first-child {\n fill: #4945ff;\n }\n > path:nth-child(2) {\n fill: #fff;\n }\n > path:nth-child(4) {\n fill: #9593ff;\n }\n`;\n\nconst StyledTwitter = styled(Twitter)`\n path:first-child {\n fill: #fff;\n }\n\n path:nth-child(2) {\n fill: #000 !important;\n }\n`;\n\nconst StyledDiscourse = styled(Discourse)`\n > path:first-child {\n fill: #231f20;\n }\n > path:nth-child(2) {\n fill: #fff9ae;\n }\n > path:nth-child(3) {\n fill: #00aeef;\n }\n > path:nth-child(4) {\n fill: #00a94f;\n }\n > path:nth-child(5) {\n fill: #f15d22;\n }\n > path:nth-child(6) {\n fill: #e31b23;\n }\n`;\n\nconst LinkCustom = styled(LinkButton)`\n display: flex;\n align-items: center;\n border: none;\n\n svg {\n width: ${({ theme }) => theme.spaces[6]};\n height: ${({ theme }) => theme.spaces[6]};\n }\n\n span {\n word-break: keep-all;\n }\n`;\n\nconst GridGap = styled(Grid.Root)`\n row-gap: ${({ theme }) => theme.spaces[2]};\n column-gap: ${({ theme }) => theme.spaces[4]};\n`;\n\nconst SOCIAL_LINKS = [\n {\n name: { id: 'app.components.HomePage.community.links.github', defaultMessage: 'Github' },\n link: 'https://github.com/strapi/strapi/',\n icon: <StyledGithub />,\n alt: 'github',\n },\n {\n name: { id: 'app.components.HomePage.community.links.discord', defaultMessage: 'Discord' },\n link: 'https://discord.strapi.io/',\n icon: <StyledDiscord />,\n alt: 'discord',\n },\n {\n name: { id: 'app.components.HomePage.community.links.reddit', defaultMessage: 'Reddit' },\n link: 'https://www.reddit.com/r/Strapi/',\n icon: <StyledReddit />,\n alt: 'reddit',\n },\n {\n name: { id: 'app.components.HomePage.community.links.twitter', defaultMessage: 'Twitter' },\n link: 'https://twitter.com/strapijs',\n icon: <StyledTwitter />,\n alt: 'twitter',\n },\n {\n name: { id: 'app.components.HomePage.community.links.forum', defaultMessage: 'Forum' },\n link: 'https://forum.strapi.io',\n icon: <StyledDiscourse />,\n alt: 'forum',\n },\n {\n name: { id: 'app.components.HomePage.community.links.blog', defaultMessage: 'Blog' },\n link: 'https://strapi.io/blog?utm_source=referral&utm_medium=admin&utm_campaign=career%20page',\n icon: <StyledStrapi />,\n alt: 'blog',\n },\n {\n name: {\n id: 'app.components.HomePage.community.links.career',\n defaultMessage: 'We are hiring!',\n },\n link: 'https://strapi.io/careers?utm_source=referral&utm_medium=admin&utm_campaign=blog',\n icon: <StyledStrapi />,\n alt: 'career',\n },\n];\n\n/* -------------------------------------------------------------------------------------------------\n * HomePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePage = () => {\n const Page = useEnterprise(\n HomePageCE,\n // eslint-disable-next-line import/no-cycle\n async () => (await import('../../../ee/admin/src/pages/HomePage')).HomePageEE\n );\n\n // block rendering until the EE component is fully loaded\n if (!Page) {\n return null;\n }\n\n return <Page />;\n};\n\nexport { HomePage, HomePageCE };\n"],"names":["Twitter","Page"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InstalledPluginsPage--BdpZuNa.js","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Table, Tbody, Td, Th, Thead, Tr, Typography, useNotifyAT } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { useSelector } from 'react-redux';\n\nimport { Layouts } from '../components/Layouts/Layout';\nimport { Page } from '../components/PageHelpers';\nimport { useNotification } from '../features/Notifications';\nimport { useAPIErrorHandler } from '../hooks/useAPIErrorHandler';\nimport { selectAdminPermissions } from '../selectors';\nimport { useGetPluginsQuery } from '../services/admin';\n\nconst InstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { isLoading, data, error } = useGetPluginsQuery();\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n {\n target: formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n }),\n }\n )\n );\n }\n\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [data, error, formatAPIError, formatMessage, notifyStatus, toggleNotification]);\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Main>\n <Layouts.Header\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n subtitle={formatMessage({\n id: 'app.components.ListPluginsPage.description',\n defaultMessage: 'List of the installed plugins in the project.',\n })}\n />\n <Layouts.Content>\n <Table colCount={2} rowCount={data?.plugins?.length ?? 0 + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'description',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data?.plugins.map(({ name, displayName, description }) => {\n return (\n <Tr key={name}>\n <Td>\n <Typography textColor=\"neutral800\" variant=\"omega\" fontWeight=\"bold\">\n {formatMessage({\n id: `global.plugins.${name}`,\n defaultMessage: displayName,\n })}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: `global.plugins.${name}.description`,\n defaultMessage: description,\n })}\n </Typography>\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n </Layouts.Content>\n </Page.Main>\n </Layouts.Root>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <Page.Protect permissions={permissions.marketplace?.main}>\n <Page.Title>\n {formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n </Page.Title>\n <InstalledPluginsPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":["useIntl","useNotifyAT","useNotification","useAPIErrorHandler","useGetPluginsQuery","React","jsx","Page","Layouts","jsxs","Table","Thead","Tr","Th","Typography","Tbody","Td","useSelector","selectAdminPermissions"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InstalledPluginsPage-nFNbVJPm.mjs","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Table, Tbody, Td, Th, Thead, Tr, Typography, useNotifyAT } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { useSelector } from 'react-redux';\n\nimport { Layouts } from '../components/Layouts/Layout';\nimport { Page } from '../components/PageHelpers';\nimport { useNotification } from '../features/Notifications';\nimport { useAPIErrorHandler } from '../hooks/useAPIErrorHandler';\nimport { selectAdminPermissions } from '../selectors';\nimport { useGetPluginsQuery } from '../services/admin';\n\nconst InstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { isLoading, data, error } = useGetPluginsQuery();\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n {\n target: formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n }),\n }\n )\n );\n }\n\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [data, error, formatAPIError, formatMessage, notifyStatus, toggleNotification]);\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Main>\n <Layouts.Header\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n subtitle={formatMessage({\n id: 'app.components.ListPluginsPage.description',\n defaultMessage: 'List of the installed plugins in the project.',\n })}\n />\n <Layouts.Content>\n <Table colCount={2} rowCount={data?.plugins?.length ?? 0 + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'description',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data?.plugins.map(({ name, displayName, description }) => {\n return (\n <Tr key={name}>\n <Td>\n <Typography textColor=\"neutral800\" variant=\"omega\" fontWeight=\"bold\">\n {formatMessage({\n id: `global.plugins.${name}`,\n defaultMessage: displayName,\n })}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: `global.plugins.${name}.description`,\n defaultMessage: description,\n })}\n </Typography>\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n </Layouts.Content>\n </Page.Main>\n </Layouts.Root>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <Page.Protect permissions={permissions.marketplace?.main}>\n <Page.Title>\n {formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n </Page.Title>\n <InstalledPluginsPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ListPage-SnKebmiT.js","sources":["../../admin/src/pages/Settings/pages/Webhooks/ListPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n useNotifyAT,\n Checkbox,\n Button,\n EmptyStateLayout,\n Flex,\n IconButton,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n LinkButton,\n Dialog,\n} from '@strapi/design-system';\nimport { Pencil, Plus, Trash } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\nimport { NavLink, useNavigate } from 'react-router-dom';\n\nimport { UpdateWebhook } from '../../../../../../shared/contracts/webhooks';\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../hooks/useRBAC';\n\nimport { useWebhooks } from './hooks/useWebhooks';\n\n/* -------------------------------------------------------------------------------------------------\n * ListPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListPage = () => {\n const [showModal, setShowModal] = React.useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = React.useState<string[]>([]);\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.webhooks);\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions);\n const { notifyStatus } = useNotifyAT();\n\n const {\n isLoading: isWebhooksLoading,\n webhooks,\n error: webhooksError,\n updateWebhook,\n deleteManyWebhooks,\n } = useWebhooks();\n\n React.useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const enableWebhook = async (body: UpdateWebhook.Request['body'] & UpdateWebhook.Params) => {\n try {\n const res = await updateWebhook(body);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n }\n };\n\n const deleteWebhook = async (id: string) => {\n try {\n const res = await deleteManyWebhooks({\n ids: [id],\n });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\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 const confirmBulkDelete = async () => {\n try {\n const res = await deleteManyWebhooks({\n ids: webhooksToDelete,\n });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWebhooksToDelete([]);\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n } finally {\n setShowModal(false);\n }\n };\n\n const selectAllCheckbox = (selected: boolean) =>\n selected\n ? setWebhooksToDelete(webhooks?.map((webhook) => webhook.id) ?? [])\n : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected: boolean, id: string) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Webhooks',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isLoading}>\n <Layouts.Header\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton tag={NavLink} startIcon={<Plus />} variant=\"default\" to=\"create\" size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <Layouts.Action\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <Layouts.Content>\n {numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter\n onClick={() => {\n if (canCreate) {\n navigate('create');\n }\n }}\n icon={<Plus />}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <Checkbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n checked={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n ? 'indeterminate'\n : webhooksToDeleteLength === numberOfWebhooks\n }\n onCheckedChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks?.map((webhook) => (\n <Tr\n key={webhook.id}\n onClick={() => {\n if (canUpdate) {\n navigate(webhook.id);\n }\n }}\n style={{ cursor: canUpdate ? 'pointer' : 'default' }}\n >\n <Td onClick={(e) => e.stopPropagation()}>\n <Checkbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n checked={webhooksToDelete?.includes(webhook.id)}\n onCheckedChange={(selected) => selectOneCheckbox(!!selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n aria-label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n checked={webhook.isEnabled}\n onCheckedChange={(enabled) => {\n enableWebhook({\n ...webhook,\n isEnabled: enabled,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n borderWidth={0}\n >\n <Pencil />\n </IconButton>\n )}\n {canDelete && (\n <DeleteActionButton\n onDelete={() => {\n deleteWebhook(webhook.id);\n }}\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n canCreate ? (\n <LinkButton variant=\"secondary\" startIcon={<Plus />} tag={NavLink} to=\"create\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n ) : null\n }\n />\n )}\n </Layouts.Content>\n </Page.Main>\n <Dialog.Root open={showModal} onOpenChange={setShowModal}>\n <ConfirmDialog onConfirm={confirmBulkDelete} />\n </Dialog.Root>\n </Layouts.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DeleteActionButton\n * -----------------------------------------------------------------------------------------------*/\n\ntype DeleteActionButtonProps = {\n onDelete: () => void;\n};\n\nconst DeleteActionButton = ({ onDelete }: DeleteActionButtonProps) => {\n const [showModal, setShowModal] = React.useState(false);\n const { formatMessage } = useIntl();\n\n return (\n <>\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n borderWidth={0}\n >\n <Trash />\n </IconButton>\n\n <Dialog.Root open={showModal} onOpenChange={setShowModal}>\n <ConfirmDialog\n onConfirm={(e) => {\n e?.stopPropagation();\n onDelete();\n }}\n />\n </Dialog.Root>\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListPage />\n </Page.Protect>\n );\n};\n\nexport { ListPage, ProtectedListPage };\n"],"names":["React","useTypedSelector","useIntl","useAPIErrorHandler","useNotification","useNavigate","useRBAC","useNotifyAT","useWebhooks","jsx","Page","jsxs","Layouts","LinkButton","NavLink","Plus","Fragment","Typography","Button","Trash","Table","TFooter","Thead","Tr","Th","Checkbox","VisuallyHidden","Tbody","Td","Flex","Switch","IconButton","Pencil","EmptyStateLayout","EmptyDocuments","Dialog","ConfirmDialog"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ListPage-iBPceR0S.mjs","sources":["../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx","../../admin/src/pages/Settings/pages/Roles/ListPage.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} borderWidth={0} />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n","import * as React from 'react';\n\nimport {\n Button,\n Dialog,\n Table,\n Tbody,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport { Duplicate, Pencil, Plus, Trash } from '@strapi/icons';\nimport { produce } from 'immer';\nimport { useIntl } from 'react-intl';\nimport { useNavigate } from 'react-router-dom';\n\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { SearchInput } from '../../../../components/SearchInput';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAdminRoles, AdminRole } from '../../../../hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useFetchClient } from '../../../../hooks/useFetchClient';\nimport { useQueryParams } from '../../../../hooks/useQueryParams';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { isFetchError } from '../../../../utils/getFetchClient';\n\nimport { RoleRow, RoleRowProps } from './components/RoleRow';\n\nconst ListPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector(selectAdminPermissions);\n const { formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n const [isWarningDeleteAllOpened, setIsWarningDeleteAllOpenend] = React.useState(false);\n const [{ query }] = useQueryParams<{ _q?: string }>();\n const {\n isLoading: isLoadingForPermissions,\n allowedActions: { canCreate, canDelete, canRead, canUpdate },\n } = useRBAC(permissions.settings?.roles);\n\n const { roles, refetch: refetchRoles } = useAdminRoles(\n { filters: query?._q ? { name: { $containsi: query._q } } : undefined },\n {\n refetchOnMountOrArgChange: true,\n skip: isLoadingForPermissions || !canRead,\n }\n );\n\n const navigate = useNavigate();\n const [{ roleToDelete }, dispatch] = React.useReducer(reducer, initialState);\n const { post } = useFetchClient();\n\n const handleDeleteData = async () => {\n try {\n dispatch({\n type: 'ON_REMOVE_ROLES',\n });\n\n await post('/admin/roles/batch-delete', {\n ids: [roleToDelete],\n });\n\n await refetchRoles();\n\n dispatch({\n type: 'RESET_DATA_TO_DELETE',\n });\n } catch (error) {\n if (isFetchError(error)) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n };\n\n const handleNewRoleClick = () => navigate('new');\n\n const handleToggleModal = () => setIsWarningDeleteAllOpenend((prev) => !prev);\n\n const handleClickDelete = (role: AdminRole) => (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (role.usersCount) {\n toggleNotification({\n type: 'info',\n message: formatMessage({ id: 'Roles.ListPage.notification.delete-not-allowed' }),\n });\n } else {\n dispatch({\n type: 'SET_ROLE_TO_DELETE',\n id: role.id,\n });\n\n handleToggleModal();\n }\n };\n\n const handleClickDuplicate = (role: AdminRole) => (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n navigate(`duplicate/${role.id}`);\n };\n\n const rowCount = roles.length + 1;\n const colCount = 6;\n\n if (isLoadingForPermissions) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Roles',\n }\n )}\n </Page.Title>\n <Layouts.Header\n primaryAction={\n canCreate ? (\n <Button onClick={handleNewRoleClick} startIcon={<Plus />} size=\"S\">\n {formatMessage({\n id: 'Settings.roles.list.button.add',\n defaultMessage: 'Add new role',\n })}\n </Button>\n ) : null\n }\n title={formatMessage({\n id: 'global.roles',\n defaultMessage: 'roles',\n })}\n subtitle={formatMessage({\n id: 'Settings.roles.list.description',\n defaultMessage: 'List of roles',\n })}\n />\n {canRead && (\n <Layouts.Action\n startActions={\n <SearchInput\n label={formatMessage(\n { id: 'app.component.search.label', defaultMessage: 'Search for {target}' },\n {\n target: formatMessage({\n id: 'global.roles',\n defaultMessage: 'roles',\n }),\n }\n )}\n />\n }\n />\n )}\n {canRead && (\n <Layouts.Content>\n <Table\n colCount={colCount}\n rowCount={rowCount}\n footer={\n canCreate ? (\n <TFooter onClick={handleNewRoleClick} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.roles.list.button.add',\n defaultMessage: 'Add new role',\n })}\n </TFooter>\n ) : null\n }\n >\n <Thead>\n <Tr aria-rowindex={1}>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.users',\n defaultMessage: 'Users',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'global.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {roles?.map((role, index) => (\n <RoleRow\n key={role.id}\n id={role.id}\n name={role.name}\n description={role.description}\n usersCount={role.usersCount}\n icons={\n [\n canCreate &&\n ({\n onClick: handleClickDuplicate(role),\n label: formatMessage({\n id: 'app.utils.duplicate',\n defaultMessage: 'Duplicate',\n }),\n children: <Duplicate />,\n } satisfies RoleRowProps['icons'][number]),\n canUpdate &&\n ({\n onClick: () => navigate(role.id.toString()),\n label: formatMessage({ id: 'app.utils.edit', defaultMessage: 'Edit' }),\n children: <Pencil />,\n } satisfies RoleRowProps['icons'][number]),\n canDelete &&\n ({\n onClick: handleClickDelete(role),\n label: formatMessage({ id: 'global.delete', defaultMessage: 'Delete' }),\n children: <Trash />,\n } satisfies RoleRowProps['icons'][number]),\n ].filter(Boolean) as RoleRowProps['icons']\n }\n rowIndex={index + 2}\n canUpdate={canUpdate}\n />\n ))}\n </Tbody>\n </Table>\n </Layouts.Content>\n )}\n <Dialog.Root open={isWarningDeleteAllOpened} onOpenChange={handleToggleModal}>\n <ConfirmDialog onConfirm={handleDeleteData} />\n </Dialog.Root>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Reducer\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * TODO: do we actually need this reducer? It's not doing a lot...\n */\n\ninterface State {\n roleToDelete: null | AdminRole['id'];\n showModalConfirmButtonLoading: boolean;\n shouldRefetchData: boolean;\n}\n\nconst initialState = {\n roleToDelete: null,\n showModalConfirmButtonLoading: false,\n shouldRefetchData: false,\n} satisfies State;\n\ninterface SetRoleToDeleteAction extends Pick<AdminRole, 'id'> {\n type: 'SET_ROLE_TO_DELETE';\n}\n\ninterface ResetDataToDeleteAction {\n type: 'RESET_DATA_TO_DELETE';\n}\n\ninterface OnRemoveRolesAction {\n type: 'ON_REMOVE_ROLES';\n}\n\ninterface OnRemoveRolesSucceededAction {\n type: 'ON_REMOVE_ROLES_SUCCEEDED';\n}\n\ntype Action =\n | SetRoleToDeleteAction\n | ResetDataToDeleteAction\n | OnRemoveRolesAction\n | OnRemoveRolesSucceededAction;\n\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n case 'ON_REMOVE_ROLES': {\n draftState.showModalConfirmButtonLoading = true;\n break;\n }\n case 'ON_REMOVE_ROLES_SUCCEEDED': {\n draftState.shouldRefetchData = true;\n draftState.roleToDelete = null;\n break;\n }\n case 'RESET_DATA_TO_DELETE': {\n draftState.shouldRefetchData = false;\n draftState.roleToDelete = null;\n draftState.showModalConfirmButtonLoading = false;\n break;\n }\n case 'SET_ROLE_TO_DELETE': {\n draftState.roleToDelete = action.id;\n\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.roles.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <ListPage />\n </Page.Protect>\n );\n};\n\nexport { ProtectedListPage, ListPage };\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ListPage-k3F774YE.mjs","sources":["../../admin/src/pages/Settings/pages/Webhooks/ListPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n useNotifyAT,\n Checkbox,\n Button,\n EmptyStateLayout,\n Flex,\n IconButton,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n LinkButton,\n Dialog,\n} from '@strapi/design-system';\nimport { Pencil, Plus, Trash } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\nimport { NavLink, useNavigate } from 'react-router-dom';\n\nimport { UpdateWebhook } from '../../../../../../shared/contracts/webhooks';\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../hooks/useRBAC';\n\nimport { useWebhooks } from './hooks/useWebhooks';\n\n/* -------------------------------------------------------------------------------------------------\n * ListPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListPage = () => {\n const [showModal, setShowModal] = React.useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = React.useState<string[]>([]);\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.webhooks);\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions);\n const { notifyStatus } = useNotifyAT();\n\n const {\n isLoading: isWebhooksLoading,\n webhooks,\n error: webhooksError,\n updateWebhook,\n deleteManyWebhooks,\n } = useWebhooks();\n\n React.useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const enableWebhook = async (body: UpdateWebhook.Request['body'] & UpdateWebhook.Params) => {\n try {\n const res = await updateWebhook(body);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n }\n };\n\n const deleteWebhook = async (id: string) => {\n try {\n const res = await deleteManyWebhooks({\n ids: [id],\n });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\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 const confirmBulkDelete = async () => {\n try {\n const res = await deleteManyWebhooks({\n ids: webhooksToDelete,\n });\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWebhooksToDelete([]);\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred',\n }),\n });\n } finally {\n setShowModal(false);\n }\n };\n\n const selectAllCheckbox = (selected: boolean) =>\n selected\n ? setWebhooksToDelete(webhooks?.map((webhook) => webhook.id) ?? [])\n : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected: boolean, id: string) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Webhooks',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isLoading}>\n <Layouts.Header\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton tag={NavLink} startIcon={<Plus />} variant=\"default\" to=\"create\" size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <Layouts.Action\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <Layouts.Content>\n {numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter\n onClick={() => {\n if (canCreate) {\n navigate('create');\n }\n }}\n icon={<Plus />}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <Checkbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n checked={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n ? 'indeterminate'\n : webhooksToDeleteLength === numberOfWebhooks\n }\n onCheckedChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks?.map((webhook) => (\n <Tr\n key={webhook.id}\n onClick={() => {\n if (canUpdate) {\n navigate(webhook.id);\n }\n }}\n style={{ cursor: canUpdate ? 'pointer' : 'default' }}\n >\n <Td onClick={(e) => e.stopPropagation()}>\n <Checkbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n checked={webhooksToDelete?.includes(webhook.id)}\n onCheckedChange={(selected) => selectOneCheckbox(!!selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n aria-label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n checked={webhook.isEnabled}\n onCheckedChange={(enabled) => {\n enableWebhook({\n ...webhook,\n isEnabled: enabled,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n borderWidth={0}\n >\n <Pencil />\n </IconButton>\n )}\n {canDelete && (\n <DeleteActionButton\n onDelete={() => {\n deleteWebhook(webhook.id);\n }}\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n canCreate ? (\n <LinkButton variant=\"secondary\" startIcon={<Plus />} tag={NavLink} to=\"create\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n ) : null\n }\n />\n )}\n </Layouts.Content>\n </Page.Main>\n <Dialog.Root open={showModal} onOpenChange={setShowModal}>\n <ConfirmDialog onConfirm={confirmBulkDelete} />\n </Dialog.Root>\n </Layouts.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DeleteActionButton\n * -----------------------------------------------------------------------------------------------*/\n\ntype DeleteActionButtonProps = {\n onDelete: () => void;\n};\n\nconst DeleteActionButton = ({ onDelete }: DeleteActionButtonProps) => {\n const [showModal, setShowModal] = React.useState(false);\n const { formatMessage } = useIntl();\n\n return (\n <>\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n borderWidth={0}\n >\n <Trash />\n </IconButton>\n\n <Dialog.Root open={showModal} onOpenChange={setShowModal}>\n <ConfirmDialog\n onConfirm={(e) => {\n e?.stopPropagation();\n onDelete();\n }}\n />\n </Dialog.Root>\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.webhooks.main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListPage />\n </Page.Protect>\n );\n};\n\nexport { ListPage, ProtectedListPage };\n"],"names":[],"mappings":"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"}
|