@payloadcms/ui 3.68.0-internal-debug.2eb12b9 → 3.68.0-internal-debug.dafc24d
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/AddNewRelation/index.js +83 -27
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AnimateHeight/index.js +13 -5
- package/dist/elements/AnimateHeight/index.js.map +1 -1
- package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +2 -2
- package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
- package/dist/elements/AppHeader/index.js +107 -35
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.js +116 -36
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/Autosave/index.js +19 -6
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Banner/index.js +25 -9
- package/dist/elements/Banner/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js +97 -33
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +43 -15
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js +47 -15
- package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +7 -3
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js +12 -4
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +53 -17
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js +90 -30
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js +33 -13
- package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +214 -70
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +21 -13
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/Header/index.js +19 -7
- package/dist/elements/BulkUpload/Header/index.js.map +1 -1
- package/dist/elements/BulkUpload/index.js +70 -19
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/Button/index.js +103 -35
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/types.js +13 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/Card/index.js +30 -10
- package/dist/elements/Card/index.js.map +1 -1
- package/dist/elements/CheckboxPopup/index.js +19 -7
- package/dist/elements/CheckboxPopup/index.js.map +1 -1
- package/dist/elements/ClipboardAction/ClipboardActionLabel.js +16 -4
- package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
- package/dist/elements/ClipboardAction/index.js +42 -14
- package/dist/elements/ClipboardAction/index.js.map +1 -1
- package/dist/elements/CloseModalButton/index.js +12 -4
- package/dist/elements/CloseModalButton/index.js.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +15 -7
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/CodeEditor/index.js +18 -6
- package/dist/elements/CodeEditor/index.js.map +1 -1
- package/dist/elements/CodeEditor/types.js +3 -1
- package/dist/elements/CodeEditor/types.js.map +1 -1
- package/dist/elements/Collapsible/index.js +92 -29
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/Collapsible/provider.js +7 -3
- package/dist/elements/Collapsible/provider.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +13 -5
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/Combobox/index.js +43 -13
- package/dist/elements/Combobox/index.js.map +1 -1
- package/dist/elements/ConfirmationModal/index.js +49 -17
- package/dist/elements/ConfirmationModal/index.js.map +1 -1
- package/dist/elements/CopyLocaleData/index.js +73 -25
- package/dist/elements/CopyLocaleData/index.js.map +1 -1
- package/dist/elements/CopyToClipboard/index.js +18 -6
- package/dist/elements/CopyToClipboard/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +42 -13
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/getFormattedLocale.js +1 -0
- package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
- package/dist/elements/DatePicker/index.js +19 -7
- package/dist/elements/DatePicker/index.js.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.js +25 -9
- package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.js +49 -17
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.js +98 -26
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.js +304 -96
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +12 -4
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js +59 -19
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/Provider.js +12 -4
- package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +32 -10
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.js +11 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DocumentFields/index.js +54 -18
- package/dist/elements/DocumentFields/index.js.map +1 -1
- package/dist/elements/DocumentLocked/index.js +73 -25
- package/dist/elements/DocumentLocked/index.js.map +1 -1
- package/dist/elements/DocumentTakeOver/index.js +49 -17
- package/dist/elements/DocumentTakeOver/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +7 -3
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
- package/dist/elements/DraggableSortable/index.js +19 -7
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js +1 -0
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
- package/dist/elements/Drawer/index.js +80 -26
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/DrawerActionHeader/index.js +37 -13
- package/dist/elements/DrawerActionHeader/index.js.map +1 -1
- package/dist/elements/DrawerContentContainer/index.js +7 -3
- package/dist/elements/DrawerContentContainer/index.js.map +1 -1
- package/dist/elements/Dropzone/index.js +7 -3
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +61 -21
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +25 -9
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +146 -44
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.js +40 -14
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditUpload/index.js +232 -76
- package/dist/elements/EditUpload/index.js.map +1 -1
- package/dist/elements/EmailAndUsername/index.js +31 -11
- package/dist/elements/EmailAndUsername/index.js.map +1 -1
- package/dist/elements/ErrorPill/index.js +19 -7
- package/dist/elements/ErrorPill/index.js.map +1 -1
- package/dist/elements/FieldDiffContainer/index.js +25 -9
- package/dist/elements/FieldDiffContainer/index.js.map +1 -1
- package/dist/elements/FieldDiffLabel/index.js +7 -3
- package/dist/elements/FieldDiffLabel/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.js +19 -7
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.js +70 -22
- package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/FileMeta/index.js +43 -15
- package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
- package/dist/elements/FileDetails/StaticFileDetails/index.js +43 -15
- package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/index.js +13 -5
- package/dist/elements/FileDetails/index.js.map +1 -1
- package/dist/elements/FolderView/Breadcrumbs/index.js +31 -11
- package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
- package/dist/elements/FolderView/BrowseByFolderButton/index.js +12 -4
- package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
- package/dist/elements/FolderView/Cell/index.client.js +7 -3
- package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
- package/dist/elements/FolderView/Cell/index.server.js +7 -3
- package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
- package/dist/elements/FolderView/ColoredFolderIcon/index.js +7 -3
- package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
- package/dist/elements/FolderView/CurrentFolderActions/index.js +68 -24
- package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
- package/dist/elements/FolderView/DragOverlaySelection/index.js +31 -11
- package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
- package/dist/elements/FolderView/DraggableTableRow/index.js +25 -9
- package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
- package/dist/elements/FolderView/DraggableWithClick/index.js +7 -3
- package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
- package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +15 -7
- package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +189 -62
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
- package/dist/elements/FolderView/FilterFolderTypePill/index.js +19 -7
- package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
- package/dist/elements/FolderView/FolderField/index.server.js +7 -3
- package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
- package/dist/elements/FolderView/FolderFileCard/index.js +104 -31
- package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
- package/dist/elements/FolderView/FolderFileTable/index.js +49 -17
- package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
- package/dist/elements/FolderView/FolderTypeField/index.js +7 -3
- package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
- package/dist/elements/FolderView/ItemCardGrid/index.js +21 -9
- package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.js +28 -13
- package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
- package/dist/elements/FolderView/SimpleTable/index.js +67 -23
- package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
- package/dist/elements/FolderView/SortByPill/index.js +86 -30
- package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
- package/dist/elements/FolderView/ToggleViewButtons/index.js +25 -9
- package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
- package/dist/elements/FullscreenModal/index.js +7 -3
- package/dist/elements/FullscreenModal/index.js.map +1 -1
- package/dist/elements/GenerateConfirmation/index.js +31 -11
- package/dist/elements/GenerateConfirmation/index.js.map +1 -1
- package/dist/elements/GroupByBuilder/index.js +43 -15
- package/dist/elements/GroupByBuilder/index.js.map +1 -1
- package/dist/elements/Gutter/index.js +7 -3
- package/dist/elements/Gutter/index.js.map +1 -1
- package/dist/elements/HTMLDiff/diff/index.js +24 -3
- package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
- package/dist/elements/HTMLDiff/index.js +13 -5
- package/dist/elements/HTMLDiff/index.js.map +1 -1
- package/dist/elements/Hamburger/index.js +35 -11
- package/dist/elements/Hamburger/index.js.map +1 -1
- package/dist/elements/HydrateAuthProvider/index.js +6 -1
- package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
- package/dist/elements/IDLabel/index.js +13 -5
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js +13 -5
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +3 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
- package/dist/elements/Link/index.js +12 -4
- package/dist/elements/Link/index.js.map +1 -1
- package/dist/elements/ListControls/index.js +126 -42
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/types.js +7 -1
- package/dist/elements/ListControls/types.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +20 -8
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/Provider.js +15 -4
- package/dist/elements/ListDrawer/Provider.js.map +1 -1
- package/dist/elements/ListDrawer/index.js +34 -11
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListDrawer/types.js +5 -1
- package/dist/elements/ListDrawer/types.js.map +1 -1
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +19 -7
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +13 -5
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +12 -4
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +7 -3
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +48 -16
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +37 -13
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
- package/dist/elements/ListHeader/index.js +43 -15
- package/dist/elements/ListHeader/index.js.map +1 -1
- package/dist/elements/ListSelection/index.js +66 -20
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/LivePreview/Device/index.js +13 -5
- package/dist/elements/LivePreview/Device/index.js.map +1 -1
- package/dist/elements/LivePreview/DeviceContainer/index.js +7 -3
- package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
- package/dist/elements/LivePreview/IFrame/index.js +7 -3
- package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
- package/dist/elements/LivePreview/Toggler/index.js +13 -5
- package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/Controls/index.js +137 -45
- package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +7 -3
- package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/index.js +48 -16
- package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
- package/dist/elements/LivePreview/ToolbarArea/index.js +7 -3
- package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
- package/dist/elements/LivePreview/Window/index.js +41 -13
- package/dist/elements/LivePreview/Window/index.js.map +1 -1
- package/dist/elements/Loading/index.js +55 -19
- package/dist/elements/Loading/index.js.map +1 -1
- package/dist/elements/LoadingOverlay/index.js +13 -5
- package/dist/elements/LoadingOverlay/index.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.js +31 -11
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
- package/dist/elements/Localizer/index.js +47 -15
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Locked/index.js +18 -6
- package/dist/elements/Locked/index.js.map +1 -1
- package/dist/elements/Logout/index.js +17 -5
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/NavToggler/index.js +7 -3
- package/dist/elements/Nav/NavToggler/index.js.map +1 -1
- package/dist/elements/Nav/context.js +7 -3
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/NavGroup/index.js +49 -17
- package/dist/elements/NavGroup/index.js.map +1 -1
- package/dist/elements/NoListResults/index.js +19 -7
- package/dist/elements/NoListResults/index.js.map +1 -1
- package/dist/elements/PageControls/GroupByPageControls.js +7 -3
- package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
- package/dist/elements/PageControls/index.js +37 -13
- package/dist/elements/PageControls/index.js.map +1 -1
- package/dist/elements/Pagination/ClickableArrow/index.js +12 -4
- package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
- package/dist/elements/Pagination/Page/index.js +7 -3
- package/dist/elements/Pagination/Page/index.js.map +1 -1
- package/dist/elements/Pagination/Separator/index.js +7 -3
- package/dist/elements/Pagination/Separator/index.js.map +1 -1
- package/dist/elements/Pagination/index.js +19 -7
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/PerPage/index.js +61 -21
- package/dist/elements/PerPage/index.js.map +1 -1
- package/dist/elements/PermanentlyDeleteButton/index.js +31 -11
- package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
- package/dist/elements/Pill/index.js +42 -15
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/PillSelector/index.js +34 -10
- package/dist/elements/PillSelector/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +25 -9
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupDivider/index.js +7 -3
- package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
- package/dist/elements/Popup/PopupGroupLabel/index.js +7 -3
- package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +13 -5
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.js +60 -20
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/index.js +12 -4
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PreviewSizes/index.js +97 -33
- package/dist/elements/PreviewSizes/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +67 -23
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +165 -53
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishButton/index.js +49 -17
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.js +7 -3
- package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/PublishMany/index.js +28 -10
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetBar/index.js +109 -38
- package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetToggler/index.js +42 -14
- package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/AccessCell/index.js +25 -9
- package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +13 -5
- package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/GroupByCell/index.js +13 -5
- package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/cells/WhereCell/index.js +7 -3
- package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js +25 -9
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/GroupByField/index.js +31 -11
- package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/WhereField/index.js +79 -27
- package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.js +13 -5
- package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/Control/index.js +13 -5
- package/dist/elements/ReactSelect/Control/index.js.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js +13 -5
- package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/Input/index.js +13 -5
- package/dist/elements/ReactSelect/Input/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js +13 -5
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.js +13 -5
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +19 -7
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
- package/dist/elements/ReactSelect/SingleValue/index.js +13 -5
- package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.js +19 -7
- package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.js +45 -17
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/ReactSelect/types.js +8 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RelationshipTable/AddNewButton.js +37 -13
- package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
- package/dist/elements/RelationshipTable/Pagination.js +7 -3
- package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +24 -8
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.js +121 -41
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RenderComponent/index.js +19 -7
- package/dist/elements/RenderComponent/index.js.map +1 -1
- package/dist/elements/RenderIfInViewport/index.js +7 -3
- package/dist/elements/RenderIfInViewport/index.js.map +1 -1
- package/dist/elements/RenderServerComponent/index.js +13 -5
- package/dist/elements/RenderServerComponent/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.js +25 -9
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/RestoreButton/index.js +49 -17
- package/dist/elements/RestoreButton/index.js.map +1 -1
- package/dist/elements/RestoreMany/index.js +38 -13
- package/dist/elements/RestoreMany/index.js.map +1 -1
- package/dist/elements/SaveButton/index.js +8 -5
- package/dist/elements/SaveButton/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +8 -5
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/SearchBar/index.js +24 -8
- package/dist/elements/SearchBar/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.js +13 -5
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SearchFilter/types.js +19 -1
- package/dist/elements/SearchFilter/types.js.map +1 -1
- package/dist/elements/SelectAll/index.js +7 -3
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectMany/index.js +7 -3
- package/dist/elements/SelectMany/index.js.map +1 -1
- package/dist/elements/SelectRow/index.js +13 -5
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/ShimmerEffect/index.js +31 -11
- package/dist/elements/ShimmerEffect/index.js.map +1 -1
- package/dist/elements/SortColumn/index.js +48 -16
- package/dist/elements/SortColumn/index.js.map +1 -1
- package/dist/elements/SortComplex/index.js +55 -19
- package/dist/elements/SortComplex/index.js.map +1 -1
- package/dist/elements/SortHeader/index.js +24 -8
- package/dist/elements/SortHeader/index.js.map +1 -1
- package/dist/elements/SortRow/index.js +13 -5
- package/dist/elements/SortRow/index.js.map +1 -1
- package/dist/elements/Status/index.js +63 -23
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +7 -3
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/context.js +7 -3
- package/dist/elements/StepNav/context.js.map +1 -1
- package/dist/elements/StepNav/index.js +109 -33
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StickyToolbar/index.js +7 -3
- package/dist/elements/StickyToolbar/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +13 -5
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.js +13 -5
- package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js +21 -9
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js +13 -5
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +19 -7
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js +11 -7
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +7 -3
- package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +45 -16
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/OrderableRow.js +25 -9
- package/dist/elements/Table/OrderableRow.js.map +1 -1
- package/dist/elements/Table/OrderableRowDragPreview.js +19 -7
- package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
- package/dist/elements/Table/OrderableTable.js +79 -27
- package/dist/elements/Table/OrderableTable.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +10 -3
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/index.js +55 -19
- package/dist/elements/Table/index.js.map +1 -1
- package/dist/elements/Thumbnail/createThumbnail.js +12 -12
- package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
- package/dist/elements/Thumbnail/index.js +47 -15
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/ThumbnailCard/index.js +19 -7
- package/dist/elements/ThumbnailCard/index.js.map +1 -1
- package/dist/elements/TimezonePicker/index.js +19 -7
- package/dist/elements/TimezonePicker/index.js.map +1 -1
- package/dist/elements/Toasts/fieldErrors.js +24 -8
- package/dist/elements/Toasts/fieldErrors.js.map +1 -1
- package/dist/elements/Tooltip/index.js +34 -12
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/Translation/index.js +25 -9
- package/dist/elements/Translation/index.js.map +1 -1
- package/dist/elements/TrashBanner/index.js +18 -6
- package/dist/elements/TrashBanner/index.js.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.js +7 -3
- package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/UnpublishMany/index.js +28 -10
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/Upload/index.js +235 -83
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/ViewDescription/index.js +7 -3
- package/dist/elements/ViewDescription/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js +13 -5
- package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +37 -13
- package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js +13 -4
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +23 -12
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js +7 -3
- package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js +13 -4
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +73 -25
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.js +87 -31
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WithServerSideProps/index.js +7 -3
- package/dist/elements/WithServerSideProps/index.js.map +1 -1
- package/dist/elements/withMergedProps/index.js +7 -3
- package/dist/elements/withMergedProps/index.js.map +1 -1
- package/dist/exports/client/index.js +26 -2
- package/dist/exports/client/index.js.map +1 -1
- package/dist/exports/shared/index.js +2 -1
- package/dist/exports/shared/index.js.map +1 -1
- package/dist/fields/Array/ArrayRow.js +52 -16
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.js +169 -57
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +72 -24
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +18 -6
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/index.js +74 -24
- package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +13 -5
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.js +19 -7
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/SectionTitle/index.js +13 -5
- package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
- package/dist/fields/Blocks/index.js +187 -63
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.js +47 -15
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.js +37 -13
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Code/index.js +55 -19
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.js +61 -21
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.js +31 -11
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/DateTime/index.js +61 -21
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.js +55 -19
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/FieldDescription/index.js +7 -3
- package/dist/fields/FieldDescription/index.js.map +1 -1
- package/dist/fields/FieldError/index.js +7 -3
- package/dist/fields/FieldError/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.js +19 -7
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/Group/index.js +78 -26
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Group/provider.js +7 -3
- package/dist/fields/Group/provider.js.map +1 -1
- package/dist/fields/Hidden/index.js +7 -3
- package/dist/fields/Hidden/index.js.map +1 -1
- package/dist/fields/JSON/index.js +55 -19
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Join/index.js +49 -17
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/Number/index.js +71 -25
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.js +7 -3
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Password/input.js +61 -21
- package/dist/fields/Password/input.js.map +1 -1
- package/dist/fields/Password/types.js +11 -1
- package/dist/fields/Password/types.js.map +1 -1
- package/dist/fields/Point/index.js +97 -33
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +31 -11
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.js +67 -23
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/Input.js +84 -28
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Relationship/index.js +7 -3
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +47 -16
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +52 -17
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Row/index.js +19 -7
- package/dist/fields/Row/index.js.map +1 -1
- package/dist/fields/Row/provider.js +7 -3
- package/dist/fields/Row/provider.js.map +1 -1
- package/dist/fields/Select/Input.js +55 -19
- package/dist/fields/Select/Input.js.map +1 -1
- package/dist/fields/Select/index.js +7 -3
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Slug/index.js +37 -13
- package/dist/fields/Slug/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +25 -9
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.js +67 -23
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Tabs/provider.js +7 -3
- package/dist/fields/Tabs/provider.js.map +1 -1
- package/dist/fields/Text/Input.js +60 -20
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.js +10 -5
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Textarea/Input.js +61 -21
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.js +7 -3
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.js +48 -16
- package/dist/fields/Upload/HasMany/index.js.map +1 -1
- package/dist/fields/Upload/HasOne/index.js +13 -5
- package/dist/fields/Upload/HasOne/index.js.map +1 -1
- package/dist/fields/Upload/Input.js +154 -56
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js +73 -25
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
- package/dist/fields/Upload/UploadCard/index.js +7 -3
- package/dist/fields/Upload/UploadCard/index.js.map +1 -1
- package/dist/fields/Upload/index.js +13 -5
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/fields/Upload/types.js +1 -0
- package/dist/fields/Upload/types.js.map +1 -1
- package/dist/fields/shared/index.js +2 -3
- package/dist/fields/shared/index.js.map +1 -1
- package/dist/forms/Form/fieldReducer.js +2 -1
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/Form/index.js +78 -31
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/mergeServerFormState.js +11 -3
- package/dist/forms/Form/mergeServerFormState.js.map +1 -1
- package/dist/forms/Form/reduceToSerializableFields.js +2 -2
- package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
- package/dist/forms/Form/types.js +52 -1
- package/dist/forms/Form/types.js.map +1 -1
- package/dist/forms/NullifyField/index.js +15 -6
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.js +138 -46
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/index.js +19 -7
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/RowLabel/Context/index.js +7 -3
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/RowLabel/index.js +19 -7
- package/dist/forms/RowLabel/index.js.map +1 -1
- package/dist/forms/Submit/index.js +13 -5
- package/dist/forms/Submit/index.js.map +1 -1
- package/dist/forms/WatchChildErrors/index.js +6 -1
- package/dist/forms/WatchChildErrors/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +20 -0
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/index.js +33 -1
- package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +2 -2
- package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.js +16 -0
- package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js +21 -9
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +22 -1
- package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/types.js +5 -1
- package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
- package/dist/forms/useField/index.js +1 -0
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/useField/types.js +19 -1
- package/dist/forms/useField/types.js.map +1 -1
- package/dist/forms/withCondition/index.js +13 -5
- package/dist/forms/withCondition/index.js.map +1 -1
- package/dist/graphics/Account/Default/index.js +25 -9
- package/dist/graphics/Account/Default/index.js.map +1 -1
- package/dist/graphics/Account/Gravatar/index.js +7 -3
- package/dist/graphics/Account/Gravatar/index.js.map +1 -1
- package/dist/graphics/Account/index.js +12 -4
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/graphics/DefaultBlockImage/index.js +67 -23
- package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
- package/dist/graphics/File/index.js +19 -7
- package/dist/graphics/File/index.js.map +1 -1
- package/dist/graphics/Icon/index.js +19 -7
- package/dist/graphics/Icon/index.js.map +1 -1
- package/dist/graphics/Logo/index.js +85 -29
- package/dist/graphics/Logo/index.js.map +1 -1
- package/dist/hooks/useControllableState.js +9 -1
- package/dist/hooks/useControllableState.js.map +1 -1
- package/dist/hooks/useDelayedRender.js +3 -1
- package/dist/hooks/useDelayedRender.js.map +1 -1
- package/dist/hooks/useHotkey.js +2 -2
- package/dist/hooks/useHotkey.js.map +1 -1
- package/dist/hooks/usePayloadAPI.js +3 -4
- package/dist/hooks/usePayloadAPI.js.map +1 -1
- package/dist/hooks/usePopupWindow.js +2 -2
- package/dist/hooks/usePopupWindow.js.map +1 -1
- package/dist/hooks/useQueue.js +15 -7
- package/dist/hooks/useQueue.js.map +1 -1
- package/dist/hooks/useResize.js +4 -3
- package/dist/hooks/useResize.js.map +1 -1
- package/dist/icons/Calendar/index.js +13 -5
- package/dist/icons/Calendar/index.js.map +1 -1
- package/dist/icons/Check/index.js +13 -5
- package/dist/icons/Check/index.js.map +1 -1
- package/dist/icons/Chevron/index.js +13 -5
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/CloseMenu/index.js +13 -5
- package/dist/icons/CloseMenu/index.js.map +1 -1
- package/dist/icons/CodeBlock/index.js +13 -5
- package/dist/icons/CodeBlock/index.js.map +1 -1
- package/dist/icons/Copy/index.js +13 -5
- package/dist/icons/Copy/index.js.map +1 -1
- package/dist/icons/Document/index.js +13 -5
- package/dist/icons/Document/index.js.map +1 -1
- package/dist/icons/Dots/index.js +22 -6
- package/dist/icons/Dots/index.js.map +1 -1
- package/dist/icons/DragHandle/index.js +43 -15
- package/dist/icons/DragHandle/index.js.map +1 -1
- package/dist/icons/Edit/index.js +13 -5
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/icons/ExternalLink/index.js +13 -5
- package/dist/icons/ExternalLink/index.js.map +1 -1
- package/dist/icons/Eye/index.js +36 -12
- package/dist/icons/Eye/index.js.map +1 -1
- package/dist/icons/Folder/index.js +13 -5
- package/dist/icons/Folder/index.js.map +1 -1
- package/dist/icons/Gear/index.js +19 -7
- package/dist/icons/Gear/index.js.map +1 -1
- package/dist/icons/GridView/index.js +31 -11
- package/dist/icons/GridView/index.js.map +1 -1
- package/dist/icons/Line/index.js +13 -5
- package/dist/icons/Line/index.js.map +1 -1
- package/dist/icons/Link/index.js +13 -5
- package/dist/icons/Link/index.js.map +1 -1
- package/dist/icons/ListView/index.js +13 -5
- package/dist/icons/ListView/index.js.map +1 -1
- package/dist/icons/Lock/index.js +19 -7
- package/dist/icons/Lock/index.js.map +1 -1
- package/dist/icons/LogOut/index.js +13 -5
- package/dist/icons/LogOut/index.js.map +1 -1
- package/dist/icons/Menu/index.js +13 -5
- package/dist/icons/Menu/index.js.map +1 -1
- package/dist/icons/MinimizeMaximize/index.js +18 -6
- package/dist/icons/MinimizeMaximize/index.js.map +1 -1
- package/dist/icons/More/index.js +25 -9
- package/dist/icons/More/index.js.map +1 -1
- package/dist/icons/MoveFolder/index.js +37 -13
- package/dist/icons/MoveFolder/index.js.map +1 -1
- package/dist/icons/People/index.js +13 -5
- package/dist/icons/People/index.js.map +1 -1
- package/dist/icons/Plus/index.js +13 -5
- package/dist/icons/Plus/index.js.map +1 -1
- package/dist/icons/Search/index.js +13 -5
- package/dist/icons/Search/index.js.map +1 -1
- package/dist/icons/Sort/index.js +25 -9
- package/dist/icons/Sort/index.js.map +1 -1
- package/dist/icons/Swap/index.js +13 -5
- package/dist/icons/Swap/index.js.map +1 -1
- package/dist/icons/ThreeDots/index.js +22 -6
- package/dist/icons/ThreeDots/index.js.map +1 -1
- package/dist/icons/Trash/index.js +13 -5
- package/dist/icons/Trash/index.js.map +1 -1
- package/dist/icons/X/index.js +13 -5
- package/dist/icons/X/index.js.map +1 -1
- package/dist/providers/Actions/index.js +7 -3
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/index.js +42 -6
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/ClickOutside/index.js +7 -3
- package/dist/providers/ClickOutside/index.js.map +1 -1
- package/dist/providers/ClientFunction/index.js +13 -5
- package/dist/providers/ClientFunction/index.js.map +1 -1
- package/dist/providers/Config/index.js +23 -6
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.js +7 -3
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.js +31 -16
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.js +25 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/DocumentTitle/index.js +7 -3
- package/dist/providers/DocumentTitle/index.js.map +1 -1
- package/dist/providers/EditDepth/index.js +7 -3
- package/dist/providers/EditDepth/index.js.map +1 -1
- package/dist/providers/EntityVisibility/index.js +7 -3
- package/dist/providers/EntityVisibility/index.js.map +1 -1
- package/dist/providers/Folders/index.js +51 -5
- package/dist/providers/Folders/index.js.map +1 -1
- package/dist/providers/ListQuery/index.js +13 -5
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/types.js +5 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/LivePreview/context.js +11 -1
- package/dist/providers/LivePreview/context.js.map +1 -1
- package/dist/providers/LivePreview/index.js +20 -9
- package/dist/providers/LivePreview/index.js.map +1 -1
- package/dist/providers/Locale/index.js +13 -5
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Operation/index.js +7 -3
- package/dist/providers/Operation/index.js.map +1 -1
- package/dist/providers/Params/index.js +7 -3
- package/dist/providers/Params/index.js.map +1 -1
- package/dist/providers/Preferences/index.js +14 -5
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.js +154 -50
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteCache/index.js +7 -3
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js +13 -5
- package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
- package/dist/providers/RouteTransition/index.js +16 -12
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/providers/SearchParams/index.js +7 -3
- package/dist/providers/SearchParams/index.js.map +1 -1
- package/dist/providers/Selection/index.js +14 -5
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/ServerFunctions/index.js +32 -25
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js +13 -5
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/index.js +17 -12
- package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.js +17 -8
- package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
- package/dist/providers/TableColumns/index.js +7 -3
- package/dist/providers/TableColumns/index.js.map +1 -1
- package/dist/providers/TableColumns/types.js +17 -1
- package/dist/providers/TableColumns/types.js.map +1 -1
- package/dist/providers/Theme/index.js +7 -3
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Error.js +19 -7
- package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Info.js +19 -7
- package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Success.js +19 -7
- package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
- package/dist/providers/ToastContainer/icons/Warning.js +19 -7
- package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
- package/dist/providers/ToastContainer/index.js +27 -7
- package/dist/providers/ToastContainer/index.js.map +1 -1
- package/dist/providers/Translation/index.js +7 -3
- package/dist/providers/Translation/index.js.map +1 -1
- package/dist/providers/UploadControls/index.js +7 -3
- package/dist/providers/UploadControls/index.js.map +1 -1
- package/dist/providers/UploadEdits/index.js +7 -3
- package/dist/providers/UploadEdits/index.js.map +1 -1
- package/dist/providers/UploadHandlers/index.js +7 -3
- package/dist/providers/UploadHandlers/index.js.map +1 -1
- package/dist/utilities/abortAndIgnore.js +4 -6
- package/dist/utilities/abortAndIgnore.js.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +2 -2
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/combineFieldLabel.js +37 -13
- package/dist/utilities/combineFieldLabel.js.map +1 -1
- package/dist/utilities/copyDataFromLocale.js +6 -2
- package/dist/utilities/copyDataFromLocale.js.map +1 -1
- package/dist/utilities/getDisplayedFieldValue.js +8 -8
- package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
- package/dist/utilities/getFolderResultsComponentAndData.js +31 -14
- package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
- package/dist/utilities/handleFormStateLocking.js +2 -2
- package/dist/utilities/handleFormStateLocking.js.map +1 -1
- package/dist/utilities/hasSavePermission.js +5 -1
- package/dist/utilities/hasSavePermission.js.map +1 -1
- package/dist/utilities/isURLAllowed.js +6 -6
- package/dist/utilities/isURLAllowed.js.map +1 -1
- package/dist/utilities/renderTable.js +84 -27
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/utilities/schedulePublishHandler.js +3 -1
- package/dist/utilities/schedulePublishHandler.js.map +1 -1
- package/dist/utilities/upsertPreferences.js +1 -0
- package/dist/utilities/upsertPreferences.js.map +1 -1
- package/dist/views/BrowseByFolder/index.js +168 -56
- package/dist/views/BrowseByFolder/index.js.map +1 -1
- package/dist/views/CollectionFolder/ListSelection/index.js +67 -23
- package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
- package/dist/views/CollectionFolder/index.js +147 -47
- package/dist/views/CollectionFolder/index.js.map +1 -1
- package/dist/views/Edit/Auth/APIKey.js +67 -23
- package/dist/views/Edit/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Auth/index.js +91 -31
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/dist/views/Edit/index.js +124 -48
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/GroupByHeader/index.js +19 -7
- package/dist/views/List/GroupByHeader/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.js +68 -23
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/ListSelection/index.js +49 -17
- package/dist/views/List/ListSelection/index.js.map +1 -1
- package/dist/views/List/index.js +162 -54
- package/dist/views/List/index.js.map +1 -1
- package/package.json +7 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { getTranslation } from '@payloadcms/translations'\nimport { validateWhereQuery } from 'payload/shared'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport type { ListControlsProps } from './types.js'\n\nimport { Popup } from '../../elements/Popup/index.js'\nimport { useUseTitleField } from '../../hooks/useUseAsTitle.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { Dots } from '../../icons/Dots/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { GroupByBuilder } from '../GroupByBuilder/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { QueryPresetBar } from '../QueryPresets/QueryPresetBar/index.js'\nimport { SearchBar } from '../SearchBar/index.js'\nimport { WhereBuilder } from '../WhereBuilder/index.js'\nimport { getTextFieldsToBeSearched } from './getTextFieldsToBeSearched.js'\nimport './index.scss'\n\nconst baseClass = 'list-controls'\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const {\n beforeActions,\n collectionConfig,\n collectionSlug,\n disableQueryPresets,\n enableColumns = true,\n enableFilters = true,\n enableSort = false,\n listMenuItems,\n queryPreset: activePreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n } = props\n\n const { handleSearchChange, query } = useListQuery()\n\n const titleField = useUseTitleField(collectionConfig)\n const { i18n, t } = useTranslation()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const searchLabel =\n (titleField &&\n getTranslation(\n 'label' in titleField &&\n (typeof titleField.label === 'string' || typeof titleField.label === 'object')\n ? titleField.label\n : 'name' in titleField\n ? titleField.name\n : null,\n i18n,\n )) ??\n 'ID'\n\n const listSearchableFields = getTextFieldsToBeSearched(\n collectionConfig.admin.listSearchableFields,\n collectionConfig.fields,\n i18n,\n )\n\n const searchLabelTranslated = useRef(\n t('general:searchBy', { label: getTranslation(searchLabel, i18n) }),\n )\n\n const hasWhereParam = useRef(Boolean(query?.where))\n\n const shouldInitializeWhereOpened = validateWhereQuery(query?.where)\n\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'group-by' | 'sort' | 'where'>(\n shouldInitializeWhereOpened ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, query?.where])\n\n useEffect(() => {\n if (listSearchableFields?.length > 0) {\n searchLabelTranslated.current = listSearchableFields.reduce(\n (placeholderText: string, field, i: number) => {\n const label =\n 'label' in field && field.label ? field.label : 'name' in field ? field.name : null\n\n if (i === 0) {\n return `${t('general:searchBy', {\n label: getTranslation(label, i18n),\n })}`\n }\n\n if (i === listSearchableFields.length - 1) {\n return `${placeholderText} ${t('general:or')} ${getTranslation(label, i18n)}`\n }\n\n return `${placeholderText}, ${getTranslation(label, i18n)}`\n },\n '',\n )\n } else {\n searchLabelTranslated.current = t('general:searchBy', {\n label: getTranslation(searchLabel, i18n),\n })\n }\n }, [t, listSearchableFields, i18n, searchLabel])\n\n return (\n <div className={baseClass}>\n {collectionConfig?.enableQueryPresets && !disableQueryPresets && (\n <QueryPresetBar\n activePreset={activePreset}\n collectionSlug={collectionSlug}\n queryPresetPermissions={queryPresetPermissions}\n />\n )}\n <SearchBar\n Actions={[\n !smallBreak && (\n <React.Fragment key=\"before-actions\">{beforeActions && beforeActions}</React.Fragment>\n ),\n enableColumns && (\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={visibleDrawer === 'columns'}\n className={`${baseClass}__toggle-columns`}\n icon={<ChevronIcon direction={visibleDrawer === 'columns' ? 'up' : 'down'} />}\n id=\"toggle-list-columns\"\n key=\"toggle-list-columns\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'columns' ? 'columns' : undefined)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:columns')}\n </Pill>\n ),\n enableFilters && (\n <Pill\n aria-controls={`${baseClass}-where`}\n aria-expanded={visibleDrawer === 'where'}\n className={`${baseClass}__toggle-where`}\n icon={<ChevronIcon direction={visibleDrawer === 'where' ? 'up' : 'down'} />}\n id=\"toggle-list-filters\"\n key=\"toggle-list-filters\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:filters')}\n </Pill>\n ),\n enableSort && (\n <Pill\n aria-controls={`${baseClass}-sort`}\n aria-expanded={visibleDrawer === 'sort'}\n className={`${baseClass}__toggle-sort`}\n icon={<ChevronIcon />}\n id=\"toggle-list-sort\"\n key=\"toggle-list-sort\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:sort')}\n </Pill>\n ),\n collectionConfig.admin.groupBy && (\n <Pill\n aria-controls={`${baseClass}-group-by`}\n aria-expanded={visibleDrawer === 'group-by'}\n className={`${baseClass}__toggle-group-by`}\n icon={<ChevronIcon direction={visibleDrawer === 'group-by' ? 'up' : 'down'} />}\n id=\"toggle-group-by\"\n key=\"toggle-group-by\"\n onClick={() =>\n setVisibleDrawer(visibleDrawer !== 'group-by' ? 'group-by' : undefined)\n }\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:groupByLabel', {\n label: '',\n })}\n </Pill>\n ),\n listMenuItems && Array.isArray(listMenuItems) && listMenuItems.length > 0 && (\n <Popup\n button={<Dots ariaLabel={t('general:moreOptions')} />}\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n id=\"list-menu\"\n key=\"list-menu\"\n size=\"small\"\n verticalAlign=\"bottom\"\n >\n {listMenuItems.map((item, i) => (\n <Fragment key={`list-menu-item-${i}`}>{item}</Fragment>\n ))}\n </Popup>\n ),\n ].filter(Boolean)}\n key={collectionSlug}\n label={searchLabelTranslated.current}\n onSearchChange={handleSearchChange}\n searchQueryParam={query?.search}\n />\n {enableColumns && (\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={visibleDrawer === 'columns' ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n </AnimateHeight>\n )}\n <AnimateHeight\n className={`${baseClass}__where`}\n height={visibleDrawer === 'where' ? 'auto' : 0}\n id={`${baseClass}-where`}\n >\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n fields={collectionConfig?.fields}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n </AnimateHeight>\n {collectionConfig.admin.groupBy && (\n <AnimateHeight\n className={`${baseClass}__group-by`}\n height={visibleDrawer === 'group-by' ? 'auto' : 0}\n id={`${baseClass}-group-by`}\n >\n <GroupByBuilder collectionSlug={collectionConfig.slug} fields={collectionConfig.fields} />\n </AnimateHeight>\n )}\n </div>\n )\n}\n"],"names":["useWindowInfo","getTranslation","validateWhereQuery","React","Fragment","useEffect","useRef","useState","Popup","useUseTitleField","ChevronIcon","Dots","useListQuery","useTranslation","AnimateHeight","ColumnSelector","GroupByBuilder","Pill","QueryPresetBar","SearchBar","WhereBuilder","getTextFieldsToBeSearched","baseClass","ListControls","props","beforeActions","collectionConfig","collectionSlug","disableQueryPresets","enableColumns","enableFilters","enableSort","listMenuItems","queryPreset","activePreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","handleSearchChange","query","titleField","i18n","t","breakpoints","s","smallBreak","searchLabel","label","name","listSearchableFields","admin","fields","searchLabelTranslated","hasWhereParam","Boolean","where","shouldInitializeWhereOpened","visibleDrawer","setVisibleDrawer","undefined","current","length","reduce","placeholderText","field","i","div","className","enableQueryPresets","Actions","aria-controls","aria-expanded","icon","direction","id","onClick","pillStyle","size","groupBy","Array","isArray","button","ariaLabel","horizontalAlign","verticalAlign","map","item","filter","onSearchChange","searchQueryParam","search","height","slug","collectionPluralLabel","labels","plural"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { getTranslation } from '@payloadcms/translations'\nimport { validateWhereQuery } from 'payload/shared'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport type { ListControlsProps } from './types.js'\n\nimport { Popup } from '../../elements/Popup/index.js'\nimport { useUseTitleField } from '../../hooks/useUseAsTitle.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { Dots } from '../../icons/Dots/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { GroupByBuilder } from '../GroupByBuilder/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { QueryPresetBar } from '../QueryPresets/QueryPresetBar/index.js'\nimport { SearchBar } from '../SearchBar/index.js'\nimport { WhereBuilder } from '../WhereBuilder/index.js'\nimport { getTextFieldsToBeSearched } from './getTextFieldsToBeSearched.js'\nimport './index.scss'\n\nconst baseClass = 'list-controls'\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const {\n beforeActions,\n collectionConfig,\n collectionSlug,\n disableQueryPresets,\n enableColumns = true,\n enableFilters = true,\n enableSort = false,\n listMenuItems,\n queryPreset: activePreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n } = props\n\n const { handleSearchChange, query } = useListQuery()\n\n const titleField = useUseTitleField(collectionConfig)\n const { i18n, t } = useTranslation()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const searchLabel =\n (titleField &&\n getTranslation(\n 'label' in titleField &&\n (typeof titleField.label === 'string' || typeof titleField.label === 'object')\n ? titleField.label\n : 'name' in titleField\n ? titleField.name\n : null,\n i18n,\n )) ??\n 'ID'\n\n const listSearchableFields = getTextFieldsToBeSearched(\n collectionConfig.admin.listSearchableFields,\n collectionConfig.fields,\n i18n,\n )\n\n const searchLabelTranslated = useRef(\n t('general:searchBy', { label: getTranslation(searchLabel, i18n) }),\n )\n\n const hasWhereParam = useRef(Boolean(query?.where))\n\n const shouldInitializeWhereOpened = validateWhereQuery(query?.where)\n\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'group-by' | 'sort' | 'where'>(\n shouldInitializeWhereOpened ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, query?.where])\n\n useEffect(() => {\n if (listSearchableFields?.length > 0) {\n searchLabelTranslated.current = listSearchableFields.reduce(\n (placeholderText: string, field, i: number) => {\n const label =\n 'label' in field && field.label ? field.label : 'name' in field ? field.name : null\n\n if (i === 0) {\n return `${t('general:searchBy', {\n label: getTranslation(label, i18n),\n })}`\n }\n\n if (i === listSearchableFields.length - 1) {\n return `${placeholderText} ${t('general:or')} ${getTranslation(label, i18n)}`\n }\n\n return `${placeholderText}, ${getTranslation(label, i18n)}`\n },\n '',\n )\n } else {\n searchLabelTranslated.current = t('general:searchBy', {\n label: getTranslation(searchLabel, i18n),\n })\n }\n }, [t, listSearchableFields, i18n, searchLabel])\n\n return (\n <div className={baseClass}>\n {collectionConfig?.enableQueryPresets && !disableQueryPresets && (\n <QueryPresetBar\n activePreset={activePreset}\n collectionSlug={collectionSlug}\n queryPresetPermissions={queryPresetPermissions}\n />\n )}\n <SearchBar\n Actions={[\n !smallBreak && (\n <React.Fragment key=\"before-actions\">{beforeActions && beforeActions}</React.Fragment>\n ),\n enableColumns && (\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={visibleDrawer === 'columns'}\n className={`${baseClass}__toggle-columns`}\n icon={<ChevronIcon direction={visibleDrawer === 'columns' ? 'up' : 'down'} />}\n id=\"toggle-list-columns\"\n key=\"toggle-list-columns\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'columns' ? 'columns' : undefined)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:columns')}\n </Pill>\n ),\n enableFilters && (\n <Pill\n aria-controls={`${baseClass}-where`}\n aria-expanded={visibleDrawer === 'where'}\n className={`${baseClass}__toggle-where`}\n icon={<ChevronIcon direction={visibleDrawer === 'where' ? 'up' : 'down'} />}\n id=\"toggle-list-filters\"\n key=\"toggle-list-filters\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:filters')}\n </Pill>\n ),\n enableSort && (\n <Pill\n aria-controls={`${baseClass}-sort`}\n aria-expanded={visibleDrawer === 'sort'}\n className={`${baseClass}__toggle-sort`}\n icon={<ChevronIcon />}\n id=\"toggle-list-sort\"\n key=\"toggle-list-sort\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:sort')}\n </Pill>\n ),\n collectionConfig.admin.groupBy && (\n <Pill\n aria-controls={`${baseClass}-group-by`}\n aria-expanded={visibleDrawer === 'group-by'}\n className={`${baseClass}__toggle-group-by`}\n icon={<ChevronIcon direction={visibleDrawer === 'group-by' ? 'up' : 'down'} />}\n id=\"toggle-group-by\"\n key=\"toggle-group-by\"\n onClick={() =>\n setVisibleDrawer(visibleDrawer !== 'group-by' ? 'group-by' : undefined)\n }\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:groupByLabel', {\n label: '',\n })}\n </Pill>\n ),\n listMenuItems && Array.isArray(listMenuItems) && listMenuItems.length > 0 && (\n <Popup\n button={<Dots ariaLabel={t('general:moreOptions')} />}\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n id=\"list-menu\"\n key=\"list-menu\"\n size=\"small\"\n verticalAlign=\"bottom\"\n >\n {listMenuItems.map((item, i) => (\n <Fragment key={`list-menu-item-${i}`}>{item}</Fragment>\n ))}\n </Popup>\n ),\n ].filter(Boolean)}\n key={collectionSlug}\n label={searchLabelTranslated.current}\n onSearchChange={handleSearchChange}\n searchQueryParam={query?.search}\n />\n {enableColumns && (\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={visibleDrawer === 'columns' ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n </AnimateHeight>\n )}\n <AnimateHeight\n className={`${baseClass}__where`}\n height={visibleDrawer === 'where' ? 'auto' : 0}\n id={`${baseClass}-where`}\n >\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n fields={collectionConfig?.fields}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n </AnimateHeight>\n {collectionConfig.admin.groupBy && (\n <AnimateHeight\n className={`${baseClass}__group-by`}\n height={visibleDrawer === 'group-by' ? 'auto' : 0}\n id={`${baseClass}-group-by`}\n >\n <GroupByBuilder collectionSlug={collectionConfig.slug} fields={collectionConfig.fields} />\n </AnimateHeight>\n )}\n </div>\n )\n}\n"],"names":["useWindowInfo","getTranslation","validateWhereQuery","React","Fragment","useEffect","useRef","useState","Popup","useUseTitleField","ChevronIcon","Dots","useListQuery","useTranslation","AnimateHeight","ColumnSelector","GroupByBuilder","Pill","QueryPresetBar","SearchBar","WhereBuilder","getTextFieldsToBeSearched","baseClass","ListControls","props","beforeActions","collectionConfig","collectionSlug","disableQueryPresets","enableColumns","enableFilters","enableSort","listMenuItems","queryPreset","activePreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","handleSearchChange","query","titleField","i18n","t","breakpoints","s","smallBreak","searchLabel","label","name","listSearchableFields","admin","fields","searchLabelTranslated","hasWhereParam","Boolean","where","shouldInitializeWhereOpened","visibleDrawer","setVisibleDrawer","undefined","current","length","reduce","placeholderText","field","i","div","className","enableQueryPresets","Actions","aria-controls","aria-expanded","icon","direction","id","onClick","pillStyle","size","groupBy","Array","isArray","button","ariaLabel","horizontalAlign","verticalAlign","map","item","filter","onSearchChange","searchQueryParam","search","height","slug","collectionPluralLabel","labels","plural"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"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"],"names":[],"mappings":"AAQA,WA0BC"}
|
|
1
|
+
{"version":3,"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"],"names":[],"mappings":"AAQA,WA0BC,CAtBC;;;GAGC,IAED;;;GAGC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
2
|
+
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
3
|
import { useModal } from '@faceless-ui/modal';
|
|
4
4
|
import { hoistQueryParamsToAnd } from 'payload/shared';
|
|
5
5
|
import React, { useCallback, useEffect, useState } from 'react';
|
|
@@ -83,8 +83,8 @@ export const ListDrawerContent = ({ allowCreate = true, collectionSlugs, disable
|
|
|
83
83
|
}
|
|
84
84
|
setIsLoading(false);
|
|
85
85
|
} catch (_err) {
|
|
86
|
-
console.error('Error rendering List View: ', _err)
|
|
87
|
-
|
|
86
|
+
console.error('Error rendering List View: ', _err);
|
|
87
|
+
// eslint-disable-line no-console
|
|
88
88
|
if (isOpen) {
|
|
89
89
|
closeModal(drawerSlug);
|
|
90
90
|
}
|
|
@@ -162,9 +162,13 @@ export const ListDrawerContent = ({ allowCreate = true, collectionSlugs, disable
|
|
|
162
162
|
selectedOption.value
|
|
163
163
|
]);
|
|
164
164
|
if (isLoading) {
|
|
165
|
-
return /*#__PURE__*/
|
|
165
|
+
return /*#__PURE__*/ _jsxDEV(LoadingOverlay, {}, void 0, false, {
|
|
166
|
+
fileName: "src/elements/ListDrawer/DrawerContent.tsx",
|
|
167
|
+
lineNumber: 190,
|
|
168
|
+
columnNumber: 12
|
|
169
|
+
}, this);
|
|
166
170
|
}
|
|
167
|
-
return /*#__PURE__*/
|
|
171
|
+
return /*#__PURE__*/ _jsxDEV(ListDrawerContextProvider, {
|
|
168
172
|
allowCreate: allowCreate,
|
|
169
173
|
createNewDrawerSlug: documentDrawerSlug,
|
|
170
174
|
DocumentDrawerToggler: DocumentDrawerToggler,
|
|
@@ -178,11 +182,19 @@ export const ListDrawerContent = ({ allowCreate = true, collectionSlugs, disable
|
|
|
178
182
|
setSelectedOption: setMySelectedOption,
|
|
179
183
|
children: [
|
|
180
184
|
ListView,
|
|
181
|
-
/*#__PURE__*/
|
|
185
|
+
/*#__PURE__*/ _jsxDEV(DocumentDrawer, {
|
|
182
186
|
onSave: onCreateNew
|
|
183
|
-
}
|
|
187
|
+
}, void 0, false, {
|
|
188
|
+
fileName: "src/elements/ListDrawer/DrawerContent.tsx",
|
|
189
|
+
lineNumber: 208,
|
|
190
|
+
columnNumber: 7
|
|
191
|
+
}, this)
|
|
184
192
|
]
|
|
185
|
-
}
|
|
193
|
+
}, void 0, true, {
|
|
194
|
+
fileName: "src/elements/ListDrawer/DrawerContent.tsx",
|
|
195
|
+
lineNumber: 194,
|
|
196
|
+
columnNumber: 5
|
|
197
|
+
}, this);
|
|
186
198
|
};
|
|
187
199
|
|
|
188
200
|
//# sourceMappingURL=DrawerContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { CollectionSlug, 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 { ListDrawerContextProps, ListDrawerContextType } from '../ListDrawer/Provider.js'\nimport type {\n ListDrawerProps,\n RenderListServerFnArgs,\n RenderListServerFnReturnType,\n} 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: collectionSlugFromProps,\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 = collectionSlugFromProps || 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((collectionSlug: CollectionSlug) => {\n if (collectionSlug && collectionSlug !== selectedOption?.value) {\n setSelectedOption({\n label: getEntityConfig({ collectionSlug })?.labels,\n value: collectionSlug,\n })\n }\n })\n\n useEffect(() => {\n updateSelectedOption(collectionSlugFromProps)\n }, [collectionSlugFromProps])\n\n /**\n * This performs a full server round trip to get the list view for the selected collection.\n * On the server, the data is freshly queried for the list view and all components are fully rendered.\n * This work includes building column state, rendering custom components, etc.\n */\n const refresh = 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: RenderListServerFnReturnType = (await serverFunction({\n name: 'render-list',\n args: {\n collectionSlug: slug,\n disableBulkDelete: true,\n disableBulkEdit: true,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n overrideEntityVisibility,\n query: newQuery,\n } satisfies RenderListServerFnArgs,\n })) as RenderListServerFnReturnType\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 drawerSlug,\n isOpen,\n enableRowSelections,\n filterOptions,\n overrideEntityVisibility,\n disableQueryPresets,\n ],\n )\n\n useEffect(() => {\n if (!ListView) {\n void refresh({ slug: selectedOption?.value })\n }\n }, [refresh, 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: ListDrawerContextProps['onQueryChange'] = useCallback(\n (query) => {\n void refresh({ slug: selectedOption?.value, query })\n },\n [refresh, selectedOption.value],\n )\n\n const setMySelectedOption: ListDrawerContextProps['setSelectedOption'] = useCallback(\n (incomingSelection) => {\n setSelectedOption(incomingSelection)\n void refresh({ slug: incomingSelection?.value })\n },\n [refresh],\n )\n\n const refreshSelf: ListDrawerContextType['refresh'] = useCallback(\n async (incomingCollectionSlug) => {\n if (incomingCollectionSlug) {\n setSelectedOption({\n label: getEntityConfig({ collectionSlug: incomingCollectionSlug })?.labels,\n value: incomingCollectionSlug,\n })\n }\n\n await refresh({ slug: selectedOption.value || incomingCollectionSlug })\n },\n [getEntityConfig, refresh, selectedOption.value],\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 refresh={refreshSelf}\n selectedOption={selectedOption}\n setSelectedOption={setMySelectedOption}\n >\n {ListView}\n <DocumentDrawer onSave={onCreateNew} />\n </ListDrawerContextProvider>\n )\n}\n"],"names":["useModal","hoistQueryParamsToAnd","React","useCallback","useEffect","useState","useDocumentDrawer","useEffectEvent","useConfig","useServerFunctions","ListDrawerContextProvider","LoadingOverlay","ListDrawerContent","allowCreate","collectionSlugs","disableQueryPresets","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","overrideEntityVisibility","selectedCollection","collectionSlugFromProps","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","refresh","query","newQuery","where","filterOption","result","name","args","disableBulkDelete","disableBulkEdit","List","_err","console","error","onCreateNew","doc","docID","id","onQueryChange","setMySelectedOption","incomingSelection","refreshSelf","incomingCollectionSlug","createNewDrawerSlug","onSave"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { CollectionSlug, 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 { ListDrawerContextProps, ListDrawerContextType } from '../ListDrawer/Provider.js'\nimport type {\n ListDrawerProps,\n RenderListServerFnArgs,\n RenderListServerFnReturnType,\n} 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: collectionSlugFromProps,\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 = collectionSlugFromProps || 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((collectionSlug: CollectionSlug) => {\n if (collectionSlug && collectionSlug !== selectedOption?.value) {\n setSelectedOption({\n label: getEntityConfig({ collectionSlug })?.labels,\n value: collectionSlug,\n })\n }\n })\n\n useEffect(() => {\n updateSelectedOption(collectionSlugFromProps)\n }, [collectionSlugFromProps])\n\n /**\n * This performs a full server round trip to get the list view for the selected collection.\n * On the server, the data is freshly queried for the list view and all components are fully rendered.\n * This work includes building column state, rendering custom components, etc.\n */\n const refresh = 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: RenderListServerFnReturnType = (await serverFunction({\n name: 'render-list',\n args: {\n collectionSlug: slug,\n disableBulkDelete: true,\n disableBulkEdit: true,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n overrideEntityVisibility,\n query: newQuery,\n } satisfies RenderListServerFnArgs,\n })) as RenderListServerFnReturnType\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 drawerSlug,\n isOpen,\n enableRowSelections,\n filterOptions,\n overrideEntityVisibility,\n disableQueryPresets,\n ],\n )\n\n useEffect(() => {\n if (!ListView) {\n void refresh({ slug: selectedOption?.value })\n }\n }, [refresh, 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: ListDrawerContextProps['onQueryChange'] = useCallback(\n (query) => {\n void refresh({ slug: selectedOption?.value, query })\n },\n [refresh, selectedOption.value],\n )\n\n const setMySelectedOption: ListDrawerContextProps['setSelectedOption'] = useCallback(\n (incomingSelection) => {\n setSelectedOption(incomingSelection)\n void refresh({ slug: incomingSelection?.value })\n },\n [refresh],\n )\n\n const refreshSelf: ListDrawerContextType['refresh'] = useCallback(\n async (incomingCollectionSlug) => {\n if (incomingCollectionSlug) {\n setSelectedOption({\n label: getEntityConfig({ collectionSlug: incomingCollectionSlug })?.labels,\n value: incomingCollectionSlug,\n })\n }\n\n await refresh({ slug: selectedOption.value || incomingCollectionSlug })\n },\n [getEntityConfig, refresh, selectedOption.value],\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 refresh={refreshSelf}\n selectedOption={selectedOption}\n setSelectedOption={setMySelectedOption}\n >\n {ListView}\n <DocumentDrawer onSave={onCreateNew} />\n </ListDrawerContextProvider>\n )\n}\n"],"names":["useModal","hoistQueryParamsToAnd","React","useCallback","useEffect","useState","useDocumentDrawer","useEffectEvent","useConfig","useServerFunctions","ListDrawerContextProvider","LoadingOverlay","ListDrawerContent","allowCreate","collectionSlugs","disableQueryPresets","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","overrideEntityVisibility","selectedCollection","collectionSlugFromProps","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","refresh","query","newQuery","where","filterOption","result","name","args","disableBulkDelete","disableBulkEdit","List","_err","console","error","onCreateNew","doc","docID","id","onQueryChange","setMySelectedOption","incomingSelection","refreshSelf","incomingCollectionSlug","createNewDrawerSlug","onSave"],"mappings":"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"}
|
|
@@ -1,14 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
2
2
|
import { createContext, use } from 'react';
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated
|
|
5
|
+
* The `docID` property is deprecated and will be removed in the next major version of Payload.
|
|
6
|
+
* Use `doc.id` instead.
|
|
7
|
+
*/ /**
|
|
8
|
+
* When called, will either refresh the list view with its currently selected collection.
|
|
9
|
+
* If an collection slug is provided, will use that instead of the currently selected one.
|
|
10
|
+
*/ export const ListDrawerContext = /*#__PURE__*/ createContext({});
|
|
4
11
|
export const ListDrawerContextProvider = ({ children, ...rest })=>{
|
|
5
|
-
return /*#__PURE__*/
|
|
12
|
+
return /*#__PURE__*/ _jsxDEV(ListDrawerContext, {
|
|
6
13
|
value: {
|
|
7
14
|
isInDrawer: Boolean(rest.drawerSlug),
|
|
8
15
|
...rest
|
|
9
16
|
},
|
|
10
17
|
children: children
|
|
11
|
-
}
|
|
18
|
+
}, void 0, false, {
|
|
19
|
+
fileName: "src/elements/ListDrawer/Provider.tsx",
|
|
20
|
+
lineNumber: 49,
|
|
21
|
+
columnNumber: 5
|
|
22
|
+
}, this);
|
|
12
23
|
};
|
|
13
24
|
export const useListDrawerContext = ()=>{
|
|
14
25
|
const context = use(ListDrawerContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListDrawer/Provider.tsx"],"sourcesContent":["import type { CollectionSlug, Data, ListQuery } from 'payload'\n\nimport { createContext, use } from 'react'\n\nimport type { useSelection } from '../../providers/Selection/index.js'\nimport type { UseDocumentDrawer } from '../DocumentDrawer/types.js'\nimport type { Option } from '../ReactSelect/index.js'\n\nexport type ListDrawerContextProps = {\n readonly allowCreate?: boolean\n readonly createNewDrawerSlug?: string\n readonly DocumentDrawerToggler?: ReturnType<UseDocumentDrawer>[1]\n readonly drawerSlug?: string\n readonly enabledCollections?: CollectionSlug[]\n readonly onBulkSelect?: (selected: ReturnType<typeof useSelection>['selected']) => void\n readonly onQueryChange?: (query: ListQuery) => void\n readonly onSelect?: (args: {\n collectionSlug: CollectionSlug\n doc: Data\n /**\n * @deprecated\n * The `docID` property is deprecated and will be removed in the next major version of Payload.\n * Use `doc.id` instead.\n */\n docID: string\n }) => void\n readonly selectedOption?: Option<CollectionSlug>\n readonly setSelectedOption?: (option: Option<CollectionSlug>) => void\n}\n\nexport type ListDrawerContextType = {\n readonly isInDrawer: boolean\n /**\n * When called, will either refresh the list view with its currently selected collection.\n * If an collection slug is provided, will use that instead of the currently selected one.\n */\n readonly refresh: (collectionSlug?: CollectionSlug) => Promise<void>\n} & ListDrawerContextProps\n\nexport const ListDrawerContext = createContext({} as ListDrawerContextType)\n\nexport const ListDrawerContextProvider: React.FC<\n {\n children: React.ReactNode\n refresh: ListDrawerContextType['refresh']\n } & ListDrawerContextProps\n> = ({ children, ...rest }) => {\n return (\n <ListDrawerContext value={{ isInDrawer: Boolean(rest.drawerSlug), ...rest }}>\n {children}\n </ListDrawerContext>\n )\n}\n\nexport const useListDrawerContext = (): ListDrawerContextType => {\n const context = use(ListDrawerContext)\n\n if (!context) {\n throw new Error('useListDrawerContext must be used within a ListDrawerContextProvider')\n }\n\n return context\n}\n"],"names":["createContext","use","ListDrawerContext","ListDrawerContextProvider","children","rest","value","isInDrawer","Boolean","drawerSlug","useListDrawerContext","context","Error"],"mappings":";AAEA,SAASA,aAAa,EAAEC,GAAG,QAAQ,QAAO;
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListDrawer/Provider.tsx"],"sourcesContent":["import type { CollectionSlug, Data, ListQuery } from 'payload'\n\nimport { createContext, use } from 'react'\n\nimport type { useSelection } from '../../providers/Selection/index.js'\nimport type { UseDocumentDrawer } from '../DocumentDrawer/types.js'\nimport type { Option } from '../ReactSelect/index.js'\n\nexport type ListDrawerContextProps = {\n readonly allowCreate?: boolean\n readonly createNewDrawerSlug?: string\n readonly DocumentDrawerToggler?: ReturnType<UseDocumentDrawer>[1]\n readonly drawerSlug?: string\n readonly enabledCollections?: CollectionSlug[]\n readonly onBulkSelect?: (selected: ReturnType<typeof useSelection>['selected']) => void\n readonly onQueryChange?: (query: ListQuery) => void\n readonly onSelect?: (args: {\n collectionSlug: CollectionSlug\n doc: Data\n /**\n * @deprecated\n * The `docID` property is deprecated and will be removed in the next major version of Payload.\n * Use `doc.id` instead.\n */\n docID: string\n }) => void\n readonly selectedOption?: Option<CollectionSlug>\n readonly setSelectedOption?: (option: Option<CollectionSlug>) => void\n}\n\nexport type ListDrawerContextType = {\n readonly isInDrawer: boolean\n /**\n * When called, will either refresh the list view with its currently selected collection.\n * If an collection slug is provided, will use that instead of the currently selected one.\n */\n readonly refresh: (collectionSlug?: CollectionSlug) => Promise<void>\n} & ListDrawerContextProps\n\nexport const ListDrawerContext = createContext({} as ListDrawerContextType)\n\nexport const ListDrawerContextProvider: React.FC<\n {\n children: React.ReactNode\n refresh: ListDrawerContextType['refresh']\n } & ListDrawerContextProps\n> = ({ children, ...rest }) => {\n return (\n <ListDrawerContext value={{ isInDrawer: Boolean(rest.drawerSlug), ...rest }}>\n {children}\n </ListDrawerContext>\n )\n}\n\nexport const useListDrawerContext = (): ListDrawerContextType => {\n const context = use(ListDrawerContext)\n\n if (!context) {\n throw new Error('useListDrawerContext must be used within a ListDrawerContextProvider')\n }\n\n return context\n}\n"],"names":["createContext","use","ListDrawerContext","ListDrawerContextProvider","children","rest","value","isInDrawer","Boolean","drawerSlug","useListDrawerContext","context","Error"],"mappings":";AAEA,SAASA,aAAa,EAAEC,GAAG,QAAQ,QAAO;AAiBtC;;;;KAIC,GASH;;;GAGC,GAIH,OAAO,MAAMC,kCAAoBF,cAAc,CAAC,GAA2B;AAE3E,OAAO,MAAMG,4BAKT,CAAC,EAAEC,QAAQ,EAAE,GAAGC,MAAM;IACxB,qBACE,QAACH;QAAkBI,OAAO;YAAEC,YAAYC,QAAQH,KAAKI,UAAU;YAAG,GAAGJ,IAAI;QAAC;kBACvED;;;;;;AAGP,EAAC;AAED,OAAO,MAAMM,uBAAuB;IAClC,MAAMC,UAAUV,IAAIC;IAEpB,IAAI,CAACS,SAAS;QACZ,MAAM,IAAIC,MAAM;IAClB;IAEA,OAAOD;AACT,EAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
2
|
+
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
3
|
import { createElement as _createElement } from "react";
|
|
4
4
|
import { useModal } from '@faceless-ui/modal';
|
|
5
5
|
import React, { useCallback, useEffect, useId, useMemo, useState } from 'react';
|
|
@@ -9,9 +9,10 @@ import { useEditDepth } from '../../providers/EditDepth/index.js';
|
|
|
9
9
|
import { Drawer, DrawerToggler } from '../Drawer/index.js';
|
|
10
10
|
import { ListDrawerContent } from './DrawerContent.js';
|
|
11
11
|
export const baseClass = 'list-drawer';
|
|
12
|
-
export const formatListDrawerSlug = ({ depth, uuid })
|
|
12
|
+
export const formatListDrawerSlug = ({ depth, uuid })=>// supply when creating a new document and no id is available
|
|
13
|
+
`list-drawer_${depth}_${uuid}`;
|
|
13
14
|
export const ListDrawerToggler = ({ children, className, disabled, drawerSlug, onClick, ...rest })=>{
|
|
14
|
-
return /*#__PURE__*/
|
|
15
|
+
return /*#__PURE__*/ _jsxDEV(DrawerToggler, {
|
|
15
16
|
className: [
|
|
16
17
|
className,
|
|
17
18
|
`${baseClass}__toggler`
|
|
@@ -21,19 +22,31 @@ export const ListDrawerToggler = ({ children, className, disabled, drawerSlug, o
|
|
|
21
22
|
slug: drawerSlug,
|
|
22
23
|
...rest,
|
|
23
24
|
children: children
|
|
24
|
-
}
|
|
25
|
+
}, void 0, false, {
|
|
26
|
+
fileName: "src/elements/ListDrawer/index.tsx",
|
|
27
|
+
lineNumber: 32,
|
|
28
|
+
columnNumber: 5
|
|
29
|
+
}, this);
|
|
25
30
|
};
|
|
26
31
|
export const ListDrawer = (props)=>{
|
|
27
32
|
const { drawerSlug } = props;
|
|
28
|
-
return /*#__PURE__*/
|
|
33
|
+
return /*#__PURE__*/ _jsxDEV(Drawer, {
|
|
29
34
|
className: baseClass,
|
|
30
35
|
gutter: false,
|
|
31
36
|
Header: null,
|
|
32
37
|
slug: drawerSlug,
|
|
33
|
-
children: /*#__PURE__*/
|
|
38
|
+
children: /*#__PURE__*/ _jsxDEV(ListDrawerContent, {
|
|
34
39
|
...props
|
|
35
|
-
}
|
|
36
|
-
|
|
40
|
+
}, void 0, false, {
|
|
41
|
+
fileName: "src/elements/ListDrawer/index.tsx",
|
|
42
|
+
lineNumber: 49,
|
|
43
|
+
columnNumber: 7
|
|
44
|
+
}, this)
|
|
45
|
+
}, void 0, false, {
|
|
46
|
+
fileName: "src/elements/ListDrawer/index.tsx",
|
|
47
|
+
lineNumber: 48,
|
|
48
|
+
columnNumber: 5
|
|
49
|
+
}, this);
|
|
37
50
|
};
|
|
38
51
|
/**
|
|
39
52
|
* Returns an array containing the ListDrawer component, the ListDrawerToggler component, and an object with state and methods for controlling the drawer.
|
|
@@ -112,7 +125,13 @@ export const ListDrawer = (props)=>{
|
|
|
112
125
|
filterOptions: filterOptions,
|
|
113
126
|
key: drawerSlug,
|
|
114
127
|
selectedCollection: selectedCollection,
|
|
115
|
-
uploads: uploads
|
|
128
|
+
uploads: uploads,
|
|
129
|
+
__source: {
|
|
130
|
+
fileName: "src/elements/ListDrawer/index.tsx",
|
|
131
|
+
lineNumber: 124,
|
|
132
|
+
columnNumber: 7
|
|
133
|
+
},
|
|
134
|
+
__self: this
|
|
116
135
|
});
|
|
117
136
|
}, [
|
|
118
137
|
drawerSlug,
|
|
@@ -123,10 +142,14 @@ export const ListDrawer = (props)=>{
|
|
|
123
142
|
filterOptions
|
|
124
143
|
]);
|
|
125
144
|
const MemoizedDrawerToggler = useMemo(()=>{
|
|
126
|
-
return (props)=>/*#__PURE__*/
|
|
145
|
+
return (props)=>/*#__PURE__*/ _jsxDEV(ListDrawerToggler, {
|
|
127
146
|
...props,
|
|
128
147
|
drawerSlug: drawerSlug
|
|
129
|
-
}
|
|
148
|
+
}, void 0, false, {
|
|
149
|
+
fileName: "src/elements/ListDrawer/index.tsx",
|
|
150
|
+
lineNumber: 138,
|
|
151
|
+
columnNumber: 23
|
|
152
|
+
}, this);
|
|
130
153
|
}, [
|
|
131
154
|
drawerSlug
|
|
132
155
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListDrawer/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useId, useMemo, useState } from 'react'\n\nimport type { ListDrawerProps, ListTogglerProps, UseListDrawer } from './types.js'\n\nexport * from './types.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { ListDrawerContent } from './DrawerContent.js'\n\nexport const baseClass = 'list-drawer'\nexport const formatListDrawerSlug = ({\n depth,\n uuid,\n}: {\n depth: number\n uuid: string // supply when creating a new document and no id is available\n}) => `list-drawer_${depth}_${uuid}`\n\nexport const ListDrawerToggler: React.FC<ListTogglerProps> = ({\n children,\n className,\n disabled,\n drawerSlug,\n onClick,\n ...rest\n}) => {\n return (\n <DrawerToggler\n className={[className, `${baseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n onClick={onClick}\n slug={drawerSlug}\n {...rest}\n >\n {children}\n </DrawerToggler>\n )\n}\n\nexport const ListDrawer: React.FC<ListDrawerProps> = (props) => {\n const { drawerSlug } = props\n\n return (\n <Drawer className={baseClass} gutter={false} Header={null} slug={drawerSlug}>\n <ListDrawerContent {...props} />\n </Drawer>\n )\n}\n\n/**\n * Returns an array containing the ListDrawer component, the ListDrawerToggler component, and an object with state and methods for controlling the drawer.\n * @example\n * import { useListDrawer } from '@payloadcms/ui'\n *\n * // inside a React component\n * const [ListDrawer, ListDrawerToggler, { closeDrawer, openDrawer }] = useListDrawer({\n * collectionSlugs: ['users'],\n * selectedCollection: 'users',\n * })\n *\n * // inside the return statement\n * return (\n * <>\n * <ListDrawer />\n * <ListDrawerToggler onClick={openDrawer}>Open List Drawer</ListDrawerToggler>\n * </>\n * )\n */\nexport const useListDrawer: UseListDrawer = ({\n collectionSlugs: collectionSlugsFromProps,\n filterOptions,\n selectedCollection,\n uploads,\n}) => {\n const {\n config: { collections },\n } = useConfig()\n const drawerDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n const [collectionSlugs, setCollectionSlugs] = useState(collectionSlugsFromProps)\n\n const drawerSlug = formatListDrawerSlug({\n depth: drawerDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n useEffect(() => {\n if (!collectionSlugs || collectionSlugs.length === 0) {\n const filteredCollectionSlugs = collections.filter(({ upload }) => {\n if (uploads) {\n return Boolean(upload) === true\n }\n return true\n })\n\n setCollectionSlugs(filteredCollectionSlugs.map(({ slug }) => slug))\n }\n }, [collectionSlugs, uploads, collections])\n\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [drawerSlug, closeModal])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [drawerSlug, openModal])\n\n const MemoizedDrawer = useMemo(() => {\n return (props) => (\n <ListDrawer\n {...props}\n closeDrawer={closeDrawer}\n collectionSlugs={collectionSlugs}\n drawerSlug={drawerSlug}\n filterOptions={filterOptions}\n key={drawerSlug}\n selectedCollection={selectedCollection}\n uploads={uploads}\n />\n )\n }, [drawerSlug, collectionSlugs, uploads, closeDrawer, selectedCollection, filterOptions])\n\n const MemoizedDrawerToggler = useMemo(() => {\n return (props) => <ListDrawerToggler {...props} drawerSlug={drawerSlug} />\n }, [drawerSlug])\n\n const MemoizedDrawerState = useMemo(\n () => ({\n closeDrawer,\n collectionSlugs,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n setCollectionSlugs,\n toggleDrawer,\n }),\n [\n drawerDepth,\n drawerSlug,\n isOpen,\n toggleDrawer,\n closeDrawer,\n openDrawer,\n setCollectionSlugs,\n collectionSlugs,\n ],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"names":["useModal","React","useCallback","useEffect","useId","useMemo","useState","useConfig","useEditDepth","Drawer","DrawerToggler","ListDrawerContent","baseClass","formatListDrawerSlug","depth","uuid","ListDrawerToggler","children","className","disabled","drawerSlug","onClick","rest","filter","Boolean","join","slug","ListDrawer","props","gutter","Header","useListDrawer","collectionSlugs","collectionSlugsFromProps","filterOptions","selectedCollection","uploads","config","collections","drawerDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","setCollectionSlugs","length","filteredCollectionSlugs","upload","map","toggleDrawer","closeDrawer","openDrawer","MemoizedDrawer","key","MemoizedDrawerToggler","MemoizedDrawerState","isDrawerOpen"],"mappings":"AAAA;;;AACA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,OAAOC,SAASC,WAAW,EAAEC,SAAS,EAAEC,KAAK,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAO;AAI/E,cAAc,aAAY;AAE1B,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,MAAM,EAAEC,aAAa,QAAQ,qBAAoB;AAC1D,SAASC,iBAAiB,QAAQ,qBAAoB;AAEtD,OAAO,MAAMC,YAAY,cAAa;AACtC,OAAO,MAAMC,uBAAuB,CAAC,EACnCC,KAAK,EACLC,IAAI,EAIL,
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListDrawer/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useId, useMemo, useState } from 'react'\n\nimport type { ListDrawerProps, ListTogglerProps, UseListDrawer } from './types.js'\n\nexport * from './types.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { ListDrawerContent } from './DrawerContent.js'\n\nexport const baseClass = 'list-drawer'\nexport const formatListDrawerSlug = ({\n depth,\n uuid,\n}: {\n depth: number\n uuid: string // supply when creating a new document and no id is available\n}) => `list-drawer_${depth}_${uuid}`\n\nexport const ListDrawerToggler: React.FC<ListTogglerProps> = ({\n children,\n className,\n disabled,\n drawerSlug,\n onClick,\n ...rest\n}) => {\n return (\n <DrawerToggler\n className={[className, `${baseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n onClick={onClick}\n slug={drawerSlug}\n {...rest}\n >\n {children}\n </DrawerToggler>\n )\n}\n\nexport const ListDrawer: React.FC<ListDrawerProps> = (props) => {\n const { drawerSlug } = props\n\n return (\n <Drawer className={baseClass} gutter={false} Header={null} slug={drawerSlug}>\n <ListDrawerContent {...props} />\n </Drawer>\n )\n}\n\n/**\n * Returns an array containing the ListDrawer component, the ListDrawerToggler component, and an object with state and methods for controlling the drawer.\n * @example\n * import { useListDrawer } from '@payloadcms/ui'\n *\n * // inside a React component\n * const [ListDrawer, ListDrawerToggler, { closeDrawer, openDrawer }] = useListDrawer({\n * collectionSlugs: ['users'],\n * selectedCollection: 'users',\n * })\n *\n * // inside the return statement\n * return (\n * <>\n * <ListDrawer />\n * <ListDrawerToggler onClick={openDrawer}>Open List Drawer</ListDrawerToggler>\n * </>\n * )\n */\nexport const useListDrawer: UseListDrawer = ({\n collectionSlugs: collectionSlugsFromProps,\n filterOptions,\n selectedCollection,\n uploads,\n}) => {\n const {\n config: { collections },\n } = useConfig()\n const drawerDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n const [collectionSlugs, setCollectionSlugs] = useState(collectionSlugsFromProps)\n\n const drawerSlug = formatListDrawerSlug({\n depth: drawerDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n useEffect(() => {\n if (!collectionSlugs || collectionSlugs.length === 0) {\n const filteredCollectionSlugs = collections.filter(({ upload }) => {\n if (uploads) {\n return Boolean(upload) === true\n }\n return true\n })\n\n setCollectionSlugs(filteredCollectionSlugs.map(({ slug }) => slug))\n }\n }, [collectionSlugs, uploads, collections])\n\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [drawerSlug, closeModal])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [drawerSlug, openModal])\n\n const MemoizedDrawer = useMemo(() => {\n return (props) => (\n <ListDrawer\n {...props}\n closeDrawer={closeDrawer}\n collectionSlugs={collectionSlugs}\n drawerSlug={drawerSlug}\n filterOptions={filterOptions}\n key={drawerSlug}\n selectedCollection={selectedCollection}\n uploads={uploads}\n />\n )\n }, [drawerSlug, collectionSlugs, uploads, closeDrawer, selectedCollection, filterOptions])\n\n const MemoizedDrawerToggler = useMemo(() => {\n return (props) => <ListDrawerToggler {...props} drawerSlug={drawerSlug} />\n }, [drawerSlug])\n\n const MemoizedDrawerState = useMemo(\n () => ({\n closeDrawer,\n collectionSlugs,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n setCollectionSlugs,\n toggleDrawer,\n }),\n [\n drawerDepth,\n drawerSlug,\n isOpen,\n toggleDrawer,\n closeDrawer,\n openDrawer,\n setCollectionSlugs,\n collectionSlugs,\n ],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"names":["useModal","React","useCallback","useEffect","useId","useMemo","useState","useConfig","useEditDepth","Drawer","DrawerToggler","ListDrawerContent","baseClass","formatListDrawerSlug","depth","uuid","ListDrawerToggler","children","className","disabled","drawerSlug","onClick","rest","filter","Boolean","join","slug","ListDrawer","props","gutter","Header","useListDrawer","collectionSlugs","collectionSlugsFromProps","filterOptions","selectedCollection","uploads","config","collections","drawerDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","setCollectionSlugs","length","filteredCollectionSlugs","upload","map","toggleDrawer","closeDrawer","openDrawer","MemoizedDrawer","key","MemoizedDrawerToggler","MemoizedDrawerState","isDrawerOpen"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type {\n CollectionPreferences,\n FilterOptionsResult,\n ListQuery,\n SanitizedCollectionConfig,\n} from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nimport type { ListDrawerContextProps } from './Provider.js'\n\n/**\n * @internal - this may change in a minor release\n */\nexport type RenderListServerFnArgs = {\n collectionSlug: string\n disableActions?: boolean\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n}\n\n/**\n * @internal - this may change in a minor release\n */\nexport type RenderListServerFnReturnType = {\n List: React.ReactNode\n preferences: CollectionPreferences\n}\n\nexport type ListDrawerProps = {\n readonly allowCreate?: boolean\n readonly collectionSlugs: SanitizedCollectionConfig['slug'][]\n readonly disableQueryPresets?: boolean\n readonly drawerSlug?: string\n readonly enableRowSelections?: boolean\n readonly filterOptions?: FilterOptionsResult\n readonly overrideEntityVisibility?: boolean\n readonly selectedCollection?: string\n} & ListDrawerContextProps\n\nexport type ListTogglerProps = {\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n drawerSlug?: string\n} & HTMLAttributes<HTMLButtonElement>\n\nexport type UseListDrawer = (args: {\n collectionSlugs?: SanitizedCollectionConfig['slug'][]\n filterOptions?: FilterOptionsResult\n overrideEntityVisibility?: boolean\n selectedCollection?: SanitizedCollectionConfig['slug']\n uploads?: boolean // finds all collections with upload: true\n}) => [\n React.FC<Omit<ListDrawerProps, 'collectionSlugs'>>,\n React.FC<Omit<ListTogglerProps, 'drawerSlug'>>,\n {\n closeDrawer: () => void\n collectionSlugs: SanitizedCollectionConfig['slug'][]\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n setCollectionSlugs: React.Dispatch<React.SetStateAction<SanitizedCollectionConfig['slug'][]>>\n toggleDrawer: () => void\n },\n]\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type {\n CollectionPreferences,\n FilterOptionsResult,\n ListQuery,\n SanitizedCollectionConfig,\n} from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nimport type { ListDrawerContextProps } from './Provider.js'\n\n/**\n * @internal - this may change in a minor release\n */\nexport type RenderListServerFnArgs = {\n collectionSlug: string\n disableActions?: boolean\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n}\n\n/**\n * @internal - this may change in a minor release\n */\nexport type RenderListServerFnReturnType = {\n List: React.ReactNode\n preferences: CollectionPreferences\n}\n\nexport type ListDrawerProps = {\n readonly allowCreate?: boolean\n readonly collectionSlugs: SanitizedCollectionConfig['slug'][]\n readonly disableQueryPresets?: boolean\n readonly drawerSlug?: string\n readonly enableRowSelections?: boolean\n readonly filterOptions?: FilterOptionsResult\n readonly overrideEntityVisibility?: boolean\n readonly selectedCollection?: string\n} & ListDrawerContextProps\n\nexport type ListTogglerProps = {\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n drawerSlug?: string\n} & HTMLAttributes<HTMLButtonElement>\n\nexport type UseListDrawer = (args: {\n collectionSlugs?: SanitizedCollectionConfig['slug'][]\n filterOptions?: FilterOptionsResult\n overrideEntityVisibility?: boolean\n selectedCollection?: SanitizedCollectionConfig['slug']\n uploads?: boolean // finds all collections with upload: true\n}) => [\n React.FC<Omit<ListDrawerProps, 'collectionSlugs'>>,\n React.FC<Omit<ListTogglerProps, 'drawerSlug'>>,\n {\n closeDrawer: () => void\n collectionSlugs: SanitizedCollectionConfig['slug'][]\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n setCollectionSlugs: React.Dispatch<React.SetStateAction<SanitizedCollectionConfig['slug'][]>>\n toggleDrawer: () => void\n },\n]\n"],"names":[],"mappings":"AAWA;;CAEC,GAeD;;CAEC,GAwBD,WAmBC,CAdmB,0CAA0C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
2
|
+
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
4
4
|
import { FieldLabel } from '../../../fields/FieldLabel/index.js';
|
|
5
5
|
import { useConfig } from '../../../providers/Config/index.js';
|
|
@@ -17,13 +17,17 @@ export const DrawerRelationshipSelect = ()=>{
|
|
|
17
17
|
const activeCollectionConfig = getEntityConfig({
|
|
18
18
|
collectionSlug: selectedOption.value
|
|
19
19
|
});
|
|
20
|
-
return /*#__PURE__*/
|
|
20
|
+
return /*#__PURE__*/ _jsxDEV("div", {
|
|
21
21
|
className: `${drawerBaseClass}__select-collection-wrap`,
|
|
22
22
|
children: [
|
|
23
|
-
/*#__PURE__*/
|
|
23
|
+
/*#__PURE__*/ _jsxDEV(FieldLabel, {
|
|
24
24
|
label: t('upload:selectCollectionToBrowse')
|
|
25
|
-
}
|
|
26
|
-
|
|
25
|
+
}, void 0, false, {
|
|
26
|
+
fileName: "src/elements/ListHeader/DrawerRelationshipSelect/index.tsx",
|
|
27
|
+
lineNumber: 29,
|
|
28
|
+
columnNumber: 9
|
|
29
|
+
}, this),
|
|
30
|
+
/*#__PURE__*/ _jsxDEV(ReactSelect, {
|
|
27
31
|
className: `${listHeaderClass}__select-collection`,
|
|
28
32
|
isClearable: false,
|
|
29
33
|
onChange: setSelectedOption,
|
|
@@ -35,9 +39,17 @@ export const DrawerRelationshipSelect = ()=>{
|
|
|
35
39
|
label: getTranslation(activeCollectionConfig?.labels.singular, i18n),
|
|
36
40
|
value: activeCollectionConfig?.slug
|
|
37
41
|
}
|
|
38
|
-
}
|
|
42
|
+
}, void 0, false, {
|
|
43
|
+
fileName: "src/elements/ListHeader/DrawerRelationshipSelect/index.tsx",
|
|
44
|
+
lineNumber: 30,
|
|
45
|
+
columnNumber: 9
|
|
46
|
+
}, this)
|
|
39
47
|
]
|
|
40
|
-
}
|
|
48
|
+
}, void 0, true, {
|
|
49
|
+
fileName: "src/elements/ListHeader/DrawerRelationshipSelect/index.tsx",
|
|
50
|
+
lineNumber: 28,
|
|
51
|
+
columnNumber: 7
|
|
52
|
+
}, this);
|
|
41
53
|
}
|
|
42
54
|
return null;
|
|
43
55
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"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"],"names":["getTranslation","FieldLabel","useConfig","useTranslation","useListDrawerContext","ReactSelect","listHeaderClass","drawerBaseClass","DrawerRelationshipSelect","i18n","t","config","collections","getEntityConfig","enabledCollections","selectedOption","setSelectedOption","enabledCollectionConfigs","filter","slug","includes","length","activeCollectionConfig","collectionSlug","value","div","className","label","isClearable","onChange","options","map","coll","labels","singular"],"mappings":"AAAA;;AAEA,SAASA,cAAc,QAAQ,2BAA0B;AAEzD,SAASC,UAAU,QAAQ,sCAAqC;AAChE,SAASC,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,cAAc,QAAQ,0CAAyC;AACxE,SAASC,oBAAoB,QAAQ,+BAA8B;AACnE,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,eAAe,QAAQ,cAAa;AAE7C,MAAMC,kBAAkB;AAExB,OAAO,MAAMC,2BAA2B;IACtC,MAAM,EAAEC,IAAI,EAAEC,CAAC,EAAE,GAAGP;IACpB,MAAM,EACJQ,QAAQ,EAAEC,WAAW,EAAE,EACvBC,eAAe,EAChB,GAAGX;IACJ,MAAM,EAAEY,kBAAkB,EAAEC,cAAc,EAAEC,iBAAiB,EAAE,GAAGZ;IAClE,MAAMa,2BAA2BL,YAAYM,MAAM,CAAC,CAAC,EAAEC,IAAI,EAAE,GAC3DL,mBAAmBM,QAAQ,CAACD;IAE9B,IAAIF,yBAAyBI,MAAM,GAAG,GAAG;QACvC,MAAMC,yBAAyBT,gBAAgB;YAAEU,gBAAgBR,eAAeS,KAAK;QAAC;QAEtF,qBACE,
|
|
1
|
+
{"version":3,"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"],"names":["getTranslation","FieldLabel","useConfig","useTranslation","useListDrawerContext","ReactSelect","listHeaderClass","drawerBaseClass","DrawerRelationshipSelect","i18n","t","config","collections","getEntityConfig","enabledCollections","selectedOption","setSelectedOption","enabledCollectionConfigs","filter","slug","includes","length","activeCollectionConfig","collectionSlug","value","div","className","label","isClearable","onChange","options","map","coll","labels","singular"],"mappings":"AAAA;;AAEA,SAASA,cAAc,QAAQ,2BAA0B;AAEzD,SAASC,UAAU,QAAQ,sCAAqC;AAChE,SAASC,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,cAAc,QAAQ,0CAAyC;AACxE,SAASC,oBAAoB,QAAQ,+BAA8B;AACnE,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,eAAe,QAAQ,cAAa;AAE7C,MAAMC,kBAAkB;AAExB,OAAO,MAAMC,2BAA2B;IACtC,MAAM,EAAEC,IAAI,EAAEC,CAAC,EAAE,GAAGP;IACpB,MAAM,EACJQ,QAAQ,EAAEC,WAAW,EAAE,EACvBC,eAAe,EAChB,GAAGX;IACJ,MAAM,EAAEY,kBAAkB,EAAEC,cAAc,EAAEC,iBAAiB,EAAE,GAAGZ;IAClE,MAAMa,2BAA2BL,YAAYM,MAAM,CAAC,CAAC,EAAEC,IAAI,EAAE,GAC3DL,mBAAmBM,QAAQ,CAACD;IAE9B,IAAIF,yBAAyBI,MAAM,GAAG,GAAG;QACvC,MAAMC,yBAAyBT,gBAAgB;YAAEU,gBAAgBR,eAAeS,KAAK;QAAC;QAEtF,qBACE,QAACC;YAAIC,WAAW,GAAGnB,gBAAgB,wBAAwB,CAAC;;8BAC1D,QAACN;oBAAW0B,OAAOjB,EAAE;;;;;;8BACrB,QAACL;oBACCqB,WAAW,GAAGpB,gBAAgB,mBAAmB,CAAC;oBAClDsB,aAAa;oBACbC,UAAUb;oBACVc,SAASb,yBAAyBc,GAAG,CAAC,CAACC,OAAU,CAAA;4BAC/CL,OAAO3B,eAAegC,KAAKC,MAAM,CAACC,QAAQ,EAAEzB;4BAC5Ce,OAAOQ,KAAKb,IAAI;wBAClB,CAAA;oBACAK,OAAO;wBACLG,OAAO3B,eAAesB,wBAAwBW,OAAOC,UAAUzB;wBAC/De,OAAOF,wBAAwBH;oBACjC;;;;;;;;;;;;IAIR;IACA,OAAO;AACT,EAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
2
|
+
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
3
|
import { useTranslation } from '../../../providers/Translation/index.js';
|
|
4
4
|
import { useListDrawerContext } from '../../ListDrawer/Provider.js';
|
|
5
5
|
import { Pill } from '../../Pill/index.js';
|
|
@@ -10,13 +10,21 @@ export function ListDrawerCreateNewDocButton({ hasCreatePermission }) {
|
|
|
10
10
|
if (!hasCreatePermission) {
|
|
11
11
|
return null;
|
|
12
12
|
}
|
|
13
|
-
return /*#__PURE__*/
|
|
13
|
+
return /*#__PURE__*/ _jsxDEV(DocumentDrawerToggler, {
|
|
14
14
|
className: `${baseClass}__create-new-button`,
|
|
15
|
-
children: /*#__PURE__*/
|
|
15
|
+
children: /*#__PURE__*/ _jsxDEV(Pill, {
|
|
16
16
|
size: "small",
|
|
17
17
|
children: t('general:createNew')
|
|
18
|
-
}
|
|
19
|
-
|
|
18
|
+
}, void 0, false, {
|
|
19
|
+
fileName: "src/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.tsx",
|
|
20
|
+
lineNumber: 28,
|
|
21
|
+
columnNumber: 7
|
|
22
|
+
}, this)
|
|
23
|
+
}, "create-new-button-toggler", false, {
|
|
24
|
+
fileName: "src/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.tsx",
|
|
25
|
+
lineNumber: 24,
|
|
26
|
+
columnNumber: 5
|
|
27
|
+
}, this);
|
|
20
28
|
}
|
|
21
29
|
|
|
22
30
|
//# sourceMappingURL=ListDrawerCreateNewDocButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.tsx"],"sourcesContent":["'use client'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useListDrawerContext } from '../../ListDrawer/Provider.js'\nimport { Pill } from '../../Pill/index.js'\n\nconst baseClass = 'list-header'\n\ntype DefaultDrawerTitleActionsProps = {\n hasCreatePermission: boolean\n}\n\nexport function ListDrawerCreateNewDocButton({\n hasCreatePermission,\n}: DefaultDrawerTitleActionsProps) {\n const { DocumentDrawerToggler } = useListDrawerContext()\n const { t } = useTranslation()\n\n if (!hasCreatePermission) {\n return null\n }\n\n return (\n <DocumentDrawerToggler\n className={`${baseClass}__create-new-button`}\n key=\"create-new-button-toggler\"\n >\n <Pill size=\"small\">{t('general:createNew')}</Pill>\n </DocumentDrawerToggler>\n )\n}\n"],"names":["useTranslation","useListDrawerContext","Pill","baseClass","ListDrawerCreateNewDocButton","hasCreatePermission","DocumentDrawerToggler","t","className","size"],"mappings":"AAAA;;AAEA,SAASA,cAAc,QAAQ,0CAAyC;AACxE,SAASC,oBAAoB,QAAQ,+BAA8B;AACnE,SAASC,IAAI,QAAQ,sBAAqB;AAE1C,MAAMC,YAAY;AAMlB,OAAO,SAASC,6BAA6B,EAC3CC,mBAAmB,EACY;IAC/B,MAAM,EAAEC,qBAAqB,EAAE,GAAGL;IAClC,MAAM,EAAEM,CAAC,EAAE,GAAGP;IAEd,IAAI,CAACK,qBAAqB;QACxB,OAAO;IACT;IAEA,qBACE,
|
|
1
|
+
{"version":3,"sources":["../../../../src/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.tsx"],"sourcesContent":["'use client'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useListDrawerContext } from '../../ListDrawer/Provider.js'\nimport { Pill } from '../../Pill/index.js'\n\nconst baseClass = 'list-header'\n\ntype DefaultDrawerTitleActionsProps = {\n hasCreatePermission: boolean\n}\n\nexport function ListDrawerCreateNewDocButton({\n hasCreatePermission,\n}: DefaultDrawerTitleActionsProps) {\n const { DocumentDrawerToggler } = useListDrawerContext()\n const { t } = useTranslation()\n\n if (!hasCreatePermission) {\n return null\n }\n\n return (\n <DocumentDrawerToggler\n className={`${baseClass}__create-new-button`}\n key=\"create-new-button-toggler\"\n >\n <Pill size=\"small\">{t('general:createNew')}</Pill>\n </DocumentDrawerToggler>\n )\n}\n"],"names":["useTranslation","useListDrawerContext","Pill","baseClass","ListDrawerCreateNewDocButton","hasCreatePermission","DocumentDrawerToggler","t","className","size"],"mappings":"AAAA;;AAEA,SAASA,cAAc,QAAQ,0CAAyC;AACxE,SAASC,oBAAoB,QAAQ,+BAA8B;AACnE,SAASC,IAAI,QAAQ,sBAAqB;AAE1C,MAAMC,YAAY;AAMlB,OAAO,SAASC,6BAA6B,EAC3CC,mBAAmB,EACY;IAC/B,MAAM,EAAEC,qBAAqB,EAAE,GAAGL;IAClC,MAAM,EAAEM,CAAC,EAAE,GAAGP;IAEd,IAAI,CAACK,qBAAqB;QACxB,OAAO;IACT;IAEA,qBACE,QAACC;QACCE,WAAW,GAAGL,UAAU,mBAAmB,CAAC;kBAG5C,cAAA,QAACD;YAAKO,MAAK;sBAASF,EAAE;;;;;;OAFlB;;;;;AAKV"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
2
|
+
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
|
|
3
3
|
import { useModal } from '@faceless-ui/modal';
|
|
4
4
|
import { useRouter } from 'next/navigation.js';
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { useBulkUpload } from '../../../elements/BulkUpload/index.js';
|
|
7
7
|
import { useTranslation } from '../../../providers/Translation/index.js';
|
|
8
8
|
import { Button } from '../../Button/index.js';
|
|
9
|
-
export function ListBulkUploadButton({ collectionSlug, hasCreatePermission, isBulkUploadEnabled, onBulkUploadSuccess, openBulkUpload: openBulkUploadFromProps })
|
|
9
|
+
export function ListBulkUploadButton({ collectionSlug, hasCreatePermission, isBulkUploadEnabled, onBulkUploadSuccess, openBulkUpload: openBulkUploadFromProps }) /**
|
|
10
|
+
* @deprecated This prop will be removed in the next major version.
|
|
11
|
+
*
|
|
12
|
+
* Prefer using `onBulkUploadSuccess`
|
|
13
|
+
*/ {
|
|
10
14
|
const { drawerSlug: bulkUploadDrawerSlug, setCollectionSlug, setOnSuccess } = useBulkUpload();
|
|
11
15
|
const { t } = useTranslation();
|
|
12
16
|
const { openModal } = useModal();
|
|
@@ -38,13 +42,17 @@ export function ListBulkUploadButton({ collectionSlug, hasCreatePermission, isBu
|
|
|
38
42
|
if (!hasCreatePermission || !isBulkUploadEnabled) {
|
|
39
43
|
return null;
|
|
40
44
|
}
|
|
41
|
-
return /*#__PURE__*/
|
|
45
|
+
return /*#__PURE__*/ _jsxDEV(Button, {
|
|
42
46
|
"aria-label": t('upload:bulkUpload'),
|
|
43
47
|
buttonStyle: "pill",
|
|
44
48
|
onClick: openBulkUpload,
|
|
45
49
|
size: "small",
|
|
46
50
|
children: t('upload:bulkUpload')
|
|
47
|
-
}, "bulk-upload-button"
|
|
51
|
+
}, "bulk-upload-button", false, {
|
|
52
|
+
fileName: "src/elements/ListHeader/TitleActions/ListBulkUploadButton.tsx",
|
|
53
|
+
lineNumber: 65,
|
|
54
|
+
columnNumber: 5
|
|
55
|
+
}, this);
|
|
48
56
|
}
|
|
49
57
|
|
|
50
58
|
//# sourceMappingURL=ListBulkUploadButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/elements/ListHeader/TitleActions/ListBulkUploadButton.tsx"],"sourcesContent":["'use client'\nimport type { CollectionSlug } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { useRouter } from 'next/navigation.js'\nimport React from 'react'\n\nimport { useBulkUpload } from '../../../elements/BulkUpload/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\n\nexport function ListBulkUploadButton({\n collectionSlug,\n hasCreatePermission,\n isBulkUploadEnabled,\n onBulkUploadSuccess,\n openBulkUpload: openBulkUploadFromProps,\n}: {\n collectionSlug: CollectionSlug\n hasCreatePermission: boolean\n isBulkUploadEnabled: boolean\n onBulkUploadSuccess?: () => void\n /**\n * @deprecated This prop will be removed in the next major version.\n *\n * Prefer using `onBulkUploadSuccess`\n */\n openBulkUpload?: () => void\n}) {\n const { drawerSlug: bulkUploadDrawerSlug, setCollectionSlug, setOnSuccess } = useBulkUpload()\n const { t } = useTranslation()\n const { openModal } = useModal()\n const router = useRouter()\n\n const openBulkUpload = React.useCallback(() => {\n if (typeof openBulkUploadFromProps === 'function') {\n openBulkUploadFromProps()\n } else {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(() => {\n if (typeof onBulkUploadSuccess === 'function') {\n onBulkUploadSuccess()\n } else {\n router.refresh()\n }\n })\n }\n }, [\n router,\n collectionSlug,\n bulkUploadDrawerSlug,\n openModal,\n setCollectionSlug,\n setOnSuccess,\n onBulkUploadSuccess,\n openBulkUploadFromProps,\n ])\n\n if (!hasCreatePermission || !isBulkUploadEnabled) {\n return null\n }\n\n return (\n <Button\n aria-label={t('upload:bulkUpload')}\n buttonStyle=\"pill\"\n key=\"bulk-upload-button\"\n onClick={openBulkUpload}\n size=\"small\"\n >\n {t('upload:bulkUpload')}\n </Button>\n )\n}\n"],"names":["useModal","useRouter","React","useBulkUpload","useTranslation","Button","ListBulkUploadButton","collectionSlug","hasCreatePermission","isBulkUploadEnabled","onBulkUploadSuccess","openBulkUpload","openBulkUploadFromProps","drawerSlug","bulkUploadDrawerSlug","setCollectionSlug","setOnSuccess","t","openModal","router","useCallback","refresh","aria-label","buttonStyle","onClick","size"],"mappings":"AAAA;;AAGA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,OAAOC,WAAW,QAAO;AAEzB,SAASC,aAAa,QAAQ,wCAAuC;AACrE,SAASC,cAAc,QAAQ,0CAAyC;AACxE,SAASC,MAAM,QAAQ,wBAAuB;AAE9C,OAAO,SAASC,qBAAqB,EACnCC,cAAc,EACdC,mBAAmB,EACnBC,mBAAmB,EACnBC,mBAAmB,EACnBC,gBAAgBC,uBAAuB,EAYxC;
|
|
1
|
+
{"version":3,"sources":["../../../../src/elements/ListHeader/TitleActions/ListBulkUploadButton.tsx"],"sourcesContent":["'use client'\nimport type { CollectionSlug } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { useRouter } from 'next/navigation.js'\nimport React from 'react'\n\nimport { useBulkUpload } from '../../../elements/BulkUpload/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\n\nexport function ListBulkUploadButton({\n collectionSlug,\n hasCreatePermission,\n isBulkUploadEnabled,\n onBulkUploadSuccess,\n openBulkUpload: openBulkUploadFromProps,\n}: {\n collectionSlug: CollectionSlug\n hasCreatePermission: boolean\n isBulkUploadEnabled: boolean\n onBulkUploadSuccess?: () => void\n /**\n * @deprecated This prop will be removed in the next major version.\n *\n * Prefer using `onBulkUploadSuccess`\n */\n openBulkUpload?: () => void\n}) {\n const { drawerSlug: bulkUploadDrawerSlug, setCollectionSlug, setOnSuccess } = useBulkUpload()\n const { t } = useTranslation()\n const { openModal } = useModal()\n const router = useRouter()\n\n const openBulkUpload = React.useCallback(() => {\n if (typeof openBulkUploadFromProps === 'function') {\n openBulkUploadFromProps()\n } else {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(() => {\n if (typeof onBulkUploadSuccess === 'function') {\n onBulkUploadSuccess()\n } else {\n router.refresh()\n }\n })\n }\n }, [\n router,\n collectionSlug,\n bulkUploadDrawerSlug,\n openModal,\n setCollectionSlug,\n setOnSuccess,\n onBulkUploadSuccess,\n openBulkUploadFromProps,\n ])\n\n if (!hasCreatePermission || !isBulkUploadEnabled) {\n return null\n }\n\n return (\n <Button\n aria-label={t('upload:bulkUpload')}\n buttonStyle=\"pill\"\n key=\"bulk-upload-button\"\n onClick={openBulkUpload}\n size=\"small\"\n >\n {t('upload:bulkUpload')}\n </Button>\n )\n}\n"],"names":["useModal","useRouter","React","useBulkUpload","useTranslation","Button","ListBulkUploadButton","collectionSlug","hasCreatePermission","isBulkUploadEnabled","onBulkUploadSuccess","openBulkUpload","openBulkUploadFromProps","drawerSlug","bulkUploadDrawerSlug","setCollectionSlug","setOnSuccess","t","openModal","router","useCallback","refresh","aria-label","buttonStyle","onClick","size"],"mappings":"AAAA;;AAGA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,OAAOC,WAAW,QAAO;AAEzB,SAASC,aAAa,QAAQ,wCAAuC;AACrE,SAASC,cAAc,QAAQ,0CAAyC;AACxE,SAASC,MAAM,QAAQ,wBAAuB;AAE9C,OAAO,SAASC,qBAAqB,EACnCC,cAAc,EACdC,mBAAmB,EACnBC,mBAAmB,EACnBC,mBAAmB,EACnBC,gBAAgBC,uBAAuB,EAYxC,EANC;;;;GAIC;IAGD,MAAM,EAAEC,YAAYC,oBAAoB,EAAEC,iBAAiB,EAAEC,YAAY,EAAE,GAAGb;IAC9E,MAAM,EAAEc,CAAC,EAAE,GAAGb;IACd,MAAM,EAAEc,SAAS,EAAE,GAAGlB;IACtB,MAAMmB,SAASlB;IAEf,MAAMU,iBAAiBT,MAAMkB,WAAW,CAAC;QACvC,IAAI,OAAOR,4BAA4B,YAAY;YACjDA;QACF,OAAO;YACLG,kBAAkBR;YAClBW,UAAUJ;YACVE,aAAa;gBACX,IAAI,OAAON,wBAAwB,YAAY;oBAC7CA;gBACF,OAAO;oBACLS,OAAOE,OAAO;gBAChB;YACF;QACF;IACF,GAAG;QACDF;QACAZ;QACAO;QACAI;QACAH;QACAC;QACAN;QACAE;KACD;IAED,IAAI,CAACJ,uBAAuB,CAACC,qBAAqB;QAChD,OAAO;IACT;IAEA,qBACE,QAACJ;QACCiB,cAAYL,EAAE;QACdM,aAAY;QAEZC,SAASb;QACTc,MAAK;kBAEJR,EAAE;OAJC;;;;;AAOV"}
|