@payloadcms/ui 3.39.0-internal.32c7661 → 3.39.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/BulkUpload/ActionsBar/index.js +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +9 -0
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +3 -3
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/index.scss +144 -83
- package/dist/elements/Button/types.d.ts +2 -1
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/CheckboxPopup/index.d.ts +17 -0
- package/dist/elements/CheckboxPopup/index.d.ts.map +1 -0
- package/dist/elements/CheckboxPopup/index.js +42 -0
- package/dist/elements/CheckboxPopup/index.js.map +1 -0
- package/dist/elements/CheckboxPopup/index.scss +19 -0
- package/dist/elements/CloseModalButton/index.d.ts +6 -0
- package/dist/elements/CloseModalButton/index.d.ts.map +1 -0
- package/dist/elements/CloseModalButton/index.js +27 -0
- package/dist/elements/CloseModalButton/index.js.map +1 -0
- package/dist/elements/CloseModalButton/index.scss +25 -0
- package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
- package/dist/elements/ColumnSelector/index.js +3 -2
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts +50 -2
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +230 -82
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.d.ts +2 -2
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +25 -26
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.scss +13 -3
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +1 -3
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DrawerActionHeader/index.d.ts +12 -0
- package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -0
- package/dist/elements/DrawerActionHeader/index.js +77 -0
- package/dist/elements/DrawerActionHeader/index.js.map +1 -0
- package/dist/elements/DrawerActionHeader/index.scss +24 -0
- package/dist/elements/DrawerContentContainer/index.d.ts +9 -0
- package/dist/elements/DrawerContentContainer/index.d.ts.map +1 -0
- package/dist/elements/DrawerContentContainer/index.js +14 -0
- package/dist/elements/DrawerContentContainer/index.js.map +1 -0
- package/dist/elements/DrawerContentContainer/index.scss +6 -0
- package/dist/elements/EditMany/DrawerContent.d.ts +25 -2
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +37 -13
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.d.ts +5 -0
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +68 -34
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditMany/index.scss +0 -16
- package/dist/elements/FolderView/Breadcrumbs/index.d.ts +19 -0
- package/dist/elements/FolderView/Breadcrumbs/index.d.ts.map +1 -0
- package/dist/elements/FolderView/Breadcrumbs/index.js +96 -0
- package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -0
- package/dist/elements/FolderView/Breadcrumbs/index.scss +56 -0
- package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts +6 -0
- package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +1 -0
- package/dist/elements/FolderView/BrowseByFolderButton/index.js +40 -0
- package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -0
- package/dist/elements/FolderView/BrowseByFolderButton/index.scss +30 -0
- package/dist/elements/FolderView/Cell/index.client.d.ts +11 -0
- package/dist/elements/FolderView/Cell/index.client.d.ts.map +1 -0
- package/dist/elements/FolderView/Cell/index.client.js +84 -0
- package/dist/elements/FolderView/Cell/index.client.js.map +1 -0
- package/dist/elements/FolderView/Cell/index.server.d.ts +4 -0
- package/dist/elements/FolderView/Cell/index.server.d.ts.map +1 -0
- package/dist/elements/FolderView/Cell/index.server.js +13 -0
- package/dist/elements/FolderView/Cell/index.server.js.map +1 -0
- package/dist/elements/FolderView/CollectionTypePill/index.d.ts +4 -0
- package/dist/elements/FolderView/CollectionTypePill/index.d.ts.map +1 -0
- package/dist/elements/FolderView/CollectionTypePill/index.js +97 -0
- package/dist/elements/FolderView/CollectionTypePill/index.js.map +1 -0
- package/dist/elements/FolderView/CollectionTypePill/index.scss +16 -0
- package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts +3 -0
- package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts.map +1 -0
- package/dist/elements/FolderView/ColoredFolderIcon/index.js +9 -0
- package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -0
- package/dist/elements/FolderView/ColoredFolderIcon/index.scss +5 -0
- package/dist/elements/FolderView/CurrentFolderActions/index.d.ts +7 -0
- package/dist/elements/FolderView/CurrentFolderActions/index.d.ts.map +1 -0
- package/dist/elements/FolderView/CurrentFolderActions/index.js +146 -0
- package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -0
- package/dist/elements/FolderView/DragOverlaySelection/index.d.ts +12 -0
- package/dist/elements/FolderView/DragOverlaySelection/index.d.ts.map +1 -0
- package/dist/elements/FolderView/DragOverlaySelection/index.js +67 -0
- package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -0
- package/dist/elements/FolderView/DragOverlaySelection/index.scss +35 -0
- package/dist/elements/FolderView/DraggableTableRow/index.d.ts +18 -0
- package/dist/elements/FolderView/DraggableTableRow/index.d.ts.map +1 -0
- package/dist/elements/FolderView/DraggableTableRow/index.js +64 -0
- package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -0
- package/dist/elements/FolderView/DraggableTableRow/index.scss +135 -0
- package/dist/elements/FolderView/DraggableWithClick/index.d.ts +15 -0
- package/dist/elements/FolderView/DraggableWithClick/index.d.ts.map +1 -0
- package/dist/elements/FolderView/DraggableWithClick/index.js +81 -0
- package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -0
- package/dist/elements/FolderView/DraggableWithClick/index.scss +5 -0
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.d.ts +10 -0
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.d.ts.map +1 -0
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.js +55 -0
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.js.map +1 -0
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.scss +30 -0
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts +32 -0
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts.map +1 -0
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +493 -0
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -0
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.scss +26 -0
- package/dist/elements/FolderView/Drawers/NewFolder/index.d.ts +9 -0
- package/dist/elements/FolderView/Drawers/NewFolder/index.d.ts.map +1 -0
- package/dist/elements/FolderView/Drawers/NewFolder/index.js +157 -0
- package/dist/elements/FolderView/Drawers/NewFolder/index.js.map +1 -0
- package/dist/elements/FolderView/Drawers/RenameFolder/index.d.ts +13 -0
- package/dist/elements/FolderView/Drawers/RenameFolder/index.d.ts.map +1 -0
- package/dist/elements/FolderView/Drawers/RenameFolder/index.js +140 -0
- package/dist/elements/FolderView/Drawers/RenameFolder/index.js.map +1 -0
- package/dist/elements/FolderView/Field/index.scss +12 -0
- package/dist/elements/FolderView/Field/index.server.d.ts +4 -0
- package/dist/elements/FolderView/Field/index.server.d.ts.map +1 -0
- package/dist/elements/FolderView/Field/index.server.js +11 -0
- package/dist/elements/FolderView/Field/index.server.js.map +1 -0
- package/dist/elements/FolderView/FolderFileCard/index.d.ts +21 -0
- package/dist/elements/FolderView/FolderFileCard/index.d.ts.map +1 -0
- package/dist/elements/FolderView/FolderFileCard/index.js +94 -0
- package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -0
- package/dist/elements/FolderView/FolderFileCard/index.scss +213 -0
- package/dist/elements/FolderView/FolderFileTable/index.d.ts +29 -0
- package/dist/elements/FolderView/FolderFileTable/index.d.ts.map +1 -0
- package/dist/elements/FolderView/FolderFileTable/index.js +189 -0
- package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -0
- package/dist/elements/FolderView/FolderFileTable/index.scss +11 -0
- package/dist/elements/FolderView/ItemCardGrid/index.d.ts +22 -0
- package/dist/elements/FolderView/ItemCardGrid/index.d.ts.map +1 -0
- package/dist/elements/FolderView/ItemCardGrid/index.js +100 -0
- package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -0
- package/dist/elements/FolderView/ItemCardGrid/index.scss +16 -0
- package/dist/elements/FolderView/MoveDocToFolder/index.d.ts +34 -0
- package/dist/elements/FolderView/MoveDocToFolder/index.d.ts.map +1 -0
- package/dist/elements/FolderView/MoveDocToFolder/index.js +287 -0
- package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -0
- package/dist/elements/FolderView/MoveDocToFolder/index.scss +12 -0
- package/dist/elements/FolderView/SimpleTable/index.d.ts +19 -0
- package/dist/elements/FolderView/SimpleTable/index.d.ts.map +1 -0
- package/dist/elements/FolderView/SimpleTable/index.js +95 -0
- package/dist/elements/FolderView/SimpleTable/index.js.map +1 -0
- package/dist/elements/FolderView/SimpleTable/index.scss +59 -0
- package/dist/elements/FolderView/SortByPill/index.d.ts +4 -0
- package/dist/elements/FolderView/SortByPill/index.d.ts.map +1 -0
- package/dist/elements/FolderView/SortByPill/index.js +108 -0
- package/dist/elements/FolderView/SortByPill/index.js.map +1 -0
- package/dist/elements/FolderView/SortByPill/index.scss +16 -0
- package/dist/elements/FolderView/ToggleViewButtons/index.d.ts +8 -0
- package/dist/elements/FolderView/ToggleViewButtons/index.d.ts.map +1 -0
- package/dist/elements/FolderView/ToggleViewButtons/index.js +31 -0
- package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -0
- package/dist/elements/FolderView/ToggleViewButtons/index.scss +17 -0
- package/dist/elements/Gutter/index.d.ts.map +1 -1
- package/dist/elements/Gutter/index.js +1 -1
- package/dist/elements/Gutter/index.js.map +1 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts.map +1 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.js +93 -67
- package/dist/elements/ListControls/ActiveQueryPreset/index.js.map +1 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.scss +17 -5
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js +5 -2
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +13 -15
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +1 -1
- package/dist/elements/ListControls/types.d.ts +1 -0
- package/dist/elements/ListControls/types.d.ts.map +1 -1
- package/dist/elements/ListControls/types.js.map +1 -1
- package/dist/elements/ListControls/useQueryPresets.d.ts.map +1 -1
- package/dist/elements/ListControls/useQueryPresets.js +19 -27
- package/dist/elements/ListControls/useQueryPresets.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +34 -22
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListFolderPills/index.d.ts +9 -0
- package/dist/elements/ListFolderPills/index.d.ts.map +1 -0
- package/dist/elements/ListFolderPills/index.js +93 -0
- package/dist/elements/ListFolderPills/index.js.map +1 -0
- package/dist/elements/ListFolderPills/index.scss +7 -0
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts +2 -0
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -0
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +98 -0
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -0
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.d.ts +6 -0
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.d.ts.map +1 -0
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +39 -0
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -0
- package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts +2 -0
- package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts.map +1 -0
- package/dist/elements/ListHeader/DrawerTitleActions/index.js +2 -0
- package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -0
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +15 -0
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -0
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +85 -0
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.d.ts +8 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.d.ts.map +1 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +48 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts +12 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts.map +1 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +168 -0
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -0
- package/dist/elements/ListHeader/TitleActions/index.d.ts +4 -0
- package/dist/elements/ListHeader/TitleActions/index.d.ts.map +1 -0
- package/dist/elements/ListHeader/TitleActions/index.js +4 -0
- package/dist/elements/ListHeader/TitleActions/index.js.map +1 -0
- package/dist/elements/ListHeader/index.d.ts +13 -0
- package/dist/elements/ListHeader/index.d.ts.map +1 -0
- package/dist/elements/ListHeader/index.js +29 -0
- package/dist/elements/ListHeader/index.js.map +1 -0
- package/dist/elements/ListHeader/index.scss +48 -0
- package/dist/elements/ListSelection/index.d.ts +22 -7
- package/dist/elements/ListSelection/index.d.ts.map +1 -1
- package/dist/elements/ListSelection/index.js +58 -60
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/ListSelection/index.scss +10 -1
- package/dist/elements/NoListResults/index.d.ts +9 -0
- package/dist/elements/NoListResults/index.d.ts.map +1 -0
- package/dist/elements/NoListResults/index.js +19 -0
- package/dist/elements/NoListResults/index.js.map +1 -0
- package/dist/elements/NoListResults/index.scss +20 -0
- package/dist/elements/Pagination/index.js +2 -2
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +25 -9
- package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.scss +12 -1
- package/dist/elements/Popup/PopupDivider/index.scss +1 -0
- package/dist/elements/Popup/PopupGroupLabel/index.scss +4 -1
- package/dist/elements/Popup/PopupTrigger/index.js +92 -26
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.d.ts +1 -0
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +18 -7
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/Popup/index.scss +1 -0
- package/dist/elements/PublishMany/DrawerContent.d.ts +10 -0
- package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -0
- package/dist/elements/PublishMany/DrawerContent.js +143 -0
- package/dist/elements/PublishMany/DrawerContent.js.map +1 -0
- package/dist/elements/PublishMany/index.d.ts +7 -1
- package/dist/elements/PublishMany/index.d.ts.map +1 -1
- package/dist/elements/PublishMany/index.js +75 -110
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/SearchBar/index.d.ts +12 -0
- package/dist/elements/SearchBar/index.d.ts.map +1 -0
- package/dist/elements/SearchBar/index.js +26 -0
- package/dist/elements/SearchBar/index.js.map +1 -0
- package/dist/elements/SearchBar/index.scss +26 -0
- package/dist/elements/SearchFilter/index.d.ts +23 -0
- package/dist/elements/SearchFilter/index.d.ts.map +1 -1
- package/dist/elements/SearchFilter/index.js +9 -7
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SortColumn/index.scss +1 -1
- package/dist/elements/StepNav/types.d.ts +2 -1
- package/dist/elements/StepNav/types.d.ts.map +1 -1
- package/dist/elements/StepNav/types.js.map +1 -1
- package/dist/elements/Table/index.scss +33 -7
- package/dist/elements/UnpublishMany/DrawerContent.d.ts +10 -0
- package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -0
- package/dist/elements/UnpublishMany/DrawerContent.js +134 -0
- package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -0
- package/dist/elements/UnpublishMany/index.d.ts +5 -1
- package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/index.js +79 -112
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +29 -16
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/index.scss +0 -15
- package/dist/exports/client/index.d.ts +16 -2
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +22 -23
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/rsc/index.d.ts +2 -0
- package/dist/exports/rsc/index.d.ts.map +1 -1
- package/dist/exports/rsc/index.js +2 -0
- package/dist/exports/rsc/index.js.map +1 -1
- package/dist/exports/shared/index.d.ts +1 -1
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +2 -2
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js +4 -4
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Join/index.d.ts.map +1 -1
- package/dist/fields/Join/index.js +3 -1
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/Upload/index.scss +0 -4
- package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/hooks/useClickOutside.d.ts +2 -0
- package/dist/hooks/useClickOutside.d.ts.map +1 -0
- package/dist/hooks/useClickOutside.js +20 -0
- package/dist/hooks/useClickOutside.js.map +1 -0
- package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
- package/dist/hooks/useUseAsTitle.js +25 -5
- package/dist/hooks/useUseAsTitle.js.map +1 -1
- package/dist/icons/Document/index.d.ts +4 -0
- package/dist/icons/Document/index.d.ts.map +1 -0
- package/dist/icons/Document/index.js +20 -0
- package/dist/icons/Document/index.js.map +1 -0
- package/dist/icons/Document/index.scss +6 -0
- package/dist/icons/Dots/index.scss +3 -3
- package/dist/icons/Folder/index.d.ts +6 -0
- package/dist/icons/Folder/index.d.ts.map +1 -0
- package/dist/icons/Folder/index.js +20 -0
- package/dist/icons/Folder/index.js.map +1 -0
- package/dist/icons/Folder/index.scss +6 -0
- package/dist/icons/GridView/index.d.ts +4 -0
- package/dist/icons/GridView/index.d.ts.map +1 -0
- package/dist/icons/GridView/index.js +35 -0
- package/dist/icons/GridView/index.js.map +1 -0
- package/dist/icons/GridView/index.scss +3 -0
- package/dist/icons/ListView/index.d.ts +4 -0
- package/dist/icons/ListView/index.d.ts.map +1 -0
- package/dist/icons/ListView/index.js +20 -0
- package/dist/icons/ListView/index.js.map +1 -0
- package/dist/icons/ListView/index.scss +3 -0
- package/dist/icons/MoveFolder/index.d.ts +4 -0
- package/dist/icons/MoveFolder/index.d.ts.map +1 -0
- package/dist/icons/MoveFolder/index.js +39 -0
- package/dist/icons/MoveFolder/index.js.map +1 -0
- package/dist/icons/MoveFolder/index.scss +6 -0
- package/dist/icons/People/index.d.ts.map +1 -1
- package/dist/icons/People/index.js +7 -5
- package/dist/icons/People/index.js.map +1 -1
- package/dist/icons/ThreeDots/index.d.ts +6 -0
- package/dist/icons/ThreeDots/index.d.ts.map +1 -0
- package/dist/icons/ThreeDots/index.js +12 -0
- package/dist/icons/ThreeDots/index.js.map +1 -0
- package/dist/icons/ThreeDots/index.scss +17 -0
- package/dist/providers/ClickOutside/index.d.ts +14 -0
- package/dist/providers/ClickOutside/index.d.ts.map +1 -0
- package/dist/providers/ClickOutside/index.js +39 -0
- package/dist/providers/ClickOutside/index.js.map +1 -0
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +10 -4
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/Folders/index.d.ts +119 -0
- package/dist/providers/Folders/index.d.ts.map +1 -0
- package/dist/providers/Folders/index.js +856 -0
- package/dist/providers/Folders/index.js.map +1 -0
- package/dist/providers/Folders/selection.d.ts +11 -0
- package/dist/providers/Folders/selection.d.ts.map +1 -0
- package/dist/providers/Folders/selection.js +38 -0
- package/dist/providers/Folders/selection.js.map +1 -0
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +31 -25
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts.map +1 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/Preferences/index.d.ts +3 -2
- package/dist/providers/Preferences/index.d.ts.map +1 -1
- package/dist/providers/Preferences/index.js +1 -0
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +99 -67
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteCache/index.d.ts +2 -0
- package/dist/providers/RouteCache/index.d.ts.map +1 -1
- package/dist/providers/RouteCache/index.js +38 -29
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/Selection/index.d.ts +1 -0
- package/dist/providers/Selection/index.d.ts.map +1 -1
- package/dist/providers/Selection/index.js +15 -5
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts +12 -0
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +13 -0
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/index.d.ts +31 -0
- package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/index.js +143 -0
- package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.d.ts +8 -0
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +16 -0
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +18 -0
- package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/renderCell.js +110 -0
- package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.d.ts +3 -0
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +20 -0
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -0
- package/dist/scss/app.scss +6 -2
- package/dist/scss/resets.scss +2 -0
- package/dist/styles.css +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.d.ts +3 -3
- package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
- package/dist/utilities/renderTable.d.ts +2 -3
- package/dist/utilities/renderTable.d.ts.map +1 -1
- package/dist/utilities/renderTable.js +52 -33
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/views/BrowseByFolder/index.d.ts +8 -0
- package/dist/views/BrowseByFolder/index.d.ts.map +1 -0
- package/dist/views/BrowseByFolder/index.js +312 -0
- package/dist/views/BrowseByFolder/index.js.map +1 -0
- package/dist/views/BrowseByFolder/index.scss +174 -0
- package/dist/views/CollectionFolder/ListSelection/index.d.ts +7 -0
- package/dist/views/CollectionFolder/ListSelection/index.d.ts.map +1 -0
- package/dist/views/CollectionFolder/ListSelection/index.js +201 -0
- package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -0
- package/dist/views/CollectionFolder/index.d.ts +5 -0
- package/dist/views/CollectionFolder/index.d.ts.map +1 -0
- package/dist/views/CollectionFolder/index.js +306 -0
- package/dist/views/CollectionFolder/index.js.map +1 -0
- package/dist/views/CollectionFolder/index.scss +162 -0
- package/dist/views/Edit/index.js +1 -1
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.d.ts +13 -2
- package/dist/views/List/ListHeader/index.d.ts.map +1 -1
- package/dist/views/List/ListHeader/index.js +52 -113
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.scss +10 -77
- package/dist/views/List/ListSelection/index.d.ts +10 -0
- package/dist/views/List/ListSelection/index.d.ts.map +1 -0
- package/dist/views/List/ListSelection/index.js +87 -0
- package/dist/views/List/ListSelection/index.js.map +1 -0
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +7 -11
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/index.scss +0 -7
- package/package.json +5 -4
- package/dist/elements/DeleteMany/index.scss +0 -27
- package/dist/elements/PublishMany/index.scss +0 -21
- package/dist/elements/UnpublishMany/index.scss +0 -21
- package/dist/providers/TableColumns/buildColumnState.d.ts +0 -21
- package/dist/providers/TableColumns/buildColumnState.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState.js +0 -201
- package/dist/providers/TableColumns/buildColumnState.js.map +0 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts +0 -20
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js +0 -200
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +0 -1
- package/dist/providers/TableColumns/filterFields.d.ts.map +0 -1
- package/dist/providers/TableColumns/filterFields.js.map +0 -1
- /package/dist/providers/TableColumns/{filterFields.d.ts → buildColumnState/filterFields.d.ts} +0 -0
- /package/dist/providers/TableColumns/{filterFields.js → buildColumnState/filterFields.js} +0 -0
|
@@ -15,6 +15,7 @@ export type ListControlsProps = {
|
|
|
15
15
|
readonly disableBulkEdit?: boolean;
|
|
16
16
|
readonly disableQueryPresets?: boolean;
|
|
17
17
|
readonly enableColumns?: boolean;
|
|
18
|
+
readonly enableFilters?: boolean;
|
|
18
19
|
readonly enableSort?: boolean;
|
|
19
20
|
readonly handleSearchChange?: (search: string) => void;
|
|
20
21
|
readonly handleSortChange?: (sort: string) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,6BAA6B,EAC7B,KAAK,EACN,MAAM,SAAS,CAAA;AAEhB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IACjD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACtD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAClD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IAClC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,6BAA6B,CAAA;IAC/D,QAAQ,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACvD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CACpE,CAAA"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,6BAA6B,EAC7B,KAAK,EACN,MAAM,SAAS,CAAA;AAEhB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IACjD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACtD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAClD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IAClC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,6BAA6B,CAAA;IAC/D,QAAQ,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACvD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CACpE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/ListControls/types.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n QueryPreset,\n ResolvedFilterOptions,\n SanitizedCollectionPermission,\n Where,\n} from 'payload'\n\nexport type ListControlsProps = {\n readonly beforeActions?: React.ReactNode[]\n readonly collectionConfig: ClientCollectionConfig\n readonly collectionSlug: string\n /**\n * @deprecated\n * These are now handled by the `ListSelection` component\n */\n readonly disableBulkDelete?: boolean\n /**\n * @deprecated\n * These are now handled by the `ListSelection` component\n */\n readonly disableBulkEdit?: boolean\n readonly disableQueryPresets?: boolean\n readonly enableColumns?: boolean\n readonly enableSort?: boolean\n readonly handleSearchChange?: (search: string) => void\n readonly handleSortChange?: (sort: string) => void\n readonly handleWhereChange?: (where: Where) => void\n readonly listMenuItems?: React.ReactNode[]\n readonly queryPreset?: QueryPreset\n readonly queryPresetPermissions?: SanitizedCollectionPermission\n readonly renderedFilters?: Map<string, React.ReactNode>\n readonly resolvedFilterOptions?: Map<string, ResolvedFilterOptions>\n}\n"],"mappings":"AAQA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/ListControls/types.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n QueryPreset,\n ResolvedFilterOptions,\n SanitizedCollectionPermission,\n Where,\n} from 'payload'\n\nexport type ListControlsProps = {\n readonly beforeActions?: React.ReactNode[]\n readonly collectionConfig: ClientCollectionConfig\n readonly collectionSlug: string\n /**\n * @deprecated\n * These are now handled by the `ListSelection` component\n */\n readonly disableBulkDelete?: boolean\n /**\n * @deprecated\n * These are now handled by the `ListSelection` component\n */\n readonly disableBulkEdit?: boolean\n readonly disableQueryPresets?: boolean\n readonly enableColumns?: boolean\n readonly enableFilters?: boolean\n readonly enableSort?: boolean\n readonly handleSearchChange?: (search: string) => void\n readonly handleSortChange?: (sort: string) => void\n readonly handleWhereChange?: (where: Where) => void\n readonly listMenuItems?: React.ReactNode[]\n readonly queryPreset?: QueryPreset\n readonly queryPresetPermissions?: SanitizedCollectionPermission\n readonly renderedFilters?: Map<string, React.ReactNode>\n readonly resolvedFilterOptions?: Map<string, ResolvedFilterOptions>\n}\n"],"mappings":"AAQA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useQueryPresets.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/useQueryPresets.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA;AAKzF,OAAO,KAAyC,MAAM,OAAO,CAAA;AAiB7D,eAAO,MAAM,eAAe,8DAIzB;IACD,YAAY,EAAE,WAAW,CAAA;IACzB,cAAc,EAAE,cAAc,CAAA;IAC9B,sBAAsB,EAAE,6BAA6B,CAAA;CACtD,KAAG;IACF,qBAAqB,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,iBAAiB,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,iBAAiB,EAAE,OAAO,CAAA;IAC1B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,oBAAoB,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IACvC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"useQueryPresets.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/useQueryPresets.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA;AAKzF,OAAO,KAAyC,MAAM,OAAO,CAAA;AAiB7D,eAAO,MAAM,eAAe,8DAIzB;IACD,YAAY,EAAE,WAAW,CAAA;IACzB,cAAc,EAAE,cAAc,CAAA;IAC9B,sBAAsB,EAAE,6BAA6B,CAAA;CACtD,KAAG;IACF,qBAAqB,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,iBAAiB,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,iBAAiB,EAAE,OAAO,CAAA;IAC1B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,oBAAoB,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IACvC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAqSjC,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useModal } from '@faceless-ui/modal';
|
|
3
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
4
4
|
import { transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared';
|
|
5
|
-
import React, {
|
|
5
|
+
import React, { useCallback, useMemo } from 'react';
|
|
6
6
|
import { toast } from 'sonner';
|
|
7
7
|
import { useConfig } from '../../providers/Config/index.js';
|
|
8
8
|
import { useListQuery } from '../../providers/ListQuery/context.js';
|
|
@@ -159,11 +159,11 @@ export const useQueryPresets = ({
|
|
|
159
159
|
}, [apiRoute, activePreset?.id, query.columns, query.where, t, presetConfig?.labels?.singular, i18n, setQueryModified]);
|
|
160
160
|
// Memoize so that components aren't re-rendered on query and column changes
|
|
161
161
|
const queryPresetMenuItems = useMemo(() => {
|
|
162
|
-
const
|
|
162
|
+
const hasModifiedPreset = activePreset && modified;
|
|
163
|
+
return [/*#__PURE__*/_jsx(PopupListGroupLabel, {
|
|
163
164
|
label: getTranslation(presetConfig?.labels?.plural, i18n)
|
|
164
|
-
}, "preset-group-label")
|
|
165
|
-
|
|
166
|
-
menuItems.push(/*#__PURE__*/_jsx(PopupList.Button, {
|
|
165
|
+
}, "preset-group-label"), /*#__PURE__*/_jsxs(PopupList.ButtonGroup, {
|
|
166
|
+
children: [hasModifiedPreset && /*#__PURE__*/_jsx(PopupList.Button, {
|
|
167
167
|
onClick: async () => {
|
|
168
168
|
await refineListData({
|
|
169
169
|
columns: transformColumnsToSearchParams(activePreset.columns),
|
|
@@ -171,24 +171,17 @@ export const useQueryPresets = ({
|
|
|
171
171
|
}, false);
|
|
172
172
|
},
|
|
173
173
|
children: t('general:reset')
|
|
174
|
-
})
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
onClick: () => {
|
|
186
|
-
openCreateNewDrawer();
|
|
187
|
-
},
|
|
188
|
-
children: t('general:createNew')
|
|
189
|
-
}));
|
|
190
|
-
if (activePreset && queryPresetPermissions?.delete) {
|
|
191
|
-
menuItems.push(/*#__PURE__*/_jsxs(Fragment, {
|
|
174
|
+
}), hasModifiedPreset && queryPresetPermissions.update && /*#__PURE__*/_jsx(PopupList.Button, {
|
|
175
|
+
onClick: async () => {
|
|
176
|
+
await saveCurrentChanges();
|
|
177
|
+
},
|
|
178
|
+
children: activePreset?.isShared ? t('general:updateForEveryone') : t('general:save')
|
|
179
|
+
}), /*#__PURE__*/_jsx(PopupList.Button, {
|
|
180
|
+
onClick: () => {
|
|
181
|
+
openCreateNewDrawer();
|
|
182
|
+
},
|
|
183
|
+
children: t('general:createNew')
|
|
184
|
+
}), activePreset && queryPresetPermissions?.delete && /*#__PURE__*/_jsxs(_Fragment, {
|
|
192
185
|
children: [/*#__PURE__*/_jsx(PopupList.Button, {
|
|
193
186
|
onClick: () => openModal(confirmDeletePresetModalSlug),
|
|
194
187
|
children: t('general:delete')
|
|
@@ -198,9 +191,8 @@ export const useQueryPresets = ({
|
|
|
198
191
|
},
|
|
199
192
|
children: t('general:edit')
|
|
200
193
|
})]
|
|
201
|
-
})
|
|
202
|
-
}
|
|
203
|
-
return menuItems;
|
|
194
|
+
})]
|
|
195
|
+
}, "preset-group-buttons")];
|
|
204
196
|
}, [activePreset, queryPresetPermissions?.delete, queryPresetPermissions?.update, openCreateNewDrawer, openDocumentDrawer, openModal, saveCurrentChanges, t, refineListData, modified, presetConfig?.labels?.plural, i18n]);
|
|
205
197
|
return {
|
|
206
198
|
CreateNewPresetDrawer: /*#__PURE__*/_jsx(CreateNewPresetDrawer, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useQueryPresets.js","names":["useModal","getTranslation","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","useCallback","useMemo","toast","useConfig","useListQuery","useTranslation","ConfirmationModal","useDocumentDrawer","useListDrawer","PopupList","PopupListGroupLabel","Translation","confirmDeletePresetModalSlug","queryPresetsSlug","useQueryPresets","activePreset","collectionSlug","queryPresetPermissions","modified","query","refineListData","setModified","setQueryModified","i18n","t","openModal","config","routes","api","apiRoute","getEntityConfig","presetConfig","PresetDocumentDrawer","openDrawer","openDocumentDrawer","id","CreateNewPresetDrawer","closeDrawer","closeCreateNewDrawer","openCreateNewDrawer","filterOptions","isTemp","not_equals","relatedCollection","equals","ListDrawer","closeListDrawer","openListDrawer","collectionSlugs","selectedCollection","handlePresetChange","preset","columns","undefined","where","resetQueryPreset","handleDeletePreset","fetch","method","then","res","json","status","success","label","labels","singular","title","errors","forEach","error","message","_err","saveCurrentChanges","body","JSON","stringify","credentials","headers","queryPresetMenuItems","menuItems","_jsx","plural","push","Button","onClick","update","isShared","delete","_jsxs","initialData","onSave","doc","redirectAfterCreate","DeletePresetModal","elements","1","children","i18nKey","variables","confirmingLabel","heading","modalSlug","onConfirm","EditPresetDrawer","onDelete","onDuplicate","hasModifiedPreset","openPresetListDrawer","PresetListDrawer","allowCreate","disableQueryPresets","onSelect","resetPreset"],"sources":["../../../src/elements/ListControls/useQueryPresets.tsx"],"sourcesContent":["import type { CollectionSlug, QueryPreset, SanitizedCollectionPermission } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useListQuery } from '../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { useListDrawer } from '../ListDrawer/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { PopupListGroupLabel } from '../Popup/PopupGroupLabel/index.js'\nimport { Translation } from '../Translation/index.js'\n\nconst confirmDeletePresetModalSlug = 'confirm-delete-preset'\n\nconst queryPresetsSlug = 'payload-query-presets'\n\nexport const useQueryPresets = ({\n activePreset,\n collectionSlug,\n queryPresetPermissions,\n}: {\n activePreset: QueryPreset\n collectionSlug: CollectionSlug\n queryPresetPermissions: SanitizedCollectionPermission\n}): {\n CreateNewPresetDrawer: React.ReactNode\n DeletePresetModal: React.ReactNode\n EditPresetDrawer: React.ReactNode\n hasModifiedPreset: boolean\n openPresetListDrawer: () => void\n PresetListDrawer: React.ReactNode\n queryPresetMenuItems: React.ReactNode[]\n resetPreset: () => Promise<void>\n} => {\n const { modified, query, refineListData, setModified: setQueryModified } = useListQuery()\n\n const { i18n, t } = useTranslation()\n const { openModal } = useModal()\n\n const {\n config: {\n routes: { api: apiRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const presetConfig = getEntityConfig({ collectionSlug: queryPresetsSlug })\n\n const [PresetDocumentDrawer, , { openDrawer: openDocumentDrawer }] = useDocumentDrawer({\n id: activePreset?.id,\n collectionSlug: queryPresetsSlug,\n })\n\n const [\n CreateNewPresetDrawer,\n ,\n { closeDrawer: closeCreateNewDrawer, openDrawer: openCreateNewDrawer },\n ] = useDocumentDrawer({\n collectionSlug: queryPresetsSlug,\n })\n\n const filterOptions = useMemo(\n () => ({\n 'payload-query-presets': {\n isTemp: {\n not_equals: true,\n },\n relatedCollection: {\n equals: collectionSlug,\n },\n },\n }),\n [collectionSlug],\n )\n\n const [ListDrawer, , { closeDrawer: closeListDrawer, openDrawer: openListDrawer }] =\n useListDrawer({\n collectionSlugs: [queryPresetsSlug],\n filterOptions,\n selectedCollection: queryPresetsSlug,\n })\n\n const handlePresetChange = useCallback(\n async (preset: QueryPreset) => {\n await refineListData(\n {\n columns: preset.columns ? transformColumnsToSearchParams(preset.columns) : undefined,\n preset: preset.id,\n where: preset.where,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const resetQueryPreset = useCallback(async () => {\n await refineListData(\n {\n columns: undefined,\n preset: undefined,\n where: undefined,\n },\n false,\n )\n }, [refineListData])\n\n const handleDeletePreset = useCallback(async () => {\n try {\n await fetch(`${apiRoute}/${queryPresetsSlug}/${activePreset.id}`, {\n method: 'DELETE',\n }).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleDeleted', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n title: activePreset.title,\n }),\n )\n\n await resetQueryPreset()\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n })\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }, [apiRoute, activePreset?.id, activePreset?.title, t, presetConfig, i18n, resetQueryPreset])\n\n const saveCurrentChanges = useCallback(async () => {\n try {\n await fetch(`${apiRoute}/payload-query-presets/${activePreset.id}`, {\n body: JSON.stringify({\n columns: transformColumnsToPreferences(query.columns),\n where: query.where,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n }).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:updatedLabelSuccessfully', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n }),\n )\n\n setQueryModified(false)\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:unknown'))\n }\n }\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n })\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n }, [\n apiRoute,\n activePreset?.id,\n query.columns,\n query.where,\n t,\n presetConfig?.labels?.singular,\n i18n,\n setQueryModified,\n ])\n\n // Memoize so that components aren't re-rendered on query and column changes\n const queryPresetMenuItems = useMemo(() => {\n const menuItems: React.ReactNode[] = [\n <PopupListGroupLabel\n key=\"preset-group-label\"\n label={getTranslation(presetConfig?.labels?.plural, i18n)}\n />,\n ]\n\n if (activePreset && modified) {\n menuItems.push(\n <PopupList.Button\n onClick={async () => {\n await refineListData(\n {\n columns: transformColumnsToSearchParams(activePreset.columns),\n where: activePreset.where,\n },\n false,\n )\n }}\n >\n {t('general:reset')}\n </PopupList.Button>,\n )\n\n if (queryPresetPermissions.update) {\n menuItems.push(\n <PopupList.Button\n onClick={async () => {\n await saveCurrentChanges()\n }}\n >\n {activePreset.isShared ? t('general:updateForEveryone') : t('general:save')}\n </PopupList.Button>,\n )\n }\n }\n\n menuItems.push(\n <PopupList.Button\n onClick={() => {\n openCreateNewDrawer()\n }}\n >\n {t('general:createNew')}\n </PopupList.Button>,\n )\n\n if (activePreset && queryPresetPermissions?.delete) {\n menuItems.push(\n <Fragment>\n <PopupList.Button onClick={() => openModal(confirmDeletePresetModalSlug)}>\n {t('general:delete')}\n </PopupList.Button>\n <PopupList.Button\n onClick={() => {\n openDocumentDrawer()\n }}\n >\n {t('general:edit')}\n </PopupList.Button>\n </Fragment>,\n )\n }\n\n return menuItems\n }, [\n activePreset,\n queryPresetPermissions?.delete,\n queryPresetPermissions?.update,\n openCreateNewDrawer,\n openDocumentDrawer,\n openModal,\n saveCurrentChanges,\n t,\n refineListData,\n modified,\n presetConfig?.labels?.plural,\n i18n,\n ])\n\n return {\n CreateNewPresetDrawer: (\n <CreateNewPresetDrawer\n initialData={{\n columns: transformColumnsToPreferences(query.columns),\n relatedCollection: collectionSlug,\n where: query.where,\n }}\n onSave={async ({ doc }) => {\n closeCreateNewDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n redirectAfterCreate={false}\n />\n ),\n DeletePresetModal: (\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: presetConfig?.labels?.singular,\n title: activePreset?.title,\n }}\n />\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmDeletePresetModalSlug}\n onConfirm={handleDeletePreset}\n />\n ),\n EditPresetDrawer: (\n <PresetDocumentDrawer\n onDelete={() => {\n // setSelectedPreset(undefined)\n }}\n onDuplicate={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n onSave={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n ),\n hasModifiedPreset: modified,\n openPresetListDrawer: openListDrawer,\n PresetListDrawer: (\n <ListDrawer\n allowCreate={false}\n disableQueryPresets\n onSelect={async ({ doc }) => {\n closeListDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n ),\n queryPresetMenuItems,\n resetPreset: resetQueryPreset,\n }\n}\n"],"mappings":";AAEA,SAASA,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SAASC,6BAA6B,EAAEC,8BAA8B,QAAQ;AAC9E,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,OAAO,QAAQ;AACtD,SAASC,KAAK,QAAQ;AAEtB,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,mBAAmB,QAAQ;AACpC,SAASC,WAAW,QAAQ;AAE5B,MAAMC,4BAAA,GAA+B;AAErC,MAAMC,gBAAA,GAAmB;AAEzB,OAAO,MAAMC,eAAA,GAAkBA,CAAC;EAC9BC,YAAY;EACZC,cAAc;EACdC;AAAsB,CAKvB;EAUC,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,cAAc;IAAEC,WAAA,EAAaC;EAAgB,CAAE,GAAGlB,YAAA;EAE3E,MAAM;IAAEmB,IAAI;IAAEC;EAAC,CAAE,GAAGnB,cAAA;EACpB,MAAM;IAAEoB;EAAS,CAAE,GAAG/B,QAAA;EAEtB,MAAM;IACJgC,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,GAAA,EAAKC;MAAQ;IAAE,CAC1B;IACDC;EAAe,CAChB,GAAG3B,SAAA;EAEJ,MAAM4B,YAAA,GAAeD,eAAA,CAAgB;IAAEd,cAAA,EAAgBH;EAAiB;EAExE,MAAM,CAACmB,oBAAA,GAAwB;IAAEC,UAAA,EAAYC;EAAkB,CAAE,CAAC,GAAG3B,iBAAA,CAAkB;IACrF4B,EAAA,EAAIpB,YAAA,EAAcoB,EAAA;IAClBnB,cAAA,EAAgBH;EAClB;EAEA,MAAM,CACJuB,qBAAA,GAEA;IAAEC,WAAA,EAAaC,oBAAoB;IAAEL,UAAA,EAAYM;EAAmB,CAAE,CACvE,GAAGhC,iBAAA,CAAkB;IACpBS,cAAA,EAAgBH;EAClB;EAEA,MAAM2B,aAAA,GAAgBvC,OAAA,CACpB,OAAO;IACL,yBAAyB;MACvBwC,MAAA,EAAQ;QACNC,UAAA,EAAY;MACd;MACAC,iBAAA,EAAmB;QACjBC,MAAA,EAAQ5B;MACV;IACF;EACF,IACA,CAACA,cAAA,CAAe;EAGlB,MAAM,CAAC6B,UAAA,GAAc;IAAER,WAAA,EAAaS,eAAe;IAAEb,UAAA,EAAYc;EAAc,CAAE,CAAC,GAChFvC,aAAA,CAAc;IACZwC,eAAA,EAAiB,CAACnC,gBAAA,CAAiB;IACnC2B,aAAA;IACAS,kBAAA,EAAoBpC;EACtB;EAEF,MAAMqC,kBAAA,GAAqBlD,WAAA,CACzB,MAAOmD,MAAA;IACL,MAAM/B,cAAA,CACJ;MACEgC,OAAA,EAASD,MAAA,CAAOC,OAAO,GAAGvD,8BAAA,CAA+BsD,MAAA,CAAOC,OAAO,IAAIC,SAAA;MAC3EF,MAAA,EAAQA,MAAA,CAAOhB,EAAE;MACjBmB,KAAA,EAAOH,MAAA,CAAOG;IAChB,GACA;EAEJ,GACA,CAAClC,cAAA,CAAe;EAGlB,MAAMmC,gBAAA,GAAmBvD,WAAA,CAAY;IACnC,MAAMoB,cAAA,CACJ;MACEgC,OAAA,EAASC,SAAA;MACTF,MAAA,EAAQE,SAAA;MACRC,KAAA,EAAOD;IACT,GACA;EAEJ,GAAG,CAACjC,cAAA,CAAe;EAEnB,MAAMoC,kBAAA,GAAqBxD,WAAA,CAAY;IACrC,IAAI;MACF,MAAMyD,KAAA,CAAM,GAAG5B,QAAA,IAAYhB,gBAAA,IAAoBE,YAAA,CAAaoB,EAAE,EAAE,EAAE;QAChEuB,MAAA,EAAQ;MACV,GAAGC,IAAI,CAAC,MAAOC,GAAA;QACb,IAAI;UACF,MAAMC,IAAA,GAAO,MAAMD,GAAA,CAAIC,IAAI;UAE3B,IAAID,GAAA,CAAIE,MAAM,GAAG,KAAK;YACpB5D,KAAA,CAAM6D,OAAO,CACXvC,CAAA,CAAE,wBAAwB;cACxBwC,KAAA,EAAOrE,cAAA,CAAeoC,YAAA,EAAckC,MAAA,EAAQC,QAAA,EAAU3C,IAAA;cACtD4C,KAAA,EAAOpD,YAAA,CAAaoD;YACtB;YAGF,MAAMZ,gBAAA;UACR,OAAO;YACL,IAAIM,IAAA,CAAKO,MAAM,EAAE;cACfP,IAAA,CAAKO,MAAM,CAACC,OAAO,CAAEC,KAAA,IAAUpE,KAAA,CAAMoE,KAAK,CAACA,KAAA,CAAMC,OAAO;YAC1D,OAAO;cACLrE,KAAA,CAAMoE,KAAK,CAAC9C,CAAA,CAAE,uBAAuB;gBAAE2C,KAAA,EAAOpD,YAAA,CAAaoD;cAAM;YACnE;UACF;QACF,EAAE,OAAOK,IAAA,EAAM;UACbtE,KAAA,CAAMoE,KAAK,CAAC9C,CAAA,CAAE,uBAAuB;YAAE2C,KAAA,EAAOpD,YAAA,CAAaoD;UAAM;QACnE;MACF;IACF,EAAE,OAAOK,IAAA,EAAM;MACbtE,KAAA,CAAMoE,KAAK,CAAC9C,CAAA,CAAE,uBAAuB;QAAE2C,KAAA,EAAOpD,YAAA,CAAaoD;MAAM;IACnE;EACF,GAAG,CAACtC,QAAA,EAAUd,YAAA,EAAcoB,EAAA,EAAIpB,YAAA,EAAcoD,KAAA,EAAO3C,CAAA,EAAGO,YAAA,EAAcR,IAAA,EAAMgC,gBAAA,CAAiB;EAE7F,MAAMkB,kBAAA,GAAqBzE,WAAA,CAAY;IACrC,IAAI;MACF,MAAMyD,KAAA,CAAM,GAAG5B,QAAA,0BAAkCd,YAAA,CAAaoB,EAAE,EAAE,EAAE;QAClEuC,IAAA,EAAMC,IAAA,CAAKC,SAAS,CAAC;UACnBxB,OAAA,EAASxD,6BAAA,CAA8BuB,KAAA,CAAMiC,OAAO;UACpDE,KAAA,EAAOnC,KAAA,CAAMmC;QACf;QACAuB,WAAA,EAAa;QACbC,OAAA,EAAS;UACP,gBAAgB;QAClB;QACApB,MAAA,EAAQ;MACV,GAAGC,IAAI,CAAC,MAAOC,GAAA;QACb,IAAI;UACF,MAAMC,IAAA,GAAO,MAAMD,GAAA,CAAIC,IAAI;UAE3B,IAAID,GAAA,CAAIE,MAAM,GAAG,KAAK;YACpB5D,KAAA,CAAM6D,OAAO,CACXvC,CAAA,CAAE,oCAAoC;cACpCwC,KAAA,EAAOrE,cAAA,CAAeoC,YAAA,EAAckC,MAAA,EAAQC,QAAA,EAAU3C,IAAA;YACxD;YAGFD,gBAAA,CAAiB;UACnB,OAAO;YACL,IAAIuC,IAAA,CAAKO,MAAM,EAAE;cACfP,IAAA,CAAKO,MAAM,CAACC,OAAO,CAAEC,KAAA,IAAUpE,KAAA,CAAMoE,KAAK,CAACA,KAAA,CAAMC,OAAO;YAC1D,OAAO;cACLrE,KAAA,CAAMoE,KAAK,CAAC9C,CAAA,CAAE;YAChB;UACF;QACF,EAAE,OAAOgD,IAAA,EAAM;UACbtE,KAAA,CAAMoE,KAAK,CAAC9C,CAAA,CAAE;QAChB;MACF;IACF,EAAE,OAAOgD,IAAA,EAAM;MACbtE,KAAA,CAAMoE,KAAK,CAAC9C,CAAA,CAAE;IAChB;EACF,GAAG,CACDK,QAAA,EACAd,YAAA,EAAcoB,EAAA,EACdhB,KAAA,CAAMiC,OAAO,EACbjC,KAAA,CAAMmC,KAAK,EACX9B,CAAA,EACAO,YAAA,EAAckC,MAAA,EAAQC,QAAA,EACtB3C,IAAA,EACAD,gBAAA,CACD;EAED;EACA,MAAMyD,oBAAA,GAAuB9E,OAAA,CAAQ;IACnC,MAAM+E,SAAA,GAA+B,C,aACnCC,IAAA,CAACvE,mBAAA;MAECsD,KAAA,EAAOrE,cAAA,CAAeoC,YAAA,EAAckC,MAAA,EAAQiB,MAAA,EAAQ3D,IAAA;OADhD,sBAGP;IAED,IAAIR,YAAA,IAAgBG,QAAA,EAAU;MAC5B8D,SAAA,CAAUG,IAAI,cACZF,IAAA,CAACxE,SAAA,CAAU2E,MAAM;QACfC,OAAA,EAAS,MAAAA,CAAA;UACP,MAAMjE,cAAA,CACJ;YACEgC,OAAA,EAASvD,8BAAA,CAA+BkB,YAAA,CAAaqC,OAAO;YAC5DE,KAAA,EAAOvC,YAAA,CAAauC;UACtB,GACA;QAEJ;kBAEC9B,CAAA,CAAE;;MAIP,IAAIP,sBAAA,CAAuBqE,MAAM,EAAE;QACjCN,SAAA,CAAUG,IAAI,cACZF,IAAA,CAACxE,SAAA,CAAU2E,MAAM;UACfC,OAAA,EAAS,MAAAA,CAAA;YACP,MAAMZ,kBAAA;UACR;oBAEC1D,YAAA,CAAawE,QAAQ,GAAG/D,CAAA,CAAE,+BAA+BA,CAAA,CAAE;;MAGlE;IACF;IAEAwD,SAAA,CAAUG,IAAI,cACZF,IAAA,CAACxE,SAAA,CAAU2E,MAAM;MACfC,OAAA,EAASA,CAAA;QACP9C,mBAAA;MACF;gBAECf,CAAA,CAAE;;IAIP,IAAIT,YAAA,IAAgBE,sBAAA,EAAwBuE,MAAA,EAAQ;MAClDR,SAAA,CAAUG,IAAI,cACZM,KAAA,CAAC1F,QAAA;gCACCkF,IAAA,CAACxE,SAAA,CAAU2E,MAAM;UAACC,OAAA,EAASA,CAAA,KAAM5D,SAAA,CAAUb,4BAAA;oBACxCY,CAAA,CAAE;yBAELyD,IAAA,CAACxE,SAAA,CAAU2E,MAAM;UACfC,OAAA,EAASA,CAAA;YACPnD,kBAAA;UACF;oBAECV,CAAA,CAAE;;;IAIX;IAEA,OAAOwD,SAAA;EACT,GAAG,CACDjE,YAAA,EACAE,sBAAA,EAAwBuE,MAAA,EACxBvE,sBAAA,EAAwBqE,MAAA,EACxB/C,mBAAA,EACAL,kBAAA,EACAT,SAAA,EACAgD,kBAAA,EACAjD,CAAA,EACAJ,cAAA,EACAF,QAAA,EACAa,YAAA,EAAckC,MAAA,EAAQiB,MAAA,EACtB3D,IAAA,CACD;EAED,OAAO;IACLa,qBAAA,eACE6C,IAAA,CAAC7C,qBAAA;MACCsD,WAAA,EAAa;QACXtC,OAAA,EAASxD,6BAAA,CAA8BuB,KAAA,CAAMiC,OAAO;QACpDT,iBAAA,EAAmB3B,cAAA;QACnBsC,KAAA,EAAOnC,KAAA,CAAMmC;MACf;MACAqC,MAAA,EAAQ,MAAAA,CAAO;QAAEC;MAAG,CAAE;QACpBtD,oBAAA;QACA,MAAMY,kBAAA,CAAmB0C,GAAA;MAC3B;MACAC,mBAAA,EAAqB;;IAGzBC,iBAAA,eACEb,IAAA,CAAC3E,iBAAA;MACCoE,IAAA,eACEO,IAAA,CAACtE,WAAA;QACCoF,QAAA,EAAU;UACR,KAAKC,CAAC;YAAEC;UAAQ,CAAE,kBAAKhB,IAAA,CAAC;sBAAQgB;;QAClC;QACAC,OAAA,EAAQ;QACR1E,CAAA,EAAGA,CAAA;QACH2E,SAAA,EAAW;UACTnC,KAAA,EAAOjC,YAAA,EAAckC,MAAA,EAAQC,QAAA;UAC7BC,KAAA,EAAOpD,YAAA,EAAcoD;QACvB;;MAGJiC,eAAA,EAAiB5E,CAAA,CAAE;MACnB6E,OAAA,EAAS7E,CAAA,CAAE;MACX8E,SAAA,EAAW1F,4BAAA;MACX2F,SAAA,EAAW/C;;IAGfgD,gBAAA,eACEvB,IAAA,CAACjD,oBAAA;MACCyE,QAAA,EAAUA,CAAA;QACR;MAAA,CACF;MACAC,WAAA,EAAa,MAAAA,CAAO;QAAEd;MAAG,CAAE;QACzB,MAAM1C,kBAAA,CAAmB0C,GAAA;MAC3B;MACAD,MAAA,EAAQ,MAAAA,CAAO;QAAEC;MAAG,CAAE;QACpB,MAAM1C,kBAAA,CAAmB0C,GAAA;MAC3B;;IAGJe,iBAAA,EAAmBzF,QAAA;IACnB0F,oBAAA,EAAsB7D,cAAA;IACtB8D,gBAAA,eACE5B,IAAA,CAACpC,UAAA;MACCiE,WAAA,EAAa;MACbC,mBAAmB;MACnBC,QAAA,EAAU,MAAAA,CAAO;QAAEpB;MAAG,CAAE;QACtB9C,eAAA;QACA,MAAMI,kBAAA,CAAmB0C,GAAA;MAC3B;;IAGJb,oBAAA;IACAkC,WAAA,EAAa1D;EACf;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"useQueryPresets.js","names":["useModal","getTranslation","transformColumnsToPreferences","transformColumnsToSearchParams","React","useCallback","useMemo","toast","useConfig","useListQuery","useTranslation","ConfirmationModal","useDocumentDrawer","useListDrawer","PopupList","PopupListGroupLabel","Translation","confirmDeletePresetModalSlug","queryPresetsSlug","useQueryPresets","activePreset","collectionSlug","queryPresetPermissions","modified","query","refineListData","setModified","setQueryModified","i18n","t","openModal","config","routes","api","apiRoute","getEntityConfig","presetConfig","PresetDocumentDrawer","openDrawer","openDocumentDrawer","id","CreateNewPresetDrawer","closeDrawer","closeCreateNewDrawer","openCreateNewDrawer","filterOptions","isTemp","not_equals","relatedCollection","equals","ListDrawer","closeListDrawer","openListDrawer","collectionSlugs","selectedCollection","handlePresetChange","preset","columns","undefined","where","resetQueryPreset","handleDeletePreset","fetch","method","then","res","json","status","success","label","labels","singular","title","errors","forEach","error","message","_err","saveCurrentChanges","body","JSON","stringify","credentials","headers","queryPresetMenuItems","hasModifiedPreset","_jsx","plural","_jsxs","ButtonGroup","Button","onClick","update","isShared","delete","_Fragment","initialData","onSave","doc","redirectAfterCreate","DeletePresetModal","elements","1","children","i18nKey","variables","confirmingLabel","heading","modalSlug","onConfirm","EditPresetDrawer","onDelete","onDuplicate","openPresetListDrawer","PresetListDrawer","allowCreate","disableQueryPresets","onSelect","resetPreset"],"sources":["../../../src/elements/ListControls/useQueryPresets.tsx"],"sourcesContent":["import type { CollectionSlug, QueryPreset, SanitizedCollectionPermission } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useListQuery } from '../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { useListDrawer } from '../ListDrawer/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { PopupListGroupLabel } from '../Popup/PopupGroupLabel/index.js'\nimport { Translation } from '../Translation/index.js'\n\nconst confirmDeletePresetModalSlug = 'confirm-delete-preset'\n\nconst queryPresetsSlug = 'payload-query-presets'\n\nexport const useQueryPresets = ({\n activePreset,\n collectionSlug,\n queryPresetPermissions,\n}: {\n activePreset: QueryPreset\n collectionSlug: CollectionSlug\n queryPresetPermissions: SanitizedCollectionPermission\n}): {\n CreateNewPresetDrawer: React.ReactNode\n DeletePresetModal: React.ReactNode\n EditPresetDrawer: React.ReactNode\n hasModifiedPreset: boolean\n openPresetListDrawer: () => void\n PresetListDrawer: React.ReactNode\n queryPresetMenuItems: React.ReactNode[]\n resetPreset: () => Promise<void>\n} => {\n const { modified, query, refineListData, setModified: setQueryModified } = useListQuery()\n\n const { i18n, t } = useTranslation()\n const { openModal } = useModal()\n\n const {\n config: {\n routes: { api: apiRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const presetConfig = getEntityConfig({ collectionSlug: queryPresetsSlug })\n\n const [PresetDocumentDrawer, , { openDrawer: openDocumentDrawer }] = useDocumentDrawer({\n id: activePreset?.id,\n collectionSlug: queryPresetsSlug,\n })\n\n const [\n CreateNewPresetDrawer,\n ,\n { closeDrawer: closeCreateNewDrawer, openDrawer: openCreateNewDrawer },\n ] = useDocumentDrawer({\n collectionSlug: queryPresetsSlug,\n })\n\n const filterOptions = useMemo(\n () => ({\n 'payload-query-presets': {\n isTemp: {\n not_equals: true,\n },\n relatedCollection: {\n equals: collectionSlug,\n },\n },\n }),\n [collectionSlug],\n )\n\n const [ListDrawer, , { closeDrawer: closeListDrawer, openDrawer: openListDrawer }] =\n useListDrawer({\n collectionSlugs: [queryPresetsSlug],\n filterOptions,\n selectedCollection: queryPresetsSlug,\n })\n\n const handlePresetChange = useCallback(\n async (preset: QueryPreset) => {\n await refineListData(\n {\n columns: preset.columns ? transformColumnsToSearchParams(preset.columns) : undefined,\n preset: preset.id,\n where: preset.where,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const resetQueryPreset = useCallback(async () => {\n await refineListData(\n {\n columns: undefined,\n preset: undefined,\n where: undefined,\n },\n false,\n )\n }, [refineListData])\n\n const handleDeletePreset = useCallback(async () => {\n try {\n await fetch(`${apiRoute}/${queryPresetsSlug}/${activePreset.id}`, {\n method: 'DELETE',\n }).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleDeleted', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n title: activePreset.title,\n }),\n )\n\n await resetQueryPreset()\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n })\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }, [apiRoute, activePreset?.id, activePreset?.title, t, presetConfig, i18n, resetQueryPreset])\n\n const saveCurrentChanges = useCallback(async () => {\n try {\n await fetch(`${apiRoute}/payload-query-presets/${activePreset.id}`, {\n body: JSON.stringify({\n columns: transformColumnsToPreferences(query.columns),\n where: query.where,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n }).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:updatedLabelSuccessfully', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n }),\n )\n\n setQueryModified(false)\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:unknown'))\n }\n }\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n })\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n }, [\n apiRoute,\n activePreset?.id,\n query.columns,\n query.where,\n t,\n presetConfig?.labels?.singular,\n i18n,\n setQueryModified,\n ])\n\n // Memoize so that components aren't re-rendered on query and column changes\n const queryPresetMenuItems = useMemo(() => {\n const hasModifiedPreset = activePreset && modified\n\n return [\n <PopupListGroupLabel\n key=\"preset-group-label\"\n label={getTranslation(presetConfig?.labels?.plural, i18n)}\n />,\n <PopupList.ButtonGroup key=\"preset-group-buttons\">\n {hasModifiedPreset && (\n <PopupList.Button\n onClick={async () => {\n await refineListData(\n {\n columns: transformColumnsToSearchParams(activePreset.columns),\n where: activePreset.where,\n },\n false,\n )\n }}\n >\n {t('general:reset')}\n </PopupList.Button>\n )}\n {hasModifiedPreset && queryPresetPermissions.update && (\n <PopupList.Button\n onClick={async () => {\n await saveCurrentChanges()\n }}\n >\n {activePreset?.isShared ? t('general:updateForEveryone') : t('general:save')}\n </PopupList.Button>\n )}\n <PopupList.Button\n onClick={() => {\n openCreateNewDrawer()\n }}\n >\n {t('general:createNew')}\n </PopupList.Button>\n {activePreset && queryPresetPermissions?.delete && (\n <>\n <PopupList.Button onClick={() => openModal(confirmDeletePresetModalSlug)}>\n {t('general:delete')}\n </PopupList.Button>\n <PopupList.Button\n onClick={() => {\n openDocumentDrawer()\n }}\n >\n {t('general:edit')}\n </PopupList.Button>\n </>\n )}\n </PopupList.ButtonGroup>,\n ]\n }, [\n activePreset,\n queryPresetPermissions?.delete,\n queryPresetPermissions?.update,\n openCreateNewDrawer,\n openDocumentDrawer,\n openModal,\n saveCurrentChanges,\n t,\n refineListData,\n modified,\n presetConfig?.labels?.plural,\n i18n,\n ])\n\n return {\n CreateNewPresetDrawer: (\n <CreateNewPresetDrawer\n initialData={{\n columns: transformColumnsToPreferences(query.columns),\n relatedCollection: collectionSlug,\n where: query.where,\n }}\n onSave={async ({ doc }) => {\n closeCreateNewDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n redirectAfterCreate={false}\n />\n ),\n DeletePresetModal: (\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: presetConfig?.labels?.singular,\n title: activePreset?.title,\n }}\n />\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmDeletePresetModalSlug}\n onConfirm={handleDeletePreset}\n />\n ),\n EditPresetDrawer: (\n <PresetDocumentDrawer\n onDelete={() => {\n // setSelectedPreset(undefined)\n }}\n onDuplicate={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n onSave={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n ),\n hasModifiedPreset: modified,\n openPresetListDrawer: openListDrawer,\n PresetListDrawer: (\n <ListDrawer\n allowCreate={false}\n disableQueryPresets\n onSelect={async ({ doc }) => {\n closeListDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n ),\n queryPresetMenuItems,\n resetPreset: resetQueryPreset,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAUjD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAUjD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA0KvD,CAAA"}
|
|
@@ -71,7 +71,10 @@ export const ListDrawerContent = ({
|
|
|
71
71
|
useEffect(() => {
|
|
72
72
|
updateSelectedOption(selectedCollectionFromProps);
|
|
73
73
|
}, [selectedCollectionFromProps]);
|
|
74
|
-
const renderList = useCallback(async (
|
|
74
|
+
const renderList = useCallback(async ({
|
|
75
|
+
slug: slug_0,
|
|
76
|
+
query
|
|
77
|
+
}) => {
|
|
75
78
|
try {
|
|
76
79
|
const newQuery = {
|
|
77
80
|
...(query || {}),
|
|
@@ -83,23 +86,25 @@ export const ListDrawerContent = ({
|
|
|
83
86
|
if (filterOptions && typeof filterOption !== 'boolean') {
|
|
84
87
|
newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOption);
|
|
85
88
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
|
|
89
|
+
if (slug_0) {
|
|
90
|
+
const result = await serverFunction({
|
|
91
|
+
name: 'render-list',
|
|
92
|
+
args: {
|
|
93
|
+
allowCreate,
|
|
94
|
+
collectionSlug: slug_0,
|
|
95
|
+
disableBulkDelete: true,
|
|
96
|
+
disableBulkEdit: true,
|
|
97
|
+
disableQueryPresets,
|
|
98
|
+
drawerSlug,
|
|
99
|
+
enableRowSelections,
|
|
100
|
+
overrideEntityVisibility,
|
|
101
|
+
query: newQuery
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
setListView(result?.List || null);
|
|
105
|
+
} else {
|
|
106
|
+
setListView(null);
|
|
107
|
+
}
|
|
103
108
|
setIsLoading(false);
|
|
104
109
|
} catch (_err) {
|
|
105
110
|
console.error('Error rendering List View: ', _err) // eslint-disable-line no-console
|
|
@@ -111,7 +116,9 @@ export const ListDrawerContent = ({
|
|
|
111
116
|
}, [serverFunction, closeModal, allowCreate, drawerSlug, isOpen, enableRowSelections, filterOptions, overrideEntityVisibility, disableQueryPresets]);
|
|
112
117
|
useEffect(() => {
|
|
113
118
|
if (!ListView) {
|
|
114
|
-
void renderList(
|
|
119
|
+
void renderList({
|
|
120
|
+
slug: selectedOption?.value
|
|
121
|
+
});
|
|
115
122
|
}
|
|
116
123
|
}, [renderList, ListView, selectedOption.value]);
|
|
117
124
|
const onCreateNew = useCallback(({
|
|
@@ -119,7 +126,7 @@ export const ListDrawerContent = ({
|
|
|
119
126
|
}) => {
|
|
120
127
|
if (typeof onSelect === 'function') {
|
|
121
128
|
onSelect({
|
|
122
|
-
collectionSlug: selectedOption
|
|
129
|
+
collectionSlug: selectedOption?.value,
|
|
123
130
|
doc,
|
|
124
131
|
docID: doc.id
|
|
125
132
|
});
|
|
@@ -128,11 +135,16 @@ export const ListDrawerContent = ({
|
|
|
128
135
|
closeModal(drawerSlug);
|
|
129
136
|
}, [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedOption.value]);
|
|
130
137
|
const onQueryChange = useCallback(query_0 => {
|
|
131
|
-
void renderList(
|
|
138
|
+
void renderList({
|
|
139
|
+
slug: selectedOption?.value,
|
|
140
|
+
query: query_0
|
|
141
|
+
});
|
|
132
142
|
}, [renderList, selectedOption.value]);
|
|
133
143
|
const setMySelectedOption = useCallback(incomingSelection => {
|
|
134
144
|
setSelectedOption(incomingSelection);
|
|
135
|
-
void renderList(
|
|
145
|
+
void renderList({
|
|
146
|
+
slug: incomingSelection?.value
|
|
147
|
+
});
|
|
136
148
|
}, [renderList]);
|
|
137
149
|
if (isLoading) {
|
|
138
150
|
return /*#__PURE__*/_jsx(LoadingOverlay, {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerContent.js","names":["useModal","hoistQueryParamsToAnd","React","useCallback","useEffect","useState","useDocumentDrawer","useEffectEvent","useConfig","useServerFunctions","ListDrawerContextProvider","LoadingOverlay","ListDrawerContent","allowCreate","collectionSlugs","disableQueryPresets","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","overrideEntityVisibility","selectedCollection","selectedCollectionFromProps","closeModal","isModalOpen","serverFunction","ListView","setListView","undefined","isLoading","setIsLoading","config","collections","getEntityConfig","isOpen","enabledCollections","filter","slug","includes","selectedOption","setSelectedOption","initialSelection","found","collectionSlug","label","labels","value","DocumentDrawer","DocumentDrawerToggler","documentDrawerSlug","updateSelectedOption","renderList","query","newQuery","where","filterOption","List","ViewResult","name","args","disableBulkDelete","disableBulkEdit","_err","console","error","onCreateNew","doc","docID","id","onQueryChange","setMySelectedOption","incomingSelection","_jsx","_jsxs","createNewDrawerSlug","onSave"],"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { ListQuery } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { hoistQueryParamsToAnd } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { ListDrawerContextProvider } from '../ListDrawer/Provider.js'\nimport { LoadingOverlay } from '../Loading/index.js'\nimport { type Option } from '../ReactSelect/index.js'\n\nexport const ListDrawerContent: React.FC<ListDrawerProps> = ({\n allowCreate = true,\n collectionSlugs,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n filterOptions,\n onBulkSelect,\n onSelect,\n overrideEntityVisibility = true,\n selectedCollection: selectedCollectionFromProps,\n}) => {\n const { closeModal, isModalOpen } = useModal()\n\n const { serverFunction } = useServerFunctions()\n const [ListView, setListView] = useState<React.ReactNode>(undefined)\n const [isLoading, setIsLoading] = useState(true)\n\n const {\n config: { collections },\n getEntityConfig,\n } = useConfig()\n\n const isOpen = isModalOpen(drawerSlug)\n\n const enabledCollections = collections.filter(({ slug }) => {\n return collectionSlugs.includes(slug)\n })\n\n const [selectedOption, setSelectedOption] = useState<Option<string>>(() => {\n const initialSelection = selectedCollectionFromProps || enabledCollections[0]?.slug\n const found = getEntityConfig({ collectionSlug: initialSelection })\n\n return found\n ? {\n label: found.labels,\n value: found.slug,\n }\n : undefined\n })\n\n const [DocumentDrawer, DocumentDrawerToggler, { drawerSlug: documentDrawerSlug }] =\n useDocumentDrawer({\n collectionSlug: selectedOption.value,\n })\n\n const updateSelectedOption = useEffectEvent((selectedCollectionFromProps: string) => {\n if (selectedCollectionFromProps && selectedCollectionFromProps !== selectedOption?.value) {\n setSelectedOption({\n label: getEntityConfig({ collectionSlug: selectedCollectionFromProps })?.labels,\n value: selectedCollectionFromProps,\n })\n }\n })\n\n useEffect(() => {\n updateSelectedOption(selectedCollectionFromProps)\n }, [selectedCollectionFromProps])\n\n const renderList = useCallback(\n async (slug: string, query?: ListQuery) => {\n try {\n const newQuery: ListQuery = { ...(query || {}), where: { ...(query?.where || {}) } }\n\n const filterOption = filterOptions?.[slug]\n\n if (filterOptions && typeof filterOption !== 'boolean') {\n newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOption)\n }\n\n const { List: ViewResult } = (await serverFunction({\n name: 'render-list',\n args: {\n allowCreate,\n collectionSlug: slug,\n disableBulkDelete: true,\n disableBulkEdit: true,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n overrideEntityVisibility,\n query: newQuery,\n },\n })) as { List: React.ReactNode }\n\n setListView(ViewResult)\n setIsLoading(false)\n } catch (_err) {\n console.error('Error rendering List View: ', _err) // eslint-disable-line no-console\n\n if (isOpen) {\n closeModal(drawerSlug)\n }\n }\n },\n [\n serverFunction,\n closeModal,\n allowCreate,\n drawerSlug,\n isOpen,\n enableRowSelections,\n filterOptions,\n overrideEntityVisibility,\n disableQueryPresets,\n ],\n )\n\n useEffect(() => {\n if (!ListView) {\n void renderList(selectedOption.value)\n }\n }, [renderList, ListView, selectedOption.value])\n\n const onCreateNew = useCallback(\n ({ doc }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: selectedOption.value,\n doc,\n docID: doc.id,\n })\n }\n\n closeModal(documentDrawerSlug)\n closeModal(drawerSlug)\n },\n [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedOption.value],\n )\n\n const onQueryChange = useCallback(\n (query: ListQuery) => {\n void renderList(selectedOption.value, query)\n },\n [renderList, selectedOption.value],\n )\n\n const setMySelectedOption = useCallback(\n (incomingSelection: Option<string>) => {\n setSelectedOption(incomingSelection)\n void renderList(incomingSelection.value)\n },\n [renderList],\n )\n\n if (isLoading) {\n return <LoadingOverlay />\n }\n\n return (\n <ListDrawerContextProvider\n allowCreate={allowCreate}\n createNewDrawerSlug={documentDrawerSlug}\n DocumentDrawerToggler={DocumentDrawerToggler}\n drawerSlug={drawerSlug}\n enabledCollections={collectionSlugs}\n onBulkSelect={onBulkSelect}\n onQueryChange={onQueryChange}\n onSelect={onSelect}\n selectedOption={selectedOption}\n setSelectedOption={setMySelectedOption}\n >\n {ListView}\n <DocumentDrawer onSave={onCreateNew} />\n </ListDrawerContextProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DrawerContent.js","names":["useModal","hoistQueryParamsToAnd","React","useCallback","useEffect","useState","useDocumentDrawer","useEffectEvent","useConfig","useServerFunctions","ListDrawerContextProvider","LoadingOverlay","ListDrawerContent","allowCreate","collectionSlugs","disableQueryPresets","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","overrideEntityVisibility","selectedCollection","selectedCollectionFromProps","closeModal","isModalOpen","serverFunction","ListView","setListView","undefined","isLoading","setIsLoading","config","collections","getEntityConfig","isOpen","enabledCollections","filter","slug","includes","selectedOption","setSelectedOption","initialSelection","found","collectionSlug","label","labels","value","DocumentDrawer","DocumentDrawerToggler","documentDrawerSlug","updateSelectedOption","renderList","query","newQuery","where","filterOption","result","name","args","disableBulkDelete","disableBulkEdit","List","_err","console","error","onCreateNew","doc","docID","id","onQueryChange","setMySelectedOption","incomingSelection","_jsx","_jsxs","createNewDrawerSlug","onSave"],"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { ListQuery } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { hoistQueryParamsToAnd } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { ListDrawerContextProvider } from '../ListDrawer/Provider.js'\nimport { LoadingOverlay } from '../Loading/index.js'\nimport { type Option } from '../ReactSelect/index.js'\n\nexport const ListDrawerContent: React.FC<ListDrawerProps> = ({\n allowCreate = true,\n collectionSlugs,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n filterOptions,\n onBulkSelect,\n onSelect,\n overrideEntityVisibility = true,\n selectedCollection: selectedCollectionFromProps,\n}) => {\n const { closeModal, isModalOpen } = useModal()\n\n const { serverFunction } = useServerFunctions()\n const [ListView, setListView] = useState<React.ReactNode>(undefined)\n const [isLoading, setIsLoading] = useState(true)\n\n const {\n config: { collections },\n getEntityConfig,\n } = useConfig()\n\n const isOpen = isModalOpen(drawerSlug)\n\n const enabledCollections = collections.filter(({ slug }) => {\n return collectionSlugs.includes(slug)\n })\n\n const [selectedOption, setSelectedOption] = useState<Option<string>>(() => {\n const initialSelection = selectedCollectionFromProps || enabledCollections[0]?.slug\n const found = getEntityConfig({ collectionSlug: initialSelection })\n\n return found\n ? {\n label: found.labels,\n value: found.slug,\n }\n : undefined\n })\n\n const [DocumentDrawer, DocumentDrawerToggler, { drawerSlug: documentDrawerSlug }] =\n useDocumentDrawer({\n collectionSlug: selectedOption.value,\n })\n\n const updateSelectedOption = useEffectEvent((selectedCollectionFromProps: string) => {\n if (selectedCollectionFromProps && selectedCollectionFromProps !== selectedOption?.value) {\n setSelectedOption({\n label: getEntityConfig({ collectionSlug: selectedCollectionFromProps })?.labels,\n value: selectedCollectionFromProps,\n })\n }\n })\n\n useEffect(() => {\n updateSelectedOption(selectedCollectionFromProps)\n }, [selectedCollectionFromProps])\n\n const renderList = useCallback(\n async ({ slug, query }: { query?: ListQuery; slug: string }) => {\n try {\n const newQuery: ListQuery = { ...(query || {}), where: { ...(query?.where || {}) } }\n\n const filterOption = filterOptions?.[slug]\n\n if (filterOptions && typeof filterOption !== 'boolean') {\n newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOption)\n }\n\n if (slug) {\n const result: { List: React.ReactNode } = (await serverFunction({\n name: 'render-list',\n args: {\n allowCreate,\n collectionSlug: slug,\n disableBulkDelete: true,\n disableBulkEdit: true,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n overrideEntityVisibility,\n query: newQuery,\n },\n })) as { List: React.ReactNode }\n\n setListView(result?.List || null)\n } else {\n setListView(null)\n }\n setIsLoading(false)\n } catch (_err) {\n console.error('Error rendering List View: ', _err) // eslint-disable-line no-console\n\n if (isOpen) {\n closeModal(drawerSlug)\n }\n }\n },\n [\n serverFunction,\n closeModal,\n allowCreate,\n drawerSlug,\n isOpen,\n enableRowSelections,\n filterOptions,\n overrideEntityVisibility,\n disableQueryPresets,\n ],\n )\n\n useEffect(() => {\n if (!ListView) {\n void renderList({ slug: selectedOption?.value })\n }\n }, [renderList, ListView, selectedOption.value])\n\n const onCreateNew = useCallback(\n ({ doc }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: selectedOption?.value,\n doc,\n docID: doc.id,\n })\n }\n\n closeModal(documentDrawerSlug)\n closeModal(drawerSlug)\n },\n [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedOption.value],\n )\n\n const onQueryChange = useCallback(\n (query: ListQuery) => {\n void renderList({ slug: selectedOption?.value, query })\n },\n [renderList, selectedOption.value],\n )\n\n const setMySelectedOption = useCallback(\n (incomingSelection: Option<string>) => {\n setSelectedOption(incomingSelection)\n void renderList({ slug: incomingSelection?.value })\n },\n [renderList],\n )\n\n if (isLoading) {\n return <LoadingOverlay />\n }\n\n return (\n <ListDrawerContextProvider\n allowCreate={allowCreate}\n createNewDrawerSlug={documentDrawerSlug}\n DocumentDrawerToggler={DocumentDrawerToggler}\n drawerSlug={drawerSlug}\n enabledCollections={collectionSlugs}\n onBulkSelect={onBulkSelect}\n onQueryChange={onQueryChange}\n onSelect={onSelect}\n selectedOption={selectedOption}\n setSelectedOption={setMySelectedOption}\n >\n {ListView}\n <DocumentDrawer onSave={onCreateNew} />\n </ListDrawerContextProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ClientCollectionConfig } from 'payload';
|
|
2
|
+
import './index.scss';
|
|
3
|
+
type ListFolderPillsProps = {
|
|
4
|
+
collectionConfig: ClientCollectionConfig;
|
|
5
|
+
viewType: 'folders' | 'list';
|
|
6
|
+
};
|
|
7
|
+
export declare function ListFolderPills({ collectionConfig, viewType }: ListFolderPillsProps): import("react").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListFolderPills/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAQrD,OAAO,cAAc,CAAA;AAIrB,KAAK,oBAAoB,GAAG;IAC1B,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAA;CAC7B,CAAA;AAED,wBAAgB,eAAe,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,oBAAoB,+BAyCnF"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { c as _c } from "react/compiler-runtime";
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { getTranslation } from '@payloadcms/translations';
|
|
6
|
+
import { formatAdminURL } from 'payload/shared';
|
|
7
|
+
import { useConfig } from '../../providers/Config/index.js';
|
|
8
|
+
import { useTranslation } from '../../providers/Translation/index.js';
|
|
9
|
+
import { Button } from '../Button/index.js';
|
|
10
|
+
import './index.scss';
|
|
11
|
+
const baseClass = 'list-folder-pills';
|
|
12
|
+
export function ListFolderPills(t0) {
|
|
13
|
+
const $ = _c(16);
|
|
14
|
+
const {
|
|
15
|
+
collectionConfig,
|
|
16
|
+
viewType
|
|
17
|
+
} = t0;
|
|
18
|
+
const {
|
|
19
|
+
i18n,
|
|
20
|
+
t
|
|
21
|
+
} = useTranslation();
|
|
22
|
+
const {
|
|
23
|
+
config
|
|
24
|
+
} = useConfig();
|
|
25
|
+
const t1 = viewType === "folders" && `${baseClass}__button--active`;
|
|
26
|
+
let t2;
|
|
27
|
+
if ($[0] !== t1) {
|
|
28
|
+
t2 = [`${baseClass}__button`, t1].filter(Boolean);
|
|
29
|
+
$[0] = t1;
|
|
30
|
+
$[1] = t2;
|
|
31
|
+
} else {
|
|
32
|
+
t2 = $[1];
|
|
33
|
+
}
|
|
34
|
+
const t3 = t2.join(" ");
|
|
35
|
+
const t4 = viewType === "folders";
|
|
36
|
+
const t5 = viewType === "list" ? "link" : "div";
|
|
37
|
+
const t6 = `/collections/${collectionConfig.slug}/${config.folders.slug}`;
|
|
38
|
+
let t7;
|
|
39
|
+
if ($[2] !== collectionConfig.labels?.plural || $[3] !== collectionConfig.slug || $[4] !== config.routes.admin || $[5] !== config.serverURL || $[6] !== i18n || $[7] !== t || $[8] !== t3 || $[9] !== t4 || $[10] !== t5 || $[11] !== t6 || $[12] !== viewType) {
|
|
40
|
+
const t8 = _jsx(Button, {
|
|
41
|
+
buttonStyle: "tab",
|
|
42
|
+
className: t3,
|
|
43
|
+
disabled: t4,
|
|
44
|
+
el: t5,
|
|
45
|
+
to: formatAdminURL({
|
|
46
|
+
adminRoute: config.routes.admin,
|
|
47
|
+
path: t6,
|
|
48
|
+
serverURL: config.serverURL
|
|
49
|
+
}),
|
|
50
|
+
children: t("folder:byFolder")
|
|
51
|
+
});
|
|
52
|
+
const t9 = viewType === "list" && `${baseClass}__button--active`;
|
|
53
|
+
let t10;
|
|
54
|
+
if ($[14] !== t9) {
|
|
55
|
+
t10 = [`${baseClass}__button`, t9].filter(Boolean);
|
|
56
|
+
$[14] = t9;
|
|
57
|
+
$[15] = t10;
|
|
58
|
+
} else {
|
|
59
|
+
t10 = $[15];
|
|
60
|
+
}
|
|
61
|
+
t7 = _jsxs("div", {
|
|
62
|
+
className: baseClass,
|
|
63
|
+
children: [t8, _jsxs(Button, {
|
|
64
|
+
buttonStyle: "tab",
|
|
65
|
+
className: t10.join(" "),
|
|
66
|
+
disabled: viewType === "list",
|
|
67
|
+
el: viewType === "folders" ? "link" : "div",
|
|
68
|
+
to: formatAdminURL({
|
|
69
|
+
adminRoute: config.routes.admin,
|
|
70
|
+
path: `/collections/${collectionConfig.slug}`,
|
|
71
|
+
serverURL: config.serverURL
|
|
72
|
+
}),
|
|
73
|
+
children: [t("general:all"), " ", getTranslation(collectionConfig?.labels?.plural, i18n)]
|
|
74
|
+
})]
|
|
75
|
+
});
|
|
76
|
+
$[2] = collectionConfig.labels?.plural;
|
|
77
|
+
$[3] = collectionConfig.slug;
|
|
78
|
+
$[4] = config.routes.admin;
|
|
79
|
+
$[5] = config.serverURL;
|
|
80
|
+
$[6] = i18n;
|
|
81
|
+
$[7] = t;
|
|
82
|
+
$[8] = t3;
|
|
83
|
+
$[9] = t4;
|
|
84
|
+
$[10] = t5;
|
|
85
|
+
$[11] = t6;
|
|
86
|
+
$[12] = viewType;
|
|
87
|
+
$[13] = t7;
|
|
88
|
+
} else {
|
|
89
|
+
t7 = $[13];
|
|
90
|
+
}
|
|
91
|
+
return t7;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","formatAdminURL","useConfig","useTranslation","Button","baseClass","ListFolderPills","t0","$","collectionConfig","viewType","i18n","t","config","t1","t2","filter","Boolean","t3","join","t4","t5","t6","slug","folders","t7","labels","plural","routes","admin","serverURL","t8","_jsx","buttonStyle","className","disabled","el","to","adminRoute","path","children","t9","t10","_jsxs"],"sources":["../../../src/elements/ListFolderPills/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'list-folder-pills'\n\ntype ListFolderPillsProps = {\n collectionConfig: ClientCollectionConfig\n viewType: 'folders' | 'list'\n}\n\nexport function ListFolderPills({ collectionConfig, viewType }: ListFolderPillsProps) {\n const { i18n, t } = useTranslation()\n const { config } = useConfig()\n\n return (\n <div className={baseClass}>\n <Button\n buttonStyle=\"tab\"\n className={[\n `${baseClass}__button`,\n viewType === 'folders' && `${baseClass}__button--active`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'folders'}\n el={viewType === 'list' ? 'link' : 'div'}\n to={formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionConfig.slug}/${config.folders.slug}`,\n serverURL: config.serverURL,\n })}\n >\n {t('folder:byFolder')}\n </Button>\n <Button\n buttonStyle=\"tab\"\n className={[`${baseClass}__button`, viewType === 'list' && `${baseClass}__button--active`]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'list'}\n el={viewType === 'folders' ? 'link' : 'div'}\n to={formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionConfig.slug}`,\n serverURL: config.serverURL,\n })}\n >\n {t('general:all')} {getTranslation(collectionConfig?.labels?.plural, i18n)}\n </Button>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/ListHeader/DrawerRelationshipSelect/index.tsx"],"names":[],"mappings":"AAaA,eAAO,MAAM,wBAAwB,mCAiCpC,CAAA"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { c as _c } from "react/compiler-runtime";
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { getTranslation } from '@payloadcms/translations';
|
|
6
|
+
import { FieldLabel } from '../../../fields/FieldLabel/index.js';
|
|
7
|
+
import { useConfig } from '../../../providers/Config/index.js';
|
|
8
|
+
import { useTranslation } from '../../../providers/Translation/index.js';
|
|
9
|
+
import { useListDrawerContext } from '../../ListDrawer/Provider.js';
|
|
10
|
+
import { ReactSelect } from '../../ReactSelect/index.js';
|
|
11
|
+
import { listHeaderClass } from '../index.js';
|
|
12
|
+
const drawerBaseClass = 'list-drawer';
|
|
13
|
+
export const DrawerRelationshipSelect = () => {
|
|
14
|
+
const $ = _c(12);
|
|
15
|
+
const {
|
|
16
|
+
i18n,
|
|
17
|
+
t
|
|
18
|
+
} = useTranslation();
|
|
19
|
+
const {
|
|
20
|
+
config: t0,
|
|
21
|
+
getEntityConfig
|
|
22
|
+
} = useConfig();
|
|
23
|
+
const {
|
|
24
|
+
collections
|
|
25
|
+
} = t0;
|
|
26
|
+
const {
|
|
27
|
+
enabledCollections,
|
|
28
|
+
selectedOption,
|
|
29
|
+
setSelectedOption
|
|
30
|
+
} = useListDrawerContext();
|
|
31
|
+
let t1;
|
|
32
|
+
if ($[0] !== collections || $[1] !== enabledCollections || $[2] !== getEntityConfig || $[3] !== i18n || $[4] !== selectedOption || $[5] !== setSelectedOption || $[6] !== t) {
|
|
33
|
+
t1 = Symbol.for("react.early_return_sentinel");
|
|
34
|
+
bb0: {
|
|
35
|
+
let t2;
|
|
36
|
+
if ($[8] !== enabledCollections) {
|
|
37
|
+
t2 = t3 => {
|
|
38
|
+
const {
|
|
39
|
+
slug
|
|
40
|
+
} = t3;
|
|
41
|
+
return enabledCollections.includes(slug);
|
|
42
|
+
};
|
|
43
|
+
$[8] = enabledCollections;
|
|
44
|
+
$[9] = t2;
|
|
45
|
+
} else {
|
|
46
|
+
t2 = $[9];
|
|
47
|
+
}
|
|
48
|
+
const enabledCollectionConfigs = collections.filter(t2);
|
|
49
|
+
if (enabledCollectionConfigs.length > 1) {
|
|
50
|
+
const activeCollectionConfig = getEntityConfig({
|
|
51
|
+
collectionSlug: selectedOption.value
|
|
52
|
+
});
|
|
53
|
+
let t3;
|
|
54
|
+
if ($[10] !== i18n) {
|
|
55
|
+
t3 = coll => ({
|
|
56
|
+
label: getTranslation(coll.labels.singular, i18n),
|
|
57
|
+
value: coll.slug
|
|
58
|
+
});
|
|
59
|
+
$[10] = i18n;
|
|
60
|
+
$[11] = t3;
|
|
61
|
+
} else {
|
|
62
|
+
t3 = $[11];
|
|
63
|
+
}
|
|
64
|
+
t1 = _jsxs("div", {
|
|
65
|
+
className: `${drawerBaseClass}__select-collection-wrap`,
|
|
66
|
+
children: [_jsx(FieldLabel, {
|
|
67
|
+
label: t("upload:selectCollectionToBrowse")
|
|
68
|
+
}), _jsx(ReactSelect, {
|
|
69
|
+
className: `${listHeaderClass}__select-collection`,
|
|
70
|
+
isClearable: false,
|
|
71
|
+
onChange: setSelectedOption,
|
|
72
|
+
options: enabledCollectionConfigs.map(t3),
|
|
73
|
+
value: {
|
|
74
|
+
label: getTranslation(activeCollectionConfig?.labels.singular, i18n),
|
|
75
|
+
value: activeCollectionConfig?.slug
|
|
76
|
+
}
|
|
77
|
+
})]
|
|
78
|
+
});
|
|
79
|
+
break bb0;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
$[0] = collections;
|
|
83
|
+
$[1] = enabledCollections;
|
|
84
|
+
$[2] = getEntityConfig;
|
|
85
|
+
$[3] = i18n;
|
|
86
|
+
$[4] = selectedOption;
|
|
87
|
+
$[5] = setSelectedOption;
|
|
88
|
+
$[6] = t;
|
|
89
|
+
$[7] = t1;
|
|
90
|
+
} else {
|
|
91
|
+
t1 = $[7];
|
|
92
|
+
}
|
|
93
|
+
if (t1 !== Symbol.for("react.early_return_sentinel")) {
|
|
94
|
+
return t1;
|
|
95
|
+
}
|
|
96
|
+
return null;
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","FieldLabel","useConfig","useTranslation","useListDrawerContext","ReactSelect","listHeaderClass","drawerBaseClass","DrawerRelationshipSelect","$","i18n","t","config","t0","getEntityConfig","collections","enabledCollections","selectedOption","setSelectedOption","t1","Symbol","for","t2","t3","slug","includes","enabledCollectionConfigs","filter","length","activeCollectionConfig","collectionSlug","value","coll","label","labels","singular","_jsxs","className","children","_jsx","isClearable","onChange","options","map"],"sources":["../../../../src/elements/ListHeader/DrawerRelationshipSelect/index.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\n\nimport { FieldLabel } from '../../../fields/FieldLabel/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useListDrawerContext } from '../../ListDrawer/Provider.js'\nimport { ReactSelect } from '../../ReactSelect/index.js'\nimport { listHeaderClass } from '../index.js'\n\nconst drawerBaseClass = 'list-drawer'\n\nexport const DrawerRelationshipSelect = () => {\n const { i18n, t } = useTranslation()\n const {\n config: { collections },\n getEntityConfig,\n } = useConfig()\n const { enabledCollections, selectedOption, setSelectedOption } = useListDrawerContext()\n const enabledCollectionConfigs = collections.filter(({ slug }) =>\n enabledCollections.includes(slug),\n )\n if (enabledCollectionConfigs.length > 1) {\n const activeCollectionConfig = getEntityConfig({ collectionSlug: selectedOption.value })\n\n return (\n <div className={`${drawerBaseClass}__select-collection-wrap`}>\n <FieldLabel label={t('upload:selectCollectionToBrowse')} />\n <ReactSelect\n className={`${listHeaderClass}__select-collection`}\n isClearable={false}\n onChange={setSelectedOption}\n options={enabledCollectionConfigs.map((coll) => ({\n label: getTranslation(coll.labels.singular, i18n),\n value: coll.slug,\n }))}\n value={{\n label: getTranslation(activeCollectionConfig?.labels.singular, i18n),\n value: activeCollectionConfig?.slug,\n }}\n />\n </div>\n )\n }\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,cAAc,QAAQ;AAE/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,oBAAoB,QAAQ;AACrC,SAASC,WAAW,QAAQ;AAC5B,SAASC,eAAe,QAAQ;AAEhC,MAAMC,eAAA,GAAkB;AAExB,OAAO,MAAMC,wBAAA,GAA2BA,CAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EACtC;IAAAW,IAAA;IAAAC;EAAA,IAAoBR,cAAA;EACpB;IAAAS,MAAA,EAAAC,EAAA;IAAAC;EAAA,IAGIZ,SAAA;EAFM;IAAAa;EAAA,IAAAF,EAAe;EAGzB;IAAAG,kBAAA;IAAAC,cAAA;IAAAC;EAAA,IAAkEd,oBAAA;EAAA,IAAAe,EAAA;EAAA,IAAAV,CAAA,QAAAM,WAAA,IAAAN,CAAA,QAAAO,kBAAA,IAAAP,CAAA,QAAAK,eAAA,IAAAL,CAAA,QAAAC,IAAA,IAAAD,CAAA,QAAAQ,cAAA,IAAAR,CAAA,QAAAS,iBAAA,IAAAT,CAAA,QAAAE,CAAA;IAQ9DQ,EAAA,GAAAC,MAAA,CAAAC,GAAA,8B;;;;QAPgDC,EAAA,GAAAC,EAAA;UAAC;YAAAC;UAAA,IAAAD,EAAQ;UAAA,OAC3DP,kBAAA,CAAAS,QAAA,CAA4BD,IAAA;QAAA;QAAAf,CAAA,MAAAO,kBAAA;QAAAP,CAAA,MAAAa,EAAA;MAAA;QAAAA,EAAA,GAAAb,CAAA;MAAA;MAD9B,MAAAiB,wBAAA,GAAiCX,WAAA,CAAAY,MAAA,CAAmBL,EACtB;MAAA,IAE1BI,wBAAA,CAAAE,MAAA,IAAkC;QACpC,MAAAC,sBAAA,GAA+Bf,eAAA;UAAAgB,cAAA,EAAkCb,cAAA,CAAAc;QAAA,CAAqB;QAAA,IAAAR,EAAA;QAAA,IAAAd,CAAA,SAAAC,IAAA;UAS1Ca,EAAA,GAAAS,IAAA;YAAAC,KAAA,EAC7BjC,cAAA,CAAegC,IAAA,CAAAE,MAAA,CAAAC,QAAA,EAAsBzB,IAAA;YAAAqB,KAAA,EACrCC,IAAA,CAAAR;UAAA;UACTf,CAAA,OAAAC,IAAA;UAAAD,CAAA,OAAAc,EAAA;QAAA;UAAAA,EAAA,GAAAd,CAAA;QAAA;QATJU,EAAA,GAAAiB,KAAA,CAAC;UAAAC,SAAA,EAAe,GAAA9B,eAAA,0BAA4C;UAAA+B,QAAA,GAC1DC,IAAA,CAAAtC,UAAA;YAAAgC,KAAA,EAAmBtB,CAAA,CAAE;UAAA,C,GACrB4B,IAAA,CAAAlC,WAAA;YAAAgC,SAAA,EACa,GAAA/B,eAAA,qBAAuC;YAAAkC,WAAA;YAAAC,QAAA,EAExCvB,iBAAA;YAAAwB,OAAA,EACDhB,wBAAA,CAAAiB,GAAA,CAA6BpB,EAGtC;YAAAQ,KAAA;cAAAE,KAAA,EAESjC,cAAA,CAAe6B,sBAAA,EAAAK,MAAA,CAAAC,QAAA,EAAyCzB,IAAA;cAAAqB,KAAA,EACxDF,sBAAA,EAAAL;YAAA;UAAA,C;;;;;;;;;;;;;;;;;;;;CAOnB","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
type DefaultDrawerTitleActionsProps = {
|
|
2
|
+
hasCreatePermission: boolean;
|
|
3
|
+
};
|
|
4
|
+
export declare function ListDrawerCreateNewDocButton({ hasCreatePermission, }: DefaultDrawerTitleActionsProps): import("react").JSX.Element;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=ListDrawerCreateNewDocButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListDrawerCreateNewDocButton.d.ts","sourceRoot":"","sources":["../../../../src/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.tsx"],"names":[],"mappings":"AAQA,KAAK,8BAA8B,GAAG;IACpC,mBAAmB,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,wBAAgB,4BAA4B,CAAC,EAC3C,mBAAmB,GACpB,EAAE,8BAA8B,+BAgBhC"}
|