@strapi/content-manager 0.0.0 → 5.0.0-beta.6
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/README.md +9 -1
- package/dist/_chunks/CardDragPreview-DSVYodBX.js +73 -0
- package/dist/_chunks/CardDragPreview-DSVYodBX.js.map +1 -0
- package/dist/_chunks/CardDragPreview-ikSG4M46.mjs +72 -0
- package/dist/_chunks/CardDragPreview-ikSG4M46.mjs.map +1 -0
- package/dist/_chunks/ComponentConfigurationPage--2aLCv-G.mjs +236 -0
- package/dist/_chunks/ComponentConfigurationPage--2aLCv-G.mjs.map +1 -0
- package/dist/_chunks/ComponentConfigurationPage-43KmCNQE.js +255 -0
- package/dist/_chunks/ComponentConfigurationPage-43KmCNQE.js.map +1 -0
- package/dist/_chunks/ComponentIcon-BBQsYCVn.js +170 -0
- package/dist/_chunks/ComponentIcon-BBQsYCVn.js.map +1 -0
- package/dist/_chunks/ComponentIcon-BOFnK76n.mjs +151 -0
- package/dist/_chunks/ComponentIcon-BOFnK76n.mjs.map +1 -0
- package/dist/_chunks/EditConfigurationPage-BfFzJ4Br.js +151 -0
- package/dist/_chunks/EditConfigurationPage-BfFzJ4Br.js.map +1 -0
- package/dist/_chunks/EditConfigurationPage-CUcGHHvQ.mjs +132 -0
- package/dist/_chunks/EditConfigurationPage-CUcGHHvQ.mjs.map +1 -0
- package/dist/_chunks/EditViewPage-Bm8lgcm6.mjs +203 -0
- package/dist/_chunks/EditViewPage-Bm8lgcm6.mjs.map +1 -0
- package/dist/_chunks/EditViewPage-CzOT5Kpj.js +224 -0
- package/dist/_chunks/EditViewPage-CzOT5Kpj.js.map +1 -0
- package/dist/_chunks/Field-Caef4JjM.js +5352 -0
- package/dist/_chunks/Field-Caef4JjM.js.map +1 -0
- package/dist/_chunks/Field-Dlh0uGnL.mjs +5319 -0
- package/dist/_chunks/Field-Dlh0uGnL.mjs.map +1 -0
- package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs +50 -0
- package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +1 -0
- package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js +49 -0
- package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +1 -0
- package/dist/_chunks/Form-BzuAjtRq.js +759 -0
- package/dist/_chunks/Form-BzuAjtRq.js.map +1 -0
- package/dist/_chunks/Form-EnaQL_6L.mjs +737 -0
- package/dist/_chunks/Form-EnaQL_6L.mjs.map +1 -0
- package/dist/_chunks/History-C17LiyRg.js +960 -0
- package/dist/_chunks/History-C17LiyRg.js.map +1 -0
- package/dist/_chunks/History-D6sbCJvo.mjs +938 -0
- package/dist/_chunks/History-D6sbCJvo.mjs.map +1 -0
- package/dist/_chunks/ListConfigurationPage-Ce4qs7qE.mjs +622 -0
- package/dist/_chunks/ListConfigurationPage-Ce4qs7qE.mjs.map +1 -0
- package/dist/_chunks/ListConfigurationPage-Dks5SX6f.js +643 -0
- package/dist/_chunks/ListConfigurationPage-Dks5SX6f.js.map +1 -0
- package/dist/_chunks/ListViewPage-Be7S5aKL.mjs +835 -0
- package/dist/_chunks/ListViewPage-Be7S5aKL.mjs.map +1 -0
- package/dist/_chunks/ListViewPage-BwrZrPsh.js +859 -0
- package/dist/_chunks/ListViewPage-BwrZrPsh.js.map +1 -0
- package/dist/_chunks/NoContentTypePage-CIPmYQMm.mjs +51 -0
- package/dist/_chunks/NoContentTypePage-CIPmYQMm.mjs.map +1 -0
- package/dist/_chunks/NoContentTypePage-Cu5r1-JT.js +51 -0
- package/dist/_chunks/NoContentTypePage-Cu5r1-JT.js.map +1 -0
- package/dist/_chunks/NoPermissionsPage-C-j6TEUF.js +24 -0
- package/dist/_chunks/NoPermissionsPage-C-j6TEUF.js.map +1 -0
- package/dist/_chunks/NoPermissionsPage-DhJ7LYrr.mjs +24 -0
- package/dist/_chunks/NoPermissionsPage-DhJ7LYrr.mjs.map +1 -0
- package/dist/_chunks/Relations-CY7AtkDA.mjs +684 -0
- package/dist/_chunks/Relations-CY7AtkDA.mjs.map +1 -0
- package/dist/_chunks/Relations-Czs-uZ-s.js +705 -0
- package/dist/_chunks/Relations-Czs-uZ-s.js.map +1 -0
- package/dist/_chunks/ar-BUUWXIYu.js +226 -0
- package/dist/_chunks/ar-BUUWXIYu.js.map +1 -0
- package/dist/_chunks/ar-CCEVvqGG.mjs +226 -0
- package/dist/_chunks/ar-CCEVvqGG.mjs.map +1 -0
- package/dist/_chunks/ca-5U32ON2v.mjs +201 -0
- package/dist/_chunks/ca-5U32ON2v.mjs.map +1 -0
- package/dist/_chunks/ca-Cmk45QO6.js +201 -0
- package/dist/_chunks/ca-Cmk45QO6.js.map +1 -0
- package/dist/_chunks/cs-CM2aBUar.mjs +125 -0
- package/dist/_chunks/cs-CM2aBUar.mjs.map +1 -0
- package/dist/_chunks/cs-CkJy6B2v.js +125 -0
- package/dist/_chunks/cs-CkJy6B2v.js.map +1 -0
- package/dist/_chunks/de-C72KDNOl.mjs +199 -0
- package/dist/_chunks/de-C72KDNOl.mjs.map +1 -0
- package/dist/_chunks/de-CCEmbAah.js +199 -0
- package/dist/_chunks/de-CCEmbAah.js.map +1 -0
- package/dist/_chunks/en-C-V1_90f.js +285 -0
- package/dist/_chunks/en-C-V1_90f.js.map +1 -0
- package/dist/_chunks/en-MBPul9Su.mjs +285 -0
- package/dist/_chunks/en-MBPul9Su.mjs.map +1 -0
- package/dist/_chunks/es-CeXiYflN.mjs +196 -0
- package/dist/_chunks/es-CeXiYflN.mjs.map +1 -0
- package/dist/_chunks/es-EUonQTon.js +196 -0
- package/dist/_chunks/es-EUonQTon.js.map +1 -0
- package/dist/_chunks/eu-CdALomew.mjs +202 -0
- package/dist/_chunks/eu-CdALomew.mjs.map +1 -0
- package/dist/_chunks/eu-VDH-3ovk.js +202 -0
- package/dist/_chunks/eu-VDH-3ovk.js.map +1 -0
- package/dist/_chunks/fr-B7kGGg3E.js +206 -0
- package/dist/_chunks/fr-B7kGGg3E.js.map +1 -0
- package/dist/_chunks/fr-CD9VFbPM.mjs +206 -0
- package/dist/_chunks/fr-CD9VFbPM.mjs.map +1 -0
- package/dist/_chunks/gu-BRmF601H.js +200 -0
- package/dist/_chunks/gu-BRmF601H.js.map +1 -0
- package/dist/_chunks/gu-CNpaMDpH.mjs +200 -0
- package/dist/_chunks/gu-CNpaMDpH.mjs.map +1 -0
- package/dist/_chunks/hi-CCJBptSq.js +200 -0
- package/dist/_chunks/hi-CCJBptSq.js.map +1 -0
- package/dist/_chunks/hi-Dwvd04m3.mjs +200 -0
- package/dist/_chunks/hi-Dwvd04m3.mjs.map +1 -0
- package/dist/_chunks/hooks-BAaaKPS_.js +7 -0
- package/dist/_chunks/hooks-BAaaKPS_.js.map +1 -0
- package/dist/_chunks/hooks-E5u1mcgM.mjs +8 -0
- package/dist/_chunks/hooks-E5u1mcgM.mjs.map +1 -0
- package/dist/_chunks/hu-CeYvaaO0.mjs +202 -0
- package/dist/_chunks/hu-CeYvaaO0.mjs.map +1 -0
- package/dist/_chunks/hu-sNV_yLYy.js +202 -0
- package/dist/_chunks/hu-sNV_yLYy.js.map +1 -0
- package/dist/_chunks/id-B5Ser98A.js +160 -0
- package/dist/_chunks/id-B5Ser98A.js.map +1 -0
- package/dist/_chunks/id-BtwA9WJT.mjs +160 -0
- package/dist/_chunks/id-BtwA9WJT.mjs.map +1 -0
- package/dist/_chunks/index-DNVx8ssZ.mjs +3175 -0
- package/dist/_chunks/index-DNVx8ssZ.mjs.map +1 -0
- package/dist/_chunks/index-X_2tafck.js +3195 -0
- package/dist/_chunks/index-X_2tafck.js.map +1 -0
- package/dist/_chunks/it-BrVPqaf1.mjs +162 -0
- package/dist/_chunks/it-BrVPqaf1.mjs.map +1 -0
- package/dist/_chunks/it-DkBIs7vD.js +162 -0
- package/dist/_chunks/it-DkBIs7vD.js.map +1 -0
- package/dist/_chunks/ja-CcFe8diO.js +196 -0
- package/dist/_chunks/ja-CcFe8diO.js.map +1 -0
- package/dist/_chunks/ja-CtsUxOvk.mjs +196 -0
- package/dist/_chunks/ja-CtsUxOvk.mjs.map +1 -0
- package/dist/_chunks/ko-HVQRlfUI.mjs +195 -0
- package/dist/_chunks/ko-HVQRlfUI.mjs.map +1 -0
- package/dist/_chunks/ko-woFZPmLk.js +195 -0
- package/dist/_chunks/ko-woFZPmLk.js.map +1 -0
- package/dist/_chunks/layout-Dnh0PNp9.mjs +453 -0
- package/dist/_chunks/layout-Dnh0PNp9.mjs.map +1 -0
- package/dist/_chunks/layout-dBc7wN7L.js +473 -0
- package/dist/_chunks/layout-dBc7wN7L.js.map +1 -0
- package/dist/_chunks/ml-BihZwQit.mjs +200 -0
- package/dist/_chunks/ml-BihZwQit.mjs.map +1 -0
- package/dist/_chunks/ml-C2W8N8k1.js +200 -0
- package/dist/_chunks/ml-C2W8N8k1.js.map +1 -0
- package/dist/_chunks/ms-BuFotyP_.js +144 -0
- package/dist/_chunks/ms-BuFotyP_.js.map +1 -0
- package/dist/_chunks/ms-m_WjyWx7.mjs +144 -0
- package/dist/_chunks/ms-m_WjyWx7.mjs.map +1 -0
- package/dist/_chunks/nl-D4R9gHx5.mjs +202 -0
- package/dist/_chunks/nl-D4R9gHx5.mjs.map +1 -0
- package/dist/_chunks/nl-bbEOHChV.js +202 -0
- package/dist/_chunks/nl-bbEOHChV.js.map +1 -0
- package/dist/_chunks/objects-gigeqt7s.js +49 -0
- package/dist/_chunks/objects-gigeqt7s.js.map +1 -0
- package/dist/_chunks/objects-mKMAmfec.mjs +47 -0
- package/dist/_chunks/objects-mKMAmfec.mjs.map +1 -0
- package/dist/_chunks/pl-sbx9mSt_.mjs +199 -0
- package/dist/_chunks/pl-sbx9mSt_.mjs.map +1 -0
- package/dist/_chunks/pl-uzwG-hk7.js +199 -0
- package/dist/_chunks/pl-uzwG-hk7.js.map +1 -0
- package/dist/_chunks/pt-BR-BiOz37D9.js +201 -0
- package/dist/_chunks/pt-BR-BiOz37D9.js.map +1 -0
- package/dist/_chunks/pt-BR-C71iDxnh.mjs +201 -0
- package/dist/_chunks/pt-BR-C71iDxnh.mjs.map +1 -0
- package/dist/_chunks/pt-BsaFvS8-.mjs +95 -0
- package/dist/_chunks/pt-BsaFvS8-.mjs.map +1 -0
- package/dist/_chunks/pt-CeXQuq50.js +95 -0
- package/dist/_chunks/pt-CeXQuq50.js.map +1 -0
- package/dist/_chunks/relations-4pHtBrHJ.js +134 -0
- package/dist/_chunks/relations-4pHtBrHJ.js.map +1 -0
- package/dist/_chunks/relations-Dx7tMKJN.mjs +135 -0
- package/dist/_chunks/relations-Dx7tMKJN.mjs.map +1 -0
- package/dist/_chunks/ru-BE6A4Exp.mjs +231 -0
- package/dist/_chunks/ru-BE6A4Exp.mjs.map +1 -0
- package/dist/_chunks/ru-BT3ybNny.js +231 -0
- package/dist/_chunks/ru-BT3ybNny.js.map +1 -0
- package/dist/_chunks/sa-CcvkYInH.js +200 -0
- package/dist/_chunks/sa-CcvkYInH.js.map +1 -0
- package/dist/_chunks/sa-Dag0k-Z8.mjs +200 -0
- package/dist/_chunks/sa-Dag0k-Z8.mjs.map +1 -0
- package/dist/_chunks/sk-BFg-R8qJ.mjs +202 -0
- package/dist/_chunks/sk-BFg-R8qJ.mjs.map +1 -0
- package/dist/_chunks/sk-CvY09Xjv.js +202 -0
- package/dist/_chunks/sk-CvY09Xjv.js.map +1 -0
- package/dist/_chunks/sv-CUnfWGsh.mjs +202 -0
- package/dist/_chunks/sv-CUnfWGsh.mjs.map +1 -0
- package/dist/_chunks/sv-MYDuzgvT.js +202 -0
- package/dist/_chunks/sv-MYDuzgvT.js.map +1 -0
- package/dist/_chunks/th-BqbI8lIT.mjs +148 -0
- package/dist/_chunks/th-BqbI8lIT.mjs.map +1 -0
- package/dist/_chunks/th-D9_GfAjc.js +148 -0
- package/dist/_chunks/th-D9_GfAjc.js.map +1 -0
- package/dist/_chunks/tr-CgeK3wJM.mjs +199 -0
- package/dist/_chunks/tr-CgeK3wJM.mjs.map +1 -0
- package/dist/_chunks/tr-D9UH-O_R.js +199 -0
- package/dist/_chunks/tr-D9UH-O_R.js.map +1 -0
- package/dist/_chunks/uk-C8EiqJY7.js +144 -0
- package/dist/_chunks/uk-C8EiqJY7.js.map +1 -0
- package/dist/_chunks/uk-CR-zDhAY.mjs +144 -0
- package/dist/_chunks/uk-CR-zDhAY.mjs.map +1 -0
- package/dist/_chunks/urls-CbOsUOoW.mjs +7 -0
- package/dist/_chunks/urls-CbOsUOoW.mjs.map +1 -0
- package/dist/_chunks/urls-DzZya_gm.js +6 -0
- package/dist/_chunks/urls-DzZya_gm.js.map +1 -0
- package/dist/_chunks/useDragAndDrop-DdHgKsqq.mjs +231 -0
- package/dist/_chunks/useDragAndDrop-DdHgKsqq.mjs.map +1 -0
- package/dist/_chunks/useDragAndDrop-J0TUUbR6.js +249 -0
- package/dist/_chunks/useDragAndDrop-J0TUUbR6.js.map +1 -0
- package/dist/_chunks/vi-CJlYDheJ.js +111 -0
- package/dist/_chunks/vi-CJlYDheJ.js.map +1 -0
- package/dist/_chunks/vi-DUXIk_fw.mjs +111 -0
- package/dist/_chunks/vi-DUXIk_fw.mjs.map +1 -0
- package/dist/_chunks/zh-BWZspA60.mjs +209 -0
- package/dist/_chunks/zh-BWZspA60.mjs.map +1 -0
- package/dist/_chunks/zh-CQQfszqR.js +209 -0
- package/dist/_chunks/zh-CQQfszqR.js.map +1 -0
- package/dist/_chunks/zh-Hans-9kOncHGw.js +952 -0
- package/dist/_chunks/zh-Hans-9kOncHGw.js.map +1 -0
- package/dist/_chunks/zh-Hans-BPQcRIyH.mjs +952 -0
- package/dist/_chunks/zh-Hans-BPQcRIyH.mjs.map +1 -0
- package/dist/admin/index.js +11 -0
- package/dist/admin/index.js.map +1 -0
- package/dist/admin/index.mjs +11 -0
- package/dist/admin/index.mjs.map +1 -0
- package/dist/admin/src/components/ComponentIcon.d.ts +8 -0
- package/dist/admin/src/components/ConfigurationForm/EditFieldForm.d.ts +9 -0
- package/dist/admin/src/components/ConfigurationForm/Fields.d.ts +21 -0
- package/dist/admin/src/components/ConfigurationForm/Form.d.ts +32 -0
- package/dist/admin/src/components/DragLayer.d.ts +13 -0
- package/dist/admin/src/components/DragPreviews/CardDragPreview.d.ts +7 -0
- package/dist/admin/src/components/DragPreviews/ComponentDragPreview.d.ts +6 -0
- package/dist/admin/src/components/DragPreviews/RelationDragPreview.d.ts +11 -0
- package/dist/admin/src/components/FieldTypeIcon.d.ts +9 -0
- package/dist/admin/src/components/InjectionZone.d.ts +45 -0
- package/dist/admin/src/components/LeftMenu.d.ts +2 -0
- package/dist/admin/src/components/RelativeTime.d.ts +28 -0
- package/dist/admin/src/constants/attributes.d.ts +14 -0
- package/dist/admin/src/constants/collections.d.ts +3 -0
- package/dist/admin/src/constants/dragAndDrop.d.ts +8 -0
- package/dist/admin/src/constants/hooks.d.ts +26 -0
- package/dist/admin/src/constants/plugin.d.ts +3 -0
- package/dist/admin/src/content-manager.d.ts +133 -0
- package/dist/admin/src/exports.d.ts +11 -0
- package/dist/admin/src/features/DocumentRBAC.d.ts +36 -0
- package/dist/admin/src/history/components/HistoryAction.d.ts +3 -0
- package/dist/admin/src/history/components/VersionContent.d.ts +17 -0
- package/dist/admin/src/history/components/VersionHeader.d.ts +5 -0
- package/dist/admin/src/history/components/VersionInputRenderer.d.ts +19 -0
- package/dist/admin/src/history/components/VersionsList.d.ts +2 -0
- package/dist/admin/src/history/pages/History.d.ts +27 -0
- package/dist/admin/src/history/routes.d.ts +6 -0
- package/dist/admin/src/history/services/historyVersion.d.ts +12 -0
- package/dist/admin/src/hooks/useContentManagerInitData.d.ts +15 -0
- package/dist/admin/src/hooks/useContentTypeSchema.d.ts +25 -0
- package/dist/admin/src/hooks/useDebounce.d.ts +1 -0
- package/dist/admin/src/hooks/useDocument.d.ts +90 -0
- package/dist/admin/src/hooks/useDocumentActions.d.ts +102 -0
- package/dist/admin/src/hooks/useDocumentLayout.d.ts +137 -0
- package/dist/admin/src/hooks/useDragAndDrop.d.ts +51 -0
- package/dist/admin/src/hooks/useKeyboardDragAndDrop.d.ts +14 -0
- package/dist/admin/src/hooks/useLazyComponents.d.ts +13 -0
- package/dist/admin/src/hooks/useOnce.d.ts +2 -0
- package/dist/admin/src/hooks/usePrev.d.ts +1 -0
- package/dist/admin/src/index.d.ts +16 -0
- package/dist/admin/src/layout.d.ts +2 -0
- package/dist/admin/src/modules/app.d.ts +20 -0
- package/dist/admin/src/modules/hooks.d.ts +10 -0
- package/dist/admin/src/modules/reducers.d.ts +6 -0
- package/dist/admin/src/pages/ComponentConfigurationPage.d.ts +3 -0
- package/dist/admin/src/pages/EditConfigurationPage.d.ts +3 -0
- package/dist/admin/src/pages/EditView/EditViewPage.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +69 -0
- package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +16 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Heading.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Image.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Paragraph.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Quote.d.ts +3 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.d.ts +6 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.d.ts +61 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.d.ts +11 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.d.ts +10 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.d.ts +10 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Modifiers.d.ts +16 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/plugins/withImages.d.ts +11 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/plugins/withLinks.d.ts +9 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/plugins/withStrapiSchema.d.ts +8 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/conversions.d.ts +13 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/enterKey.d.ts +6 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/links.d.ts +10 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/types.d.ts +10 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Component/Initializer.d.ts +9 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Component/Input.d.ts +18 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Component/NonRepeatable.d.ts +5 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Component/Repeatable.d.ts +5 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/ComponentContext.d.ts +42 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/AddComponentButton.d.ts +11 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/ComponentCard.d.ts +9 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.d.ts +17 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/ComponentPicker.d.ts +9 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.d.ts +14 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicZoneLabel.d.ts +12 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/Field.d.ts +14 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/NotAllowed.d.ts +7 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Relations.d.ts +26 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/UID.d.ts +9 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/Editor.d.ts +17 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.d.ts +60 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/Field.d.ts +11 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/PreviewWysiwyg.d.ts +5 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygFooter.d.ts +7 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.d.ts +17 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +55 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/utils/continueList.d.ts +5 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/utils/mdRenderer.d.ts +4 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.d.ts +16 -0
- package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +5 -0
- package/dist/admin/src/pages/EditView/components/Header.d.ts +35 -0
- package/dist/admin/src/pages/EditView/components/InputRenderer.d.ts +17 -0
- package/dist/admin/src/pages/EditView/components/Panels.d.ts +10 -0
- package/dist/admin/src/pages/EditView/utils/data.d.ts +33 -0
- package/dist/admin/src/pages/EditView/utils/forms.d.ts +9 -0
- package/dist/admin/src/pages/ListConfiguration/ListConfigurationPage.d.ts +10 -0
- package/dist/admin/src/pages/ListConfiguration/components/DraggableCard.d.ts +12 -0
- package/dist/admin/src/pages/ListConfiguration/components/EditFieldForm.d.ts +8 -0
- package/dist/admin/src/pages/ListConfiguration/components/Header.d.ts +8 -0
- package/dist/admin/src/pages/ListConfiguration/components/Settings.d.ts +19 -0
- package/dist/admin/src/pages/ListConfiguration/components/SortDisplayedFields.d.ts +6 -0
- package/dist/admin/src/pages/ListView/ListViewPage.d.ts +3 -0
- package/dist/admin/src/pages/ListView/components/AutoCloneFailureModal.d.ts +7 -0
- package/dist/admin/src/pages/ListView/components/BulkActions/Actions.d.ts +51 -0
- package/dist/admin/src/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.d.ts +15 -0
- package/dist/admin/src/pages/ListView/components/BulkActions/PublishAction.d.ts +31 -0
- package/dist/admin/src/pages/ListView/components/Filters.d.ts +8 -0
- package/dist/admin/src/pages/ListView/components/TableActions.d.ts +8 -0
- package/dist/admin/src/pages/ListView/components/TableCells/CellContent.d.ts +9 -0
- package/dist/admin/src/pages/ListView/components/TableCells/CellValue.d.ts +8 -0
- package/dist/admin/src/pages/ListView/components/TableCells/Components.d.ts +12 -0
- package/dist/admin/src/pages/ListView/components/TableCells/Media.d.ts +23 -0
- package/dist/admin/src/pages/ListView/components/TableCells/Relations.d.ts +12 -0
- package/dist/admin/src/pages/ListView/components/ViewSettingsMenu.d.ts +10 -0
- package/dist/admin/src/pages/NoContentTypePage.d.ts +2 -0
- package/dist/admin/src/pages/NoPermissionsPage.d.ts +2 -0
- package/dist/admin/src/router.d.ts +5 -0
- package/dist/admin/src/services/api.d.ts +3 -0
- package/dist/admin/src/services/components.d.ts +5 -0
- package/dist/admin/src/services/contentTypes.d.ts +17 -0
- package/dist/admin/src/services/documents.d.ts +89 -0
- package/dist/admin/src/services/init.d.ts +9 -0
- package/dist/admin/src/services/relations.d.ts +49 -0
- package/dist/admin/src/services/uid.d.ts +32 -0
- package/dist/admin/src/utils/api.d.ts +38 -0
- package/dist/admin/src/utils/attributes.d.ts +19 -0
- package/dist/admin/src/utils/objects.d.ts +33 -0
- package/dist/admin/src/utils/relations.d.ts +12 -0
- package/dist/admin/src/utils/strings.d.ts +2 -0
- package/dist/admin/src/utils/translations.d.ts +4 -0
- package/dist/admin/src/utils/urls.d.ts +2 -0
- package/dist/admin/src/utils/users.d.ts +6 -0
- package/dist/admin/src/utils/validation.d.ts +12 -0
- package/dist/server/index.js +4238 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/index.mjs +4214 -0
- package/dist/server/index.mjs.map +1 -0
- package/dist/server/src/bootstrap.d.ts +3 -0
- package/dist/server/src/bootstrap.d.ts.map +1 -0
- package/dist/server/src/config.d.ts +6 -0
- package/dist/server/src/config.d.ts.map +1 -0
- package/dist/server/src/constants/index.d.ts +6 -0
- package/dist/server/src/constants/index.d.ts.map +1 -0
- package/dist/server/src/controllers/collection-types.d.ts +23 -0
- package/dist/server/src/controllers/collection-types.d.ts.map +1 -0
- package/dist/server/src/controllers/components.d.ts +7 -0
- package/dist/server/src/controllers/components.d.ts.map +1 -0
- package/dist/server/src/controllers/content-types.d.ts +8 -0
- package/dist/server/src/controllers/content-types.d.ts.map +1 -0
- package/dist/server/src/controllers/index.d.ts +53 -0
- package/dist/server/src/controllers/index.d.ts.map +1 -0
- package/dist/server/src/controllers/init.d.ts +5 -0
- package/dist/server/src/controllers/init.d.ts.map +1 -0
- package/dist/server/src/controllers/relations.d.ts +13 -0
- package/dist/server/src/controllers/relations.d.ts.map +1 -0
- package/dist/server/src/controllers/single-types.d.ts +11 -0
- package/dist/server/src/controllers/single-types.d.ts.map +1 -0
- package/dist/server/src/controllers/uid.d.ts +6 -0
- package/dist/server/src/controllers/uid.d.ts.map +1 -0
- package/dist/server/src/controllers/utils/clone.d.ts +12 -0
- package/dist/server/src/controllers/utils/clone.d.ts.map +1 -0
- package/dist/server/src/controllers/utils/dimensions.d.ts +5 -0
- package/dist/server/src/controllers/utils/dimensions.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/index.d.ts +20 -0
- package/dist/server/src/controllers/validation/index.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/model-configuration.d.ts +22 -0
- package/dist/server/src/controllers/validation/model-configuration.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/relations.d.ts +4 -0
- package/dist/server/src/controllers/validation/relations.d.ts.map +1 -0
- package/dist/server/src/destroy.d.ts +4 -0
- package/dist/server/src/destroy.d.ts.map +1 -0
- package/dist/server/src/history/constants.d.ts +3 -0
- package/dist/server/src/history/constants.d.ts.map +1 -0
- package/dist/server/src/history/controllers/history-version.d.ts +19 -0
- package/dist/server/src/history/controllers/history-version.d.ts.map +1 -0
- package/dist/server/src/history/controllers/index.d.ts +2 -0
- package/dist/server/src/history/controllers/index.d.ts.map +1 -0
- package/dist/server/src/history/controllers/validation/history-version.d.ts +2 -0
- package/dist/server/src/history/controllers/validation/history-version.d.ts.map +1 -0
- package/dist/server/src/history/index.d.ts +4 -0
- package/dist/server/src/history/index.d.ts.map +1 -0
- package/dist/server/src/history/models/history-version.d.ts +4 -0
- package/dist/server/src/history/models/history-version.d.ts.map +1 -0
- package/dist/server/src/history/routes/history-version.d.ts +4 -0
- package/dist/server/src/history/routes/history-version.d.ts.map +1 -0
- package/dist/server/src/history/routes/index.d.ts +8 -0
- package/dist/server/src/history/routes/index.d.ts.map +1 -0
- package/dist/server/src/history/services/history.d.ts +18 -0
- package/dist/server/src/history/services/history.d.ts.map +1 -0
- package/dist/server/src/history/services/index.d.ts +15 -0
- package/dist/server/src/history/services/index.d.ts.map +1 -0
- package/dist/server/src/history/services/utils.d.ts +12 -0
- package/dist/server/src/history/services/utils.d.ts.map +1 -0
- package/dist/server/src/history/utils.d.ts +18 -0
- package/dist/server/src/history/utils.d.ts.map +1 -0
- package/dist/server/src/index.d.ts +374 -0
- package/dist/server/src/index.d.ts.map +1 -0
- package/dist/server/src/middlewares/index.d.ts +3 -0
- package/dist/server/src/middlewares/index.d.ts.map +1 -0
- package/dist/server/src/middlewares/routing.d.ts +4 -0
- package/dist/server/src/middlewares/routing.d.ts.map +1 -0
- package/dist/server/src/policies/hasPermissions.d.ts +7 -0
- package/dist/server/src/policies/hasPermissions.d.ts.map +1 -0
- package/dist/server/src/policies/index.d.ts +9 -0
- package/dist/server/src/policies/index.d.ts.map +1 -0
- package/dist/server/src/register.d.ts +4 -0
- package/dist/server/src/register.d.ts.map +1 -0
- package/dist/server/src/routes/admin.d.ts +41 -0
- package/dist/server/src/routes/admin.d.ts.map +1 -0
- package/dist/server/src/routes/index.d.ts +43 -0
- package/dist/server/src/routes/index.d.ts.map +1 -0
- package/dist/server/src/services/components.d.ts +32 -0
- package/dist/server/src/services/components.d.ts.map +1 -0
- package/dist/server/src/services/configuration.d.ts +20 -0
- package/dist/server/src/services/configuration.d.ts.map +1 -0
- package/dist/server/src/services/content-types.d.ts +18 -0
- package/dist/server/src/services/content-types.d.ts.map +1 -0
- package/dist/server/src/services/data-mapper.d.ts +20 -0
- package/dist/server/src/services/data-mapper.d.ts.map +1 -0
- package/dist/server/src/services/document-manager.d.ts +47 -0
- package/dist/server/src/services/document-manager.d.ts.map +1 -0
- package/dist/server/src/services/document-metadata.d.ts +88 -0
- package/dist/server/src/services/document-metadata.d.ts.map +1 -0
- package/dist/server/src/services/field-sizes.d.ts +19 -0
- package/dist/server/src/services/field-sizes.d.ts.map +1 -0
- package/dist/server/src/services/index.d.ts +266 -0
- package/dist/server/src/services/index.d.ts.map +1 -0
- package/dist/server/src/services/metrics.d.ts +9 -0
- package/dist/server/src/services/metrics.d.ts.map +1 -0
- package/dist/server/src/services/permission-checker.d.ts +54 -0
- package/dist/server/src/services/permission-checker.d.ts.map +1 -0
- package/dist/server/src/services/permission.d.ts +12 -0
- package/dist/server/src/services/permission.d.ts.map +1 -0
- package/dist/server/src/services/populate-builder.d.ts +30 -0
- package/dist/server/src/services/populate-builder.d.ts.map +1 -0
- package/dist/server/src/services/uid.d.ts +25 -0
- package/dist/server/src/services/uid.d.ts.map +1 -0
- package/dist/server/src/services/utils/configuration/attributes.d.ts +17 -0
- package/dist/server/src/services/utils/configuration/attributes.d.ts.map +1 -0
- package/dist/server/src/services/utils/configuration/index.d.ts +21 -0
- package/dist/server/src/services/utils/configuration/index.d.ts.map +1 -0
- package/dist/server/src/services/utils/configuration/layouts.d.ts +14 -0
- package/dist/server/src/services/utils/configuration/layouts.d.ts.map +1 -0
- package/dist/server/src/services/utils/configuration/metadatas.d.ts +5 -0
- package/dist/server/src/services/utils/configuration/metadatas.d.ts.map +1 -0
- package/dist/server/src/services/utils/configuration/settings.d.ts +5 -0
- package/dist/server/src/services/utils/configuration/settings.d.ts.map +1 -0
- package/dist/server/src/services/utils/count.d.ts +5 -0
- package/dist/server/src/services/utils/count.d.ts.map +1 -0
- package/dist/server/src/services/utils/draft.d.ts +11 -0
- package/dist/server/src/services/utils/draft.d.ts.map +1 -0
- package/dist/server/src/services/utils/populate.d.ts +35 -0
- package/dist/server/src/services/utils/populate.d.ts.map +1 -0
- package/dist/server/src/services/utils/store.d.ts +16 -0
- package/dist/server/src/services/utils/store.d.ts.map +1 -0
- package/dist/server/src/utils/index.d.ts +9 -0
- package/dist/server/src/utils/index.d.ts.map +1 -0
- package/dist/server/src/validation/policies/hasPermissions.d.ts +2 -0
- package/dist/server/src/validation/policies/hasPermissions.d.ts.map +1 -0
- package/dist/shared/contracts/collection-types.d.ts +328 -0
- package/dist/shared/contracts/collection-types.d.ts.map +1 -0
- package/dist/shared/contracts/components.d.ts +65 -0
- package/dist/shared/contracts/components.d.ts.map +1 -0
- package/dist/shared/contracts/content-types.d.ts +113 -0
- package/dist/shared/contracts/content-types.d.ts.map +1 -0
- package/dist/shared/contracts/history-versions.d.ts +92 -0
- package/dist/shared/contracts/history-versions.d.ts.map +1 -0
- package/dist/shared/contracts/index.d.ts +10 -0
- package/dist/shared/contracts/index.d.ts.map +1 -0
- package/dist/shared/contracts/init.d.ts +24 -0
- package/dist/shared/contracts/init.d.ts.map +1 -0
- package/dist/shared/contracts/relations.d.ts +70 -0
- package/dist/shared/contracts/relations.d.ts.map +1 -0
- package/dist/shared/contracts/review-workflows.d.ts +78 -0
- package/dist/shared/contracts/review-workflows.d.ts.map +1 -0
- package/dist/shared/contracts/single-types.d.ts +113 -0
- package/dist/shared/contracts/single-types.d.ts.map +1 -0
- package/dist/shared/contracts/uid.d.ts +48 -0
- package/dist/shared/contracts/uid.d.ts.map +1 -0
- package/dist/shared/index.d.ts +2 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +43 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/index.mjs +43 -0
- package/dist/shared/index.mjs.map +1 -0
- package/package.json +114 -2
- package/strapi-server.js +3 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ListConfigurationPage-Dks5SX6f.js","sources":["../../admin/src/pages/ListConfiguration/components/Header.tsx","../../admin/src/pages/ListConfiguration/components/Settings.tsx","../../admin/src/pages/ListConfiguration/components/EditFieldForm.tsx","../../admin/src/pages/ListConfiguration/components/DraggableCard.tsx","../../admin/src/pages/ListConfiguration/components/SortDisplayedFields.tsx","../../admin/src/pages/ListConfiguration/ListConfigurationPage.tsx"],"sourcesContent":["import { useForm, BackButton } from '@strapi/admin/strapi-admin';\nimport { Button, HeaderLayout } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { capitalise } from '../../../utils/strings';\nimport { getTranslation } from '../../../utils/translations';\n\ninterface HeaderProps {\n collectionType: string;\n name: string;\n model: string;\n}\n\nconst Header = ({ name }: HeaderProps) => {\n const { formatMessage } = useIntl();\n\n const modified = useForm('Header', (state) => state.modified);\n const isSubmitting = useForm('Header', (state) => state.isSubmitting);\n\n return (\n <HeaderLayout\n navigationAction={<BackButton />}\n primaryAction={\n <Button size=\"S\" disabled={!modified} type=\"submit\" loading={isSubmitting}>\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n subtitle={formatMessage({\n id: getTranslation('components.SettingsViewWrapper.pluginHeader.description.list-settings'),\n defaultMessage: 'Define the settings of the list view.',\n })}\n title={formatMessage(\n {\n id: getTranslation('components.SettingsViewWrapper.pluginHeader.title'),\n defaultMessage: 'Configure the view - {name}',\n },\n { name: capitalise(name) }\n )}\n />\n );\n};\n\nexport { Header };\nexport type { HeaderProps };\n","import * as React from 'react';\n\nimport { useForm, InputRenderer, type InputProps } from '@strapi/admin/strapi-admin';\nimport { Flex, Grid, GridItem, Typography, useCollator } from '@strapi/design-system';\nimport { type MessageDescriptor, useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../hooks/useDocument';\nimport { type EditFieldLayout } from '../../../hooks/useDocumentLayout';\nimport { getTranslation } from '../../../utils/translations';\nimport { type FormData } from '../ListConfigurationPage';\n\nimport type { DistributiveOmit } from 'react-redux';\n\nexport type InputPropsWithMessageDescriptors = DistributiveOmit<\n InputProps,\n 'hint' | 'label' | 'placeholder'\n> & {\n hint?: MessageDescriptor;\n label: MessageDescriptor;\n placeholder?: MessageDescriptor;\n};\n\n/**\n * @internal\n * @description Form inputs are always displayed in a grid, so we need\n * to use the size property to determine how many columns the input should\n * take up.\n */\nexport type FormLayoutInputProps = InputPropsWithMessageDescriptors & { size: number };\n\nconst EXCLUDED_SORT_ATTRIBUTE_TYPES = [\n 'media',\n 'richtext',\n 'dynamiczone',\n 'relation',\n 'component',\n 'json',\n 'blocks',\n];\n\ninterface SortOption {\n value: string;\n label: string;\n}\n\nconst Settings = () => {\n const { formatMessage, locale } = useIntl();\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n const { schema } = useDoc();\n\n const layout = useForm<FormData['layout']>('Settings', (state) => state.values.layout ?? []);\n const currentSortBy = useForm<FormData['settings']['defaultSortBy']>(\n 'Settings',\n (state) => state.values.settings.defaultSortBy\n );\n const onChange = useForm('Settings', (state) => state.onChange);\n\n const sortOptions = React.useMemo(\n () =>\n Object.values(layout).reduce<SortOption[]>((acc, field) => {\n if (schema && !EXCLUDED_SORT_ATTRIBUTE_TYPES.includes(schema.attributes[field.name].type)) {\n acc.push({\n value: field.name,\n label: typeof field.label !== 'string' ? formatMessage(field.label) : field.label,\n });\n }\n\n return acc;\n }, []),\n [formatMessage, layout, schema]\n );\n\n const sortOptionsSorted = sortOptions.sort((a, b) => formatter.compare(a.label, b.label));\n\n React.useEffect(() => {\n if (sortOptionsSorted.findIndex((opt) => opt.value === currentSortBy) === -1) {\n onChange('settings.defaultSortBy', sortOptionsSorted[0]?.value);\n }\n }, [currentSortBy, onChange, sortOptionsSorted]);\n\n const formLayout = React.useMemo(\n () =>\n SETTINGS_FORM_LAYOUT.map((row) =>\n row.map((field) => {\n if (field.type === 'enumeration') {\n return {\n ...field,\n hint: field.hint ? formatMessage(field.hint) : undefined,\n label: formatMessage(field.label),\n options: field.name === 'settings.defaultSortBy' ? sortOptionsSorted : field.options,\n };\n } else {\n return {\n ...field,\n hint: field.hint ? formatMessage(field.hint) : undefined,\n label: formatMessage(field.label),\n };\n }\n })\n ) as [top: EditFieldLayout[], bottom: EditFieldLayout[]],\n [formatMessage, sortOptionsSorted]\n );\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: getTranslation('containers.SettingPage.settings'),\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid key=\"bottom\" gap={4}>\n {formLayout.map((row) =>\n row.map(({ size, ...field }) => (\n <GridItem key={field.name} s={12} col={size}>\n {/* @ts-expect-error – issue with EnumerationProps conflicting with InputProps */}\n <InputRenderer {...field} />\n </GridItem>\n ))\n )}\n </Grid>\n </Flex>\n );\n};\n\nconst SETTINGS_FORM_LAYOUT: FormLayoutInputProps[][] = [\n [\n {\n label: {\n id: getTranslation('form.Input.search'),\n defaultMessage: 'Enable search',\n },\n name: 'settings.searchable',\n size: 4,\n type: 'boolean' as const,\n },\n {\n label: {\n id: getTranslation('form.Input.filters'),\n defaultMessage: 'Enable filters',\n },\n name: 'settings.filterable',\n size: 4,\n type: 'boolean' as const,\n },\n {\n label: {\n id: getTranslation('form.Input.bulkActions'),\n defaultMessage: 'Enable bulk actions',\n },\n name: 'settings.bulkable',\n size: 4,\n type: 'boolean' as const,\n },\n ],\n [\n {\n hint: {\n id: getTranslation('form.Input.pageEntries.inputDescription'),\n defaultMessage: 'Note: You can override this value in the Collection Type settings page.',\n },\n label: {\n id: getTranslation('form.Input.pageEntries'),\n defaultMessage: 'Entries per page',\n },\n name: 'settings.pageSize',\n options: ['10', '20', '50', '100'].map((value) => ({ value, label: value })),\n size: 6,\n type: 'enumeration' as const,\n },\n {\n label: {\n id: getTranslation('form.Input.defaultSort'),\n defaultMessage: 'Default sort attribute',\n },\n name: 'settings.defaultSortBy',\n options: [],\n size: 3,\n type: 'enumeration' as const,\n },\n {\n label: {\n id: getTranslation('form.Input.sort.order'),\n defaultMessage: 'Default sort order',\n },\n name: 'settings.defaultSortOrder',\n options: ['ASC', 'DESC'].map((value) => ({ value, label: value })),\n size: 3,\n type: 'enumeration' as const,\n },\n ],\n];\n\nexport { Settings };\n","import { useId } from 'react';\n\nimport { Form, useField, InputRenderer, useNotification } from '@strapi/admin/strapi-admin';\nimport {\n Button,\n Flex,\n Grid,\n GridItem,\n ModalBody,\n ModalFooter,\n ModalHeader,\n ModalLayout,\n Typography,\n} from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport styled from 'styled-components';\nimport * as yup from 'yup';\n\nimport { FieldTypeIcon } from '../../../components/FieldTypeIcon';\nimport { capitalise } from '../../../utils/strings';\nimport { getTranslation } from '../../../utils/translations';\n\nimport type { ListFieldLayout } from '../../../hooks/useDocumentLayout';\nimport type { FormData } from '../ListConfigurationPage';\n\ninterface EditFieldFormProps extends Pick<ListFieldLayout, 'attribute'> {\n name: string;\n onClose: () => void;\n}\n\nconst FIELD_SCHEMA = yup.object().shape({\n label: yup.string().required(),\n sortable: yup.boolean(),\n});\n\nconst EditFieldForm = ({ attribute, name, onClose }: EditFieldFormProps) => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const id = useId();\n\n const { value, onChange } = useField<FormData['layout'][number]>(name);\n\n if (!value) {\n // This is very unlikely to happen, but it ensures the form is not opened without a value.\n console.error(\n \"You've opened a field to edit without it being part of the form, this is likely a bug with Strapi. Please open an issue.\"\n );\n\n toggleNotification({\n message: formatMessage({\n id: 'content-manager.containers.list-settings.modal-form.error',\n defaultMessage: 'An error occurred while trying to open the form.',\n }),\n type: 'danger',\n });\n\n return null;\n }\n\n let shouldDisplaySortToggle = !['media', 'relation'].includes(attribute.type);\n\n if ('relation' in attribute && ['oneWay', 'oneToOne', 'manyToOne'].includes(attribute.relation)) {\n shouldDisplaySortToggle = true;\n }\n\n return (\n <ModalLayout onClose={onClose} labelledBy={id}>\n <Form\n method=\"PUT\"\n initialValues={value}\n validationSchema={FIELD_SCHEMA}\n onSubmit={(data) => {\n onChange(name, data);\n onClose();\n }}\n >\n <ModalHeader>\n <HeaderContainer>\n {/* @ts-expect-error attribute.type === custom does not work here */}\n <FieldTypeIcon type={attribute.type} />\n <Typography fontWeight=\"bold\" textColor=\"neutral800\" as=\"h2\" id={id}>\n {formatMessage(\n {\n id: getTranslation('containers.list-settings.modal-form.label'),\n defaultMessage: 'Edit {fieldName}',\n },\n { fieldName: capitalise(value.label) }\n )}\n </Typography>\n </HeaderContainer>\n </ModalHeader>\n <ModalBody>\n <Grid gap={4}>\n {[\n {\n name: 'label',\n label: formatMessage({\n id: getTranslation('form.Input.label'),\n defaultMessage: 'Label',\n }),\n hint: formatMessage({\n id: getTranslation('form.Input.label.inputDescription'),\n defaultMessage: \"This value overrides the label displayed in the table's head\",\n }),\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: getTranslation('form.Input.sort.field'),\n defaultMessage: 'Enable sort on this field',\n }),\n name: 'sortable',\n size: 6,\n type: 'boolean' as const,\n },\n ]\n .filter(\n (field) =>\n field.name !== 'sortable' ||\n (field.name === 'sortable' && shouldDisplaySortToggle)\n )\n .map(({ size, ...field }) => (\n <GridItem key={field.name} s={12} col={size}>\n <InputRenderer {...field} />\n </GridItem>\n ))}\n </Grid>\n </ModalBody>\n <ModalFooter\n startActions={\n <Button onClick={onClose} variant=\"tertiary\">\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n }\n endActions={\n <Button type=\"submit\">\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n }\n />\n </Form>\n </ModalLayout>\n );\n};\n\nconst HeaderContainer = styled(Flex)`\n svg {\n width: 3.2rem;\n margin-right: ${({ theme }) => theme.spaces[3]};\n }\n`;\n\nexport { EditFieldForm };\nexport type { EditFieldFormProps };\n","import * as React from 'react';\n\nimport { Box, Flex, Typography, useComposedRefs } from '@strapi/design-system';\nimport { Cross, Drag, Pencil } from '@strapi/icons';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { useIntl } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { CardDragPreview } from '../../../components/DragPreviews/CardDragPreview';\nimport { ItemTypes } from '../../../constants/dragAndDrop';\nimport { useDragAndDrop } from '../../../hooks/useDragAndDrop';\nimport { getTranslation } from '../../../utils/translations';\n\nimport { EditFieldForm } from './EditFieldForm';\n\nimport type { ListFieldLayout } from '../../../hooks/useDocumentLayout';\n\ntype DraggableCardProps = Omit<ListFieldLayout, 'label'> & {\n label: string;\n index: number;\n isDraggingSibling: boolean;\n onMoveField: (dragIndex: number, hoverIndex: number) => void;\n onRemoveField: () => void;\n setIsDraggingSibling: (isDragging: boolean) => void;\n};\n\nconst DraggableCard = ({\n attribute,\n index,\n isDraggingSibling,\n label,\n name,\n onMoveField,\n onRemoveField,\n setIsDraggingSibling,\n}: DraggableCardProps) => {\n const [isModalOpen, setIsModalOpen] = React.useState(false);\n const { formatMessage } = useIntl();\n const [, forceRerenderAfterDnd] = React.useState(false);\n\n const [{ isDragging }, objectRef, dropRef, dragRef, dragPreviewRef] = useDragAndDrop(true, {\n type: ItemTypes.FIELD,\n item: { index, label, name },\n index,\n onMoveItem: onMoveField,\n onEnd: () => setIsDraggingSibling(false),\n });\n\n React.useEffect(() => {\n dragPreviewRef(getEmptyImage(), { captureDraggingState: false });\n }, [dragPreviewRef]);\n\n React.useEffect(() => {\n if (isDragging) {\n setIsDraggingSibling(true);\n }\n }, [isDragging, setIsDraggingSibling]);\n\n // Effect in order to force a rerender after reordering the components\n // Since we are removing the Accordion when doing the DnD we are losing the dragRef, therefore the replaced element cannot be dragged\n // anymore, this hack forces a rerender in order to apply the dragRef\n React.useEffect(() => {\n if (!isDraggingSibling) {\n forceRerenderAfterDnd((prev) => !prev);\n }\n }, [isDraggingSibling]);\n\n const composedRefs = useComposedRefs<HTMLSpanElement>(dragRef, objectRef);\n\n return (\n <FieldWrapper ref={dropRef}>\n {isDragging && <CardDragPreview label={label} />}\n {!isDragging && isDraggingSibling && <CardDragPreview isSibling label={label} />}\n\n {!isDragging && !isDraggingSibling && (\n <FieldContainer\n borderColor=\"neutral150\"\n background=\"neutral100\"\n hasRadius\n justifyContent=\"space-between\"\n onClick={() => setIsModalOpen(true)}\n >\n <Flex gap={3}>\n <DragButton\n as=\"span\"\n aria-label={formatMessage(\n {\n id: getTranslation('components.DraggableCard.move.field'),\n defaultMessage: 'Move {item}',\n },\n { item: label }\n )}\n onClick={(e) => e.stopPropagation()}\n ref={composedRefs}\n >\n <Drag />\n </DragButton>\n <Typography fontWeight=\"bold\">{label}</Typography>\n </Flex>\n <Flex paddingLeft={3}>\n <ActionButton\n onClick={(e) => {\n e.stopPropagation();\n setIsModalOpen(true);\n }}\n aria-label={formatMessage(\n {\n id: getTranslation('components.DraggableCard.edit.field'),\n defaultMessage: 'Edit {item}',\n },\n { item: label }\n )}\n type=\"button\"\n >\n <Pencil width=\"1.2rem\" height=\"1.2rem\" />\n </ActionButton>\n <ActionButton\n onClick={onRemoveField}\n data-testid={`delete-${name}`}\n aria-label={formatMessage(\n {\n id: getTranslation('components.DraggableCard.delete.field'),\n defaultMessage: 'Delete {item}',\n },\n { item: label }\n )}\n type=\"button\"\n >\n <Cross width=\"1.2rem\" height=\"1.2rem\" />\n </ActionButton>\n </Flex>\n </FieldContainer>\n )}\n {isModalOpen && (\n <EditFieldForm\n attribute={attribute}\n name={`layout.${index}`}\n onClose={() => setIsModalOpen(false)}\n />\n )}\n </FieldWrapper>\n );\n};\n\nconst ActionButton = styled.button`\n display: flex;\n align-items: center;\n height: ${({ theme }) => theme.spaces[7]};\n color: ${({ theme }) => theme.colors.neutral600};\n\n &:hover {\n color: ${({ theme }) => theme.colors.neutral700};\n }\n\n &:last-child {\n padding: 0 ${({ theme }) => theme.spaces[3]};\n }\n`;\n\nconst DragButton = styled(ActionButton)`\n padding: 0 ${({ theme }) => theme.spaces[3]};\n border-right: 1px solid ${({ theme }) => theme.colors.neutral150};\n cursor: all-scroll;\n`;\n\nconst FieldContainer = styled(Flex)`\n max-height: 3.2rem;\n cursor: pointer;\n`;\n\nconst FieldWrapper = styled(Box)`\n &:last-child {\n padding-right: ${({ theme }) => theme.spaces[3]};\n }\n`;\n\nexport { DraggableCard };\nexport type { DraggableCardProps };\n","import * as React from 'react';\n\nimport { useForm } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, VisuallyHidden, Typography, Menu } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../hooks/useDocument';\nimport { useGetContentTypeConfigurationQuery } from '../../../services/contentTypes';\nimport { checkIfAttributeIsDisplayable } from '../../../utils/attributes';\nimport { getTranslation } from '../../../utils/translations';\n\nimport { DraggableCard, DraggableCardProps } from './DraggableCard';\n\nimport type { ListLayout } from '../../../hooks/useDocumentLayout';\nimport type { FormData } from '../ListConfigurationPage';\n\ninterface SortDisplayedFieldsProps extends Pick<ListLayout, 'layout'> {}\n\nconst SortDisplayedFields = () => {\n const { formatMessage } = useIntl();\n const { model, schema } = useDoc();\n const [isDraggingSibling, setIsDraggingSibling] = React.useState(false);\n const [lastAction, setLastAction] = React.useState<string | null>(null);\n const scrollableContainerRef = React.useRef<HTMLDivElement>(null);\n\n const values = useForm<FormData['layout']>(\n 'SortDisplayedFields',\n (state) => state.values.layout ?? []\n );\n const addFieldRow = useForm('SortDisplayedFields', (state) => state.addFieldRow);\n const removeFieldRow = useForm('SortDisplayedFields', (state) => state.removeFieldRow);\n const moveFieldRow = useForm('SortDisplayedFields', (state) => state.moveFieldRow);\n\n const { metadata: allMetadata } = useGetContentTypeConfigurationQuery(model, {\n selectFromResult: ({ data }) => ({ metadata: data?.contentType.metadatas ?? {} }),\n });\n\n /**\n * This is our list of fields that are not displayed in the current layout\n * so we create their default state to be added to the layout.\n */\n const nonDisplayedFields = React.useMemo(() => {\n if (!schema) {\n return [];\n }\n\n const displayedFieldNames = values.map((field) => field.name);\n\n return Object.entries(schema.attributes).reduce<Array<FormData['layout'][number]>>(\n (acc, [name, attribute]) => {\n if (!displayedFieldNames.includes(name) && checkIfAttributeIsDisplayable(attribute)) {\n const { list: metadata } = allMetadata[name];\n\n acc.push({\n name,\n label: metadata.label || name,\n sortable: metadata.sortable,\n });\n }\n\n return acc;\n },\n []\n );\n }, [allMetadata, values, schema]);\n\n const handleAddField = (field: FormData['layout'][number]) => {\n setLastAction('add');\n addFieldRow('layout', field);\n };\n\n const handleRemoveField = (index: number) => {\n setLastAction('remove');\n removeFieldRow('layout', index);\n };\n\n const handleMoveField: DraggableCardProps['onMoveField'] = (dragIndex, hoverIndex) => {\n moveFieldRow('layout', dragIndex, hoverIndex);\n };\n\n React.useEffect(() => {\n if (lastAction === 'add' && scrollableContainerRef?.current) {\n scrollableContainerRef.current.scrollLeft = scrollableContainerRef.current.scrollWidth;\n }\n }, [lastAction]);\n\n return (\n <Flex alignItems=\"stretch\" direction=\"column\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: getTranslation('containers.SettingPage.view'),\n defaultMessage: 'View',\n })}\n </Typography>\n\n <Flex padding={4} borderColor=\"neutral300\" borderStyle=\"dashed\" borderWidth=\"1px\" hasRadius>\n <Box flex=\"1\" overflow=\"auto hidden\" ref={scrollableContainerRef}>\n <Flex gap={3}>\n {values.map((field, index) => (\n <DraggableCard\n key={field.name}\n index={index}\n isDraggingSibling={isDraggingSibling}\n onMoveField={handleMoveField}\n onRemoveField={() => handleRemoveField(index)}\n setIsDraggingSibling={setIsDraggingSibling}\n {...field}\n attribute={schema!.attributes[field.name]}\n label={typeof field.label === 'object' ? formatMessage(field.label) : field.label}\n />\n ))}\n </Flex>\n </Box>\n\n <Menu.Root>\n <Menu.Trigger\n paddingLeft={2}\n paddingRight={2}\n justifyContent=\"center\"\n endIcon={null}\n disabled={nonDisplayedFields.length === 0}\n variant=\"tertiary\"\n >\n <VisuallyHidden as=\"span\">\n {formatMessage({\n id: getTranslation('components.FieldSelect.label'),\n defaultMessage: 'Add a field',\n })}\n </VisuallyHidden>\n <Plus aria-hidden focusable={false} style={{ position: 'relative', top: 2 }} />\n </Menu.Trigger>\n <Menu.Content>\n {nonDisplayedFields.map((field) => (\n <Menu.Item key={field.name} onSelect={() => handleAddField(field)}>\n {typeof field.label === 'object' ? formatMessage(field.label) : field.label}\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu.Root>\n </Flex>\n </Flex>\n );\n};\n\nexport { SortDisplayedFields };\nexport type { SortDisplayedFieldsProps };\n","import * as React from 'react';\n\nimport {\n Form,\n type FormProps,\n useNotification,\n useTracking,\n useAPIErrorHandler,\n Page,\n} from '@strapi/admin/strapi-admin';\nimport { ContentLayout, Divider, Flex, Layout, Main } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { Navigate } from 'react-router-dom';\n\nimport { SINGLE_TYPES } from '../../constants/collections';\nimport { useDoc } from '../../hooks/useDocument';\nimport { ListFieldLayout, ListLayout, useDocLayout } from '../../hooks/useDocumentLayout';\nimport { useTypedSelector } from '../../modules/hooks';\nimport { useUpdateContentTypeConfigurationMutation } from '../../services/contentTypes';\nimport { setIn } from '../../utils/objects';\n\nimport { Header } from './components/Header';\nimport { Settings } from './components/Settings';\nimport { SortDisplayedFields } from './components/SortDisplayedFields';\n\nimport type { Metadatas } from '../../../../shared/contracts/content-types';\n\ninterface FormData extends Pick<ListLayout, 'settings'> {\n layout: Array<Pick<ListFieldLayout, 'sortable' | 'name'> & { label: string }>;\n}\n\nconst ListConfiguration = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { model, collectionType } = useDoc();\n\n const { isLoading: isLoadingLayout, list, edit } = useDocLayout();\n\n const [updateContentTypeConfiguration] = useUpdateContentTypeConfigurationMutation();\n const handleSubmit: FormProps<FormData>['onSubmit'] = async (data) => {\n try {\n trackUsage('willSaveContentTypeLayout');\n const layoutData = data.layout ?? [];\n /**\n * We reconstruct the metadatas object by taking the existing edit 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(edit.metadatas).reduce<Metadatas>((acc, [name, editMeta]) => {\n const { mainField: _mainField, ...listMeta } = list.metadatas[name];\n\n const { label, sortable } = layoutData.find((field) => field.name === name) ?? {};\n\n acc[name] = {\n edit: editMeta,\n list: {\n ...listMeta,\n label: label || listMeta.label,\n sortable: sortable || listMeta.sortable,\n },\n };\n\n return acc;\n }, {});\n\n const res = await updateContentTypeConfiguration({\n layouts: {\n edit: edit.layout.flatMap((panel) =>\n panel.map((row) => row.map(({ name, size }) => ({ name, size })))\n ),\n list: layoutData.map((field) => field.name),\n },\n settings: setIn(data.settings, 'displayName', undefined),\n metadatas: meta,\n uid: model,\n });\n\n if ('data' in res) {\n trackUsage('didEditListSettings');\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 (err) {\n console.error(err);\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n const initialValues = React.useMemo(() => {\n return {\n layout: list.layout.map(({ label, sortable, name }) => ({\n label: typeof label === 'string' ? label : formatMessage(label),\n sortable,\n name,\n })),\n settings: list.settings,\n } satisfies FormData;\n }, [formatMessage, list.layout, list.settings]);\n\n if (collectionType === SINGLE_TYPES) {\n return <Navigate to={`/single-types/${model}`} />;\n }\n\n if (isLoadingLayout) {\n return <Page.Loading />;\n }\n\n return (\n <Layout>\n <Page.Title>{`Configure ${list.settings.displayName} List View`}</Page.Title>\n <Main>\n <Form initialValues={initialValues} onSubmit={handleSubmit} method=\"PUT\">\n <Header\n collectionType={collectionType}\n model={model}\n name={list.settings.displayName ?? ''}\n />\n <ContentLayout>\n <Flex\n alignItems=\"stretch\"\n background=\"neutral0\"\n direction=\"column\"\n gap={6}\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Settings />\n <Divider />\n <SortDisplayedFields />\n </Flex>\n </ContentLayout>\n </Form>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedListConfiguration = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.contentManager?.collectionTypesConfigurations\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListConfiguration />\n </Page.Protect>\n );\n};\n\nexport { ProtectedListConfiguration, ListConfiguration };\nexport type { FormData };\n"],"names":["useIntl","useForm","jsx","HeaderLayout","BackButton","Button","getTranslation","capitalise","useCollator","useDoc","React","Flex","Typography","Grid","GridItem","InputRenderer","yup","useNotification","useId","useField","ModalLayout","jsxs","Form","ModalHeader","FieldTypeIcon","ModalBody","ModalFooter","styled","index","useDragAndDrop","ItemTypes","getEmptyImage","useComposedRefs","CardDragPreview","Drag","Pencil","Cross","Box","useGetContentTypeConfigurationQuery","checkIfAttributeIsDisplayable","Menu","VisuallyHidden","Plus","useTracking","useAPIErrorHandler","useDocLayout","useUpdateContentTypeConfigurationMutation","setIn","SINGLE_TYPES","Navigate","Page","Layout","Main","ContentLayout","Divider","useTypedSelector"],"mappings":"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"}
|