@strapi/content-manager 0.0.0-next.bec3f8cddf61be32ee5516609a1d4d6032933972 → 0.0.0-next.c22d1aa5024dc77092c3df7e990ad89dcd79e7b0
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.js +80 -0
- package/dist/admin/chunks/CardDragPreview-DwuraT0K.js.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-Co2eC_-C.js +276 -0
- package/dist/admin/chunks/ComponentConfigurationPage-Co2eC_-C.js.map +1 -0
- package/dist/admin/chunks/ComponentConfigurationPage-Dj1bNvEF.js +298 -0
- package/dist/admin/chunks/ComponentConfigurationPage-Dj1bNvEF.js.map +1 -0
- package/dist/admin/chunks/ComponentIcon-BZcTc4rj.js +153 -0
- package/dist/admin/chunks/ComponentIcon-BZcTc4rj.js.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-Dm5woBp9.js +180 -0
- package/dist/admin/chunks/EditConfigurationPage-Dm5woBp9.js.map +1 -0
- package/dist/admin/chunks/EditConfigurationPage-zd9OLaVh.js +158 -0
- package/dist/admin/chunks/EditConfigurationPage-zd9OLaVh.js.map +1 -0
- package/dist/admin/chunks/EditViewPage-DsBKmSPb.js +337 -0
- package/dist/admin/chunks/EditViewPage-DsBKmSPb.js.map +1 -0
- package/dist/admin/chunks/EditViewPage-kAIaYTg0.js +314 -0
- package/dist/admin/chunks/EditViewPage-kAIaYTg0.js.map +1 -0
- package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.js +56 -0
- package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.js.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-BO69oITe.js +955 -0
- package/dist/admin/chunks/Form-BO69oITe.js.map +1 -0
- package/dist/admin/chunks/Form-BPIhJKyf.js +978 -0
- package/dist/admin/chunks/Form-BPIhJKyf.js.map +1 -0
- package/dist/admin/chunks/History-BzvpM-Gw.js +1357 -0
- package/dist/admin/chunks/History-BzvpM-Gw.js.map +1 -0
- package/dist/admin/chunks/History-DBQ96jv2.js +1380 -0
- package/dist/admin/chunks/History-DBQ96jv2.js.map +1 -0
- package/dist/admin/chunks/Input-BlDcbhUC.js +6755 -0
- package/dist/admin/chunks/Input-BlDcbhUC.js.map +1 -0
- package/dist/admin/chunks/Input-Dh1MtWno.js +6786 -0
- package/dist/admin/chunks/Input-Dh1MtWno.js.map +1 -0
- package/dist/admin/chunks/ListConfigurationPage-8d3BsQIr.js +818 -0
- package/dist/admin/chunks/ListConfigurationPage-8d3BsQIr.js.map +1 -0
- package/dist/admin/chunks/ListConfigurationPage-DK0ARecn.js +795 -0
- package/dist/admin/chunks/ListConfigurationPage-DK0ARecn.js.map +1 -0
- package/dist/admin/chunks/ListViewPage-BF2q7N6W.js +1132 -0
- package/dist/admin/chunks/ListViewPage-BF2q7N6W.js.map +1 -0
- package/dist/admin/chunks/ListViewPage-CS1ED-vI.js +1154 -0
- package/dist/admin/chunks/ListViewPage-CS1ED-vI.js.map +1 -0
- package/dist/admin/chunks/NoContentTypePage-C5Qxz3I4.js +59 -0
- package/dist/admin/chunks/NoContentTypePage-C5Qxz3I4.js.map +1 -0
- package/dist/admin/chunks/NoContentTypePage-DjdXr1-j.js +57 -0
- package/dist/admin/chunks/NoContentTypePage-DjdXr1-j.js.map +1 -0
- package/dist/admin/chunks/NoPermissionsPage-BUwtKUEP.js +36 -0
- package/dist/admin/chunks/NoPermissionsPage-BUwtKUEP.js.map +1 -0
- package/dist/admin/chunks/NoPermissionsPage-C5dC0MtL.js +38 -0
- package/dist/admin/chunks/NoPermissionsPage-C5dC0MtL.js.map +1 -0
- package/dist/admin/chunks/Preview-C9kXTY6C.js +531 -0
- package/dist/admin/chunks/Preview-C9kXTY6C.js.map +1 -0
- package/dist/admin/chunks/Preview-DBvmhR7Q.js +553 -0
- package/dist/admin/chunks/Preview-DBvmhR7Q.js.map +1 -0
- package/dist/admin/chunks/Relations-Cn0atFpd.js +827 -0
- package/dist/admin/chunks/Relations-Cn0atFpd.js.map +1 -0
- package/dist/admin/chunks/Relations-XHxDKEvT.js +853 -0
- package/dist/admin/chunks/Relations-XHxDKEvT.js.map +1 -0
- package/dist/admin/chunks/ar-DckYq_WK.js +222 -0
- package/dist/admin/chunks/ar-DckYq_WK.js.map +1 -0
- 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.js +197 -0
- package/dist/{_chunks/de-CCEmbAah.js.map → admin/chunks/ca-DviY7mRj.js.map} +1 -1
- package/dist/admin/chunks/cs-BJFxwIWj.js +126 -0
- package/dist/{_chunks/ms-BuFotyP_.js.map → admin/chunks/cs-BJFxwIWj.js.map} +1 -1
- package/dist/admin/chunks/cs-C7OSYFQ7.js +122 -0
- package/dist/{_chunks/cs-CkJy6B2v.js.map → admin/chunks/cs-C7OSYFQ7.js.map} +1 -1
- package/dist/admin/chunks/de-5QRlDHyR.js +195 -0
- package/dist/{_chunks/ja-7sfIbjxE.js.map → admin/chunks/de-5QRlDHyR.js.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-C1CjdAtC.js +313 -0
- package/dist/admin/chunks/en-C1CjdAtC.js.map +1 -0
- package/dist/admin/chunks/en-LfhocNG2.js +308 -0
- package/dist/{_chunks/en-C-J4DGEe.js.map → admin/chunks/en-LfhocNG2.js.map} +1 -1
- package/dist/admin/chunks/es-C8vLuvZL.js +197 -0
- package/dist/admin/chunks/es-C8vLuvZL.js.map +1 -0
- package/dist/admin/chunks/es-DkoWSExG.js +192 -0
- package/dist/{_chunks/ko-woFZPmLk.js.map → admin/chunks/es-DkoWSExG.js.map} +1 -1
- package/dist/admin/chunks/eu-BG1xX7HK.js +198 -0
- package/dist/admin/chunks/eu-BG1xX7HK.js.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.js +215 -0
- package/dist/admin/chunks/fr-CFdRaRVj.js.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.js +196 -0
- package/dist/admin/chunks/gu-D5MMMXRs.js.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.js +196 -0
- package/dist/admin/chunks/hi-lp17SCjr.js.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_.js +7 -0
- package/dist/admin/chunks/hooks-DMvik5y_.js.map +1 -0
- package/dist/admin/chunks/hu-CLka1U2C.js +198 -0
- package/dist/admin/chunks/hu-CLka1U2C.js.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.js +156 -0
- package/dist/admin/chunks/id-USfY9m1g.js.map +1 -0
- package/dist/admin/chunks/index-BczuAULz.js +5416 -0
- package/dist/admin/chunks/index-BczuAULz.js.map +1 -0
- package/dist/admin/chunks/index-BkyR-Bnu.js +5350 -0
- package/dist/admin/chunks/index-BkyR-Bnu.js.map +1 -0
- package/dist/admin/chunks/it-BAHrwmYS.js +158 -0
- package/dist/admin/chunks/it-BAHrwmYS.js.map +1 -0
- package/dist/admin/chunks/it-CQFpa_Dc.js +163 -0
- package/dist/{_chunks/es-9K52xZIr.js.map → admin/chunks/it-CQFpa_Dc.js.map} +1 -1
- package/dist/admin/chunks/ja-BWKmBJFT.js +192 -0
- package/dist/admin/chunks/ja-BWKmBJFT.js.map +1 -0
- package/dist/admin/chunks/ja-jdQM-B79.js +197 -0
- package/dist/admin/chunks/ja-jdQM-B79.js.map +1 -0
- package/dist/admin/chunks/ko-CgADGBNt.js +191 -0
- package/dist/admin/chunks/ko-CgADGBNt.js.map +1 -0
- package/dist/admin/chunks/ko-k46sEyzt.js +196 -0
- package/dist/admin/chunks/ko-k46sEyzt.js.map +1 -0
- package/dist/admin/chunks/layout-DcDoRT8g.js +618 -0
- package/dist/admin/chunks/layout-DcDoRT8g.js.map +1 -0
- package/dist/admin/chunks/layout-fghBgRgX.js +598 -0
- package/dist/admin/chunks/layout-fghBgRgX.js.map +1 -0
- package/dist/admin/chunks/ml-CnhCfOn_.js +196 -0
- package/dist/admin/chunks/ml-CnhCfOn_.js.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.js +140 -0
- package/dist/{_chunks/uk-C8EiqJY7.js.map → admin/chunks/ms-Bh09NFff.js.map} +1 -1
- package/dist/admin/chunks/ms-CvSC0OdG.js +145 -0
- package/dist/admin/chunks/ms-CvSC0OdG.js.map +1 -0
- 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.js +198 -0
- package/dist/admin/chunks/nl-C8HYflTc.js.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.js +73 -0
- package/dist/admin/chunks/objects-wl73iEma.js.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.js +195 -0
- package/dist/admin/chunks/pl-MFCZJZuZ.js.map +1 -0
- package/dist/admin/chunks/pt-BR-CPtAXD-4.js +202 -0
- package/dist/admin/chunks/pt-BR-CPtAXD-4.js.map +1 -0
- package/dist/admin/chunks/pt-BR-CcotyBGJ.js +197 -0
- package/dist/{_chunks/pt-BR-BiOz37D9.js.map → admin/chunks/pt-BR-CcotyBGJ.js.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.js +93 -0
- package/dist/admin/chunks/pt-HbmgeiYO.js.map +1 -0
- package/dist/admin/chunks/relations-CgaydhiM.js +178 -0
- package/dist/admin/chunks/relations-CgaydhiM.js.map +1 -0
- package/dist/admin/chunks/relations-DPVgU_rq.js +173 -0
- package/dist/admin/chunks/relations-DPVgU_rq.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.js +230 -0
- package/dist/admin/chunks/ru-CB4BUyQp.js.map +1 -0
- 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.js +196 -0
- package/dist/admin/chunks/sa-n_aPA-pU.js.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.js +198 -0
- package/dist/admin/chunks/sk-tn_BDjE2.js.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.js +198 -0
- package/dist/admin/chunks/sv-cq4ZrQRd.js.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.js +144 -0
- package/dist/admin/chunks/th-mUH7hEtc.js.map +1 -0
- 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.js +195 -0
- package/dist/admin/chunks/tr-Yt38daxh.js.map +1 -0
- package/dist/admin/chunks/uk-B24MoTVg.js +145 -0
- package/dist/admin/chunks/uk-B24MoTVg.js.map +1 -0
- package/dist/admin/chunks/uk-Cpgmm7gE.js +140 -0
- package/dist/admin/chunks/uk-Cpgmm7gE.js.map +1 -0
- package/dist/admin/chunks/useDragAndDrop-HYwNDExe.js +247 -0
- package/dist/admin/chunks/useDragAndDrop-HYwNDExe.js.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.js +18 -0
- package/dist/admin/chunks/usePrev-Bjw2dhmq.js.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/admin/chunks/vi-BGr1X_HZ.js.map +1 -0
- package/dist/admin/chunks/vi-CvBGlTjr.js +108 -0
- package/dist/{_chunks/vi-CJlYDheJ.js.map → admin/chunks/vi-CvBGlTjr.js.map} +1 -1
- package/dist/admin/chunks/zh-BmF-sHaT.js +205 -0
- package/dist/admin/chunks/zh-BmF-sHaT.js.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.js +934 -0
- package/dist/{_chunks/zh-Hans-9kOncHGw.js.map → admin/chunks/zh-Hans-CI0HKio3.js.map} +1 -1
- package/dist/admin/chunks/zh-Hans-JVK9x7xr.js +953 -0
- package/dist/{_chunks/zh-Hans-BPQcRIyH.mjs.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 +16 -12
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/src/content-manager.d.ts +3 -2
- package/dist/admin/src/exports.d.ts +1 -0
- package/dist/admin/src/history/services/historyVersion.d.ts +2 -2
- package/dist/admin/src/hooks/useDocument.d.ts +21 -4
- package/dist/admin/src/pages/EditView/EditViewPage.d.ts +9 -1
- package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +1 -1
- package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +3 -3
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +7 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/utils/prismLanguages.d.ts +49 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/constants.d.ts +1 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.d.ts +4 -1
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/Field.d.ts +4 -1
- package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +27 -0
- package/dist/admin/src/pages/EditView/utils/data.d.ts +1 -0
- package/dist/admin/src/preview/components/PreviewContent.d.ts +3 -0
- package/dist/admin/src/preview/components/PreviewHeader.d.ts +3 -0
- package/dist/admin/src/preview/index.d.ts +2 -3
- package/dist/admin/src/preview/pages/Preview.d.ts +11 -0
- package/dist/admin/src/preview/routes.d.ts +3 -0
- package/dist/admin/src/preview/services/preview.d.ts +1 -1
- package/dist/admin/src/router.d.ts +1 -1
- package/dist/admin/src/services/api.d.ts +1 -1
- package/dist/admin/src/services/components.d.ts +2 -2
- package/dist/admin/src/services/contentTypes.d.ts +3 -3
- package/dist/admin/src/services/documents.d.ts +16 -19
- package/dist/admin/src/services/init.d.ts +1 -1
- package/dist/admin/src/services/relations.d.ts +2 -2
- package/dist/admin/src/services/uid.d.ts +3 -3
- package/dist/server/index.js +5461 -4346
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +5433 -4315
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/utils/metadata.d.ts +2 -1
- package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
- package/dist/server/src/history/controllers/history-version.d.ts +1 -1
- package/dist/server/src/history/controllers/history-version.d.ts.map +1 -1
- package/dist/server/src/history/services/history.d.ts +3 -3
- package/dist/server/src/history/services/history.d.ts.map +1 -1
- package/dist/server/src/history/services/utils.d.ts +6 -10
- package/dist/server/src/history/services/utils.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +3 -2
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -1
- package/dist/server/src/preview/index.d.ts.map +1 -1
- package/dist/server/src/preview/services/index.d.ts +1 -0
- package/dist/server/src/preview/services/index.d.ts.map +1 -1
- package/dist/server/src/preview/services/preview-config.d.ts +2 -0
- package/dist/server/src/preview/services/preview-config.d.ts.map +1 -1
- package/dist/server/src/preview/utils.d.ts +1 -0
- package/dist/server/src/preview/utils.d.ts.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/services/document-manager.d.ts.map +1 -1
- package/dist/server/src/services/document-metadata.d.ts +4 -2
- package/dist/server/src/services/document-metadata.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +3 -2
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/utils/configuration/index.d.ts +2 -2
- package/dist/server/src/services/utils/configuration/layouts.d.ts +2 -2
- 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 +3 -3
- 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 +19 -15
- 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-BUOQFZ08.mjs +0 -236
- package/dist/_chunks/ComponentConfigurationPage-BUOQFZ08.mjs.map +0 -1
- package/dist/_chunks/ComponentConfigurationPage-WtZ2yaRP.js +0 -255
- package/dist/_chunks/ComponentConfigurationPage-WtZ2yaRP.js.map +0 -1
- package/dist/_chunks/ComponentIcon-BXdiCGQp.js +0 -176
- package/dist/_chunks/ComponentIcon-BXdiCGQp.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-BVrCP5lF.js +0 -151
- package/dist/_chunks/EditConfigurationPage-BVrCP5lF.js.map +0 -1
- package/dist/_chunks/EditConfigurationPage-D7HkxcAN.mjs +0 -132
- package/dist/_chunks/EditConfigurationPage-D7HkxcAN.mjs.map +0 -1
- package/dist/_chunks/EditViewPage-BKQ83NAk.js +0 -243
- package/dist/_chunks/EditViewPage-BKQ83NAk.js.map +0 -1
- package/dist/_chunks/EditViewPage-zKmMBER4.mjs +0 -224
- package/dist/_chunks/EditViewPage-zKmMBER4.mjs.map +0 -1
- package/dist/_chunks/Field-BbrX_tUG.mjs +0 -5563
- package/dist/_chunks/Field-BbrX_tUG.mjs.map +0 -1
- package/dist/_chunks/Field-BhN0lyyZ.js +0 -5595
- package/dist/_chunks/Field-BhN0lyyZ.js.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-B-E8l73g.mjs +0 -758
- package/dist/_chunks/Form-B-E8l73g.mjs.map +0 -1
- package/dist/_chunks/Form-CkbrtNZd.js +0 -779
- package/dist/_chunks/Form-CkbrtNZd.js.map +0 -1
- package/dist/_chunks/History-B2Dg9q7H.js +0 -1050
- package/dist/_chunks/History-B2Dg9q7H.js.map +0 -1
- package/dist/_chunks/History-C72HQ0-i.mjs +0 -1029
- package/dist/_chunks/History-C72HQ0-i.mjs.map +0 -1
- package/dist/_chunks/ListConfigurationPage-BQCc3BnJ.js +0 -652
- package/dist/_chunks/ListConfigurationPage-BQCc3BnJ.js.map +0 -1
- package/dist/_chunks/ListConfigurationPage-BalSo5dp.mjs +0 -632
- package/dist/_chunks/ListConfigurationPage-BalSo5dp.mjs.map +0 -1
- package/dist/_chunks/ListViewPage-Cu5dZKZe.js +0 -863
- package/dist/_chunks/ListViewPage-Cu5dZKZe.js.map +0 -1
- package/dist/_chunks/ListViewPage-Dfue5wQ2.mjs +0 -839
- package/dist/_chunks/ListViewPage-Dfue5wQ2.mjs.map +0 -1
- package/dist/_chunks/NoContentTypePage-BLC8M9U0.mjs +0 -51
- package/dist/_chunks/NoContentTypePage-BLC8M9U0.mjs.map +0 -1
- package/dist/_chunks/NoContentTypePage-MGzn4JPu.js +0 -51
- package/dist/_chunks/NoContentTypePage-MGzn4JPu.js.map +0 -1
- package/dist/_chunks/NoPermissionsPage-BpAoEQy_.mjs +0 -23
- package/dist/_chunks/NoPermissionsPage-BpAoEQy_.mjs.map +0 -1
- package/dist/_chunks/NoPermissionsPage-DJPwEpOD.js +0 -23
- package/dist/_chunks/NoPermissionsPage-DJPwEpOD.js.map +0 -1
- package/dist/_chunks/Relations-BULOkyWN.mjs +0 -730
- package/dist/_chunks/Relations-BULOkyWN.mjs.map +0 -1
- package/dist/_chunks/Relations-DTiqnyGx.js +0 -750
- package/dist/_chunks/Relations-DTiqnyGx.js.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/ar-CCEVvqGG.mjs.map +0 -1
- package/dist/_chunks/ca-5U32ON2v.mjs +0 -201
- package/dist/_chunks/ca-5U32ON2v.mjs.map +0 -1
- package/dist/_chunks/ca-Cmk45QO6.js +0 -201
- package/dist/_chunks/cs-CM2aBUar.mjs +0 -125
- package/dist/_chunks/cs-CM2aBUar.mjs.map +0 -1
- package/dist/_chunks/cs-CkJy6B2v.js +0 -125
- package/dist/_chunks/de-C72KDNOl.mjs +0 -199
- package/dist/_chunks/de-C72KDNOl.mjs.map +0 -1
- package/dist/_chunks/de-CCEmbAah.js +0 -199
- package/dist/_chunks/en-C-J4DGEe.js +0 -295
- package/dist/_chunks/en-DPfZ6tPQ.mjs +0 -295
- package/dist/_chunks/en-DPfZ6tPQ.mjs.map +0 -1
- package/dist/_chunks/es-9K52xZIr.js +0 -196
- package/dist/_chunks/es-D34tqjMw.mjs +0 -196
- package/dist/_chunks/es-D34tqjMw.mjs.map +0 -1
- package/dist/_chunks/eu-CdALomew.mjs +0 -202
- package/dist/_chunks/eu-CdALomew.mjs.map +0 -1
- 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/id-BtwA9WJT.mjs.map +0 -1
- package/dist/_chunks/index-76eawJUd.js +0 -4175
- package/dist/_chunks/index-76eawJUd.js.map +0 -1
- package/dist/_chunks/index-DW7xp_LG.mjs +0 -4155
- package/dist/_chunks/index-DW7xp_LG.mjs.map +0 -1
- package/dist/_chunks/it-BrVPqaf1.mjs +0 -162
- package/dist/_chunks/it-BrVPqaf1.mjs.map +0 -1
- 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/ja-BHqhDq4V.mjs.map +0 -1
- package/dist/_chunks/ko-HVQRlfUI.mjs +0 -195
- package/dist/_chunks/ko-HVQRlfUI.mjs.map +0 -1
- package/dist/_chunks/ko-woFZPmLk.js +0 -195
- package/dist/_chunks/layout-CVz8WiDC.js +0 -489
- package/dist/_chunks/layout-CVz8WiDC.js.map +0 -1
- package/dist/_chunks/layout-DNfLIjbP.mjs +0 -471
- package/dist/_chunks/layout-DNfLIjbP.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/ms-m_WjyWx7.mjs.map +0 -1
- 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-BR-C71iDxnh.mjs.map +0 -1
- 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-B6K4WRjW.js +0 -130
- package/dist/_chunks/relations-B6K4WRjW.js.map +0 -1
- package/dist/_chunks/relations-ByHSIjSe.mjs +0 -131
- package/dist/_chunks/relations-ByHSIjSe.mjs.map +0 -1
- package/dist/_chunks/ru-BE6A4Exp.mjs +0 -231
- package/dist/_chunks/ru-BE6A4Exp.mjs.map +0 -1
- 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-BqbI8lIT.mjs.map +0 -1
- 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/uk-CR-zDhAY.mjs.map +0 -1
- 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-DdHgKsqq.mjs +0 -231
- package/dist/_chunks/useDragAndDrop-DdHgKsqq.mjs.map +0 -1
- package/dist/_chunks/useDragAndDrop-J0TUUbR6.js +0 -249
- package/dist/_chunks/useDragAndDrop-J0TUUbR6.js.map +0 -1
- package/dist/_chunks/vi-CJlYDheJ.js +0 -111
- package/dist/_chunks/vi-DUXIk_fw.mjs +0 -111
- package/dist/_chunks/vi-DUXIk_fw.mjs.map +0 -1
- 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/preview/constants.d.ts +0 -1
- package/dist/server/src/preview/constants.d.ts +0 -2
- package/dist/server/src/preview/constants.d.ts.map +0 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Relations-Cn0atFpd.js","sources":["../../../admin/src/pages/EditView/components/FormInputs/ComponentContext.tsx","../../../admin/src/pages/EditView/components/FormInputs/Relations.tsx"],"sourcesContent":["import { createContext } from '@strapi/admin/strapi-admin';\n\ninterface ComponentContextValue {\n /**\n * The id of the component. It will be undefined if the component\n * has not been created in the database yet. This could be on a new\n * or existing entry.\n */\n id?: number;\n /**\n * The level of the component. This is used to determine the nesting\n * of the component. The default is set to -1 so that the base level is 0\n * for the top level component, and increases by 1 for each level of nesting.\n */\n level: number;\n /**\n * The uid of the component. This is used to determine the type of the\n * component. Within an attribute, it is normally the `component` value.\n * It will be undefined if the hook is not called within the confines\n * of a provider.\n */\n uid?: string;\n /**\n * The type of component parent. It will be undefined if the hook\n * is not called within the confines of a provider.\n */\n type?: 'dynamiczone' | 'repeatable' | 'component';\n}\n\n/**\n * We use this component to wrap any individual component field in the Edit View,\n * this could be a component field in a dynamic zone, a component within a repeatable space,\n * or even nested components.\n *\n * We primarily need this to provide the component id to the components so that they can\n * correctly fetch their relations.\n */\nconst [ComponentProvider, useComponent] = createContext<ComponentContextValue>('ComponentContext', {\n id: undefined,\n level: -1,\n uid: undefined,\n type: undefined,\n});\n\nexport { ComponentProvider, useComponent };\n","import * as React from 'react';\n\nimport {\n type InputProps,\n useField,\n useForm,\n useNotification,\n useFocusInputField,\n useQueryParams,\n} from '@strapi/admin/strapi-admin';\nimport {\n Box,\n Combobox,\n ComboboxOption,\n Flex,\n IconButton,\n TextButton,\n Tooltip,\n Typography,\n VisuallyHidden,\n useComposedRefs,\n Link,\n Field,\n FlexComponent,\n BoxComponent,\n} from '@strapi/design-system';\nimport { Cross, Drag, ArrowClockwise } from '@strapi/icons';\nimport { generateNKeysBetween } from 'fractional-indexing';\nimport pipe from 'lodash/fp/pipe';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\nimport { FixedSizeList, ListChildComponentProps } from 'react-window';\nimport { styled } from 'styled-components';\n\nimport { RelationDragPreviewProps } from '../../../../components/DragPreviews/RelationDragPreview';\nimport { COLLECTION_TYPES } from '../../../../constants/collections';\nimport { ItemTypes } from '../../../../constants/dragAndDrop';\nimport { useDebounce } from '../../../../hooks/useDebounce';\nimport { useDoc } from '../../../../hooks/useDocument';\nimport { type EditFieldLayout } from '../../../../hooks/useDocumentLayout';\nimport {\n DROP_SENSITIVITY,\n UseDragAndDropOptions,\n useDragAndDrop,\n} from '../../../../hooks/useDragAndDrop';\nimport {\n useGetRelationsQuery,\n useLazySearchRelationsQuery,\n RelationResult,\n} from '../../../../services/relations';\nimport { buildValidParams } from '../../../../utils/api';\nimport { getRelationLabel } from '../../../../utils/relations';\nimport { getTranslation } from '../../../../utils/translations';\nimport { DocumentStatus } from '../DocumentStatus';\n\nimport { useComponent } from './ComponentContext';\n\nimport type { Schema } from '@strapi/types';\n\n/**\n * Remove a relation, whether it's been already saved or not.\n * It's used both in RelationsList, where the \"remove relation\" button is, and in the input,\n * because we sometimes need to remove a previous relation when selecting a new one.\n */\nfunction useHandleDisconnect(fieldName: string, consumerName: string) {\n const field = useField(fieldName);\n const removeFieldRow = useForm(consumerName, (state) => state.removeFieldRow);\n const addFieldRow = useForm(consumerName, (state) => state.addFieldRow);\n\n const handleDisconnect: ListItemProps['data']['handleDisconnect'] = (relation) => {\n if (field.value && field.value.connect) {\n /**\n * A relation will exist in the `connect` array _if_ it has\n * been added without saving. In this case, we just remove it\n * from the connect array\n */\n const indexOfRelationInConnectArray = field.value.connect.findIndex(\n (rel: NonNullable<RelationsFormValue['connect']>[number]) => rel.id === relation.id\n );\n\n if (indexOfRelationInConnectArray >= 0) {\n removeFieldRow(`${fieldName}.connect`, indexOfRelationInConnectArray);\n return;\n }\n }\n\n addFieldRow(`${fieldName}.disconnect`, {\n id: relation.id,\n apiData: {\n id: relation.id,\n documentId: relation.documentId,\n locale: relation.locale,\n },\n });\n };\n\n return handleDisconnect;\n}\n\n/* -------------------------------------------------------------------------------------------------\n * RelationsField\n * -----------------------------------------------------------------------------------------------*/\nconst RELATIONS_TO_DISPLAY = 5;\nconst ONE_WAY_RELATIONS = ['oneWay', 'oneToOne', 'manyToOne', 'oneToManyMorph', 'oneToOneMorph'];\n\ntype RelationPosition =\n | (Pick<RelationResult, 'status' | 'locale'> & {\n before: string;\n end?: never;\n })\n | { end: boolean; before?: never; status?: never; locale?: never };\n\ninterface Relation extends Pick<RelationResult, 'documentId' | 'id' | 'locale' | 'status'> {\n href: string;\n label: string;\n position?: RelationPosition;\n __temp_key__: string;\n}\n\ninterface RelationsFieldProps\n extends Omit<Extract<EditFieldLayout, { type: 'relation' }>, 'size' | 'hint'>,\n Pick<InputProps, 'hint'> {}\n\nexport interface RelationsFormValue {\n connect?: Relation[];\n disconnect?: Pick<Relation, 'id'>[];\n}\n\n/**\n * TODO: we get a rather ugly flash when we remove a single relation from the list leaving\n * no other relations when we press save. The initial relation re-renders, probably because\n * of the lag in the Form cleaning it's \"disconnect\" array, whilst our data has not been invalidated.\n *\n * Could we invalidate relation data on the document actions? Should we?\n */\n\n/**\n * @internal\n * @description The relations field holds a lot of domain logic for handling relations which is rather complicated\n * At present we do not expose this to plugin developers, however, they are able to overwrite it themselves should\n * they wish to do so.\n */\nconst RelationsField = React.forwardRef<HTMLDivElement, RelationsFieldProps>(\n ({ disabled, label, ...props }, ref) => {\n const [currentPage, setCurrentPage] = React.useState(1);\n const { document, model: documentModel } = useDoc();\n const documentId = document?.documentId;\n const { formatMessage } = useIntl();\n const [{ query }] = useQueryParams();\n const params = buildValidParams(query);\n\n const isMorph = props.attribute.relation.toLowerCase().includes('morph');\n const isDisabled = isMorph || disabled;\n\n const { componentId, componentUID } = useComponent('RelationsField', ({ uid, id }) => ({\n componentId: id,\n componentUID: uid,\n }));\n\n const isSubmitting = useForm('RelationsList', (state) => state.isSubmitting);\n\n React.useEffect(() => {\n setCurrentPage(1);\n }, [isSubmitting]);\n\n /**\n * We'll always have a documentId in a created entry, so we look for a componentId first.\n * Same with `uid` and `documentModel`.\n */\n const id = componentId ? componentId.toString() : documentId;\n const model = componentUID ?? documentModel;\n\n /**\n * The `name` prop is a complete path to the field, e.g. `field1.field2.field3`.\n * Where the above example would a nested field within two components, however\n * we only require the field on the component not the complete path since we query\n * individual components. Therefore we split the string and take the last item.\n */\n const [targetField] = props.name.split('.').slice(-1);\n\n const { data, isLoading, isFetching } = useGetRelationsQuery(\n {\n model,\n targetField,\n // below we don't run the query if there is no id.\n id: id!,\n params: {\n ...params,\n pageSize: RELATIONS_TO_DISPLAY,\n page: currentPage,\n },\n },\n {\n refetchOnMountOrArgChange: true,\n skip: !id,\n selectFromResult: (result) => {\n return {\n ...result,\n data: {\n ...result.data,\n results: result.data?.results ? result.data.results : [],\n },\n };\n },\n }\n );\n\n const handleLoadMore = () => {\n setCurrentPage((prev) => prev + 1);\n };\n\n const field = useField(props.name);\n\n const isFetchingMoreRelations = isLoading || isFetching;\n\n const realServerRelationsCount =\n 'pagination' in data && data.pagination ? data.pagination.total : 0;\n\n /**\n * Items that are already connected, but reordered would be in\n * this list, so to get an accurate figure, we remove them.\n */\n const relationsConnected =\n (field.value?.connect ?? []).filter(\n (rel: Relation) => data.results.findIndex((relation) => relation.id === rel.id) === -1\n ).length ?? 0;\n const relationsDisconnected = field.value?.disconnect?.length ?? 0;\n\n const relationsCount = realServerRelationsCount + relationsConnected - relationsDisconnected;\n\n /**\n * This is it, the source of truth for reordering in conjunction with partial loading & updating\n * of relations. Relations on load are given __temp_key__ when fetched, because we don't want to\n * create brand new keys everytime the data updates, just keep adding them onto the newly loaded ones.\n */\n const relations = React.useMemo(() => {\n const ctx = {\n field: field.value,\n // @ts-expect-error – targetModel does exist on the attribute. But it's not typed.\n href: `../${COLLECTION_TYPES}/${props.attribute.targetModel}`,\n mainField: props.mainField,\n };\n\n /**\n * Tidy up our data.\n */\n const transformations = pipe(\n removeConnected(ctx),\n removeDisconnected(ctx),\n addLabelAndHref(ctx)\n );\n\n const transformedRels = transformations([...data.results]);\n\n /**\n * THIS IS CRUCIAL. If you don't sort by the __temp_key__ which comes from fractional indexing\n * then the list will be in the wrong order.\n */\n return [...transformedRels, ...(field.value?.connect ?? [])].sort((a, b) => {\n if (a.__temp_key__ < b.__temp_key__) return -1;\n if (a.__temp_key__ > b.__temp_key__) return 1;\n return 0;\n });\n }, [\n data.results,\n field.value,\n // @ts-expect-error – targetModel does exist on the attribute. But it's not typed.\n props.attribute.targetModel,\n props.mainField,\n ]);\n\n const handleDisconnect = useHandleDisconnect(props.name, 'RelationsField');\n\n const handleConnect: RelationsInputProps['onChange'] = (relation) => {\n const [lastItemInList] = relations.slice(-1);\n\n const item = {\n id: relation.id,\n apiData: {\n id: relation.id,\n documentId: relation.documentId,\n locale: relation.locale,\n },\n status: relation.status,\n /**\n * If there's a last item, that's the first key we use to generate out next one.\n */\n __temp_key__: generateNKeysBetween(lastItemInList?.__temp_key__ ?? null, null, 1)[0],\n // Fallback to `id` if there is no `mainField` value, which will overwrite the above `id` property with the exact same data.\n [props.mainField?.name ?? 'documentId']: relation[props.mainField?.name ?? 'documentId'],\n label: getRelationLabel(relation, props.mainField),\n // @ts-expect-error – targetModel does exist on the attribute, but it's not typed.\n href: `../${COLLECTION_TYPES}/${props.attribute.targetModel}/${relation.documentId}?${relation.locale ? `plugins[i18n][locale]=${relation.locale}` : ''}`,\n };\n\n if (ONE_WAY_RELATIONS.includes(props.attribute.relation)) {\n // Remove any existing relation so they can be replaced with the new one\n field.value?.connect?.forEach(handleDisconnect);\n relations.forEach(handleDisconnect);\n\n field.onChange(`${props.name}.connect`, [item]);\n } else {\n field.onChange(`${props.name}.connect`, [...(field.value?.connect ?? []), item]);\n }\n };\n\n return (\n <Flex\n ref={ref}\n direction=\"column\"\n gap={3}\n justifyContent=\"space-between\"\n alignItems=\"stretch\"\n wrap=\"wrap\"\n >\n <StyledFlex direction=\"column\" alignItems=\"start\" gap={2} width=\"100%\">\n <RelationsInput\n disabled={isDisabled}\n // NOTE: we should not default to using the documentId if the component is being created (componentUID is undefined)\n id={componentUID ? (componentId ? `${componentId}` : '') : documentId}\n label={`${label} ${relationsCount > 0 ? `(${relationsCount})` : ''}`}\n model={model}\n onChange={handleConnect}\n {...props}\n />\n {'pagination' in data &&\n data.pagination &&\n data.pagination.pageCount > data.pagination.page ? (\n <TextButton\n disabled={isFetchingMoreRelations}\n onClick={handleLoadMore}\n loading={isFetchingMoreRelations}\n startIcon={<ArrowClockwise />}\n // prevent the label from line-wrapping\n shrink={0}\n >\n {formatMessage({\n id: getTranslation('relation.loadMore'),\n defaultMessage: 'Load More',\n })}\n </TextButton>\n ) : null}\n </StyledFlex>\n <RelationsList\n data={relations}\n serverData={data.results}\n disabled={isDisabled}\n name={props.name}\n isLoading={isFetchingMoreRelations}\n relationType={props.attribute.relation}\n />\n </Flex>\n );\n }\n);\n\n/**\n * TODO: this can be removed once we stop shipping Inputs with\n * labels wrapped round in DS@2.\n */\nconst StyledFlex = styled<FlexComponent>(Flex)`\n & > div {\n width: 100%;\n }\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * Relation Transformations\n * -----------------------------------------------------------------------------------------------*/\n\ninterface TransformationContext extends Pick<RelationsFieldProps, 'mainField'> {\n field?: RelationsFormValue;\n href: string;\n}\n\n/**\n * If it's in the connected array, it can get out of our data array,\n * we'll be putting it back in later and sorting it anyway.\n */\nconst removeConnected =\n ({ field }: TransformationContext) =>\n (relations: RelationResult[]) => {\n return relations.filter((relation) => {\n const connectedRelations = field?.connect ?? [];\n\n return connectedRelations.findIndex((rel) => rel.id === relation.id) === -1;\n });\n };\n\n/**\n * @description Removes relations that are in the `disconnect` array of the field\n */\nconst removeDisconnected =\n ({ field }: TransformationContext) =>\n (relations: RelationResult[]): RelationResult[] =>\n relations.filter((relation) => {\n const disconnectedRelations = field?.disconnect ?? [];\n\n return disconnectedRelations.findIndex((rel) => rel.id === relation.id) === -1;\n });\n\n/**\n * @description Adds a label and href to the relation object we use this to render\n * a better UI where we can link to the relation and display a human-readable label.\n */\nconst addLabelAndHref =\n ({ mainField, href }: TransformationContext) =>\n (relations: RelationResult[]): Relation[] =>\n relations.map((relation) => {\n return {\n ...relation,\n // Fallback to `id` if there is no `mainField` value, which will overwrite the above `documentId` property with the exact same data.\n [mainField?.name ?? 'documentId']: relation[mainField?.name ?? 'documentId'],\n label: getRelationLabel(relation, mainField),\n href: `${href}/${relation.documentId}?${relation.locale ? `plugins[i18n][locale]=${relation.locale}` : ''}`,\n };\n });\n\n/* -------------------------------------------------------------------------------------------------\n * RelationsInput\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationsInputProps extends Omit<RelationsFieldProps, 'type'> {\n id?: string;\n model: string;\n onChange: (\n relation: Pick<RelationResult, 'documentId' | 'id' | 'locale' | 'status'> & {\n [key: string]: any;\n }\n ) => void;\n}\n\n/**\n * @description Contains all the logic for the combobox that can search\n * for relations and then add them to the field's connect array.\n */\nconst RelationsInput = ({\n hint,\n id,\n model,\n label,\n labelAction,\n name,\n mainField,\n placeholder,\n required,\n unique: _unique,\n 'aria-label': _ariaLabel,\n onChange,\n ...props\n}: RelationsInputProps) => {\n const [textValue, setTextValue] = React.useState<string | undefined>('');\n const [searchParams, setSearchParams] = React.useState({\n _q: '',\n page: 1,\n });\n const { toggleNotification } = useNotification();\n const [{ query }] = useQueryParams();\n\n const { formatMessage } = useIntl();\n const fieldRef = useFocusInputField<HTMLInputElement>(name);\n const field = useField<RelationsFormValue>(name);\n\n const searchParamsDebounced = useDebounce(searchParams, 300);\n const [searchForTrigger, { data, isLoading }] = useLazySearchRelationsQuery();\n\n /**\n * Because we're using a lazy query, we need to trigger the search\n * when the component mounts and when the search params change.\n * We also need to trigger the search when the field value changes\n * so that we can filter out the relations that are already connected.\n */\n React.useEffect(() => {\n /**\n * The `name` prop is a complete path to the field, e.g. `field1.field2.field3`.\n * Where the above example would a nested field within two components, however\n * we only require the field on the component not the complete path since we query\n * individual components. Therefore we split the string and take the last item.\n */\n const [targetField] = name.split('.').slice(-1);\n\n searchForTrigger({\n model,\n targetField,\n params: {\n ...buildValidParams(query),\n id: id ?? '',\n pageSize: 10,\n idsToInclude: field.value?.disconnect?.map((rel) => rel.id.toString()) ?? [],\n idsToOmit: field.value?.connect?.map((rel) => rel.id.toString()) ?? [],\n ...searchParamsDebounced,\n },\n });\n }, [\n field.value?.connect,\n field.value?.disconnect,\n id,\n model,\n name,\n query,\n searchForTrigger,\n searchParamsDebounced,\n ]);\n\n const handleSearch = async (search: string) => {\n setSearchParams((s) => ({ ...s, _q: search, page: 1 }));\n };\n\n const hasNextPage = data?.pagination ? data.pagination.page < data.pagination.pageCount : false;\n\n const options = data?.results ?? [];\n\n const handleChange = (relationId?: string) => {\n if (!relationId) {\n return;\n }\n\n const relation = options.find((opt) => opt.id.toString() === relationId);\n\n if (!relation) {\n // This is very unlikely to happen, but it ensures we don't have any data for.\n console.error(\n \"You've tried to add a relation with an id that does not exist in the options you can see, this is likely a bug with Strapi. Please open an issue.\"\n );\n\n toggleNotification({\n message: formatMessage({\n id: getTranslation('relation.error-adding-relation'),\n defaultMessage: 'An error occurred while trying to add the relation.',\n }),\n type: 'danger',\n });\n\n return;\n }\n\n /**\n * You need to give this relation a correct _temp_key_ but\n * this component doesn't know about those ones, you can't rely\n * on the connect array because that doesn't hold items that haven't\n * moved. So use a callback to fill in the gaps when connecting.\n *\n */\n onChange(relation);\n };\n\n const handleLoadMore = () => {\n if (!data || !data.pagination) {\n return;\n } else if (data.pagination.page < data.pagination.pageCount) {\n setSearchParams((s) => ({ ...s, page: s.page + 1 }));\n }\n };\n\n React.useLayoutEffect(() => {\n setTextValue('');\n }, [field.value]);\n\n return (\n <Field.Root error={field.error} hint={hint} name={name} required={required}>\n <Field.Label action={labelAction}>{label}</Field.Label>\n <Combobox\n ref={fieldRef}\n name={name}\n autocomplete=\"list\"\n placeholder={\n placeholder ||\n formatMessage({\n id: getTranslation('relation.add'),\n defaultMessage: 'Add relation',\n })\n }\n hasMoreItems={hasNextPage}\n loading={isLoading}\n onOpenChange={() => {\n handleSearch(textValue ?? '');\n }}\n noOptionsMessage={() =>\n formatMessage({\n id: getTranslation('relation.notAvailable'),\n defaultMessage: 'No relations available',\n })\n }\n loadingMessage={formatMessage({\n id: getTranslation('relation.isLoading'),\n defaultMessage: 'Relations are loading',\n })}\n onLoadMore={handleLoadMore}\n textValue={textValue}\n onChange={handleChange}\n onTextValueChange={(text) => {\n setTextValue(text);\n }}\n onInputChange={(event) => {\n handleSearch(event.currentTarget.value);\n }}\n {...props}\n >\n {options.map((opt) => {\n const textValue = getRelationLabel(opt, mainField);\n\n return (\n <ComboboxOption key={opt.id} value={opt.id.toString()} textValue={textValue}>\n <Flex gap={2} justifyContent=\"space-between\">\n <Typography ellipsis>{textValue}</Typography>\n {opt.status ? <DocumentStatus status={opt.status} /> : null}\n </Flex>\n </ComboboxOption>\n );\n })}\n </Combobox>\n <Field.Error />\n <Field.Hint />\n </Field.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RelationsList\n * -----------------------------------------------------------------------------------------------*/\nconst RELATION_ITEM_HEIGHT = 50;\nconst RELATION_GUTTER = 4;\n\ninterface RelationsListProps extends Pick<RelationsFieldProps, 'disabled' | 'name'> {\n data: Relation[];\n isLoading?: boolean;\n relationType: Schema.Attribute.RelationKind.Any;\n /**\n * The existing relations connected on the server. We need these to diff against.\n */\n serverData: RelationResult[];\n}\n\nconst RelationsList = ({\n data,\n serverData,\n disabled,\n name,\n isLoading,\n relationType,\n}: RelationsListProps) => {\n const ariaDescriptionId = React.useId();\n const { formatMessage } = useIntl();\n const listRef = React.useRef<FixedSizeList>(null);\n const outerListRef = React.useRef<HTMLUListElement>(null);\n const [overflow, setOverflow] = React.useState<'top' | 'bottom' | 'top-bottom'>();\n const [liveText, setLiveText] = React.useState('');\n const field = useField(name);\n\n React.useEffect(() => {\n if (data.length <= RELATIONS_TO_DISPLAY) {\n return setOverflow(undefined);\n }\n\n const handleNativeScroll = (e: Event) => {\n const el = e.target as HTMLUListElement;\n const parentScrollContainerHeight = (el.parentNode as HTMLDivElement).scrollHeight;\n const maxScrollBottom = el.scrollHeight - el.scrollTop;\n\n if (el.scrollTop === 0) {\n return setOverflow('bottom');\n }\n\n if (maxScrollBottom === parentScrollContainerHeight) {\n return setOverflow('top');\n }\n\n return setOverflow('top-bottom');\n };\n\n const outerListRefCurrent = outerListRef?.current;\n\n if (!isLoading && data.length > 0 && outerListRefCurrent) {\n outerListRef.current.addEventListener('scroll', handleNativeScroll);\n }\n\n return () => {\n if (outerListRefCurrent) {\n outerListRefCurrent.removeEventListener('scroll', handleNativeScroll);\n }\n };\n }, [isLoading, data.length]);\n\n const getItemPos = (index: number) => `${index + 1} of ${data.length}`;\n\n const handleMoveItem: UseDragAndDropOptions['onMoveItem'] = (newIndex, oldIndex) => {\n const item = data[oldIndex];\n\n setLiveText(\n formatMessage(\n {\n id: getTranslation('dnd.reorder'),\n defaultMessage: '{item}, moved. New position in list: {position}.',\n },\n {\n item: item.label ?? item.documentId,\n position: getItemPos(newIndex),\n }\n )\n );\n\n /**\n * Splicing mutates the array, so we need to create a new array\n */\n const newData = [...data];\n const currentRow = data[oldIndex];\n\n const startKey =\n oldIndex > newIndex ? newData[newIndex - 1]?.__temp_key__ : newData[newIndex]?.__temp_key__;\n const endKey =\n oldIndex > newIndex ? newData[newIndex]?.__temp_key__ : newData[newIndex + 1]?.__temp_key__;\n\n /**\n * We're moving the relation between two other relations, so\n * we need to generate a new key that keeps the order\n */\n const [newKey] = generateNKeysBetween(startKey, endKey, 1);\n\n newData.splice(oldIndex, 1);\n newData.splice(newIndex, 0, { ...currentRow, __temp_key__: newKey });\n\n /**\n * Now we diff against the server to understand what's different so we\n * can keep the connect array nice and tidy. It also needs reversing because\n * we reverse the relations from the server in the first place.\n */\n const connectedRelations = newData\n .reduce<Relation[]>((acc, relation, currentIndex, array) => {\n const relationOnServer = serverData.find((oldRelation) => oldRelation.id === relation.id);\n\n const relationInFront = array[currentIndex + 1];\n\n if (!relationOnServer || relationOnServer.__temp_key__ !== relation.__temp_key__) {\n const position = relationInFront\n ? {\n before: relationInFront.documentId,\n locale: relationInFront.locale,\n status:\n 'publishedAt' in relationInFront && relationInFront.publishedAt\n ? 'published'\n : 'draft',\n }\n : { end: true };\n\n const relationWithPosition: Relation = {\n ...relation,\n ...{\n apiData: {\n id: relation.id,\n documentId: relation.documentId,\n locale: relation.locale,\n position,\n },\n },\n };\n\n return [...acc, relationWithPosition];\n }\n\n return acc;\n }, [])\n .toReversed();\n\n field.onChange(`${name}.connect`, connectedRelations);\n };\n\n const handleGrabItem: UseDragAndDropOptions['onGrabItem'] = (index) => {\n const item = data[index];\n\n setLiveText(\n formatMessage(\n {\n id: getTranslation('dnd.grab-item'),\n defaultMessage: `{item}, grabbed. Current position in list: {position}. Press up and down arrow to change position, Spacebar to drop, Escape to cancel.`,\n },\n {\n item: item.label ?? item.documentId,\n position: getItemPos(index),\n }\n )\n );\n };\n\n const handleDropItem: UseDragAndDropOptions['onDropItem'] = (index) => {\n const { href: _href, label, ...item } = data[index];\n\n setLiveText(\n formatMessage(\n {\n id: getTranslation('dnd.drop-item'),\n defaultMessage: `{item}, dropped. Final position in list: {position}.`,\n },\n {\n item: label ?? item.documentId,\n position: getItemPos(index),\n }\n )\n );\n };\n\n const handleCancel: UseDragAndDropOptions['onCancel'] = (index) => {\n const item = data[index];\n\n setLiveText(\n formatMessage(\n {\n id: getTranslation('dnd.cancel-item'),\n defaultMessage: '{item}, dropped. Re-order cancelled.',\n },\n {\n item: item.label ?? item.documentId,\n }\n )\n );\n };\n\n const handleDisconnect = useHandleDisconnect(name, 'RelationsList');\n\n /**\n * These relation types will only ever have one item\n * in their list, so you can't reorder a single item!\n */\n const canReorder = !ONE_WAY_RELATIONS.includes(relationType);\n\n const dynamicListHeight =\n data.length > RELATIONS_TO_DISPLAY\n ? Math.min(data.length, RELATIONS_TO_DISPLAY) * (RELATION_ITEM_HEIGHT + RELATION_GUTTER) +\n RELATION_ITEM_HEIGHT / 2\n : Math.min(data.length, RELATIONS_TO_DISPLAY) * (RELATION_ITEM_HEIGHT + RELATION_GUTTER);\n\n return (\n <ShadowBox $overflowDirection={overflow}>\n <VisuallyHidden id={ariaDescriptionId}>\n {formatMessage({\n id: getTranslation('dnd.instructions'),\n defaultMessage: `Press spacebar to grab and re-order`,\n })}\n </VisuallyHidden>\n <VisuallyHidden aria-live=\"assertive\">{liveText}</VisuallyHidden>\n {/* @ts-expect-error – width is expected, but we've not needed to pass it before. */}\n <FixedSizeList\n height={dynamicListHeight}\n ref={listRef}\n outerRef={outerListRef}\n itemCount={data.length}\n itemSize={RELATION_ITEM_HEIGHT + RELATION_GUTTER}\n itemData={{\n ariaDescribedBy: ariaDescriptionId,\n canDrag: canReorder,\n disabled,\n handleCancel,\n handleDropItem,\n handleGrabItem,\n handleMoveItem,\n name,\n handleDisconnect,\n relations: data,\n }}\n itemKey={(index) => data[index].id}\n innerElementType=\"ol\"\n >\n {ListItem}\n </FixedSizeList>\n </ShadowBox>\n );\n};\n\nconst ShadowBox = styled<BoxComponent>(Box)<{\n $overflowDirection?: 'top-bottom' | 'top' | 'bottom';\n}>`\n position: relative;\n overflow: hidden;\n flex: 1;\n\n &:before,\n &:after {\n position: absolute;\n width: 100%;\n height: 4px;\n z-index: 1;\n }\n\n &:before {\n /* TODO: as for DS Table component we would need this to be handled by the DS theme */\n content: '';\n background: linear-gradient(rgba(3, 3, 5, 0.2) 0%, rgba(0, 0, 0, 0) 100%);\n top: 0;\n opacity: ${({ $overflowDirection }) =>\n $overflowDirection === 'top-bottom' || $overflowDirection === 'top' ? 1 : 0};\n transition: opacity 0.2s ease-in-out;\n }\n\n &:after {\n /* TODO: as for DS Table component we would need this to be handled by the DS theme */\n content: '';\n background: linear-gradient(0deg, rgba(3, 3, 5, 0.2) 0%, rgba(0, 0, 0, 0) 100%);\n bottom: 0;\n opacity: ${({ $overflowDirection }) =>\n $overflowDirection === 'top-bottom' || $overflowDirection === 'bottom' ? 1 : 0};\n transition: opacity 0.2s ease-in-out;\n }\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ListItem\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ListItemProps extends Pick<ListChildComponentProps, 'style' | 'index'> {\n data: {\n ariaDescribedBy: string;\n canDrag?: boolean;\n disabled?: boolean;\n handleCancel: UseDragAndDropOptions['onCancel'];\n handleDropItem: UseDragAndDropOptions['onDropItem'];\n handleGrabItem: UseDragAndDropOptions['onGrabItem'];\n handleMoveItem: UseDragAndDropOptions['onMoveItem'];\n handleDisconnect: (relation: Relation) => void;\n name: string;\n relations: Relation[];\n };\n}\n\nconst ListItem = ({ data, index, style }: ListItemProps) => {\n const {\n ariaDescribedBy,\n canDrag = false,\n disabled = false,\n handleCancel,\n handleDisconnect,\n handleDropItem,\n handleGrabItem,\n handleMoveItem,\n name,\n relations,\n } = data;\n const { formatMessage } = useIntl();\n\n const { href, id, label, status } = relations[index];\n\n const [{ handlerId, isDragging, handleKeyDown }, relationRef, dropRef, dragRef, dragPreviewRef] =\n useDragAndDrop<number, Omit<RelationDragPreviewProps, 'width'>, HTMLDivElement>(\n canDrag && !disabled,\n {\n type: `${ItemTypes.RELATION}_${name}`,\n index,\n item: {\n displayedValue: label,\n status,\n id: id,\n index,\n },\n onMoveItem: handleMoveItem,\n onDropItem: handleDropItem,\n onGrabItem: handleGrabItem,\n onCancel: handleCancel,\n dropSensitivity: DROP_SENSITIVITY.REGULAR,\n }\n );\n\n const composedRefs = useComposedRefs<HTMLDivElement>(relationRef, dragRef);\n\n React.useEffect(() => {\n dragPreviewRef(getEmptyImage());\n }, [dragPreviewRef]);\n\n return (\n <Box\n style={style}\n tag=\"li\"\n ref={dropRef}\n aria-describedby={ariaDescribedBy}\n cursor={canDrag ? 'all-scroll' : 'default'}\n >\n {isDragging ? (\n <RelationItemPlaceholder />\n ) : (\n <Flex\n paddingTop={2}\n paddingBottom={2}\n paddingLeft={canDrag ? 2 : 4}\n paddingRight={4}\n hasRadius\n borderColor=\"neutral200\"\n background={disabled ? 'neutral150' : 'neutral0'}\n justifyContent=\"space-between\"\n ref={composedRefs}\n data-handler-id={handlerId}\n >\n <FlexWrapper gap={1}>\n {canDrag ? (\n <IconButton\n tag=\"div\"\n role=\"button\"\n tabIndex={0}\n withTooltip={false}\n label={formatMessage({\n id: getTranslation('components.RelationInput.icon-button-aria-label'),\n defaultMessage: 'Drag',\n })}\n variant=\"ghost\"\n onKeyDown={handleKeyDown}\n disabled={disabled}\n >\n <Drag />\n </IconButton>\n ) : null}\n <Flex width=\"100%\" minWidth={0} justifyContent=\"space-between\">\n <Box minWidth={0} paddingTop={1} paddingBottom={1} paddingRight={4}>\n <Tooltip description={label}>\n {href ? (\n <LinkEllipsis tag={NavLink} to={href} isExternal={false}>\n {label}\n </LinkEllipsis>\n ) : (\n <Typography textColor={disabled ? 'neutral600' : 'primary600'} ellipsis>\n {label}\n </Typography>\n )}\n </Tooltip>\n </Box>\n {status ? <DocumentStatus status={status} /> : null}\n </Flex>\n </FlexWrapper>\n <Box paddingLeft={4}>\n <IconButton\n onClick={() => handleDisconnect(relations[index])}\n disabled={disabled}\n label={formatMessage({\n id: getTranslation('relation.disconnect'),\n defaultMessage: 'Remove',\n })}\n variant=\"ghost\"\n size=\"S\"\n >\n <Cross />\n </IconButton>\n </Box>\n </Flex>\n )}\n </Box>\n );\n};\n\nconst FlexWrapper = styled<FlexComponent>(Flex)`\n width: 100%;\n /* Used to prevent endAction to be pushed out of container */\n min-width: 0;\n\n & > div[role='button'] {\n cursor: all-scroll;\n }\n`;\n\nconst DisconnectButton = styled.button`\n svg path {\n fill: ${({ theme, disabled }) =>\n disabled ? theme.colors.neutral600 : theme.colors.neutral500};\n }\n\n &:hover svg path,\n &:focus svg path {\n fill: ${({ theme, disabled }) => !disabled && theme.colors.neutral600};\n }\n`;\n\nconst LinkEllipsis = styled(Link)`\n display: block;\n\n & > span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: block;\n }\n`;\n\nconst RelationItemPlaceholder = () => (\n <Box\n paddingTop={2}\n paddingBottom={2}\n paddingLeft={4}\n paddingRight={4}\n hasRadius\n borderStyle=\"dashed\"\n borderColor=\"primary600\"\n borderWidth=\"1px\"\n background=\"primary100\"\n height={`calc(100% - ${RELATION_GUTTER}px)`}\n />\n);\n\nconst MemoizedRelationsField = React.memo(RelationsField);\n\nexport { MemoizedRelationsField as RelationsInput, FlexWrapper, DisconnectButton, LinkEllipsis };\nexport type { RelationsFieldProps };\n"],"names":["ComponentProvider","useComponent","createContext","id","undefined","level","uid","type","useHandleDisconnect","fieldName","consumerName","field","useField","removeFieldRow","useForm","state","addFieldRow","handleDisconnect","relation","value","connect","indexOfRelationInConnectArray","findIndex","rel","apiData","documentId","locale","RELATIONS_TO_DISPLAY","ONE_WAY_RELATIONS","RelationsField","React","forwardRef","disabled","label","props","ref","currentPage","setCurrentPage","useState","document","model","documentModel","useDoc","formatMessage","useIntl","query","useQueryParams","params","buildValidParams","isMorph","attribute","toLowerCase","includes","isDisabled","componentId","componentUID","isSubmitting","useEffect","toString","targetField","name","split","slice","data","isLoading","isFetching","useGetRelationsQuery","pageSize","page","refetchOnMountOrArgChange","skip","selectFromResult","result","results","handleLoadMore","prev","isFetchingMoreRelations","realServerRelationsCount","pagination","total","relationsConnected","filter","length","relationsDisconnected","disconnect","relationsCount","relations","useMemo","ctx","href","COLLECTION_TYPES","targetModel","mainField","transformations","pipe","removeConnected","removeDisconnected","addLabelAndHref","transformedRels","sort","a","b","__temp_key__","handleConnect","lastItemInList","item","status","generateNKeysBetween","getRelationLabel","forEach","onChange","_jsxs","Flex","direction","gap","justifyContent","alignItems","wrap","StyledFlex","width","_jsx","RelationsInput","pageCount","TextButton","onClick","loading","startIcon","ArrowClockwise","shrink","getTranslation","defaultMessage","RelationsList","serverData","relationType","styled","connectedRelations","disconnectedRelations","map","hint","labelAction","placeholder","required","unique","_unique","_ariaLabel","textValue","setTextValue","searchParams","setSearchParams","_q","toggleNotification","useNotification","fieldRef","useFocusInputField","searchParamsDebounced","useDebounce","searchForTrigger","useLazySearchRelationsQuery","idsToInclude","idsToOmit","handleSearch","search","s","hasNextPage","options","handleChange","relationId","find","opt","console","error","message","useLayoutEffect","Field","Root","Label","action","Combobox","autocomplete","hasMoreItems","onOpenChange","noOptionsMessage","loadingMessage","onLoadMore","onTextValueChange","text","onInputChange","event","currentTarget","ComboboxOption","Typography","ellipsis","DocumentStatus","Error","Hint","RELATION_ITEM_HEIGHT","RELATION_GUTTER","ariaDescriptionId","useId","listRef","useRef","outerListRef","overflow","setOverflow","liveText","setLiveText","handleNativeScroll","e","el","target","parentScrollContainerHeight","parentNode","scrollHeight","maxScrollBottom","scrollTop","outerListRefCurrent","current","addEventListener","removeEventListener","getItemPos","index","handleMoveItem","newIndex","oldIndex","position","newData","currentRow","startKey","endKey","newKey","splice","reduce","acc","currentIndex","array","relationOnServer","oldRelation","relationInFront","before","publishedAt","end","relationWithPosition","toReversed","handleGrabItem","handleDropItem","_href","handleCancel","canReorder","dynamicListHeight","Math","min","ShadowBox","$overflowDirection","VisuallyHidden","aria-live","FixedSizeList","height","outerRef","itemCount","itemSize","itemData","ariaDescribedBy","canDrag","itemKey","innerElementType","ListItem","Box","style","handlerId","isDragging","handleKeyDown","relationRef","dropRef","dragRef","dragPreviewRef","useDragAndDrop","ItemTypes","RELATION","displayedValue","onMoveItem","onDropItem","onGrabItem","onCancel","dropSensitivity","DROP_SENSITIVITY","REGULAR","composedRefs","useComposedRefs","getEmptyImage","tag","aria-describedby","cursor","RelationItemPlaceholder","paddingTop","paddingBottom","paddingLeft","paddingRight","hasRadius","borderColor","background","data-handler-id","FlexWrapper","IconButton","role","tabIndex","withTooltip","variant","onKeyDown","Drag","minWidth","Tooltip","description","LinkEllipsis","NavLink","to","isExternal","textColor","size","Cross","DisconnectButton","button","theme","colors","neutral600","neutral500","Link","borderStyle","borderWidth","MemoizedRelationsField","memo"],"mappings":"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"}
|