@payloadcms/ui 3.39.0-canary.7 → 3.39.0-internal.1c212c9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +0 -3
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +0 -10
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +3 -3
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/index.scss +83 -144
- package/dist/elements/Button/types.d.ts +1 -2
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
- package/dist/elements/ColumnSelector/index.js +2 -3
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.js +2 -2
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts +2 -50
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +82 -230
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.scss +27 -0
- package/dist/elements/DocumentControls/index.d.ts +2 -2
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +26 -25
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.scss +3 -13
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +3 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js +2 -5
- package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts +2 -25
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +13 -37
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.d.ts +0 -5
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +34 -68
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditMany/index.scss +16 -0
- package/dist/elements/Gutter/index.d.ts.map +1 -1
- package/dist/elements/Gutter/index.js +1 -1
- package/dist/elements/Gutter/index.js.map +1 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts.map +1 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.js +67 -93
- package/dist/elements/ListControls/ActiveQueryPreset/index.js.map +1 -1
- package/dist/elements/ListControls/ActiveQueryPreset/index.scss +5 -17
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +1 -2
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js +2 -5
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +15 -14
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +1 -1
- package/dist/elements/ListControls/types.d.ts +0 -1
- package/dist/elements/ListControls/types.d.ts.map +1 -1
- package/dist/elements/ListControls/types.js.map +1 -1
- package/dist/elements/ListControls/useQueryPresets.d.ts.map +1 -1
- package/dist/elements/ListControls/useQueryPresets.js +27 -19
- package/dist/elements/ListControls/useQueryPresets.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +22 -34
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListSelection/index.d.ts +7 -22
- package/dist/elements/ListSelection/index.d.ts.map +1 -1
- package/dist/elements/ListSelection/index.js +60 -58
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/ListSelection/index.scss +1 -10
- package/dist/elements/Pagination/index.js +2 -2
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +9 -25
- package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.scss +1 -12
- package/dist/elements/Popup/PopupDivider/index.scss +0 -1
- package/dist/elements/Popup/PopupGroupLabel/index.scss +1 -4
- package/dist/elements/Popup/PopupTrigger/index.js +26 -92
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.d.ts +0 -1
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +7 -18
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/Popup/index.scss +0 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +2 -5
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishMany/index.d.ts +1 -7
- package/dist/elements/PublishMany/index.d.ts.map +1 -1
- package/dist/elements/PublishMany/index.js +110 -75
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/PublishMany/index.scss +21 -0
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +0 -1
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.d.ts.map +1 -1
- package/dist/elements/RenderTitle/index.js +2 -5
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.d.ts +0 -23
- package/dist/elements/SearchFilter/index.d.ts.map +1 -1
- package/dist/elements/SearchFilter/index.js +7 -9
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SortColumn/index.scss +1 -1
- package/dist/elements/Status/index.d.ts.map +1 -1
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/StepNav/types.d.ts +1 -2
- package/dist/elements/StepNav/types.d.ts.map +1 -1
- package/dist/elements/StepNav/types.js.map +1 -1
- package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
- package/dist/elements/Table/OrderableTable.js +0 -3
- package/dist/elements/Table/OrderableTable.js.map +1 -1
- package/dist/elements/Table/index.scss +7 -33
- package/dist/elements/UnpublishMany/index.d.ts +1 -5
- package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/index.js +112 -79
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.scss +21 -0
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +16 -29
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/index.scss +15 -0
- package/dist/exports/client/index.d.ts +2 -17
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +23 -22
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/rsc/index.d.ts +0 -2
- package/dist/exports/rsc/index.d.ts.map +1 -1
- package/dist/exports/rsc/index.js +0 -2
- package/dist/exports/rsc/index.js.map +1 -1
- package/dist/exports/shared/index.d.ts +1 -1
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +3 -3
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js +5 -5
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Join/index.d.ts.map +1 -1
- package/dist/fields/Join/index.js +1 -3
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/Relationship/Input.d.ts.map +1 -1
- package/dist/fields/Relationship/Input.js +0 -1
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Upload/index.scss +4 -0
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +1 -1
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
- package/dist/forms/RowLabel/Context/index.js +18 -31
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
- package/dist/hooks/useUseAsTitle.js +5 -25
- package/dist/hooks/useUseAsTitle.js.map +1 -1
- package/dist/icons/Dots/index.scss +3 -3
- package/dist/icons/People/index.d.ts.map +1 -1
- package/dist/icons/People/index.js +5 -7
- package/dist/icons/People/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +7 -24
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +2 -22
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js +1 -2
- 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 +25 -33
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts.map +1 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/Preferences/index.d.ts +2 -3
- package/dist/providers/Preferences/index.d.ts.map +1 -1
- package/dist/providers/Preferences/index.js +0 -4
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +67 -99
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteCache/index.d.ts +0 -2
- package/dist/providers/RouteCache/index.d.ts.map +1 -1
- package/dist/providers/RouteCache/index.js +29 -38
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/Selection/index.d.ts +0 -1
- package/dist/providers/Selection/index.d.ts.map +1 -1
- package/dist/providers/Selection/index.js +5 -17
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState.d.ts +21 -0
- package/dist/providers/TableColumns/buildColumnState.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildColumnState.js +201 -0
- package/dist/providers/TableColumns/buildColumnState.js.map +1 -0
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts +20 -0
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +1 -0
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js +200 -0
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +1 -0
- package/dist/providers/TableColumns/filterFields.d.ts.map +1 -0
- package/dist/providers/TableColumns/filterFields.js.map +1 -0
- package/dist/providers/TableColumns/index.d.ts.map +1 -1
- package/dist/providers/TableColumns/index.js +0 -1
- package/dist/providers/TableColumns/index.js.map +1 -1
- package/dist/scss/app.scss +2 -6
- package/dist/scss/resets.scss +0 -2
- package/dist/styles.css +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.d.ts +3 -3
- package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
- package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
- package/dist/utilities/formatDocTitle/index.d.ts.map +1 -1
- package/dist/utilities/formatDocTitle/index.js.map +1 -1
- package/dist/utilities/renderTable.d.ts +3 -2
- package/dist/utilities/renderTable.d.ts.map +1 -1
- package/dist/utilities/renderTable.js +33 -52
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/views/Edit/Auth/index.d.ts.map +1 -1
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.d.ts.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.js +2 -5
- package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentTitle/index.js +2 -2
- package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +2 -2
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.d.ts +2 -13
- package/dist/views/List/ListHeader/index.d.ts.map +1 -1
- package/dist/views/List/ListHeader/index.js +113 -52
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/ListHeader/index.scss +77 -10
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +11 -7
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/index.scss +7 -0
- package/package.json +5 -5
- package/dist/elements/CheckboxPopup/index.d.ts +0 -17
- package/dist/elements/CheckboxPopup/index.d.ts.map +0 -1
- package/dist/elements/CheckboxPopup/index.js +0 -42
- package/dist/elements/CheckboxPopup/index.js.map +0 -1
- package/dist/elements/CheckboxPopup/index.scss +0 -19
- package/dist/elements/CloseModalButton/index.d.ts +0 -6
- package/dist/elements/CloseModalButton/index.d.ts.map +0 -1
- package/dist/elements/CloseModalButton/index.js +0 -27
- package/dist/elements/CloseModalButton/index.js.map +0 -1
- package/dist/elements/CloseModalButton/index.scss +0 -25
- package/dist/elements/DrawerActionHeader/index.d.ts +0 -12
- package/dist/elements/DrawerActionHeader/index.d.ts.map +0 -1
- package/dist/elements/DrawerActionHeader/index.js +0 -77
- package/dist/elements/DrawerActionHeader/index.js.map +0 -1
- package/dist/elements/DrawerActionHeader/index.scss +0 -24
- package/dist/elements/DrawerContentContainer/index.d.ts +0 -9
- package/dist/elements/DrawerContentContainer/index.d.ts.map +0 -1
- package/dist/elements/DrawerContentContainer/index.js +0 -14
- package/dist/elements/DrawerContentContainer/index.js.map +0 -1
- package/dist/elements/DrawerContentContainer/index.scss +0 -6
- package/dist/elements/FolderView/Breadcrumbs/index.d.ts +0 -19
- package/dist/elements/FolderView/Breadcrumbs/index.d.ts.map +0 -1
- package/dist/elements/FolderView/Breadcrumbs/index.js +0 -96
- package/dist/elements/FolderView/Breadcrumbs/index.js.map +0 -1
- package/dist/elements/FolderView/Breadcrumbs/index.scss +0 -56
- package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts +0 -6
- package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +0 -1
- package/dist/elements/FolderView/BrowseByFolderButton/index.js +0 -40
- package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +0 -1
- package/dist/elements/FolderView/BrowseByFolderButton/index.scss +0 -30
- package/dist/elements/FolderView/Cell/index.client.d.ts +0 -11
- package/dist/elements/FolderView/Cell/index.client.d.ts.map +0 -1
- package/dist/elements/FolderView/Cell/index.client.js +0 -84
- package/dist/elements/FolderView/Cell/index.client.js.map +0 -1
- package/dist/elements/FolderView/Cell/index.server.d.ts +0 -4
- package/dist/elements/FolderView/Cell/index.server.d.ts.map +0 -1
- package/dist/elements/FolderView/Cell/index.server.js +0 -13
- package/dist/elements/FolderView/Cell/index.server.js.map +0 -1
- package/dist/elements/FolderView/CollectionTypePill/index.d.ts +0 -4
- package/dist/elements/FolderView/CollectionTypePill/index.d.ts.map +0 -1
- package/dist/elements/FolderView/CollectionTypePill/index.js +0 -97
- package/dist/elements/FolderView/CollectionTypePill/index.js.map +0 -1
- package/dist/elements/FolderView/CollectionTypePill/index.scss +0 -16
- package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts +0 -3
- package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts.map +0 -1
- package/dist/elements/FolderView/ColoredFolderIcon/index.js +0 -9
- package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +0 -1
- package/dist/elements/FolderView/ColoredFolderIcon/index.scss +0 -5
- package/dist/elements/FolderView/CurrentFolderActions/index.d.ts +0 -7
- package/dist/elements/FolderView/CurrentFolderActions/index.d.ts.map +0 -1
- package/dist/elements/FolderView/CurrentFolderActions/index.js +0 -146
- package/dist/elements/FolderView/CurrentFolderActions/index.js.map +0 -1
- package/dist/elements/FolderView/DragOverlaySelection/index.d.ts +0 -12
- package/dist/elements/FolderView/DragOverlaySelection/index.d.ts.map +0 -1
- package/dist/elements/FolderView/DragOverlaySelection/index.js +0 -67
- package/dist/elements/FolderView/DragOverlaySelection/index.js.map +0 -1
- package/dist/elements/FolderView/DragOverlaySelection/index.scss +0 -35
- package/dist/elements/FolderView/DraggableTableRow/index.d.ts +0 -18
- package/dist/elements/FolderView/DraggableTableRow/index.d.ts.map +0 -1
- package/dist/elements/FolderView/DraggableTableRow/index.js +0 -64
- package/dist/elements/FolderView/DraggableTableRow/index.js.map +0 -1
- package/dist/elements/FolderView/DraggableTableRow/index.scss +0 -135
- package/dist/elements/FolderView/DraggableWithClick/index.d.ts +0 -15
- package/dist/elements/FolderView/DraggableWithClick/index.d.ts.map +0 -1
- package/dist/elements/FolderView/DraggableWithClick/index.js +0 -81
- package/dist/elements/FolderView/DraggableWithClick/index.js.map +0 -1
- package/dist/elements/FolderView/DraggableWithClick/index.scss +0 -5
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.d.ts +0 -10
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.d.ts.map +0 -1
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.js +0 -55
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.js.map +0 -1
- package/dist/elements/FolderView/Drawers/DrawerHeader/index.scss +0 -30
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts +0 -32
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts.map +0 -1
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +0 -493
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +0 -1
- package/dist/elements/FolderView/Drawers/MoveToFolder/index.scss +0 -26
- package/dist/elements/FolderView/Drawers/NewFolder/index.d.ts +0 -9
- package/dist/elements/FolderView/Drawers/NewFolder/index.d.ts.map +0 -1
- package/dist/elements/FolderView/Drawers/NewFolder/index.js +0 -157
- package/dist/elements/FolderView/Drawers/NewFolder/index.js.map +0 -1
- package/dist/elements/FolderView/Drawers/RenameFolder/index.d.ts +0 -13
- package/dist/elements/FolderView/Drawers/RenameFolder/index.d.ts.map +0 -1
- package/dist/elements/FolderView/Drawers/RenameFolder/index.js +0 -140
- package/dist/elements/FolderView/Drawers/RenameFolder/index.js.map +0 -1
- package/dist/elements/FolderView/Field/index.scss +0 -12
- package/dist/elements/FolderView/Field/index.server.d.ts +0 -4
- package/dist/elements/FolderView/Field/index.server.d.ts.map +0 -1
- package/dist/elements/FolderView/Field/index.server.js +0 -11
- package/dist/elements/FolderView/Field/index.server.js.map +0 -1
- package/dist/elements/FolderView/FolderFileCard/index.d.ts +0 -21
- package/dist/elements/FolderView/FolderFileCard/index.d.ts.map +0 -1
- package/dist/elements/FolderView/FolderFileCard/index.js +0 -94
- package/dist/elements/FolderView/FolderFileCard/index.js.map +0 -1
- package/dist/elements/FolderView/FolderFileCard/index.scss +0 -213
- package/dist/elements/FolderView/FolderFileTable/index.d.ts +0 -29
- package/dist/elements/FolderView/FolderFileTable/index.d.ts.map +0 -1
- package/dist/elements/FolderView/FolderFileTable/index.js +0 -189
- package/dist/elements/FolderView/FolderFileTable/index.js.map +0 -1
- package/dist/elements/FolderView/FolderFileTable/index.scss +0 -11
- package/dist/elements/FolderView/ItemCardGrid/index.d.ts +0 -22
- package/dist/elements/FolderView/ItemCardGrid/index.d.ts.map +0 -1
- package/dist/elements/FolderView/ItemCardGrid/index.js +0 -100
- package/dist/elements/FolderView/ItemCardGrid/index.js.map +0 -1
- package/dist/elements/FolderView/ItemCardGrid/index.scss +0 -16
- package/dist/elements/FolderView/MoveDocToFolder/index.d.ts +0 -34
- package/dist/elements/FolderView/MoveDocToFolder/index.d.ts.map +0 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.js +0 -287
- package/dist/elements/FolderView/MoveDocToFolder/index.js.map +0 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.scss +0 -12
- package/dist/elements/FolderView/SimpleTable/index.d.ts +0 -19
- package/dist/elements/FolderView/SimpleTable/index.d.ts.map +0 -1
- package/dist/elements/FolderView/SimpleTable/index.js +0 -95
- package/dist/elements/FolderView/SimpleTable/index.js.map +0 -1
- package/dist/elements/FolderView/SimpleTable/index.scss +0 -59
- package/dist/elements/FolderView/SortByPill/index.d.ts +0 -4
- package/dist/elements/FolderView/SortByPill/index.d.ts.map +0 -1
- package/dist/elements/FolderView/SortByPill/index.js +0 -108
- package/dist/elements/FolderView/SortByPill/index.js.map +0 -1
- package/dist/elements/FolderView/SortByPill/index.scss +0 -16
- package/dist/elements/FolderView/ToggleViewButtons/index.d.ts +0 -8
- package/dist/elements/FolderView/ToggleViewButtons/index.d.ts.map +0 -1
- package/dist/elements/FolderView/ToggleViewButtons/index.js +0 -31
- package/dist/elements/FolderView/ToggleViewButtons/index.js.map +0 -1
- package/dist/elements/FolderView/ToggleViewButtons/index.scss +0 -17
- package/dist/elements/ListFolderPills/index.d.ts +0 -9
- package/dist/elements/ListFolderPills/index.d.ts.map +0 -1
- package/dist/elements/ListFolderPills/index.js +0 -93
- package/dist/elements/ListFolderPills/index.js.map +0 -1
- package/dist/elements/ListFolderPills/index.scss +0 -7
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts +0 -2
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +0 -1
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +0 -98
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +0 -1
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.d.ts +0 -6
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.d.ts.map +0 -1
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +0 -39
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +0 -1
- package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts +0 -2
- package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts.map +0 -1
- package/dist/elements/ListHeader/DrawerTitleActions/index.js +0 -2
- package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +0 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +0 -15
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +0 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +0 -85
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +0 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.d.ts +0 -8
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.d.ts.map +0 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +0 -48
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +0 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts +0 -12
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts.map +0 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +0 -168
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +0 -1
- package/dist/elements/ListHeader/TitleActions/index.d.ts +0 -4
- package/dist/elements/ListHeader/TitleActions/index.d.ts.map +0 -1
- package/dist/elements/ListHeader/TitleActions/index.js +0 -4
- package/dist/elements/ListHeader/TitleActions/index.js.map +0 -1
- package/dist/elements/ListHeader/index.d.ts +0 -13
- package/dist/elements/ListHeader/index.d.ts.map +0 -1
- package/dist/elements/ListHeader/index.js +0 -29
- package/dist/elements/ListHeader/index.js.map +0 -1
- package/dist/elements/ListHeader/index.scss +0 -48
- package/dist/elements/NoListResults/index.d.ts +0 -9
- package/dist/elements/NoListResults/index.d.ts.map +0 -1
- package/dist/elements/NoListResults/index.js +0 -19
- package/dist/elements/NoListResults/index.js.map +0 -1
- package/dist/elements/NoListResults/index.scss +0 -20
- package/dist/elements/PublishMany/DrawerContent.d.ts +0 -10
- package/dist/elements/PublishMany/DrawerContent.d.ts.map +0 -1
- package/dist/elements/PublishMany/DrawerContent.js +0 -143
- package/dist/elements/PublishMany/DrawerContent.js.map +0 -1
- package/dist/elements/SearchBar/index.d.ts +0 -12
- package/dist/elements/SearchBar/index.d.ts.map +0 -1
- package/dist/elements/SearchBar/index.js +0 -26
- package/dist/elements/SearchBar/index.js.map +0 -1
- package/dist/elements/SearchBar/index.scss +0 -26
- package/dist/elements/UnpublishMany/DrawerContent.d.ts +0 -10
- package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +0 -1
- package/dist/elements/UnpublishMany/DrawerContent.js +0 -134
- package/dist/elements/UnpublishMany/DrawerContent.js.map +0 -1
- package/dist/hooks/useClickOutside.d.ts +0 -2
- package/dist/hooks/useClickOutside.d.ts.map +0 -1
- package/dist/hooks/useClickOutside.js +0 -20
- package/dist/hooks/useClickOutside.js.map +0 -1
- package/dist/icons/Document/index.d.ts +0 -4
- package/dist/icons/Document/index.d.ts.map +0 -1
- package/dist/icons/Document/index.js +0 -20
- package/dist/icons/Document/index.js.map +0 -1
- package/dist/icons/Document/index.scss +0 -6
- package/dist/icons/Folder/index.d.ts +0 -6
- package/dist/icons/Folder/index.d.ts.map +0 -1
- package/dist/icons/Folder/index.js +0 -20
- package/dist/icons/Folder/index.js.map +0 -1
- package/dist/icons/Folder/index.scss +0 -6
- package/dist/icons/GridView/index.d.ts +0 -4
- package/dist/icons/GridView/index.d.ts.map +0 -1
- package/dist/icons/GridView/index.js +0 -35
- package/dist/icons/GridView/index.js.map +0 -1
- package/dist/icons/GridView/index.scss +0 -3
- package/dist/icons/ListView/index.d.ts +0 -4
- package/dist/icons/ListView/index.d.ts.map +0 -1
- package/dist/icons/ListView/index.js +0 -20
- package/dist/icons/ListView/index.js.map +0 -1
- package/dist/icons/ListView/index.scss +0 -3
- package/dist/icons/MoveFolder/index.d.ts +0 -4
- package/dist/icons/MoveFolder/index.d.ts.map +0 -1
- package/dist/icons/MoveFolder/index.js +0 -39
- package/dist/icons/MoveFolder/index.js.map +0 -1
- package/dist/icons/MoveFolder/index.scss +0 -6
- package/dist/icons/ThreeDots/index.d.ts +0 -6
- package/dist/icons/ThreeDots/index.d.ts.map +0 -1
- package/dist/icons/ThreeDots/index.js +0 -12
- package/dist/icons/ThreeDots/index.js.map +0 -1
- package/dist/icons/ThreeDots/index.scss +0 -17
- package/dist/providers/ClickOutside/index.d.ts +0 -14
- package/dist/providers/ClickOutside/index.d.ts.map +0 -1
- package/dist/providers/ClickOutside/index.js +0 -39
- package/dist/providers/ClickOutside/index.js.map +0 -1
- package/dist/providers/DocumentTitle/context.d.ts +0 -2
- package/dist/providers/DocumentTitle/context.d.ts.map +0 -1
- package/dist/providers/DocumentTitle/context.js +0 -2
- package/dist/providers/DocumentTitle/context.js.map +0 -1
- package/dist/providers/DocumentTitle/index.d.ts +0 -10
- package/dist/providers/DocumentTitle/index.d.ts.map +0 -1
- package/dist/providers/DocumentTitle/index.js +0 -62
- package/dist/providers/DocumentTitle/index.js.map +0 -1
- package/dist/providers/Folders/index.d.ts +0 -119
- package/dist/providers/Folders/index.d.ts.map +0 -1
- package/dist/providers/Folders/index.js +0 -856
- package/dist/providers/Folders/index.js.map +0 -1
- package/dist/providers/Folders/selection.d.ts +0 -11
- package/dist/providers/Folders/selection.d.ts.map +0 -1
- package/dist/providers/Folders/selection.js +0 -38
- package/dist/providers/Folders/selection.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts +0 -12
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +0 -13
- package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/index.d.ts +0 -31
- package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/index.js +0 -143
- package/dist/providers/TableColumns/buildColumnState/index.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.d.ts +0 -8
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +0 -16
- package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +0 -18
- package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.js +0 -110
- package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.d.ts +0 -3
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +0 -20
- package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +0 -1
- package/dist/views/BrowseByFolder/index.d.ts +0 -8
- package/dist/views/BrowseByFolder/index.d.ts.map +0 -1
- package/dist/views/BrowseByFolder/index.js +0 -312
- package/dist/views/BrowseByFolder/index.js.map +0 -1
- package/dist/views/BrowseByFolder/index.scss +0 -174
- package/dist/views/CollectionFolder/ListSelection/index.d.ts +0 -7
- package/dist/views/CollectionFolder/ListSelection/index.d.ts.map +0 -1
- package/dist/views/CollectionFolder/ListSelection/index.js +0 -201
- package/dist/views/CollectionFolder/ListSelection/index.js.map +0 -1
- package/dist/views/CollectionFolder/index.d.ts +0 -5
- package/dist/views/CollectionFolder/index.d.ts.map +0 -1
- package/dist/views/CollectionFolder/index.js +0 -306
- package/dist/views/CollectionFolder/index.js.map +0 -1
- package/dist/views/CollectionFolder/index.scss +0 -162
- package/dist/views/List/ListSelection/index.d.ts +0 -10
- package/dist/views/List/ListSelection/index.d.ts.map +0 -1
- package/dist/views/List/ListSelection/index.js +0 -87
- package/dist/views/List/ListSelection/index.js.map +0 -1
- /package/dist/providers/TableColumns/{buildColumnState/filterFields.d.ts → filterFields.d.ts} +0 -0
- /package/dist/providers/TableColumns/{buildColumnState/filterFields.js → filterFields.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useRouter","extractID","formatAdminURL","formatFolderOrDocumentItem","qs","React","toast","useDrawerDepth","useConfig","useRouteTransition","useTranslation","getMetaSelection","getShiftSelection","groupItemIDsByRelation","Context","createContext","addItems","breadcrumbs","clearSelections","currentFolder","documents","filterItems","undefined","focusedRowIndex","folderCollectionConfig","folderCollectionSlug","folderFieldName","folderID","getSelectedItems","isDragging","lastSelectedIndex","moveToFolder","Promise","resolve","onItemClick","onItemKeyPress","removeItems","renameFolder","search","selectedIndexes","Set","setBreadcrumbs","setFocusedRowIndex","setFolderID","setIsDragging","sortAndUpdateState","sortDirection","sortOn","subfolders","visibleCollectionSlugs","filterOutItems","items","relationTo","searchLower","toLowerCase","filter","item","itemTitle","value","_folderOrDocumentTitle","itemRelationTo","includes","FolderProvider","allowMultiSelection","_breadcrumbsFromProps","children","collectionSlug","allDocumentsFromProps","filteredCollectionSlugs","folderCollectionSlugs","_folderIDFromProps","_searchFromProps","sort","subfoldersFromProps","config","getEntityConfig","folders","fieldName","routes","serverURL","drawerDepth","t","router","startRouteTransition","useState","collections","find","collection","slug","setSelectedIndexes","setLastSelectedIndex","setVisibleCollectionSlugs","activeFolderID","setActiveFolderID","allSubfolders","setAllSubfolders","setSubfolders","allDocuments","setAllDocuments","setDocuments","setSearch","baseFolderPath","admin","browseByFolder","setSortDirection","startsWith","setSortOn","replace","lastClickTime","useRef","totalCount","length","formatFolderURL","useCallback","args","newFolderID","params","sortBy","adminRoute","path","stringify","addQueryPrefix","getFolderData","_search","searchFilter","trim","query","folderDataReq","fetch","api","credentials","headers","status","folderDataRes","json","setNewActiveFolderID","toFolderID","push","Array","from","reduce","acc","index","navigateAfterSelection","docID","event","code","ctrlKey","metaKey","shiftKey","isShiftPressed","isCtrlPressed","newSelectedIndexes","preventDefault","nextIndex","Math","min","selectFromIndex","selectToIndex","prevIndex","max","size","_","i","currentSelection","toggleIndex","doubleClicked","type","has","now","Date","current","_relationTo","isArray","filteredDocuments","filteredSubfolders","res","sortItems","documentsToSort","sortDirectionArg","sortOnArg","subfoldersToSort","sortedDocuments","sortedSubfolders","sortDirectionToUse","sortOnToUse","newURL","a","b","aValue","bValue","localeCompare","separateItems","separatedItems","prevDocs","itemKey","some","prevFolders","sortedAllDocuments","sortedAllSubfolders","itemsToMove","movingCurrentFolder","id","req","body","JSON","method","error","updatedDoc","folderRes","prevBreadcrumbs","map","breadcrumb","movingToCurrentFolder","successfullyMovedFolderItems","successfullyMovedDocumentItems","ids","Object","entries","collectionConfig","limit","where","in","docs","formattedItems","doc","isUpload","Boolean","upload","useAsTitle","console","updatedFolderID","newName","name","folder","_jsx","useFolder","context","use","Error"],"sources":["../../../src/providers/Folders/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, CollectionSlug, Document } from 'payload'\nimport type { FolderBreadcrumb, FolderOrDocument, GetFolderDataResult } from 'payload/shared'\n\nimport { useRouter } from 'next/navigation.js'\nimport { extractID, formatAdminURL, formatFolderOrDocumentItem } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\nimport { toast } from 'sonner'\n\nimport { useDrawerDepth } from '../../elements/Drawer/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useRouteTransition } from '../RouteTransition/index.js'\nimport { useTranslation } from '../Translation/index.js'\nimport { getMetaSelection, getShiftSelection, groupItemIDsByRelation } from './selection.js'\ntype SortKeys = keyof Pick<\n FolderOrDocument['value'],\n '_folderOrDocumentTitle' | 'createdAt' | 'updatedAt'\n>\ntype SortDirection = 'asc' | 'desc'\nexport type FileCardData = {\n filename: string\n id: number | string\n mimeType: string\n name: string\n url: string\n}\n\nexport type FolderContextValue = {\n addItems: (args: FolderOrDocument[]) => void\n breadcrumbs?: FolderBreadcrumb[]\n clearSelections: () => void\n currentFolder?: FolderOrDocument | null\n documents?: FolderOrDocument[]\n filterItems: (args: { relationTo?: CollectionSlug[]; search?: string }) => Promise<void>\n focusedRowIndex: number\n folderCollectionConfig: ClientCollectionConfig\n folderCollectionSlug: string\n folderFieldName: string\n folderID?: number | string\n getSelectedItems?: () => FolderOrDocument[]\n isDragging: boolean\n lastSelectedIndex: null | number\n moveToFolder: (args: {\n itemsToMove: FolderOrDocument[]\n toFolderID?: number | string\n }) => Promise<void>\n onItemClick: (args: {\n event: React.MouseEvent\n index: number\n item: FolderOrDocument\n }) => Promise<void> | void\n onItemKeyPress: (args: {\n event: React.KeyboardEvent\n index: number\n item: FolderOrDocument\n }) => Promise<void> | void\n removeItems: (args: FolderOrDocument[]) => void\n renameFolder: (args: { folderID: number | string; newName: string }) => void\n search: string\n selectedIndexes: Set<number>\n setBreadcrumbs: React.Dispatch<React.SetStateAction<FolderBreadcrumb[]>>\n setFocusedRowIndex: React.Dispatch<React.SetStateAction<number>>\n setFolderID: (args: { folderID: number | string }) => Promise<void> | void\n setIsDragging: React.Dispatch<React.SetStateAction<boolean>>\n sortAndUpdateState: (args: {\n documentsToSort?: FolderOrDocument[]\n sortDirection?: 'asc' | 'desc'\n sortOn?: SortKeys\n subfoldersToSort?: FolderOrDocument[]\n }) => void\n sortDirection: SortDirection\n sortOn: SortKeys\n subfolders?: FolderOrDocument[]\n visibleCollectionSlugs: CollectionSlug[]\n}\n\nconst Context = React.createContext<FolderContextValue>({\n addItems: () => {},\n breadcrumbs: [],\n clearSelections: () => {},\n currentFolder: null,\n documents: [],\n filterItems: () => undefined,\n focusedRowIndex: -1,\n folderCollectionConfig: null,\n folderCollectionSlug: '',\n folderFieldName: 'folder',\n folderID: undefined,\n getSelectedItems: () => [],\n isDragging: false,\n lastSelectedIndex: null,\n moveToFolder: () => Promise.resolve(undefined),\n onItemClick: () => undefined,\n onItemKeyPress: () => undefined,\n removeItems: () => undefined,\n renameFolder: () => undefined,\n search: '',\n selectedIndexes: new Set(),\n setBreadcrumbs: () => {},\n setFocusedRowIndex: () => -1,\n setFolderID: () => null,\n setIsDragging: () => false,\n sortAndUpdateState: () => undefined,\n sortDirection: 'asc',\n sortOn: '_folderOrDocumentTitle',\n subfolders: [],\n visibleCollectionSlugs: [],\n})\n\nfunction filterOutItems({\n items,\n relationTo,\n search,\n}: {\n items: FolderOrDocument[]\n relationTo?: CollectionSlug[]\n search?: string\n}) {\n if (typeof search !== 'string' && relationTo === undefined) {\n return items\n }\n\n const searchLower = (search || '').toLowerCase()\n\n return items.filter((item) => {\n const itemTitle = item.value._folderOrDocumentTitle.toLowerCase()\n const itemRelationTo = item.relationTo\n\n return (\n (relationTo ? relationTo.includes(itemRelationTo) : true) &&\n (!searchLower || itemTitle.includes(searchLower))\n )\n })\n}\n\nexport type FolderProviderProps = {\n readonly allowMultiSelection?: boolean\n /**\n * Breadcrumbs for the current folder\n */\n readonly breadcrumbs?: FolderBreadcrumb[]\n /**\n * Children to render inside the provider\n */\n readonly children: React.ReactNode\n /**\n * Required for collection-folder views\n */\n readonly collectionSlug?: CollectionSlug\n /**\n * All documents in the current folder\n */\n readonly documents: FolderOrDocument[]\n /**\n * The collection slugs that are being viewed\n */\n readonly filteredCollectionSlugs?: CollectionSlug[]\n /**\n * Folder enabled collection slugs\n */\n readonly folderCollectionSlugs: CollectionSlug[]\n /**\n * The ID of the current folder\n */\n readonly folderID?: number | string\n /**\n * The intial search query\n */\n readonly search?: string\n /**\n * The sort order of the documents\n *\n * @example\n * `name` for descending\n * `-name` for ascending\n */\n readonly sort?: `-${SortKeys}` | SortKeys\n /**\n * All subfolders in the current folder\n */\n readonly subfolders: FolderOrDocument[]\n}\nexport function FolderProvider({\n allowMultiSelection = true,\n breadcrumbs: _breadcrumbsFromProps = [],\n children,\n collectionSlug,\n documents: allDocumentsFromProps = [],\n filteredCollectionSlugs,\n folderCollectionSlugs = [],\n folderID: _folderIDFromProps = undefined,\n search: _searchFromProps,\n sort,\n subfolders: subfoldersFromProps = [],\n}: FolderProviderProps) {\n const { config, getEntityConfig } = useConfig()\n const folderFieldName = config.folders.fieldName\n const { routes, serverURL } = config\n const drawerDepth = useDrawerDepth()\n const { t } = useTranslation()\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n\n const [folderCollectionConfig] = React.useState(() =>\n config.collections.find((collection) => collection.slug === config.folders.slug),\n )\n const folderCollectionSlug = folderCollectionConfig.slug\n\n const [isDragging, setIsDragging] = React.useState(false)\n const [selectedIndexes, setSelectedIndexes] = React.useState<Set<number>>(() => new Set())\n const [focusedRowIndex, setFocusedRowIndex] = React.useState(-1)\n const [lastSelectedIndex, setLastSelectedIndex] = React.useState<null | number>(null)\n const [visibleCollectionSlugs, setVisibleCollectionSlugs] = React.useState<CollectionSlug[]>(\n filteredCollectionSlugs || [...folderCollectionSlugs, folderCollectionSlug],\n )\n const [activeFolderID, setActiveFolderID] =\n React.useState<FolderContextValue['folderID']>(_folderIDFromProps)\n const [breadcrumbs, setBreadcrumbs] =\n React.useState<FolderContextValue['breadcrumbs']>(_breadcrumbsFromProps)\n const [allSubfolders, setAllSubfolders] = React.useState<FolderOrDocument[]>(subfoldersFromProps)\n const [subfolders, setSubfolders] = React.useState<FolderContextValue['subfolders']>(() => {\n return filterOutItems({\n items: allSubfolders,\n relationTo: visibleCollectionSlugs.includes(folderCollectionSlug)\n ? [folderCollectionSlug]\n : [],\n search: _searchFromProps,\n })\n })\n const [allDocuments, setAllDocuments] = React.useState<FolderOrDocument[]>(allDocumentsFromProps)\n const [documents, setDocuments] = React.useState<FolderContextValue['documents']>(() =>\n filterOutItems({\n items: allDocuments,\n relationTo: visibleCollectionSlugs,\n search: _searchFromProps,\n }),\n )\n const [search, setSearch] = React.useState<string | undefined>(_searchFromProps)\n const [baseFolderPath] = React.useState<`/${string}`>(() => {\n if (collectionSlug) {\n return `/collections/${collectionSlug}/${folderCollectionSlug}`\n } else {\n return config.admin.routes.browseByFolder\n }\n })\n const [sortDirection, setSortDirection] = React.useState<SortDirection>(() => {\n if (sort) {\n return sort.startsWith('-') ? 'desc' : 'asc'\n }\n return 'asc'\n })\n const [sortOn, setSortOn] = React.useState<SortKeys>(() => {\n if (sort) {\n return sort.replace(/^-/, '') as SortKeys\n }\n return '_folderOrDocumentTitle'\n })\n\n const lastClickTime = React.useRef<null | number>(null)\n const totalCount = subfolders.length + documents.length\n\n const formatFolderURL = React.useCallback(\n (args: {\n folderID?: number | string\n relationTo?: string[]\n search?: string\n sortBy?: SortKeys\n sortDirection?: SortDirection\n }) => {\n const newFolderID = 'folderID' in args ? args.folderID : activeFolderID\n const params = {\n relationTo:\n 'relationTo' in args\n ? args.relationTo\n : collectionSlug\n ? undefined\n : visibleCollectionSlugs,\n search: 'search' in args ? args.search : search,\n sortBy: 'sortBy' in args ? args.sortBy : sortOn,\n sortDirection: 'sortDirection' in args ? args.sortDirection : sortDirection,\n }\n\n return formatAdminURL({\n adminRoute: config.routes.admin,\n path: `${baseFolderPath}${newFolderID ? `/${newFolderID}` : ''}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`,\n })\n },\n [\n activeFolderID,\n baseFolderPath,\n collectionSlug,\n config.routes.admin,\n search,\n sortDirection,\n sortOn,\n visibleCollectionSlugs,\n ],\n )\n\n const clearSelections = React.useCallback(() => {\n setFocusedRowIndex(-1)\n setSelectedIndexes(new Set())\n setLastSelectedIndex(undefined)\n }, [])\n\n /**\n * Used to populate drawer data.\n *\n * This is used when the user navigates to a folder.\n */\n const getFolderData = React.useCallback(\n async ({ folderID, search: _search = undefined }): Promise<GetFolderDataResult> => {\n // if folderID is not set, we want to search all documents\n const searchFilter = !folderID\n ? ((typeof _search === 'string' ? _search : search) || '').trim()\n : undefined\n const query = qs.stringify(\n {\n collectionSlug,\n folderID,\n search: searchFilter,\n },\n { addQueryPrefix: true },\n )\n\n const folderDataReq = await fetch(\n `${serverURL}${routes.api}/${folderCollectionSlug}/populate-folder-data${query}`,\n {\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n },\n },\n )\n\n if (folderDataReq.status === 200) {\n const folderDataRes: GetFolderDataResult = await folderDataReq.json()\n setAllSubfolders(folderDataRes.subfolders || [])\n setAllDocuments(folderDataRes.documents || [])\n return folderDataRes\n } else {\n return {\n breadcrumbs: [],\n documents: [],\n subfolders: [],\n }\n }\n },\n [folderCollectionSlug, search, routes.api, serverURL, collectionSlug],\n )\n\n const setNewActiveFolderID: FolderContextValue['setFolderID'] = React.useCallback(\n async ({ folderID: toFolderID }) => {\n clearSelections()\n if (drawerDepth === 1) {\n // not in a drawer (default is 1)\n startRouteTransition(() =>\n router.push(\n formatFolderURL({\n folderID: toFolderID,\n }),\n ),\n )\n } else {\n const folderDataRes = await getFolderData({ folderID: toFolderID })\n setBreadcrumbs(folderDataRes?.breadcrumbs || [])\n setSubfolders(folderDataRes?.subfolders || [])\n setDocuments(folderDataRes?.documents || [])\n setActiveFolderID(toFolderID)\n }\n },\n [clearSelections, drawerDepth, startRouteTransition, router, formatFolderURL, getFolderData],\n )\n\n const getSelectedItems = React.useCallback(() => {\n return Array.from(selectedIndexes).reduce((acc, index) => {\n const item = [...subfolders, ...documents][index]\n if (item) {\n acc.push(item)\n }\n return acc\n }, [])\n }, [documents, selectedIndexes, subfolders])\n\n const navigateAfterSelection = React.useCallback(\n async ({ collectionSlug, docID }: { collectionSlug: string; docID: number | string }) => {\n if (collectionSlug === folderCollectionSlug) {\n await setNewActiveFolderID({ folderID: docID })\n } else if (collectionSlug) {\n router.push(\n formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionSlug}/${docID}`,\n }),\n )\n }\n },\n [setNewActiveFolderID, folderCollectionSlug, router, config.routes.admin],\n )\n\n const onItemKeyPress: FolderContextValue['onItemKeyPress'] = React.useCallback(\n async ({ event, index, item }) => {\n const { code, ctrlKey, metaKey, shiftKey } = event\n const isShiftPressed = shiftKey\n const isCtrlPressed = ctrlKey || metaKey\n let newSelectedIndexes: Set<number> = selectedIndexes\n\n switch (code) {\n case 'ArrowDown': {\n event.preventDefault()\n const nextIndex = Math.min(index + 1, totalCount - 1)\n setFocusedRowIndex(nextIndex)\n\n if (isCtrlPressed) {\n break\n }\n\n if (allowMultiSelection && isShiftPressed) {\n newSelectedIndexes = getShiftSelection({\n selectFromIndex: Math.min(lastSelectedIndex, totalCount),\n selectToIndex: Math.min(nextIndex, totalCount),\n })\n } else {\n setLastSelectedIndex(nextIndex)\n newSelectedIndexes = new Set([nextIndex])\n }\n break\n }\n case 'ArrowUp': {\n event.preventDefault()\n const prevIndex = Math.max(index - 1, 0)\n setFocusedRowIndex(prevIndex)\n\n if (isCtrlPressed) {\n break\n }\n\n if (allowMultiSelection && isShiftPressed) {\n newSelectedIndexes = getShiftSelection({\n selectFromIndex: lastSelectedIndex,\n selectToIndex: prevIndex,\n })\n } else {\n setLastSelectedIndex(prevIndex)\n newSelectedIndexes = new Set([prevIndex])\n }\n break\n }\n case 'Enter': {\n if (selectedIndexes.size === 1) {\n newSelectedIndexes = new Set([])\n setFocusedRowIndex(undefined)\n }\n break\n }\n case 'Escape': {\n setFocusedRowIndex(undefined)\n setSelectedIndexes(new Set([]))\n newSelectedIndexes = new Set([])\n break\n }\n case 'KeyA': {\n if (allowMultiSelection && isCtrlPressed) {\n event.preventDefault()\n setFocusedRowIndex(totalCount - 1)\n newSelectedIndexes = new Set(Array.from({ length: totalCount }, (_, i) => i))\n }\n break\n }\n case 'Space': {\n if (allowMultiSelection && isShiftPressed) {\n event.preventDefault()\n newSelectedIndexes = getMetaSelection({\n currentSelection: newSelectedIndexes,\n toggleIndex: index,\n })\n setLastSelectedIndex(index)\n } else {\n event.preventDefault()\n newSelectedIndexes = new Set([index])\n setLastSelectedIndex(index)\n }\n break\n }\n case 'Tab': {\n if (allowMultiSelection && isShiftPressed) {\n const prevIndex = index - 1\n if (prevIndex < 0 && newSelectedIndexes.size > 0) {\n setFocusedRowIndex(prevIndex)\n }\n } else {\n const nextIndex = index + 1\n if (nextIndex === totalCount && newSelectedIndexes.size > 0) {\n setFocusedRowIndex(totalCount - 1)\n }\n }\n break\n }\n }\n\n setSelectedIndexes(newSelectedIndexes)\n if (selectedIndexes.size === 1 && code === 'Enter') {\n await navigateAfterSelection({\n collectionSlug: item.relationTo,\n docID: extractID(item.value),\n })\n }\n },\n [allowMultiSelection, lastSelectedIndex, navigateAfterSelection, selectedIndexes, totalCount],\n )\n\n const onItemClick: FolderContextValue['onItemClick'] = React.useCallback(\n async ({ event, index, item }) => {\n let doubleClicked: boolean = false\n const isCtrlPressed = event.ctrlKey || event.metaKey\n const isShiftPressed = event.shiftKey\n let newSelectedIndexes = new Set(selectedIndexes)\n\n if (allowMultiSelection && isCtrlPressed) {\n newSelectedIndexes = getMetaSelection({\n currentSelection: newSelectedIndexes,\n toggleIndex: index,\n })\n } else if (allowMultiSelection && isShiftPressed && lastSelectedIndex !== undefined) {\n newSelectedIndexes = getShiftSelection({\n selectFromIndex: lastSelectedIndex,\n selectToIndex: index,\n })\n } else if (allowMultiSelection && event.type === 'pointermove') {\n // on drag start of an unselected item\n if (!selectedIndexes.has(index)) {\n newSelectedIndexes = new Set([index])\n }\n setLastSelectedIndex(index)\n } else {\n // Normal click - select single item\n newSelectedIndexes = new Set([index])\n const now = Date.now()\n doubleClicked = now - lastClickTime.current < 400 && lastSelectedIndex === index\n lastClickTime.current = now\n setLastSelectedIndex(index)\n }\n\n if (newSelectedIndexes.size === 0) {\n setFocusedRowIndex(undefined)\n } else {\n setFocusedRowIndex(index)\n }\n\n setSelectedIndexes(newSelectedIndexes)\n if (doubleClicked) {\n await navigateAfterSelection({\n collectionSlug: item.relationTo,\n docID: extractID(item.value),\n })\n }\n },\n [selectedIndexes, lastSelectedIndex, allowMultiSelection, navigateAfterSelection],\n )\n\n const filterItems: FolderContextValue['filterItems'] = React.useCallback(\n async ({ relationTo: _relationTo, search: _search }) => {\n const relationTo = Array.isArray(_relationTo) ? _relationTo : visibleCollectionSlugs\n const searchFilter = ((typeof _search === 'string' ? _search : search) || '').trim()\n\n let filteredDocuments: FolderOrDocument[] = allDocuments\n let filteredSubfolders: FolderOrDocument[] = allSubfolders\n\n if (collectionSlug && !activeFolderID && _search !== search) {\n // this allows us to search all documents in the collection when we are not in a folder and in the folder-collection view\n const res = await getFolderData({\n folderID: activeFolderID,\n search: searchFilter,\n })\n filteredDocuments = filterOutItems({\n items: res.documents,\n relationTo,\n search: searchFilter,\n })\n filteredSubfolders = filterOutItems({\n items: res.subfolders,\n relationTo: [folderCollectionSlug],\n search: searchFilter,\n })\n } else {\n filteredDocuments = filterOutItems({\n items: allDocuments,\n relationTo,\n search: searchFilter,\n })\n filteredSubfolders = filterOutItems({\n items: allSubfolders,\n relationTo: relationTo.includes(folderCollectionSlug) ? [folderCollectionSlug] : [],\n search: searchFilter,\n })\n }\n\n setDocuments(filteredDocuments)\n setSubfolders(filteredSubfolders)\n setSearch(searchFilter)\n setVisibleCollectionSlugs(relationTo)\n\n if (drawerDepth === 1) {\n router.replace(\n formatFolderURL({\n relationTo,\n search: searchFilter || undefined,\n }),\n )\n }\n },\n [\n collectionSlug,\n visibleCollectionSlugs,\n search,\n activeFolderID,\n allDocuments,\n allSubfolders,\n folderCollectionSlug,\n drawerDepth,\n getFolderData,\n router,\n formatFolderURL,\n ],\n )\n\n const sortItems = React.useCallback(\n ({\n documentsToSort,\n sortDirection: sortDirectionArg,\n sortOn: sortOnArg,\n subfoldersToSort,\n }: Parameters<FolderContextValue['sortAndUpdateState']>[0]): {\n newURL?: string\n sortedDocuments?: FolderOrDocument[]\n sortedSubfolders?: FolderOrDocument[]\n } => {\n let sortedDocuments: FolderOrDocument[] | undefined\n let sortedSubfolders: FolderOrDocument[] | undefined\n const sortDirectionToUse = sortDirectionArg || sortDirection\n const sortOnToUse = sortOnArg || sortOn\n\n if (sortOnArg) {\n setSortOn(sortOnArg)\n }\n\n if (sortDirectionArg) {\n setSortDirection(sortDirectionArg)\n }\n\n const newURL = formatFolderURL({\n sortBy: sortOnArg || sortOn,\n sortDirection: sortDirectionArg || sortDirection,\n })\n\n if (documentsToSort) {\n sortedDocuments = [...documentsToSort].sort((a, b) => {\n const aValue = a.value[sortOnToUse]\n const bValue = b.value[sortOnToUse]\n\n if (aValue == null && bValue == null) {\n return 0\n }\n if (aValue == null) {\n return sortDirectionToUse === 'asc' ? 1 : -1\n }\n if (bValue == null) {\n return sortDirectionToUse === 'asc' ? -1 : 1\n }\n\n if (typeof aValue === 'string' && typeof bValue === 'string') {\n return sortDirectionToUse === 'asc'\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue)\n }\n\n return 0\n })\n }\n\n if (subfoldersToSort) {\n sortedSubfolders = [...subfoldersToSort].sort((a, b) => {\n const aValue = a.value[sortOnToUse]\n const bValue = b.value[sortOnToUse]\n\n if (aValue == null && bValue == null) {\n return 0\n }\n if (aValue == null) {\n return sortDirectionToUse === 'asc' ? 1 : -1\n }\n if (bValue == null) {\n return sortDirectionToUse === 'asc' ? -1 : 1\n }\n\n if (typeof aValue === 'string' && typeof bValue === 'string') {\n return sortDirectionToUse === 'asc'\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue)\n }\n\n return 0\n })\n }\n\n return {\n newURL,\n sortedDocuments,\n sortedSubfolders,\n }\n },\n [formatFolderURL, sortDirection, sortOn],\n )\n\n const sortAndUpdateState: FolderContextValue['sortAndUpdateState'] = React.useCallback(\n ({ documentsToSort, sortDirection: sortDirectionArg, sortOn: sortOnArg, subfoldersToSort }) => {\n const { newURL, sortedDocuments, sortedSubfolders } = sortItems({\n documentsToSort,\n sortDirection: sortDirectionArg,\n sortOn: sortOnArg,\n subfoldersToSort,\n })\n\n if (sortedDocuments) {\n setDocuments(sortedDocuments)\n }\n if (sortedSubfolders) {\n setSubfolders(sortedSubfolders)\n }\n\n if (drawerDepth === 1) {\n // not in a drawer (default is 1)\n startRouteTransition(() => {\n router.replace(newURL)\n })\n }\n },\n [drawerDepth, router, sortItems, startRouteTransition],\n )\n\n const separateItems = React.useCallback(\n (\n items: FolderOrDocument[],\n ): {\n documents: FolderOrDocument[]\n folders: FolderOrDocument[]\n } => {\n return items.reduce(\n (acc, item) => {\n if (item.relationTo === folderCollectionSlug) {\n acc.folders.push(item)\n } else {\n acc.documents.push(item)\n }\n return acc\n },\n { documents: [] as FolderOrDocument[], folders: [] as FolderOrDocument[] },\n )\n },\n [folderCollectionSlug],\n )\n\n /**\n * Used to remove items from the current state.\n *\n * Does NOT handle the request to the server.\n * Useful when a document is deleted and it needs to be removed\n * from the current state.\n */\n const removeItems: FolderContextValue['removeItems'] = React.useCallback(\n (items) => {\n if (!items.length) {\n return\n }\n\n const separatedItems = separateItems(items)\n\n if (separatedItems.documents.length) {\n setDocuments((prevDocs) => {\n return prevDocs.filter(\n ({ itemKey }) => !separatedItems.documents.some((item) => item.itemKey === itemKey),\n )\n })\n }\n\n if (separatedItems.folders.length) {\n setSubfolders((prevFolders) => {\n return prevFolders.filter(\n ({ itemKey }) => !separatedItems.folders.some((item) => item.itemKey === itemKey),\n )\n })\n }\n\n clearSelections()\n },\n [clearSelections, separateItems, setDocuments, setSubfolders],\n )\n\n /**\n * Used to add items to the current state.\n *\n * Does NOT handle the request to the server.\n * Used when a document needs to be added to the current state.\n */\n const addItems = React.useCallback(\n (items: FolderOrDocument[]) => {\n if (!items.length) {\n return\n }\n\n const separatedItems = separateItems(items)\n\n let documentsToSort = undefined\n let subfoldersToSort = undefined\n\n if (separatedItems.documents.length) {\n documentsToSort = [...documents, ...separatedItems.documents]\n }\n\n if (separatedItems.folders.length) {\n subfoldersToSort = [...subfolders, ...separatedItems.folders]\n }\n\n const { sortedDocuments, sortedSubfolders } = sortItems({\n documentsToSort,\n subfoldersToSort,\n })\n\n const { sortedDocuments: sortedAllDocuments, sortedSubfolders: sortedAllSubfolders } =\n sortItems({\n documentsToSort,\n subfoldersToSort,\n })\n\n if (sortedDocuments) {\n setDocuments(sortedDocuments)\n setAllDocuments(sortedAllDocuments)\n }\n if (sortedSubfolders) {\n setSubfolders(sortedSubfolders)\n setAllSubfolders(sortedAllSubfolders)\n }\n },\n [documents, separateItems, sortItems, subfolders],\n )\n\n /**\n * Used to move items to a different folder.\n *\n * Handles the request to the server and updates the state.\n */\n const moveToFolder: FolderContextValue['moveToFolder'] = React.useCallback(\n async (args) => {\n const { itemsToMove: items, toFolderID } = args\n if (!items.length) {\n return\n }\n\n const movingCurrentFolder =\n items.length === 1 &&\n items[0].relationTo === folderCollectionSlug &&\n items[0].value.id === activeFolderID\n\n if (movingCurrentFolder) {\n const req = await fetch(\n `${serverURL}${routes.api}/${folderCollectionSlug}/${activeFolderID}`,\n {\n body: JSON.stringify({ [folderFieldName]: toFolderID || null }),\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n },\n method: 'PATCH',\n },\n )\n if (req.status !== 200) {\n toast.error(t('general:error'))\n } else {\n const updatedDoc = await req.json()\n const folderRes = await getFolderData({\n folderID: updatedDoc.id,\n })\n setBreadcrumbs(folderRes?.breadcrumbs || [])\n setSubfolders(folderRes?.subfolders || [])\n setDocuments(folderRes?.documents || [])\n setActiveFolderID(updatedDoc.id)\n }\n setBreadcrumbs((prevBreadcrumbs) => {\n return prevBreadcrumbs.map((breadcrumb) => {\n if (breadcrumb.id === activeFolderID) {\n return {\n ...breadcrumb,\n id: toFolderID,\n }\n }\n return breadcrumb\n })\n })\n } else {\n const movingToCurrentFolder: boolean = toFolderID === activeFolderID\n const successfullyMovedFolderItems: FolderOrDocument[] = []\n const successfullyMovedDocumentItems: FolderOrDocument[] = []\n\n for (const [collectionSlug, ids] of Object.entries(groupItemIDsByRelation(items))) {\n const collectionConfig = getEntityConfig({ collectionSlug })\n const query = qs.stringify(\n {\n limit: 0,\n where: {\n id: {\n in: ids,\n },\n },\n },\n {\n addQueryPrefix: true,\n },\n )\n try {\n const res = await fetch(`${serverURL}${routes.api}/${collectionSlug}${query}`, {\n body: JSON.stringify({ [folderFieldName]: toFolderID || null }),\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n },\n method: 'PATCH',\n })\n if (res.status === 200) {\n const json = await res.json()\n const { docs } = json as { docs: Document[] }\n const formattedItems: FolderOrDocument[] = docs.map<FolderOrDocument>(\n (doc: Document) =>\n formatFolderOrDocumentItem({\n folderFieldName: config.folders.fieldName,\n isUpload: Boolean(collectionConfig.upload),\n relationTo: collectionSlug,\n useAsTitle: collectionConfig.admin.useAsTitle,\n value: doc,\n }),\n )\n if (collectionSlug === folderCollectionSlug) {\n successfullyMovedFolderItems.push(...formattedItems)\n } else {\n successfullyMovedDocumentItems.push(...formattedItems)\n }\n }\n } catch (error) {\n toast.error(t('general:error'))\n // eslint-disable-next-line no-console\n console.error(error)\n continue\n }\n }\n\n if (movingToCurrentFolder) {\n // need to sort if we are moving (adding) items to the current folder\n const { newURL, sortedDocuments, sortedSubfolders } = sortItems({\n documentsToSort: successfullyMovedDocumentItems.length\n ? [...documents, ...successfullyMovedDocumentItems]\n : undefined,\n subfoldersToSort: successfullyMovedFolderItems.length\n ? [...subfolders, ...successfullyMovedFolderItems]\n : undefined,\n })\n\n if (sortedDocuments) {\n setDocuments(sortedDocuments)\n }\n if (sortedSubfolders) {\n setSubfolders(sortedSubfolders)\n }\n\n if (drawerDepth === 1 && newURL) {\n // not in a drawer (default is 1)\n router.replace(newURL)\n }\n } else {\n // no need to sort, just remove the items from the current state\n const filteredDocuments = successfullyMovedDocumentItems.length\n ? documents.filter(\n ({ itemKey }) =>\n !successfullyMovedDocumentItems.some((item) => item.itemKey === itemKey),\n )\n : undefined\n const filteredSubfolders = successfullyMovedFolderItems.length\n ? subfolders.filter(\n ({ itemKey }) =>\n !successfullyMovedFolderItems.some((item) => item.itemKey === itemKey),\n )\n : undefined\n\n if (filteredDocuments) {\n setDocuments(filteredDocuments)\n }\n if (filteredSubfolders) {\n setSubfolders(filteredSubfolders)\n }\n }\n }\n\n clearSelections()\n },\n [\n folderCollectionSlug,\n activeFolderID,\n clearSelections,\n serverURL,\n routes.api,\n t,\n getFolderData,\n getEntityConfig,\n sortItems,\n documents,\n subfolders,\n drawerDepth,\n router,\n ],\n )\n\n /**\n * Used to rename a folder in the current state.\n *\n * Does NOT handle the request to the server.\n * Used when the user renames a folder using the drawer\n * and it needs to be updated in the current state.\n */\n const renameFolder: FolderContextValue['renameFolder'] = React.useCallback(\n ({ folderID: updatedFolderID, newName }) => {\n if (activeFolderID === updatedFolderID) {\n // updating the curent folder\n setBreadcrumbs((prevBreadcrumbs) => {\n return prevBreadcrumbs.map((breadcrumb) => {\n if (breadcrumb.id === updatedFolderID) {\n return {\n ...breadcrumb,\n name: newName,\n }\n }\n return breadcrumb\n })\n })\n } else {\n setSubfolders((prevFolders) => {\n return prevFolders.map((folder) => {\n if (folder.value.id === updatedFolderID && folder.relationTo === folderCollectionSlug) {\n return {\n ...folder,\n value: {\n ...folder.value,\n _folderOrDocumentTitle: newName,\n },\n }\n }\n return folder\n })\n })\n }\n },\n [folderCollectionSlug, setSubfolders, activeFolderID],\n )\n\n return (\n <Context\n value={{\n addItems,\n breadcrumbs,\n clearSelections,\n currentFolder: breadcrumbs?.[0]?.id\n ? {\n itemKey: `${folderCollectionSlug}-${activeFolderID}`,\n relationTo: folderCollectionSlug,\n value: {\n id: activeFolderID,\n _folderOrDocumentTitle: breadcrumbs[breadcrumbs.length - 1]?.name,\n folderID: breadcrumbs[breadcrumbs.length - 2]?.id || null,\n },\n }\n : null,\n documents,\n filterItems,\n focusedRowIndex,\n folderCollectionConfig,\n folderCollectionSlug,\n folderFieldName,\n folderID: activeFolderID,\n getSelectedItems,\n isDragging,\n lastSelectedIndex,\n moveToFolder,\n onItemClick,\n onItemKeyPress,\n removeItems,\n renameFolder,\n search,\n selectedIndexes,\n setBreadcrumbs,\n setFocusedRowIndex,\n setFolderID: setNewActiveFolderID,\n setIsDragging,\n sortAndUpdateState,\n sortDirection,\n sortOn,\n subfolders,\n visibleCollectionSlugs,\n }}\n >\n {children}\n </Context>\n )\n}\n\nexport function useFolder(): FolderContextValue {\n const context = React.use(Context)\n\n if (context === undefined) {\n throw new Error('useFolder must be used within a FolderProvider')\n }\n\n return context\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { FolderOrDocument } from 'payload/shared';
|
|
2
|
-
export declare function getShiftSelection({ selectFromIndex, selectToIndex, }: {
|
|
3
|
-
selectFromIndex: number;
|
|
4
|
-
selectToIndex: number;
|
|
5
|
-
}): Set<number>;
|
|
6
|
-
export declare function getMetaSelection({ currentSelection, toggleIndex, }: {
|
|
7
|
-
currentSelection: Set<number>;
|
|
8
|
-
toggleIndex: number;
|
|
9
|
-
}): Set<number>;
|
|
10
|
-
export declare function groupItemIDsByRelation(items: FolderOrDocument[]): Record<string, (string | number)[]>;
|
|
11
|
-
//# sourceMappingURL=selection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../src/providers/Folders/selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEtD,wBAAgB,iBAAiB,CAAC,EAChC,eAAe,EACf,aAAa,GACd,EAAE;IACD,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;CACtB,GAAG,GAAG,CAAC,MAAM,CAAC,CAad;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,gBAAgB,EAChB,WAAW,GACZ,EAAE;IACD,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC7B,WAAW,EAAE,MAAM,CAAA;CACpB,GAAG,GAAG,CAAC,MAAM,CAAC,CAQd;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,EAAE,uCAY/D"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
export function getShiftSelection({
|
|
2
|
-
selectFromIndex,
|
|
3
|
-
selectToIndex
|
|
4
|
-
}) {
|
|
5
|
-
if (selectFromIndex === null || selectFromIndex === undefined) {
|
|
6
|
-
return new Set([selectToIndex]);
|
|
7
|
-
}
|
|
8
|
-
const start = Math.min(selectToIndex, selectFromIndex);
|
|
9
|
-
const end = Math.max(selectToIndex, selectFromIndex);
|
|
10
|
-
const rangeSelection = new Set(Array.from({
|
|
11
|
-
length: Math.max(start, end) + 1
|
|
12
|
-
}, (_, i) => i).filter(index => {
|
|
13
|
-
return index >= start && index <= end;
|
|
14
|
-
}));
|
|
15
|
-
return rangeSelection;
|
|
16
|
-
}
|
|
17
|
-
export function getMetaSelection({
|
|
18
|
-
currentSelection,
|
|
19
|
-
toggleIndex
|
|
20
|
-
}) {
|
|
21
|
-
const newSelection = new Set(currentSelection);
|
|
22
|
-
if (newSelection.has(toggleIndex)) {
|
|
23
|
-
newSelection.delete(toggleIndex);
|
|
24
|
-
} else {
|
|
25
|
-
newSelection.add(toggleIndex);
|
|
26
|
-
}
|
|
27
|
-
return newSelection;
|
|
28
|
-
}
|
|
29
|
-
export function groupItemIDsByRelation(items) {
|
|
30
|
-
return items.reduce((acc, item) => {
|
|
31
|
-
if (!acc[item.relationTo]) {
|
|
32
|
-
acc[item.relationTo] = [];
|
|
33
|
-
}
|
|
34
|
-
acc[item.relationTo].push(item.value.id);
|
|
35
|
-
return acc;
|
|
36
|
-
}, {});
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=selection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"selection.js","names":["getShiftSelection","selectFromIndex","selectToIndex","undefined","Set","start","Math","min","end","max","rangeSelection","Array","from","length","_","i","filter","index","getMetaSelection","currentSelection","toggleIndex","newSelection","has","delete","add","groupItemIDsByRelation","items","reduce","acc","item","relationTo","push","value","id"],"sources":["../../../src/providers/Folders/selection.ts"],"sourcesContent":["import type { FolderOrDocument } from 'payload/shared'\n\nexport function getShiftSelection({\n selectFromIndex,\n selectToIndex,\n}: {\n selectFromIndex: number\n selectToIndex: number\n}): Set<number> {\n if (selectFromIndex === null || selectFromIndex === undefined) {\n return new Set([selectToIndex])\n }\n\n const start = Math.min(selectToIndex, selectFromIndex)\n const end = Math.max(selectToIndex, selectFromIndex)\n const rangeSelection = new Set(\n Array.from({ length: Math.max(start, end) + 1 }, (_, i) => i).filter((index) => {\n return index >= start && index <= end\n }),\n )\n return rangeSelection\n}\n\nexport function getMetaSelection({\n currentSelection,\n toggleIndex,\n}: {\n currentSelection: Set<number>\n toggleIndex: number\n}): Set<number> {\n const newSelection = new Set(currentSelection)\n if (newSelection.has(toggleIndex)) {\n newSelection.delete(toggleIndex)\n } else {\n newSelection.add(toggleIndex)\n }\n return newSelection\n}\n\nexport function groupItemIDsByRelation(items: FolderOrDocument[]) {\n return items.reduce(\n (acc, item) => {\n if (!acc[item.relationTo]) {\n acc[item.relationTo] = []\n }\n acc[item.relationTo].push(item.value.id)\n\n return acc\n },\n {} as Record<string, (number | string)[]>,\n )\n}\n"],"mappings":"AAEA,OAAO,SAASA,kBAAkB;EAChCC,eAAe;EACfC;AAAa,CAId;EACC,IAAID,eAAA,KAAoB,QAAQA,eAAA,KAAoBE,SAAA,EAAW;IAC7D,OAAO,IAAIC,GAAA,CAAI,CAACF,aAAA,CAAc;EAChC;EAEA,MAAMG,KAAA,GAAQC,IAAA,CAAKC,GAAG,CAACL,aAAA,EAAeD,eAAA;EACtC,MAAMO,GAAA,GAAMF,IAAA,CAAKG,GAAG,CAACP,aAAA,EAAeD,eAAA;EACpC,MAAMS,cAAA,GAAiB,IAAIN,GAAA,CACzBO,KAAA,CAAMC,IAAI,CAAC;IAAEC,MAAA,EAAQP,IAAA,CAAKG,GAAG,CAACJ,KAAA,EAAOG,GAAA,IAAO;EAAE,GAAG,CAACM,CAAA,EAAGC,CAAA,KAAMA,CAAA,EAAGC,MAAM,CAAEC,KAAA;IACpE,OAAOA,KAAA,IAASZ,KAAA,IAASY,KAAA,IAAST,GAAA;EACpC;EAEF,OAAOE,cAAA;AACT;AAEA,OAAO,SAASQ,iBAAiB;EAC/BC,gBAAgB;EAChBC;AAAW,CAIZ;EACC,MAAMC,YAAA,GAAe,IAAIjB,GAAA,CAAIe,gBAAA;EAC7B,IAAIE,YAAA,CAAaC,GAAG,CAACF,WAAA,GAAc;IACjCC,YAAA,CAAaE,MAAM,CAACH,WAAA;EACtB,OAAO;IACLC,YAAA,CAAaG,GAAG,CAACJ,WAAA;EACnB;EACA,OAAOC,YAAA;AACT;AAEA,OAAO,SAASI,uBAAuBC,KAAyB;EAC9D,OAAOA,KAAA,CAAMC,MAAM,CACjB,CAACC,GAAA,EAAKC,IAAA;IACJ,IAAI,CAACD,GAAG,CAACC,IAAA,CAAKC,UAAU,CAAC,EAAE;MACzBF,GAAG,CAACC,IAAA,CAAKC,UAAU,CAAC,GAAG,EAAE;IAC3B;IACAF,GAAG,CAACC,IAAA,CAAKC,UAAU,CAAC,CAACC,IAAI,CAACF,IAAA,CAAKG,KAAK,CAACC,EAAE;IAEvC,OAAOL,GAAA;EACT,GACA,CAAC;AAEL","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filterFields.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/filterFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAIjD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,GAAG,KAAK,kBAAkB,CAAC,EAAE,KAAG,CAAC,EA4BlF,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filterFields.js","names":["fieldIsHiddenOrDisabled","fieldIsID","filterFields","incomingFields","shouldSkipField","field","type","admin","disableListColumn","fields","reduce","acc","formattedField","tabs","map","tab","filter","tabField","push"],"sources":["../../../../src/providers/TableColumns/buildColumnState/filterFields.tsx"],"sourcesContent":["import type { ClientField, Field } from 'payload'\n\nimport { fieldIsHiddenOrDisabled, fieldIsID } from 'payload/shared'\n\n/**\n * Filters fields that are hidden, disabled, or have `disableListColumn` set to `true`\n * Does so recursively for `tabs` fields.\n */\nexport const filterFields = <T extends ClientField | Field>(incomingFields: T[]): T[] => {\n const shouldSkipField = (field: T): boolean =>\n (field.type !== 'ui' && fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) ||\n field?.admin?.disableListColumn === true\n\n const fields: T[] = incomingFields?.reduce((acc, field) => {\n if (shouldSkipField(field)) {\n return acc\n }\n\n // extract top-level `tabs` fields and filter out the same\n const formattedField: T =\n field.type === 'tabs' && 'tabs' in field\n ? {\n ...field,\n tabs: field.tabs.map((tab) => ({\n ...tab,\n fields: tab.fields.filter((tabField) => !shouldSkipField(tabField)),\n })),\n }\n : field\n\n acc.push(formattedField)\n\n return acc\n }, [])\n\n return fields\n}\n"],"mappings":"AAEA,SAASA,uBAAuB,EAAEC,SAAS,QAAQ;AAEnD;;;;AAIA,OAAO,MAAMC,YAAA,GAA+CC,cAAA;EAC1D,MAAMC,eAAA,GAAmBC,KAAA,IACvBA,KAAC,CAAMC,IAAI,KAAK,QAAQN,uBAAA,CAAwBK,KAAA,KAAU,CAACJ,SAAA,CAAUI,KAAA,KACrEA,KAAA,EAAOE,KAAA,EAAOC,iBAAA,KAAsB;EAEtC,MAAMC,MAAA,GAAcN,cAAA,EAAgBO,MAAA,CAAO,CAACC,GAAA,EAAKN,KAAA;IAC/C,IAAID,eAAA,CAAgBC,KAAA,GAAQ;MAC1B,OAAOM,GAAA;IACT;IAEA;IACA,MAAMC,cAAA,GACJP,KAAA,CAAMC,IAAI,KAAK,UAAU,UAAUD,KAAA,GAC/B;MACE,GAAGA,KAAK;MACRQ,IAAA,EAAMR,KAAA,CAAMQ,IAAI,CAACC,GAAG,CAAEC,GAAA,KAAS;QAC7B,GAAGA,GAAG;QACNN,MAAA,EAAQM,GAAA,CAAIN,MAAM,CAACO,MAAM,CAAEC,QAAA,IAAa,CAACb,eAAA,CAAgBa,QAAA;MAC3D;IACF,IACAZ,KAAA;IAENM,GAAA,CAAIO,IAAI,CAACN,cAAA;IAET,OAAOD,GAAA;EACT,GAAG,EAAE;EAEL,OAAOF,MAAA;AACT","ignoreList":[]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Safely resolves a deeply nested value from a document using dot-notation accessor paths.
|
|
3
|
-
*
|
|
4
|
-
* Used in list views to retrieve field values, especially for fields hoisted from nested structures
|
|
5
|
-
* like groups, where the accessor may be in the form of `group.someField`.
|
|
6
|
-
*
|
|
7
|
-
* @param doc - The document object to retrieve the value from.
|
|
8
|
-
* @param path - A dot-separated accessor string (e.g., "group.someField").
|
|
9
|
-
* @returns The resolved value at the specified path, or undefined if any segment is missing.
|
|
10
|
-
*/
|
|
11
|
-
export declare const findValueFromPath: (doc: Record<string, any>, path: string) => any;
|
|
12
|
-
//# sourceMappingURL=findValueFromPath.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"findValueFromPath.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/findValueFromPath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,QAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,KAAG,GAE1E,CAAA"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Safely resolves a deeply nested value from a document using dot-notation accessor paths.
|
|
3
|
-
*
|
|
4
|
-
* Used in list views to retrieve field values, especially for fields hoisted from nested structures
|
|
5
|
-
* like groups, where the accessor may be in the form of `group.someField`.
|
|
6
|
-
*
|
|
7
|
-
* @param doc - The document object to retrieve the value from.
|
|
8
|
-
* @param path - A dot-separated accessor string (e.g., "group.someField").
|
|
9
|
-
* @returns The resolved value at the specified path, or undefined if any segment is missing.
|
|
10
|
-
*/export const findValueFromPath = (doc, path) => {
|
|
11
|
-
return path.split('.').reduce((acc, key) => acc?.[key], doc);
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=findValueFromPath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"findValueFromPath.js","names":["findValueFromPath","doc","path","split","reduce","acc","key"],"sources":["../../../../src/providers/TableColumns/buildColumnState/findValueFromPath.ts"],"sourcesContent":["/**\n * Safely resolves a deeply nested value from a document using dot-notation accessor paths.\n *\n * Used in list views to retrieve field values, especially for fields hoisted from nested structures\n * like groups, where the accessor may be in the form of `group.someField`.\n *\n * @param doc - The document object to retrieve the value from.\n * @param path - A dot-separated accessor string (e.g., \"group.someField\").\n * @returns The resolved value at the specified path, or undefined if any segment is missing.\n */\nexport const findValueFromPath = (doc: Record<string, any>, path: string): any => {\n return path.split('.').reduce((acc, key) => acc?.[key], doc)\n}\n"],"mappings":"AAAA;;;;;;;;;GAUA,OAAO,MAAMA,iBAAA,GAAoBA,CAACC,GAAA,EAA0BC,IAAA;EAC1D,OAAOA,IAAA,CAAKC,KAAK,CAAC,KAAKC,MAAM,CAAC,CAACC,GAAA,EAAKC,GAAA,KAAQD,GAAA,GAAMC,GAAA,CAAI,EAAEL,GAAA;AAC1D","ignoreList":[]}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { I18nClient } from '@payloadcms/translations';
|
|
2
|
-
import type { ClientField, CollectionSlug, Column, DefaultCellComponentProps, Document, Field, ListPreferences, PaginatedDocs, Payload, SanitizedCollectionConfig } from 'payload';
|
|
3
|
-
import type { SortColumnProps } from '../../../elements/SortColumn/index.js';
|
|
4
|
-
export type BuildColumnStateArgs = {
|
|
5
|
-
beforeRows?: Column[];
|
|
6
|
-
clientFields: ClientField[];
|
|
7
|
-
columnPreferences: ListPreferences['columns'];
|
|
8
|
-
columns?: ListPreferences['columns'];
|
|
9
|
-
customCellProps: DefaultCellComponentProps['customCellProps'];
|
|
10
|
-
enableLinkedCell?: boolean;
|
|
11
|
-
enableRowSelections: boolean;
|
|
12
|
-
enableRowTypes?: boolean;
|
|
13
|
-
i18n: I18nClient;
|
|
14
|
-
payload: Payload;
|
|
15
|
-
serverFields: Field[];
|
|
16
|
-
sortColumnProps?: Partial<SortColumnProps>;
|
|
17
|
-
useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle'];
|
|
18
|
-
} & ({
|
|
19
|
-
collectionSlug: CollectionSlug;
|
|
20
|
-
dataType: 'monomorphic';
|
|
21
|
-
docs: PaginatedDocs['docs'];
|
|
22
|
-
} | {
|
|
23
|
-
collectionSlug?: undefined;
|
|
24
|
-
dataType: 'polymorphic';
|
|
25
|
-
docs: {
|
|
26
|
-
relationTo: CollectionSlug;
|
|
27
|
-
value: Document;
|
|
28
|
-
}[];
|
|
29
|
-
});
|
|
30
|
-
export declare const buildColumnState: (args: BuildColumnStateArgs) => Column[];
|
|
31
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAEV,WAAW,EACX,cAAc,EACd,MAAM,EACN,yBAAyB,EACzB,QAAQ,EACR,KAAK,EACL,eAAe,EACf,aAAa,EACb,OAAO,EACP,yBAAyB,EAG1B,MAAM,SAAS,CAAA;AAUhB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAY5E,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,iBAAiB,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IAC7C,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IACpC,eAAe,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,KAAK,EAAE,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1C,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,GAAG,CACA;IACE,cAAc,EAAE,cAAc,CAAA;IAC9B,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CAC5B,GACD;IACE,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE;QACJ,UAAU,EAAE,cAAc,CAAA;QAC1B,KAAK,EAAE,QAAQ,CAAA;KAChB,EAAE,CAAA;CACJ,CACJ,CAAA;AAED,eAAO,MAAM,gBAAgB,SAAU,oBAAoB,KAAG,MAAM,EA6LnE,CAAA"}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { fieldIsHiddenOrDisabled, fieldIsID, fieldIsPresentationalOnly, flattenTopLevelFields } from 'payload/shared';
|
|
3
|
-
import React from 'react';
|
|
4
|
-
import { RenderServerComponent } from '../../../elements/RenderServerComponent/index.js';
|
|
5
|
-
import { SortColumn } from '../../../exports/client/index.js';
|
|
6
|
-
import { filterFields } from './filterFields.js';
|
|
7
|
-
import { isColumnActive } from './isColumnActive.js';
|
|
8
|
-
import { renderCell } from './renderCell.js';
|
|
9
|
-
import { sortFieldMap } from './sortFieldMap.js';
|
|
10
|
-
export const buildColumnState = args => {
|
|
11
|
-
const {
|
|
12
|
-
beforeRows,
|
|
13
|
-
clientFields,
|
|
14
|
-
collectionSlug,
|
|
15
|
-
columnPreferences,
|
|
16
|
-
columns,
|
|
17
|
-
customCellProps,
|
|
18
|
-
dataType,
|
|
19
|
-
docs,
|
|
20
|
-
enableLinkedCell = true,
|
|
21
|
-
enableRowSelections,
|
|
22
|
-
i18n,
|
|
23
|
-
payload,
|
|
24
|
-
serverFields,
|
|
25
|
-
sortColumnProps,
|
|
26
|
-
useAsTitle
|
|
27
|
-
} = args;
|
|
28
|
-
// clientFields contains the fake `id` column
|
|
29
|
-
let sortedFieldMap = flattenTopLevelFields(filterFields(clientFields), {
|
|
30
|
-
i18n,
|
|
31
|
-
keepPresentationalFields: true,
|
|
32
|
-
moveSubFieldsToTop: true
|
|
33
|
-
});
|
|
34
|
-
let _sortedFieldMap = flattenTopLevelFields(filterFields(serverFields), {
|
|
35
|
-
i18n,
|
|
36
|
-
keepPresentationalFields: true,
|
|
37
|
-
moveSubFieldsToTop: true
|
|
38
|
-
}) // TODO: think of a way to avoid this additional flatten
|
|
39
|
-
;
|
|
40
|
-
// place the `ID` field first, if it exists
|
|
41
|
-
// do the same for the `useAsTitle` field with precedence over the `ID` field
|
|
42
|
-
// then sort the rest of the fields based on the `defaultColumns` or `columnPreferences`
|
|
43
|
-
const idFieldIndex = sortedFieldMap?.findIndex(field => fieldIsID(field));
|
|
44
|
-
if (idFieldIndex > -1) {
|
|
45
|
-
const idField = sortedFieldMap.splice(idFieldIndex, 1)[0];
|
|
46
|
-
sortedFieldMap.unshift(idField);
|
|
47
|
-
}
|
|
48
|
-
const useAsTitleFieldIndex = useAsTitle ? sortedFieldMap.findIndex(field => 'name' in field && field.name === useAsTitle) : -1;
|
|
49
|
-
if (useAsTitleFieldIndex > -1) {
|
|
50
|
-
const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0];
|
|
51
|
-
sortedFieldMap.unshift(useAsTitleField);
|
|
52
|
-
}
|
|
53
|
-
const sortTo = columnPreferences || columns;
|
|
54
|
-
if (sortTo) {
|
|
55
|
-
// sort the fields to the order of `defaultColumns` or `columnPreferences`
|
|
56
|
-
sortedFieldMap = sortFieldMap(sortedFieldMap, sortTo);
|
|
57
|
-
_sortedFieldMap = sortFieldMap(_sortedFieldMap, sortTo) // TODO: think of a way to avoid this additional sort
|
|
58
|
-
;
|
|
59
|
-
}
|
|
60
|
-
const activeColumnsIndices = [];
|
|
61
|
-
const sorted = sortedFieldMap?.reduce((acc, clientField, colIndex) => {
|
|
62
|
-
if (fieldIsHiddenOrDisabled(clientField) && !fieldIsID(clientField)) {
|
|
63
|
-
return acc;
|
|
64
|
-
}
|
|
65
|
-
const accessor = clientField.accessor ?? ('name' in clientField ? clientField.name : undefined);
|
|
66
|
-
const serverField = _sortedFieldMap.find(f => {
|
|
67
|
-
const fAccessor = f.accessor ?? ('name' in f ? f.name : undefined);
|
|
68
|
-
return fAccessor === accessor;
|
|
69
|
-
});
|
|
70
|
-
const columnPreference = columnPreferences?.find(preference => clientField && 'name' in clientField && preference.accessor === accessor);
|
|
71
|
-
const isActive = isColumnActive({
|
|
72
|
-
accessor,
|
|
73
|
-
activeColumnsIndices,
|
|
74
|
-
columnPreference,
|
|
75
|
-
columns
|
|
76
|
-
});
|
|
77
|
-
if (isActive && !activeColumnsIndices.includes(colIndex)) {
|
|
78
|
-
activeColumnsIndices.push(colIndex);
|
|
79
|
-
}
|
|
80
|
-
let CustomLabel = undefined;
|
|
81
|
-
if (dataType === 'monomorphic') {
|
|
82
|
-
const CustomLabelToRender = serverField && 'admin' in serverField && 'components' in serverField.admin && 'Label' in serverField.admin.components && serverField.admin.components.Label !== undefined // let it return `null`
|
|
83
|
-
? serverField.admin.components.Label : undefined;
|
|
84
|
-
// TODO: customComponent will be optional in v4
|
|
85
|
-
const clientProps = {
|
|
86
|
-
field: clientField
|
|
87
|
-
};
|
|
88
|
-
const customLabelServerProps = {
|
|
89
|
-
clientField,
|
|
90
|
-
collectionSlug,
|
|
91
|
-
field: serverField,
|
|
92
|
-
i18n,
|
|
93
|
-
payload
|
|
94
|
-
};
|
|
95
|
-
CustomLabel = CustomLabelToRender ? RenderServerComponent({
|
|
96
|
-
clientProps,
|
|
97
|
-
Component: CustomLabelToRender,
|
|
98
|
-
importMap: payload.importMap,
|
|
99
|
-
serverProps: customLabelServerProps
|
|
100
|
-
}) : undefined;
|
|
101
|
-
}
|
|
102
|
-
const fieldAffectsDataSubFields = clientField && clientField.type && (clientField.type === 'array' || clientField.type === 'group' || clientField.type === 'blocks');
|
|
103
|
-
const label = clientField && 'labelWithPrefix' in clientField && clientField.labelWithPrefix !== undefined ? clientField.labelWithPrefix : 'label' in clientField ? clientField.label : undefined;
|
|
104
|
-
// Convert accessor to dot notation specifically for SortColumn sorting behavior
|
|
105
|
-
const dotAccessor = accessor?.replace(/-/g, '.');
|
|
106
|
-
const Heading = /*#__PURE__*/_jsx(SortColumn, {
|
|
107
|
-
disable: fieldAffectsDataSubFields || fieldIsPresentationalOnly(clientField) || undefined,
|
|
108
|
-
Label: CustomLabel,
|
|
109
|
-
label: label,
|
|
110
|
-
name: dotAccessor,
|
|
111
|
-
...(sortColumnProps || {})
|
|
112
|
-
});
|
|
113
|
-
const column = {
|
|
114
|
-
accessor,
|
|
115
|
-
active: isActive,
|
|
116
|
-
CustomLabel,
|
|
117
|
-
field: clientField,
|
|
118
|
-
Heading,
|
|
119
|
-
renderedCells: isActive ? docs.map((doc, rowIndex) => {
|
|
120
|
-
return renderCell({
|
|
121
|
-
clientField,
|
|
122
|
-
collectionSlug: dataType === 'monomorphic' ? collectionSlug : doc.relationTo,
|
|
123
|
-
columnIndex: colIndex,
|
|
124
|
-
customCellProps,
|
|
125
|
-
doc: dataType === 'monomorphic' ? doc : doc.value,
|
|
126
|
-
enableRowSelections,
|
|
127
|
-
i18n,
|
|
128
|
-
isLinkedColumn: enableLinkedCell && colIndex === activeColumnsIndices[0],
|
|
129
|
-
payload,
|
|
130
|
-
rowIndex,
|
|
131
|
-
serverField
|
|
132
|
-
});
|
|
133
|
-
}) : []
|
|
134
|
-
};
|
|
135
|
-
acc.push(column);
|
|
136
|
-
return acc;
|
|
137
|
-
}, []);
|
|
138
|
-
if (beforeRows) {
|
|
139
|
-
sorted.unshift(...beforeRows);
|
|
140
|
-
}
|
|
141
|
-
return sorted;
|
|
142
|
-
};
|
|
143
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["fieldIsHiddenOrDisabled","fieldIsID","fieldIsPresentationalOnly","flattenTopLevelFields","React","RenderServerComponent","SortColumn","filterFields","isColumnActive","renderCell","sortFieldMap","buildColumnState","args","beforeRows","clientFields","collectionSlug","columnPreferences","columns","customCellProps","dataType","docs","enableLinkedCell","enableRowSelections","i18n","payload","serverFields","sortColumnProps","useAsTitle","sortedFieldMap","keepPresentationalFields","moveSubFieldsToTop","_sortedFieldMap","idFieldIndex","findIndex","field","idField","splice","unshift","useAsTitleFieldIndex","name","useAsTitleField","sortTo","activeColumnsIndices","sorted","reduce","acc","clientField","colIndex","accessor","undefined","serverField","find","f","fAccessor","columnPreference","preference","isActive","includes","push","CustomLabel","CustomLabelToRender","admin","components","Label","clientProps","customLabelServerProps","Component","importMap","serverProps","fieldAffectsDataSubFields","type","label","labelWithPrefix","dotAccessor","replace","Heading","_jsx","disable","column","active","renderedCells","map","doc","rowIndex","relationTo","columnIndex","value","isLinkedColumn"],"sources":["../../../../src/providers/TableColumns/buildColumnState/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n ClientComponentProps,\n ClientField,\n CollectionSlug,\n Column,\n DefaultCellComponentProps,\n Document,\n Field,\n ListPreferences,\n PaginatedDocs,\n Payload,\n SanitizedCollectionConfig,\n ServerComponentProps,\n StaticLabel,\n} from 'payload'\n\nimport {\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsPresentationalOnly,\n flattenTopLevelFields,\n} from 'payload/shared'\nimport React from 'react'\n\nimport type { SortColumnProps } from '../../../elements/SortColumn/index.js'\n\nimport { RenderServerComponent } from '../../../elements/RenderServerComponent/index.js'\nimport {\n SortColumn,\n // eslint-disable-next-line payload/no-imports-from-exports-dir -- MUST reference the exports dir: https://github.com/payloadcms/payload/issues/12002#issuecomment-2791493587\n} from '../../../exports/client/index.js'\nimport { filterFields } from './filterFields.js'\nimport { isColumnActive } from './isColumnActive.js'\nimport { renderCell } from './renderCell.js'\nimport { sortFieldMap } from './sortFieldMap.js'\n\nexport type BuildColumnStateArgs = {\n beforeRows?: Column[]\n clientFields: ClientField[]\n columnPreferences: ListPreferences['columns']\n columns?: ListPreferences['columns']\n customCellProps: DefaultCellComponentProps['customCellProps']\n enableLinkedCell?: boolean\n enableRowSelections: boolean\n enableRowTypes?: boolean\n i18n: I18nClient\n payload: Payload\n serverFields: Field[]\n sortColumnProps?: Partial<SortColumnProps>\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n} & (\n | {\n collectionSlug: CollectionSlug\n dataType: 'monomorphic'\n docs: PaginatedDocs['docs']\n }\n | {\n collectionSlug?: undefined\n dataType: 'polymorphic'\n docs: {\n relationTo: CollectionSlug\n value: Document\n }[]\n }\n)\n\nexport const buildColumnState = (args: BuildColumnStateArgs): Column[] => {\n const {\n beforeRows,\n clientFields,\n collectionSlug,\n columnPreferences,\n columns,\n customCellProps,\n dataType,\n docs,\n enableLinkedCell = true,\n enableRowSelections,\n i18n,\n payload,\n serverFields,\n sortColumnProps,\n useAsTitle,\n } = args\n\n // clientFields contains the fake `id` column\n let sortedFieldMap = flattenTopLevelFields(filterFields(clientFields), {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n }) as ClientField[]\n\n let _sortedFieldMap = flattenTopLevelFields(filterFields(serverFields), {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n }) as Field[] // TODO: think of a way to avoid this additional flatten\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columnPreferences`\n const idFieldIndex = sortedFieldMap?.findIndex((field) => fieldIsID(field))\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => 'name' in field && field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columnPreferences || columns\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columnPreferences`\n sortedFieldMap = sortFieldMap<ClientField>(sortedFieldMap, sortTo)\n _sortedFieldMap = sortFieldMap<Field>(_sortedFieldMap, sortTo) // TODO: think of a way to avoid this additional sort\n }\n\n const activeColumnsIndices = []\n\n const sorted: Column[] = sortedFieldMap?.reduce((acc, clientField, colIndex) => {\n if (fieldIsHiddenOrDisabled(clientField) && !fieldIsID(clientField)) {\n return acc\n }\n\n const accessor =\n (clientField as any).accessor ?? ('name' in clientField ? clientField.name : undefined)\n\n const serverField = _sortedFieldMap.find((f) => {\n const fAccessor = (f as any).accessor ?? ('name' in f ? f.name : undefined)\n return fAccessor === accessor\n })\n\n const columnPreference = columnPreferences?.find(\n (preference) => clientField && 'name' in clientField && preference.accessor === accessor,\n )\n\n const isActive = isColumnActive({\n accessor,\n activeColumnsIndices,\n columnPreference,\n columns,\n })\n\n if (isActive && !activeColumnsIndices.includes(colIndex)) {\n activeColumnsIndices.push(colIndex)\n }\n\n let CustomLabel = undefined\n\n if (dataType === 'monomorphic') {\n const CustomLabelToRender =\n serverField &&\n 'admin' in serverField &&\n 'components' in serverField.admin &&\n 'Label' in serverField.admin.components &&\n serverField.admin.components.Label !== undefined // let it return `null`\n ? serverField.admin.components.Label\n : undefined\n\n // TODO: customComponent will be optional in v4\n const clientProps: Omit<ClientComponentProps, 'customComponents'> = {\n field: clientField,\n }\n\n const customLabelServerProps: Pick<\n ServerComponentProps,\n 'clientField' | 'collectionSlug' | 'field' | 'i18n' | 'payload'\n > = {\n clientField,\n collectionSlug,\n field: serverField,\n i18n,\n payload,\n }\n\n CustomLabel = CustomLabelToRender\n ? RenderServerComponent({\n clientProps,\n Component: CustomLabelToRender,\n importMap: payload.importMap,\n serverProps: customLabelServerProps,\n })\n : undefined\n }\n\n const fieldAffectsDataSubFields =\n clientField &&\n clientField.type &&\n (clientField.type === 'array' ||\n clientField.type === 'group' ||\n clientField.type === 'blocks')\n\n const label =\n clientField && 'labelWithPrefix' in clientField && clientField.labelWithPrefix !== undefined\n ? clientField.labelWithPrefix\n : 'label' in clientField\n ? clientField.label\n : undefined\n\n // Convert accessor to dot notation specifically for SortColumn sorting behavior\n const dotAccessor = accessor?.replace(/-/g, '.')\n\n const Heading = (\n <SortColumn\n disable={fieldAffectsDataSubFields || fieldIsPresentationalOnly(clientField) || undefined}\n Label={CustomLabel}\n label={label as StaticLabel}\n name={dotAccessor}\n {...(sortColumnProps || {})}\n />\n )\n\n const column: Column = {\n accessor,\n active: isActive,\n CustomLabel,\n field: clientField,\n Heading,\n renderedCells: isActive\n ? docs.map((doc, rowIndex) => {\n return renderCell({\n clientField,\n collectionSlug: dataType === 'monomorphic' ? collectionSlug : doc.relationTo,\n columnIndex: colIndex,\n customCellProps,\n doc: dataType === 'monomorphic' ? doc : doc.value,\n enableRowSelections,\n i18n,\n isLinkedColumn: enableLinkedCell && colIndex === activeColumnsIndices[0],\n payload,\n rowIndex,\n serverField,\n })\n })\n : [],\n }\n\n acc.push(column)\n\n return acc\n }, [])\n\n if (beforeRows) {\n sorted.unshift(...beforeRows)\n }\n\n return sorted\n}\n"],"mappings":";AAiBA,SACEA,uBAAuB,EACvBC,SAAS,EACTC,yBAAyB,EACzBC,qBAAqB,QAChB;AACP,OAAOC,KAAA,MAAW;AAIlB,SAASC,qBAAqB,QAAQ;AACtC,SACEC,UAAU,QAEL;AACP,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,YAAY,QAAQ;AAgC7B,OAAO,MAAMC,gBAAA,GAAoBC,IAAA;EAC/B,MAAM;IACJC,UAAU;IACVC,YAAY;IACZC,cAAc;IACdC,iBAAiB;IACjBC,OAAO;IACPC,eAAe;IACfC,QAAQ;IACRC,IAAI;IACJC,gBAAA,GAAmB,IAAI;IACvBC,mBAAmB;IACnBC,IAAI;IACJC,OAAO;IACPC,YAAY;IACZC,eAAe;IACfC;EAAU,CACX,GAAGf,IAAA;EAEJ;EACA,IAAIgB,cAAA,GAAiBzB,qBAAA,CAAsBI,YAAA,CAAaO,YAAA,GAAe;IACrES,IAAA;IACAM,wBAAA,EAA0B;IAC1BC,kBAAA,EAAoB;EACtB;EAEA,IAAIC,eAAA,GAAkB5B,qBAAA,CAAsBI,YAAA,CAAakB,YAAA,GAAe;IACtEF,IAAA;IACAM,wBAAA,EAA0B;IAC1BC,kBAAA,EAAoB;EACtB,EAAc;EAAA;EAEd;EACA;EACA;EACA,MAAME,YAAA,GAAeJ,cAAA,EAAgBK,SAAA,CAAWC,KAAA,IAAUjC,SAAA,CAAUiC,KAAA;EAEpE,IAAIF,YAAA,GAAe,CAAC,GAAG;IACrB,MAAMG,OAAA,GAAUP,cAAA,CAAeQ,MAAM,CAACJ,YAAA,EAAc,EAAE,CAAC,EAAE;IACzDJ,cAAA,CAAeS,OAAO,CAACF,OAAA;EACzB;EAEA,MAAMG,oBAAA,GAAuBX,UAAA,GACzBC,cAAA,CAAeK,SAAS,CAAEC,KAAA,IAAU,UAAUA,KAAA,IAASA,KAAA,CAAMK,IAAI,KAAKZ,UAAA,IACtE,CAAC;EAEL,IAAIW,oBAAA,GAAuB,CAAC,GAAG;IAC7B,MAAME,eAAA,GAAkBZ,cAAA,CAAeQ,MAAM,CAACE,oBAAA,EAAsB,EAAE,CAAC,EAAE;IACzEV,cAAA,CAAeS,OAAO,CAACG,eAAA;EACzB;EAEA,MAAMC,MAAA,GAASzB,iBAAA,IAAqBC,OAAA;EAEpC,IAAIwB,MAAA,EAAQ;IACV;IACAb,cAAA,GAAiBlB,YAAA,CAA0BkB,cAAA,EAAgBa,MAAA;IAC3DV,eAAA,GAAkBrB,YAAA,CAAoBqB,eAAA,EAAiBU,MAAA,EAAQ;IAAA;EACjE;EAEA,MAAMC,oBAAA,GAAuB,EAAE;EAE/B,MAAMC,MAAA,GAAmBf,cAAA,EAAgBgB,MAAA,CAAO,CAACC,GAAA,EAAKC,WAAA,EAAaC,QAAA;IACjE,IAAI/C,uBAAA,CAAwB8C,WAAA,KAAgB,CAAC7C,SAAA,CAAU6C,WAAA,GAAc;MACnE,OAAOD,GAAA;IACT;IAEA,MAAMG,QAAA,GACJF,WAAC,CAAoBE,QAAQ,KAAK,UAAUF,WAAA,GAAcA,WAAA,CAAYP,IAAI,GAAGU,SAAQ;IAEvF,MAAMC,WAAA,GAAcnB,eAAA,CAAgBoB,IAAI,CAAEC,CAAA;MACxC,MAAMC,SAAA,GAAYD,CAAC,CAAUJ,QAAQ,KAAK,UAAUI,CAAA,GAAIA,CAAA,CAAEb,IAAI,GAAGU,SAAQ;MACzE,OAAOI,SAAA,KAAcL,QAAA;IACvB;IAEA,MAAMM,gBAAA,GAAmBtC,iBAAA,EAAmBmC,IAAA,CACzCI,UAAA,IAAeT,WAAA,IAAe,UAAUA,WAAA,IAAeS,UAAA,CAAWP,QAAQ,KAAKA,QAAA;IAGlF,MAAMQ,QAAA,GAAWhD,cAAA,CAAe;MAC9BwC,QAAA;MACAN,oBAAA;MACAY,gBAAA;MACArC;IACF;IAEA,IAAIuC,QAAA,IAAY,CAACd,oBAAA,CAAqBe,QAAQ,CAACV,QAAA,GAAW;MACxDL,oBAAA,CAAqBgB,IAAI,CAACX,QAAA;IAC5B;IAEA,IAAIY,WAAA,GAAcV,SAAA;IAElB,IAAI9B,QAAA,KAAa,eAAe;MAC9B,MAAMyC,mBAAA,GACJV,WAAA,IACA,WAAWA,WAAA,IACX,gBAAgBA,WAAA,CAAYW,KAAK,IACjC,WAAWX,WAAA,CAAYW,KAAK,CAACC,UAAU,IACvCZ,WAAA,CAAYW,KAAK,CAACC,UAAU,CAACC,KAAK,KAAKd,SAAA,CAAU;MAAA,EAC7CC,WAAA,CAAYW,KAAK,CAACC,UAAU,CAACC,KAAK,GAClCd,SAAA;MAEN;MACA,MAAMe,WAAA,GAA8D;QAClE9B,KAAA,EAAOY;MACT;MAEA,MAAMmB,sBAAA,GAGF;QACFnB,WAAA;QACA/B,cAAA;QACAmB,KAAA,EAAOgB,WAAA;QACP3B,IAAA;QACAC;MACF;MAEAmC,WAAA,GAAcC,mBAAA,GACVvD,qBAAA,CAAsB;QACpB2D,WAAA;QACAE,SAAA,EAAWN,mBAAA;QACXO,SAAA,EAAW3C,OAAA,CAAQ2C,SAAS;QAC5BC,WAAA,EAAaH;MACf,KACAhB,SAAA;IACN;IAEA,MAAMoB,yBAAA,GACJvB,WAAA,IACAA,WAAA,CAAYwB,IAAI,KACfxB,WAAA,CAAYwB,IAAI,KAAK,WACpBxB,WAAA,CAAYwB,IAAI,KAAK,WACrBxB,WAAA,CAAYwB,IAAI,KAAK,QAAO;IAEhC,MAAMC,KAAA,GACJzB,WAAA,IAAe,qBAAqBA,WAAA,IAAeA,WAAA,CAAY0B,eAAe,KAAKvB,SAAA,GAC/EH,WAAA,CAAY0B,eAAe,GAC3B,WAAW1B,WAAA,GACTA,WAAA,CAAYyB,KAAK,GACjBtB,SAAA;IAER;IACA,MAAMwB,WAAA,GAAczB,QAAA,EAAU0B,OAAA,CAAQ,MAAM;IAE5C,MAAMC,OAAA,gBACJC,IAAA,CAACtE,UAAA;MACCuE,OAAA,EAASR,yBAAA,IAA6BnE,yBAAA,CAA0B4C,WAAA,KAAgBG,SAAA;MAChFc,KAAA,EAAOJ,WAAA;MACPY,KAAA,EAAOA,KAAA;MACPhC,IAAA,EAAMkC,WAAA;MACL,IAAI/C,eAAA,IAAmB,CAAC,CAAC;;IAI9B,MAAMoD,MAAA,GAAiB;MACrB9B,QAAA;MACA+B,MAAA,EAAQvB,QAAA;MACRG,WAAA;MACAzB,KAAA,EAAOY,WAAA;MACP6B,OAAA;MACAK,aAAA,EAAexB,QAAA,GACXpC,IAAA,CAAK6D,GAAG,CAAC,CAACC,GAAA,EAAKC,QAAA;QACb,OAAO1E,UAAA,CAAW;UAChBqC,WAAA;UACA/B,cAAA,EAAgBI,QAAA,KAAa,gBAAgBJ,cAAA,GAAiBmE,GAAA,CAAIE,UAAU;UAC5EC,WAAA,EAAatC,QAAA;UACb7B,eAAA;UACAgE,GAAA,EAAK/D,QAAA,KAAa,gBAAgB+D,GAAA,GAAMA,GAAA,CAAII,KAAK;UACjDhE,mBAAA;UACAC,IAAA;UACAgE,cAAA,EAAgBlE,gBAAA,IAAoB0B,QAAA,KAAaL,oBAAoB,CAAC,EAAE;UACxElB,OAAA;UACA2D,QAAA;UACAjC;QACF;MACF,KACA;IACN;IAEAL,GAAA,CAAIa,IAAI,CAACoB,MAAA;IAET,OAAOjC,GAAA;EACT,GAAG,EAAE;EAEL,IAAIhC,UAAA,EAAY;IACd8B,MAAA,CAAON,OAAO,IAAIxB,UAAA;EACpB;EAEA,OAAO8B,MAAA;AACT","ignoreList":[]}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ColumnPreference } from 'payload';
|
|
2
|
-
export declare function isColumnActive({ accessor, activeColumnsIndices, columnPreference, columns, }: {
|
|
3
|
-
accessor: string;
|
|
4
|
-
activeColumnsIndices: number[];
|
|
5
|
-
columnPreference: ColumnPreference;
|
|
6
|
-
columns: ColumnPreference[];
|
|
7
|
-
}): boolean;
|
|
8
|
-
//# sourceMappingURL=isColumnActive.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isColumnActive.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/isColumnActive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,oBAAoB,EACpB,gBAAgB,EAChB,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,OAAO,EAAE,gBAAgB,EAAE,CAAA;CAC5B,WAUA"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export function isColumnActive({
|
|
2
|
-
accessor,
|
|
3
|
-
activeColumnsIndices,
|
|
4
|
-
columnPreference,
|
|
5
|
-
columns
|
|
6
|
-
}) {
|
|
7
|
-
if (columnPreference) {
|
|
8
|
-
return columnPreference.active;
|
|
9
|
-
} else if (columns && Array.isArray(columns) && columns.length > 0) {
|
|
10
|
-
return Boolean(columns.find(column => column.accessor === accessor)?.active);
|
|
11
|
-
} else if (activeColumnsIndices.length < 4) {
|
|
12
|
-
return true;
|
|
13
|
-
}
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=isColumnActive.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isColumnActive.js","names":["isColumnActive","accessor","activeColumnsIndices","columnPreference","columns","active","Array","isArray","length","Boolean","find","column"],"sources":["../../../../src/providers/TableColumns/buildColumnState/isColumnActive.ts"],"sourcesContent":["import type { ColumnPreference } from 'payload'\n\nexport function isColumnActive({\n accessor,\n activeColumnsIndices,\n columnPreference,\n columns,\n}: {\n accessor: string\n activeColumnsIndices: number[]\n columnPreference: ColumnPreference\n columns: ColumnPreference[]\n}) {\n if (columnPreference) {\n return columnPreference.active\n } else if (columns && Array.isArray(columns) && columns.length > 0) {\n return Boolean(columns.find((column) => column.accessor === accessor)?.active)\n } else if (activeColumnsIndices.length < 4) {\n return true\n }\n\n return false\n}\n"],"mappings":"AAEA,OAAO,SAASA,eAAe;EAC7BC,QAAQ;EACRC,oBAAoB;EACpBC,gBAAgB;EAChBC;AAAO,CAMR;EACC,IAAID,gBAAA,EAAkB;IACpB,OAAOA,gBAAA,CAAiBE,MAAM;EAChC,OAAO,IAAID,OAAA,IAAWE,KAAA,CAAMC,OAAO,CAACH,OAAA,KAAYA,OAAA,CAAQI,MAAM,GAAG,GAAG;IAClE,OAAOC,OAAA,CAAQL,OAAA,CAAQM,IAAI,CAAEC,MAAA,IAAWA,MAAA,CAAOV,QAAQ,KAAKA,QAAA,GAAWI,MAAA;EACzE,OAAO,IAAIH,oBAAA,CAAqBM,MAAM,GAAG,GAAG;IAC1C,OAAO;EACT;EAEA,OAAO;AACT","ignoreList":[]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { I18nClient } from '@payloadcms/translations';
|
|
2
|
-
import type { ClientField, DefaultCellComponentProps, Document, Field, Payload } from 'payload';
|
|
3
|
-
type RenderCellArgs = {
|
|
4
|
-
readonly clientField: ClientField;
|
|
5
|
-
readonly collectionSlug: string;
|
|
6
|
-
readonly columnIndex: number;
|
|
7
|
-
readonly customCellProps: DefaultCellComponentProps['customCellProps'];
|
|
8
|
-
readonly doc: Document;
|
|
9
|
-
readonly enableRowSelections: boolean;
|
|
10
|
-
readonly i18n: I18nClient;
|
|
11
|
-
readonly isLinkedColumn: boolean;
|
|
12
|
-
readonly payload: Payload;
|
|
13
|
-
readonly rowIndex: number;
|
|
14
|
-
readonly serverField: Field;
|
|
15
|
-
};
|
|
16
|
-
export declare function renderCell({ clientField, collectionSlug, columnIndex, customCellProps, doc, enableRowSelections, i18n, isLinkedColumn, payload, rowIndex, serverField, }: RenderCellArgs): import("react").JSX.Element;
|
|
17
|
-
export {};
|
|
18
|
-
//# sourceMappingURL=renderCell.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"renderCell.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/renderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,WAAW,EACX,yBAAyB,EAEzB,QAAQ,EACR,KAAK,EACL,OAAO,EACR,MAAM,SAAS,CAAA;AAchB,KAAK,cAAc,GAAG;IACpB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,eAAe,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;IACtE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;IACtB,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAA;CAC5B,CAAA;AACD,wBAAgB,UAAU,CAAC,EACzB,WAAW,EACX,cAAc,EACd,WAAW,EACX,eAAe,EACf,GAAG,EACH,mBAAmB,EACnB,IAAI,EACJ,cAAc,EACd,OAAO,EACP,QAAQ,EACR,WAAW,GACZ,EAAE,cAAc,+BA+GhB"}
|