@strapi/admin 5.5.2 → 5.7.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/{AdminSeatInfo-CfbjPdSS.mjs → AdminSeatInfo-Bpyschk4.mjs} +3 -3
- package/dist/admin/{AdminSeatInfo-CfbjPdSS.mjs.map → AdminSeatInfo-Bpyschk4.mjs.map} +1 -1
- package/dist/admin/{ApplicationInfoPage-Br2aUPw0.mjs → ApplicationInfoPage-BlX64-1T.mjs} +5 -5
- package/dist/admin/{ApplicationInfoPage-Br2aUPw0.mjs.map → ApplicationInfoPage-BlX64-1T.mjs.map} +1 -1
- package/dist/admin/{ApplicationInfoPage-BnGGYL0F.js → ApplicationInfoPage-Cx9Z4tfk.js} +2 -2
- package/dist/admin/{ApplicationInfoPage-BnGGYL0F.js.map → ApplicationInfoPage-Cx9Z4tfk.js.map} +1 -1
- package/dist/admin/{AuthResponse-CWs8VL81.mjs → AuthResponse-BI0D7fJC.mjs} +2 -2
- package/dist/admin/{AuthResponse-CWs8VL81.mjs.map → AuthResponse-BI0D7fJC.mjs.map} +1 -1
- package/dist/admin/{AuthenticatedLayout-BJU39shu.mjs → AuthenticatedLayout-Br8Ujef5.mjs} +11 -11
- package/dist/admin/{AuthenticatedLayout-BJU39shu.mjs.map → AuthenticatedLayout-Br8Ujef5.mjs.map} +1 -1
- package/dist/admin/{AuthenticatedLayout-BAEki0Lq.js → AuthenticatedLayout-CCwt0AgG.js} +9 -9
- package/dist/admin/{AuthenticatedLayout-BAEki0Lq.js.map → AuthenticatedLayout-CCwt0AgG.js.map} +1 -1
- package/dist/admin/{CreatePage-DOqA_BzK.mjs → CreatePage-CaMDsF7E.mjs} +3 -3
- package/dist/admin/{CreatePage-DOqA_BzK.mjs.map → CreatePage-CaMDsF7E.mjs.map} +1 -1
- package/dist/admin/{CreatePage-XayJSP6L.js → CreatePage-DtK2k2xj.js} +2 -2
- package/dist/admin/{CreatePage-XayJSP6L.js.map → CreatePage-DtK2k2xj.js.map} +1 -1
- package/dist/admin/{CreatePage-C7F5W4hT.js → CreatePage-Je194jpQ.js} +2 -2
- package/dist/admin/{CreatePage-C7F5W4hT.js.map → CreatePage-Je194jpQ.js.map} +1 -1
- package/dist/admin/{CreatePage-jnPXnNnq.mjs → CreatePage-cPI93IzV.mjs} +4 -4
- package/dist/admin/{CreatePage-jnPXnNnq.mjs.map → CreatePage-cPI93IzV.mjs.map} +1 -1
- package/dist/admin/{CreateView-CgQC_6cj.js → CreateView-CKHDAAe9.js} +2 -2
- package/dist/admin/{CreateView-CgQC_6cj.js.map → CreateView-CKHDAAe9.js.map} +1 -1
- package/dist/admin/{CreateView-Bu6ccXB2.js → CreateView-CV1T_FkK.js} +2 -2
- package/dist/admin/{CreateView-Bu6ccXB2.js.map → CreateView-CV1T_FkK.js.map} +1 -1
- package/dist/admin/{CreateView-wif5_cYe.mjs → CreateView-CYhJZ4SU.mjs} +3 -3
- package/dist/admin/{CreateView-wif5_cYe.mjs.map → CreateView-CYhJZ4SU.mjs.map} +1 -1
- package/dist/admin/{CreateView-BiuRhpJD.mjs → CreateView-CYk_dMMs.mjs} +3 -3
- package/dist/admin/{CreateView-BiuRhpJD.mjs.map → CreateView-CYk_dMMs.mjs.map} +1 -1
- package/dist/admin/{EditPage-BzCbACoy.mjs → EditPage-CZPAEYlB.mjs} +5 -5
- package/dist/admin/{EditPage-BzCbACoy.mjs.map → EditPage-CZPAEYlB.mjs.map} +1 -1
- package/dist/admin/{EditPage-1oJuB0Lg.js → EditPage-DPnF8khi.js} +3 -3
- package/dist/admin/{EditPage-1oJuB0Lg.js.map → EditPage-DPnF8khi.js.map} +1 -1
- package/dist/admin/{EditPage-BN85cZA1.mjs → EditPage-DTaqqKhx.mjs} +7 -7
- package/dist/admin/{EditPage-BN85cZA1.mjs.map → EditPage-DTaqqKhx.mjs.map} +1 -1
- package/dist/admin/{EditPage-BAGlyDIb.js → EditPage-e1MbaksH.js} +3 -3
- package/dist/admin/{EditPage-BAGlyDIb.js.map → EditPage-e1MbaksH.js.map} +1 -1
- package/dist/admin/{EditPage-CkLE0e4n.js → EditPage-f8LeUPW3.js} +5 -5
- package/dist/admin/{EditPage-CkLE0e4n.js.map → EditPage-f8LeUPW3.js.map} +1 -1
- package/dist/admin/{EditPage-CNJSkExi.mjs → EditPage-qRfveoLn.mjs} +5 -5
- package/dist/admin/{EditPage-CNJSkExi.mjs.map → EditPage-qRfveoLn.mjs.map} +1 -1
- package/dist/admin/{EditView-CwfC4Kyq.mjs → EditView-Df6PVPAd.mjs} +4 -4
- package/dist/admin/{EditView-CwfC4Kyq.mjs.map → EditView-Df6PVPAd.mjs.map} +1 -1
- package/dist/admin/{EditView-jM9DrszP.js → EditView-IrrSxD_e.js} +3 -3
- package/dist/admin/{EditView-jM9DrszP.js.map → EditView-IrrSxD_e.js.map} +1 -1
- package/dist/admin/{EditViewPage-C4XvyJjA.mjs → EditViewPage-BKnY-1Sj.mjs} +4 -4
- package/dist/admin/{EditViewPage-C4XvyJjA.mjs.map → EditViewPage-BKnY-1Sj.mjs.map} +1 -1
- package/dist/admin/{EditViewPage-DBwII2Z1.js → EditViewPage-BNzM51al.js} +3 -3
- package/dist/admin/{EditViewPage-DBwII2Z1.js.map → EditViewPage-BNzM51al.js.map} +1 -1
- package/dist/admin/{EventsTable-nmBcr8O2.mjs → EventsTable-DUz7EZyi.mjs} +2 -2
- package/dist/admin/{EventsTable-nmBcr8O2.mjs.map → EventsTable-DUz7EZyi.mjs.map} +1 -1
- package/dist/admin/{EventsTable-BhvNeNbz.js → EventsTable-fqzWSspG.js} +2 -2
- package/dist/admin/{EventsTable-BhvNeNbz.js.map → EventsTable-fqzWSspG.js.map} +1 -1
- package/dist/admin/HomePage-BcZ8G5Zk.js +375 -0
- package/dist/admin/HomePage-BcZ8G5Zk.js.map +1 -0
- package/dist/admin/{HomePage-CcfzjKvs.js → HomePage-DAKopsM1.js} +2 -2
- package/dist/admin/HomePage-DAKopsM1.js.map +1 -0
- package/dist/admin/{HomePage-u_7g2ehv.mjs → HomePage-HuAhOTRQ.mjs} +3 -3
- package/dist/admin/HomePage-HuAhOTRQ.mjs.map +1 -0
- package/dist/admin/HomePage-NPjXohKj.mjs +350 -0
- package/dist/admin/HomePage-NPjXohKj.mjs.map +1 -0
- package/dist/admin/{InstalledPlugins-BgEOmGBX.mjs → InstalledPlugins-BDBDHjp1.mjs} +3 -3
- package/dist/admin/{InstalledPlugins-BgEOmGBX.mjs.map → InstalledPlugins-BDBDHjp1.mjs.map} +1 -1
- package/dist/admin/{InstalledPlugins-svKeZGyA.js → InstalledPlugins-OsZRe2Mj.js} +2 -2
- package/dist/admin/{InstalledPlugins-svKeZGyA.js.map → InstalledPlugins-OsZRe2Mj.js.map} +1 -1
- package/dist/admin/{Layout-DmGwmGNh.js → Layout-BmPlcHQy.js} +3 -3
- package/dist/admin/{Layout-DmGwmGNh.js.map → Layout-BmPlcHQy.js.map} +1 -1
- package/dist/admin/{Layout-B3ZQJM5Z.mjs → Layout-ZnQ6qK04.mjs} +5 -5
- package/dist/admin/{Layout-B3ZQJM5Z.mjs.map → Layout-ZnQ6qK04.mjs.map} +1 -1
- package/dist/admin/{ListPage-36QpdmV1.js → ListPage-6TiKw8tv.js} +2 -2
- package/dist/admin/{ListPage-36QpdmV1.js.map → ListPage-6TiKw8tv.js.map} +1 -1
- package/dist/admin/{ListPage-BkzM6Uvl.js → ListPage-BVk9Y9nA.js} +2 -2
- package/dist/admin/{ListPage-BkzM6Uvl.js.map → ListPage-BVk9Y9nA.js.map} +1 -1
- package/dist/admin/{ListPage-DmmS9EoG.mjs → ListPage-B_XyFDAF.mjs} +5 -5
- package/dist/admin/{ListPage-DmmS9EoG.mjs.map → ListPage-B_XyFDAF.mjs.map} +1 -1
- package/dist/admin/{ListPage-GzmLDWNE.js → ListPage-BoJnuSeZ.js} +2 -2
- package/dist/admin/{ListPage-GzmLDWNE.js.map → ListPage-BoJnuSeZ.js.map} +1 -1
- package/dist/admin/{ListPage-CeZG3tWl.mjs → ListPage-Bu63qBzy.mjs} +3 -3
- package/dist/admin/{ListPage-CeZG3tWl.mjs.map → ListPage-Bu63qBzy.mjs.map} +1 -1
- package/dist/admin/{ListPage-Diz-6e6P.mjs → ListPage-C0iLSqYo.mjs} +3 -3
- package/dist/admin/{ListPage-Diz-6e6P.mjs.map → ListPage-C0iLSqYo.mjs.map} +1 -1
- package/dist/admin/{ListPage-B_bBu40k.js → ListPage-CtOOlqCn.js} +5 -5
- package/dist/admin/{ListPage-B_bBu40k.js.map → ListPage-CtOOlqCn.js.map} +1 -1
- package/dist/admin/{ListPage-4VI90pe4.mjs → ListPage-Da_2kaB7.mjs} +6 -6
- package/dist/admin/{ListPage-4VI90pe4.mjs.map → ListPage-Da_2kaB7.mjs.map} +1 -1
- package/dist/admin/{ListPage-DC6ePb2s.mjs → ListPage-YvkZI4Dz.mjs} +3 -3
- package/dist/admin/{ListPage-DC6ePb2s.mjs.map → ListPage-YvkZI4Dz.mjs.map} +1 -1
- package/dist/admin/{ListPage-Bku8n3kg.js → ListPage-xSonCT19.js} +3 -3
- package/dist/admin/{ListPage-Bku8n3kg.js.map → ListPage-xSonCT19.js.map} +1 -1
- package/dist/admin/{ListView-DBeqVkIs.mjs → ListView-CMiSzy7H.mjs} +4 -4
- package/dist/admin/{ListView-DBeqVkIs.mjs.map → ListView-CMiSzy7H.mjs.map} +1 -1
- package/dist/admin/{ListView-DYl24QDA.js → ListView-CeE2Qlyi.js} +3 -3
- package/dist/admin/{ListView-DYl24QDA.js.map → ListView-CeE2Qlyi.js.map} +1 -1
- package/dist/admin/{ListView-iLU-wzu0.js → ListView-Cr_P57s2.js} +3 -3
- package/dist/admin/{ListView-iLU-wzu0.js.map → ListView-Cr_P57s2.js.map} +1 -1
- package/dist/admin/{ListView-BUJkkfUH.mjs → ListView-DhZFpqcJ.mjs} +4 -4
- package/dist/admin/{ListView-BUJkkfUH.mjs.map → ListView-DhZFpqcJ.mjs.map} +1 -1
- package/dist/admin/{Login-BJEtLuhd.js → Login-B-e6bger.js} +2 -2
- package/dist/admin/{Login-BJEtLuhd.js.map → Login-B-e6bger.js.map} +1 -1
- package/dist/admin/{Login-C7l45L76.mjs → Login-CKEdHx7A.mjs} +3 -3
- package/dist/admin/{Login-C7l45L76.mjs.map → Login-CKEdHx7A.mjs.map} +1 -1
- package/dist/admin/{MagicLinkEE-CJh9wFOI.mjs → MagicLinkEE-DCazf_P2.mjs} +3 -3
- package/dist/admin/{MagicLinkEE-CJh9wFOI.mjs.map → MagicLinkEE-DCazf_P2.mjs.map} +1 -1
- package/dist/admin/{MagicLinkEE-BN6UlBxF.js → MagicLinkEE-DYCH6Jl2.js} +3 -3
- package/dist/admin/{MagicLinkEE-BN6UlBxF.js.map → MagicLinkEE-DYCH6Jl2.js.map} +1 -1
- package/dist/admin/{MarketplacePage-Cjj0kzPx.mjs → MarketplacePage-CTbE4SlU.mjs} +3 -3
- package/dist/admin/{MarketplacePage-Cjj0kzPx.mjs.map → MarketplacePage-CTbE4SlU.mjs.map} +1 -1
- package/dist/admin/{MarketplacePage-D1iVBCOI.js → MarketplacePage-DeH9a207.js} +2 -2
- package/dist/admin/{MarketplacePage-D1iVBCOI.js.map → MarketplacePage-DeH9a207.js.map} +1 -1
- package/dist/admin/{Permissions-CqkJcZdu.mjs → Permissions-gB8QZDch.mjs} +2 -2
- package/dist/admin/{Permissions-CqkJcZdu.mjs.map → Permissions-gB8QZDch.mjs.map} +1 -1
- package/dist/admin/{PrivateRoute-CzKixo0E.mjs → PrivateRoute-DIxYvSni.mjs} +2 -2
- package/dist/admin/{PrivateRoute-CzKixo0E.mjs.map → PrivateRoute-DIxYvSni.mjs.map} +1 -1
- package/dist/admin/{ProfilePage-Rr-rm8pV.mjs → ProfilePage-Bcb_ayAW.mjs} +4 -4
- package/dist/admin/{ProfilePage-Rr-rm8pV.mjs.map → ProfilePage-Bcb_ayAW.mjs.map} +1 -1
- package/dist/admin/{ProfilePage-w34iMGur.js → ProfilePage-CD0uiMaE.js} +3 -3
- package/dist/admin/{ProfilePage-w34iMGur.js.map → ProfilePage-CD0uiMaE.js.map} +1 -1
- package/dist/admin/{PurchaseAuditLogs-B_hQDE4Q.js → PurchaseAuditLogs-CHKqdqrY.js} +2 -2
- package/dist/admin/{PurchaseAuditLogs-B_hQDE4Q.js.map → PurchaseAuditLogs-CHKqdqrY.js.map} +1 -1
- package/dist/admin/{PurchaseAuditLogs-Dw4L-QFy.mjs → PurchaseAuditLogs-D9V7WucM.mjs} +2 -2
- package/dist/admin/{PurchaseAuditLogs-Dw4L-QFy.mjs.map → PurchaseAuditLogs-D9V7WucM.mjs.map} +1 -1
- package/dist/admin/{PurchaseContentHistory-DC3bIvQp.mjs → PurchaseContentHistory-CtiF0HJP.mjs} +2 -2
- package/dist/admin/{PurchaseContentHistory-DC3bIvQp.mjs.map → PurchaseContentHistory-CtiF0HJP.mjs.map} +1 -1
- package/dist/admin/{PurchaseContentHistory-cmmA1PTq.js → PurchaseContentHistory-eOg1pQvg.js} +2 -2
- package/dist/admin/{PurchaseContentHistory-cmmA1PTq.js.map → PurchaseContentHistory-eOg1pQvg.js.map} +1 -1
- package/dist/admin/{PurchaseSingleSignOn-u1Dn-vWC.js → PurchaseSingleSignOn-C4Mthjnp.js} +2 -2
- package/dist/admin/{PurchaseSingleSignOn-u1Dn-vWC.js.map → PurchaseSingleSignOn-C4Mthjnp.js.map} +1 -1
- package/dist/admin/{PurchaseSingleSignOn-CLL-FqfU.mjs → PurchaseSingleSignOn-Dfg-RTXq.mjs} +2 -2
- package/dist/admin/{PurchaseSingleSignOn-CLL-FqfU.mjs.map → PurchaseSingleSignOn-Dfg-RTXq.mjs.map} +1 -1
- package/dist/admin/RelativeTime-BGJ1PWx_.mjs +38 -0
- package/dist/admin/RelativeTime-BGJ1PWx_.mjs.map +1 -0
- package/dist/admin/RelativeTime-DPLD3wf-.js +60 -0
- package/dist/admin/RelativeTime-DPLD3wf-.js.map +1 -0
- package/dist/admin/{SelectRoles-CJxgL7wv.mjs → SelectRoles-D1xPS-qt.mjs} +4 -4
- package/dist/admin/{SelectRoles-CJxgL7wv.mjs.map → SelectRoles-D1xPS-qt.mjs.map} +1 -1
- package/dist/admin/{SelectRoles-PpNFFjHG.js → SelectRoles-DIyUH00-.js} +3 -3
- package/dist/admin/{SelectRoles-PpNFFjHG.js.map → SelectRoles-DIyUH00-.js.map} +1 -1
- package/dist/admin/{SingleSignOnPage-BalYHb9C.mjs → SingleSignOnPage-BC2aTKy7.mjs} +4 -4
- package/dist/admin/{SingleSignOnPage-BalYHb9C.mjs.map → SingleSignOnPage-BC2aTKy7.mjs.map} +1 -1
- package/dist/admin/{SingleSignOnPage-Da_Jyfd7.js → SingleSignOnPage-BNuYGkeX.js} +3 -3
- package/dist/admin/{SingleSignOnPage-Da_Jyfd7.js.map → SingleSignOnPage-BNuYGkeX.js.map} +1 -1
- package/dist/admin/{Table-CI3evx38.js → Table-7pe1j4im.js} +5 -57
- package/dist/admin/Table-7pe1j4im.js.map +1 -0
- package/dist/admin/{Table-Cy-GLzPL.mjs → Table-DQnLoM7I.mjs} +4 -36
- package/dist/admin/Table-DQnLoM7I.mjs.map +1 -0
- package/dist/admin/{Theme-5Y8Pi0Wm.mjs → Theme-CTMU9Z8I.mjs} +2 -2
- package/dist/admin/{Theme-5Y8Pi0Wm.mjs.map → Theme-CTMU9Z8I.mjs.map} +1 -1
- package/dist/admin/Theme-DWGZX5tv.js.map +1 -1
- package/dist/admin/{TokenTypeSelect-BVenRIH1.mjs → TokenTypeSelect-CTdltdS8.mjs} +3 -3
- package/dist/admin/{TokenTypeSelect-BVenRIH1.mjs.map → TokenTypeSelect-CTdltdS8.mjs.map} +1 -1
- package/dist/admin/{TokenTypeSelect-Dp4j35gM.js → TokenTypeSelect-ZzXED7rf.js} +2 -2
- package/dist/admin/{TokenTypeSelect-Dp4j35gM.js.map → TokenTypeSelect-ZzXED7rf.js.map} +1 -1
- package/dist/admin/{UseCasePage-BBSvDqnp.mjs → UseCasePage-BqAoX3j-.mjs} +4 -4
- package/dist/admin/{UseCasePage-BBSvDqnp.mjs.map → UseCasePage-BqAoX3j-.mjs.map} +1 -1
- package/dist/admin/{UseCasePage-L72HnaAQ.js → UseCasePage-iNVoVcCb.js} +2 -2
- package/dist/admin/{UseCasePage-L72HnaAQ.js.map → UseCasePage-iNVoVcCb.js.map} +1 -1
- package/dist/admin/{constants-DgAIQgtX.js → constants-BtdWKFzN.js} +2 -2
- package/dist/admin/{constants-DgAIQgtX.js.map → constants-BtdWKFzN.js.map} +1 -1
- package/dist/admin/{constants-CL6NsCNz.mjs → constants-TZNepYft.mjs} +3 -3
- package/dist/admin/{constants-CL6NsCNz.mjs.map → constants-TZNepYft.mjs.map} +1 -1
- package/dist/admin/{en-CJdNdwAe.js → en-BR2e5qX-.js} +7 -16
- package/dist/admin/{en-CJdNdwAe.js.map → en-BR2e5qX-.js.map} +1 -1
- package/dist/admin/{en-DOZzjg_v.mjs → en-CSPHZKTw.mjs} +7 -16
- package/dist/admin/{en-DOZzjg_v.mjs.map → en-CSPHZKTw.mjs.map} +1 -1
- package/dist/admin/{en-GB-BjOvFjLX.js → en-GB-Bke-WrFJ.js} +2 -2
- package/dist/admin/en-GB-Bke-WrFJ.js.map +1 -0
- package/dist/admin/en-GB-Gv8lAy1p.mjs +6 -0
- package/dist/admin/en-GB-Gv8lAy1p.mjs.map +1 -0
- package/dist/admin/{index-CV0X429t.mjs → index-CMdgTmC0.mjs} +61 -47
- package/dist/admin/index-CMdgTmC0.mjs.map +1 -0
- package/dist/admin/{index-DIfoFau6.js → index-DxMAHgtc.js} +59 -45
- package/dist/admin/index-DxMAHgtc.js.map +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +2 -2
- package/dist/admin/{selectors-BUDjU_0m.mjs → selectors-BZApelK9.mjs} +2 -2
- package/dist/admin/{selectors-BUDjU_0m.mjs.map → selectors-BZApelK9.mjs.map} +1 -1
- package/dist/admin/src/components/FormInputs/Date.d.ts +2 -1
- package/dist/admin/src/features/Tracking.d.ts +1 -1
- package/dist/admin/src/pages/Home/components/ContentManagerWidgets.d.ts +3 -0
- package/dist/admin/src/pages/Home/components/GuidedTour.d.ts +1 -0
- package/dist/admin/src/pages/Home/components/Widget.d.ts +23 -0
- package/dist/admin/src/services/homepage.d.ts +5 -0
- package/dist/admin/test.mjs +1 -1
- package/dist/admin/{useAdminRoles-Da1h27pK.mjs → useAdminRoles-BVwapBge.mjs} +2 -2
- package/dist/admin/{useAdminRoles-Da1h27pK.mjs.map → useAdminRoles-BVwapBge.mjs.map} +1 -1
- package/dist/admin/{useAdminRoles-CCllA7O2.js → useAdminRoles-DVnFvP_o.js} +2 -2
- package/dist/admin/{useAdminRoles-CCllA7O2.js.map → useAdminRoles-DVnFvP_o.js.map} +1 -1
- package/dist/admin/{useLicenseLimitNotification-DQKWFvvl.mjs → useLicenseLimitNotification-CAQIrlP4.mjs} +2 -2
- package/dist/admin/{useLicenseLimitNotification-DQKWFvvl.mjs.map → useLicenseLimitNotification-CAQIrlP4.mjs.map} +1 -1
- package/dist/admin/{validation-CWoP-BdZ.js → validation-CV2jBW7t.js} +2 -2
- package/dist/admin/{validation-CWoP-BdZ.js.map → validation-CV2jBW7t.js.map} +1 -1
- package/dist/admin/{validation-Dm_fjTrd.mjs → validation-D36pWUQH.mjs} +2 -2
- package/dist/admin/{validation-Dm_fjTrd.mjs.map → validation-D36pWUQH.mjs.map} +1 -1
- package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
- package/dist/ee/server/src/services/persist-tables.d.ts +1 -1
- package/dist/ee/server/src/services/persist-tables.d.ts.map +1 -1
- package/dist/package.json.d.ts +7 -7
- package/dist/server/index.js +184 -6
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +313 -136
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/homepage.d.ts +8 -0
- package/dist/server/src/controllers/homepage.d.ts.map +1 -0
- package/dist/server/src/controllers/index.d.ts +3 -0
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +9 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/routes/homepage.d.ts +14 -0
- package/dist/server/src/routes/homepage.d.ts.map +1 -0
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/services/homepage.d.ts +11 -0
- package/dist/server/src/services/homepage.d.ts.map +1 -0
- package/dist/server/src/services/index.d.ts +6 -0
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/shared/contracts/admin.d.ts +2 -1
- package/dist/shared/contracts/api-token.d.ts +2 -1
- package/dist/shared/contracts/authentication.d.ts +3 -2
- package/dist/shared/contracts/content-api.d.ts +3 -2
- package/dist/shared/contracts/homepage.d.ts +26 -0
- package/dist/shared/contracts/homepage.d.ts.map +1 -0
- package/dist/shared/contracts/permissions.d.ts +2 -1
- package/dist/shared/contracts/roles.d.ts +3 -2
- package/dist/shared/contracts/shared.d.ts +2 -1
- package/dist/shared/contracts/transfer.d.ts +1 -0
- package/dist/shared/contracts/user.d.ts +3 -2
- package/dist/shared/contracts/users.d.ts +3 -2
- package/dist/shared/contracts/webhooks.d.ts +2 -1
- package/package.json +9 -8
- package/dist/admin/HomePage-BjDpVjNN.mjs +0 -576
- package/dist/admin/HomePage-BjDpVjNN.mjs.map +0 -1
- package/dist/admin/HomePage-CcfzjKvs.js.map +0 -1
- package/dist/admin/HomePage-Cwwd04uv.js +0 -601
- package/dist/admin/HomePage-Cwwd04uv.js.map +0 -1
- package/dist/admin/HomePage-u_7g2ehv.mjs.map +0 -1
- package/dist/admin/Table-CI3evx38.js.map +0 -1
- package/dist/admin/Table-Cy-GLzPL.mjs.map +0 -1
- package/dist/admin/en-GB-BjOvFjLX.js.map +0 -1
- package/dist/admin/en-GB-Ceyy7cF8.mjs +0 -6
- package/dist/admin/en-GB-Ceyy7cF8.mjs.map +0 -1
- package/dist/admin/index-CV0X429t.mjs.map +0 -1
- package/dist/admin/index-DIfoFau6.js.map +0 -1
- /package/dist/admin/src/pages/{HomePage.d.ts → Home/HomePage.d.ts} +0 -0
package/dist/server/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _ from "lodash";
|
|
2
2
|
import ___default, { pick as pick$1 } from "lodash";
|
|
3
3
|
import { merge, map, uniq, difference, isNil, castArray, pick, curry, pipe, prop, includes, isArray, set, omit, isEmpty, has, defaults, remove, eq, get, differenceWith, differenceBy, isEqual, toLower, isFunction, some, flatMap, isObject, cloneDeep, getOr, intersection, isPlainObject, matchesProperty, propEq, xor, startsWith, isString, isNumber, values, sumBy, trim, isUndefined, mapKeys, toString, toNumber, assign, reverse, take, drop, mapValues } from "lodash/fp";
|
|
4
|
-
import utils$2, { async, errors, yup, validateYupSchema, policy, arrays, hooks as hooks$1, dates, validateYupSchemaSync, providerFactory, sanitize, contentTypes as contentTypes$1, traverse, traverseEntity, validate, env, validateZod, strings } from "@strapi/utils";
|
|
4
|
+
import utils$2, { async, errors, yup as yup$1, validateYupSchema, policy, arrays, hooks as hooks$1, dates, validateYupSchemaSync, providerFactory, sanitize, contentTypes as contentTypes$1, traverse, traverseEntity, validate, env, validateZod, strings } from "@strapi/utils";
|
|
5
5
|
import path, { resolve, basename, join, extname } from "path";
|
|
6
6
|
import fse, { exists as exists$4 } from "fs-extra";
|
|
7
7
|
import koaStatic from "koa-static";
|
|
@@ -24,6 +24,7 @@ import compose from "koa-compose";
|
|
|
24
24
|
import { strapi as strapi$1 } from "@strapi/data-transfer";
|
|
25
25
|
import isLocalhostIp from "is-localhost-ip";
|
|
26
26
|
import punycode from "punycode/";
|
|
27
|
+
import * as yup from "yup";
|
|
27
28
|
import { scheduleJob } from "node-schedule";
|
|
28
29
|
const getService$1 = (name2) => {
|
|
29
30
|
return strapi.service(`admin::${name2}`);
|
|
@@ -596,19 +597,19 @@ const config = {
|
|
|
596
597
|
const isAuthenticatedAdmin = (policyCtx) => {
|
|
597
598
|
return Boolean(policyCtx.state.isAuthenticated);
|
|
598
599
|
};
|
|
599
|
-
const hasPermissionsSchema = yup.object({
|
|
600
|
-
actions: yup.array().of(
|
|
600
|
+
const hasPermissionsSchema = yup$1.object({
|
|
601
|
+
actions: yup$1.array().of(
|
|
601
602
|
// @ts-expect-error yup types
|
|
602
|
-
yup.lazy((val) => {
|
|
603
|
+
yup$1.lazy((val) => {
|
|
603
604
|
if (___default.isArray(val)) {
|
|
604
|
-
return yup.array().of(yup.string()).min(1).max(2);
|
|
605
|
+
return yup$1.array().of(yup$1.string()).min(1).max(2);
|
|
605
606
|
}
|
|
606
607
|
if (___default.isString(val)) {
|
|
607
|
-
return yup.string().required();
|
|
608
|
+
return yup$1.string().required();
|
|
608
609
|
}
|
|
609
|
-
return yup.object().shape({
|
|
610
|
-
action: yup.string().required(),
|
|
611
|
-
subject: yup.string()
|
|
610
|
+
return yup$1.object().shape({
|
|
611
|
+
action: yup$1.string().required(),
|
|
612
|
+
subject: yup$1.string()
|
|
612
613
|
});
|
|
613
614
|
})
|
|
614
615
|
)
|
|
@@ -1318,6 +1319,18 @@ const transfer$2 = [
|
|
|
1318
1319
|
}
|
|
1319
1320
|
}
|
|
1320
1321
|
];
|
|
1322
|
+
const info = { pluginName: "admin", type: "admin" };
|
|
1323
|
+
const homepage = [
|
|
1324
|
+
{
|
|
1325
|
+
method: "GET",
|
|
1326
|
+
info,
|
|
1327
|
+
path: "/homepage/recent-documents",
|
|
1328
|
+
handler: "homepage.getRecentDocuments",
|
|
1329
|
+
config: {
|
|
1330
|
+
policies: ["admin::isAuthenticatedAdmin"]
|
|
1331
|
+
}
|
|
1332
|
+
}
|
|
1333
|
+
];
|
|
1321
1334
|
const routes$1 = {
|
|
1322
1335
|
admin: {
|
|
1323
1336
|
type: "admin",
|
|
@@ -1330,7 +1343,8 @@ const routes$1 = {
|
|
|
1330
1343
|
...webhooks$1,
|
|
1331
1344
|
...apiTokens,
|
|
1332
1345
|
...contentApi$1,
|
|
1333
|
-
...transfer$2
|
|
1346
|
+
...transfer$2,
|
|
1347
|
+
...homepage
|
|
1334
1348
|
]
|
|
1335
1349
|
}
|
|
1336
1350
|
};
|
|
@@ -1488,16 +1502,16 @@ const checkFieldsDontHaveDuplicates = (fields) => {
|
|
|
1488
1502
|
const getActionFromProvider = (actionId) => {
|
|
1489
1503
|
return getService$1("permission").actionProvider.get(actionId);
|
|
1490
1504
|
};
|
|
1491
|
-
const email = yup.string().email().lowercase();
|
|
1492
|
-
const firstname = yup.string().trim().min(1);
|
|
1493
|
-
const lastname = yup.string();
|
|
1494
|
-
const username = yup.string().min(1);
|
|
1495
|
-
const password = yup.string().min(8).matches(/[a-z]/, "${path} must contain at least one lowercase character").matches(/[A-Z]/, "${path} must contain at least one uppercase character").matches(/\d/, "${path} must contain at least one number");
|
|
1496
|
-
const roles = yup.array(yup.strapiID()).min(1);
|
|
1497
|
-
const isAPluginName = yup.string().test("is-a-plugin-name", "is not a plugin name", function(value) {
|
|
1505
|
+
const email = yup$1.string().email().lowercase();
|
|
1506
|
+
const firstname = yup$1.string().trim().min(1);
|
|
1507
|
+
const lastname = yup$1.string();
|
|
1508
|
+
const username = yup$1.string().min(1);
|
|
1509
|
+
const password = yup$1.string().min(8).matches(/[a-z]/, "${path} must contain at least one lowercase character").matches(/[A-Z]/, "${path} must contain at least one uppercase character").matches(/\d/, "${path} must contain at least one number");
|
|
1510
|
+
const roles = yup$1.array(yup$1.strapiID()).min(1);
|
|
1511
|
+
const isAPluginName = yup$1.string().test("is-a-plugin-name", "is not a plugin name", function(value) {
|
|
1498
1512
|
return [void 0, "admin", ...Object.keys(strapi.plugins)].includes(value) ? true : this.createError({ path: this.path, message: `${this.path} is not an existing plugin` });
|
|
1499
1513
|
});
|
|
1500
|
-
const arrayOfConditionNames = yup.array().of(yup.string()).test("is-an-array-of-conditions", "is not a plugin name", function(value) {
|
|
1514
|
+
const arrayOfConditionNames = yup$1.array().of(yup$1.string()).test("is-an-array-of-conditions", "is not a plugin name", function(value) {
|
|
1501
1515
|
const ids = strapi.service("admin::permission").conditionProvider.keys();
|
|
1502
1516
|
return ___default.isUndefined(value) || ___default.difference(value, ids).length === 0 ? true : this.createError({ path: this.path, message: `contains conditions that don't exist` });
|
|
1503
1517
|
});
|
|
@@ -1511,7 +1525,7 @@ const checkNilFields = (action2) => function(fields) {
|
|
|
1511
1525
|
}
|
|
1512
1526
|
return actionDomain.appliesToProperty("fields", action2) || isNil(fields);
|
|
1513
1527
|
};
|
|
1514
|
-
const fieldsPropertyValidation = (action2) => yup.array().of(yup.string()).nullable().test(
|
|
1528
|
+
const fieldsPropertyValidation = (action2) => yup$1.array().of(yup$1.string()).nullable().test(
|
|
1515
1529
|
"field-nested",
|
|
1516
1530
|
"Fields format are incorrect (bad nesting).",
|
|
1517
1531
|
checkFieldsAreCorrectlyNested
|
|
@@ -1525,15 +1539,15 @@ const fieldsPropertyValidation = (action2) => yup.array().of(yup.string()).nulla
|
|
|
1525
1539
|
// @ts-expect-error yup types
|
|
1526
1540
|
checkNilFields(action2)
|
|
1527
1541
|
);
|
|
1528
|
-
const permission$3 = yup.object().shape({
|
|
1529
|
-
action: yup.string().required().test("action-validity", "action is not an existing permission action", function(actionId) {
|
|
1542
|
+
const permission$3 = yup$1.object().shape({
|
|
1543
|
+
action: yup$1.string().required().test("action-validity", "action is not an existing permission action", function(actionId) {
|
|
1530
1544
|
if (isNil(actionId)) {
|
|
1531
1545
|
return true;
|
|
1532
1546
|
}
|
|
1533
1547
|
return !!getActionFromProvider(actionId);
|
|
1534
1548
|
}),
|
|
1535
|
-
actionParameters: yup.object().nullable(),
|
|
1536
|
-
subject: yup.string().nullable().test("subject-validity", "Invalid subject submitted", function(subject2) {
|
|
1549
|
+
actionParameters: yup$1.object().nullable(),
|
|
1550
|
+
subject: yup$1.string().nullable().test("subject-validity", "Invalid subject submitted", function(subject2) {
|
|
1537
1551
|
const action2 = getActionFromProvider(this.options.parent.action);
|
|
1538
1552
|
if (!action2) {
|
|
1539
1553
|
return true;
|
|
@@ -1546,7 +1560,7 @@ const permission$3 = yup.object().shape({
|
|
|
1546
1560
|
}
|
|
1547
1561
|
return false;
|
|
1548
1562
|
}),
|
|
1549
|
-
properties: yup.object().test("properties-structure", "Invalid property set at ${path}", function(properties) {
|
|
1563
|
+
properties: yup$1.object().test("properties-structure", "Invalid property set at ${path}", function(properties) {
|
|
1550
1564
|
const action2 = getActionFromProvider(this.options.parent.action);
|
|
1551
1565
|
const hasNoProperties = isEmpty(properties) || isNil(properties);
|
|
1552
1566
|
if (!has("options.applyToProperties", action2)) {
|
|
@@ -1585,10 +1599,10 @@ const permission$3 = yup.object().shape({
|
|
|
1585
1599
|
}
|
|
1586
1600
|
}
|
|
1587
1601
|
),
|
|
1588
|
-
conditions: yup.array().of(yup.string())
|
|
1602
|
+
conditions: yup$1.array().of(yup$1.string())
|
|
1589
1603
|
}).noUnknown();
|
|
1590
|
-
const updatePermissions = yup.object().shape({
|
|
1591
|
-
permissions: yup.array().required().of(permission$3).test(
|
|
1604
|
+
const updatePermissions = yup$1.object().shape({
|
|
1605
|
+
permissions: yup$1.array().required().of(permission$3).test(
|
|
1592
1606
|
"duplicated-permissions",
|
|
1593
1607
|
"Some permissions are duplicated (same action and subject)",
|
|
1594
1608
|
checkNoDuplicatedPermissions
|
|
@@ -1899,12 +1913,12 @@ const permissionDomain = {
|
|
|
1899
1913
|
setProperty,
|
|
1900
1914
|
toPermission
|
|
1901
1915
|
};
|
|
1902
|
-
const checkPermissionsSchema = yup.object().shape({
|
|
1903
|
-
permissions: yup.array().of(
|
|
1904
|
-
yup.object().shape({
|
|
1905
|
-
action: yup.string().required(),
|
|
1906
|
-
subject: yup.string().nullable(),
|
|
1907
|
-
field: yup.string()
|
|
1916
|
+
const checkPermissionsSchema = yup$1.object().shape({
|
|
1917
|
+
permissions: yup$1.array().of(
|
|
1918
|
+
yup$1.object().shape({
|
|
1919
|
+
action: yup$1.string().required(),
|
|
1920
|
+
subject: yup$1.string().nullable(),
|
|
1921
|
+
field: yup$1.string()
|
|
1908
1922
|
}).noUnknown()
|
|
1909
1923
|
)
|
|
1910
1924
|
});
|
|
@@ -1923,9 +1937,9 @@ const checkPermissionsExist = function(permissions2) {
|
|
|
1923
1937
|
})
|
|
1924
1938
|
);
|
|
1925
1939
|
};
|
|
1926
|
-
const actionsExistSchema = yup.array().of(
|
|
1927
|
-
yup.object().shape({
|
|
1928
|
-
conditions: yup.array().of(yup.string())
|
|
1940
|
+
const actionsExistSchema = yup$1.array().of(
|
|
1941
|
+
yup$1.object().shape({
|
|
1942
|
+
conditions: yup$1.array().of(yup$1.string())
|
|
1929
1943
|
})
|
|
1930
1944
|
).test("actions-exist", "", checkPermissionsExist);
|
|
1931
1945
|
const validatePermissionsExist = validateYupSchema(actionsExistSchema);
|
|
@@ -2322,37 +2336,37 @@ const token$3 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
2322
2336
|
decodeJwtToken,
|
|
2323
2337
|
getTokenOptions
|
|
2324
2338
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
2325
|
-
const registerProviderActionSchema = yup.array().required().of(
|
|
2326
|
-
yup.object().shape({
|
|
2327
|
-
uid: yup.string().matches(
|
|
2339
|
+
const registerProviderActionSchema = yup$1.array().required().of(
|
|
2340
|
+
yup$1.object().shape({
|
|
2341
|
+
uid: yup$1.string().matches(
|
|
2328
2342
|
/^[a-z]([a-z|.|-]+)[a-z]$/,
|
|
2329
2343
|
(v) => `${v.path}: The id can only contain lowercase letters, dots and hyphens.`
|
|
2330
2344
|
).required(),
|
|
2331
|
-
section: yup.string().oneOf(["contentTypes", "plugins", "settings", "internal"]).required(),
|
|
2332
|
-
pluginName: yup.mixed().when("section", {
|
|
2345
|
+
section: yup$1.string().oneOf(["contentTypes", "plugins", "settings", "internal"]).required(),
|
|
2346
|
+
pluginName: yup$1.mixed().when("section", {
|
|
2333
2347
|
is: "plugins",
|
|
2334
2348
|
then: validators.isAPluginName.required(),
|
|
2335
2349
|
otherwise: validators.isAPluginName
|
|
2336
2350
|
}),
|
|
2337
|
-
subjects: yup.mixed().when("section", {
|
|
2351
|
+
subjects: yup$1.mixed().when("section", {
|
|
2338
2352
|
is: "contentTypes",
|
|
2339
|
-
then: yup.array().of(yup.string()).required(),
|
|
2340
|
-
otherwise: yup.mixed().oneOf([void 0], 'subjects should only be defined for the "contentTypes" section')
|
|
2353
|
+
then: yup$1.array().of(yup$1.string()).required(),
|
|
2354
|
+
otherwise: yup$1.mixed().oneOf([void 0], 'subjects should only be defined for the "contentTypes" section')
|
|
2341
2355
|
}),
|
|
2342
|
-
displayName: yup.string().required(),
|
|
2343
|
-
category: yup.mixed().when("section", {
|
|
2356
|
+
displayName: yup$1.string().required(),
|
|
2357
|
+
category: yup$1.mixed().when("section", {
|
|
2344
2358
|
is: "settings",
|
|
2345
|
-
then: yup.string().required(),
|
|
2346
|
-
otherwise: yup.mixed().test(
|
|
2359
|
+
then: yup$1.string().required(),
|
|
2360
|
+
otherwise: yup$1.mixed().test(
|
|
2347
2361
|
"settingsCategory",
|
|
2348
2362
|
'category should only be defined for the "settings" section',
|
|
2349
2363
|
(cat) => cat === void 0
|
|
2350
2364
|
)
|
|
2351
2365
|
}),
|
|
2352
|
-
subCategory: yup.mixed().when("section", {
|
|
2366
|
+
subCategory: yup$1.mixed().when("section", {
|
|
2353
2367
|
is: (section) => ["settings", "plugins"].includes(section),
|
|
2354
|
-
then: yup.string(),
|
|
2355
|
-
otherwise: yup.mixed().test(
|
|
2368
|
+
then: yup$1.string(),
|
|
2369
|
+
otherwise: yup$1.mixed().test(
|
|
2356
2370
|
"settingsSubCategory",
|
|
2357
2371
|
'subCategory should only be defined for "plugins" and "settings" sections',
|
|
2358
2372
|
(subCat) => {
|
|
@@ -2360,13 +2374,13 @@ const registerProviderActionSchema = yup.array().required().of(
|
|
|
2360
2374
|
}
|
|
2361
2375
|
)
|
|
2362
2376
|
}),
|
|
2363
|
-
options: yup.object({
|
|
2364
|
-
applyToProperties: yup.array().of(yup.string())
|
|
2377
|
+
options: yup$1.object({
|
|
2378
|
+
applyToProperties: yup$1.array().of(yup$1.string())
|
|
2365
2379
|
}),
|
|
2366
|
-
aliases: yup.array(
|
|
2367
|
-
yup.object({
|
|
2368
|
-
actionId: yup.string(),
|
|
2369
|
-
subjects: yup.array(yup.string()).nullable()
|
|
2380
|
+
aliases: yup$1.array(
|
|
2381
|
+
yup$1.object({
|
|
2382
|
+
actionId: yup$1.string(),
|
|
2383
|
+
subjects: yup$1.array(yup$1.string()).nullable()
|
|
2370
2384
|
})
|
|
2371
2385
|
).nullable()
|
|
2372
2386
|
}).noUnknown()
|
|
@@ -4086,6 +4100,144 @@ const projectSettings = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.def
|
|
|
4086
4100
|
parseFilesData,
|
|
4087
4101
|
updateProjectSettings: updateProjectSettings$1
|
|
4088
4102
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4103
|
+
const createHomepageService = ({ strapi: strapi2 }) => {
|
|
4104
|
+
const MAX_DOCUMENTS = 4;
|
|
4105
|
+
const metadataService = strapi2.plugin("content-manager").service("document-metadata");
|
|
4106
|
+
const permissionService = strapi2.admin.services.permission;
|
|
4107
|
+
const getConfiguration = async (contentTypeUids) => {
|
|
4108
|
+
const coreStore = strapi2.db.query("strapi::core-store");
|
|
4109
|
+
const rawConfigurations = await coreStore.findMany({
|
|
4110
|
+
where: {
|
|
4111
|
+
key: {
|
|
4112
|
+
$in: contentTypeUids.map(
|
|
4113
|
+
(contentType2) => `plugin_content_manager_configuration_content_types::${contentType2}`
|
|
4114
|
+
)
|
|
4115
|
+
}
|
|
4116
|
+
}
|
|
4117
|
+
});
|
|
4118
|
+
return rawConfigurations.map((rawConfiguration) => {
|
|
4119
|
+
return JSON.parse(rawConfiguration.value);
|
|
4120
|
+
});
|
|
4121
|
+
};
|
|
4122
|
+
const getPermittedContentTypes = async () => {
|
|
4123
|
+
const readPermissions = await permissionService.findMany({
|
|
4124
|
+
where: {
|
|
4125
|
+
role: { users: { id: strapi2.requestContext.get()?.state?.user.id } },
|
|
4126
|
+
action: "plugin::content-manager.explorer.read"
|
|
4127
|
+
}
|
|
4128
|
+
});
|
|
4129
|
+
return readPermissions.map((permission2) => permission2.subject).filter(Boolean);
|
|
4130
|
+
};
|
|
4131
|
+
const getDocumentsMetaData = (allowedContentTypeUids, configurations) => {
|
|
4132
|
+
return allowedContentTypeUids.map((uid) => {
|
|
4133
|
+
const configuration = configurations.find((config2) => config2.uid === uid);
|
|
4134
|
+
const contentType2 = strapi2.contentType(uid);
|
|
4135
|
+
const fields = ["documentId", "updatedAt"];
|
|
4136
|
+
const hasDraftAndPublish = contentTypes$1.hasDraftAndPublish(contentType2);
|
|
4137
|
+
if (hasDraftAndPublish) {
|
|
4138
|
+
fields.push("publishedAt");
|
|
4139
|
+
}
|
|
4140
|
+
if (configuration?.settings.mainField) {
|
|
4141
|
+
fields.push(configuration.settings.mainField);
|
|
4142
|
+
}
|
|
4143
|
+
const isLocalized = contentType2.pluginOptions?.i18n?.localized;
|
|
4144
|
+
if (isLocalized) {
|
|
4145
|
+
fields.push("locale");
|
|
4146
|
+
}
|
|
4147
|
+
return {
|
|
4148
|
+
fields,
|
|
4149
|
+
mainField: configuration.settings.mainField,
|
|
4150
|
+
contentType: contentType2,
|
|
4151
|
+
hasDraftAndPublish,
|
|
4152
|
+
uid
|
|
4153
|
+
};
|
|
4154
|
+
});
|
|
4155
|
+
};
|
|
4156
|
+
const formatDocuments = (documents, meta) => {
|
|
4157
|
+
return documents.map((document) => {
|
|
4158
|
+
return {
|
|
4159
|
+
documentId: document.documentId,
|
|
4160
|
+
locale: document.locale ?? null,
|
|
4161
|
+
updatedAt: new Date(document.updatedAt),
|
|
4162
|
+
title: document[meta.mainField ?? "documentId"],
|
|
4163
|
+
publishedAt: meta.hasDraftAndPublish && document.publishedAt ? new Date(document.publishedAt) : null,
|
|
4164
|
+
contentTypeUid: meta.uid,
|
|
4165
|
+
contentTypeDisplayName: meta.contentType.info.displayName,
|
|
4166
|
+
kind: meta.contentType.kind
|
|
4167
|
+
};
|
|
4168
|
+
});
|
|
4169
|
+
};
|
|
4170
|
+
const addStatusToDocuments = async (documents) => {
|
|
4171
|
+
return Promise.all(
|
|
4172
|
+
documents.map(async (recentDocument) => {
|
|
4173
|
+
const hasDraftAndPublish = contentTypes$1.hasDraftAndPublish(
|
|
4174
|
+
strapi2.contentType(recentDocument.contentTypeUid)
|
|
4175
|
+
);
|
|
4176
|
+
const { availableStatus } = await metadataService.getMetadata(
|
|
4177
|
+
recentDocument.contentTypeUid,
|
|
4178
|
+
recentDocument,
|
|
4179
|
+
{
|
|
4180
|
+
availableStatus: hasDraftAndPublish,
|
|
4181
|
+
availableLocales: false
|
|
4182
|
+
}
|
|
4183
|
+
);
|
|
4184
|
+
const status = metadataService.getStatus(
|
|
4185
|
+
recentDocument,
|
|
4186
|
+
availableStatus
|
|
4187
|
+
);
|
|
4188
|
+
return {
|
|
4189
|
+
...recentDocument,
|
|
4190
|
+
status: hasDraftAndPublish ? status : void 0
|
|
4191
|
+
};
|
|
4192
|
+
})
|
|
4193
|
+
);
|
|
4194
|
+
};
|
|
4195
|
+
return {
|
|
4196
|
+
async getRecentlyPublishedDocuments() {
|
|
4197
|
+
const permittedContentTypes = await getPermittedContentTypes();
|
|
4198
|
+
const allowedContentTypeUids = permittedContentTypes.filter((uid) => {
|
|
4199
|
+
return contentTypes$1.hasDraftAndPublish(strapi2.contentType(uid));
|
|
4200
|
+
});
|
|
4201
|
+
const configurations = await getConfiguration(allowedContentTypeUids);
|
|
4202
|
+
const documentsMeta = getDocumentsMetaData(allowedContentTypeUids, configurations);
|
|
4203
|
+
const recentDocuments = await Promise.all(
|
|
4204
|
+
documentsMeta.map(async (meta) => {
|
|
4205
|
+
const docs = await strapi2.documents(meta.uid).findMany({
|
|
4206
|
+
limit: MAX_DOCUMENTS,
|
|
4207
|
+
sort: "publishedAt:desc",
|
|
4208
|
+
fields: meta.fields,
|
|
4209
|
+
status: "published"
|
|
4210
|
+
});
|
|
4211
|
+
return formatDocuments(docs, meta);
|
|
4212
|
+
})
|
|
4213
|
+
);
|
|
4214
|
+
const overallRecentDocuments = recentDocuments.flat().sort((a, b) => {
|
|
4215
|
+
if (!a.publishedAt || !b.publishedAt) return 0;
|
|
4216
|
+
return b.publishedAt.valueOf() - a.publishedAt.valueOf();
|
|
4217
|
+
}).slice(0, MAX_DOCUMENTS);
|
|
4218
|
+
return addStatusToDocuments(overallRecentDocuments);
|
|
4219
|
+
},
|
|
4220
|
+
async getRecentlyUpdatedDocuments() {
|
|
4221
|
+
const allowedContentTypeUids = await getPermittedContentTypes();
|
|
4222
|
+
const configurations = await getConfiguration(allowedContentTypeUids);
|
|
4223
|
+
const documentsMeta = getDocumentsMetaData(allowedContentTypeUids, configurations);
|
|
4224
|
+
const recentDocuments = await Promise.all(
|
|
4225
|
+
documentsMeta.map(async (meta) => {
|
|
4226
|
+
const docs = await strapi2.documents(meta.uid).findMany({
|
|
4227
|
+
limit: MAX_DOCUMENTS,
|
|
4228
|
+
sort: "updatedAt:desc",
|
|
4229
|
+
fields: meta.fields
|
|
4230
|
+
});
|
|
4231
|
+
return formatDocuments(docs, meta);
|
|
4232
|
+
})
|
|
4233
|
+
);
|
|
4234
|
+
const overallRecentDocuments = recentDocuments.flat().sort((a, b) => {
|
|
4235
|
+
return b.updatedAt.valueOf() - a.updatedAt.valueOf();
|
|
4236
|
+
}).slice(0, MAX_DOCUMENTS);
|
|
4237
|
+
return addStatusToDocuments(overallRecentDocuments);
|
|
4238
|
+
}
|
|
4239
|
+
};
|
|
4240
|
+
};
|
|
4089
4241
|
const services$1 = {
|
|
4090
4242
|
auth: auth$1,
|
|
4091
4243
|
user: user$3,
|
|
@@ -4100,7 +4252,8 @@ const services$1 = {
|
|
|
4100
4252
|
action,
|
|
4101
4253
|
"api-token": apiToken$2,
|
|
4102
4254
|
transfer: transfer$1,
|
|
4103
|
-
"project-settings": projectSettings
|
|
4255
|
+
"project-settings": projectSettings,
|
|
4256
|
+
homepage: createHomepageService
|
|
4104
4257
|
};
|
|
4105
4258
|
const MAX_IMAGE_WIDTH = 750;
|
|
4106
4259
|
const MAX_IMAGE_HEIGHT = MAX_IMAGE_WIDTH;
|
|
@@ -4255,18 +4408,18 @@ const admin$3 = {
|
|
|
4255
4408
|
ctx.send({ plugins: plugins2 });
|
|
4256
4409
|
}
|
|
4257
4410
|
};
|
|
4258
|
-
const apiTokenCreationSchema = yup.object().shape({
|
|
4259
|
-
name: yup.string().min(1).required(),
|
|
4260
|
-
description: yup.string().optional(),
|
|
4261
|
-
type: yup.string().oneOf(Object.values(constants$3.API_TOKEN_TYPE)).required(),
|
|
4262
|
-
permissions: yup.array().of(yup.string()).nullable(),
|
|
4263
|
-
lifespan: yup.number().min(1).oneOf(Object.values(constants$3.API_TOKEN_LIFESPANS)).nullable()
|
|
4411
|
+
const apiTokenCreationSchema = yup$1.object().shape({
|
|
4412
|
+
name: yup$1.string().min(1).required(),
|
|
4413
|
+
description: yup$1.string().optional(),
|
|
4414
|
+
type: yup$1.string().oneOf(Object.values(constants$3.API_TOKEN_TYPE)).required(),
|
|
4415
|
+
permissions: yup$1.array().of(yup$1.string()).nullable(),
|
|
4416
|
+
lifespan: yup$1.number().min(1).oneOf(Object.values(constants$3.API_TOKEN_LIFESPANS)).nullable()
|
|
4264
4417
|
}).noUnknown().strict();
|
|
4265
|
-
const apiTokenUpdateSchema = yup.object().shape({
|
|
4266
|
-
name: yup.string().min(1).notNull(),
|
|
4267
|
-
description: yup.string().nullable(),
|
|
4268
|
-
type: yup.string().oneOf(Object.values(constants$3.API_TOKEN_TYPE)).notNull(),
|
|
4269
|
-
permissions: yup.array().of(yup.string()).nullable()
|
|
4418
|
+
const apiTokenUpdateSchema = yup$1.object().shape({
|
|
4419
|
+
name: yup$1.string().min(1).notNull(),
|
|
4420
|
+
description: yup$1.string().nullable(),
|
|
4421
|
+
type: yup$1.string().oneOf(Object.values(constants$3.API_TOKEN_TYPE)).notNull(),
|
|
4422
|
+
permissions: yup$1.array().of(yup$1.string()).nullable()
|
|
4270
4423
|
}).noUnknown().strict();
|
|
4271
4424
|
const validateApiTokenCreationInput = validateYupSchema(apiTokenCreationSchema);
|
|
4272
4425
|
const validateApiTokenUpdateInput = validateYupSchema(apiTokenUpdateSchema);
|
|
@@ -4353,36 +4506,36 @@ const apiToken$1 = {
|
|
|
4353
4506
|
ctx.send({ data: layout });
|
|
4354
4507
|
}
|
|
4355
4508
|
};
|
|
4356
|
-
const userCreationSchema = yup.object().shape({
|
|
4509
|
+
const userCreationSchema = yup$1.object().shape({
|
|
4357
4510
|
email: validators.email.required(),
|
|
4358
4511
|
firstname: validators.firstname.required(),
|
|
4359
4512
|
lastname: validators.lastname,
|
|
4360
4513
|
roles: validators.roles.min(1),
|
|
4361
|
-
preferedLanguage: yup.string().nullable()
|
|
4514
|
+
preferedLanguage: yup$1.string().nullable()
|
|
4362
4515
|
}).noUnknown();
|
|
4363
|
-
const profileUpdateSchema = yup.object().shape({
|
|
4516
|
+
const profileUpdateSchema = yup$1.object().shape({
|
|
4364
4517
|
email: validators.email.notNull(),
|
|
4365
4518
|
firstname: validators.firstname.notNull(),
|
|
4366
4519
|
lastname: validators.lastname.nullable(),
|
|
4367
4520
|
username: validators.username.nullable(),
|
|
4368
4521
|
password: validators.password.notNull(),
|
|
4369
|
-
currentPassword: yup.string().when(
|
|
4522
|
+
currentPassword: yup$1.string().when(
|
|
4370
4523
|
"password",
|
|
4371
4524
|
(password2, schema) => !isUndefined(password2) ? schema.required() : schema
|
|
4372
4525
|
).notNull(),
|
|
4373
|
-
preferedLanguage: yup.string().nullable()
|
|
4526
|
+
preferedLanguage: yup$1.string().nullable()
|
|
4374
4527
|
}).noUnknown();
|
|
4375
|
-
const userUpdateSchema = yup.object().shape({
|
|
4528
|
+
const userUpdateSchema = yup$1.object().shape({
|
|
4376
4529
|
email: validators.email.notNull(),
|
|
4377
4530
|
firstname: validators.firstname.notNull(),
|
|
4378
4531
|
lastname: validators.lastname.nullable(),
|
|
4379
4532
|
username: validators.username.nullable(),
|
|
4380
4533
|
password: validators.password.notNull(),
|
|
4381
|
-
isActive: yup.bool().notNull(),
|
|
4534
|
+
isActive: yup$1.bool().notNull(),
|
|
4382
4535
|
roles: validators.roles.min(1).notNull()
|
|
4383
4536
|
}).noUnknown();
|
|
4384
|
-
const usersDeleteSchema = yup.object().shape({
|
|
4385
|
-
ids: yup.array().of(yup.strapiID()).min(1).required()
|
|
4537
|
+
const usersDeleteSchema = yup$1.object().shape({
|
|
4538
|
+
ids: yup$1.array().of(yup$1.strapiID()).min(1).required()
|
|
4386
4539
|
}).noUnknown();
|
|
4387
4540
|
const validateUserCreationInput$1 = validateYupSchema(userCreationSchema);
|
|
4388
4541
|
const validateProfileUpdateInput = validateYupSchema(profileUpdateSchema);
|
|
@@ -4429,18 +4582,18 @@ const authenticatedUser = {
|
|
|
4429
4582
|
};
|
|
4430
4583
|
}
|
|
4431
4584
|
};
|
|
4432
|
-
const registrationSchema = yup.object().shape({
|
|
4433
|
-
registrationToken: yup.string().required(),
|
|
4434
|
-
userInfo: yup.object().shape({
|
|
4585
|
+
const registrationSchema = yup$1.object().shape({
|
|
4586
|
+
registrationToken: yup$1.string().required(),
|
|
4587
|
+
userInfo: yup$1.object().shape({
|
|
4435
4588
|
firstname: validators.firstname.required(),
|
|
4436
4589
|
lastname: validators.lastname.nullable(),
|
|
4437
4590
|
password: validators.password.required()
|
|
4438
4591
|
}).required().noUnknown()
|
|
4439
4592
|
}).noUnknown();
|
|
4440
|
-
const registrationInfoQuerySchema = yup.object().shape({
|
|
4441
|
-
registrationToken: yup.string().required()
|
|
4593
|
+
const registrationInfoQuerySchema = yup$1.object().shape({
|
|
4594
|
+
registrationToken: yup$1.string().required()
|
|
4442
4595
|
}).required().noUnknown();
|
|
4443
|
-
const adminRegistrationSchema = yup.object().shape({
|
|
4596
|
+
const adminRegistrationSchema = yup$1.object().shape({
|
|
4444
4597
|
email: validators.email.required(),
|
|
4445
4598
|
firstname: validators.firstname.required(),
|
|
4446
4599
|
lastname: validators.lastname.nullable(),
|
|
@@ -4449,22 +4602,22 @@ const adminRegistrationSchema = yup.object().shape({
|
|
|
4449
4602
|
const validateRegistrationInput = validateYupSchema(registrationSchema);
|
|
4450
4603
|
const validateRegistrationInfoQuery = validateYupSchema(registrationInfoQuerySchema);
|
|
4451
4604
|
const validateAdminRegistrationInput = validateYupSchema(adminRegistrationSchema);
|
|
4452
|
-
const forgotPasswordSchema = yup.object().shape({
|
|
4605
|
+
const forgotPasswordSchema = yup$1.object().shape({
|
|
4453
4606
|
email: validators.email.required()
|
|
4454
4607
|
}).required().noUnknown();
|
|
4455
4608
|
const validateForgotPasswordInput = validateYupSchema(forgotPasswordSchema);
|
|
4456
|
-
const resetPasswordSchema = yup.object().shape({
|
|
4457
|
-
resetPasswordToken: yup.string().required(),
|
|
4609
|
+
const resetPasswordSchema = yup$1.object().shape({
|
|
4610
|
+
resetPasswordToken: yup$1.string().required(),
|
|
4458
4611
|
password: validators.password.required()
|
|
4459
4612
|
}).required().noUnknown();
|
|
4460
4613
|
const validateResetPasswordInput = validateYupSchema(resetPasswordSchema);
|
|
4461
|
-
const renewToken = yup.object().shape({ token: yup.string().required() }).required().noUnknown();
|
|
4614
|
+
const renewToken = yup$1.object().shape({ token: yup$1.string().required() }).required().noUnknown();
|
|
4462
4615
|
const validateRenewTokenInput = validateYupSchema(renewToken);
|
|
4463
4616
|
const { ApplicationError: ApplicationError$6, ValidationError: ValidationError$2 } = errors;
|
|
4464
4617
|
const authentication$1 = {
|
|
4465
4618
|
login: compose([
|
|
4466
4619
|
(ctx, next) => {
|
|
4467
|
-
return passport$2.authenticate("local", { session: false }, (err, user2,
|
|
4620
|
+
return passport$2.authenticate("local", { session: false }, (err, user2, info2) => {
|
|
4468
4621
|
if (err) {
|
|
4469
4622
|
strapi.eventHub.emit("admin.auth.error", { error: err, provider: "local" });
|
|
4470
4623
|
if (err.details?.code === "LOGIN_NOT_ALLOWED") {
|
|
@@ -4474,10 +4627,10 @@ const authentication$1 = {
|
|
|
4474
4627
|
}
|
|
4475
4628
|
if (!user2) {
|
|
4476
4629
|
strapi.eventHub.emit("admin.auth.error", {
|
|
4477
|
-
error: new Error(
|
|
4630
|
+
error: new Error(info2.message),
|
|
4478
4631
|
provider: "local"
|
|
4479
4632
|
});
|
|
4480
|
-
throw new ApplicationError$6(
|
|
4633
|
+
throw new ApplicationError$6(info2.message);
|
|
4481
4634
|
}
|
|
4482
4635
|
const query = ctx.state;
|
|
4483
4636
|
query.user = user2;
|
|
@@ -4615,12 +4768,12 @@ const permission = {
|
|
|
4615
4768
|
};
|
|
4616
4769
|
}
|
|
4617
4770
|
};
|
|
4618
|
-
const roleCreateSchema$1 = yup.object().shape({
|
|
4619
|
-
name: yup.string().min(1).required(),
|
|
4620
|
-
description: yup.string().nullable()
|
|
4771
|
+
const roleCreateSchema$1 = yup$1.object().shape({
|
|
4772
|
+
name: yup$1.string().min(1).required(),
|
|
4773
|
+
description: yup$1.string().nullable()
|
|
4621
4774
|
}).noUnknown();
|
|
4622
|
-
const rolesDeleteSchema$1 = yup.object().shape({
|
|
4623
|
-
ids: yup.array().of(yup.strapiID()).min(1).required().test("roles-deletion-checks", "Roles deletion checks have failed", async function(ids) {
|
|
4775
|
+
const rolesDeleteSchema$1 = yup$1.object().shape({
|
|
4776
|
+
ids: yup$1.array().of(yup$1.strapiID()).min(1).required().test("roles-deletion-checks", "Roles deletion checks have failed", async function(ids) {
|
|
4624
4777
|
try {
|
|
4625
4778
|
await strapi.service("admin::role").checkRolesIdForDeletion(ids);
|
|
4626
4779
|
} catch (e) {
|
|
@@ -4629,7 +4782,7 @@ const rolesDeleteSchema$1 = yup.object().shape({
|
|
|
4629
4782
|
return true;
|
|
4630
4783
|
})
|
|
4631
4784
|
}).noUnknown();
|
|
4632
|
-
const roleDeleteSchema$1 = yup.strapiID().required().test("no-admin-single-delete", "Role deletion checks have failed", async function(id) {
|
|
4785
|
+
const roleDeleteSchema$1 = yup$1.strapiID().required().test("no-admin-single-delete", "Role deletion checks have failed", async function(id) {
|
|
4633
4786
|
try {
|
|
4634
4787
|
await strapi.service("admin::role").checkRolesIdForDeletion([id]);
|
|
4635
4788
|
} catch (e) {
|
|
@@ -4637,9 +4790,9 @@ const roleDeleteSchema$1 = yup.strapiID().required().test("no-admin-single-delet
|
|
|
4637
4790
|
}
|
|
4638
4791
|
return true;
|
|
4639
4792
|
});
|
|
4640
|
-
const roleUpdateSchema = yup.object().shape({
|
|
4641
|
-
name: yup.string().min(1),
|
|
4642
|
-
description: yup.string().nullable()
|
|
4793
|
+
const roleUpdateSchema = yup$1.object().shape({
|
|
4794
|
+
name: yup$1.string().min(1),
|
|
4795
|
+
description: yup$1.string().nullable()
|
|
4643
4796
|
}).noUnknown();
|
|
4644
4797
|
const validateRoleCreateInput$1 = validateYupSchema(roleCreateSchema$1);
|
|
4645
4798
|
const validateRoleUpdateInput = validateYupSchema(roleUpdateSchema);
|
|
@@ -4806,16 +4959,16 @@ const runner = {
|
|
|
4806
4959
|
push,
|
|
4807
4960
|
pull
|
|
4808
4961
|
};
|
|
4809
|
-
const transferTokenCreationSchema = yup.object().shape({
|
|
4810
|
-
name: yup.string().min(1).required(),
|
|
4811
|
-
description: yup.string().optional(),
|
|
4812
|
-
permissions: yup.array().min(1).of(yup.string().oneOf(Object.values(constants$3.TRANSFER_TOKEN_TYPE))).required(),
|
|
4813
|
-
lifespan: yup.number().min(1).oneOf(Object.values(constants$3.TRANSFER_TOKEN_LIFESPANS)).nullable()
|
|
4962
|
+
const transferTokenCreationSchema = yup$1.object().shape({
|
|
4963
|
+
name: yup$1.string().min(1).required(),
|
|
4964
|
+
description: yup$1.string().optional(),
|
|
4965
|
+
permissions: yup$1.array().min(1).of(yup$1.string().oneOf(Object.values(constants$3.TRANSFER_TOKEN_TYPE))).required(),
|
|
4966
|
+
lifespan: yup$1.number().min(1).oneOf(Object.values(constants$3.TRANSFER_TOKEN_LIFESPANS)).nullable()
|
|
4814
4967
|
}).noUnknown().strict();
|
|
4815
|
-
const transferTokenUpdateSchema = yup.object().shape({
|
|
4816
|
-
name: yup.string().min(1).notNull(),
|
|
4817
|
-
description: yup.string().nullable(),
|
|
4818
|
-
permissions: yup.array().min(1).of(yup.string().oneOf(Object.values(constants$3.TRANSFER_TOKEN_TYPE))).nullable()
|
|
4968
|
+
const transferTokenUpdateSchema = yup$1.object().shape({
|
|
4969
|
+
name: yup$1.string().min(1).notNull(),
|
|
4970
|
+
description: yup$1.string().nullable(),
|
|
4971
|
+
permissions: yup$1.array().min(1).of(yup$1.string().oneOf(Object.values(constants$3.TRANSFER_TOKEN_TYPE))).nullable()
|
|
4819
4972
|
}).noUnknown().strict();
|
|
4820
4973
|
const validateTransferTokenCreationInput$1 = validateYupSchema(transferTokenCreationSchema);
|
|
4821
4974
|
const validateTransferTokenUpdateInput$1 = validateYupSchema(transferTokenUpdateSchema);
|
|
@@ -5002,9 +5155,9 @@ const user$2 = {
|
|
|
5002
5155
|
}
|
|
5003
5156
|
};
|
|
5004
5157
|
const urlRegex = /^(?:([a-z0-9+.-]+):\/\/)(?:\S+(?::\S*)?@)?(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9_]-*)*[a-z\u00a1-\uffff0-9_]+)(?:\.(?:[a-z\u00a1-\uffff0-9_]-*)*[a-z\u00a1-\uffff0-9_]+)*\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/;
|
|
5005
|
-
const webhookValidator = yup.object({
|
|
5006
|
-
name: yup.string().required(),
|
|
5007
|
-
url: yup.string().matches(urlRegex, "url must be a valid URL").required().test(
|
|
5158
|
+
const webhookValidator = yup$1.object({
|
|
5159
|
+
name: yup$1.string().required(),
|
|
5160
|
+
url: yup$1.string().matches(urlRegex, "url must be a valid URL").required().test(
|
|
5008
5161
|
"is-public-url",
|
|
5009
5162
|
"Url is not supported because it isn't reachable over the public internet",
|
|
5010
5163
|
async (url) => {
|
|
@@ -5020,21 +5173,21 @@ const webhookValidator = yup.object({
|
|
|
5020
5173
|
}
|
|
5021
5174
|
}
|
|
5022
5175
|
),
|
|
5023
|
-
headers: yup.lazy((data) => {
|
|
5176
|
+
headers: yup$1.lazy((data) => {
|
|
5024
5177
|
if (typeof data !== "object") {
|
|
5025
|
-
return yup.object().required();
|
|
5178
|
+
return yup$1.object().required();
|
|
5026
5179
|
}
|
|
5027
|
-
return yup.object(
|
|
5180
|
+
return yup$1.object(
|
|
5028
5181
|
// @ts-expect-error lodash types
|
|
5029
5182
|
___default.mapValues(data, () => {
|
|
5030
|
-
yup.string().min(1).required();
|
|
5183
|
+
yup$1.string().min(1).required();
|
|
5031
5184
|
})
|
|
5032
5185
|
).required();
|
|
5033
5186
|
}),
|
|
5034
|
-
events: yup.array().of(yup.string()).required()
|
|
5187
|
+
events: yup$1.array().of(yup$1.string()).required()
|
|
5035
5188
|
}).noUnknown();
|
|
5036
5189
|
const updateWebhookValidator = webhookValidator.shape({
|
|
5037
|
-
isEnabled: yup.boolean()
|
|
5190
|
+
isEnabled: yup$1.boolean()
|
|
5038
5191
|
});
|
|
5039
5192
|
const webhooks = {
|
|
5040
5193
|
async listWebhooks(ctx) {
|
|
@@ -5115,6 +5268,29 @@ const contentApi = {
|
|
|
5115
5268
|
ctx.send({ data: routesMap });
|
|
5116
5269
|
}
|
|
5117
5270
|
};
|
|
5271
|
+
const createHomepageController = () => {
|
|
5272
|
+
const homepageService = getService$1("homepage");
|
|
5273
|
+
const recentDocumentParamsSchema = yup.object().shape({
|
|
5274
|
+
action: yup.mixed().oneOf(["update", "publish"]).required()
|
|
5275
|
+
});
|
|
5276
|
+
return {
|
|
5277
|
+
async getRecentDocuments(ctx) {
|
|
5278
|
+
let action2;
|
|
5279
|
+
try {
|
|
5280
|
+
action2 = (await recentDocumentParamsSchema.validate(ctx.query)).action;
|
|
5281
|
+
} catch (error) {
|
|
5282
|
+
if (error instanceof yup.ValidationError) {
|
|
5283
|
+
throw new errors.ValidationError(error.message);
|
|
5284
|
+
}
|
|
5285
|
+
throw error;
|
|
5286
|
+
}
|
|
5287
|
+
if (action2 === "publish") {
|
|
5288
|
+
return { data: await homepageService.getRecentlyPublishedDocuments() };
|
|
5289
|
+
}
|
|
5290
|
+
return { data: await homepageService.getRecentlyUpdatedDocuments() };
|
|
5291
|
+
}
|
|
5292
|
+
};
|
|
5293
|
+
};
|
|
5118
5294
|
const controllers$1 = {
|
|
5119
5295
|
admin: admin$3,
|
|
5120
5296
|
"api-token": apiToken$1,
|
|
@@ -5125,7 +5301,8 @@ const controllers$1 = {
|
|
|
5125
5301
|
transfer,
|
|
5126
5302
|
user: user$2,
|
|
5127
5303
|
webhooks,
|
|
5128
|
-
"content-api": contentApi
|
|
5304
|
+
"content-api": contentApi,
|
|
5305
|
+
homepage: createHomepageController
|
|
5129
5306
|
};
|
|
5130
5307
|
const Permission = {
|
|
5131
5308
|
collectionName: "admin_permissions",
|
|
@@ -6168,9 +6345,9 @@ const services = {
|
|
|
6168
6345
|
"seat-enforcement": seatEnforcement,
|
|
6169
6346
|
"persist-tables": persistTables$1
|
|
6170
6347
|
};
|
|
6171
|
-
const providerOptionsUpdateSchema = yup.object().shape({
|
|
6172
|
-
autoRegister: yup.boolean().required(),
|
|
6173
|
-
defaultRole: yup.strapiID().when("autoRegister", (value, initSchema) => {
|
|
6348
|
+
const providerOptionsUpdateSchema = yup$1.object().shape({
|
|
6349
|
+
autoRegister: yup$1.boolean().required(),
|
|
6350
|
+
defaultRole: yup$1.strapiID().when("autoRegister", (value, initSchema) => {
|
|
6174
6351
|
return value ? initSchema.required() : initSchema.nullable();
|
|
6175
6352
|
}).test("is-valid-role", "You must submit a valid default role", (roleId) => {
|
|
6176
6353
|
if (roleId === null) {
|
|
@@ -6178,8 +6355,8 @@ const providerOptionsUpdateSchema = yup.object().shape({
|
|
|
6178
6355
|
}
|
|
6179
6356
|
return strapi.service("admin::role").exists({ id: roleId });
|
|
6180
6357
|
}),
|
|
6181
|
-
ssoLockedRoles: yup.array().nullable().of(
|
|
6182
|
-
yup.strapiID().test(
|
|
6358
|
+
ssoLockedRoles: yup$1.array().nullable().of(
|
|
6359
|
+
yup$1.strapiID().test(
|
|
6183
6360
|
"is-valid-role",
|
|
6184
6361
|
"You must submit a valid role for the SSO Locked roles",
|
|
6185
6362
|
(roleId) => {
|
|
@@ -6333,12 +6510,12 @@ const authentication = {
|
|
|
6333
6510
|
return providerAuthenticationFlow(ctx, next);
|
|
6334
6511
|
}
|
|
6335
6512
|
};
|
|
6336
|
-
const roleCreateSchema = yup.object().shape({
|
|
6337
|
-
name: yup.string().min(1).required(),
|
|
6338
|
-
description: yup.string().nullable()
|
|
6513
|
+
const roleCreateSchema = yup$1.object().shape({
|
|
6514
|
+
name: yup$1.string().min(1).required(),
|
|
6515
|
+
description: yup$1.string().nullable()
|
|
6339
6516
|
}).noUnknown();
|
|
6340
|
-
const rolesDeleteSchema = yup.object().shape({
|
|
6341
|
-
ids: yup.array().of(yup.strapiID()).min(1).required().test(
|
|
6517
|
+
const rolesDeleteSchema = yup$1.object().shape({
|
|
6518
|
+
ids: yup$1.array().of(yup$1.strapiID()).min(1).required().test(
|
|
6342
6519
|
"roles-deletion-checks",
|
|
6343
6520
|
"Roles deletion checks have failed",
|
|
6344
6521
|
async function rolesDeletionChecks(ids) {
|
|
@@ -6354,7 +6531,7 @@ const rolesDeleteSchema = yup.object().shape({
|
|
|
6354
6531
|
}
|
|
6355
6532
|
)
|
|
6356
6533
|
}).noUnknown();
|
|
6357
|
-
const roleDeleteSchema = yup.strapiID().required().test(
|
|
6534
|
+
const roleDeleteSchema = yup$1.strapiID().required().test(
|
|
6358
6535
|
"no-admin-single-delete",
|
|
6359
6536
|
"Role deletion checks have failed",
|
|
6360
6537
|
async function noAdminSingleDelete(id) {
|
|
@@ -6413,8 +6590,8 @@ const role = {
|
|
|
6413
6590
|
});
|
|
6414
6591
|
}
|
|
6415
6592
|
};
|
|
6416
|
-
const ssoUserCreationInputExtension = yup.object().shape({
|
|
6417
|
-
useSSORegistration: yup.boolean()
|
|
6593
|
+
const ssoUserCreationInputExtension = yup$1.object().shape({
|
|
6594
|
+
useSSORegistration: yup$1.boolean()
|
|
6418
6595
|
}).noUnknown();
|
|
6419
6596
|
const validateUserCreationInput = (data) => {
|
|
6420
6597
|
let schema = schemas.userCreationSchema;
|
|
@@ -6686,10 +6863,10 @@ const auditLogsRoutes = {
|
|
|
6686
6863
|
]
|
|
6687
6864
|
};
|
|
6688
6865
|
const ALLOWED_SORT_STRINGS = ["action:ASC", "action:DESC", "date:ASC", "date:DESC"];
|
|
6689
|
-
const validateFindManySchema = yup.object().shape({
|
|
6690
|
-
page: yup.number().integer().min(1),
|
|
6691
|
-
pageSize: yup.number().integer().min(1).max(100),
|
|
6692
|
-
sort: yup.mixed().oneOf(ALLOWED_SORT_STRINGS)
|
|
6866
|
+
const validateFindManySchema = yup$1.object().shape({
|
|
6867
|
+
page: yup$1.number().integer().min(1),
|
|
6868
|
+
pageSize: yup$1.number().integer().min(1).max(100),
|
|
6869
|
+
sort: yup$1.mixed().oneOf(ALLOWED_SORT_STRINGS)
|
|
6693
6870
|
}).required();
|
|
6694
6871
|
const validateFindMany = validateYupSchema(validateFindManySchema, { strict: false });
|
|
6695
6872
|
const auditLogsController = {
|