@strapi/admin 4.20.5 → 4.21.1
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/_chunks/{AdminSeatInfo-VeqDpwGV.js → AdminSeatInfo-MibiuVe3.js} +9 -8
- package/dist/_chunks/{AdminSeatInfo-VeqDpwGV.js.map → AdminSeatInfo-MibiuVe3.js.map} +1 -1
- package/dist/_chunks/{AdminSeatInfo-0PZPHqsd.mjs → AdminSeatInfo-hYZ8eUpF.mjs} +9 -8
- package/dist/_chunks/{AdminSeatInfo-0PZPHqsd.mjs.map → AdminSeatInfo-hYZ8eUpF.mjs.map} +1 -1
- package/dist/_chunks/{AuthenticatedApp-3loM1zPQ.js → AuthenticatedApp-2mUijYOI.js} +21 -21
- package/dist/_chunks/{AuthenticatedApp-3loM1zPQ.js.map → AuthenticatedApp-2mUijYOI.js.map} +1 -1
- package/dist/_chunks/{AuthenticatedApp-p_Hoz4w0.mjs → AuthenticatedApp-nvm4fRcu.mjs} +21 -21
- package/dist/_chunks/{AuthenticatedApp-p_Hoz4w0.mjs.map → AuthenticatedApp-nvm4fRcu.mjs.map} +1 -1
- package/dist/_chunks/{CreateActionEE-BvBzN3ej.mjs → CreateActionEE-28yZAU6X.mjs} +8 -7
- package/dist/_chunks/{CreateActionEE-BvBzN3ej.mjs.map → CreateActionEE-28yZAU6X.mjs.map} +1 -1
- package/dist/_chunks/{CreateActionEE-msdEHH2t.js → CreateActionEE-u_QUOWRr.js} +8 -7
- package/dist/_chunks/{CreateActionEE-msdEHH2t.js.map → CreateActionEE-u_QUOWRr.js.map} +1 -1
- package/dist/_chunks/{CreatePage-tYv61v1J.js → CreatePage-Cqqvxnxa.js} +13 -12
- package/dist/_chunks/{CreatePage-tYv61v1J.js.map → CreatePage-Cqqvxnxa.js.map} +1 -1
- package/dist/_chunks/{CreatePage-eh67IoKV.mjs → CreatePage-ObDt4GbK.mjs} +9 -8
- package/dist/_chunks/{CreatePage-eh67IoKV.mjs.map → CreatePage-ObDt4GbK.mjs.map} +1 -1
- package/dist/_chunks/{CreatePage-DvbIy_jN.mjs → CreatePage-bPmBTOep.mjs} +13 -12
- package/dist/_chunks/{CreatePage-DvbIy_jN.mjs.map → CreatePage-bPmBTOep.mjs.map} +1 -1
- package/dist/_chunks/{CreatePage-CXHGEXMF.mjs → CreatePage-ed7j4RJV.mjs} +12 -11
- package/dist/_chunks/{CreatePage-CXHGEXMF.mjs.map → CreatePage-ed7j4RJV.mjs.map} +1 -1
- package/dist/_chunks/{CreatePage-TnWHEKrd.js → CreatePage-hacPLJKo.js} +9 -8
- package/dist/_chunks/{CreatePage-TnWHEKrd.js.map → CreatePage-hacPLJKo.js.map} +1 -1
- package/dist/_chunks/{CreatePage-0a6OdLKp.js → CreatePage-mBRa_iNg.js} +12 -11
- package/dist/_chunks/{CreatePage-0a6OdLKp.js.map → CreatePage-mBRa_iNg.js.map} +1 -1
- package/dist/_chunks/{CreateView-hFjKdwYu.mjs → CreateView--GAlOvKq.mjs} +12 -11
- package/dist/_chunks/{CreateView-hFjKdwYu.mjs.map → CreateView--GAlOvKq.mjs.map} +1 -1
- package/dist/_chunks/{CreateView-37DEWWCT.js → CreateView-3jGheoI1.js} +12 -11
- package/dist/_chunks/{CreateView-37DEWWCT.js.map → CreateView-3jGheoI1.js.map} +1 -1
- package/dist/_chunks/{CreateView-lQqp9igR.js → CreateView-VPheqVVt.js} +12 -11
- package/dist/_chunks/{CreateView-lQqp9igR.js.map → CreateView-VPheqVVt.js.map} +1 -1
- package/dist/_chunks/{CreateView-8a8sE0PN.mjs → CreateView-pVkFTxKp.mjs} +12 -11
- package/dist/_chunks/{CreateView-8a8sE0PN.mjs.map → CreateView-pVkFTxKp.mjs.map} +1 -1
- package/dist/_chunks/{EditPage-RrSgOYln.mjs → EditPage-0awwE3Ot.mjs} +14 -13
- package/dist/_chunks/{EditPage-RrSgOYln.mjs.map → EditPage-0awwE3Ot.mjs.map} +1 -1
- package/dist/_chunks/{EditPage-EFPGPMV_.js → EditPage-33i7ujZ8.js} +6 -6
- package/dist/_chunks/{EditPage-EFPGPMV_.js.map → EditPage-33i7ujZ8.js.map} +1 -1
- package/dist/_chunks/{EditPage-fOldhH6r.js → EditPage-7Ct3E98b.js} +12 -11
- package/dist/_chunks/{EditPage-fOldhH6r.js.map → EditPage-7Ct3E98b.js.map} +1 -1
- package/dist/_chunks/{EditPage-JS93HO0g.mjs → EditPage-MeydsvUK.mjs} +12 -11
- package/dist/_chunks/{EditPage-JS93HO0g.mjs.map → EditPage-MeydsvUK.mjs.map} +1 -1
- package/dist/_chunks/{EditPage-D0i2YdDb.js → EditPage-TpJ6dyZw.js} +10 -9
- package/dist/_chunks/{EditPage-D0i2YdDb.js.map → EditPage-TpJ6dyZw.js.map} +1 -1
- package/dist/_chunks/{EditPage-fVWNx5Oh.js → EditPage-VALeceJX.js} +14 -13
- package/dist/_chunks/{EditPage-fVWNx5Oh.js.map → EditPage-VALeceJX.js.map} +1 -1
- package/dist/_chunks/{EditPage-H51hPwcO.mjs → EditPage-ZTvR20S6.mjs} +6 -6
- package/dist/_chunks/{EditPage-H51hPwcO.mjs.map → EditPage-ZTvR20S6.mjs.map} +1 -1
- package/dist/_chunks/{EditPage-CbpEmXk3.mjs → EditPage-yKqM0bST.mjs} +10 -9
- package/dist/_chunks/{EditPage-CbpEmXk3.mjs.map → EditPage-yKqM0bST.mjs.map} +1 -1
- package/dist/_chunks/{EditView-o4vADGcb.js → EditView-4N0l1pQE.js} +10 -9
- package/dist/_chunks/{EditView-o4vADGcb.js.map → EditView-4N0l1pQE.js.map} +1 -1
- package/dist/_chunks/{EditView-lgBWjHOT.mjs → EditView-CsBrOadn.mjs} +10 -9
- package/dist/_chunks/{EditView-lgBWjHOT.mjs.map → EditView-CsBrOadn.mjs.map} +1 -1
- package/dist/_chunks/{EditViewPage-qJ7nFINE.mjs → EditViewPage-I4t8PYvh.mjs} +10 -9
- package/dist/_chunks/{EditViewPage-qJ7nFINE.mjs.map → EditViewPage-I4t8PYvh.mjs.map} +1 -1
- package/dist/_chunks/{EditViewPage-mqbskolf.js → EditViewPage-fepB7pKP.js} +10 -9
- package/dist/_chunks/{EditViewPage-mqbskolf.js.map → EditViewPage-fepB7pKP.js.map} +1 -1
- package/dist/_chunks/{EventsTable--TwAHLZA.js → EventsTable-1uoHb_3J.js} +12 -11
- package/dist/_chunks/{EventsTable--TwAHLZA.js.map → EventsTable-1uoHb_3J.js.map} +1 -1
- package/dist/_chunks/{EventsTable-Fvc-JpRm.mjs → EventsTable-uqU4ebwR.mjs} +12 -11
- package/dist/_chunks/{EventsTable-Fvc-JpRm.mjs.map → EventsTable-uqU4ebwR.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-uF97iLvr.js → HomePage-UQWsRrI5.js} +11 -10
- package/dist/_chunks/{HomePage-uF97iLvr.js.map → HomePage-UQWsRrI5.js.map} +1 -1
- package/dist/_chunks/{HomePage-nOmgQyML.mjs → HomePage-q365diV4.mjs} +12 -11
- package/dist/_chunks/{HomePage-nOmgQyML.mjs.map → HomePage-q365diV4.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-uLq-MN1K.js → HomePage-uCLCPqBp.js} +12 -11
- package/dist/_chunks/{HomePage-uLq-MN1K.js.map → HomePage-uCLCPqBp.js.map} +1 -1
- package/dist/_chunks/{HomePage-a1vOU1ul.mjs → HomePage-zpdV3R_J.mjs} +11 -10
- package/dist/_chunks/{HomePage-a1vOU1ul.mjs.map → HomePage-zpdV3R_J.mjs.map} +1 -1
- package/dist/_chunks/{InformationBoxEE-zr8UNPkv.mjs → InformationBoxEE-FcEBL8Fl.mjs} +9 -8
- package/dist/_chunks/{InformationBoxEE-zr8UNPkv.mjs.map → InformationBoxEE-FcEBL8Fl.mjs.map} +1 -1
- package/dist/_chunks/{InformationBoxEE-rompvdum.js → InformationBoxEE-ZTOhi2sn.js} +9 -8
- package/dist/_chunks/{InformationBoxEE-rompvdum.js.map → InformationBoxEE-ZTOhi2sn.js.map} +1 -1
- package/dist/_chunks/{InstalledPluginsPage-fCay7xDO.js → InstalledPluginsPage-CsNrEWNA.js} +9 -8
- package/dist/_chunks/{InstalledPluginsPage-fCay7xDO.js.map → InstalledPluginsPage-CsNrEWNA.js.map} +1 -1
- package/dist/_chunks/{InstalledPluginsPage-swMYXqyB.mjs → InstalledPluginsPage-QxMzZSAA.mjs} +9 -8
- package/dist/_chunks/{InstalledPluginsPage-swMYXqyB.mjs.map → InstalledPluginsPage-QxMzZSAA.mjs.map} +1 -1
- package/dist/_chunks/{Layout-BcpbdKNS.js → Layout-BfXkf1tg.js} +2 -2
- package/dist/_chunks/{Layout-BcpbdKNS.js.map → Layout-BfXkf1tg.js.map} +1 -1
- package/dist/_chunks/{Layout-vuQrq1Uu.mjs → Layout-BquZQAb2.mjs} +2 -2
- package/dist/_chunks/{Layout-vuQrq1Uu.mjs.map → Layout-BquZQAb2.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-G5KMMFsZ.mjs → ListPage-4xBsXFzo.mjs} +12 -11
- package/dist/_chunks/{ListPage-G5KMMFsZ.mjs.map → ListPage-4xBsXFzo.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-AKGBR4U_.mjs → ListPage-FEAgz6nH.mjs} +8 -7
- package/dist/_chunks/{ListPage-AKGBR4U_.mjs.map → ListPage-FEAgz6nH.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-2GK03p5D.js → ListPage-LOriRfBq.js} +8 -7
- package/dist/_chunks/{ListPage-2GK03p5D.js.map → ListPage-LOriRfBq.js.map} +1 -1
- package/dist/_chunks/{ListPage-bxulds-R.js → ListPage-NrSchY-X.js} +10 -9
- package/dist/_chunks/{ListPage-bxulds-R.js.map → ListPage-NrSchY-X.js.map} +1 -1
- package/dist/_chunks/{ListPage-8ZPXoi72.js → ListPage-iL3qGB-7.js} +12 -11
- package/dist/_chunks/{ListPage-8ZPXoi72.js.map → ListPage-iL3qGB-7.js.map} +1 -1
- package/dist/_chunks/{ListPage-txDe-JTh.js → ListPage-l9uLwOUs.js} +14 -13
- package/dist/_chunks/{ListPage-txDe-JTh.js.map → ListPage-l9uLwOUs.js.map} +1 -1
- package/dist/_chunks/{ListPage-hFe-nYXL.mjs → ListPage-qafrcs26.mjs} +9 -8
- package/dist/_chunks/{ListPage-hFe-nYXL.mjs.map → ListPage-qafrcs26.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-oOPktA3S.mjs → ListPage-wfXHUaaw.mjs} +10 -9
- package/dist/_chunks/{ListPage-oOPktA3S.mjs.map → ListPage-wfXHUaaw.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-Tebxu06N.mjs → ListPage-wz4r1cje.mjs} +13 -12
- package/dist/_chunks/{ListPage-Tebxu06N.mjs.map → ListPage-wz4r1cje.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-JIwwNmac.mjs → ListPage-xannISFa.mjs} +14 -13
- package/dist/_chunks/{ListPage-JIwwNmac.mjs.map → ListPage-xannISFa.mjs.map} +1 -1
- package/dist/_chunks/{ListPage-IqEVyyyf.js → ListPage-y0INhiFO.js} +9 -8
- package/dist/_chunks/{ListPage-IqEVyyyf.js.map → ListPage-y0INhiFO.js.map} +1 -1
- package/dist/_chunks/{ListPage-LA0lT654.js → ListPage-ydOBPR53.js} +13 -12
- package/dist/_chunks/{ListPage-LA0lT654.js.map → ListPage-ydOBPR53.js.map} +1 -1
- package/dist/_chunks/{ListView-07uZxF2i.mjs → ListView-BCc3qmYg.mjs} +9 -8
- package/dist/_chunks/{ListView-07uZxF2i.mjs.map → ListView-BCc3qmYg.mjs.map} +1 -1
- package/dist/_chunks/{ListView-BHlcoKKy.mjs → ListView-CBlwwUD_.mjs} +9 -8
- package/dist/_chunks/{ListView-BHlcoKKy.mjs.map → ListView-CBlwwUD_.mjs.map} +1 -1
- package/dist/_chunks/{ListView-ESH3o0Lu.js → ListView-CD7jHNFH.js} +9 -8
- package/dist/_chunks/{ListView-ESH3o0Lu.js.map → ListView-CD7jHNFH.js.map} +1 -1
- package/dist/_chunks/{ListView-qaE8Vcb3.js → ListView-mY1VfCWs.js} +9 -8
- package/dist/_chunks/{ListView-qaE8Vcb3.js.map → ListView-mY1VfCWs.js.map} +1 -1
- package/dist/_chunks/{Login-ZETxeuNn.mjs → Login-JfsOEES0.mjs} +8 -7
- package/dist/_chunks/{Login-ZETxeuNn.mjs.map → Login-JfsOEES0.mjs.map} +1 -1
- package/dist/_chunks/{Login-POtw5QbC.js → Login-x6cjYspM.js} +8 -7
- package/dist/_chunks/{Login-POtw5QbC.js.map → Login-x6cjYspM.js.map} +1 -1
- package/dist/_chunks/{MagicLinkEE-VHh9i6gc.js → MagicLinkEE-faQF742D.js} +10 -9
- package/dist/_chunks/{MagicLinkEE-VHh9i6gc.js.map → MagicLinkEE-faQF742D.js.map} +1 -1
- package/dist/_chunks/{MagicLinkEE-HMr2D5cP.mjs → MagicLinkEE-s7jLtjiz.mjs} +10 -9
- package/dist/_chunks/{MagicLinkEE-HMr2D5cP.mjs.map → MagicLinkEE-s7jLtjiz.mjs.map} +1 -1
- package/dist/_chunks/{MarketplacePage-h7hniYgx.js → MarketplacePage-1mCa5BDJ.js} +9 -8
- package/dist/_chunks/{MarketplacePage-h7hniYgx.js.map → MarketplacePage-1mCa5BDJ.js.map} +1 -1
- package/dist/_chunks/{MarketplacePage-ZRMsVYJZ.mjs → MarketplacePage-wtul_pNK.mjs} +9 -8
- package/dist/_chunks/{MarketplacePage-ZRMsVYJZ.mjs.map → MarketplacePage-wtul_pNK.mjs.map} +1 -1
- package/dist/_chunks/{Permissions-0WY1QWWe.js → Permissions--a4GyuI7.js} +2 -2
- package/dist/_chunks/{Permissions-0WY1QWWe.js.map → Permissions--a4GyuI7.js.map} +1 -1
- package/dist/_chunks/{Permissions-ZU9ueRGQ.mjs → Permissions-M9xmouDR.mjs} +2 -2
- package/dist/_chunks/{Permissions-ZU9ueRGQ.mjs.map → Permissions-M9xmouDR.mjs.map} +1 -1
- package/dist/_chunks/{ProfilePage-1Lw2oTjj.js → ProfilePage-I8K2wpuC.js} +9 -8
- package/dist/_chunks/{ProfilePage-1Lw2oTjj.js.map → ProfilePage-I8K2wpuC.js.map} +1 -1
- package/dist/_chunks/{ProfilePage-nhuFpc-j.mjs → ProfilePage-fzPpJZLL.mjs} +9 -8
- package/dist/_chunks/{ProfilePage-nhuFpc-j.mjs.map → ProfilePage-fzPpJZLL.mjs.map} +1 -1
- package/dist/_chunks/{PurchaseAuditLogs-zQio54Q3.mjs → PurchaseAuditLogs-KILCZp5x.mjs} +2 -2
- package/dist/_chunks/PurchaseAuditLogs-KILCZp5x.mjs.map +1 -0
- package/dist/_chunks/{PurchaseAuditLogs--hjsKHHW.js → PurchaseAuditLogs-bs-tiD4M.js} +2 -2
- package/dist/_chunks/PurchaseAuditLogs-bs-tiD4M.js.map +1 -0
- package/dist/_chunks/{PurchaseReviewWorkflows-P-FACd5s.js → PurchaseReviewWorkflows-cdGh-HED.js} +2 -2
- package/dist/_chunks/PurchaseReviewWorkflows-cdGh-HED.js.map +1 -0
- package/dist/_chunks/{PurchaseReviewWorkflows-zGnRRqrC.mjs → PurchaseReviewWorkflows-rVcCufNv.mjs} +2 -2
- package/dist/_chunks/PurchaseReviewWorkflows-rVcCufNv.mjs.map +1 -0
- package/dist/_chunks/{PurchaseSingleSignOn-BQ5PU-6E.mjs → PurchaseSingleSignOn-H8KWtk1K.mjs} +2 -2
- package/dist/_chunks/PurchaseSingleSignOn-H8KWtk1K.mjs.map +1 -0
- package/dist/_chunks/{PurchaseSingleSignOn-m2pnP9Ou.js → PurchaseSingleSignOn-OqlM4WkQ.js} +2 -2
- package/dist/_chunks/PurchaseSingleSignOn-OqlM4WkQ.js.map +1 -0
- package/dist/_chunks/{ReviewWorkflowsColumn-RLBHKpSx.js → ReviewWorkflowsColumn-K_K8J7hl.js} +8 -7
- package/dist/_chunks/{ReviewWorkflowsColumn-RLBHKpSx.js.map → ReviewWorkflowsColumn-K_K8J7hl.js.map} +1 -1
- package/dist/_chunks/{ReviewWorkflowsColumn-chpd_GQz.mjs → ReviewWorkflowsColumn-_MYDc8Ry.mjs} +8 -7
- package/dist/_chunks/{ReviewWorkflowsColumn-chpd_GQz.mjs.map → ReviewWorkflowsColumn-_MYDc8Ry.mjs.map} +1 -1
- package/dist/_chunks/{SelectRoles-J-cOmNPg.mjs → SelectRoles-5dhVQuV2.mjs} +3 -3
- package/dist/_chunks/{SelectRoles-J-cOmNPg.mjs.map → SelectRoles-5dhVQuV2.mjs.map} +1 -1
- package/dist/_chunks/{SelectRoles-G7h5eMx7.js → SelectRoles-Gyf7Ze1D.js} +3 -3
- package/dist/_chunks/{SelectRoles-G7h5eMx7.js.map → SelectRoles-Gyf7Ze1D.js.map} +1 -1
- package/dist/_chunks/{SettingsPage-RxG0zNmi.js → SettingsPage-jUSxQ0ho.js} +30 -29
- package/dist/_chunks/{SettingsPage-RxG0zNmi.js.map → SettingsPage-jUSxQ0ho.js.map} +1 -1
- package/dist/_chunks/{SettingsPage-LJF4HQu3.mjs → SettingsPage-s5Dj-61C.mjs} +30 -29
- package/dist/_chunks/{SettingsPage-LJF4HQu3.mjs.map → SettingsPage-s5Dj-61C.mjs.map} +1 -1
- package/dist/_chunks/{SingleSignOnPage-mUWnhmYK.mjs → SingleSignOnPage-TT4oryGn.mjs} +9 -8
- package/dist/_chunks/{SingleSignOnPage-mUWnhmYK.mjs.map → SingleSignOnPage-TT4oryGn.mjs.map} +1 -1
- package/dist/_chunks/{SingleSignOnPage-5tR5Di3-.js → SingleSignOnPage-b0O5egmz.js} +9 -8
- package/dist/_chunks/{SingleSignOnPage-5tR5Di3-.js.map → SingleSignOnPage-b0O5egmz.js.map} +1 -1
- package/dist/_chunks/{TokenTypeSelect-Pu2u4u60.js → TokenTypeSelect-6njzWQeV.js} +2 -2
- package/dist/_chunks/{TokenTypeSelect-Pu2u4u60.js.map → TokenTypeSelect-6njzWQeV.js.map} +1 -1
- package/dist/_chunks/{TokenTypeSelect--jNeSLmd.mjs → TokenTypeSelect-gkAdWU2y.mjs} +2 -2
- package/dist/_chunks/{TokenTypeSelect--jNeSLmd.mjs.map → TokenTypeSelect-gkAdWU2y.mjs.map} +1 -1
- package/dist/_chunks/{apiTokens--6uAVPWd.js → apiTokens-UtJ8rJCr.js} +2 -2
- package/dist/_chunks/{apiTokens--6uAVPWd.js.map → apiTokens-UtJ8rJCr.js.map} +1 -1
- package/dist/_chunks/{apiTokens-kqDQ_zpb.mjs → apiTokens-h0AaRihg.mjs} +2 -2
- package/dist/_chunks/{apiTokens-kqDQ_zpb.mjs.map → apiTokens-h0AaRihg.mjs.map} +1 -1
- package/dist/_chunks/{constants-7tUiUGm7.js → constants--ce1rwK1.js} +6 -6
- package/dist/_chunks/{constants-7tUiUGm7.js.map → constants--ce1rwK1.js.map} +1 -1
- package/dist/_chunks/{constants-oGpvjQcC.mjs → constants-3oj946tc.mjs} +6 -6
- package/dist/_chunks/{constants-oGpvjQcC.mjs.map → constants-3oj946tc.mjs.map} +1 -1
- package/dist/_chunks/{constants-pDLet6IX.js → constants-6LdQgFgh.js} +8 -7
- package/dist/_chunks/{constants-pDLet6IX.js.map → constants-6LdQgFgh.js.map} +1 -1
- package/dist/_chunks/{constants-jbMn10wi.js → constants-P-KABNaY.js} +10 -9
- package/dist/_chunks/{constants-jbMn10wi.js.map → constants-P-KABNaY.js.map} +1 -1
- package/dist/_chunks/{constants-qrsi70P9.mjs → constants-PCBjswmE.mjs} +8 -7
- package/dist/_chunks/{constants-qrsi70P9.mjs.map → constants-PCBjswmE.mjs.map} +1 -1
- package/dist/_chunks/{constants-8R4e_wL4.mjs → constants-cOPVDhHQ.mjs} +10 -9
- package/dist/_chunks/{constants-8R4e_wL4.mjs.map → constants-cOPVDhHQ.mjs.map} +1 -1
- package/dist/_chunks/{constants-I89xL90x.js → constants-ctzjEs9Q.js} +8 -7
- package/dist/_chunks/{constants-I89xL90x.js.map → constants-ctzjEs9Q.js.map} +1 -1
- package/dist/_chunks/{constants-wqvQZos7.mjs → constants-i_FIHwfG.mjs} +8 -7
- package/dist/_chunks/{constants-wqvQZos7.mjs.map → constants-i_FIHwfG.mjs.map} +1 -1
- package/dist/_chunks/{en-ZBAy2GQ0.mjs → en-ZwaF4t5c.mjs} +4 -4
- package/dist/_chunks/{en-ZBAy2GQ0.mjs.map → en-ZwaF4t5c.mjs.map} +1 -1
- package/dist/_chunks/{en-l5S8Gv-y.js → en-sP8T18rk.js} +4 -4
- package/dist/_chunks/{en-l5S8Gv-y.js.map → en-sP8T18rk.js.map} +1 -1
- package/dist/_chunks/{index-ydPzLfs7.js → index-5bHZZ1bQ.js} +13590 -13280
- package/dist/_chunks/index-5bHZZ1bQ.js.map +1 -0
- package/dist/_chunks/{index-yRyOfi01.mjs → index-pisKLsr8.mjs} +13592 -13283
- package/dist/_chunks/index-pisKLsr8.mjs.map +1 -0
- package/dist/_chunks/{reviewWorkflows-zkQBDTm_.mjs → reviewWorkflows-_QwFJdPf.mjs} +2 -2
- package/dist/_chunks/{reviewWorkflows-zkQBDTm_.mjs.map → reviewWorkflows-_QwFJdPf.mjs.map} +1 -1
- package/dist/_chunks/{reviewWorkflows-qkvwfbFl.js → reviewWorkflows-qY9w_Srd.js} +2 -2
- package/dist/_chunks/{reviewWorkflows-qkvwfbFl.js.map → reviewWorkflows-qY9w_Srd.js.map} +1 -1
- package/dist/_chunks/{transferTokens-8RJcRrF7.mjs → transferTokens-SaRdrMx_.mjs} +2 -2
- package/dist/_chunks/{transferTokens-8RJcRrF7.mjs.map → transferTokens-SaRdrMx_.mjs.map} +1 -1
- package/dist/_chunks/{transferTokens-mBIXwjnE.js → transferTokens-xykSY8aM.js} +2 -2
- package/dist/_chunks/{transferTokens-mBIXwjnE.js.map → transferTokens-xykSY8aM.js.map} +1 -1
- package/dist/_chunks/{useAdminRoles-2lOWH8Kw.js → useAdminRoles-2_gv0THe.js} +2 -2
- package/dist/_chunks/{useAdminRoles-2lOWH8Kw.js.map → useAdminRoles-2_gv0THe.js.map} +1 -1
- package/dist/_chunks/{useAdminRoles-0FSsVVVF.mjs → useAdminRoles-3IFEVyaA.mjs} +2 -2
- package/dist/_chunks/{useAdminRoles-0FSsVVVF.mjs.map → useAdminRoles-3IFEVyaA.mjs.map} +1 -1
- package/dist/_chunks/{useContentTypes-JzGTxjad.js → useContentTypes-9PaxXISe.js} +2 -2
- package/dist/_chunks/{useContentTypes-JzGTxjad.js.map → useContentTypes-9PaxXISe.js.map} +1 -1
- package/dist/_chunks/{useContentTypes-GOmCpezl.mjs → useContentTypes-rYXD3ohE.mjs} +2 -2
- package/dist/_chunks/{useContentTypes-GOmCpezl.mjs.map → useContentTypes-rYXD3ohE.mjs.map} +1 -1
- package/dist/_chunks/{useLicenseLimitNotification-U_gpKHX2.mjs → useLicenseLimitNotification-O_Ayr57V.mjs} +2 -2
- package/dist/_chunks/{useLicenseLimitNotification-U_gpKHX2.mjs.map → useLicenseLimitNotification-O_Ayr57V.mjs.map} +1 -1
- package/dist/_chunks/{useLicenseLimitNotification-MeYE7YEx.js → useLicenseLimitNotification-buPAIxAM.js} +2 -2
- package/dist/_chunks/{useLicenseLimitNotification-MeYE7YEx.js.map → useLicenseLimitNotification-buPAIxAM.js.map} +1 -1
- package/dist/_chunks/{useReviewWorkflows--Q0J_Ge3.js → useReviewWorkflows-UoegtQMR.js} +2 -2
- package/dist/_chunks/{useReviewWorkflows--Q0J_Ge3.js.map → useReviewWorkflows-UoegtQMR.js.map} +1 -1
- package/dist/_chunks/{useReviewWorkflows-JseCtS_K.mjs → useReviewWorkflows-rZwsjTIf.mjs} +2 -2
- package/dist/_chunks/{useReviewWorkflows-JseCtS_K.mjs.map → useReviewWorkflows-rZwsjTIf.mjs.map} +1 -1
- package/dist/_chunks/{useWebhooks-GBt4UUQt.mjs → useWebhooks-g4gI6Wxf.mjs} +2 -2
- package/dist/_chunks/{useWebhooks-GBt4UUQt.mjs.map → useWebhooks-g4gI6Wxf.mjs.map} +1 -1
- package/dist/_chunks/{useWebhooks-rkAK3kK5.js → useWebhooks-hX8Kb83I.js} +2 -2
- package/dist/_chunks/{useWebhooks-rkAK3kK5.js.map → useWebhooks-hX8Kb83I.js.map} +1 -1
- package/dist/_chunks/{validateWorkflow-Owsa2rpu.mjs → validateWorkflow-l4Zr41nC.mjs} +2 -2
- package/dist/_chunks/{validateWorkflow-Owsa2rpu.mjs.map → validateWorkflow-l4Zr41nC.mjs.map} +1 -1
- package/dist/_chunks/{validateWorkflow-K0uDqmsX.js → validateWorkflow-s4PVrbQP.js} +2 -2
- package/dist/_chunks/{validateWorkflow-K0uDqmsX.js.map → validateWorkflow-s4PVrbQP.js.map} +1 -1
- package/dist/admin/index.js +7 -6
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +7 -6
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/src/StrapiApp.d.ts +4 -0
- package/dist/admin/src/components/DescriptionComponentRenderer.d.ts +31 -0
- package/dist/admin/src/content-manager/pages/ListView/components/BulkActions/Actions.d.ts +51 -0
- package/dist/admin/src/content-manager/pages/ListView/components/BulkActions/{SelectedEntriesModal.d.ts → PublishAction.d.ts} +10 -10
- package/dist/admin/src/content-manager/pages/ListView/hooks/useAllowedActions.d.ts +2 -0
- package/dist/admin/src/core/apis/Plugin.d.ts +7 -6
- package/dist/admin/src/core/apis/content-manager.d.ts +58 -0
- package/dist/admin/src/hooks/useForceUpdate.d.ts +7 -0
- package/dist/admin/src/hooks/useIsMounted.d.ts +3 -0
- package/dist/admin/src/hooks/useThrottledCallback.d.ts +22 -0
- package/dist/admin/src/utils/shims.d.ts +4 -0
- package/package.json +13 -13
- package/dist/_chunks/PurchaseAuditLogs--hjsKHHW.js.map +0 -1
- package/dist/_chunks/PurchaseAuditLogs-zQio54Q3.mjs.map +0 -1
- package/dist/_chunks/PurchaseReviewWorkflows-P-FACd5s.js.map +0 -1
- package/dist/_chunks/PurchaseReviewWorkflows-zGnRRqrC.mjs.map +0 -1
- package/dist/_chunks/PurchaseSingleSignOn-BQ5PU-6E.mjs.map +0 -1
- package/dist/_chunks/PurchaseSingleSignOn-m2pnP9Ou.js.map +0 -1
- package/dist/_chunks/index-yRyOfi01.mjs.map +0 -1
- package/dist/_chunks/index-ydPzLfs7.js.map +0 -1
- package/dist/admin/src/content-manager/pages/ListView/components/BulkActions/Buttons.d.ts +0 -27
|
@@ -7,8 +7,8 @@ const helperPlugin = require("@strapi/helper-plugin");
|
|
|
7
7
|
const reactHelmet = require("react-helmet");
|
|
8
8
|
const reactIntl = require("react-intl");
|
|
9
9
|
const reactRedux = require("react-redux");
|
|
10
|
-
const AuthenticatedApp = require("./AuthenticatedApp-
|
|
11
|
-
const index = require("./index-
|
|
10
|
+
const AuthenticatedApp = require("./AuthenticatedApp-2mUijYOI.js");
|
|
11
|
+
const index = require("./index-5bHZZ1bQ.js");
|
|
12
12
|
require("semver/functions/lt");
|
|
13
13
|
require("semver/functions/valid");
|
|
14
14
|
require("immer");
|
|
@@ -38,12 +38,16 @@ require("lodash/omit");
|
|
|
38
38
|
require("qs");
|
|
39
39
|
require("react-query");
|
|
40
40
|
require("lodash/defaultsDeep");
|
|
41
|
-
require("react-window");
|
|
42
41
|
require("lodash/isEqual");
|
|
42
|
+
require("lodash/throttle");
|
|
43
|
+
require("lodash/isBoolean");
|
|
44
|
+
require("lodash/isEmpty");
|
|
45
|
+
require("lodash/isNaN");
|
|
46
|
+
require("lodash/toNumber");
|
|
47
|
+
require("react-window");
|
|
43
48
|
require("lodash/upperFirst");
|
|
44
49
|
require("prop-types");
|
|
45
50
|
require("lodash/fp");
|
|
46
|
-
require("lodash/isNaN");
|
|
47
51
|
require("lodash/take");
|
|
48
52
|
require("slate");
|
|
49
53
|
require("slate-history");
|
|
@@ -65,10 +69,7 @@ require("markdown-it-sup");
|
|
|
65
69
|
require("highlight.js/styles/solarized-dark.css");
|
|
66
70
|
require("codemirror5/addon/display/placeholder");
|
|
67
71
|
require("lodash/toString");
|
|
68
|
-
require("lodash/isEmpty");
|
|
69
72
|
require("react-dom");
|
|
70
|
-
require("lodash/isBoolean");
|
|
71
|
-
require("lodash/toNumber");
|
|
72
73
|
require("fractional-indexing");
|
|
73
74
|
require("lodash/uniqBy");
|
|
74
75
|
require("lodash/unset");
|
|
@@ -185,4 +186,4 @@ const ProtectedInstalledPluginsPage = () => {
|
|
|
185
186
|
};
|
|
186
187
|
exports.InstalledPluginsPage = InstalledPluginsPage;
|
|
187
188
|
exports.ProtectedInstalledPluginsPage = ProtectedInstalledPluginsPage;
|
|
188
|
-
//# sourceMappingURL=InstalledPluginsPage-
|
|
189
|
+
//# sourceMappingURL=InstalledPluginsPage-CsNrEWNA.js.map
|
package/dist/_chunks/{InstalledPluginsPage-fCay7xDO.js.map → InstalledPluginsPage-CsNrEWNA.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstalledPluginsPage-
|
|
1
|
+
{"version":3,"file":"InstalledPluginsPage-CsNrEWNA.js","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n ContentLayout,\n HeaderLayout,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n} from '@strapi/design-system';\nimport {\n CheckPagePermissions,\n LoadingIndicatorPage,\n useAPIErrorHandler,\n useFocusWhenNavigate,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useSelector } from 'react-redux';\n\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 useFocusWhenNavigate();\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: 'warning',\n message: formatAPIError(error),\n });\n }\n }, [data, error, formatAPIError, formatMessage, notifyStatus, toggleNotification]);\n\n if (isLoading) {\n return (\n <Layout>\n <Main aria-busy>\n <LoadingIndicatorPage />\n </Main>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Main>\n <HeaderLayout\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 <ContentLayout>\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 </ContentLayout>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.marketplace?.main}>\n <Helmet\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n />\n <InstalledPluginsPage />\n </CheckPagePermissions>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":["useIntl","useNotifyAT","useNotification","useAPIErrorHandler","useFocusWhenNavigate","useGetPluginsQuery","React","jsx","Layout","Main","LoadingIndicatorPage","jsxs","HeaderLayout","ContentLayout","Table","Thead","Tr","Th","Typography","Tbody","Td","useSelector","selectAdminPermissions","CheckPagePermissions","Helmet"],"mappings":"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"}
|
package/dist/_chunks/{InstalledPluginsPage-swMYXqyB.mjs → InstalledPluginsPage-QxMzZSAA.mjs}
RENAMED
|
@@ -5,8 +5,8 @@ import { useNotification, useAPIErrorHandler, useFocusWhenNavigate, LoadingIndic
|
|
|
5
5
|
import { Helmet } from "react-helmet";
|
|
6
6
|
import { useIntl } from "react-intl";
|
|
7
7
|
import { useSelector } from "react-redux";
|
|
8
|
-
import { s as selectAdminPermissions } from "./AuthenticatedApp-
|
|
9
|
-
import { q as useGetPluginsQuery } from "./index-
|
|
8
|
+
import { s as selectAdminPermissions } from "./AuthenticatedApp-nvm4fRcu.mjs";
|
|
9
|
+
import { q as useGetPluginsQuery } from "./index-pisKLsr8.mjs";
|
|
10
10
|
import "semver/functions/lt";
|
|
11
11
|
import "semver/functions/valid";
|
|
12
12
|
import "immer";
|
|
@@ -36,12 +36,16 @@ import "lodash/omit";
|
|
|
36
36
|
import "qs";
|
|
37
37
|
import "react-query";
|
|
38
38
|
import "lodash/defaultsDeep";
|
|
39
|
-
import "react-window";
|
|
40
39
|
import "lodash/isEqual";
|
|
40
|
+
import "lodash/throttle";
|
|
41
|
+
import "lodash/isBoolean";
|
|
42
|
+
import "lodash/isEmpty";
|
|
43
|
+
import "lodash/isNaN";
|
|
44
|
+
import "lodash/toNumber";
|
|
45
|
+
import "react-window";
|
|
41
46
|
import "lodash/upperFirst";
|
|
42
47
|
import "prop-types";
|
|
43
48
|
import "lodash/fp";
|
|
44
|
-
import "lodash/isNaN";
|
|
45
49
|
import "lodash/take";
|
|
46
50
|
import "slate";
|
|
47
51
|
import "slate-history";
|
|
@@ -63,10 +67,7 @@ import "markdown-it-sup";
|
|
|
63
67
|
import "highlight.js/styles/solarized-dark.css";
|
|
64
68
|
import "codemirror5/addon/display/placeholder";
|
|
65
69
|
import "lodash/toString";
|
|
66
|
-
import "lodash/isEmpty";
|
|
67
70
|
import "react-dom";
|
|
68
|
-
import "lodash/isBoolean";
|
|
69
|
-
import "lodash/toNumber";
|
|
70
71
|
import "fractional-indexing";
|
|
71
72
|
import "lodash/uniqBy";
|
|
72
73
|
import "lodash/unset";
|
|
@@ -166,4 +167,4 @@ export {
|
|
|
166
167
|
InstalledPluginsPage,
|
|
167
168
|
ProtectedInstalledPluginsPage
|
|
168
169
|
};
|
|
169
|
-
//# sourceMappingURL=InstalledPluginsPage-
|
|
170
|
+
//# sourceMappingURL=InstalledPluginsPage-QxMzZSAA.mjs.map
|
package/dist/_chunks/{InstalledPluginsPage-swMYXqyB.mjs.map → InstalledPluginsPage-QxMzZSAA.mjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstalledPluginsPage-
|
|
1
|
+
{"version":3,"file":"InstalledPluginsPage-QxMzZSAA.mjs","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n ContentLayout,\n HeaderLayout,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n} from '@strapi/design-system';\nimport {\n CheckPagePermissions,\n LoadingIndicatorPage,\n useAPIErrorHandler,\n useFocusWhenNavigate,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useSelector } from 'react-redux';\n\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 useFocusWhenNavigate();\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: 'warning',\n message: formatAPIError(error),\n });\n }\n }, [data, error, formatAPIError, formatMessage, notifyStatus, toggleNotification]);\n\n if (isLoading) {\n return (\n <Layout>\n <Main aria-busy>\n <LoadingIndicatorPage />\n </Main>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Main>\n <HeaderLayout\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 <ContentLayout>\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 </ContentLayout>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.marketplace?.main}>\n <Helmet\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n />\n <InstalledPluginsPage />\n </CheckPagePermissions>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ const designSystem = require("@strapi/design-system");
|
|
|
4
4
|
const helperPlugin = require("@strapi/helper-plugin");
|
|
5
5
|
const Icons = require("@strapi/icons");
|
|
6
6
|
const reactIntl = require("react-intl");
|
|
7
|
-
const index = require("./index-
|
|
7
|
+
const index = require("./index-5bHZZ1bQ.js");
|
|
8
8
|
const constants = require("./constants-L1I-Y-RJ.js");
|
|
9
9
|
const styled = require("styled-components");
|
|
10
10
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
@@ -85,4 +85,4 @@ exports.Back = Back;
|
|
|
85
85
|
exports.DragLayerRendered = DragLayerRendered;
|
|
86
86
|
exports.Header = Header;
|
|
87
87
|
exports.Root = Root;
|
|
88
|
-
//# sourceMappingURL=Layout-
|
|
88
|
+
//# sourceMappingURL=Layout-BfXkf1tg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layout-
|
|
1
|
+
{"version":3,"file":"Layout-BfXkf1tg.js","sources":["../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/components/StageDragPreview.tsx","../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/components/Layout.tsx"],"sourcesContent":["import { Flex, Typography } from '@strapi/design-system';\nimport { pxToRem } from '@strapi/helper-plugin';\nimport { CarretDown } from '@strapi/icons';\nimport styled from 'styled-components';\n\nconst Toggle = styled(Flex)`\n svg path {\n fill: ${({ theme }) => theme.colors.neutral600};\n }\n`;\n\nexport type StageDragPreviewType = {\n name: string | null;\n};\n\nexport const StageDragPreview = ({ name }: StageDragPreviewType) => {\n return (\n <Flex\n background=\"primary100\"\n borderStyle=\"dashed\"\n borderColor=\"primary600\"\n borderWidth=\"1px\"\n gap={3}\n hasRadius\n padding={3}\n shadow=\"tableShadow\"\n width={pxToRem(300)}\n >\n <Toggle\n alignItems=\"center\"\n background=\"neutral200\"\n borderRadius=\"50%\"\n height={6}\n justifyContent=\"center\"\n width={6}\n >\n <CarretDown width={`${8 / 16}rem`} />\n </Toggle>\n\n <Typography fontWeight=\"bold\">{name}</Typography>\n </Flex>\n );\n};\n","import React, { PropsWithChildren } from 'react';\n\nimport { ContentLayout, HeaderLayout, Layout, Main } from '@strapi/design-system';\nimport { Link, SettingsPageTitle } from '@strapi/helper-plugin';\nimport { ArrowLeft } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { DragLayer } from '../../../../../../../../admin/src/components/DragLayer';\nimport { DRAG_DROP_TYPES } from '../constants';\n\nimport { StageDragPreview } from './StageDragPreview';\n\nconst DragLayerRendered = () => {\n return (\n <DragLayer\n renderItem={(item) => {\n if (item.type === DRAG_DROP_TYPES.STAGE) {\n return <StageDragPreview name={typeof item.item === 'string' ? item.item : null} />;\n }\n }}\n />\n );\n};\n\nconst Root: React.FC<PropsWithChildren> = ({ children }) => {\n return (\n <Layout>\n <Main tabIndex={-1}>\n <ContentLayout>{children}</ContentLayout>\n </Main>\n </Layout>\n );\n};\n\ntype BackProps = {\n href: string;\n};\nconst Back: React.FC<BackProps> = ({ href }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Link startIcon={<ArrowLeft />} to={href}>\n {formatMessage({\n id: 'global.back',\n defaultMessage: 'Back',\n })}\n </Link>\n );\n};\n\ntype HeaderProps = {\n title: string;\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n};\nconst Header: React.FC<HeaderProps> = ({ title, subtitle, navigationAction, primaryAction }) => {\n return (\n <>\n <SettingsPageTitle name={title} />\n <HeaderLayout\n navigationAction={navigationAction}\n primaryAction={primaryAction}\n title={title}\n subtitle={subtitle}\n />\n </>\n );\n};\n\nexport { Back, DragLayerRendered, Header, Root };\n"],"names":["styled","Flex","jsxs","pxToRem","jsx","CarretDown","Typography","DragLayer","DRAG_DROP_TYPES","Layout","Main","ContentLayout","useIntl","Link","ArrowLeft","Fragment","SettingsPageTitle","HeaderLayout"],"mappings":";;;;;;;;;;;AAKA,MAAM,SAASA,gBAAAA,QAAOC,aAAAA,IAAI;AAAA;AAAA,YAEd,CAAC,EAAE,MAAA,MAAY,MAAM,OAAO,UAAU;AAAA;AAAA;AAQ3C,MAAM,mBAAmB,CAAC,EAAE,WAAiC;AAEhE,SAAAC,2BAAA;AAAA,IAACD,aAAA;AAAA,IAAA;AAAA,MACC,YAAW;AAAA,MACX,aAAY;AAAA,MACZ,aAAY;AAAA,MACZ,aAAY;AAAA,MACZ,KAAK;AAAA,MACL,WAAS;AAAA,MACT,SAAS;AAAA,MACT,QAAO;AAAA,MACP,OAAOE,qBAAQ,GAAG;AAAA,MAElB,UAAA;AAAA,QAAAC,2BAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,YAAW;AAAA,YACX,YAAW;AAAA,YACX,cAAa;AAAA,YACb,QAAQ;AAAA,YACR,gBAAe;AAAA,YACf,OAAO;AAAA,YAEP,yCAACC,MAAW,YAAA,EAAA,OAAO,GAAG,IAAI,EAAE,OAAO;AAAA,UAAA;AAAA,QACrC;AAAA,QAECD,2BAAA,IAAAE,aAAA,YAAA,EAAW,YAAW,QAAQ,UAAK,MAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG1C;AC9BA,MAAM,oBAAoB,MAAM;AAE5B,SAAAF,2BAAA;AAAA,IAACG,MAAA;AAAA,IAAA;AAAA,MACC,YAAY,CAAC,SAAS;AAChB,YAAA,KAAK,SAASC,UAAA,gBAAgB,OAAO;AAChC,iBAAAJ,+BAAC,oBAAiB,MAAM,OAAO,KAAK,SAAS,WAAW,KAAK,OAAO,KAAM,CAAA;AAAA,QACnF;AAAA,MACF;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA,MAAM,OAAoC,CAAC,EAAE,eAAe;AAExD,SAAAA,2BAAAA,IAACK,aAAAA,QACC,EAAA,UAAAL,2BAAAA,IAACM,aAAAA,MAAK,EAAA,UAAU,IACd,UAACN,2BAAA,IAAAO,4BAAA,EAAe,SAAS,CAAA,EAAA,CAC3B,EACF,CAAA;AAEJ;AAKA,MAAM,OAA4B,CAAC,EAAE,WAAW;AACxC,QAAA,EAAE,kBAAkBC,UAAAA;AAGxB,SAAAR,+BAACS,aAAAA,QAAK,WAAWT,2BAAAA,IAACU,MAAAA,YAAU,CAAA,GAAI,IAAI,MACjC,UAAc,cAAA;AAAA,IACb,IAAI;AAAA,IACJ,gBAAgB;AAAA,EACjB,CAAA,EACH,CAAA;AAEJ;AASA,MAAM,SAAgC,CAAC,EAAE,OAAO,UAAU,kBAAkB,oBAAoB;AAC9F,SAEIZ,2BAAA,KAAAa,qBAAA,EAAA,UAAA;AAAA,IAACX,2BAAAA,IAAAY,aAAA,mBAAA,EAAkB,MAAM,MAAO,CAAA;AAAA,IAChCZ,2BAAA;AAAA,MAACa,aAAA;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,IACF;AAAA,EACF,EAAA,CAAA;AAEJ;;;;;"}
|
|
@@ -3,7 +3,7 @@ import { Flex, Typography, Layout, Main, ContentLayout, HeaderLayout } from "@st
|
|
|
3
3
|
import { pxToRem, Link, SettingsPageTitle } from "@strapi/helper-plugin";
|
|
4
4
|
import { CarretDown, ArrowLeft } from "@strapi/icons";
|
|
5
5
|
import { useIntl } from "react-intl";
|
|
6
|
-
import { P as DragLayer } from "./index-
|
|
6
|
+
import { P as DragLayer } from "./index-pisKLsr8.mjs";
|
|
7
7
|
import { D as DRAG_DROP_TYPES } from "./constants-8sAt6dKz.mjs";
|
|
8
8
|
import styled from "styled-components";
|
|
9
9
|
const Toggle = styled(Flex)`
|
|
@@ -84,4 +84,4 @@ export {
|
|
|
84
84
|
Header as H,
|
|
85
85
|
Root as R
|
|
86
86
|
};
|
|
87
|
-
//# sourceMappingURL=Layout-
|
|
87
|
+
//# sourceMappingURL=Layout-BquZQAb2.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layout-
|
|
1
|
+
{"version":3,"file":"Layout-BquZQAb2.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/components/StageDragPreview.tsx","../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/components/Layout.tsx"],"sourcesContent":["import { Flex, Typography } from '@strapi/design-system';\nimport { pxToRem } from '@strapi/helper-plugin';\nimport { CarretDown } from '@strapi/icons';\nimport styled from 'styled-components';\n\nconst Toggle = styled(Flex)`\n svg path {\n fill: ${({ theme }) => theme.colors.neutral600};\n }\n`;\n\nexport type StageDragPreviewType = {\n name: string | null;\n};\n\nexport const StageDragPreview = ({ name }: StageDragPreviewType) => {\n return (\n <Flex\n background=\"primary100\"\n borderStyle=\"dashed\"\n borderColor=\"primary600\"\n borderWidth=\"1px\"\n gap={3}\n hasRadius\n padding={3}\n shadow=\"tableShadow\"\n width={pxToRem(300)}\n >\n <Toggle\n alignItems=\"center\"\n background=\"neutral200\"\n borderRadius=\"50%\"\n height={6}\n justifyContent=\"center\"\n width={6}\n >\n <CarretDown width={`${8 / 16}rem`} />\n </Toggle>\n\n <Typography fontWeight=\"bold\">{name}</Typography>\n </Flex>\n );\n};\n","import React, { PropsWithChildren } from 'react';\n\nimport { ContentLayout, HeaderLayout, Layout, Main } from '@strapi/design-system';\nimport { Link, SettingsPageTitle } from '@strapi/helper-plugin';\nimport { ArrowLeft } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { DragLayer } from '../../../../../../../../admin/src/components/DragLayer';\nimport { DRAG_DROP_TYPES } from '../constants';\n\nimport { StageDragPreview } from './StageDragPreview';\n\nconst DragLayerRendered = () => {\n return (\n <DragLayer\n renderItem={(item) => {\n if (item.type === DRAG_DROP_TYPES.STAGE) {\n return <StageDragPreview name={typeof item.item === 'string' ? item.item : null} />;\n }\n }}\n />\n );\n};\n\nconst Root: React.FC<PropsWithChildren> = ({ children }) => {\n return (\n <Layout>\n <Main tabIndex={-1}>\n <ContentLayout>{children}</ContentLayout>\n </Main>\n </Layout>\n );\n};\n\ntype BackProps = {\n href: string;\n};\nconst Back: React.FC<BackProps> = ({ href }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Link startIcon={<ArrowLeft />} to={href}>\n {formatMessage({\n id: 'global.back',\n defaultMessage: 'Back',\n })}\n </Link>\n );\n};\n\ntype HeaderProps = {\n title: string;\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n};\nconst Header: React.FC<HeaderProps> = ({ title, subtitle, navigationAction, primaryAction }) => {\n return (\n <>\n <SettingsPageTitle name={title} />\n <HeaderLayout\n navigationAction={navigationAction}\n primaryAction={primaryAction}\n title={title}\n subtitle={subtitle}\n />\n </>\n );\n};\n\nexport { Back, DragLayerRendered, Header, Root };\n"],"names":[],"mappings":";;;;;;;;AAKA,MAAM,SAAS,OAAO,IAAI;AAAA;AAAA,YAEd,CAAC,EAAE,MAAA,MAAY,MAAM,OAAO,UAAU;AAAA;AAAA;AAQ3C,MAAM,mBAAmB,CAAC,EAAE,WAAiC;AAEhE,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,YAAW;AAAA,MACX,aAAY;AAAA,MACZ,aAAY;AAAA,MACZ,aAAY;AAAA,MACZ,KAAK;AAAA,MACL,WAAS;AAAA,MACT,SAAS;AAAA,MACT,QAAO;AAAA,MACP,OAAO,QAAQ,GAAG;AAAA,MAElB,UAAA;AAAA,QAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,YAAW;AAAA,YACX,YAAW;AAAA,YACX,cAAa;AAAA,YACb,QAAQ;AAAA,YACR,gBAAe;AAAA,YACf,OAAO;AAAA,YAEP,8BAAC,YAAW,EAAA,OAAO,GAAG,IAAI,EAAE,OAAO;AAAA,UAAA;AAAA,QACrC;AAAA,QAEC,oBAAA,YAAA,EAAW,YAAW,QAAQ,UAAK,MAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG1C;AC9BA,MAAM,oBAAoB,MAAM;AAE5B,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,YAAY,CAAC,SAAS;AAChB,YAAA,KAAK,SAAS,gBAAgB,OAAO;AAChC,iBAAA,oBAAC,oBAAiB,MAAM,OAAO,KAAK,SAAS,WAAW,KAAK,OAAO,KAAM,CAAA;AAAA,QACnF;AAAA,MACF;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA,MAAM,OAAoC,CAAC,EAAE,eAAe;AAExD,SAAA,oBAAC,QACC,EAAA,UAAA,oBAAC,MAAK,EAAA,UAAU,IACd,UAAC,oBAAA,eAAA,EAAe,SAAS,CAAA,EAAA,CAC3B,EACF,CAAA;AAEJ;AAKA,MAAM,OAA4B,CAAC,EAAE,WAAW;AACxC,QAAA,EAAE,kBAAkB;AAGxB,SAAA,oBAAC,QAAK,WAAW,oBAAC,YAAU,CAAA,GAAI,IAAI,MACjC,UAAc,cAAA;AAAA,IACb,IAAI;AAAA,IACJ,gBAAgB;AAAA,EACjB,CAAA,EACH,CAAA;AAEJ;AASA,MAAM,SAAgC,CAAC,EAAE,OAAO,UAAU,kBAAkB,oBAAoB;AAC9F,SAEI,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAC,oBAAA,mBAAA,EAAkB,MAAM,MAAO,CAAA;AAAA,IAChC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,IACF;AAAA,EACF,EAAA,CAAA;AAEJ;"}
|
|
@@ -6,12 +6,12 @@ import { Plus, Pencil, Trash } from "@strapi/icons";
|
|
|
6
6
|
import { useIntl } from "react-intl";
|
|
7
7
|
import { useHistory } from "react-router-dom";
|
|
8
8
|
import styled from "styled-components";
|
|
9
|
-
import { j as useTypedSelector, m as useLicenseLimits } from "./index-
|
|
10
|
-
import { u as useContentTypes } from "./useContentTypes-
|
|
11
|
-
import { H as Header, R as Root } from "./Layout-
|
|
9
|
+
import { j as useTypedSelector, m as useLicenseLimits } from "./index-pisKLsr8.mjs";
|
|
10
|
+
import { u as useContentTypes } from "./useContentTypes-rYXD3ohE.mjs";
|
|
11
|
+
import { H as Header, R as Root } from "./Layout-BquZQAb2.mjs";
|
|
12
12
|
import { L as LimitsModal } from "./LimitsModal-slvRtty7.mjs";
|
|
13
13
|
import { C as CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME } from "./constants-8sAt6dKz.mjs";
|
|
14
|
-
import { u as useReviewWorkflows } from "./useReviewWorkflows-
|
|
14
|
+
import { u as useReviewWorkflows } from "./useReviewWorkflows-rZwsjTIf.mjs";
|
|
15
15
|
import "react-dom/client";
|
|
16
16
|
import "invariant";
|
|
17
17
|
import "lodash/isFunction";
|
|
@@ -35,15 +35,19 @@ import "immer";
|
|
|
35
35
|
import "lodash/get";
|
|
36
36
|
import "lodash/set";
|
|
37
37
|
import "lodash/defaultsDeep";
|
|
38
|
+
import "lodash/isEqual";
|
|
39
|
+
import "lodash/throttle";
|
|
40
|
+
import "lodash/isBoolean";
|
|
41
|
+
import "lodash/isEmpty";
|
|
42
|
+
import "lodash/isNaN";
|
|
43
|
+
import "lodash/toNumber";
|
|
38
44
|
import "react-dnd";
|
|
39
45
|
import "react-dnd-html5-backend";
|
|
40
46
|
import "react-window";
|
|
41
47
|
import "lodash/cloneDeep";
|
|
42
|
-
import "lodash/isEqual";
|
|
43
48
|
import "lodash/upperFirst";
|
|
44
49
|
import "prop-types";
|
|
45
50
|
import "lodash/fp";
|
|
46
|
-
import "lodash/isNaN";
|
|
47
51
|
import "lodash/take";
|
|
48
52
|
import "slate";
|
|
49
53
|
import "slate-history";
|
|
@@ -65,16 +69,13 @@ import "markdown-it-sup";
|
|
|
65
69
|
import "highlight.js/styles/solarized-dark.css";
|
|
66
70
|
import "codemirror5/addon/display/placeholder";
|
|
67
71
|
import "lodash/toString";
|
|
68
|
-
import "lodash/isEmpty";
|
|
69
72
|
import "react-dom";
|
|
70
|
-
import "lodash/isBoolean";
|
|
71
|
-
import "lodash/toNumber";
|
|
72
73
|
import "fractional-indexing";
|
|
73
74
|
import "lodash/uniqBy";
|
|
74
75
|
import "lodash/unset";
|
|
75
76
|
import "lodash/isArray";
|
|
76
77
|
import "date-fns/parseISO";
|
|
77
|
-
import "./reviewWorkflows-
|
|
78
|
+
import "./reviewWorkflows-_QwFJdPf.mjs";
|
|
78
79
|
const ActionLink = styled(Link)`
|
|
79
80
|
align-items: center;
|
|
80
81
|
height: ${pxToRem(32)};
|
|
@@ -343,4 +344,4 @@ export {
|
|
|
343
344
|
ProtectedReviewWorkflowsPage,
|
|
344
345
|
ReviewWorkflowsListView
|
|
345
346
|
};
|
|
346
|
-
//# sourceMappingURL=ListPage-
|
|
347
|
+
//# sourceMappingURL=ListPage-4xBsXFzo.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListPage-G5KMMFsZ.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/ListPage.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n Flex,\n IconButton,\n Loader,\n Table,\n Thead,\n Tbody,\n Tr,\n Td,\n TFooter,\n Th,\n Typography,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ConfirmDialog,\n Link,\n LinkButton,\n onRowClick,\n pxToRem,\n useAPIErrorHandler,\n useNotification,\n useRBAC,\n useTracking,\n CheckPagePermissions,\n} from '@strapi/helper-plugin';\nimport { Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { useTypedSelector } from '../../../../../../../admin/src/core/store/hooks';\nimport { useContentTypes } from '../../../../../../../admin/src/hooks/useContentTypes';\nimport { useLicenseLimits } from '../../../../hooks/useLicenseLimits';\n\nimport * as Layout from './components/Layout';\nimport { LimitsModal } from './components/LimitsModal';\nimport { CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME } from './constants';\nimport { useReviewWorkflows } from './hooks/useReviewWorkflows';\n\nconst ActionLink = styled(Link)`\n align-items: center;\n height: ${pxToRem(32)};\n display: flex;\n justify-content: center;\n padding: ${({ theme }) => `${theme.spaces[2]}}`};\n width: ${pxToRem(32)};\n\n svg {\n height: ${pxToRem(12)};\n width: ${pxToRem(12)};\n\n path {\n fill: ${({ theme }) => theme.colors.neutral500};\n }\n }\n\n &:hover,\n &:focus {\n svg {\n path {\n fill: ${({ theme }) => theme.colors.neutral800};\n }\n }\n }\n`;\n\nexport const ReviewWorkflowsListView = () => {\n const { formatMessage } = useIntl();\n const { push } = useHistory();\n const { trackUsage } = useTracking();\n const [workflowToDelete, setWorkflowToDelete] = React.useState<string | null>(null);\n const [showLimitModal, setShowLimitModal] = React.useState<boolean>(false);\n const { collectionTypes, singleTypes, isLoading: isLoadingModels } = useContentTypes();\n const { meta, workflows, isLoading, deleteWorkflow } = useReviewWorkflows();\n const [isDeleting, setIsDeleting] = React.useState(false);\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n const { getFeature, isLoading: isLicenseLoading } = useLicenseLimits();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['review-workflows']\n );\n const {\n allowedActions: { canCreate, canDelete },\n } = useRBAC(permissions);\n\n const limits = getFeature('review-workflows');\n const numberOfWorkflows = limits?.[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME] as string;\n\n const getContentTypeDisplayName = (uid: string) => {\n const contentType = [...collectionTypes, ...singleTypes].find(\n (contentType) => contentType.uid === uid\n );\n\n return contentType?.info.displayName;\n };\n\n const handleDeleteWorkflow = (workflowId: string) => {\n setWorkflowToDelete(workflowId);\n };\n\n const toggleConfirmDeleteDialog = () => {\n setWorkflowToDelete(null);\n };\n\n const handleConfirmDeleteDialog = async () => {\n if (!workflowToDelete) return;\n\n try {\n setIsDeleting(true);\n\n const res = await deleteWorkflow({ id: workflowToDelete });\n\n if ('error' in res) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWorkflowToDelete(null);\n\n toggleNotification({\n type: 'success',\n message: { id: 'notification.success.deleted', defaultMessage: 'Deleted' },\n });\n } catch (error) {\n toggleNotification({\n type: 'warning',\n message: {\n id: 'notification.error.unexpected',\n defaultMessage: 'An error occurred',\n },\n });\n } finally {\n setIsDeleting(false);\n }\n };\n\n /**\n * If the current license has a limit:\n * check if the total count of workflows or stages exceeds that limit and display\n * the limits modal on page load. It can be closed by the user, but the\n * API will throw an error in case they try to create a new workflow or update the\n * stages.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now). In case they are trying to create the 201st workflow/ stage\n * the API will throw an error.\n *\n */\n React.useEffect(() => {\n if (!isLoading && !isLicenseLoading) {\n if (numberOfWorkflows && meta && meta?.workflowCount > parseInt(numberOfWorkflows, 10)) {\n setShowLimitModal(true);\n }\n }\n }, [isLicenseLoading, isLoading, meta, meta?.workflowCount, numberOfWorkflows]);\n\n return (\n <>\n <Layout.Header\n primaryAction={\n canCreate && (\n <LinkButton\n startIcon={<Plus />}\n size=\"S\"\n // @ts-expect-error - types are not inferred correctly through the as prop.\n to=\"/settings/review-workflows/create\"\n onClick={(event) => {\n /**\n * If the current license has a workflow limit:\n * check if the total count of workflows exceeds that limit. If so,\n * prevent the navigation and show the limits overlay.\n *\n * If the current license does not have a limit (e.g. offline license):\n * allow the user to navigate to the create-view. In case they exceed the\n * current hard-limit of 200 they will see an error thrown by the API.\n */\n\n if (\n numberOfWorkflows &&\n meta &&\n meta?.workflowCount >= parseInt(numberOfWorkflows, 10)\n ) {\n event.preventDefault();\n setShowLimitModal(true);\n } else {\n trackUsage('willCreateWorkflow');\n }\n }}\n >\n {formatMessage({\n id: 'Settings.review-workflows.list.page.create',\n defaultMessage: 'Create new workflow',\n })}\n </LinkButton>\n )\n }\n subtitle={formatMessage({\n id: 'Settings.review-workflows.list.page.subtitle',\n defaultMessage: 'Manage your content review process',\n })}\n title={formatMessage({\n id: 'Settings.review-workflows.list.page.title',\n defaultMessage: 'Review Workflows',\n })}\n />\n\n <Layout.Root>\n {isLoading || isLoadingModels ? (\n <Flex justifyContent=\"center\">\n <Loader>\n {formatMessage({\n id: 'Settings.review-workflows.page.list.isLoading',\n defaultMessage: 'Workflows are loading',\n })}\n </Loader>\n </Flex>\n ) : (\n <Table\n colCount={3}\n footer={\n // TODO: we should be able to use a link here instead of an (inaccessible onClick) handler\n canCreate && (\n <TFooter\n icon={<Plus />}\n onClick={() => {\n /**\n * If the current license has a workflow limit:\n * check if the total count of workflows exceeds that limit\n *\n * If the current license does not have a limit (e.g. offline license):\n * allow the user to navigate to the create-view. In case they exceed the\n * current hard-limit of 200 they will see an error thrown by the API.\n */\n\n if (\n numberOfWorkflows &&\n meta &&\n meta?.workflowCount >= parseInt(numberOfWorkflows, 10)\n ) {\n setShowLimitModal(true);\n } else {\n push('/settings/review-workflows/create');\n trackUsage('willCreateWorkflow');\n }\n }}\n >\n {formatMessage({\n id: 'Settings.review-workflows.list.page.create',\n defaultMessage: 'Create new workflow',\n })}\n </TFooter>\n )\n }\n rowCount={1}\n >\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\">\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.name.title',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\">\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.stages.title',\n defaultMessage: 'Stages',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\">\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.contentTypes.title',\n defaultMessage: 'Content Types',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.actions.title',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n\n <Tbody>\n {workflows?.map((workflow) => (\n <Tr\n {...onRowClick({\n fn(event) {\n const el = event.target as HTMLElement;\n // Abort row onClick event when the user click on the delete button\n if (el.nodeName === 'BUTTON') {\n return;\n }\n\n push(`/settings/review-workflows/${workflow.id}`);\n },\n })}\n key={`workflow-${workflow.id}`}\n >\n <Td width={pxToRem(250)}>\n <Typography textColor=\"neutral800\" fontWeight=\"bold\" ellipsis>\n {workflow.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{workflow.stages.length}</Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {(workflow?.contentTypes ?? []).map(getContentTypeDisplayName).join(', ')}\n </Typography>\n </Td>\n <Td>\n <Flex alignItems=\"center\" justifyContent=\"end\">\n <ActionLink\n to={`/settings/review-workflows/${workflow.id}`}\n aria-label={formatMessage(\n {\n id: 'Settings.review-workflows.list.page.list.column.actions.edit.label',\n defaultMessage: 'Edit {name}',\n },\n { name: workflow.name }\n )}\n >\n <Pencil />\n </ActionLink>\n\n {workflows.length > 1 && canDelete && (\n <IconButton\n aria-label={formatMessage(\n {\n id: 'Settings.review-workflows.list.page.list.column.actions.delete.label',\n defaultMessage: 'Delete {name}',\n },\n { name: 'Default workflow' }\n )}\n icon={<Trash />}\n noBorder\n onClick={() => {\n handleDeleteWorkflow(String(workflow.id));\n }}\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n )}\n\n <ConfirmDialog\n bodyText={{\n id: 'Settings.review-workflows.list.page.delete.confirm.body',\n defaultMessage:\n 'If you remove this worfklow, all stage-related information will be removed for this content-type. Are you sure you want to remove it?',\n }}\n isConfirmButtonLoading={isDeleting}\n isOpen={!!workflowToDelete}\n onToggleDialog={toggleConfirmDeleteDialog}\n onConfirm={handleConfirmDeleteDialog}\n />\n\n <LimitsModal.Root isOpen={showLimitModal} onClose={() => setShowLimitModal(false)}>\n <LimitsModal.Title>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.workflows.limit.title',\n defaultMessage: 'You’ve reached the limit of workflows in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.workflows.limit.body',\n defaultMessage: 'Delete a workflow or contact Sales to enable more workflows.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n </Layout.Root>\n </>\n );\n};\n\nexport const ProtectedReviewWorkflowsPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['review-workflows']?.main\n );\n\n return (\n <CheckPagePermissions permissions={permissions}>\n <ReviewWorkflowsListView />\n </CheckPagePermissions>\n );\n};\n"],"names":["React","contentType","Layout.Header","Layout.Root"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,MAAM,aAAa,OAAO,IAAI;AAAA;AAAA,YAElB,QAAQ,EAAE,CAAC;AAAA;AAAA;AAAA,aAGV,CAAC,EAAE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,GAAG;AAAA,WACtC,QAAQ,EAAE,CAAC;AAAA;AAAA;AAAA,cAGR,QAAQ,EAAE,CAAC;AAAA,aACZ,QAAQ,EAAE,CAAC;AAAA;AAAA;AAAA,cAGV,CAAC,EAAE,MAAA,MAAY,MAAM,OAAO,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAQpC,CAAC,EAAE,MAAA,MAAY,MAAM,OAAO,UAAU;AAAA;AAAA;AAAA;AAAA;AAM/C,MAAM,0BAA0B,MAAM;AACrC,QAAA,EAAE,kBAAkB;AACpB,QAAA,EAAE,SAAS;AACX,QAAA,EAAE,eAAe;AACvB,QAAM,CAAC,kBAAkB,mBAAmB,IAAIA,eAAM,SAAwB,IAAI;AAClF,QAAM,CAAC,gBAAgB,iBAAiB,IAAIA,eAAM,SAAkB,KAAK;AACzE,QAAM,EAAE,iBAAiB,aAAa,WAAW,gBAAA,IAAoB;AACrE,QAAM,EAAE,MAAM,WAAW,WAAW,eAAA,IAAmB;AACvD,QAAM,CAAC,YAAY,aAAa,IAAIA,eAAM,SAAS,KAAK;AACxD,QAAM,EAAE,yBAAyB,eAAe,IAAI,mBAAmB;AACvE,QAAM,qBAAqB;AAC3B,QAAM,EAAE,YAAY,WAAW,qBAAqB,iBAAiB;AACrE,QAAM,cAAc;AAAA,IAClB,CAAC,UAAU,MAAM,UAAU,YAAY,WAAW,kBAAkB;AAAA,EAAA;AAEhE,QAAA;AAAA,IACJ,gBAAgB,EAAE,WAAW,UAAU;AAAA,EAAA,IACrC,QAAQ,WAAW;AAEjB,QAAA,SAAS,WAAW,kBAAkB;AACtC,QAAA,oBAAoB,SAAS,mCAAmC;AAEhE,QAAA,4BAA4B,CAAC,QAAgB;AACjD,UAAM,cAAc,CAAC,GAAG,iBAAiB,GAAG,WAAW,EAAE;AAAA,MACvD,CAACC,iBAAgBA,aAAY,QAAQ;AAAA,IAAA;AAGvC,WAAO,aAAa,KAAK;AAAA,EAAA;AAGrB,QAAA,uBAAuB,CAAC,eAAuB;AACnD,wBAAoB,UAAU;AAAA,EAAA;AAGhC,QAAM,4BAA4B,MAAM;AACtC,wBAAoB,IAAI;AAAA,EAAA;AAG1B,QAAM,4BAA4B,YAAY;AAC5C,QAAI,CAAC;AAAkB;AAEnB,QAAA;AACF,oBAAc,IAAI;AAElB,YAAM,MAAM,MAAM,eAAe,EAAE,IAAI,iBAAkB,CAAA;AAEzD,UAAI,WAAW,KAAK;AACC,2BAAA;AAAA,UACjB,MAAM;AAAA,UACN,SAAS,eAAe,IAAI,KAAK;AAAA,QAAA,CAClC;AAED;AAAA,MACF;AAEA,0BAAoB,IAAI;AAEL,yBAAA;AAAA,QACjB,MAAM;AAAA,QACN,SAAS,EAAE,IAAI,gCAAgC,gBAAgB,UAAU;AAAA,MAAA,CAC1E;AAAA,aACM,OAAO;AACK,yBAAA;AAAA,QACjB,MAAM;AAAA,QACN,SAAS;AAAA,UACP,IAAI;AAAA,UACJ,gBAAgB;AAAA,QAClB;AAAA,MAAA,CACD;AAAA,IAAA,UACD;AACA,oBAAc,KAAK;AAAA,IACrB;AAAA,EAAA;AAeFD,iBAAM,UAAU,MAAM;AAChB,QAAA,CAAC,aAAa,CAAC,kBAAkB;AACnC,UAAI,qBAAqB,QAAQ,MAAM,gBAAgB,SAAS,mBAAmB,EAAE,GAAG;AACtF,0BAAkB,IAAI;AAAA,MACxB;AAAA,IACF;AAAA,EAAA,GACC,CAAC,kBAAkB,WAAW,MAAM,MAAM,eAAe,iBAAiB,CAAC;AAE9E,SAEI,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAA;AAAA,MAACE;AAAAA,MAAA;AAAA,QACC,eACE,aACE;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,+BAAY,MAAK,EAAA;AAAA,YACjB,MAAK;AAAA,YAEL,IAAG;AAAA,YACH,SAAS,CAAC,UAAU;AAWlB,kBACE,qBACA,QACA,MAAM,iBAAiB,SAAS,mBAAmB,EAAE,GACrD;AACA,sBAAM,eAAe;AACrB,kCAAkB,IAAI;AAAA,cAAA,OACjB;AACL,2BAAW,oBAAoB;AAAA,cACjC;AAAA,YACF;AAAA,YAEC,UAAc,cAAA;AAAA,cACb,IAAI;AAAA,cACJ,gBAAgB;AAAA,YAAA,CACjB;AAAA,UAAA;AAAA,QACH;AAAA,QAGJ,UAAU,cAAc;AAAA,UACtB,IAAI;AAAA,UACJ,gBAAgB;AAAA,QAAA,CACjB;AAAA,QACD,OAAO,cAAc;AAAA,UACnB,IAAI;AAAA,UACJ,gBAAgB;AAAA,QAAA,CACjB;AAAA,MAAA;AAAA,IACH;AAAA,IAEA,qBAACC,MAAA,EACE,UAAA;AAAA,MAAA,aAAa,kBACX,oBAAA,MAAA,EAAK,gBAAe,UACnB,UAAA,oBAAC,UACE,UAAc,cAAA;AAAA,QACb,IAAI;AAAA,QACJ,gBAAgB;AAAA,MAAA,CACjB,EACH,CAAA,EACF,CAAA,IAEA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,UAAU;AAAA,UACV;AAAA;AAAA,YAEE,aACE;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,0BAAO,MAAK,EAAA;AAAA,gBACZ,SAAS,MAAM;AAUb,sBACE,qBACA,QACA,MAAM,iBAAiB,SAAS,mBAAmB,EAAE,GACrD;AACA,sCAAkB,IAAI;AAAA,kBAAA,OACjB;AACL,yBAAK,mCAAmC;AACxC,+BAAW,oBAAoB;AAAA,kBACjC;AAAA,gBACF;AAAA,gBAEC,UAAc,cAAA;AAAA,kBACb,IAAI;AAAA,kBACJ,gBAAgB;AAAA,gBAAA,CACjB;AAAA,cAAA;AAAA,YACH;AAAA;AAAA,UAGJ,UAAU;AAAA,UAEV,UAAA;AAAA,YAAC,oBAAA,OAAA,EACC,+BAAC,IACC,EAAA,UAAA;AAAA,cAAA,oBAAC,IACC,EAAA,UAAA,oBAAC,YAAW,EAAA,SAAQ,SACjB,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,kCACC,IACC,EAAA,UAAA,oBAAC,YAAW,EAAA,SAAQ,SACjB,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,kCACC,IACC,EAAA,UAAA,oBAAC,YAAW,EAAA,SAAQ,SACjB,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,cACC,oBAAA,IAAA,EACC,UAAC,oBAAA,gBAAA,EACE,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,YAAA,EAAA,CACF,EACF,CAAA;AAAA,YAEC,oBAAA,OAAA,EACE,UAAW,WAAA,IAAI,CAAC,aACf;AAAA,cAAC;AAAA,cAAA;AAAA,gBACE,GAAG,WAAW;AAAA,kBACb,GAAG,OAAO;AACR,0BAAM,KAAK,MAAM;AAEb,wBAAA,GAAG,aAAa,UAAU;AAC5B;AAAA,oBACF;AAEK,yBAAA,8BAA8B,SAAS,EAAE,EAAE;AAAA,kBAClD;AAAA,gBAAA,CACD;AAAA,gBACD,KAAK,YAAY,SAAS,EAAE;AAAA,cAAA;AAAA,kCAE3B,IAAG,EAAA,OAAO,QAAQ,GAAG,GACpB,UAAC,oBAAA,YAAA,EAAW,WAAU,cAAa,YAAW,QAAO,UAAQ,MAC1D,UAAA,SAAS,KACZ,CAAA,GACF;AAAA,cACA,oBAAC,MACC,UAAC,oBAAA,YAAA,EAAW,WAAU,cAAc,UAAA,SAAS,OAAO,OAAA,CAAO,EAC7D,CAAA;AAAA,kCACC,IACC,EAAA,UAAA,oBAAC,YAAW,EAAA,WAAU,cAClB,WAAU,UAAA,gBAAgB,CAAC,GAAG,IAAI,yBAAyB,EAAE,KAAK,IAAI,EAC1E,CAAA,GACF;AAAA,kCACC,IACC,EAAA,UAAA,qBAAC,QAAK,YAAW,UAAS,gBAAe,OACvC,UAAA;AAAA,gBAAA;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,IAAI,8BAA8B,SAAS,EAAE;AAAA,oBAC7C,cAAY;AAAA,sBACV;AAAA,wBACE,IAAI;AAAA,wBACJ,gBAAgB;AAAA,sBAClB;AAAA,sBACA,EAAE,MAAM,SAAS,KAAK;AAAA,oBACxB;AAAA,oBAEA,8BAAC,QAAO,EAAA;AAAA,kBAAA;AAAA,gBACV;AAAA,gBAEC,UAAU,SAAS,KAAK,aACvB;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,cAAY;AAAA,sBACV;AAAA,wBACE,IAAI;AAAA,wBACJ,gBAAgB;AAAA,sBAClB;AAAA,sBACA,EAAE,MAAM,mBAAmB;AAAA,oBAC7B;AAAA,oBACA,0BAAO,OAAM,EAAA;AAAA,oBACb,UAAQ;AAAA,oBACR,SAAS,MAAM;AACQ,2CAAA,OAAO,SAAS,EAAE,CAAC;AAAA,oBAC1C;AAAA,kBAAA;AAAA,gBACF;AAAA,cAAA,EAAA,CAEJ,EACF,CAAA;AAAA,YAEH,CAAA,GACH;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,MAGF;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,UAAU;AAAA,YACR,IAAI;AAAA,YACJ,gBACE;AAAA,UACJ;AAAA,UACA,wBAAwB;AAAA,UACxB,QAAQ,CAAC,CAAC;AAAA,UACV,gBAAgB;AAAA,UAChB,WAAW;AAAA,QAAA;AAAA,MACb;AAAA,MAEA,qBAAC,YAAY,MAAZ,EAAiB,QAAQ,gBAAgB,SAAS,MAAM,kBAAkB,KAAK,GAC9E,UAAA;AAAA,QAAC,oBAAA,YAAY,OAAZ,EACE,UAAc,cAAA;AAAA,UACb,IAAI;AAAA,UACJ,gBAAgB;AAAA,QACjB,CAAA,GACH;AAAA,QAEC,oBAAA,YAAY,MAAZ,EACE,UAAc,cAAA;AAAA,UACb,IAAI;AAAA,UACJ,gBAAgB;AAAA,QACjB,CAAA,GACH;AAAA,MAAA,GACF;AAAA,IAAA,GACF;AAAA,EACF,EAAA,CAAA;AAEJ;AAEO,MAAM,+BAA+B,MAAM;AAChD,QAAM,cAAc;AAAA,IAClB,CAAC,UAAU,MAAM,UAAU,YAAY,WAAW,kBAAkB,GAAG;AAAA,EAAA;AAGzE,SACG,oBAAA,sBAAA,EAAqB,aACpB,UAAA,oBAAC,2BAAwB,EAC3B,CAAA;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"ListPage-4xBsXFzo.mjs","sources":["../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/ListPage.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n Flex,\n IconButton,\n Loader,\n Table,\n Thead,\n Tbody,\n Tr,\n Td,\n TFooter,\n Th,\n Typography,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ConfirmDialog,\n Link,\n LinkButton,\n onRowClick,\n pxToRem,\n useAPIErrorHandler,\n useNotification,\n useRBAC,\n useTracking,\n CheckPagePermissions,\n} from '@strapi/helper-plugin';\nimport { Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { useTypedSelector } from '../../../../../../../admin/src/core/store/hooks';\nimport { useContentTypes } from '../../../../../../../admin/src/hooks/useContentTypes';\nimport { useLicenseLimits } from '../../../../hooks/useLicenseLimits';\n\nimport * as Layout from './components/Layout';\nimport { LimitsModal } from './components/LimitsModal';\nimport { CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME } from './constants';\nimport { useReviewWorkflows } from './hooks/useReviewWorkflows';\n\nconst ActionLink = styled(Link)`\n align-items: center;\n height: ${pxToRem(32)};\n display: flex;\n justify-content: center;\n padding: ${({ theme }) => `${theme.spaces[2]}}`};\n width: ${pxToRem(32)};\n\n svg {\n height: ${pxToRem(12)};\n width: ${pxToRem(12)};\n\n path {\n fill: ${({ theme }) => theme.colors.neutral500};\n }\n }\n\n &:hover,\n &:focus {\n svg {\n path {\n fill: ${({ theme }) => theme.colors.neutral800};\n }\n }\n }\n`;\n\nexport const ReviewWorkflowsListView = () => {\n const { formatMessage } = useIntl();\n const { push } = useHistory();\n const { trackUsage } = useTracking();\n const [workflowToDelete, setWorkflowToDelete] = React.useState<string | null>(null);\n const [showLimitModal, setShowLimitModal] = React.useState<boolean>(false);\n const { collectionTypes, singleTypes, isLoading: isLoadingModels } = useContentTypes();\n const { meta, workflows, isLoading, deleteWorkflow } = useReviewWorkflows();\n const [isDeleting, setIsDeleting] = React.useState(false);\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n const { getFeature, isLoading: isLicenseLoading } = useLicenseLimits();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['review-workflows']\n );\n const {\n allowedActions: { canCreate, canDelete },\n } = useRBAC(permissions);\n\n const limits = getFeature('review-workflows');\n const numberOfWorkflows = limits?.[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME] as string;\n\n const getContentTypeDisplayName = (uid: string) => {\n const contentType = [...collectionTypes, ...singleTypes].find(\n (contentType) => contentType.uid === uid\n );\n\n return contentType?.info.displayName;\n };\n\n const handleDeleteWorkflow = (workflowId: string) => {\n setWorkflowToDelete(workflowId);\n };\n\n const toggleConfirmDeleteDialog = () => {\n setWorkflowToDelete(null);\n };\n\n const handleConfirmDeleteDialog = async () => {\n if (!workflowToDelete) return;\n\n try {\n setIsDeleting(true);\n\n const res = await deleteWorkflow({ id: workflowToDelete });\n\n if ('error' in res) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n setWorkflowToDelete(null);\n\n toggleNotification({\n type: 'success',\n message: { id: 'notification.success.deleted', defaultMessage: 'Deleted' },\n });\n } catch (error) {\n toggleNotification({\n type: 'warning',\n message: {\n id: 'notification.error.unexpected',\n defaultMessage: 'An error occurred',\n },\n });\n } finally {\n setIsDeleting(false);\n }\n };\n\n /**\n * If the current license has a limit:\n * check if the total count of workflows or stages exceeds that limit and display\n * the limits modal on page load. It can be closed by the user, but the\n * API will throw an error in case they try to create a new workflow or update the\n * stages.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now). In case they are trying to create the 201st workflow/ stage\n * the API will throw an error.\n *\n */\n React.useEffect(() => {\n if (!isLoading && !isLicenseLoading) {\n if (numberOfWorkflows && meta && meta?.workflowCount > parseInt(numberOfWorkflows, 10)) {\n setShowLimitModal(true);\n }\n }\n }, [isLicenseLoading, isLoading, meta, meta?.workflowCount, numberOfWorkflows]);\n\n return (\n <>\n <Layout.Header\n primaryAction={\n canCreate && (\n <LinkButton\n startIcon={<Plus />}\n size=\"S\"\n // @ts-expect-error - types are not inferred correctly through the as prop.\n to=\"/settings/review-workflows/create\"\n onClick={(event) => {\n /**\n * If the current license has a workflow limit:\n * check if the total count of workflows exceeds that limit. If so,\n * prevent the navigation and show the limits overlay.\n *\n * If the current license does not have a limit (e.g. offline license):\n * allow the user to navigate to the create-view. In case they exceed the\n * current hard-limit of 200 they will see an error thrown by the API.\n */\n\n if (\n numberOfWorkflows &&\n meta &&\n meta?.workflowCount >= parseInt(numberOfWorkflows, 10)\n ) {\n event.preventDefault();\n setShowLimitModal(true);\n } else {\n trackUsage('willCreateWorkflow');\n }\n }}\n >\n {formatMessage({\n id: 'Settings.review-workflows.list.page.create',\n defaultMessage: 'Create new workflow',\n })}\n </LinkButton>\n )\n }\n subtitle={formatMessage({\n id: 'Settings.review-workflows.list.page.subtitle',\n defaultMessage: 'Manage your content review process',\n })}\n title={formatMessage({\n id: 'Settings.review-workflows.list.page.title',\n defaultMessage: 'Review Workflows',\n })}\n />\n\n <Layout.Root>\n {isLoading || isLoadingModels ? (\n <Flex justifyContent=\"center\">\n <Loader>\n {formatMessage({\n id: 'Settings.review-workflows.page.list.isLoading',\n defaultMessage: 'Workflows are loading',\n })}\n </Loader>\n </Flex>\n ) : (\n <Table\n colCount={3}\n footer={\n // TODO: we should be able to use a link here instead of an (inaccessible onClick) handler\n canCreate && (\n <TFooter\n icon={<Plus />}\n onClick={() => {\n /**\n * If the current license has a workflow limit:\n * check if the total count of workflows exceeds that limit\n *\n * If the current license does not have a limit (e.g. offline license):\n * allow the user to navigate to the create-view. In case they exceed the\n * current hard-limit of 200 they will see an error thrown by the API.\n */\n\n if (\n numberOfWorkflows &&\n meta &&\n meta?.workflowCount >= parseInt(numberOfWorkflows, 10)\n ) {\n setShowLimitModal(true);\n } else {\n push('/settings/review-workflows/create');\n trackUsage('willCreateWorkflow');\n }\n }}\n >\n {formatMessage({\n id: 'Settings.review-workflows.list.page.create',\n defaultMessage: 'Create new workflow',\n })}\n </TFooter>\n )\n }\n rowCount={1}\n >\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\">\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.name.title',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\">\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.stages.title',\n defaultMessage: 'Stages',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\">\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.contentTypes.title',\n defaultMessage: 'Content Types',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.actions.title',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n\n <Tbody>\n {workflows?.map((workflow) => (\n <Tr\n {...onRowClick({\n fn(event) {\n const el = event.target as HTMLElement;\n // Abort row onClick event when the user click on the delete button\n if (el.nodeName === 'BUTTON') {\n return;\n }\n\n push(`/settings/review-workflows/${workflow.id}`);\n },\n })}\n key={`workflow-${workflow.id}`}\n >\n <Td width={pxToRem(250)}>\n <Typography textColor=\"neutral800\" fontWeight=\"bold\" ellipsis>\n {workflow.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{workflow.stages.length}</Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {(workflow?.contentTypes ?? []).map(getContentTypeDisplayName).join(', ')}\n </Typography>\n </Td>\n <Td>\n <Flex alignItems=\"center\" justifyContent=\"end\">\n <ActionLink\n to={`/settings/review-workflows/${workflow.id}`}\n aria-label={formatMessage(\n {\n id: 'Settings.review-workflows.list.page.list.column.actions.edit.label',\n defaultMessage: 'Edit {name}',\n },\n { name: workflow.name }\n )}\n >\n <Pencil />\n </ActionLink>\n\n {workflows.length > 1 && canDelete && (\n <IconButton\n aria-label={formatMessage(\n {\n id: 'Settings.review-workflows.list.page.list.column.actions.delete.label',\n defaultMessage: 'Delete {name}',\n },\n { name: 'Default workflow' }\n )}\n icon={<Trash />}\n noBorder\n onClick={() => {\n handleDeleteWorkflow(String(workflow.id));\n }}\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n )}\n\n <ConfirmDialog\n bodyText={{\n id: 'Settings.review-workflows.list.page.delete.confirm.body',\n defaultMessage:\n 'If you remove this worfklow, all stage-related information will be removed for this content-type. Are you sure you want to remove it?',\n }}\n isConfirmButtonLoading={isDeleting}\n isOpen={!!workflowToDelete}\n onToggleDialog={toggleConfirmDeleteDialog}\n onConfirm={handleConfirmDeleteDialog}\n />\n\n <LimitsModal.Root isOpen={showLimitModal} onClose={() => setShowLimitModal(false)}>\n <LimitsModal.Title>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.workflows.limit.title',\n defaultMessage: 'You’ve reached the limit of workflows in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.workflows.limit.body',\n defaultMessage: 'Delete a workflow or contact Sales to enable more workflows.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n </Layout.Root>\n </>\n );\n};\n\nexport const ProtectedReviewWorkflowsPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['review-workflows']?.main\n );\n\n return (\n <CheckPagePermissions permissions={permissions}>\n <ReviewWorkflowsListView />\n </CheckPagePermissions>\n );\n};\n"],"names":["React","contentType","Layout.Header","Layout.Root"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
|
2
2
|
import { ModalLayout, ModalHeader, ModalBody, Flex, Loader, Box, Typography, Grid, JSONInput, Tbody, Tr, Td, IconButton, Combobox, ComboboxOption, Layout, ContentLayout, Main, HeaderLayout, ActionLayout } from "@strapi/design-system";
|
|
3
3
|
import { useNotification, useAPIErrorHandler, PageSizeURLQuery, PaginationURLQuery, onRowClick, stopPropagation, useQueryParams, CheckPagePermissions, useRBAC, useFocusWhenNavigate, AnErrorOccurred, SettingsPageTitle, DynamicTable } from "@strapi/helper-plugin";
|
|
4
4
|
import { useIntl } from "react-intl";
|
|
5
|
-
import { n as adminApi, k as useAdminUsers, j as useTypedSelector } from "./index-
|
|
5
|
+
import { n as adminApi, k as useAdminUsers, j as useTypedSelector } from "./index-pisKLsr8.mjs";
|
|
6
6
|
import { F as Filters } from "./Filters-dLXfVnI0.mjs";
|
|
7
7
|
import * as React from "react";
|
|
8
8
|
import { Breadcrumbs, Crumb } from "@strapi/design-system/v2";
|
|
@@ -33,14 +33,18 @@ import "immer";
|
|
|
33
33
|
import "lodash/get";
|
|
34
34
|
import "lodash/set";
|
|
35
35
|
import "lodash/defaultsDeep";
|
|
36
|
+
import "lodash/isEqual";
|
|
37
|
+
import "lodash/throttle";
|
|
38
|
+
import "lodash/isBoolean";
|
|
39
|
+
import "lodash/isEmpty";
|
|
40
|
+
import "lodash/isNaN";
|
|
41
|
+
import "lodash/toNumber";
|
|
36
42
|
import "react-dnd";
|
|
37
43
|
import "react-dnd-html5-backend";
|
|
38
44
|
import "react-window";
|
|
39
45
|
import "lodash/cloneDeep";
|
|
40
|
-
import "lodash/isEqual";
|
|
41
46
|
import "lodash/upperFirst";
|
|
42
47
|
import "lodash/fp";
|
|
43
|
-
import "lodash/isNaN";
|
|
44
48
|
import "lodash/take";
|
|
45
49
|
import "slate";
|
|
46
50
|
import "slate-history";
|
|
@@ -62,10 +66,7 @@ import "markdown-it-sup";
|
|
|
62
66
|
import "highlight.js/styles/solarized-dark.css";
|
|
63
67
|
import "codemirror5/addon/display/placeholder";
|
|
64
68
|
import "lodash/toString";
|
|
65
|
-
import "lodash/isEmpty";
|
|
66
69
|
import "react-dom";
|
|
67
|
-
import "lodash/isBoolean";
|
|
68
|
-
import "lodash/toNumber";
|
|
69
70
|
import "fractional-indexing";
|
|
70
71
|
import "lodash/uniqBy";
|
|
71
72
|
import "lodash/unset";
|
|
@@ -592,4 +593,4 @@ export {
|
|
|
592
593
|
ListPage,
|
|
593
594
|
ProtectedListPage
|
|
594
595
|
};
|
|
595
|
-
//# sourceMappingURL=ListPage-
|
|
596
|
+
//# sourceMappingURL=ListPage-FEAgz6nH.mjs.map
|