@payloadcms/ui 4.0.0-internal.5d5a2b2 → 4.0.0-internal.688c4d0
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/css/colors.css +107 -60
- package/dist/css/radius.css +1 -3
- package/dist/css/theme.css +4 -0
- package/dist/css/utilities.css +5 -0
- package/dist/elements/APIKeyInput/index.css +92 -0
- package/dist/elements/APIKeyInput/index.d.ts +14 -0
- package/dist/elements/APIKeyInput/index.d.ts.map +1 -0
- package/dist/elements/APIKeyInput/index.js +86 -0
- package/dist/elements/APIKeyInput/index.js.map +1 -0
- package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
- package/dist/elements/AddNewRelation/index.js +85 -103
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AppHeader/index.d.ts +2 -1
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +7 -27
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.css +10 -4
- package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js +43 -40
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.css +25 -0
- package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.css +9 -0
- package/dist/elements/BulkUpload/EditForm/index.d.ts +1 -1
- package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js +59 -55
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.css +71 -0
- package/dist/elements/BulkUpload/EditMany/index.d.ts +1 -1
- package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.css +54 -75
- package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +60 -50
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +13 -0
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/Button/index.css +8 -0
- package/dist/elements/Chip/index.css +1 -1
- package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +19 -0
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +1 -1
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/Combobox/index.css +9 -8
- package/dist/elements/ConfirmationModal/index.css +7 -0
- package/dist/elements/ConfirmationModal/index.d.ts +1 -0
- package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
- package/dist/elements/ConfirmationModal/index.js +7 -3
- package/dist/elements/ConfirmationModal/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +4 -2
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.css +5 -0
- package/dist/elements/DatePicker/index.js +1 -1
- package/dist/elements/DatePicker/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts +3 -26
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +1 -95
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/Dialog/DialogModal/index.d.ts +1 -1
- package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
- package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
- package/dist/elements/Dialog/index.css +4 -0
- package/dist/elements/DocumentControls/index.css +10 -0
- package/dist/elements/DocumentControls/index.d.ts +6 -0
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +7 -6
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +10 -6
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.css +76 -4
- package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +7 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js +148 -87
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +1 -0
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DocumentFields/index.css +61 -2
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/Drawer/index.css +57 -26
- package/dist/elements/Drawer/index.d.ts +25 -0
- package/dist/elements/Drawer/index.d.ts.map +1 -1
- package/dist/elements/Drawer/index.js +133 -54
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/Drawer/types.d.ts +1 -0
- package/dist/elements/Drawer/types.d.ts.map +1 -1
- package/dist/elements/Drawer/types.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +76 -71
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.css +71 -0
- package/dist/elements/EditMany/index.d.ts +9 -11
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +2 -40
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.css +3 -0
- package/dist/elements/FileDetails/DraggableFileDetails/index.css +32 -0
- package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.js +19 -18
- package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
- package/dist/elements/GroupByControl/index.d.ts.map +1 -1
- package/dist/elements/GroupByControl/index.js +5 -6
- package/dist/elements/GroupByControl/index.js.map +1 -1
- package/dist/elements/Hierarchy/Drawer/index.css +3 -21
- package/dist/elements/Hierarchy/Drawer/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Drawer/index.js +5 -3
- package/dist/elements/Hierarchy/Drawer/index.js.map +1 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +36 -0
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +1 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +1 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
- package/dist/elements/Hierarchy/Field/index.client.d.ts +1 -1
- package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Field/index.client.js +5 -2
- package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
- package/dist/elements/Hierarchy/Field/index.css +37 -0
- package/dist/elements/Hierarchy/MoveMany/index.d.ts +0 -1
- package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.js +0 -1
- package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/LoadMore/index.css +27 -0
- package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts +1 -1
- package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/LoadMore/index.js +1 -1
- package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +36 -16
- package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.js +20 -15
- package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
- package/dist/elements/ListControls/index.css +5 -0
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +1 -1
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +12 -6
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListSelection/index.css +1 -1
- package/dist/elements/LoadMoreRow/index.css +34 -0
- package/dist/elements/LoadMoreRow/index.d.ts +1 -1
- package/dist/elements/LoadMoreRow/index.d.ts.map +1 -1
- package/dist/elements/LoadMoreRow/index.js +4 -8
- package/dist/elements/LoadMoreRow/index.js.map +1 -1
- package/dist/elements/Loading/index.css +28 -74
- package/dist/elements/Loading/index.d.ts.map +1 -1
- package/dist/elements/Loading/index.js +16 -60
- package/dist/elements/Loading/index.js.map +1 -1
- package/dist/elements/Localizer/index.d.ts.map +1 -1
- package/dist/elements/Localizer/index.js +3 -4
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/MenuSeparator/index.d.ts +4 -0
- package/dist/elements/MenuSeparator/index.d.ts.map +1 -0
- package/dist/elements/MenuSeparator/index.js +10 -0
- package/dist/elements/MenuSeparator/index.js.map +1 -0
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +4 -23
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/elements/Pill/index.css +1 -1
- package/dist/elements/PillSelector/index.css +1 -1
- package/dist/elements/Popup/PopupButtonList/index.css +43 -4
- package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +1 -0
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupGroupLabel/index.css +12 -0
- package/dist/elements/Popup/index.d.ts +7 -0
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +125 -59
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts +13 -0
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -0
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js +41 -0
- package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js.map +1 -0
- package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +1 -0
- package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +9 -31
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +4 -5
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.css +1 -1
- package/dist/elements/ReactSelect/index.css +53 -52
- package/dist/elements/ReactSelect/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/index.js +87 -11
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/ReactSelect/types.d.ts +6 -1
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RenderTitle/index.css +10 -0
- package/dist/elements/RenderTitle/index.d.ts +5 -0
- package/dist/elements/RenderTitle/index.d.ts.map +1 -1
- package/dist/elements/RenderTitle/index.js +52 -27
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
- package/dist/elements/SchedulePublishButton/index.js +6 -1
- package/dist/elements/SchedulePublishButton/index.js.map +1 -1
- package/dist/elements/SelectMany/index.js +1 -1
- package/dist/elements/SelectMany/index.js.map +1 -1
- package/dist/elements/Spinner/index.css +16 -0
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -2
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
- package/dist/elements/Table/OrderableRow.js +1 -1
- package/dist/elements/Table/OrderableRow.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +1 -0
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/index.css +17 -10
- package/dist/elements/Tabs/index.css +100 -0
- package/dist/elements/Tabs/index.d.ts +32 -0
- package/dist/elements/Tabs/index.d.ts.map +1 -0
- package/dist/elements/Tabs/index.js +62 -0
- package/dist/elements/Tabs/index.js.map +1 -0
- package/dist/elements/TimezonePicker/index.css +58 -24
- package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
- package/dist/elements/TimezonePicker/index.js +31 -4
- package/dist/elements/TimezonePicker/index.js.map +1 -1
- package/dist/elements/Tooltip/index.css +20 -4
- package/dist/elements/Tooltip/index.d.ts.map +1 -1
- package/dist/elements/Tooltip/index.js +71 -3
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
- package/dist/elements/UnpublishButton/index.js +5 -13
- package/dist/elements/UnpublishButton/index.js.map +1 -1
- package/dist/elements/UserMenu/LanguageMenu/index.d.ts +6 -0
- package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -0
- package/dist/elements/UserMenu/LanguageMenu/index.js +133 -0
- package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -0
- package/dist/elements/UserMenu/SettingsMenu/index.d.ts +11 -0
- package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -0
- package/dist/elements/UserMenu/SettingsMenu/index.js +114 -0
- package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -0
- package/dist/elements/UserMenu/SubMenuHeader/index.d.ts +6 -0
- package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -0
- package/dist/elements/UserMenu/SubMenuHeader/index.js +34 -0
- package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -0
- package/dist/elements/UserMenu/ThemeMenu/index.d.ts +6 -0
- package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -0
- package/dist/elements/UserMenu/ThemeMenu/index.js +145 -0
- package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -0
- package/dist/elements/UserMenu/index.css +80 -0
- package/dist/elements/UserMenu/index.d.ts +9 -0
- package/dist/elements/UserMenu/index.d.ts.map +1 -0
- package/dist/elements/UserMenu/index.js +201 -0
- package/dist/elements/UserMenu/index.js.map +1 -0
- package/dist/elements/WhereBuilder/Condition/index.css +1 -1
- package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +3 -0
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +12 -1
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +2 -2
- package/dist/exports/client/index.js.map +3 -3
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +2 -2
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +1 -49
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +27 -20
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/index.css +17 -3
- package/dist/fields/Blocks/BlockSelector/index.js +1 -1
- package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +6 -11
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Group/index.css +1 -1
- package/dist/fields/Join/index.js +1 -1
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +3 -3
- package/dist/fields/Row/index.d.ts +1 -1
- package/dist/fields/Tabs/Tab/index.d.ts +0 -1
- package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
- package/dist/fields/Tabs/Tab/index.js +12 -23
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +37 -37
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.css +4 -0
- package/dist/forms/RenderFields/RenderField.d.ts +1 -1
- package/dist/forms/RenderFields/RenderField.js +2 -1
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/icons/Dots/index.css +4 -4
- package/dist/icons/Gear/index.d.ts.map +1 -1
- package/dist/icons/Gear/index.js +8 -1
- package/dist/icons/Gear/index.js.map +1 -1
- package/dist/icons/InteractionEnter/index.css +5 -0
- package/dist/icons/InteractionEnter/index.d.ts +11 -0
- package/dist/icons/InteractionEnter/index.d.ts.map +1 -0
- package/dist/icons/InteractionEnter/index.js +25 -0
- package/dist/icons/InteractionEnter/index.js.map +1 -0
- package/dist/icons/{Write → Key}/index.css +1 -1
- package/dist/icons/Key/index.d.ts +7 -0
- package/dist/icons/Key/index.d.ts.map +1 -0
- package/dist/icons/Key/index.js +24 -0
- package/dist/icons/Key/index.js.map +1 -0
- package/dist/icons/LogOut/index.js +2 -2
- package/dist/icons/LogOut/index.js.map +1 -1
- package/dist/icons/Schedule/index.d.ts.map +1 -1
- package/dist/icons/Schedule/index.js +38 -39
- package/dist/icons/Schedule/index.js.map +1 -1
- package/dist/icons/VariableColor/index.css +5 -0
- package/dist/icons/VariableColor/index.d.ts +7 -0
- package/dist/icons/VariableColor/index.d.ts.map +1 -0
- package/dist/icons/VariableColor/index.js +23 -0
- package/dist/icons/VariableColor/index.js.map +1 -0
- package/dist/icons/WarningTriangle/index.css +5 -0
- package/dist/icons/WarningTriangle/index.d.ts +6 -0
- package/dist/icons/WarningTriangle/index.d.ts.map +1 -0
- package/dist/icons/WarningTriangle/index.js +21 -0
- package/dist/icons/WarningTriangle/index.js.map +1 -0
- package/dist/icons/Write/index.d.ts +0 -1
- package/dist/icons/Write/index.d.ts.map +1 -1
- package/dist/icons/Write/index.js +1 -2
- package/dist/icons/Write/index.js.map +1 -1
- package/dist/providers/Auth/index.d.ts +3 -1
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +8 -3
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +4 -0
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +4 -0
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +1 -8
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +27 -24
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.css +1 -0
- package/dist/providers/Theme/index.d.ts +17 -2
- package/dist/providers/Theme/index.d.ts.map +1 -1
- package/dist/providers/Theme/index.js +126 -75
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/templates/Default/index.d.ts.map +1 -1
- package/dist/templates/Default/index.js +9 -1
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +1 -2
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -2
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/copyDataFromLocale.js +1 -1
- package/dist/utilities/copyDataFromLocale.js.map +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.js +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
- package/dist/utilities/getHasScheduledPublish.d.ts +12 -0
- package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -0
- package/dist/utilities/getHasScheduledPublish.js +38 -0
- package/dist/utilities/getHasScheduledPublish.js.map +1 -0
- package/dist/utilities/getVersions.d.ts.map +1 -1
- package/dist/utilities/getVersions.js +1 -21
- package/dist/utilities/getVersions.js.map +1 -1
- package/dist/utilities/renderTable.js +1 -1
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
- package/dist/utilities/traverseForLocalizedFields.js +3 -0
- package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
- package/dist/views/Account/ResetPreferences/index.js +1 -0
- package/dist/views/Account/ResetPreferences/index.js.map +1 -1
- package/dist/views/Account/Settings/index.css +30 -13
- package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js +31 -47
- package/dist/views/Account/ToggleTheme/index.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +10 -1
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Auth/APIKey.js +10 -32
- package/dist/views/Edit/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Auth/index.css +0 -67
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +62 -48
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/HierarchyList/DocumentListSelection/index.js +4 -4
- package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.css +23 -1
- package/dist/views/List/ListHeader/index.d.ts.map +1 -1
- package/dist/views/List/ListHeader/index.js +0 -1
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/ListSelection/index.d.ts.map +1 -1
- package/dist/views/List/ListSelection/index.js +80 -29
- package/dist/views/List/ListSelection/index.js.map +1 -1
- package/dist/views/List/handleGroupBy.d.ts.map +1 -1
- package/dist/views/List/handleGroupBy.js +9 -0
- package/dist/views/List/handleGroupBy.js.map +1 -1
- package/dist/views/List/index.client.d.ts.map +1 -1
- package/dist/views/List/index.client.js +4 -3
- package/dist/views/List/index.client.js.map +1 -1
- package/dist/views/List/index.css +15 -0
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +11 -4
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
- package/dist/views/List/renderListViewSlots.js +8 -0
- package/dist/views/List/renderListViewSlots.js.map +1 -1
- package/dist/views/Logout/LogoutClient.d.ts +14 -0
- package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
- package/dist/views/Logout/LogoutClient.js +38 -32
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.d.ts.map +1 -1
- package/dist/views/Logout/index.js +7 -2
- package/dist/views/Logout/index.js.map +1 -1
- package/dist/views/Verify/index.client.d.ts +4 -0
- package/dist/views/Verify/index.client.d.ts.map +1 -1
- package/dist/views/Verify/index.client.js +81 -0
- package/dist/views/Verify/index.client.js.map +1 -1
- package/dist/views/Verify/index.css +38 -0
- package/dist/views/Verify/index.d.ts +1 -1
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +13 -19
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Version/Default/index.css +3 -5
- package/dist/views/Version/Default/index.d.ts.map +1 -1
- package/dist/views/Version/Default/index.js +7 -28
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +3 -3
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
- package/dist/views/Version/Restore/index.css +2 -2
- package/dist/views/Version/SelectComparison/VersionDrawer/index.css +5 -0
- package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js +1 -2
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.css +5 -0
- package/dist/views/Version/SelectComparison/index.d.ts +1 -1
- package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
- package/dist/views/Version/SelectComparison/index.js +1 -1
- package/dist/views/Version/SelectComparison/index.js.map +1 -1
- package/dist/views/Version/SelectLocales/index.d.ts +1 -2
- package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
- package/dist/views/Version/SelectLocales/index.js +83 -32
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/index.css +20 -13
- package/dist/views/Versions/index.d.ts +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +3 -26
- package/dist/views/Versions/index.js.map +1 -1
- package/package.json +5 -5
- package/dist/elements/BulkUpload/AddingFilesView/index.scss +0 -25
- package/dist/elements/BulkUpload/EditForm/index.scss +0 -11
- package/dist/elements/BulkUpload/EditMany/index.scss +0 -171
- package/dist/elements/EditMany/index.scss +0 -182
- package/dist/elements/FileDetails/DraggableFileDetails/index.scss +0 -35
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.scss +0 -78
- package/dist/elements/Hierarchy/Field/index.scss +0 -41
- package/dist/elements/Hierarchy/MoveMany/index.scss +0 -7
- package/dist/elements/Hierarchy/Tree/LoadMore/index.scss +0 -26
- package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts +0 -7
- package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +0 -1
- package/dist/elements/Hierarchy/Tree/TreeConnector.js +0 -23
- package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +0 -1
- package/dist/elements/LoadMoreRow/index.scss +0 -45
- package/dist/fields/Tabs/Tab/index.css +0 -82
- package/dist/views/Unauthorized/index.scss +0 -14
- package/dist/views/Verify/index.scss +0 -18
- package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
- package/dist/views/Version/SelectComparison/index.scss +0 -9
|
@@ -2,23 +2,28 @@
|
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import * as qs from 'qs-esm';
|
|
5
6
|
import React, { Fragment, useCallback } from 'react';
|
|
6
7
|
import { DeleteMany } from '../../../elements/DeleteMany/index.js';
|
|
7
|
-
import {
|
|
8
|
+
import { EditMany } from '../../../elements/EditMany/index.js';
|
|
8
9
|
import { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js';
|
|
9
10
|
import { PublishMany_v4 } from '../../../elements/PublishMany/index.js';
|
|
10
11
|
import { RestoreMany } from '../../../elements/RestoreMany/index.js';
|
|
11
12
|
import { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js';
|
|
13
|
+
import { useAuth } from '../../../providers/Auth/index.js';
|
|
14
|
+
import { useRouteCache } from '../../../providers/RouteCache/index.js';
|
|
15
|
+
import { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js';
|
|
12
16
|
import { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js';
|
|
13
17
|
import { useTranslation } from '../../../providers/Translation/index.js';
|
|
18
|
+
import { parseSearchParams } from '../../../utilities/parseSearchParams.js';
|
|
14
19
|
export const ListSelection = t0 => {
|
|
15
|
-
const $ = _c(
|
|
20
|
+
const $ = _c(26);
|
|
16
21
|
const {
|
|
17
22
|
collectionConfig,
|
|
18
23
|
disableBulkDelete,
|
|
19
24
|
disableBulkEdit,
|
|
20
|
-
hasDeletePermission,
|
|
21
|
-
hasTrashPermission,
|
|
25
|
+
hasDeletePermission: hasDeletePermissionFromProps,
|
|
26
|
+
hasTrashPermission: hasTrashPermissionFromProps,
|
|
22
27
|
label,
|
|
23
28
|
modalPrefix,
|
|
24
29
|
showSelectAllAcrossPages: t1,
|
|
@@ -36,6 +41,14 @@ export const ListSelection = t0 => {
|
|
|
36
41
|
const {
|
|
37
42
|
t
|
|
38
43
|
} = useTranslation();
|
|
44
|
+
const {
|
|
45
|
+
permissions
|
|
46
|
+
} = useAuth();
|
|
47
|
+
const router = useRouter();
|
|
48
|
+
const searchParams = useSearchParams();
|
|
49
|
+
const {
|
|
50
|
+
clearRouteCache
|
|
51
|
+
} = useRouteCache();
|
|
39
52
|
let t2;
|
|
40
53
|
if ($[0] !== toggleAll) {
|
|
41
54
|
t2 = () => toggleAll();
|
|
@@ -49,8 +62,22 @@ export const ListSelection = t0 => {
|
|
|
49
62
|
return null;
|
|
50
63
|
}
|
|
51
64
|
const isTrashView = collectionConfig?.trash && viewType === "trash";
|
|
65
|
+
const collectionPermissions = permissions?.collections?.[collectionConfig?.slug];
|
|
66
|
+
const hasDeletePermission = hasDeletePermissionFromProps !== undefined ? hasDeletePermissionFromProps : Boolean(collectionPermissions?.delete);
|
|
67
|
+
const hasTrashPermission = hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission;
|
|
68
|
+
const canShowDeleteButton = viewType === "trash" ? hasDeletePermission : hasDeletePermission || hasTrashPermission;
|
|
69
|
+
const selectingAll = selectAll === SelectAllStatus.AllAvailable;
|
|
52
70
|
let t3;
|
|
53
|
-
if ($[2] !==
|
|
71
|
+
if ($[2] !== canShowDeleteButton || $[3] !== clearRouteCache || $[4] !== collectionConfig || $[5] !== count || $[6] !== disableBulkDelete || $[7] !== disableBulkEdit || $[8] !== hasDeletePermission || $[9] !== hasTrashPermission || $[10] !== isTrashView || $[11] !== label || $[12] !== modalPrefix || $[13] !== onActionSuccess || $[14] !== router || $[15] !== searchParams || $[16] !== selectAll || $[17] !== selectedIDs || $[18] !== selectingAll || $[19] !== showSelectAllAcrossPages || $[20] !== t || $[21] !== toggleAll || $[22] !== totalDocs || $[23] !== viewType || $[24] !== where) {
|
|
72
|
+
const deleteIDs = selectingAll ? [] : selectedIDs;
|
|
73
|
+
const baseWhere = parseSearchParams(searchParams)?.where;
|
|
74
|
+
const deleteWhere = viewType === "trash" ? {
|
|
75
|
+
and: [...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []), {
|
|
76
|
+
deletedAt: {
|
|
77
|
+
exists: true
|
|
78
|
+
}
|
|
79
|
+
}]
|
|
80
|
+
} : baseWhere;
|
|
54
81
|
t3 = _jsx(ListSelection_v4, {
|
|
55
82
|
count,
|
|
56
83
|
ListActions: [selectAll !== SelectAllStatus.AllAvailable && count < totalDocs && showSelectAllAcrossPages !== false ? _jsx(ListSelectionButton, {
|
|
@@ -66,7 +93,7 @@ export const ListSelection = t0 => {
|
|
|
66
93
|
})
|
|
67
94
|
}, "select-all") : null].filter(Boolean),
|
|
68
95
|
SelectionActions: [!disableBulkEdit && !isTrashView && _jsxs(Fragment, {
|
|
69
|
-
children: [_jsx(
|
|
96
|
+
children: [_jsx(EditMany, {
|
|
70
97
|
collection: collectionConfig,
|
|
71
98
|
count,
|
|
72
99
|
ids: selectedIDs,
|
|
@@ -94,35 +121,59 @@ export const ListSelection = t0 => {
|
|
|
94
121
|
}, "bulk-actions"), isTrashView && _jsx(RestoreMany, {
|
|
95
122
|
collection: collectionConfig,
|
|
96
123
|
viewType
|
|
97
|
-
}, "bulk-restore"), !disableBulkDelete && _jsx(DeleteMany, {
|
|
98
|
-
|
|
124
|
+
}, "bulk-restore"), !disableBulkDelete && canShowDeleteButton && collectionConfig && _jsx(DeleteMany, {
|
|
125
|
+
afterDelete: () => {
|
|
126
|
+
toggleAll();
|
|
127
|
+
router.replace(qs.stringify({
|
|
128
|
+
...parseSearchParams(searchParams),
|
|
129
|
+
page: selectAll ? "1" : undefined
|
|
130
|
+
}, {
|
|
131
|
+
addQueryPrefix: true
|
|
132
|
+
}));
|
|
133
|
+
clearRouteCache();
|
|
134
|
+
},
|
|
99
135
|
hasDeletePermission,
|
|
100
136
|
hasTrashPermission,
|
|
101
137
|
modalPrefix,
|
|
102
|
-
|
|
138
|
+
search: parseSearchParams(searchParams)?.search,
|
|
139
|
+
selections: {
|
|
140
|
+
[collectionConfig.slug]: {
|
|
141
|
+
all: selectingAll,
|
|
142
|
+
ids: deleteIDs,
|
|
143
|
+
totalCount: selectingAll ? count : deleteIDs.length
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
trash: collectionConfig?.trash,
|
|
147
|
+
viewType,
|
|
148
|
+
where: deleteWhere
|
|
103
149
|
}, "bulk-delete")].filter(Boolean)
|
|
104
150
|
});
|
|
105
|
-
$[2] =
|
|
106
|
-
$[3] =
|
|
107
|
-
$[4] =
|
|
108
|
-
$[5] =
|
|
109
|
-
$[6] =
|
|
110
|
-
$[7] =
|
|
111
|
-
$[8] =
|
|
112
|
-
$[9] =
|
|
113
|
-
$[10] =
|
|
114
|
-
$[11] =
|
|
115
|
-
$[12] =
|
|
116
|
-
$[13] =
|
|
117
|
-
$[14] =
|
|
118
|
-
$[15] =
|
|
119
|
-
$[16] =
|
|
120
|
-
$[17] =
|
|
121
|
-
$[18] =
|
|
122
|
-
$[19] =
|
|
123
|
-
$[20] =
|
|
151
|
+
$[2] = canShowDeleteButton;
|
|
152
|
+
$[3] = clearRouteCache;
|
|
153
|
+
$[4] = collectionConfig;
|
|
154
|
+
$[5] = count;
|
|
155
|
+
$[6] = disableBulkDelete;
|
|
156
|
+
$[7] = disableBulkEdit;
|
|
157
|
+
$[8] = hasDeletePermission;
|
|
158
|
+
$[9] = hasTrashPermission;
|
|
159
|
+
$[10] = isTrashView;
|
|
160
|
+
$[11] = label;
|
|
161
|
+
$[12] = modalPrefix;
|
|
162
|
+
$[13] = onActionSuccess;
|
|
163
|
+
$[14] = router;
|
|
164
|
+
$[15] = searchParams;
|
|
165
|
+
$[16] = selectAll;
|
|
166
|
+
$[17] = selectedIDs;
|
|
167
|
+
$[18] = selectingAll;
|
|
168
|
+
$[19] = showSelectAllAcrossPages;
|
|
169
|
+
$[20] = t;
|
|
170
|
+
$[21] = toggleAll;
|
|
171
|
+
$[22] = totalDocs;
|
|
172
|
+
$[23] = viewType;
|
|
173
|
+
$[24] = where;
|
|
174
|
+
$[25] = t3;
|
|
124
175
|
} else {
|
|
125
|
-
t3 = $[
|
|
176
|
+
t3 = $[25];
|
|
126
177
|
}
|
|
127
178
|
return t3;
|
|
128
179
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","Fragment","useCallback","DeleteMany","EditMany_v4","ListSelection_v4","ListSelectionButton","PublishMany_v4","RestoreMany","UnpublishMany_v4","SelectAllStatus","useSelection","useTranslation","ListSelection","t0","$","collectionConfig","disableBulkDelete","disableBulkEdit","hasDeletePermission","hasTrashPermission","label","modalPrefix","showSelectAllAcrossPages","t1","viewType","where","undefined","count","selectAll","selectedIDs","toggleAll","totalDocs","t","t2","onActionSuccess","isTrashView","trash","t3","_jsx","ListActions","AllAvailable","id","onClick","children","filter","Boolean","SelectionActions","_jsxs","collection","ids","onSuccess"],"sources":["../../../../src/views/List/ListSelection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ViewTypes, Where } from 'payload'\n\nimport React, { Fragment, useCallback } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { EditMany_v4 } from '../../../elements/EditMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany_v4 } from '../../../elements/PublishMany/index.js'\nimport { RestoreMany } from '../../../elements/RestoreMany/index.js'\nimport { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js'\nimport { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\n\nexport type ListSelectionProps = {\n collectionConfig?: ClientCollectionConfig\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n label: string\n modalPrefix?: string\n showSelectAllAcrossPages?: boolean\n viewType?: ViewTypes\n where?: Where\n}\n\nexport const ListSelection: React.FC<ListSelectionProps> = ({\n collectionConfig,\n disableBulkDelete,\n disableBulkEdit,\n hasDeletePermission,\n hasTrashPermission,\n label,\n modalPrefix,\n showSelectAllAcrossPages = true,\n viewType,\n where,\n}) => {\n const { count, selectAll, selectedIDs, toggleAll, totalDocs } = useSelection()\n const { t } = useTranslation()\n\n const onActionSuccess = useCallback(() => toggleAll(), [toggleAll])\n\n if (count === 0) {\n return null\n }\n\n const isTrashView = collectionConfig?.trash && viewType === 'trash'\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n selectAll !== SelectAllStatus.AllAvailable &&\n count < totalDocs &&\n showSelectAllAcrossPages !== false ? (\n <ListSelectionButton\n aria-label={t('general:selectAll', { count: `(${totalDocs})`, label })}\n id=\"select-all-across-pages\"\n key=\"select-all\"\n onClick={() => toggleAll(true)}\n >\n {t('general:selectAll', { count: `(${totalDocs})`, label: '' })}\n </ListSelectionButton>\n ) : null,\n ].filter(Boolean)}\n SelectionActions={[\n !disableBulkEdit && !isTrashView && (\n <Fragment key=\"bulk-actions\">\n <EditMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <PublishMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <UnpublishMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n </Fragment>\n ),\n isTrashView && (\n <RestoreMany collection={collectionConfig} key=\"bulk-restore\" viewType={viewType} />\n ),\n !disableBulkDelete && (\n <DeleteMany\n collection={collectionConfig}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"bulk-delete\"\n modalPrefix={modalPrefix}\n viewType={viewType}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","qs","React","Fragment","useCallback","DeleteMany","EditMany","ListSelection_v4","ListSelectionButton","PublishMany_v4","RestoreMany","UnpublishMany_v4","useAuth","useRouteCache","useRouter","useSearchParams","SelectAllStatus","useSelection","useTranslation","parseSearchParams","ListSelection","t0","$","collectionConfig","disableBulkDelete","disableBulkEdit","hasDeletePermission","hasDeletePermissionFromProps","hasTrashPermission","hasTrashPermissionFromProps","label","modalPrefix","showSelectAllAcrossPages","t1","viewType","where","undefined","count","selectAll","selectedIDs","toggleAll","totalDocs","t","permissions","router","searchParams","clearRouteCache","t2","onActionSuccess","isTrashView","trash","collectionPermissions","collections","slug","Boolean","delete","canShowDeleteButton","selectingAll","AllAvailable","t3","deleteIDs","baseWhere","deleteWhere","and","Array","isArray","deletedAt","exists","_jsx","ListActions","id","onClick","children","filter","SelectionActions","_jsxs","collection","ids","onSuccess","afterDelete","replace","stringify","page","addQueryPrefix","search","selections","all","totalCount","length"],"sources":["../../../../src/views/List/ListSelection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ViewTypes, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany_v4 } from '../../../elements/PublishMany/index.js'\nimport { RestoreMany } from '../../../elements/RestoreMany/index.js'\nimport { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js'\nimport { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { parseSearchParams } from '../../../utilities/parseSearchParams.js'\n\nexport type ListSelectionProps = {\n collectionConfig?: ClientCollectionConfig\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n label: string\n modalPrefix?: string\n showSelectAllAcrossPages?: boolean\n viewType?: ViewTypes\n where?: Where\n}\n\nexport const ListSelection: React.FC<ListSelectionProps> = ({\n collectionConfig,\n disableBulkDelete,\n disableBulkEdit,\n hasDeletePermission: hasDeletePermissionFromProps,\n hasTrashPermission: hasTrashPermissionFromProps,\n label,\n modalPrefix,\n showSelectAllAcrossPages = true,\n viewType,\n where,\n}) => {\n const { count, selectAll, selectedIDs, toggleAll, totalDocs } = useSelection()\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const onActionSuccess = useCallback(() => toggleAll(), [toggleAll])\n\n if (count === 0) {\n return null\n }\n\n const isTrashView = collectionConfig?.trash && viewType === 'trash'\n\n const collectionPermissions = permissions?.collections?.[collectionConfig?.slug]\n const hasDeletePermission =\n hasDeletePermissionFromProps !== undefined\n ? hasDeletePermissionFromProps\n : Boolean(collectionPermissions?.delete)\n const hasTrashPermission =\n hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission\n const canShowDeleteButton =\n viewType === 'trash' ? hasDeletePermission : hasDeletePermission || hasTrashPermission\n\n const selectingAll = selectAll === SelectAllStatus.AllAvailable\n const deleteIDs = selectingAll ? [] : selectedIDs\n const baseWhere = parseSearchParams(searchParams)?.where as Where\n const deleteWhere =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []),\n { deletedAt: { exists: true } },\n ],\n }\n : baseWhere\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n selectAll !== SelectAllStatus.AllAvailable &&\n count < totalDocs &&\n showSelectAllAcrossPages !== false ? (\n <ListSelectionButton\n aria-label={t('general:selectAll', { count: `(${totalDocs})`, label })}\n id=\"select-all-across-pages\"\n key=\"select-all\"\n onClick={() => toggleAll(true)}\n >\n {t('general:selectAll', { count: `(${totalDocs})`, label: '' })}\n </ListSelectionButton>\n ) : null,\n ].filter(Boolean)}\n SelectionActions={[\n !disableBulkEdit && !isTrashView && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <PublishMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <UnpublishMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n </Fragment>\n ),\n isTrashView && (\n <RestoreMany collection={collectionConfig} key=\"bulk-restore\" viewType={viewType} />\n ),\n !disableBulkDelete && canShowDeleteButton && collectionConfig && (\n <DeleteMany\n afterDelete={() => {\n toggleAll()\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n }}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"bulk-delete\"\n modalPrefix={modalPrefix}\n search={parseSearchParams(searchParams)?.search as string}\n selections={{\n [collectionConfig.slug]: {\n all: selectingAll,\n ids: deleteIDs,\n totalCount: selectingAll ? count : deleteIDs.length,\n },\n }}\n trash={collectionConfig?.trash}\n viewType={viewType}\n where={deleteWhere}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleGroupBy.d.ts","sourceRoot":"","sources":["../../../src/views/List/handleGroupBy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EACZ,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAC1B,UAAU,EACV,SAAS,EACT,KAAK,EACN,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"handleGroupBy.d.ts","sourceRoot":"","sources":["../../../src/views/List/handleGroupBy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EACZ,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAC1B,UAAU,EACV,SAAS,EACT,KAAK,EACN,MAAM,SAAS,CAAA;AAWhB,eAAO,MAAM,aAAa,GAAU,mOAiBjC;IACD,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,YAAY,EAAE,YAAY,CAAA;IAC1B,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,GAAG,EAAE,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,gBAAgB,CAAC,EAAE,0BAA0B,CAAA;IAC7C,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,GAAG,CAAA;IACT,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,KAAK,EAAE,KAAK,CAAA;CACb,KAAG,OAAO,CAAC;IACV,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,IAAI,EAAE,aAAa,CAAA;IACnB,KAAK,EAAE,IAAI,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAA;CAClD,CA4KA,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getTranslation } from '@payloadcms/translations';
|
|
1
2
|
import { flattenAllFields } from 'payload';
|
|
2
3
|
import { formatDate } from '../../utilities/formatDocTitle/formatDateTitle.js';
|
|
3
4
|
import { renderTable } from '../../utilities/renderTable.js';
|
|
@@ -110,6 +111,14 @@ export const handleGroupBy = async ({
|
|
|
110
111
|
if (valueOrRelationshipID === false) {
|
|
111
112
|
heading = req.i18n.t('general:false');
|
|
112
113
|
}
|
|
114
|
+
} else if (groupByField?.type === 'select' || groupByField?.type === 'radio') {
|
|
115
|
+
const option = groupByField.options?.find(opt => (typeof opt === 'string' ? opt : opt.value) === valueOrRelationshipID);
|
|
116
|
+
if (option && typeof option !== 'string') {
|
|
117
|
+
const translated = getTranslation(option.label, req.i18n);
|
|
118
|
+
heading = typeof translated === 'string' ? translated : String(valueOrRelationshipID);
|
|
119
|
+
} else {
|
|
120
|
+
heading = String(valueOrRelationshipID);
|
|
121
|
+
}
|
|
113
122
|
} else {
|
|
114
123
|
heading = String(valueOrRelationshipID);
|
|
115
124
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleGroupBy.js","names":["flattenAllFields","formatDate","renderTable","createSerializableValue","extractRelationshipDisplayValue","extractValueOrRelationshipID","handleGroupBy","clientCollectionConfig","clientConfig","collectionConfig","collectionSlug","columns","customCellProps","drawerSlug","enableRowSelections","fieldPermissions","query","req","select","trash","user","viewType","where","whereWithMergedSearch","Table","columnState","dataByGroup","flattenedFields","fields","groupByFieldPath","groupBy","replace","groupByField","find","f","name","populate","type","relationTo","Array","isArray","forEach","rel","config","collections","c","slug","admin","useAsTitle","distinct","payload","findDistinct","collection","depth","field","limit","Number","undefined","locale","overrideAccess","page","sort","data","docs","values","map","Promise","all","distinctValue","i","potentiallyPopulatedRelationship","valueOrRelationshipID","groupData","draft","fallbackLocale","includeLockStatus","queryByGroup","equals","heading","i18n","t","relationshipConfig","date","String","pattern","dateFormat","serializableValue","length","newColumnState","NewTable","groupByValue","key","orderableFieldName","orderable"],"sources":["../../../src/views/List/handleGroupBy.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n ClientConfig,\n Column,\n ListQuery,\n PaginatedDocs,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedFieldsPermissions,\n SelectType,\n ViewTypes,\n Where,\n} from 'payload'\n\nimport { flattenAllFields } from 'payload'\n\nimport { formatDate } from '../../utilities/formatDocTitle/formatDateTitle.js'\nimport { renderTable } from '../../utilities/renderTable.js'\nimport { createSerializableValue } from './createSerializableValue.js'\nimport { extractRelationshipDisplayValue } from './extractRelationshipDisplayValue.js'\nimport { extractValueOrRelationshipID } from './extractValueOrRelationshipID.js'\n\nexport const handleGroupBy = async ({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n fieldPermissions,\n query,\n req,\n select,\n trash = false,\n user,\n viewType,\n where: whereWithMergedSearch,\n}: {\n clientCollectionConfig: ClientCollectionConfig\n clientConfig: ClientConfig\n collectionConfig: SanitizedCollectionConfig\n collectionSlug: string\n columns: any[]\n customCellProps?: Record<string, any>\n drawerSlug?: string\n enableRowSelections?: boolean\n fieldPermissions?: SanitizedFieldsPermissions\n query?: ListQuery\n req: PayloadRequest\n select?: SelectType\n trash?: boolean\n user: any\n viewType?: ViewTypes\n where: Where\n}): Promise<{\n columnState: Column[]\n data: PaginatedDocs\n Table: null | React.ReactNode | React.ReactNode[]\n}> => {\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[]\n\n const dataByGroup: Record<string, PaginatedDocs> = {}\n\n // NOTE: is there a faster/better way to do this?\n const flattenedFields = flattenAllFields({ fields: collectionConfig.fields })\n\n const groupByFieldPath = query.groupBy.replace(/^-/, '')\n\n const groupByField = flattenedFields.find((f) => f.name === groupByFieldPath)\n\n // Set up population for relationships\n let populate\n\n if (groupByField?.type === 'relationship' && groupByField.relationTo) {\n const relationTo = Array.isArray(groupByField.relationTo)\n ? groupByField.relationTo\n : [groupByField.relationTo]\n\n populate = {}\n relationTo.forEach((rel) => {\n const config = clientConfig.collections.find((c) => c.slug === rel)\n populate[rel] = { [config?.admin?.useAsTitle || 'id']: true }\n })\n }\n\n const distinct = await req.payload.findDistinct({\n collection: collectionSlug,\n depth: 1,\n field: groupByFieldPath,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n populate,\n req,\n sort: query?.groupBy,\n trash,\n where: whereWithMergedSearch,\n })\n\n const data = {\n ...distinct,\n docs: distinct.values?.map(() => ({})) || [],\n values: undefined,\n }\n\n await Promise.all(\n (distinct.values || []).map(async (distinctValue, i) => {\n const potentiallyPopulatedRelationship = distinctValue[groupByFieldPath]\n\n // Extract value or relationship ID for database query\n const valueOrRelationshipID = extractValueOrRelationshipID(potentiallyPopulatedRelationship)\n\n const groupData = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.queryByGroup?.[valueOrRelationshipID]?.limit\n ? Number(query.queryByGroup[valueOrRelationshipID].limit)\n : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.queryByGroup?.[valueOrRelationshipID]?.page\n ? Number(query.queryByGroup[valueOrRelationshipID].page)\n : undefined,\n req,\n // Note: if we wanted to enable table-by-table sorting, we could use this:\n // sort: query?.queryByGroup?.[valueOrRelationshipID]?.sort,\n select,\n sort: query?.sort,\n trash,\n user,\n where: {\n ...(whereWithMergedSearch || {}),\n [groupByFieldPath]: {\n equals: valueOrRelationshipID,\n },\n },\n })\n\n // Extract heading\n let heading: string\n\n if (potentiallyPopulatedRelationship === null) {\n heading = req.i18n.t('general:noValue')\n } else if (groupByField?.type === 'relationship') {\n const relationshipConfig = Array.isArray(groupByField.relationTo)\n ? undefined\n : clientConfig.collections.find((c) => c.slug === groupByField.relationTo)\n heading = extractRelationshipDisplayValue(\n potentiallyPopulatedRelationship,\n clientConfig,\n relationshipConfig,\n )\n } else if (groupByField?.type === 'date') {\n heading = formatDate({\n date: String(valueOrRelationshipID),\n i18n: req.i18n,\n pattern: clientConfig.admin.dateFormat,\n })\n } else if (groupByField?.type === 'checkbox') {\n if (valueOrRelationshipID === true) {\n heading = req.i18n.t('general:true')\n }\n if (valueOrRelationshipID === false) {\n heading = req.i18n.t('general:false')\n }\n } else {\n heading = String(valueOrRelationshipID)\n }\n\n // Create serializable value for client\n const serializableValue = createSerializableValue(valueOrRelationshipID)\n\n if (groupData.docs && groupData.docs.length > 0) {\n const { columnState: newColumnState, Table: NewTable } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data: groupData,\n drawerSlug,\n enableRowSelections,\n fieldPermissions,\n groupByFieldPath,\n groupByValue: serializableValue,\n heading: heading || req.i18n.t('general:noValue'),\n i18n: req.i18n,\n key: `table-${serializableValue}`,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n })\n\n // Only need to set `columnState` once, using the first table's column state\n // This will avoid needing to generate column state explicitly for root context that wraps all tables\n if (!columnState) {\n columnState = newColumnState\n }\n\n if (!Table) {\n Table = []\n }\n\n dataByGroup[serializableValue] = groupData\n ;(Table as Array<React.ReactNode>)[i] = NewTable\n }\n }),\n )\n\n return {\n columnState,\n data,\n Table,\n }\n}\n"],"mappings":"AAcA,SAASA,gBAAgB,QAAQ;AAEjC,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,uBAAuB,QAAQ;AACxC,SAASC,+BAA+B,QAAQ;AAChD,SAASC,4BAA4B,QAAQ;AAE7C,OAAO,MAAMC,aAAA,GAAgB,MAAAA,CAAO;EAClCC,sBAAsB;EACtBC,YAAY;EACZC,gBAAgB;EAChBC,cAAc;EACdC,OAAO;EACPC,eAAe;EACfC,UAAU;EACVC,mBAAmB;EACnBC,gBAAgB;EAChBC,KAAK;EACLC,GAAG;EACHC,MAAM;EACNC,KAAA,GAAQ,KAAK;EACbC,IAAI;EACJC,QAAQ;EACRC,KAAA,EAAOC;AAAqB,CAkB7B;EAKC,IAAIC,KAAA,GAA6C;EACjD,IAAIC,WAAA;EAEJ,MAAMC,WAAA,GAA6C,CAAC;EAEpD;EACA,MAAMC,eAAA,GAAkB3B,gBAAA,CAAiB;IAAE4B,MAAA,EAAQnB,gBAAA,CAAiBmB;EAAO;EAE3E,MAAMC,gBAAA,GAAmBb,KAAA,CAAMc,OAAO,CAACC,OAAO,CAAC,MAAM;EAErD,MAAMC,YAAA,GAAeL,eAAA,CAAgBM,IAAI,CAAEC,CAAA,IAAMA,CAAA,CAAEC,IAAI,KAAKN,gBAAA;EAE5D;EACA,IAAIO,QAAA;EAEJ,IAAIJ,YAAA,EAAcK,IAAA,KAAS,kBAAkBL,YAAA,CAAaM,UAAU,EAAE;IACpE,MAAMA,UAAA,GAAaC,KAAA,CAAMC,OAAO,CAACR,YAAA,CAAaM,UAAU,IACpDN,YAAA,CAAaM,UAAU,GACvB,CAACN,YAAA,CAAaM,UAAU,CAAC;IAE7BF,QAAA,GAAW,CAAC;IACZE,UAAA,CAAWG,OAAO,CAAEC,GAAA;MAClB,MAAMC,MAAA,GAASnC,YAAA,CAAaoC,WAAW,CAACX,IAAI,CAAEY,CAAA,IAAMA,CAAA,CAAEC,IAAI,KAAKJ,GAAA;MAC/DN,QAAQ,CAACM,GAAA,CAAI,GAAG;QAAE,CAACC,MAAA,EAAQI,KAAA,EAAOC,UAAA,IAAc,OAAO;MAAK;IAC9D;EACF;EAEA,MAAMC,QAAA,GAAW,MAAMhC,GAAA,CAAIiC,OAAO,CAACC,YAAY,CAAC;IAC9CC,UAAA,EAAY1C,cAAA;IACZ2C,KAAA,EAAO;IACPC,KAAA,EAAOzB,gBAAA;IACP0B,KAAA,EAAOvC,KAAA,EAAOuC,KAAA,GAAQC,MAAA,CAAOxC,KAAA,CAAMuC,KAAK,IAAIE,SAAA;IAC5CC,MAAA,EAAQzC,GAAA,CAAIyC,MAAM;IAClBC,cAAA,EAAgB;IAChBC,IAAA,EAAM5C,KAAA,EAAO4C,IAAA,GAAOJ,MAAA,CAAOxC,KAAA,CAAM4C,IAAI,IAAIH,SAAA;IACzCrB,QAAA;IACAnB,GAAA;IACA4C,IAAA,EAAM7C,KAAA,EAAOc,OAAA;IACbX,KAAA;IACAG,KAAA,EAAOC;EACT;EAEA,MAAMuC,IAAA,GAAO;IACX,GAAGb,QAAQ;IACXc,IAAA,EAAMd,QAAA,CAASe,MAAM,EAAEC,GAAA,CAAI,OAAO,CAAC,OAAO,EAAE;IAC5CD,MAAA,EAAQP;EACV;EAEA,MAAMS,OAAA,CAAQC,GAAG,CACf,CAAClB,QAAA,CAASe,MAAM,IAAI,EAAE,EAAEC,GAAG,CAAC,OAAOG,aAAA,EAAeC,CAAA;IAChD,MAAMC,gCAAA,GAAmCF,aAAa,CAACvC,gBAAA,CAAiB;IAExE;IACA,MAAM0C,qBAAA,GAAwBlE,4BAAA,CAA6BiE,gCAAA;IAE3D,MAAME,SAAA,GAAY,MAAMvD,GAAA,CAAIiC,OAAO,CAACjB,IAAI,CAAC;MACvCmB,UAAA,EAAY1C,cAAA;MACZ2C,KAAA,EAAO;MACPoB,KAAA,EAAO;MACPC,cAAA,EAAgB;MAChBC,iBAAA,EAAmB;MACnBpB,KAAA,EAAOvC,KAAA,EAAO4D,YAAA,GAAeL,qBAAA,CAAsB,EAAEhB,KAAA,GACjDC,MAAA,CAAOxC,KAAA,CAAM4D,YAAY,CAACL,qBAAA,CAAsB,CAAChB,KAAK,IACtDE,SAAA;MACJC,MAAA,EAAQzC,GAAA,CAAIyC,MAAM;MAClBC,cAAA,EAAgB;MAChBC,IAAA,EAAM5C,KAAA,EAAO4D,YAAA,GAAeL,qBAAA,CAAsB,EAAEX,IAAA,GAChDJ,MAAA,CAAOxC,KAAA,CAAM4D,YAAY,CAACL,qBAAA,CAAsB,CAACX,IAAI,IACrDH,SAAA;MACJxC,GAAA;MACA;MACA;MACAC,MAAA;MACA2C,IAAA,EAAM7C,KAAA,EAAO6C,IAAA;MACb1C,KAAA;MACAC,IAAA;MACAE,KAAA,EAAO;QACL,IAAIC,qBAAA,IAAyB,CAAC,CAAC;QAC/B,CAACM,gBAAA,GAAmB;UAClBgD,MAAA,EAAQN;QACV;MACF;IACF;IAEA;IACA,IAAIO,OAAA;IAEJ,IAAIR,gCAAA,KAAqC,MAAM;MAC7CQ,OAAA,GAAU7D,GAAA,CAAI8D,IAAI,CAACC,CAAC,CAAC;IACvB,OAAO,IAAIhD,YAAA,EAAcK,IAAA,KAAS,gBAAgB;MAChD,MAAM4C,kBAAA,GAAqB1C,KAAA,CAAMC,OAAO,CAACR,YAAA,CAAaM,UAAU,IAC5DmB,SAAA,GACAjD,YAAA,CAAaoC,WAAW,CAACX,IAAI,CAAEY,CAAA,IAAMA,CAAA,CAAEC,IAAI,KAAKd,YAAA,CAAaM,UAAU;MAC3EwC,OAAA,GAAU1E,+BAAA,CACRkE,gCAAA,EACA9D,YAAA,EACAyE,kBAAA;IAEJ,OAAO,IAAIjD,YAAA,EAAcK,IAAA,KAAS,QAAQ;MACxCyC,OAAA,GAAU7E,UAAA,CAAW;QACnBiF,IAAA,EAAMC,MAAA,CAAOZ,qBAAA;QACbQ,IAAA,EAAM9D,GAAA,CAAI8D,IAAI;QACdK,OAAA,EAAS5E,YAAA,CAAauC,KAAK,CAACsC;MAC9B;IACF,OAAO,IAAIrD,YAAA,EAAcK,IAAA,KAAS,YAAY;MAC5C,IAAIkC,qBAAA,KAA0B,MAAM;QAClCO,OAAA,GAAU7D,GAAA,CAAI8D,IAAI,CAACC,CAAC,CAAC;MACvB;MACA,IAAIT,qBAAA,KAA0B,OAAO;QACnCO,OAAA,GAAU7D,GAAA,CAAI8D,IAAI,CAACC,CAAC,CAAC;MACvB;IACF,OAAO;MACLF,OAAA,GAAUK,MAAA,CAAOZ,qBAAA;IACnB;IAEA;IACA,MAAMe,iBAAA,GAAoBnF,uBAAA,CAAwBoE,qBAAA;IAElD,IAAIC,SAAA,CAAUT,IAAI,IAAIS,SAAA,CAAUT,IAAI,CAACwB,MAAM,GAAG,GAAG;MAC/C,MAAM;QAAE9D,WAAA,EAAa+D,cAAc;QAAEhE,KAAA,EAAOiE;MAAQ,CAAE,GAAGvF,WAAA,CAAY;QACnEK,sBAAA;QACAE,gBAAA;QACAE,OAAA;QACAC,eAAA;QACAkD,IAAA,EAAMU,SAAA;QACN3D,UAAA;QACAC,mBAAA;QACAC,gBAAA;QACAc,gBAAA;QACA6D,YAAA,EAAcJ,iBAAA;QACdR,OAAA,EAASA,OAAA,IAAW7D,GAAA,CAAI8D,IAAI,CAACC,CAAC,CAAC;QAC/BD,IAAA,EAAM9D,GAAA,CAAI8D,IAAI;QACdY,GAAA,EAAK,SAASL,iBAAA,EAAmB;QACjCM,kBAAA,EAAoBnF,gBAAA,CAAiBoF,SAAS,KAAK,OAAO,WAAWpC,SAAA;QACrEP,OAAA,EAASjC,GAAA,CAAIiC,OAAO;QACpBlC,KAAA;QACAgC,UAAA,EAAYvC,gBAAA,CAAiBsC,KAAK,CAACC,UAAU;QAC7C3B;MACF;MAEA;MACA;MACA,IAAI,CAACI,WAAA,EAAa;QAChBA,WAAA,GAAc+D,cAAA;MAChB;MAEA,IAAI,CAAChE,KAAA,EAAO;QACVA,KAAA,GAAQ,EAAE;MACZ;MAEAE,WAAW,CAAC4D,iBAAA,CAAkB,GAAGd,SAAA;MAC/BhD,KAAgC,CAAC6C,CAAA,CAAE,GAAGoB,QAAA;IAC1C;EACF;EAGF,OAAO;IACLhE,WAAA;IACAqC,IAAA;IACAtC;EACF;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"handleGroupBy.js","names":["getTranslation","flattenAllFields","formatDate","renderTable","createSerializableValue","extractRelationshipDisplayValue","extractValueOrRelationshipID","handleGroupBy","clientCollectionConfig","clientConfig","collectionConfig","collectionSlug","columns","customCellProps","drawerSlug","enableRowSelections","fieldPermissions","query","req","select","trash","user","viewType","where","whereWithMergedSearch","Table","columnState","dataByGroup","flattenedFields","fields","groupByFieldPath","groupBy","replace","groupByField","find","f","name","populate","type","relationTo","Array","isArray","forEach","rel","config","collections","c","slug","admin","useAsTitle","distinct","payload","findDistinct","collection","depth","field","limit","Number","undefined","locale","overrideAccess","page","sort","data","docs","values","map","Promise","all","distinctValue","i","potentiallyPopulatedRelationship","valueOrRelationshipID","groupData","draft","fallbackLocale","includeLockStatus","queryByGroup","equals","heading","i18n","t","relationshipConfig","date","String","pattern","dateFormat","option","options","opt","value","translated","label","serializableValue","length","newColumnState","NewTable","groupByValue","key","orderableFieldName","orderable"],"sources":["../../../src/views/List/handleGroupBy.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n ClientConfig,\n Column,\n ListQuery,\n PaginatedDocs,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedFieldsPermissions,\n SelectType,\n ViewTypes,\n Where,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { flattenAllFields } from 'payload'\n\nimport { formatDate } from '../../utilities/formatDocTitle/formatDateTitle.js'\nimport { renderTable } from '../../utilities/renderTable.js'\nimport { createSerializableValue } from './createSerializableValue.js'\nimport { extractRelationshipDisplayValue } from './extractRelationshipDisplayValue.js'\nimport { extractValueOrRelationshipID } from './extractValueOrRelationshipID.js'\n\nexport const handleGroupBy = async ({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n fieldPermissions,\n query,\n req,\n select,\n trash = false,\n user,\n viewType,\n where: whereWithMergedSearch,\n}: {\n clientCollectionConfig: ClientCollectionConfig\n clientConfig: ClientConfig\n collectionConfig: SanitizedCollectionConfig\n collectionSlug: string\n columns: any[]\n customCellProps?: Record<string, any>\n drawerSlug?: string\n enableRowSelections?: boolean\n fieldPermissions?: SanitizedFieldsPermissions\n query?: ListQuery\n req: PayloadRequest\n select?: SelectType\n trash?: boolean\n user: any\n viewType?: ViewTypes\n where: Where\n}): Promise<{\n columnState: Column[]\n data: PaginatedDocs\n Table: null | React.ReactNode | React.ReactNode[]\n}> => {\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[]\n\n const dataByGroup: Record<string, PaginatedDocs> = {}\n\n // NOTE: is there a faster/better way to do this?\n const flattenedFields = flattenAllFields({ fields: collectionConfig.fields })\n\n const groupByFieldPath = query.groupBy.replace(/^-/, '')\n\n const groupByField = flattenedFields.find((f) => f.name === groupByFieldPath)\n\n // Set up population for relationships\n let populate\n\n if (groupByField?.type === 'relationship' && groupByField.relationTo) {\n const relationTo = Array.isArray(groupByField.relationTo)\n ? groupByField.relationTo\n : [groupByField.relationTo]\n\n populate = {}\n relationTo.forEach((rel) => {\n const config = clientConfig.collections.find((c) => c.slug === rel)\n populate[rel] = { [config?.admin?.useAsTitle || 'id']: true }\n })\n }\n\n const distinct = await req.payload.findDistinct({\n collection: collectionSlug,\n depth: 1,\n field: groupByFieldPath,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n populate,\n req,\n sort: query?.groupBy,\n trash,\n where: whereWithMergedSearch,\n })\n\n const data = {\n ...distinct,\n docs: distinct.values?.map(() => ({})) || [],\n values: undefined,\n }\n\n await Promise.all(\n (distinct.values || []).map(async (distinctValue, i) => {\n const potentiallyPopulatedRelationship = distinctValue[groupByFieldPath]\n\n // Extract value or relationship ID for database query\n const valueOrRelationshipID = extractValueOrRelationshipID(potentiallyPopulatedRelationship)\n\n const groupData = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.queryByGroup?.[valueOrRelationshipID]?.limit\n ? Number(query.queryByGroup[valueOrRelationshipID].limit)\n : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.queryByGroup?.[valueOrRelationshipID]?.page\n ? Number(query.queryByGroup[valueOrRelationshipID].page)\n : undefined,\n req,\n // Note: if we wanted to enable table-by-table sorting, we could use this:\n // sort: query?.queryByGroup?.[valueOrRelationshipID]?.sort,\n select,\n sort: query?.sort,\n trash,\n user,\n where: {\n ...(whereWithMergedSearch || {}),\n [groupByFieldPath]: {\n equals: valueOrRelationshipID,\n },\n },\n })\n\n // Extract heading\n let heading: string\n\n if (potentiallyPopulatedRelationship === null) {\n heading = req.i18n.t('general:noValue')\n } else if (groupByField?.type === 'relationship') {\n const relationshipConfig = Array.isArray(groupByField.relationTo)\n ? undefined\n : clientConfig.collections.find((c) => c.slug === groupByField.relationTo)\n heading = extractRelationshipDisplayValue(\n potentiallyPopulatedRelationship,\n clientConfig,\n relationshipConfig,\n )\n } else if (groupByField?.type === 'date') {\n heading = formatDate({\n date: String(valueOrRelationshipID),\n i18n: req.i18n,\n pattern: clientConfig.admin.dateFormat,\n })\n } else if (groupByField?.type === 'checkbox') {\n if (valueOrRelationshipID === true) {\n heading = req.i18n.t('general:true')\n }\n if (valueOrRelationshipID === false) {\n heading = req.i18n.t('general:false')\n }\n } else if (groupByField?.type === 'select' || groupByField?.type === 'radio') {\n const option = groupByField.options?.find(\n (opt) => (typeof opt === 'string' ? opt : opt.value) === valueOrRelationshipID,\n )\n if (option && typeof option !== 'string') {\n const translated = getTranslation(option.label, req.i18n)\n heading = typeof translated === 'string' ? translated : String(valueOrRelationshipID)\n } else {\n heading = String(valueOrRelationshipID)\n }\n } else {\n heading = String(valueOrRelationshipID)\n }\n\n // Create serializable value for client\n const serializableValue = createSerializableValue(valueOrRelationshipID)\n\n if (groupData.docs && groupData.docs.length > 0) {\n const { columnState: newColumnState, Table: NewTable } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data: groupData,\n drawerSlug,\n enableRowSelections,\n fieldPermissions,\n groupByFieldPath,\n groupByValue: serializableValue,\n heading: heading || req.i18n.t('general:noValue'),\n i18n: req.i18n,\n key: `table-${serializableValue}`,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n })\n\n // Only need to set `columnState` once, using the first table's column state\n // This will avoid needing to generate column state explicitly for root context that wraps all tables\n if (!columnState) {\n columnState = newColumnState\n }\n\n if (!Table) {\n Table = []\n }\n\n dataByGroup[serializableValue] = groupData\n ;(Table as Array<React.ReactNode>)[i] = NewTable\n }\n }),\n )\n\n return {\n columnState,\n data,\n Table,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAIlD,OAAO,KAAgD,MAAM,OAAO,CAAA;AA4BpE,OAAO,aAAa,CAAA;AAIpB,wBAAgB,eAAe,CAAC,KAAK,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAIlD,OAAO,KAAgD,MAAM,OAAO,CAAA;AA4BpE,OAAO,aAAa,CAAA;AAIpB,wBAAgB,eAAe,CAAC,KAAK,EAAE,mBAAmB,qBAmVzD"}
|
|
@@ -52,6 +52,7 @@ export function DefaultListView(props) {
|
|
|
52
52
|
hierarchyData,
|
|
53
53
|
listMenuItems,
|
|
54
54
|
newDocumentURL,
|
|
55
|
+
NoResults,
|
|
55
56
|
queryPreset,
|
|
56
57
|
queryPresetPermissions,
|
|
57
58
|
renderedFilters,
|
|
@@ -213,7 +214,7 @@ export function DefaultListView(props) {
|
|
|
213
214
|
collectionConfig: collectionConfig,
|
|
214
215
|
collectionSlug: collectionSlug,
|
|
215
216
|
disableQueryPresets: collectionConfig?.enableQueryPresets !== true || disableQueryPresets,
|
|
216
|
-
hasCreatePermission: hasCreatePermission && viewType !== 'trash',
|
|
217
|
+
hasCreatePermission: hasCreatePermission && viewType !== 'trash' && !isInDrawer,
|
|
217
218
|
isWhereOpen: isWhereOpen,
|
|
218
219
|
listMenuItems: listMenuItems,
|
|
219
220
|
newDocumentURL: newDocumentURL,
|
|
@@ -257,7 +258,7 @@ export function DefaultListView(props) {
|
|
|
257
258
|
})]
|
|
258
259
|
}) : docs?.length > 0 ? /*#__PURE__*/_jsx(RelationshipProvider, {
|
|
259
260
|
children: Table
|
|
260
|
-
}) : null, docs?.length === 0 && /*#__PURE__*/_jsx(NoListResults, {
|
|
261
|
+
}) : null, docs?.length === 0 && (NoResults ?? /*#__PURE__*/_jsx(NoListResults, {
|
|
261
262
|
Actions: hasCreatePermission && newDocumentURL && viewType !== 'trash' ? [isInDrawer ? /*#__PURE__*/_jsx(Button, {
|
|
262
263
|
el: "button",
|
|
263
264
|
onClick: () => openModal(createNewDrawerSlug),
|
|
@@ -276,7 +277,7 @@ export function DefaultListView(props) {
|
|
|
276
277
|
}) : i18n.t('general:noResultsDescription'),
|
|
277
278
|
title: viewType !== 'trash' ? i18n.t('general:noResultsFound') : undefined,
|
|
278
279
|
withMargin: true
|
|
279
|
-
}), AfterListTable, AfterList, docs?.length > 0 && !isGroupingBy && /*#__PURE__*/_jsx(PageControls, {
|
|
280
|
+
})), AfterListTable, AfterList, docs?.length > 0 && !isGroupingBy && /*#__PURE__*/_jsx(PageControls, {
|
|
280
281
|
AfterPageControls: smallBreak ? /*#__PURE__*/_jsxs("div", {
|
|
281
282
|
className: `${baseClass}__list-selection`,
|
|
282
283
|
children: [/*#__PURE__*/_jsx(ListSelection, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.client.js","names":["getTranslation","formatAdminURL","formatFilesize","React","Fragment","useEffect","useRef","useState","useBulkUpload","Button","ListControls","useListDrawerContext","useModal","NoListResults","PageControls","RenderCustomComponent","SelectMany","useStepNav","RelationshipProvider","ViewDescription","WhereBuilder","useControllableState","useConfig","DocumentSelectionProvider","useListQuery","useRouter","SelectionProvider","TableColumnsProvider","useTranslation","useWindowInfo","ListSelection","DocumentListSelection","HierarchyTable","CollectionListHeader","baseClass","DefaultListView","props","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","disableQueryPresets","enableRowSelections","hasCreatePermission","hasCreatePermissionFromProps","hasDeletePermission","hasTrashPermission","hierarchyData","listMenuItems","newDocumentURL","queryPreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","Table","InitialTable","viewType","allowCreate","createNewDrawerSlug","isInDrawer","onBulkSelect","undefined","config","routes","admin","adminRoute","serverURL","getEntityConfig","router","data","hasActiveFilters","isGroupingBy","query","hasWhereParam","Boolean","where","isWhereOpen","setIsWhereOpen","current","openModal","drawerSlug","bulkUploadDrawerSlug","setCollectionSlug","setOnSuccess","collectionConfig","labels","upload","isUploadCollection","isBulkUploadEnabled","bulkUpload","isTrashEnabled","trash","i18n","collectionLabel","plural","setStepNav","breakpoints","s","smallBreak","docs","useMemo","map","doc","filesize","openBulkUpload","useCallback","refresh","baseLabel","label","url","path","trashLabel","t","navItems","breadcrumbs","queryParam","parentFieldName","hierarchyBreadcrumbs","crumb","index","isLast","length","title","id","_jsxs","_jsx","className","totalDocs","description","CustomComponent","Fallback","hideFileInputOnCreate","onClick","enableQueryPresets","onWhereToggle","prev","collectionPluralLabel","fields","onClose","collectionData","childrenData","Object","fromEntries","entries","relatedDocumentsByCollection","slug","related","result","hierarchyLabel","parentId","relatedGroups","fieldName","hasMany","useAsTitle","Actions","el","singular","to","withMargin","AfterPageControls","showSelectAllAcrossPages","totalPages"],"sources":["../../../src/views/List/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { ListViewClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, formatFilesize } from 'payload/shared'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { ListControls } from '../../elements/ListControls/index.js'\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { useModal } from '../../elements/Modal/index.js'\nimport { NoListResults } from '../../elements/NoListResults/index.js'\nimport { PageControls } from '../../elements/PageControls/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js'\nimport { ViewDescription } from '../../elements/ViewDescription/index.js'\nimport { WhereBuilder } from '../../elements/WhereBuilder/index.js'\nimport { useControllableState } from '../../hooks/useControllableState.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { DocumentSelectionProvider } from '../../providers/DocumentSelection/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { SelectionProvider } from '../../providers/Selection/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListSelection } from '../../views/List/ListSelection/index.js'\nimport { DocumentListSelection } from '../HierarchyList/DocumentListSelection/index.js'\nimport { HierarchyTable } from '../HierarchyList/HierarchyTable/index.js'\nimport { CollectionListHeader } from './ListHeader/index.js'\nimport './index.css'\n\nconst baseClass = 'collection-list'\n\nexport function DefaultListView(props: ListViewClientProps) {\n const {\n AfterList,\n AfterListTable,\n beforeActions,\n BeforeList,\n BeforeListTable,\n collectionSlug,\n columnState,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission: hasCreatePermissionFromProps,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n listMenuItems,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table: InitialTable,\n viewType,\n } = props\n\n const [Table] = useControllableState(InitialTable)\n\n const { allowCreate, createNewDrawerSlug, isInDrawer, onBulkSelect } = useListDrawerContext()\n\n const hasCreatePermission =\n allowCreate !== undefined\n ? allowCreate && hasCreatePermissionFromProps\n : hasCreatePermissionFromProps\n\n const {\n config: {\n routes: { admin: adminRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const router = useRouter()\n\n const { data, hasActiveFilters, isGroupingBy, query } = useListQuery()\n\n const hasWhereParam = useRef(Boolean(query?.where))\n const [isWhereOpen, setIsWhereOpen] = useState(hasActiveFilters)\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n setIsWhereOpen(false)\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [query?.where])\n\n const { openModal } = useModal()\n const { drawerSlug: bulkUploadDrawerSlug, setCollectionSlug, setOnSuccess } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { labels, upload } = collectionConfig\n\n const isUploadCollection = Boolean(upload)\n\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const isTrashEnabled = Boolean(collectionConfig.trash)\n\n const { i18n } = useTranslation()\n\n const collectionLabel = getTranslation(labels?.plural, i18n)\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const docs = React.useMemo(() => {\n if (isUploadCollection) {\n return data.docs.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n } else {\n return data?.docs\n }\n }, [data?.docs, isUploadCollection])\n\n const openBulkUpload = React.useCallback(() => {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(() => router.refresh())\n }, [router, collectionSlug, bulkUploadDrawerSlug, openModal, setCollectionSlug, setOnSuccess])\n\n useEffect(() => {\n if (!isInDrawer) {\n const baseLabel = {\n label: collectionLabel,\n url:\n hierarchyData || (isTrashEnabled && viewType === 'trash')\n ? formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n })\n : undefined,\n }\n\n const trashLabel = {\n label: i18n.t('general:trash'),\n }\n\n let navItems = isTrashEnabled && viewType === 'trash' ? [baseLabel, trashLabel] : [baseLabel]\n\n // Add hierarchy breadcrumbs\n if (hierarchyData?.breadcrumbs) {\n const queryParam = hierarchyData.parentFieldName || 'parent'\n const hierarchyBreadcrumbs = hierarchyData.breadcrumbs.map((crumb, index) => {\n const isLast = index === hierarchyData.breadcrumbs.length - 1\n return {\n label: crumb.title,\n url: isLast\n ? undefined\n : formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}?${queryParam}=${crumb.id}`,\n }),\n }\n })\n navItems = [...navItems, ...hierarchyBreadcrumbs]\n }\n\n setStepNav(navItems)\n }\n }, [\n adminRoute,\n setStepNav,\n serverURL,\n labels,\n isInDrawer,\n isTrashEnabled,\n viewType,\n i18n,\n collectionSlug,\n hierarchyData,\n collectionLabel,\n ])\n\n return (\n <Fragment>\n <TableColumnsProvider collectionSlug={collectionSlug} columnState={columnState}>\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SelectionProvider docs={docs} totalDocs={data?.totalDocs}>\n {BeforeList}\n <CollectionListHeader\n collectionConfig={collectionConfig}\n Description={\n Description || collectionConfig?.admin?.description ? (\n <div className={`${baseClass}__sub-header`}>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={\n <ViewDescription\n collectionSlug={collectionSlug}\n description={collectionConfig?.admin?.description}\n />\n }\n />\n </div>\n ) : undefined\n }\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n hasCreatePermission={hasCreatePermission}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled && !upload.hideFileInputOnCreate}\n isTrashEnabled={isTrashEnabled}\n newDocumentURL={newDocumentURL}\n openBulkUpload={openBulkUpload}\n smallBreak={smallBreak}\n viewType={viewType}\n />\n <ListControls\n beforeActions={\n enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [...beforeActions, <SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions\n }\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n disableQueryPresets={\n collectionConfig?.enableQueryPresets !== true || disableQueryPresets\n }\n hasCreatePermission={hasCreatePermission && viewType !== 'trash'}\n isWhereOpen={isWhereOpen}\n listMenuItems={listMenuItems}\n newDocumentURL={newDocumentURL}\n onWhereToggle={() => setIsWhereOpen((prev) => !prev)}\n queryPreset={queryPreset}\n queryPresetPermissions={queryPresetPermissions}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n {isWhereOpen && (\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionSlug}\n fields={collectionConfig?.fields}\n onClose={() => setIsWhereOpen(false)}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n )}\n {BeforeListTable}\n {hierarchyData ? (\n <DocumentSelectionProvider\n collectionData={{\n [collectionSlug]: { docs: hierarchyData.childrenData.docs },\n ...Object.fromEntries(\n Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => [slug, { docs: related.result.docs }],\n ),\n ),\n }}\n >\n <HierarchyTable\n childrenData={hierarchyData.childrenData}\n collectionSlug={collectionSlug}\n hierarchyLabel={collectionLabel}\n key={hierarchyData.parentId}\n parentId={hierarchyData.parentId}\n relatedGroups={Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => ({\n collectionSlug: slug,\n data: related.result,\n fieldName: related.fieldName,\n hasMany: related.hasMany,\n label: related.label,\n }),\n )}\n useAsTitle={collectionConfig?.admin?.useAsTitle || 'id'}\n />\n <DocumentListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n />\n </DocumentSelectionProvider>\n ) : docs?.length > 0 ? (\n <RelationshipProvider>{Table}</RelationshipProvider>\n ) : null}\n {/* HierarchyTable handles its own empty state, skip for hierarchy views */}\n {docs?.length === 0 && (\n <NoListResults\n Actions={\n hasCreatePermission && newDocumentURL && viewType !== 'trash'\n ? [\n isInDrawer ? (\n <Button\n el=\"button\"\n key=\"create\"\n onClick={() => openModal(createNewDrawerSlug)}\n >\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ) : (\n <Button el=\"link\" key=\"create\" to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ),\n ]\n : []\n }\n description={\n viewType === 'trash'\n ? i18n.t('general:noTrashResults', {\n label: getTranslation(labels?.plural, i18n),\n })\n : i18n.t('general:noResultsDescription')\n }\n title={viewType !== 'trash' ? i18n.t('general:noResultsFound') : undefined}\n withMargin\n />\n )}\n {AfterListTable}\n {AfterList}\n {docs?.length > 0 && !isGroupingBy && (\n <PageControls\n AfterPageControls={\n smallBreak ? (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection\n collectionConfig={collectionConfig}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n label={collectionLabel}\n showSelectAllAcrossPages={!isGroupingBy}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n {enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [\n ...beforeActions,\n <SelectMany key=\"select-many\" onClick={onBulkSelect} />,\n ]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions}\n </div>\n </div>\n ) : null\n }\n collectionConfig={collectionConfig}\n />\n )}\n </SelectionProvider>\n </div>\n </TableColumnsProvider>\n {docs?.length > 0 && isGroupingBy && data.totalPages > 1 && (\n <PageControls collectionConfig={collectionConfig} />\n )}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.client.js","names":["getTranslation","formatAdminURL","formatFilesize","React","Fragment","useEffect","useRef","useState","useBulkUpload","Button","ListControls","useListDrawerContext","useModal","NoListResults","PageControls","RenderCustomComponent","SelectMany","useStepNav","RelationshipProvider","ViewDescription","WhereBuilder","useControllableState","useConfig","DocumentSelectionProvider","useListQuery","useRouter","SelectionProvider","TableColumnsProvider","useTranslation","useWindowInfo","ListSelection","DocumentListSelection","HierarchyTable","CollectionListHeader","baseClass","DefaultListView","props","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","disableQueryPresets","enableRowSelections","hasCreatePermission","hasCreatePermissionFromProps","hasDeletePermission","hasTrashPermission","hierarchyData","listMenuItems","newDocumentURL","NoResults","queryPreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","Table","InitialTable","viewType","allowCreate","createNewDrawerSlug","isInDrawer","onBulkSelect","undefined","config","routes","admin","adminRoute","serverURL","getEntityConfig","router","data","hasActiveFilters","isGroupingBy","query","hasWhereParam","Boolean","where","isWhereOpen","setIsWhereOpen","current","openModal","drawerSlug","bulkUploadDrawerSlug","setCollectionSlug","setOnSuccess","collectionConfig","labels","upload","isUploadCollection","isBulkUploadEnabled","bulkUpload","isTrashEnabled","trash","i18n","collectionLabel","plural","setStepNav","breakpoints","s","smallBreak","docs","useMemo","map","doc","filesize","openBulkUpload","useCallback","refresh","baseLabel","label","url","path","trashLabel","t","navItems","breadcrumbs","queryParam","parentFieldName","hierarchyBreadcrumbs","crumb","index","isLast","length","title","id","_jsxs","_jsx","className","totalDocs","description","CustomComponent","Fallback","hideFileInputOnCreate","onClick","enableQueryPresets","onWhereToggle","prev","collectionPluralLabel","fields","onClose","collectionData","childrenData","Object","fromEntries","entries","relatedDocumentsByCollection","slug","related","result","hierarchyLabel","parentId","relatedGroups","fieldName","hasMany","useAsTitle","Actions","el","singular","to","withMargin","AfterPageControls","showSelectAllAcrossPages","totalPages"],"sources":["../../../src/views/List/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { ListViewClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, formatFilesize } from 'payload/shared'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { ListControls } from '../../elements/ListControls/index.js'\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { useModal } from '../../elements/Modal/index.js'\nimport { NoListResults } from '../../elements/NoListResults/index.js'\nimport { PageControls } from '../../elements/PageControls/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js'\nimport { ViewDescription } from '../../elements/ViewDescription/index.js'\nimport { WhereBuilder } from '../../elements/WhereBuilder/index.js'\nimport { useControllableState } from '../../hooks/useControllableState.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { DocumentSelectionProvider } from '../../providers/DocumentSelection/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { SelectionProvider } from '../../providers/Selection/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListSelection } from '../../views/List/ListSelection/index.js'\nimport { DocumentListSelection } from '../HierarchyList/DocumentListSelection/index.js'\nimport { HierarchyTable } from '../HierarchyList/HierarchyTable/index.js'\nimport { CollectionListHeader } from './ListHeader/index.js'\nimport './index.css'\n\nconst baseClass = 'collection-list'\n\nexport function DefaultListView(props: ListViewClientProps) {\n const {\n AfterList,\n AfterListTable,\n beforeActions,\n BeforeList,\n BeforeListTable,\n collectionSlug,\n columnState,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission: hasCreatePermissionFromProps,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n listMenuItems,\n newDocumentURL,\n NoResults,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table: InitialTable,\n viewType,\n } = props\n\n const [Table] = useControllableState(InitialTable)\n\n const { allowCreate, createNewDrawerSlug, isInDrawer, onBulkSelect } = useListDrawerContext()\n\n const hasCreatePermission =\n allowCreate !== undefined\n ? allowCreate && hasCreatePermissionFromProps\n : hasCreatePermissionFromProps\n\n const {\n config: {\n routes: { admin: adminRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const router = useRouter()\n\n const { data, hasActiveFilters, isGroupingBy, query } = useListQuery()\n\n const hasWhereParam = useRef(Boolean(query?.where))\n const [isWhereOpen, setIsWhereOpen] = useState(hasActiveFilters)\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n setIsWhereOpen(false)\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [query?.where])\n\n const { openModal } = useModal()\n const { drawerSlug: bulkUploadDrawerSlug, setCollectionSlug, setOnSuccess } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { labels, upload } = collectionConfig\n\n const isUploadCollection = Boolean(upload)\n\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const isTrashEnabled = Boolean(collectionConfig.trash)\n\n const { i18n } = useTranslation()\n\n const collectionLabel = getTranslation(labels?.plural, i18n)\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const docs = React.useMemo(() => {\n if (isUploadCollection) {\n return data.docs.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n } else {\n return data?.docs\n }\n }, [data?.docs, isUploadCollection])\n\n const openBulkUpload = React.useCallback(() => {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(() => router.refresh())\n }, [router, collectionSlug, bulkUploadDrawerSlug, openModal, setCollectionSlug, setOnSuccess])\n\n useEffect(() => {\n if (!isInDrawer) {\n const baseLabel = {\n label: collectionLabel,\n url:\n hierarchyData || (isTrashEnabled && viewType === 'trash')\n ? formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n })\n : undefined,\n }\n\n const trashLabel = {\n label: i18n.t('general:trash'),\n }\n\n let navItems = isTrashEnabled && viewType === 'trash' ? [baseLabel, trashLabel] : [baseLabel]\n\n // Add hierarchy breadcrumbs\n if (hierarchyData?.breadcrumbs) {\n const queryParam = hierarchyData.parentFieldName || 'parent'\n const hierarchyBreadcrumbs = hierarchyData.breadcrumbs.map((crumb, index) => {\n const isLast = index === hierarchyData.breadcrumbs.length - 1\n return {\n label: crumb.title,\n url: isLast\n ? undefined\n : formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}?${queryParam}=${crumb.id}`,\n }),\n }\n })\n navItems = [...navItems, ...hierarchyBreadcrumbs]\n }\n\n setStepNav(navItems)\n }\n }, [\n adminRoute,\n setStepNav,\n serverURL,\n labels,\n isInDrawer,\n isTrashEnabled,\n viewType,\n i18n,\n collectionSlug,\n hierarchyData,\n collectionLabel,\n ])\n\n return (\n <Fragment>\n <TableColumnsProvider collectionSlug={collectionSlug} columnState={columnState}>\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SelectionProvider docs={docs} totalDocs={data?.totalDocs}>\n {BeforeList}\n <CollectionListHeader\n collectionConfig={collectionConfig}\n Description={\n Description || collectionConfig?.admin?.description ? (\n <div className={`${baseClass}__sub-header`}>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={\n <ViewDescription\n collectionSlug={collectionSlug}\n description={collectionConfig?.admin?.description}\n />\n }\n />\n </div>\n ) : undefined\n }\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n hasCreatePermission={hasCreatePermission}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled && !upload.hideFileInputOnCreate}\n isTrashEnabled={isTrashEnabled}\n newDocumentURL={newDocumentURL}\n openBulkUpload={openBulkUpload}\n smallBreak={smallBreak}\n viewType={viewType}\n />\n <ListControls\n beforeActions={\n enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [...beforeActions, <SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions\n }\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n disableQueryPresets={\n collectionConfig?.enableQueryPresets !== true || disableQueryPresets\n }\n hasCreatePermission={hasCreatePermission && viewType !== 'trash' && !isInDrawer}\n isWhereOpen={isWhereOpen}\n listMenuItems={listMenuItems}\n newDocumentURL={newDocumentURL}\n onWhereToggle={() => setIsWhereOpen((prev) => !prev)}\n queryPreset={queryPreset}\n queryPresetPermissions={queryPresetPermissions}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n {isWhereOpen && (\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionSlug}\n fields={collectionConfig?.fields}\n onClose={() => setIsWhereOpen(false)}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n )}\n {BeforeListTable}\n {hierarchyData ? (\n <DocumentSelectionProvider\n collectionData={{\n [collectionSlug]: { docs: hierarchyData.childrenData.docs },\n ...Object.fromEntries(\n Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => [slug, { docs: related.result.docs }],\n ),\n ),\n }}\n >\n <HierarchyTable\n childrenData={hierarchyData.childrenData}\n collectionSlug={collectionSlug}\n hierarchyLabel={collectionLabel}\n key={hierarchyData.parentId}\n parentId={hierarchyData.parentId}\n relatedGroups={Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => ({\n collectionSlug: slug,\n data: related.result,\n fieldName: related.fieldName,\n hasMany: related.hasMany,\n label: related.label,\n }),\n )}\n useAsTitle={collectionConfig?.admin?.useAsTitle || 'id'}\n />\n <DocumentListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n />\n </DocumentSelectionProvider>\n ) : docs?.length > 0 ? (\n <RelationshipProvider>{Table}</RelationshipProvider>\n ) : null}\n {/* HierarchyTable handles its own empty state, skip for hierarchy views */}\n {docs?.length === 0 && (\n NoResults ?? (\n <NoListResults\n Actions={\n hasCreatePermission && newDocumentURL && viewType !== 'trash'\n ? [\n isInDrawer ? (\n <Button\n el=\"button\"\n key=\"create\"\n onClick={() => openModal(createNewDrawerSlug)}\n >\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ) : (\n <Button el=\"link\" key=\"create\" to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ),\n ]\n : []\n }\n description={\n viewType === 'trash'\n ? i18n.t('general:noTrashResults', {\n label: getTranslation(labels?.plural, i18n),\n })\n : i18n.t('general:noResultsDescription')\n }\n title={viewType !== 'trash' ? i18n.t('general:noResultsFound') : undefined}\n withMargin\n />\n )\n )}\n {AfterListTable}\n {AfterList}\n {docs?.length > 0 && !isGroupingBy && (\n <PageControls\n AfterPageControls={\n smallBreak ? (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection\n collectionConfig={collectionConfig}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n label={collectionLabel}\n showSelectAllAcrossPages={!isGroupingBy}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n {enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [\n ...beforeActions,\n <SelectMany key=\"select-many\" onClick={onBulkSelect} />,\n ]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions}\n </div>\n </div>\n ) : null\n }\n collectionConfig={collectionConfig}\n />\n )}\n </SelectionProvider>\n </div>\n </TableColumnsProvider>\n {docs?.length > 0 && isGroupingBy && data.totalPages > 1 && (\n <PageControls collectionConfig={collectionConfig} />\n )}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,6 +20,21 @@
|
|
|
20
20
|
overflow: auto;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
+
.collection-list .table table td.cell--linked > :is(a, button) {
|
|
24
|
+
font-weight: var(--text-body-medium-strong-font-weight);
|
|
25
|
+
text-decoration-line: underline;
|
|
26
|
+
text-decoration-style: solid;
|
|
27
|
+
text-decoration-skip-ink: none;
|
|
28
|
+
text-decoration-color: var(--color-border);
|
|
29
|
+
text-decoration-thickness: auto;
|
|
30
|
+
text-underline-offset: 2px;
|
|
31
|
+
text-underline-position: from-font;
|
|
32
|
+
|
|
33
|
+
&:hover {
|
|
34
|
+
text-decoration-color: var(--color-text);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
23
38
|
.collection-list .table table [class^='cell']:not(.cell--linked) > p,
|
|
24
39
|
.collection-list .table table [class^='cell']:not(.cell--linked) > span,
|
|
25
40
|
.collection-list .table table [class^='cell']:not(.cell--linked) > a {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAKpB,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EAEvB,gBAAgB,EAGjB,MAAM,SAAS,CAAA;AAYhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AAsBvC,OAAO,aAAa,CAAA;AAEpB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,iBAAiB,CAAC,EACd,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAA;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,oBAAoB,CAAA;AAExB;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,kBAAkB,KACvB,OAAO,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAKpB,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EAEvB,gBAAgB,EAGjB,MAAM,SAAS,CAAA;AAYhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AAsBvC,OAAO,aAAa,CAAA;AAEpB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,iBAAiB,CAAC,EACd,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAA;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,oBAAoB,CAAA;AAExB;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,kBAAkB,KACvB,OAAO,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,CAueA,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAWjD,CAAA"}
|
package/dist/views/List/index.js
CHANGED
|
@@ -110,7 +110,13 @@ export const renderListView = async args => {
|
|
|
110
110
|
if (queryPreset?.where && !query.where) {
|
|
111
111
|
query.where = queryPreset.where;
|
|
112
112
|
}
|
|
113
|
-
|
|
113
|
+
// Prefer an explicit user preference (incl. an empty string, which means the
|
|
114
|
+
// user cleared grouping on a modified preset) over the preset's saved groupBy.
|
|
115
|
+
// Otherwise clearing groupBy while a preset is active reverts: the cleared URL
|
|
116
|
+
// re-syncs to `groupBy` absent and `?? queryPreset.groupBy` re-applies the
|
|
117
|
+
// preset's value. `??` keeps an empty-string preference and only falls through
|
|
118
|
+
// to the preset when the preference is truly unset.
|
|
119
|
+
query.groupBy = query.groupBy ?? collectionPreferences?.groupBy ?? queryPreset?.groupBy;
|
|
114
120
|
const columnPreference = query.columns ? transformColumnsToPreferences(query.columns) : queryPreset?.columns ?? collectionPreferences?.columns;
|
|
115
121
|
query.columns = transformColumnsToSearchParams(columnPreference);
|
|
116
122
|
query.page = isNumber(query?.page) ? Number(query.page) : 0;
|
|
@@ -195,7 +201,7 @@ export const renderListView = async args => {
|
|
|
195
201
|
// Hierarchy data for client-side rendering
|
|
196
202
|
let hierarchyData;
|
|
197
203
|
try {
|
|
198
|
-
if (
|
|
204
|
+
if (query.groupBy) {
|
|
199
205
|
;
|
|
200
206
|
({
|
|
201
207
|
columnState,
|
|
@@ -352,7 +358,8 @@ export const renderListView = async args => {
|
|
|
352
358
|
hasCreatePermission,
|
|
353
359
|
hasDeletePermission,
|
|
354
360
|
hasTrashPermission,
|
|
355
|
-
newDocumentURL
|
|
361
|
+
newDocumentURL,
|
|
362
|
+
viewType
|
|
356
363
|
},
|
|
357
364
|
collectionConfig,
|
|
358
365
|
description: staticDescription,
|
|
@@ -370,7 +377,7 @@ export const renderListView = async args => {
|
|
|
370
377
|
baseFilter: baseFilterConstraint,
|
|
371
378
|
collectionSlug,
|
|
372
379
|
columnState,
|
|
373
|
-
disableBulkDelete,
|
|
380
|
+
disableBulkDelete: collectionConfig.disableBulkDelete ?? disableBulkDelete,
|
|
374
381
|
disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,
|
|
375
382
|
disableQueryPresets,
|
|
376
383
|
enableRowSelections,
|