@strapi/content-manager 0.0.0-next.cb666fde52df857549ddd0e7bf1f6888f5d06951 → 0.0.0-next.cc6c39db185a337e2eafce8bcf06544351e92cc5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/chunks/CardDragPreview-DwuraT0K.mjs +80 -0
- package/dist/admin/chunks/CardDragPreview-DwuraT0K.mjs.map +1 -0
- package/dist/admin/chunks/CardDragPreview-_dubYgXO.js +82 -0
- package/dist/admin/chunks/CardDragPreview-_dubYgXO.js.map +1 -0
- package/dist/admin/chunks/ComponentConfigurationPage-Cgjg4CQj.js +299 -0
- package/dist/admin/chunks/ComponentConfigurationPage-Cgjg4CQj.js.map +1 -0
- package/dist/admin/chunks/ComponentConfigurationPage-D6mjS3eX.mjs +277 -0
- package/dist/admin/chunks/ComponentConfigurationPage-D6mjS3eX.mjs.map +1 -0
- package/dist/admin/chunks/ComponentIcon-BZcTc4rj.mjs +153 -0
- package/dist/admin/chunks/ComponentIcon-BZcTc4rj.mjs.map +1 -0
- package/dist/admin/chunks/ComponentIcon-C-EjOUPA.js +176 -0
- package/dist/admin/chunks/ComponentIcon-C-EjOUPA.js.map +1 -0
- package/dist/admin/chunks/EditConfigurationPage-C5E6D6NI.js +181 -0
- package/dist/admin/chunks/EditConfigurationPage-C5E6D6NI.js.map +1 -0
- package/dist/admin/chunks/EditConfigurationPage-DSSrKbwM.mjs +159 -0
- package/dist/admin/chunks/EditConfigurationPage-DSSrKbwM.mjs.map +1 -0
- package/dist/admin/chunks/EditViewPage-B9oaTSxh.mjs +311 -0
- package/dist/admin/chunks/EditViewPage-B9oaTSxh.mjs.map +1 -0
- package/dist/admin/chunks/EditViewPage-Cyt_AqcH.js +334 -0
- package/dist/admin/chunks/EditViewPage-Cyt_AqcH.js.map +1 -0
- package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.mjs +56 -0
- package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.mjs.map +1 -0
- package/dist/admin/chunks/FieldTypeIcon-Bxh-7Jin.js +58 -0
- package/dist/admin/chunks/FieldTypeIcon-Bxh-7Jin.js.map +1 -0
- package/dist/admin/chunks/Form-BynZsnG8.js +978 -0
- package/dist/admin/chunks/Form-BynZsnG8.js.map +1 -0
- package/dist/admin/chunks/Form-CiDhWFF2.mjs +955 -0
- package/dist/admin/chunks/Form-CiDhWFF2.mjs.map +1 -0
- package/dist/admin/chunks/History-BIzCrHlU.mjs +1357 -0
- package/dist/admin/chunks/History-BIzCrHlU.mjs.map +1 -0
- package/dist/admin/chunks/History-D8x3KfXk.js +1380 -0
- package/dist/admin/chunks/History-D8x3KfXk.js.map +1 -0
- package/dist/admin/chunks/Input-BrTcf7W8.mjs +7190 -0
- package/dist/admin/chunks/Input-BrTcf7W8.mjs.map +1 -0
- package/dist/admin/chunks/Input-Cx7glRRR.js +7221 -0
- package/dist/admin/chunks/Input-Cx7glRRR.js.map +1 -0
- package/dist/admin/chunks/ListConfigurationPage-C1HEB6A1.js +819 -0
- package/dist/admin/chunks/ListConfigurationPage-C1HEB6A1.js.map +1 -0
- package/dist/admin/chunks/ListConfigurationPage-JWHsiJKb.mjs +796 -0
- package/dist/admin/chunks/ListConfigurationPage-JWHsiJKb.mjs.map +1 -0
- package/dist/admin/chunks/ListViewPage-38RhQMrO.js +1155 -0
- package/dist/admin/chunks/ListViewPage-38RhQMrO.js.map +1 -0
- package/dist/admin/chunks/ListViewPage-lpuA2rS8.mjs +1133 -0
- package/dist/admin/chunks/ListViewPage-lpuA2rS8.mjs.map +1 -0
- package/dist/admin/chunks/NoContentTypePage-mxdu7QG9.mjs +58 -0
- package/dist/admin/chunks/NoContentTypePage-mxdu7QG9.mjs.map +1 -0
- package/dist/admin/chunks/NoContentTypePage-q48fU1h9.js +60 -0
- package/dist/admin/chunks/NoContentTypePage-q48fU1h9.js.map +1 -0
- package/dist/admin/chunks/NoPermissionsPage-B_p7s1uj.js +39 -0
- package/dist/admin/chunks/NoPermissionsPage-B_p7s1uj.js.map +1 -0
- package/dist/admin/chunks/NoPermissionsPage-CihsLbNC.mjs +37 -0
- package/dist/admin/chunks/NoPermissionsPage-CihsLbNC.mjs.map +1 -0
- package/dist/admin/chunks/Preview-CMoqDEKI.js +691 -0
- package/dist/admin/chunks/Preview-CMoqDEKI.js.map +1 -0
- package/dist/admin/chunks/Preview-DGQMt8XZ.mjs +669 -0
- package/dist/admin/chunks/Preview-DGQMt8XZ.mjs.map +1 -0
- package/dist/admin/chunks/Relations-BemEu63h.mjs +1291 -0
- package/dist/admin/chunks/Relations-BemEu63h.mjs.map +1 -0
- package/dist/admin/chunks/Relations-BtC_Gort.js +1318 -0
- package/dist/admin/chunks/Relations-BtC_Gort.js.map +1 -0
- package/dist/admin/chunks/ar-DckYq_WK.mjs +222 -0
- package/dist/{_chunks/ar-CCEVvqGG.mjs.map → admin/chunks/ar-DckYq_WK.mjs.map} +1 -1
- package/dist/admin/chunks/ar-DeQBSsfl.js +227 -0
- package/dist/{_chunks/ru-BT3ybNny.js.map → admin/chunks/ar-DeQBSsfl.js.map} +1 -1
- package/dist/admin/chunks/ca-ClDTvatJ.js +202 -0
- package/dist/admin/chunks/ca-ClDTvatJ.js.map +1 -0
- package/dist/admin/chunks/ca-DviY7mRj.mjs +197 -0
- package/dist/admin/chunks/ca-DviY7mRj.mjs.map +1 -0
- package/dist/admin/chunks/cs-BJFxwIWj.js +126 -0
- package/dist/{_chunks/cs-CkJy6B2v.js.map → admin/chunks/cs-BJFxwIWj.js.map} +1 -1
- package/dist/admin/chunks/cs-C7OSYFQ7.mjs +122 -0
- package/dist/{_chunks/cs-CM2aBUar.mjs.map → admin/chunks/cs-C7OSYFQ7.mjs.map} +1 -1
- package/dist/admin/chunks/de-5QRlDHyR.mjs +195 -0
- package/dist/{_chunks/eu-CdALomew.mjs.map → admin/chunks/de-5QRlDHyR.mjs.map} +1 -1
- package/dist/admin/chunks/de-CbImAUA5.js +200 -0
- package/dist/{_chunks/gu-BRmF601H.js.map → admin/chunks/de-CbImAUA5.js.map} +1 -1
- package/dist/admin/chunks/en-CImiNxXE.mjs +310 -0
- package/dist/{_chunks/en-CSxLmrh1.mjs.map → admin/chunks/en-CImiNxXE.mjs.map} +1 -1
- package/dist/admin/chunks/en-CLf4SuMQ.js +315 -0
- package/dist/{_chunks/en-BzQmavmK.js.map → admin/chunks/en-CLf4SuMQ.js.map} +1 -1
- package/dist/admin/chunks/es-C8vLuvZL.js +197 -0
- package/dist/{_chunks/es-9K52xZIr.js.map → admin/chunks/es-C8vLuvZL.js.map} +1 -1
- package/dist/admin/chunks/es-DkoWSExG.mjs +192 -0
- package/dist/{_chunks/ja-BHqhDq4V.mjs.map → admin/chunks/es-DkoWSExG.mjs.map} +1 -1
- package/dist/admin/chunks/eu-BG1xX7HK.mjs +198 -0
- package/dist/admin/chunks/eu-BG1xX7HK.mjs.map +1 -0
- package/dist/admin/chunks/eu-BJW3AvXu.js +203 -0
- package/dist/admin/chunks/eu-BJW3AvXu.js.map +1 -0
- package/dist/admin/chunks/fr-CFdRaRVj.mjs +215 -0
- package/dist/admin/chunks/fr-CFdRaRVj.mjs.map +1 -0
- package/dist/admin/chunks/fr-gQSilC7w.js +220 -0
- package/dist/admin/chunks/fr-gQSilC7w.js.map +1 -0
- package/dist/admin/chunks/gu-D5MMMXRs.mjs +196 -0
- package/dist/admin/chunks/gu-D5MMMXRs.mjs.map +1 -0
- package/dist/admin/chunks/gu-DPU4wyx7.js +201 -0
- package/dist/{_chunks/eu-VDH-3ovk.js.map → admin/chunks/gu-DPU4wyx7.js.map} +1 -1
- package/dist/admin/chunks/hi-Dp4omeBb.js +201 -0
- package/dist/admin/chunks/hi-Dp4omeBb.js.map +1 -0
- package/dist/admin/chunks/hi-lp17SCjr.mjs +196 -0
- package/dist/admin/chunks/hi-lp17SCjr.mjs.map +1 -0
- package/dist/{_chunks/hooks-BAaaKPS_.js → admin/chunks/hooks-D-sOYd1s.js} +6 -3
- package/dist/admin/chunks/hooks-D-sOYd1s.js.map +1 -0
- package/dist/admin/chunks/hooks-DMvik5y_.mjs +7 -0
- package/dist/admin/chunks/hooks-DMvik5y_.mjs.map +1 -0
- package/dist/admin/chunks/hu-CLka1U2C.mjs +198 -0
- package/dist/admin/chunks/hu-CLka1U2C.mjs.map +1 -0
- package/dist/admin/chunks/hu-CtFJuhTd.js +203 -0
- package/dist/admin/chunks/hu-CtFJuhTd.js.map +1 -0
- package/dist/admin/chunks/id-D7V5S1rB.js +161 -0
- package/dist/{_chunks/it-DkBIs7vD.js.map → admin/chunks/id-D7V5S1rB.js.map} +1 -1
- package/dist/admin/chunks/id-USfY9m1g.mjs +156 -0
- package/dist/{_chunks/id-BtwA9WJT.mjs.map → admin/chunks/id-USfY9m1g.mjs.map} +1 -1
- package/dist/admin/chunks/index-D7EkCTnw.js +5449 -0
- package/dist/admin/chunks/index-D7EkCTnw.js.map +1 -0
- package/dist/admin/chunks/index-njcS3gUl.mjs +5382 -0
- package/dist/admin/chunks/index-njcS3gUl.mjs.map +1 -0
- package/dist/admin/chunks/it-BAHrwmYS.mjs +158 -0
- package/dist/{_chunks/it-BrVPqaf1.mjs.map → admin/chunks/it-BAHrwmYS.mjs.map} +1 -1
- package/dist/admin/chunks/it-CQFpa_Dc.js +163 -0
- package/dist/{_chunks/ko-woFZPmLk.js.map → admin/chunks/it-CQFpa_Dc.js.map} +1 -1
- package/dist/admin/chunks/ja-BWKmBJFT.mjs +192 -0
- package/dist/{_chunks/ko-HVQRlfUI.mjs.map → admin/chunks/ja-BWKmBJFT.mjs.map} +1 -1
- package/dist/admin/chunks/ja-jdQM-B79.js +197 -0
- package/dist/{_chunks/de-CCEmbAah.js.map → admin/chunks/ja-jdQM-B79.js.map} +1 -1
- package/dist/admin/chunks/ko-CgADGBNt.mjs +191 -0
- package/dist/{_chunks/es-D34tqjMw.mjs.map → admin/chunks/ko-CgADGBNt.mjs.map} +1 -1
- package/dist/admin/chunks/ko-k46sEyzt.js +196 -0
- package/dist/{_chunks/ja-7sfIbjxE.js.map → admin/chunks/ko-k46sEyzt.js.map} +1 -1
- package/dist/admin/chunks/layout-Ccv9FwbI.js +619 -0
- package/dist/admin/chunks/layout-Ccv9FwbI.js.map +1 -0
- package/dist/admin/chunks/layout-os6F94Aa.mjs +599 -0
- package/dist/admin/chunks/layout-os6F94Aa.mjs.map +1 -0
- package/dist/admin/chunks/ml-CnhCfOn_.mjs +196 -0
- package/dist/admin/chunks/ml-CnhCfOn_.mjs.map +1 -0
- package/dist/admin/chunks/ml-DqxPwODx.js +201 -0
- package/dist/admin/chunks/ml-DqxPwODx.js.map +1 -0
- package/dist/admin/chunks/ms-Bh09NFff.mjs +140 -0
- package/dist/{_chunks/ms-m_WjyWx7.mjs.map → admin/chunks/ms-Bh09NFff.mjs.map} +1 -1
- package/dist/admin/chunks/ms-CvSC0OdG.js +145 -0
- package/dist/{_chunks/ms-BuFotyP_.js.map → admin/chunks/ms-CvSC0OdG.js.map} +1 -1
- package/dist/admin/chunks/nl-BEubhS8C.js +203 -0
- package/dist/admin/chunks/nl-BEubhS8C.js.map +1 -0
- package/dist/admin/chunks/nl-C8HYflTc.mjs +198 -0
- package/dist/admin/chunks/nl-C8HYflTc.mjs.map +1 -0
- package/dist/admin/chunks/objects-C3EebVVe.js +76 -0
- package/dist/admin/chunks/objects-C3EebVVe.js.map +1 -0
- package/dist/admin/chunks/objects-wl73iEma.mjs +73 -0
- package/dist/admin/chunks/objects-wl73iEma.mjs.map +1 -0
- package/dist/admin/chunks/pl-DWhGDzmM.js +200 -0
- package/dist/{_chunks/ca-Cmk45QO6.js.map → admin/chunks/pl-DWhGDzmM.js.map} +1 -1
- package/dist/admin/chunks/pl-MFCZJZuZ.mjs +195 -0
- package/dist/{_chunks/ca-5U32ON2v.mjs.map → admin/chunks/pl-MFCZJZuZ.mjs.map} +1 -1
- package/dist/admin/chunks/pt-BR-CPtAXD-4.js +202 -0
- package/dist/{_chunks/pt-BR-BiOz37D9.js.map → admin/chunks/pt-BR-CPtAXD-4.js.map} +1 -1
- package/dist/admin/chunks/pt-BR-CcotyBGJ.mjs +197 -0
- package/dist/{_chunks/pt-BR-C71iDxnh.mjs.map → admin/chunks/pt-BR-CcotyBGJ.mjs.map} +1 -1
- package/dist/admin/chunks/pt-BoPxN80n.js +96 -0
- package/dist/admin/chunks/pt-BoPxN80n.js.map +1 -0
- package/dist/admin/chunks/pt-HbmgeiYO.mjs +93 -0
- package/dist/admin/chunks/pt-HbmgeiYO.mjs.map +1 -0
- package/dist/admin/chunks/relations-De8hSklO.mjs +173 -0
- package/dist/admin/chunks/relations-De8hSklO.mjs.map +1 -0
- package/dist/admin/chunks/relations-iguhDgFp.js +178 -0
- package/dist/admin/chunks/relations-iguhDgFp.js.map +1 -0
- package/dist/admin/chunks/ru-C0op0ALG.js +232 -0
- package/dist/admin/chunks/ru-C0op0ALG.js.map +1 -0
- package/dist/admin/chunks/ru-CB4BUyQp.mjs +230 -0
- package/dist/{_chunks/ru-BE6A4Exp.mjs.map → admin/chunks/ru-CB4BUyQp.mjs.map} +1 -1
- package/dist/admin/chunks/sa-B_FuPyMw.js +201 -0
- package/dist/admin/chunks/sa-B_FuPyMw.js.map +1 -0
- package/dist/admin/chunks/sa-n_aPA-pU.mjs +196 -0
- package/dist/admin/chunks/sa-n_aPA-pU.mjs.map +1 -0
- package/dist/admin/chunks/sk-D_iXML2C.js +203 -0
- package/dist/admin/chunks/sk-D_iXML2C.js.map +1 -0
- package/dist/admin/chunks/sk-tn_BDjE2.mjs +198 -0
- package/dist/admin/chunks/sk-tn_BDjE2.mjs.map +1 -0
- package/dist/admin/chunks/sv-BstBC1Yp.js +203 -0
- package/dist/admin/chunks/sv-BstBC1Yp.js.map +1 -0
- package/dist/admin/chunks/sv-cq4ZrQRd.mjs +198 -0
- package/dist/admin/chunks/sv-cq4ZrQRd.mjs.map +1 -0
- package/dist/admin/chunks/th-lXoOCqPC.js +149 -0
- package/dist/{_chunks/th-D9_GfAjc.js.map → admin/chunks/th-lXoOCqPC.js.map} +1 -1
- package/dist/admin/chunks/th-mUH7hEtc.mjs +144 -0
- package/dist/{_chunks/th-BqbI8lIT.mjs.map → admin/chunks/th-mUH7hEtc.mjs.map} +1 -1
- package/dist/admin/chunks/tr-CkS6sLIE.js +200 -0
- package/dist/admin/chunks/tr-CkS6sLIE.js.map +1 -0
- package/dist/admin/chunks/tr-Yt38daxh.mjs +195 -0
- package/dist/{_chunks/de-C72KDNOl.mjs.map → admin/chunks/tr-Yt38daxh.mjs.map} +1 -1
- package/dist/admin/chunks/uk-B24MoTVg.js +145 -0
- package/dist/{_chunks/uk-C8EiqJY7.js.map → admin/chunks/uk-B24MoTVg.js.map} +1 -1
- package/dist/admin/chunks/uk-Cpgmm7gE.mjs +140 -0
- package/dist/{_chunks/uk-CR-zDhAY.mjs.map → admin/chunks/uk-Cpgmm7gE.mjs.map} +1 -1
- package/dist/admin/chunks/useDragAndDrop-HYwNDExe.mjs +247 -0
- package/dist/admin/chunks/useDragAndDrop-HYwNDExe.mjs.map +1 -0
- package/dist/admin/chunks/useDragAndDrop-gcqEJMnO.js +271 -0
- package/dist/admin/chunks/useDragAndDrop-gcqEJMnO.js.map +1 -0
- package/dist/admin/chunks/usePrev-Bjw2dhmq.mjs +18 -0
- package/dist/admin/chunks/usePrev-Bjw2dhmq.mjs.map +1 -0
- package/dist/admin/chunks/usePrev-DIYl-IAL.js +21 -0
- package/dist/admin/chunks/usePrev-DIYl-IAL.js.map +1 -0
- package/dist/admin/chunks/vi-BGr1X_HZ.js +112 -0
- package/dist/{_chunks/vi-CJlYDheJ.js.map → admin/chunks/vi-BGr1X_HZ.js.map} +1 -1
- package/dist/admin/chunks/vi-CvBGlTjr.mjs +108 -0
- package/dist/{_chunks/vi-DUXIk_fw.mjs.map → admin/chunks/vi-CvBGlTjr.mjs.map} +1 -1
- package/dist/admin/chunks/zh-BmF-sHaT.mjs +205 -0
- package/dist/admin/chunks/zh-BmF-sHaT.mjs.map +1 -0
- package/dist/admin/chunks/zh-DwFu_Kfj.js +210 -0
- package/dist/admin/chunks/zh-DwFu_Kfj.js.map +1 -0
- package/dist/admin/chunks/zh-Hans-CI0HKio3.mjs +934 -0
- package/dist/{_chunks/zh-Hans-BPQcRIyH.mjs.map → admin/chunks/zh-Hans-CI0HKio3.mjs.map} +1 -1
- package/dist/admin/chunks/zh-Hans-JVK9x7xr.js +953 -0
- package/dist/{_chunks/zh-Hans-9kOncHGw.js.map → admin/chunks/zh-Hans-JVK9x7xr.js.map} +1 -1
- package/dist/admin/index.js +24 -4
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +17 -13
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/src/components/InjectionZone.d.ts +7 -1
- package/dist/admin/src/content-manager.d.ts +3 -0
- package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
- package/dist/admin/src/hooks/useDocument.d.ts +21 -4
- package/dist/admin/src/hooks/useDocumentActions.d.ts +1 -0
- package/dist/admin/src/index.d.ts +1 -0
- package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +2 -1
- package/dist/admin/src/pages/EditView/components/EditorToolbarObserver.d.ts +11 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +49 -1
- package/dist/admin/src/pages/EditView/components/FormInputs/Relations.d.ts +2 -1
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.d.ts +1 -2
- package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +29 -1
- package/dist/admin/src/pages/EditView/utils/data.d.ts +1 -0
- package/dist/admin/src/preview/components/PreviewContent.d.ts +2 -1
- package/dist/admin/src/preview/components/PreviewHeader.d.ts +2 -1
- package/dist/admin/src/preview/index.d.ts +2 -3
- package/dist/admin/src/preview/pages/Preview.d.ts +3 -1
- package/dist/server/index.js +5459 -4387
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +5446 -4372
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/utils/metadata.d.ts +1 -1
- package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
- package/dist/server/src/history/services/utils.d.ts.map +1 -1
- package/dist/server/src/services/utils/count.d.ts +1 -1
- package/dist/server/src/services/utils/count.d.ts.map +1 -1
- package/dist/server/src/services/utils/populate.d.ts +1 -1
- package/dist/server/src/services/utils/populate.d.ts.map +1 -1
- package/dist/shared/contracts/collection-types.d.ts +0 -1
- package/dist/shared/contracts/components.d.ts +0 -1
- package/dist/shared/contracts/content-types.d.ts +0 -1
- package/dist/shared/contracts/history-versions.d.ts +0 -1
- package/dist/shared/contracts/index.d.ts +0 -1
- package/dist/shared/contracts/init.d.ts +0 -1
- package/dist/shared/contracts/preview.d.ts +0 -1
- package/dist/shared/contracts/relations.d.ts +1 -2
- package/dist/shared/contracts/relations.d.ts.map +1 -1
- package/dist/shared/contracts/review-workflows.d.ts +0 -1
- package/dist/shared/contracts/single-types.d.ts +0 -1
- package/dist/shared/contracts/uid.d.ts +0 -1
- package/dist/shared/index.d.ts +0 -1
- package/dist/shared/index.js +35 -24
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/index.mjs +34 -25
- package/dist/shared/index.mjs.map +1 -1
- package/package.json +16 -14
- package/dist/_chunks/CardDragPreview-C0QyJgRA.js +0 -69
- package/dist/_chunks/CardDragPreview-C0QyJgRA.js.map +0 -1
- package/dist/_chunks/CardDragPreview-DOxamsuj.mjs +0 -70
- package/dist/_chunks/CardDragPreview-DOxamsuj.mjs.map +0 -1
- package/dist/_chunks/ComponentConfigurationPage-BLWQy8ru.js +0 -254
- package/dist/_chunks/ComponentConfigurationPage-BLWQy8ru.js.map +0 -1
- package/dist/_chunks/ComponentConfigurationPage-CtIa3aa2.mjs +0 -236
- package/dist/_chunks/ComponentConfigurationPage-CtIa3aa2.mjs.map +0 -1
- package/dist/_chunks/ComponentIcon-CRbtQEUV.js +0 -175
- package/dist/_chunks/ComponentIcon-CRbtQEUV.js.map +0 -1
- package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs +0 -157
- package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs.map +0 -1
- package/dist/_chunks/EditConfigurationPage-DsPR2DVk.mjs +0 -132
- package/dist/_chunks/EditConfigurationPage-DsPR2DVk.mjs.map +0 -1
- package/dist/_chunks/EditConfigurationPage-RQkymxCy.js +0 -150
- package/dist/_chunks/EditConfigurationPage-RQkymxCy.js.map +0 -1
- package/dist/_chunks/EditViewPage-B-kExt8C.js +0 -272
- package/dist/_chunks/EditViewPage-B-kExt8C.js.map +0 -1
- package/dist/_chunks/EditViewPage-BPyVuPfM.mjs +0 -254
- package/dist/_chunks/EditViewPage-BPyVuPfM.mjs.map +0 -1
- package/dist/_chunks/Field-DPIsQRre.js +0 -5650
- package/dist/_chunks/Field-DPIsQRre.js.map +0 -1
- package/dist/_chunks/Field-Dltnt1km.mjs +0 -5618
- package/dist/_chunks/Field-Dltnt1km.mjs.map +0 -1
- package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs +0 -50
- package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +0 -1
- package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js +0 -49
- package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +0 -1
- package/dist/_chunks/Form-BFi4MXMT.js +0 -778
- package/dist/_chunks/Form-BFi4MXMT.js.map +0 -1
- package/dist/_chunks/Form-C1IcWm1u.mjs +0 -758
- package/dist/_chunks/Form-C1IcWm1u.mjs.map +0 -1
- package/dist/_chunks/History-04ChQ4pl.mjs +0 -999
- package/dist/_chunks/History-04ChQ4pl.mjs.map +0 -1
- package/dist/_chunks/History-wjcK4L0C.js +0 -1019
- package/dist/_chunks/History-wjcK4L0C.js.map +0 -1
- package/dist/_chunks/ListConfigurationPage-BYqPYLSU.mjs +0 -633
- package/dist/_chunks/ListConfigurationPage-BYqPYLSU.mjs.map +0 -1
- package/dist/_chunks/ListConfigurationPage-CRbxIC3J.js +0 -652
- package/dist/_chunks/ListConfigurationPage-CRbxIC3J.js.map +0 -1
- package/dist/_chunks/ListViewPage-D5NY9183.js +0 -874
- package/dist/_chunks/ListViewPage-D5NY9183.js.map +0 -1
- package/dist/_chunks/ListViewPage-FU2LBuhl.mjs +0 -851
- package/dist/_chunks/ListViewPage-FU2LBuhl.mjs.map +0 -1
- package/dist/_chunks/NoContentTypePage-BgQVE_Qb.js +0 -51
- package/dist/_chunks/NoContentTypePage-BgQVE_Qb.js.map +0 -1
- package/dist/_chunks/NoContentTypePage-DCKUkwb8.mjs +0 -51
- package/dist/_chunks/NoContentTypePage-DCKUkwb8.mjs.map +0 -1
- package/dist/_chunks/NoPermissionsPage-C5jwn70o.js +0 -23
- package/dist/_chunks/NoPermissionsPage-C5jwn70o.js.map +0 -1
- package/dist/_chunks/NoPermissionsPage-jqve7C8l.mjs +0 -23
- package/dist/_chunks/NoPermissionsPage-jqve7C8l.mjs.map +0 -1
- package/dist/_chunks/Preview-BMYN548c.mjs +0 -294
- package/dist/_chunks/Preview-BMYN548c.mjs.map +0 -1
- package/dist/_chunks/Preview-DaOihysv.js +0 -312
- package/dist/_chunks/Preview-DaOihysv.js.map +0 -1
- package/dist/_chunks/Relations-CTGM7Hv5.js +0 -747
- package/dist/_chunks/Relations-CTGM7Hv5.js.map +0 -1
- package/dist/_chunks/Relations-gscPkxjF.mjs +0 -728
- package/dist/_chunks/Relations-gscPkxjF.mjs.map +0 -1
- package/dist/_chunks/ar-BUUWXIYu.js +0 -226
- package/dist/_chunks/ar-BUUWXIYu.js.map +0 -1
- package/dist/_chunks/ar-CCEVvqGG.mjs +0 -226
- package/dist/_chunks/ca-5U32ON2v.mjs +0 -201
- package/dist/_chunks/ca-Cmk45QO6.js +0 -201
- package/dist/_chunks/cs-CM2aBUar.mjs +0 -125
- package/dist/_chunks/cs-CkJy6B2v.js +0 -125
- package/dist/_chunks/de-C72KDNOl.mjs +0 -199
- package/dist/_chunks/de-CCEmbAah.js +0 -199
- package/dist/_chunks/en-BzQmavmK.js +0 -310
- package/dist/_chunks/en-CSxLmrh1.mjs +0 -310
- package/dist/_chunks/es-9K52xZIr.js +0 -196
- package/dist/_chunks/es-D34tqjMw.mjs +0 -196
- package/dist/_chunks/eu-CdALomew.mjs +0 -202
- package/dist/_chunks/eu-VDH-3ovk.js +0 -202
- package/dist/_chunks/fr--pg5jUbt.mjs +0 -216
- package/dist/_chunks/fr--pg5jUbt.mjs.map +0 -1
- package/dist/_chunks/fr-B2Kyv8Z9.js +0 -216
- package/dist/_chunks/fr-B2Kyv8Z9.js.map +0 -1
- package/dist/_chunks/gu-BRmF601H.js +0 -200
- package/dist/_chunks/gu-CNpaMDpH.mjs +0 -200
- package/dist/_chunks/gu-CNpaMDpH.mjs.map +0 -1
- package/dist/_chunks/hi-CCJBptSq.js +0 -200
- package/dist/_chunks/hi-CCJBptSq.js.map +0 -1
- package/dist/_chunks/hi-Dwvd04m3.mjs +0 -200
- package/dist/_chunks/hi-Dwvd04m3.mjs.map +0 -1
- package/dist/_chunks/hooks-BAaaKPS_.js.map +0 -1
- package/dist/_chunks/hooks-E5u1mcgM.mjs +0 -8
- package/dist/_chunks/hooks-E5u1mcgM.mjs.map +0 -1
- package/dist/_chunks/hu-CeYvaaO0.mjs +0 -202
- package/dist/_chunks/hu-CeYvaaO0.mjs.map +0 -1
- package/dist/_chunks/hu-sNV_yLYy.js +0 -202
- package/dist/_chunks/hu-sNV_yLYy.js.map +0 -1
- package/dist/_chunks/id-B5Ser98A.js +0 -160
- package/dist/_chunks/id-B5Ser98A.js.map +0 -1
- package/dist/_chunks/id-BtwA9WJT.mjs +0 -160
- package/dist/_chunks/index-Ca7YWlAA.js +0 -4303
- package/dist/_chunks/index-Ca7YWlAA.js.map +0 -1
- package/dist/_chunks/index-DqasUQ6Q.mjs +0 -4284
- package/dist/_chunks/index-DqasUQ6Q.mjs.map +0 -1
- package/dist/_chunks/it-BrVPqaf1.mjs +0 -162
- package/dist/_chunks/it-DkBIs7vD.js +0 -162
- package/dist/_chunks/ja-7sfIbjxE.js +0 -196
- package/dist/_chunks/ja-BHqhDq4V.mjs +0 -196
- package/dist/_chunks/ko-HVQRlfUI.mjs +0 -195
- package/dist/_chunks/ko-woFZPmLk.js +0 -195
- package/dist/_chunks/layout-BW80JSCd.js +0 -488
- package/dist/_chunks/layout-BW80JSCd.js.map +0 -1
- package/dist/_chunks/layout-W3clJSCy.mjs +0 -471
- package/dist/_chunks/layout-W3clJSCy.mjs.map +0 -1
- package/dist/_chunks/ml-BihZwQit.mjs +0 -200
- package/dist/_chunks/ml-BihZwQit.mjs.map +0 -1
- package/dist/_chunks/ml-C2W8N8k1.js +0 -200
- package/dist/_chunks/ml-C2W8N8k1.js.map +0 -1
- package/dist/_chunks/ms-BuFotyP_.js +0 -144
- package/dist/_chunks/ms-m_WjyWx7.mjs +0 -144
- package/dist/_chunks/nl-D4R9gHx5.mjs +0 -202
- package/dist/_chunks/nl-D4R9gHx5.mjs.map +0 -1
- package/dist/_chunks/nl-bbEOHChV.js +0 -202
- package/dist/_chunks/nl-bbEOHChV.js.map +0 -1
- package/dist/_chunks/objects-BcXOv6_9.js +0 -47
- package/dist/_chunks/objects-BcXOv6_9.js.map +0 -1
- package/dist/_chunks/objects-D6yBsdmx.mjs +0 -45
- package/dist/_chunks/objects-D6yBsdmx.mjs.map +0 -1
- package/dist/_chunks/pl-sbx9mSt_.mjs +0 -199
- package/dist/_chunks/pl-sbx9mSt_.mjs.map +0 -1
- package/dist/_chunks/pl-uzwG-hk7.js +0 -199
- package/dist/_chunks/pl-uzwG-hk7.js.map +0 -1
- package/dist/_chunks/pt-BR-BiOz37D9.js +0 -201
- package/dist/_chunks/pt-BR-C71iDxnh.mjs +0 -201
- package/dist/_chunks/pt-BsaFvS8-.mjs +0 -95
- package/dist/_chunks/pt-BsaFvS8-.mjs.map +0 -1
- package/dist/_chunks/pt-CeXQuq50.js +0 -95
- package/dist/_chunks/pt-CeXQuq50.js.map +0 -1
- package/dist/_chunks/relations-BlDkoeWh.mjs +0 -134
- package/dist/_chunks/relations-BlDkoeWh.mjs.map +0 -1
- package/dist/_chunks/relations-C9Usz9k5.js +0 -133
- package/dist/_chunks/relations-C9Usz9k5.js.map +0 -1
- package/dist/_chunks/ru-BE6A4Exp.mjs +0 -231
- package/dist/_chunks/ru-BT3ybNny.js +0 -231
- package/dist/_chunks/sa-CcvkYInH.js +0 -200
- package/dist/_chunks/sa-CcvkYInH.js.map +0 -1
- package/dist/_chunks/sa-Dag0k-Z8.mjs +0 -200
- package/dist/_chunks/sa-Dag0k-Z8.mjs.map +0 -1
- package/dist/_chunks/sk-BFg-R8qJ.mjs +0 -202
- package/dist/_chunks/sk-BFg-R8qJ.mjs.map +0 -1
- package/dist/_chunks/sk-CvY09Xjv.js +0 -202
- package/dist/_chunks/sk-CvY09Xjv.js.map +0 -1
- package/dist/_chunks/sv-CUnfWGsh.mjs +0 -202
- package/dist/_chunks/sv-CUnfWGsh.mjs.map +0 -1
- package/dist/_chunks/sv-MYDuzgvT.js +0 -202
- package/dist/_chunks/sv-MYDuzgvT.js.map +0 -1
- package/dist/_chunks/th-BqbI8lIT.mjs +0 -148
- package/dist/_chunks/th-D9_GfAjc.js +0 -148
- package/dist/_chunks/tr-CgeK3wJM.mjs +0 -199
- package/dist/_chunks/tr-CgeK3wJM.mjs.map +0 -1
- package/dist/_chunks/tr-D9UH-O_R.js +0 -199
- package/dist/_chunks/tr-D9UH-O_R.js.map +0 -1
- package/dist/_chunks/uk-C8EiqJY7.js +0 -144
- package/dist/_chunks/uk-CR-zDhAY.mjs +0 -144
- package/dist/_chunks/useDebounce-CtcjDB3L.js +0 -28
- package/dist/_chunks/useDebounce-CtcjDB3L.js.map +0 -1
- package/dist/_chunks/useDebounce-DmuSJIF3.mjs +0 -29
- package/dist/_chunks/useDebounce-DmuSJIF3.mjs.map +0 -1
- package/dist/_chunks/useDragAndDrop-BMtgCYzL.js +0 -245
- package/dist/_chunks/useDragAndDrop-BMtgCYzL.js.map +0 -1
- package/dist/_chunks/useDragAndDrop-DJ6jqvZN.mjs +0 -228
- package/dist/_chunks/useDragAndDrop-DJ6jqvZN.mjs.map +0 -1
- package/dist/_chunks/vi-CJlYDheJ.js +0 -111
- package/dist/_chunks/vi-DUXIk_fw.mjs +0 -111
- package/dist/_chunks/zh-BWZspA60.mjs +0 -209
- package/dist/_chunks/zh-BWZspA60.mjs.map +0 -1
- package/dist/_chunks/zh-CQQfszqR.js +0 -209
- package/dist/_chunks/zh-CQQfszqR.js.map +0 -1
- package/dist/_chunks/zh-Hans-9kOncHGw.js +0 -952
- package/dist/_chunks/zh-Hans-BPQcRIyH.mjs +0 -952
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/utils/prismLanguages.d.ts +0 -49
@@ -1,254 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
4
|
-
const React = require("react");
|
5
|
-
const strapiAdmin = require("@strapi/admin/strapi-admin");
|
6
|
-
const reactIntl = require("react-intl");
|
7
|
-
const reactRouterDom = require("react-router-dom");
|
8
|
-
const Form = require("./Form-BFi4MXMT.js");
|
9
|
-
const index = require("./index-Ca7YWlAA.js");
|
10
|
-
const hooks = require("./hooks-BAaaKPS_.js");
|
11
|
-
const objects = require("./objects-BcXOv6_9.js");
|
12
|
-
function _interopNamespace(e) {
|
13
|
-
if (e && e.__esModule) return e;
|
14
|
-
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
15
|
-
if (e) {
|
16
|
-
for (const k in e) {
|
17
|
-
if (k !== "default") {
|
18
|
-
const d = Object.getOwnPropertyDescriptor(e, k);
|
19
|
-
Object.defineProperty(n, k, d.get ? d : {
|
20
|
-
enumerable: true,
|
21
|
-
get: () => e[k]
|
22
|
-
});
|
23
|
-
}
|
24
|
-
}
|
25
|
-
}
|
26
|
-
n.default = e;
|
27
|
-
return Object.freeze(n);
|
28
|
-
}
|
29
|
-
const React__namespace = /* @__PURE__ */ _interopNamespace(React);
|
30
|
-
const componentsApi = index.contentManagerApi.injectEndpoints({
|
31
|
-
endpoints: (builder) => ({
|
32
|
-
getComponentConfiguration: builder.query({
|
33
|
-
query: (uid) => `/content-manager/components/${uid}/configuration`,
|
34
|
-
transformResponse: (response) => response.data,
|
35
|
-
providesTags: (_result, _error, uid) => [{ type: "ComponentConfiguration", id: uid }]
|
36
|
-
}),
|
37
|
-
updateComponentConfiguration: builder.mutation({
|
38
|
-
query: ({ uid, ...body }) => ({
|
39
|
-
url: `/content-manager/components/${uid}/configuration`,
|
40
|
-
method: "PUT",
|
41
|
-
data: body
|
42
|
-
}),
|
43
|
-
transformResponse: (response) => response.data,
|
44
|
-
invalidatesTags: (_result, _error, { uid }) => [
|
45
|
-
{ type: "ComponentConfiguration", id: uid },
|
46
|
-
// otherwise layouts already fetched will have stale component configuration data.
|
47
|
-
{ type: "ContentTypeSettings", id: "LIST" }
|
48
|
-
]
|
49
|
-
})
|
50
|
-
})
|
51
|
-
});
|
52
|
-
const { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation } = componentsApi;
|
53
|
-
const ComponentConfigurationPage = () => {
|
54
|
-
const { slug: model } = reactRouterDom.useParams();
|
55
|
-
const { toggleNotification } = strapiAdmin.useNotification();
|
56
|
-
const { formatMessage } = reactIntl.useIntl();
|
57
|
-
const { _unstableFormatAPIError: formatAPIError } = strapiAdmin.useAPIErrorHandler();
|
58
|
-
const {
|
59
|
-
components,
|
60
|
-
fieldSizes,
|
61
|
-
schema,
|
62
|
-
error: errorSchema,
|
63
|
-
isLoading: isLoadingSchema,
|
64
|
-
isFetching: isFetchingSchema
|
65
|
-
} = index.useGetInitialDataQuery(void 0, {
|
66
|
-
selectFromResult: (res) => {
|
67
|
-
const schema2 = res.data?.components.find((ct) => ct.uid === model);
|
68
|
-
const componentsByKey = res.data?.components.reduce(
|
69
|
-
(acc, component) => {
|
70
|
-
acc[component.uid] = component;
|
71
|
-
return acc;
|
72
|
-
},
|
73
|
-
{}
|
74
|
-
);
|
75
|
-
const components2 = index.extractContentTypeComponents(schema2?.attributes, componentsByKey);
|
76
|
-
const fieldSizes2 = Object.entries(res.data?.fieldSizes ?? {}).reduce((acc, [attributeName, { default: size }]) => {
|
77
|
-
acc[attributeName] = size;
|
78
|
-
return acc;
|
79
|
-
}, {});
|
80
|
-
return {
|
81
|
-
isFetching: res.isFetching,
|
82
|
-
isLoading: res.isLoading,
|
83
|
-
error: res.error,
|
84
|
-
components: components2,
|
85
|
-
schema: schema2,
|
86
|
-
fieldSizes: fieldSizes2
|
87
|
-
};
|
88
|
-
}
|
89
|
-
});
|
90
|
-
React__namespace.useEffect(() => {
|
91
|
-
if (errorSchema) {
|
92
|
-
toggleNotification({
|
93
|
-
type: "danger",
|
94
|
-
message: formatAPIError(errorSchema)
|
95
|
-
});
|
96
|
-
}
|
97
|
-
}, [errorSchema, formatAPIError, toggleNotification]);
|
98
|
-
const {
|
99
|
-
data,
|
100
|
-
isLoading: isLoadingConfig,
|
101
|
-
isFetching: isFetchingConfig,
|
102
|
-
error
|
103
|
-
} = useGetComponentConfigurationQuery(model ?? "");
|
104
|
-
React__namespace.useEffect(() => {
|
105
|
-
if (error) {
|
106
|
-
toggleNotification({
|
107
|
-
type: "danger",
|
108
|
-
message: formatAPIError(error)
|
109
|
-
});
|
110
|
-
}
|
111
|
-
}, [error, formatAPIError, toggleNotification]);
|
112
|
-
const isLoading = isLoadingConfig || isLoadingSchema || isFetchingConfig || isFetchingSchema;
|
113
|
-
const editLayout = React__namespace.useMemo(
|
114
|
-
() => data && !isLoading ? formatEditLayout(data, { schema, components }) : {
|
115
|
-
layout: [],
|
116
|
-
components: {},
|
117
|
-
metadatas: {},
|
118
|
-
options: {},
|
119
|
-
settings: index.DEFAULT_SETTINGS
|
120
|
-
},
|
121
|
-
[data, isLoading, schema, components]
|
122
|
-
);
|
123
|
-
const [updateConfiguration] = useUpdateComponentConfigurationMutation();
|
124
|
-
const handleSubmit = async (formData) => {
|
125
|
-
try {
|
126
|
-
const meta = Object.entries(data?.component.metadatas ?? {}).reduce(
|
127
|
-
(acc, [name, { edit, list }]) => {
|
128
|
-
const {
|
129
|
-
__temp_key__,
|
130
|
-
size: _size,
|
131
|
-
name: _name,
|
132
|
-
...editedMetadata
|
133
|
-
} = formData.layout.flatMap((row) => row.children).find((field) => field.name === name) ?? {};
|
134
|
-
acc[name] = {
|
135
|
-
edit: {
|
136
|
-
...edit,
|
137
|
-
...editedMetadata
|
138
|
-
},
|
139
|
-
list
|
140
|
-
};
|
141
|
-
return acc;
|
142
|
-
},
|
143
|
-
{}
|
144
|
-
);
|
145
|
-
const res = await updateConfiguration({
|
146
|
-
layouts: {
|
147
|
-
edit: formData.layout.map(
|
148
|
-
(row) => row.children.reduce((acc, { name, size }) => {
|
149
|
-
if (name !== Form.TEMP_FIELD_NAME) {
|
150
|
-
return [...acc, { name, size }];
|
151
|
-
}
|
152
|
-
return acc;
|
153
|
-
}, [])
|
154
|
-
),
|
155
|
-
list: data?.component.layouts.list
|
156
|
-
},
|
157
|
-
settings: objects.setIn(formData.settings, "displayName", void 0),
|
158
|
-
metadatas: meta,
|
159
|
-
uid: model
|
160
|
-
});
|
161
|
-
if ("data" in res) {
|
162
|
-
toggleNotification({
|
163
|
-
type: "success",
|
164
|
-
message: formatMessage({ id: "notification.success.saved", defaultMessage: "Saved" })
|
165
|
-
});
|
166
|
-
} else {
|
167
|
-
toggleNotification({
|
168
|
-
type: "danger",
|
169
|
-
message: formatAPIError(res.error)
|
170
|
-
});
|
171
|
-
}
|
172
|
-
} catch {
|
173
|
-
toggleNotification({
|
174
|
-
type: "danger",
|
175
|
-
message: formatMessage({ id: "notification.error", defaultMessage: "An error occurred" })
|
176
|
-
});
|
177
|
-
}
|
178
|
-
};
|
179
|
-
if (isLoading) {
|
180
|
-
return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Loading, {});
|
181
|
-
}
|
182
|
-
if (error || errorSchema || !schema) {
|
183
|
-
return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Error, {});
|
184
|
-
}
|
185
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
186
|
-
/* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Title, { children: `Configure ${editLayout.settings.displayName} Edit View` }),
|
187
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
188
|
-
Form.ConfigurationForm,
|
189
|
-
{
|
190
|
-
onSubmit: handleSubmit,
|
191
|
-
attributes: schema.attributes,
|
192
|
-
fieldSizes,
|
193
|
-
layout: editLayout
|
194
|
-
}
|
195
|
-
)
|
196
|
-
] });
|
197
|
-
};
|
198
|
-
const formatEditLayout = (data, { schema, components }) => {
|
199
|
-
const editAttributes = index.convertEditLayoutToFieldLayouts(
|
200
|
-
data.component.layouts.edit,
|
201
|
-
schema?.attributes,
|
202
|
-
data.component.metadatas,
|
203
|
-
{ configurations: data.components, schemas: components }
|
204
|
-
);
|
205
|
-
const componentEditAttributes = Object.entries(data.components).reduce(
|
206
|
-
(acc, [uid, configuration]) => {
|
207
|
-
acc[uid] = {
|
208
|
-
layout: index.convertEditLayoutToFieldLayouts(
|
209
|
-
configuration.layouts.edit,
|
210
|
-
components[uid].attributes,
|
211
|
-
configuration.metadatas
|
212
|
-
),
|
213
|
-
settings: {
|
214
|
-
...configuration.settings,
|
215
|
-
icon: components[uid].info.icon,
|
216
|
-
displayName: components[uid].info.displayName
|
217
|
-
}
|
218
|
-
};
|
219
|
-
return acc;
|
220
|
-
},
|
221
|
-
{}
|
222
|
-
);
|
223
|
-
const editMetadatas = Object.entries(data.component.metadatas).reduce(
|
224
|
-
(acc, [attribute, metadata]) => {
|
225
|
-
return {
|
226
|
-
...acc,
|
227
|
-
[attribute]: metadata.edit
|
228
|
-
};
|
229
|
-
},
|
230
|
-
{}
|
231
|
-
);
|
232
|
-
return {
|
233
|
-
layout: [editAttributes],
|
234
|
-
components: componentEditAttributes,
|
235
|
-
metadatas: editMetadatas,
|
236
|
-
options: {
|
237
|
-
...schema?.options,
|
238
|
-
...schema?.pluginOptions
|
239
|
-
},
|
240
|
-
settings: {
|
241
|
-
...data.component.settings,
|
242
|
-
displayName: schema?.info.displayName
|
243
|
-
}
|
244
|
-
};
|
245
|
-
};
|
246
|
-
const ProtectedComponentConfigurationPage = () => {
|
247
|
-
const permissions = hooks.useTypedSelector(
|
248
|
-
(state) => state.admin_app.permissions.contentManager?.componentsConfigurations
|
249
|
-
);
|
250
|
-
return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Protect, { permissions, children: /* @__PURE__ */ jsxRuntime.jsx(ComponentConfigurationPage, {}) });
|
251
|
-
};
|
252
|
-
exports.ComponentConfigurationPage = ComponentConfigurationPage;
|
253
|
-
exports.ProtectedComponentConfigurationPage = ProtectedComponentConfigurationPage;
|
254
|
-
//# sourceMappingURL=ComponentConfigurationPage-BLWQy8ru.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"ComponentConfigurationPage-BLWQy8ru.js","sources":["../../admin/src/services/components.ts","../../admin/src/pages/ComponentConfigurationPage.tsx"],"sourcesContent":["import { contentManagerApi } from './api';\n\nimport type {\n FindComponentConfiguration,\n UpdateComponentConfiguration,\n} from '../../../shared/contracts/components';\n\nconst componentsApi = contentManagerApi.injectEndpoints({\n endpoints: (builder) => ({\n getComponentConfiguration: builder.query<\n FindComponentConfiguration.Response['data'],\n FindComponentConfiguration.Params['uid']\n >({\n query: (uid) => `/content-manager/components/${uid}/configuration`,\n transformResponse: (response: FindComponentConfiguration.Response) => response.data,\n providesTags: (_result, _error, uid) => [{ type: 'ComponentConfiguration', id: uid }],\n }),\n updateComponentConfiguration: builder.mutation({\n query: ({ uid, ...body }) => ({\n url: `/content-manager/components/${uid}/configuration`,\n method: 'PUT',\n data: body,\n }),\n transformResponse: (response: UpdateComponentConfiguration.Response) => response.data,\n invalidatesTags: (_result, _error, { uid }) => [\n { type: 'ComponentConfiguration', id: uid },\n // otherwise layouts already fetched will have stale component configuration data.\n { type: 'ContentTypeSettings', id: 'LIST' },\n ],\n }),\n }),\n});\n\nconst { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation } =\n componentsApi;\n\nexport { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation };\n","import * as React from 'react';\n\nimport { Page, useNotification, useAPIErrorHandler } from '@strapi/admin/strapi-admin';\nimport { useIntl } from 'react-intl';\nimport { useParams } from 'react-router-dom';\n\nimport { TEMP_FIELD_NAME } from '../components/ConfigurationForm/Fields';\nimport { ConfigurationForm, ConfigurationFormProps } from '../components/ConfigurationForm/Form';\nimport { ComponentsDictionary, extractContentTypeComponents } from '../hooks/useContentTypeSchema';\nimport {\n DEFAULT_SETTINGS,\n EditLayout,\n convertEditLayoutToFieldLayouts,\n} from '../hooks/useDocumentLayout';\nimport { useTypedSelector } from '../modules/hooks';\nimport {\n useGetComponentConfigurationQuery,\n useUpdateComponentConfigurationMutation,\n} from '../services/components';\nimport { useGetInitialDataQuery } from '../services/init';\nimport { setIn } from '../utils/objects';\n\nimport type { Component, FindComponentConfiguration } from '../../../shared/contracts/components';\nimport type { Metadatas } from '../../../shared/contracts/content-types';\n\n/* -------------------------------------------------------------------------------------------------\n * ComponentConfigurationPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ComponentConfigurationPage = () => {\n /**\n * useDocumentLayout only works for documents, not components,\n * it feels weird to make that hook work for both when this is SUCH\n * a unique use case and we only do it here, so in short, we essentially\n * just extracted the logic to make an edit view layout and reproduced it here.\n */\n const { slug: model } = useParams<{ slug: string }>();\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const {\n components,\n fieldSizes,\n schema,\n error: errorSchema,\n isLoading: isLoadingSchema,\n isFetching: isFetchingSchema,\n } = useGetInitialDataQuery(undefined, {\n selectFromResult: (res) => {\n const schema = res.data?.components.find((ct) => ct.uid === model);\n\n const componentsByKey = res.data?.components.reduce<ComponentsDictionary>(\n (acc, component) => {\n acc[component.uid] = component;\n\n return acc;\n },\n {}\n );\n\n const components = extractContentTypeComponents(schema?.attributes, componentsByKey);\n\n const fieldSizes = Object.entries(res.data?.fieldSizes ?? {}).reduce<\n ConfigurationFormProps['fieldSizes']\n >((acc, [attributeName, { default: size }]) => {\n acc[attributeName] = size;\n\n return acc;\n }, {});\n\n return {\n isFetching: res.isFetching,\n isLoading: res.isLoading,\n error: res.error,\n components,\n schema,\n fieldSizes,\n };\n },\n });\n\n React.useEffect(() => {\n if (errorSchema) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(errorSchema),\n });\n }\n }, [errorSchema, formatAPIError, toggleNotification]);\n\n const {\n data,\n isLoading: isLoadingConfig,\n isFetching: isFetchingConfig,\n error,\n } = useGetComponentConfigurationQuery(model ?? '');\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n /**\n * you **must** check if we're loading or fetching in case the component gets new props\n * but nothing was unmounted, it then becomes a fetch, not a load.\n */\n const isLoading = isLoadingConfig || isLoadingSchema || isFetchingConfig || isFetchingSchema;\n\n const editLayout = React.useMemo(\n () =>\n data && !isLoading\n ? formatEditLayout(data, { schema, components })\n : ({\n layout: [],\n components: {},\n metadatas: {},\n options: {},\n settings: DEFAULT_SETTINGS,\n } as EditLayout),\n [data, isLoading, schema, components]\n );\n\n const [updateConfiguration] = useUpdateComponentConfigurationMutation();\n const handleSubmit: ConfigurationFormProps['onSubmit'] = async (formData) => {\n try {\n /**\n * We reconstruct the metadatas object by taking the existing list metadatas\n * and re-merging that by attribute name with the current list metadatas, whilst overwriting\n * the data from the form we've built.\n */\n const meta = Object.entries(data?.component.metadatas ?? {}).reduce<Metadatas>(\n (acc, [name, { edit, list }]) => {\n const {\n __temp_key__,\n size: _size,\n name: _name,\n ...editedMetadata\n } = formData.layout.flatMap((row) => row.children).find((field) => field.name === name) ??\n {};\n\n acc[name] = {\n edit: {\n ...edit,\n ...editedMetadata,\n },\n list,\n };\n\n return acc;\n },\n {}\n );\n\n const res = await updateConfiguration({\n layouts: {\n edit: formData.layout.map((row) =>\n row.children.reduce<Array<{ name: string; size: number }>>((acc, { name, size }) => {\n if (name !== TEMP_FIELD_NAME) {\n return [...acc, { name, size }];\n }\n\n return acc;\n }, [])\n ),\n list: data?.component.layouts.list,\n },\n settings: setIn(formData.settings, 'displayName', undefined),\n metadatas: meta,\n uid: model,\n });\n\n if ('data' in res) {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (error || errorSchema || !schema) {\n return <Page.Error />;\n }\n\n return (\n <>\n <Page.Title>{`Configure ${editLayout.settings.displayName} Edit View`}</Page.Title>\n <ConfigurationForm\n onSubmit={handleSubmit}\n attributes={schema.attributes}\n fieldSizes={fieldSizes}\n layout={editLayout}\n />\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\nconst formatEditLayout = (\n data: FindComponentConfiguration.Response['data'],\n { schema, components }: { schema?: Component; components: ComponentsDictionary }\n) => {\n const editAttributes = convertEditLayoutToFieldLayouts(\n data.component.layouts.edit,\n schema?.attributes,\n data.component.metadatas,\n { configurations: data.components, schemas: components }\n );\n\n const componentEditAttributes = Object.entries(data.components).reduce<EditLayout['components']>(\n (acc, [uid, configuration]) => {\n acc[uid] = {\n layout: convertEditLayoutToFieldLayouts(\n configuration.layouts.edit,\n components[uid].attributes,\n configuration.metadatas\n ),\n settings: {\n ...configuration.settings,\n icon: components[uid].info.icon,\n displayName: components[uid].info.displayName,\n },\n };\n return acc;\n },\n {}\n );\n\n const editMetadatas = Object.entries(data.component.metadatas).reduce<EditLayout['metadatas']>(\n (acc, [attribute, metadata]) => {\n return {\n ...acc,\n [attribute]: metadata.edit,\n };\n },\n {}\n );\n\n return {\n layout: [editAttributes],\n components: componentEditAttributes,\n metadatas: editMetadatas,\n options: {\n ...schema?.options,\n ...schema?.pluginOptions,\n },\n settings: {\n ...data.component.settings,\n displayName: schema?.info.displayName,\n },\n };\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedComponentConfigurationPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.contentManager?.componentsConfigurations\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ComponentConfigurationPage />\n </Page.Protect>\n );\n};\n\nexport { ComponentConfigurationPage, ProtectedComponentConfigurationPage };\n"],"names":["contentManagerApi","useParams","useNotification","useIntl","useAPIErrorHandler","useGetInitialDataQuery","schema","components","extractContentTypeComponents","fieldSizes","React","DEFAULT_SETTINGS","TEMP_FIELD_NAME","setIn","jsx","Page","jsxs","Fragment","ConfigurationForm","convertEditLayoutToFieldLayouts","useTypedSelector"],"mappings":"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"}
|
@@ -1,236 +0,0 @@
|
|
1
|
-
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
2
|
-
import * as React from "react";
|
3
|
-
import { useNotification, useAPIErrorHandler, Page } from "@strapi/admin/strapi-admin";
|
4
|
-
import { useIntl } from "react-intl";
|
5
|
-
import { useParams } from "react-router-dom";
|
6
|
-
import { C as ConfigurationForm, T as TEMP_FIELD_NAME } from "./Form-C1IcWm1u.mjs";
|
7
|
-
import { e as contentManagerApi, a as useGetInitialDataQuery, E as extractContentTypeComponents, F as DEFAULT_SETTINGS, G as convertEditLayoutToFieldLayouts } from "./index-DqasUQ6Q.mjs";
|
8
|
-
import { u as useTypedSelector } from "./hooks-E5u1mcgM.mjs";
|
9
|
-
import { s as setIn } from "./objects-D6yBsdmx.mjs";
|
10
|
-
const componentsApi = contentManagerApi.injectEndpoints({
|
11
|
-
endpoints: (builder) => ({
|
12
|
-
getComponentConfiguration: builder.query({
|
13
|
-
query: (uid) => `/content-manager/components/${uid}/configuration`,
|
14
|
-
transformResponse: (response) => response.data,
|
15
|
-
providesTags: (_result, _error, uid) => [{ type: "ComponentConfiguration", id: uid }]
|
16
|
-
}),
|
17
|
-
updateComponentConfiguration: builder.mutation({
|
18
|
-
query: ({ uid, ...body }) => ({
|
19
|
-
url: `/content-manager/components/${uid}/configuration`,
|
20
|
-
method: "PUT",
|
21
|
-
data: body
|
22
|
-
}),
|
23
|
-
transformResponse: (response) => response.data,
|
24
|
-
invalidatesTags: (_result, _error, { uid }) => [
|
25
|
-
{ type: "ComponentConfiguration", id: uid },
|
26
|
-
// otherwise layouts already fetched will have stale component configuration data.
|
27
|
-
{ type: "ContentTypeSettings", id: "LIST" }
|
28
|
-
]
|
29
|
-
})
|
30
|
-
})
|
31
|
-
});
|
32
|
-
const { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation } = componentsApi;
|
33
|
-
const ComponentConfigurationPage = () => {
|
34
|
-
const { slug: model } = useParams();
|
35
|
-
const { toggleNotification } = useNotification();
|
36
|
-
const { formatMessage } = useIntl();
|
37
|
-
const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();
|
38
|
-
const {
|
39
|
-
components,
|
40
|
-
fieldSizes,
|
41
|
-
schema,
|
42
|
-
error: errorSchema,
|
43
|
-
isLoading: isLoadingSchema,
|
44
|
-
isFetching: isFetchingSchema
|
45
|
-
} = useGetInitialDataQuery(void 0, {
|
46
|
-
selectFromResult: (res) => {
|
47
|
-
const schema2 = res.data?.components.find((ct) => ct.uid === model);
|
48
|
-
const componentsByKey = res.data?.components.reduce(
|
49
|
-
(acc, component) => {
|
50
|
-
acc[component.uid] = component;
|
51
|
-
return acc;
|
52
|
-
},
|
53
|
-
{}
|
54
|
-
);
|
55
|
-
const components2 = extractContentTypeComponents(schema2?.attributes, componentsByKey);
|
56
|
-
const fieldSizes2 = Object.entries(res.data?.fieldSizes ?? {}).reduce((acc, [attributeName, { default: size }]) => {
|
57
|
-
acc[attributeName] = size;
|
58
|
-
return acc;
|
59
|
-
}, {});
|
60
|
-
return {
|
61
|
-
isFetching: res.isFetching,
|
62
|
-
isLoading: res.isLoading,
|
63
|
-
error: res.error,
|
64
|
-
components: components2,
|
65
|
-
schema: schema2,
|
66
|
-
fieldSizes: fieldSizes2
|
67
|
-
};
|
68
|
-
}
|
69
|
-
});
|
70
|
-
React.useEffect(() => {
|
71
|
-
if (errorSchema) {
|
72
|
-
toggleNotification({
|
73
|
-
type: "danger",
|
74
|
-
message: formatAPIError(errorSchema)
|
75
|
-
});
|
76
|
-
}
|
77
|
-
}, [errorSchema, formatAPIError, toggleNotification]);
|
78
|
-
const {
|
79
|
-
data,
|
80
|
-
isLoading: isLoadingConfig,
|
81
|
-
isFetching: isFetchingConfig,
|
82
|
-
error
|
83
|
-
} = useGetComponentConfigurationQuery(model ?? "");
|
84
|
-
React.useEffect(() => {
|
85
|
-
if (error) {
|
86
|
-
toggleNotification({
|
87
|
-
type: "danger",
|
88
|
-
message: formatAPIError(error)
|
89
|
-
});
|
90
|
-
}
|
91
|
-
}, [error, formatAPIError, toggleNotification]);
|
92
|
-
const isLoading = isLoadingConfig || isLoadingSchema || isFetchingConfig || isFetchingSchema;
|
93
|
-
const editLayout = React.useMemo(
|
94
|
-
() => data && !isLoading ? formatEditLayout(data, { schema, components }) : {
|
95
|
-
layout: [],
|
96
|
-
components: {},
|
97
|
-
metadatas: {},
|
98
|
-
options: {},
|
99
|
-
settings: DEFAULT_SETTINGS
|
100
|
-
},
|
101
|
-
[data, isLoading, schema, components]
|
102
|
-
);
|
103
|
-
const [updateConfiguration] = useUpdateComponentConfigurationMutation();
|
104
|
-
const handleSubmit = async (formData) => {
|
105
|
-
try {
|
106
|
-
const meta = Object.entries(data?.component.metadatas ?? {}).reduce(
|
107
|
-
(acc, [name, { edit, list }]) => {
|
108
|
-
const {
|
109
|
-
__temp_key__,
|
110
|
-
size: _size,
|
111
|
-
name: _name,
|
112
|
-
...editedMetadata
|
113
|
-
} = formData.layout.flatMap((row) => row.children).find((field) => field.name === name) ?? {};
|
114
|
-
acc[name] = {
|
115
|
-
edit: {
|
116
|
-
...edit,
|
117
|
-
...editedMetadata
|
118
|
-
},
|
119
|
-
list
|
120
|
-
};
|
121
|
-
return acc;
|
122
|
-
},
|
123
|
-
{}
|
124
|
-
);
|
125
|
-
const res = await updateConfiguration({
|
126
|
-
layouts: {
|
127
|
-
edit: formData.layout.map(
|
128
|
-
(row) => row.children.reduce((acc, { name, size }) => {
|
129
|
-
if (name !== TEMP_FIELD_NAME) {
|
130
|
-
return [...acc, { name, size }];
|
131
|
-
}
|
132
|
-
return acc;
|
133
|
-
}, [])
|
134
|
-
),
|
135
|
-
list: data?.component.layouts.list
|
136
|
-
},
|
137
|
-
settings: setIn(formData.settings, "displayName", void 0),
|
138
|
-
metadatas: meta,
|
139
|
-
uid: model
|
140
|
-
});
|
141
|
-
if ("data" in res) {
|
142
|
-
toggleNotification({
|
143
|
-
type: "success",
|
144
|
-
message: formatMessage({ id: "notification.success.saved", defaultMessage: "Saved" })
|
145
|
-
});
|
146
|
-
} else {
|
147
|
-
toggleNotification({
|
148
|
-
type: "danger",
|
149
|
-
message: formatAPIError(res.error)
|
150
|
-
});
|
151
|
-
}
|
152
|
-
} catch {
|
153
|
-
toggleNotification({
|
154
|
-
type: "danger",
|
155
|
-
message: formatMessage({ id: "notification.error", defaultMessage: "An error occurred" })
|
156
|
-
});
|
157
|
-
}
|
158
|
-
};
|
159
|
-
if (isLoading) {
|
160
|
-
return /* @__PURE__ */ jsx(Page.Loading, {});
|
161
|
-
}
|
162
|
-
if (error || errorSchema || !schema) {
|
163
|
-
return /* @__PURE__ */ jsx(Page.Error, {});
|
164
|
-
}
|
165
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
166
|
-
/* @__PURE__ */ jsx(Page.Title, { children: `Configure ${editLayout.settings.displayName} Edit View` }),
|
167
|
-
/* @__PURE__ */ jsx(
|
168
|
-
ConfigurationForm,
|
169
|
-
{
|
170
|
-
onSubmit: handleSubmit,
|
171
|
-
attributes: schema.attributes,
|
172
|
-
fieldSizes,
|
173
|
-
layout: editLayout
|
174
|
-
}
|
175
|
-
)
|
176
|
-
] });
|
177
|
-
};
|
178
|
-
const formatEditLayout = (data, { schema, components }) => {
|
179
|
-
const editAttributes = convertEditLayoutToFieldLayouts(
|
180
|
-
data.component.layouts.edit,
|
181
|
-
schema?.attributes,
|
182
|
-
data.component.metadatas,
|
183
|
-
{ configurations: data.components, schemas: components }
|
184
|
-
);
|
185
|
-
const componentEditAttributes = Object.entries(data.components).reduce(
|
186
|
-
(acc, [uid, configuration]) => {
|
187
|
-
acc[uid] = {
|
188
|
-
layout: convertEditLayoutToFieldLayouts(
|
189
|
-
configuration.layouts.edit,
|
190
|
-
components[uid].attributes,
|
191
|
-
configuration.metadatas
|
192
|
-
),
|
193
|
-
settings: {
|
194
|
-
...configuration.settings,
|
195
|
-
icon: components[uid].info.icon,
|
196
|
-
displayName: components[uid].info.displayName
|
197
|
-
}
|
198
|
-
};
|
199
|
-
return acc;
|
200
|
-
},
|
201
|
-
{}
|
202
|
-
);
|
203
|
-
const editMetadatas = Object.entries(data.component.metadatas).reduce(
|
204
|
-
(acc, [attribute, metadata]) => {
|
205
|
-
return {
|
206
|
-
...acc,
|
207
|
-
[attribute]: metadata.edit
|
208
|
-
};
|
209
|
-
},
|
210
|
-
{}
|
211
|
-
);
|
212
|
-
return {
|
213
|
-
layout: [editAttributes],
|
214
|
-
components: componentEditAttributes,
|
215
|
-
metadatas: editMetadatas,
|
216
|
-
options: {
|
217
|
-
...schema?.options,
|
218
|
-
...schema?.pluginOptions
|
219
|
-
},
|
220
|
-
settings: {
|
221
|
-
...data.component.settings,
|
222
|
-
displayName: schema?.info.displayName
|
223
|
-
}
|
224
|
-
};
|
225
|
-
};
|
226
|
-
const ProtectedComponentConfigurationPage = () => {
|
227
|
-
const permissions = useTypedSelector(
|
228
|
-
(state) => state.admin_app.permissions.contentManager?.componentsConfigurations
|
229
|
-
);
|
230
|
-
return /* @__PURE__ */ jsx(Page.Protect, { permissions, children: /* @__PURE__ */ jsx(ComponentConfigurationPage, {}) });
|
231
|
-
};
|
232
|
-
export {
|
233
|
-
ComponentConfigurationPage,
|
234
|
-
ProtectedComponentConfigurationPage
|
235
|
-
};
|
236
|
-
//# sourceMappingURL=ComponentConfigurationPage-CtIa3aa2.mjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"ComponentConfigurationPage-CtIa3aa2.mjs","sources":["../../admin/src/services/components.ts","../../admin/src/pages/ComponentConfigurationPage.tsx"],"sourcesContent":["import { contentManagerApi } from './api';\n\nimport type {\n FindComponentConfiguration,\n UpdateComponentConfiguration,\n} from '../../../shared/contracts/components';\n\nconst componentsApi = contentManagerApi.injectEndpoints({\n endpoints: (builder) => ({\n getComponentConfiguration: builder.query<\n FindComponentConfiguration.Response['data'],\n FindComponentConfiguration.Params['uid']\n >({\n query: (uid) => `/content-manager/components/${uid}/configuration`,\n transformResponse: (response: FindComponentConfiguration.Response) => response.data,\n providesTags: (_result, _error, uid) => [{ type: 'ComponentConfiguration', id: uid }],\n }),\n updateComponentConfiguration: builder.mutation({\n query: ({ uid, ...body }) => ({\n url: `/content-manager/components/${uid}/configuration`,\n method: 'PUT',\n data: body,\n }),\n transformResponse: (response: UpdateComponentConfiguration.Response) => response.data,\n invalidatesTags: (_result, _error, { uid }) => [\n { type: 'ComponentConfiguration', id: uid },\n // otherwise layouts already fetched will have stale component configuration data.\n { type: 'ContentTypeSettings', id: 'LIST' },\n ],\n }),\n }),\n});\n\nconst { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation } =\n componentsApi;\n\nexport { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation };\n","import * as React from 'react';\n\nimport { Page, useNotification, useAPIErrorHandler } from '@strapi/admin/strapi-admin';\nimport { useIntl } from 'react-intl';\nimport { useParams } from 'react-router-dom';\n\nimport { TEMP_FIELD_NAME } from '../components/ConfigurationForm/Fields';\nimport { ConfigurationForm, ConfigurationFormProps } from '../components/ConfigurationForm/Form';\nimport { ComponentsDictionary, extractContentTypeComponents } from '../hooks/useContentTypeSchema';\nimport {\n DEFAULT_SETTINGS,\n EditLayout,\n convertEditLayoutToFieldLayouts,\n} from '../hooks/useDocumentLayout';\nimport { useTypedSelector } from '../modules/hooks';\nimport {\n useGetComponentConfigurationQuery,\n useUpdateComponentConfigurationMutation,\n} from '../services/components';\nimport { useGetInitialDataQuery } from '../services/init';\nimport { setIn } from '../utils/objects';\n\nimport type { Component, FindComponentConfiguration } from '../../../shared/contracts/components';\nimport type { Metadatas } from '../../../shared/contracts/content-types';\n\n/* -------------------------------------------------------------------------------------------------\n * ComponentConfigurationPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ComponentConfigurationPage = () => {\n /**\n * useDocumentLayout only works for documents, not components,\n * it feels weird to make that hook work for both when this is SUCH\n * a unique use case and we only do it here, so in short, we essentially\n * just extracted the logic to make an edit view layout and reproduced it here.\n */\n const { slug: model } = useParams<{ slug: string }>();\n const { toggleNotification } = useNotification();\n const { formatMessage } = useIntl();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const {\n components,\n fieldSizes,\n schema,\n error: errorSchema,\n isLoading: isLoadingSchema,\n isFetching: isFetchingSchema,\n } = useGetInitialDataQuery(undefined, {\n selectFromResult: (res) => {\n const schema = res.data?.components.find((ct) => ct.uid === model);\n\n const componentsByKey = res.data?.components.reduce<ComponentsDictionary>(\n (acc, component) => {\n acc[component.uid] = component;\n\n return acc;\n },\n {}\n );\n\n const components = extractContentTypeComponents(schema?.attributes, componentsByKey);\n\n const fieldSizes = Object.entries(res.data?.fieldSizes ?? {}).reduce<\n ConfigurationFormProps['fieldSizes']\n >((acc, [attributeName, { default: size }]) => {\n acc[attributeName] = size;\n\n return acc;\n }, {});\n\n return {\n isFetching: res.isFetching,\n isLoading: res.isLoading,\n error: res.error,\n components,\n schema,\n fieldSizes,\n };\n },\n });\n\n React.useEffect(() => {\n if (errorSchema) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(errorSchema),\n });\n }\n }, [errorSchema, formatAPIError, toggleNotification]);\n\n const {\n data,\n isLoading: isLoadingConfig,\n isFetching: isFetchingConfig,\n error,\n } = useGetComponentConfigurationQuery(model ?? '');\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n /**\n * you **must** check if we're loading or fetching in case the component gets new props\n * but nothing was unmounted, it then becomes a fetch, not a load.\n */\n const isLoading = isLoadingConfig || isLoadingSchema || isFetchingConfig || isFetchingSchema;\n\n const editLayout = React.useMemo(\n () =>\n data && !isLoading\n ? formatEditLayout(data, { schema, components })\n : ({\n layout: [],\n components: {},\n metadatas: {},\n options: {},\n settings: DEFAULT_SETTINGS,\n } as EditLayout),\n [data, isLoading, schema, components]\n );\n\n const [updateConfiguration] = useUpdateComponentConfigurationMutation();\n const handleSubmit: ConfigurationFormProps['onSubmit'] = async (formData) => {\n try {\n /**\n * We reconstruct the metadatas object by taking the existing list metadatas\n * and re-merging that by attribute name with the current list metadatas, whilst overwriting\n * the data from the form we've built.\n */\n const meta = Object.entries(data?.component.metadatas ?? {}).reduce<Metadatas>(\n (acc, [name, { edit, list }]) => {\n const {\n __temp_key__,\n size: _size,\n name: _name,\n ...editedMetadata\n } = formData.layout.flatMap((row) => row.children).find((field) => field.name === name) ??\n {};\n\n acc[name] = {\n edit: {\n ...edit,\n ...editedMetadata,\n },\n list,\n };\n\n return acc;\n },\n {}\n );\n\n const res = await updateConfiguration({\n layouts: {\n edit: formData.layout.map((row) =>\n row.children.reduce<Array<{ name: string; size: number }>>((acc, { name, size }) => {\n if (name !== TEMP_FIELD_NAME) {\n return [...acc, { name, size }];\n }\n\n return acc;\n }, [])\n ),\n list: data?.component.layouts.list,\n },\n settings: setIn(formData.settings, 'displayName', undefined),\n metadatas: meta,\n uid: model,\n });\n\n if ('data' in res) {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (error || errorSchema || !schema) {\n return <Page.Error />;\n }\n\n return (\n <>\n <Page.Title>{`Configure ${editLayout.settings.displayName} Edit View`}</Page.Title>\n <ConfigurationForm\n onSubmit={handleSubmit}\n attributes={schema.attributes}\n fieldSizes={fieldSizes}\n layout={editLayout}\n />\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\nconst formatEditLayout = (\n data: FindComponentConfiguration.Response['data'],\n { schema, components }: { schema?: Component; components: ComponentsDictionary }\n) => {\n const editAttributes = convertEditLayoutToFieldLayouts(\n data.component.layouts.edit,\n schema?.attributes,\n data.component.metadatas,\n { configurations: data.components, schemas: components }\n );\n\n const componentEditAttributes = Object.entries(data.components).reduce<EditLayout['components']>(\n (acc, [uid, configuration]) => {\n acc[uid] = {\n layout: convertEditLayoutToFieldLayouts(\n configuration.layouts.edit,\n components[uid].attributes,\n configuration.metadatas\n ),\n settings: {\n ...configuration.settings,\n icon: components[uid].info.icon,\n displayName: components[uid].info.displayName,\n },\n };\n return acc;\n },\n {}\n );\n\n const editMetadatas = Object.entries(data.component.metadatas).reduce<EditLayout['metadatas']>(\n (acc, [attribute, metadata]) => {\n return {\n ...acc,\n [attribute]: metadata.edit,\n };\n },\n {}\n );\n\n return {\n layout: [editAttributes],\n components: componentEditAttributes,\n metadatas: editMetadatas,\n options: {\n ...schema?.options,\n ...schema?.pluginOptions,\n },\n settings: {\n ...data.component.settings,\n displayName: schema?.info.displayName,\n },\n };\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedComponentConfigurationPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.contentManager?.componentsConfigurations\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ComponentConfigurationPage />\n </Page.Protect>\n );\n};\n\nexport { ComponentConfigurationPage, ProtectedComponentConfigurationPage };\n"],"names":["schema","components","fieldSizes"],"mappings":"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"}
|