@payloadcms/ui 4.0.0-internal.e55ccef → 4.0.0-internal.f05c47f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/app.css +121 -0
- package/dist/css/forms.css +0 -6
- package/dist/css/spacing.css +11 -3
- package/dist/css/z-index.css +1 -0
- package/dist/elements/AddNewRelation/index.css +0 -1
- package/dist/elements/AppHeader/index.css +1 -3
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +5 -1
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.d.ts +3 -0
- package/dist/elements/ArrayAction/index.d.ts.map +1 -1
- package/dist/elements/ArrayAction/index.js +83 -29
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +3 -0
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/BranchSelector/index.css +83 -0
- package/dist/elements/BranchSelector/index.d.ts +12 -0
- package/dist/elements/BranchSelector/index.d.ts.map +1 -0
- package/dist/elements/BranchSelector/index.js +160 -0
- package/dist/elements/BranchSelector/index.js.map +1 -0
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
- package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.css +4 -0
- package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
- package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/createFormData.js +4 -15
- package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +7 -3
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/Button/index.css +2 -2
- package/dist/elements/ClipboardAction/clipboardUtilities.d.ts +8 -1
- package/dist/elements/ClipboardAction/clipboardUtilities.d.ts.map +1 -1
- package/dist/elements/ClipboardAction/clipboardUtilities.js +40 -8
- package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
- package/dist/elements/ClipboardAction/clipboardUtilities.spec.js +120 -0
- package/dist/elements/ClipboardAction/clipboardUtilities.spec.js.map +1 -0
- package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
- package/dist/elements/ClipboardAction/index.js +17 -1
- package/dist/elements/ClipboardAction/index.js.map +1 -1
- package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js +144 -0
- package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js.map +1 -0
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +55 -0
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
- package/dist/elements/ClipboardAction/types.d.ts +3 -0
- package/dist/elements/ClipboardAction/types.d.ts.map +1 -1
- package/dist/elements/ClipboardAction/types.js.map +1 -1
- package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts +10 -0
- package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts.map +1 -0
- package/dist/elements/ClipboardAction/useCanPasteClipboard.js +21 -0
- package/dist/elements/ClipboardAction/useCanPasteClipboard.js.map +1 -0
- package/dist/elements/CodeEditor/index.css +0 -5
- package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
- package/dist/elements/ColumnSelection/Popup.js +3 -3
- package/dist/elements/ColumnSelection/Popup.js.map +1 -1
- package/dist/elements/Combobox/index.css +76 -23
- package/dist/elements/Combobox/index.d.ts +7 -0
- package/dist/elements/Combobox/index.d.ts.map +1 -1
- package/dist/elements/Combobox/index.js +58 -20
- package/dist/elements/Combobox/index.js.map +1 -1
- package/dist/elements/CommandPalette/index.css +0 -7
- package/dist/elements/CopyToClipboard/index.d.ts +1 -0
- package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
- package/dist/elements/CopyToClipboard/index.js +10 -8
- package/dist/elements/CopyToClipboard/index.js.map +1 -1
- package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
- package/dist/elements/CreateDocumentButton/index.js +4 -1
- package/dist/elements/CreateDocumentButton/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +1 -0
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.css +1 -1
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +24 -2
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +4 -1
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/Drawer/index.css +10 -4
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +6 -1
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +6 -3
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +143 -0
- package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +1 -0
- package/dist/elements/FileDetails/StaticFileDetails/index.css +8 -9
- package/dist/elements/FileManager/FilePreview/index.css +3 -3
- package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
- package/dist/elements/FileManager/FileToolbar/index.js +3 -0
- package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
- package/dist/elements/FileManager/index.css +36 -23
- package/dist/elements/FileManager/index.d.ts +1 -1
- package/dist/elements/FileManager/index.d.ts.map +1 -1
- package/dist/elements/FileManager/index.js +15 -4
- package/dist/elements/FileManager/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +0 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.js +4 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +4 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +2 -1
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +2 -0
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/index.js +3 -0
- package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.js +4 -1
- package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
- package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Search/useHierarchySearch.js +3 -0
- package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +109 -89
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.css +0 -1
- package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/useChildren.js +4 -1
- package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
- package/dist/elements/IDLabel/index.css +6 -0
- package/dist/elements/IDLabel/index.d.ts +1 -1
- package/dist/elements/IDLabel/index.d.ts.map +1 -1
- package/dist/elements/IDLabel/index.js +16 -21
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/InputStepper/index.css +0 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +6 -2
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
- package/dist/elements/Locked/index.css +0 -8
- package/dist/elements/Locked/index.d.ts.map +1 -1
- package/dist/elements/Locked/index.js +70 -64
- package/dist/elements/Locked/index.js.map +1 -1
- package/dist/elements/MiniCarousel/index.css +39 -37
- package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
- package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
- package/dist/elements/Nav/SidebarTabs/index.css +0 -5
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +2 -1
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
- package/dist/elements/NavGroup/index.css +0 -1
- package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
- package/dist/elements/PermanentlyDeleteButton/index.js +4 -1
- package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.css +1 -1
- package/dist/elements/Popup/index.js +1 -1
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/index.d.ts +1 -2
- package/dist/elements/PreviewButton/index.d.ts.map +1 -1
- package/dist/elements/PreviewButton/index.js +11 -5
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PreviewSizes/index.css +8 -9
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +6 -2
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.js +4 -1
- package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
- package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
- package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.css +2 -2
- package/dist/elements/ReactSelect/index.css +0 -3
- package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
- package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/Pagination.js +27 -77
- package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
- package/dist/elements/RelationshipTable/index.css +0 -2
- package/dist/elements/RelationshipTable/index.d.ts +1 -0
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +41 -5
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.css +4 -0
- package/dist/elements/RenderTitle/index.d.ts.map +1 -1
- package/dist/elements/RenderTitle/index.js +18 -13
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/RestoreButton/index.d.ts.map +1 -1
- package/dist/elements/RestoreButton/index.js +4 -1
- package/dist/elements/RestoreButton/index.js.map +1 -1
- package/dist/elements/RestoreMany/index.d.ts.map +1 -1
- package/dist/elements/RestoreMany/index.js +3 -0
- package/dist/elements/RestoreMany/index.js.map +1 -1
- package/dist/elements/SelectRow/index.d.ts +4 -3
- package/dist/elements/SelectRow/index.d.ts.map +1 -1
- package/dist/elements/SelectRow/index.js +10 -7
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/SidebarToggle/index.css +0 -17
- package/dist/elements/SortColumn/index.d.ts.map +1 -1
- package/dist/elements/SortColumn/index.js +42 -38
- package/dist/elements/SortColumn/index.js.map +1 -1
- package/dist/elements/SortHeader/index.d.ts.map +1 -1
- package/dist/elements/SortHeader/index.js +29 -26
- package/dist/elements/SortHeader/index.js.map +1 -1
- package/dist/elements/StepNav/index.css +64 -14
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +145 -69
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +3 -11
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/OrderableRow.d.ts +3 -1
- package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
- package/dist/elements/Table/OrderableRow.js +17 -1
- package/dist/elements/Table/OrderableRow.js.map +1 -1
- package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
- package/dist/elements/Table/OrderableTable.js +22 -3
- package/dist/elements/Table/OrderableTable.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +29 -23
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/index.css +1 -0
- package/dist/elements/TableSection/index.css +0 -1
- package/dist/elements/Thumbnail/index.d.ts +1 -1
- package/dist/elements/Thumbnail/index.d.ts.map +1 -1
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
- package/dist/elements/TimezonePicker/index.js +5 -1
- package/dist/elements/TimezonePicker/index.js.map +1 -1
- package/dist/elements/Tooltip/index.css +15 -34
- package/dist/elements/Tooltip/index.d.ts +11 -3
- package/dist/elements/Tooltip/index.d.ts.map +1 -1
- package/dist/elements/Tooltip/index.js +151 -85
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
- package/dist/elements/UnpublishButton/index.js +4 -1
- package/dist/elements/UnpublishButton/index.js.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.js +4 -1
- package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/Upload/index.css +0 -5
- package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +3 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +8 -1
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +1 -1
- package/dist/exports/client/index.js.map +3 -3
- package/dist/fields/Array/ArrayRow.d.ts +1 -0
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +99 -160
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +38 -10
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts +1 -0
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +136 -195
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/RowActions.d.ts +3 -0
- package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
- package/dist/fields/Blocks/RowActions.js +26 -20
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +38 -10
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.d.ts +2 -0
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +32 -26
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.css +37 -73
- package/dist/fields/FieldError/index.css +0 -9
- package/dist/fields/FieldError/index.d.ts.map +1 -1
- package/dist/fields/FieldError/index.js +19 -9
- package/dist/fields/FieldError/index.js.map +1 -1
- package/dist/fields/Join/index.css +9 -0
- package/dist/fields/Join/index.d.ts.map +1 -1
- package/dist/fields/Join/index.js +13 -9
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.css +0 -7
- package/dist/fields/Relationship/Input.d.ts.map +1 -1
- package/dist/fields/Relationship/Input.js +37 -15
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
- package/dist/fields/Slug/index.css +0 -1
- package/dist/fields/Slug/index.d.ts.map +1 -1
- package/dist/fields/Slug/index.js +75 -111
- package/dist/fields/Slug/index.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +4 -1
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/index.css +19 -4
- package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
- package/dist/forms/Form/fieldReducer.js +3 -1
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +12 -15
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/types.d.ts +1 -1
- package/dist/forms/Form/types.d.ts.map +1 -1
- package/dist/forms/Form/types.js.map +1 -1
- package/dist/forms/RenderFields/index.css +16 -2
- package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
- package/dist/forms/WatchChildErrors/index.js +2 -2
- package/dist/forms/WatchChildErrors/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js +1 -3
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
- package/dist/hooks/usePayloadAPI.js +44 -40
- package/dist/hooks/usePayloadAPI.js.map +1 -1
- package/dist/icons/Edit/index.d.ts +0 -1
- package/dist/icons/Edit/index.d.ts.map +1 -1
- package/dist/icons/Edit/index.js +4 -4
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/layouts/Root/index.d.ts +1 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +8 -2
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/providers/Actions/index.d.ts +1 -0
- package/dist/providers/Actions/index.d.ts.map +1 -1
- package/dist/providers/Actions/index.js +43 -11
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
- package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
- package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
- package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
- package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
- package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
- package/dist/providers/Auth/authSessionRequests.js +119 -0
- package/dist/providers/Auth/authSessionRequests.js.map +1 -0
- package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
- package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
- package/dist/providers/Auth/index.d.ts +2 -56
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +283 -135
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Auth/sessionActivity.d.ts +23 -0
- package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
- package/dist/providers/Auth/sessionActivity.js +49 -0
- package/dist/providers/Auth/sessionActivity.js.map +1 -0
- package/dist/providers/Auth/sessionActivity.spec.js +44 -0
- package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
- package/dist/providers/Auth/sessionTiming.d.ts +11 -0
- package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
- package/dist/providers/Auth/sessionTiming.js +18 -0
- package/dist/providers/Auth/sessionTiming.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
- package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.js +263 -0
- package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
- package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
- package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/types.js +6 -0
- package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
- package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
- package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
- package/dist/providers/Auth/types.d.ts +65 -0
- package/dist/providers/Auth/types.d.ts.map +1 -0
- package/dist/providers/Auth/types.js +2 -0
- package/dist/providers/Auth/types.js.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
- package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
- package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
- package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
- package/dist/providers/Branch/index.d.ts +62 -0
- package/dist/providers/Branch/index.d.ts.map +1 -0
- package/dist/providers/Branch/index.js +192 -0
- package/dist/providers/Branch/index.js.map +1 -0
- package/dist/providers/Branch/index.server.d.ts +14 -0
- package/dist/providers/Branch/index.server.d.ts.map +1 -0
- package/dist/providers/Branch/index.server.js +80 -0
- package/dist/providers/Branch/index.server.js.map +1 -0
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +5 -1
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +2 -1
- package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/useGetDocPermissions.js +3 -1
- package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
- package/dist/providers/DocumentTitle/index.d.ts +1 -0
- package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
- package/dist/providers/DocumentTitle/index.js +2 -0
- package/dist/providers/DocumentTitle/index.js.map +1 -1
- package/dist/providers/Embed/index.d.ts +24 -0
- package/dist/providers/Embed/index.d.ts.map +1 -0
- package/dist/providers/Embed/index.js +105 -0
- package/dist/providers/Embed/index.js.map +1 -0
- package/dist/providers/FormErrorHandler/index.d.ts +24 -0
- package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
- package/dist/providers/FormErrorHandler/index.js +6 -0
- package/dist/providers/FormErrorHandler/index.js.map +1 -0
- package/dist/providers/Hierarchy/index.d.ts.map +1 -1
- package/dist/providers/Hierarchy/index.js +4 -1
- package/dist/providers/Hierarchy/index.js.map +1 -1
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js +41 -36
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts +1 -0
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +37 -31
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
- package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
- package/dist/providers/RouteTransition/index.d.ts +2 -0
- package/dist/providers/RouteTransition/index.d.ts.map +1 -1
- package/dist/providers/RouteTransition/index.js +42 -14
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/providers/SidebarTabs/index.d.ts +3 -2
- package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
- package/dist/providers/SidebarTabs/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/index.js +1 -1
- package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/index.spec.js +40 -0
- package/dist/providers/TableColumns/buildColumnState/index.spec.js.map +1 -0
- package/dist/providers/Theme/index.d.ts +3 -0
- package/dist/providers/Theme/index.d.ts.map +1 -1
- package/dist/providers/Theme/index.js +107 -95
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/UploadHandlers/index.d.ts +2 -7
- package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
- package/dist/providers/UploadHandlers/index.js +102 -42
- package/dist/providers/UploadHandlers/index.js.map +1 -1
- package/dist/styles.css +13 -10
- package/dist/templates/Default/index.d.ts +1 -0
- package/dist/templates/Default/index.d.ts.map +1 -1
- package/dist/templates/Default/index.js +45 -39
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
- package/dist/utilities/combineFieldLabel.js +5 -1
- package/dist/utilities/combineFieldLabel.js.map +1 -1
- package/dist/utilities/generateFieldID.d.ts +1 -1
- package/dist/utilities/generateFieldID.d.ts.map +1 -1
- package/dist/utilities/generateFieldID.js +2 -2
- package/dist/utilities/generateFieldID.js.map +1 -1
- package/dist/utilities/getRequestBranch.d.ts +18 -0
- package/dist/utilities/getRequestBranch.d.ts.map +1 -0
- package/dist/utilities/getRequestBranch.js +32 -0
- package/dist/utilities/getRequestBranch.js.map +1 -0
- package/dist/utilities/getRequestEmbed.d.ts +14 -0
- package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
- package/dist/utilities/getRequestEmbed.js +10 -0
- package/dist/utilities/getRequestEmbed.js.map +1 -0
- package/dist/utilities/handleServerFunctions.d.ts +32 -8
- package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
- package/dist/utilities/handleServerFunctions.js +17 -37
- package/dist/utilities/handleServerFunctions.js.map +1 -1
- package/dist/utilities/initReq.d.ts.map +1 -1
- package/dist/utilities/initReq.js +8 -0
- package/dist/utilities/initReq.js.map +1 -1
- package/dist/utilities/matchesSearchQuery.d.ts +12 -0
- package/dist/utilities/matchesSearchQuery.d.ts.map +1 -0
- package/dist/utilities/matchesSearchQuery.js +23 -0
- package/dist/utilities/matchesSearchQuery.js.map +1 -0
- package/dist/{elements/ColumnSelection/matchesColumnSearch.spec.js → utilities/matchesSearchQuery.spec.js} +29 -29
- package/dist/utilities/matchesSearchQuery.spec.js.map +1 -0
- package/dist/utilities/renderTable.d.ts.map +1 -1
- package/dist/utilities/renderTable.js +18 -2
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/utilities/serverFunctionRegistry.d.ts +12 -7
- package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
- package/dist/utilities/serverFunctionRegistry.js +25 -7
- package/dist/utilities/serverFunctionRegistry.js.map +1 -1
- package/dist/utilities/slugify.d.ts.map +1 -1
- package/dist/utilities/slugify.js +49 -6
- package/dist/utilities/slugify.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.css +29 -144
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +10 -10
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
- package/dist/views/Edit/index.css +61 -53
- package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/index.js +6 -2
- package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
- package/dist/views/HierarchyList/index.css +1 -1
- package/dist/views/List/ListHeader/index.d.ts +1 -10
- package/dist/views/List/ListHeader/index.d.ts.map +1 -1
- package/dist/views/List/ListHeader/index.js +1 -3
- package/dist/views/List/ListHeader/index.js.map +1 -1
- package/dist/views/List/index.client.d.ts.map +1 -1
- package/dist/views/List/index.client.js +0 -14
- package/dist/views/List/index.client.js.map +1 -1
- package/dist/views/List/index.css +6 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +4 -0
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/Logout/index.d.ts.map +1 -1
- package/dist/views/Logout/index.js +11 -0
- package/dist/views/Logout/index.js.map +1 -1
- package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
- package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
- package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
- package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
- package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
- package/dist/views/Root/getCustomViewByKey.js.map +1 -1
- package/dist/views/Root/index.d.ts +12 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +11 -3
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +6 -3
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/package.json +5 -10
- package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts +0 -10
- package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts.map +0 -1
- package/dist/elements/ColumnSelection/matchesColumnSearch.js +0 -21
- package/dist/elements/ColumnSelection/matchesColumnSearch.js.map +0 -1
- package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js.map +0 -1
- package/dist/elements/RelationshipTable/Pagination.css +0 -39
- package/dist/scss/app.scss +0 -183
- package/dist/scss/colors.scss +0 -191
- package/dist/scss/custom.css +0 -1
- package/dist/scss/queries.scss +0 -27
- package/dist/scss/styles.scss +0 -9
- package/dist/scss/svg.scss +0 -10
- package/dist/scss/toastify.scss +0 -61
- package/dist/scss/vars.scss +0 -192
- package/dist/scss/z-index.scss +0 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","combineWhereConstraints","DEFAULT_HIERARCHY_LIST_LIMIT","formatAdminURL","qs","React","useCallback","useMemo","useState","CreateDocumentButton","NoListResults","SimplePagination","TableSection","useConfig","useDocumentSelection","useRouteCache","useTranslation","ChildNameCell","DateCell","RelatedNameCell","SlotTable","baseClass","NameCell","props","row","_hasChildren","undefined","_jsx","CollectionCell","_collectionLabel","HierarchyTable","baseFilter","childrenData","collections","collectionSlug","hasCreatePermission","HierarchyIcon","hierarchyLabel","parentFieldName","parentId","relatedBaseFilters","relatedGroups","search","useAsTitle","i18n","t","clearRouteCache","config","routes","api","apiRoute","serverURL","getEntityConfig","childDocs","setChildDocs","docs","childPaginationData","setChildPaginationData","hasNextPage","hasPrevPage","limit","page","pagingCounter","totalDocs","totalPages","childLoading","setChildLoading","relatedState","setRelatedState","initial","group","data","isLoading","isLocked","isSelected","toggleAllInCollection","toggleSelection","getRowLockedUser","locked","id","_collectionSlug","_userEditing","handlePageChangeChildren","parentCondition","equals","or","exists","searchCondition","like","where","queryString","stringify","addQueryPrefix","url","path","response","fetch","credentials","ok","Error","result","json","_error","handlePageChangeRelated","relatedSlug","state","find","g","prev","relationshipCondition","fieldName","in","conditions","hasMany","push","relatedConfig","relatedUseAsTitle","admin","relatedBaseFilter","allowedCollectionsFieldName","hierarchy","collectionSpecific","childrenLabel","labels","plural","childTableData","map","doc","_allowedCollections","Boolean","_hierarchyIcon","hasChildren","hasRelated","some","allGroups","groups","slug","isChildren","isHierarchyEnabled","label","onCheckboxChange","metadata","allowedCollections","onPageChange","onSelectAllChange","paginationData","relatedLabel","relatedTableData","columns","accessor","Cell","className","heading","canShowCreateButton","length","Actions","drawerSlug","onSave","description","title","withMargin","_jsxs","Header","onChange","Content","enableCheckbox","enableDragHandle","enableHeader","enableSelectAll","mergeCheckboxHeader","selectedIds","Set","filter"],"sources":["../../../../src/views/HierarchyList/HierarchyTable/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n combineWhereConstraints,\n DEFAULT_HIERARCHY_LIST_LIMIT,\n formatAdminURL,\n} from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useMemo, useState } from 'react'\n\nimport type { CollectionOption } from '../../../elements/CreateDocumentButton/index.js'\nimport type { HierarchyDocument } from '../../../elements/Hierarchy/Tree/types.js'\nimport type { SlotColumn } from './SlotTable.js'\nimport type { RelatedGroup, TableRow } from './types.js'\n\nimport { CreateDocumentButton } from '../../../elements/CreateDocumentButton/index.js'\nimport { NoListResults } from '../../../elements/NoListResults/index.js'\nimport { SimplePagination } from '../../../elements/Pagination/SimplePagination/index.js'\nimport { TableSection } from '../../../elements/TableSection/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentSelection } from '../../../providers/DocumentSelection/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ChildNameCell } from './ChildNameCell.js'\nimport { DateCell } from './DateCell.js'\nimport { RelatedNameCell } from './RelatedNameCell.js'\nimport { SlotTable } from './SlotTable.js'\nimport { baseClass } from './types.js'\nimport './index.css'\n\n// Top-level cell components to avoid nested component eslint errors\nconst NameCell: SlotColumn<TableRow>['Cell'] = (props) =>\n props.row._hasChildren !== undefined ? (\n <ChildNameCell {...props} />\n ) : (\n <RelatedNameCell {...props} />\n )\n\nconst CollectionCell: SlotColumn<TableRow>['Cell'] = ({ row }) => (\n <span>{row._collectionLabel}</span>\n)\n\nexport type HierarchyTableProps = {\n /** Base filter applied to hierarchy collection queries (e.g., tenant filter) */\n baseFilter?: Where\n childrenData?: PaginatedDocs<HierarchyDocument>\n /** Collections available for creation (for empty state) */\n collections?: CollectionOption[]\n collectionSlug: string\n hasCreatePermission?: boolean\n /** Resolved hierarchy icon component */\n HierarchyIcon?: React.ReactNode\n hierarchyLabel: string\n parentFieldName?: string\n parentId: null | number | string\n /** Base filters for related collections (keyed by collection slug) */\n relatedBaseFilters?: Record<string, Where>\n relatedGroups: RelatedGroup[]\n search?: string\n useAsTitle: string\n}\n\nexport function HierarchyTable({\n baseFilter,\n childrenData,\n collections,\n collectionSlug,\n hasCreatePermission,\n HierarchyIcon,\n hierarchyLabel,\n parentFieldName,\n parentId,\n relatedBaseFilters,\n relatedGroups,\n search,\n useAsTitle,\n}: HierarchyTableProps) {\n const { i18n, t } = useTranslation()\n const { clearRouteCache } = useRouteCache()\n const {\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n // Children pagination state\n const [childDocs, setChildDocs] = useState(childrenData?.docs || [])\n const [childPaginationData, setChildPaginationData] = useState<Partial<PaginatedDocs>>({\n hasNextPage: childrenData?.hasNextPage || false,\n hasPrevPage: childrenData?.hasPrevPage || false,\n limit: childrenData?.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: childrenData?.page || 1,\n pagingCounter: childrenData?.pagingCounter || 1,\n totalDocs: childrenData?.totalDocs || 0,\n totalPages: childrenData?.totalPages || 1,\n })\n const [childLoading, setChildLoading] = useState(false)\n\n // Related groups pagination state (per collection)\n const [relatedState, setRelatedState] = useState<\n Record<\n string,\n {\n isLoading: boolean\n } & Partial<PaginatedDocs>\n >\n >(() => {\n const initial: Record<\n string,\n {\n isLoading: boolean\n } & Partial<PaginatedDocs>\n > = {}\n for (const group of relatedGroups) {\n initial[group.collectionSlug] = {\n docs: group.data.docs,\n hasNextPage: group.data.hasNextPage,\n hasPrevPage: group.data.hasPrevPage || false,\n isLoading: false,\n limit: group.data.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: group.data.page || 1,\n pagingCounter: group.data.pagingCounter || 1,\n totalDocs: group.data.totalDocs,\n totalPages: group.data.totalPages || 1,\n }\n }\n return initial\n })\n\n // Get selection functions from context\n const { isLocked, isSelected, toggleAllInCollection, toggleSelection } = useDocumentSelection()\n\n // Get the user who is locking a row (for SlotTable to show lock icon instead of checkbox)\n const getRowLockedUser = useCallback(\n (row: TableRow) => {\n const locked = isLocked({ id: row.id, collectionSlug: row._collectionSlug })\n return locked ? row._userEditing : undefined\n },\n [isLocked],\n )\n\n // Page change for children\n const handlePageChangeChildren = useCallback(\n async (page: number) => {\n if (childLoading) {\n return\n }\n\n setChildLoading(true)\n\n try {\n const parentCondition = parentId\n ? { [parentFieldName]: { equals: parentId } }\n : {\n or: [\n { [parentFieldName]: { exists: false } },\n { [parentFieldName]: { equals: null } },\n ],\n }\n\n const searchCondition = search ? { [useAsTitle]: { like: search } } : undefined\n const where = combineWhereConstraints([parentCondition, searchCondition, baseFilter])\n\n const queryString = qs.stringify(\n { limit: DEFAULT_HIERARCHY_LIST_LIMIT, page, where },\n { addQueryPrefix: true },\n )\n const url = formatAdminURL({\n apiRoute,\n path: `/${collectionSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (!response.ok) {\n throw new Error('Failed to load page')\n }\n\n const result: PaginatedDocs = await response.json()\n\n setChildDocs(result.docs)\n setChildPaginationData({\n hasNextPage: result.hasNextPage,\n hasPrevPage: result.hasPrevPage,\n limit: result.limit,\n page: result.page,\n pagingCounter: result.pagingCounter,\n totalDocs: result.totalDocs,\n totalPages: result.totalPages,\n })\n } catch (_error) {\n // Silently fail\n } finally {\n setChildLoading(false)\n }\n },\n [\n apiRoute,\n baseFilter,\n childLoading,\n collectionSlug,\n parentFieldName,\n parentId,\n search,\n serverURL,\n useAsTitle,\n ],\n )\n\n // Page change for a related collection\n const handlePageChangeRelated = useCallback(\n async (relatedSlug: string, page: number) => {\n const state = relatedState[relatedSlug]\n if (!state || state.isLoading) {\n return\n }\n\n // Find the group to get field info\n const group = relatedGroups.find((g) => g.collectionSlug === relatedSlug)\n if (!group) {\n return\n }\n\n setRelatedState((prev) => ({\n ...prev,\n [relatedSlug]: { ...prev[relatedSlug], isLoading: true },\n }))\n\n try {\n // Build relationship condition based on whether we're at root or in a parent\n let relationshipCondition: Record<string, unknown>\n if (parentId) {\n // Nested level: find documents assigned to this hierarchy item\n // \"in\" operator works for both hasMany and single relationship fields\n relationshipCondition = { [group.fieldName]: { in: [parentId] } }\n } else {\n // Root level: find documents where hierarchy field doesn't exist, is null, or is empty array\n const conditions: Record<string, unknown>[] = [\n { [group.fieldName]: { exists: false } },\n { [group.fieldName]: { equals: null } },\n ]\n if (group.hasMany) {\n // hasMany fields store cleared values as empty arrays\n conditions.push({ [group.fieldName]: { equals: [] } })\n }\n relationshipCondition = { or: conditions }\n }\n\n const relatedConfig = getEntityConfig({ collectionSlug: relatedSlug })\n const relatedUseAsTitle = relatedConfig?.admin?.useAsTitle || 'id'\n\n const searchCondition = search ? { [relatedUseAsTitle]: { like: search } } : undefined\n const relatedBaseFilter = relatedBaseFilters?.[relatedSlug]\n const where = combineWhereConstraints([\n relationshipCondition,\n searchCondition,\n relatedBaseFilter,\n ])\n\n const queryString = qs.stringify(\n { limit: DEFAULT_HIERARCHY_LIST_LIMIT, page, where },\n { addQueryPrefix: true },\n )\n const url = formatAdminURL({\n apiRoute,\n path: `/${relatedSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (!response.ok) {\n throw new Error('Failed to load page')\n }\n\n const result: PaginatedDocs = await response.json()\n\n setRelatedState((prev) => ({\n ...prev,\n [relatedSlug]: {\n docs: result.docs,\n hasNextPage: result.hasNextPage,\n hasPrevPage: result.hasPrevPage,\n isLoading: false,\n limit: result.limit,\n page: result.page,\n pagingCounter: result.pagingCounter,\n totalDocs: result.totalDocs,\n totalPages: result.totalPages,\n },\n }))\n } catch (_error) {\n setRelatedState((prev) => ({\n ...prev,\n [relatedSlug]: { ...prev[relatedSlug], isLoading: false },\n }))\n }\n },\n [\n apiRoute,\n getEntityConfig,\n parentFieldName,\n parentId,\n relatedBaseFilters,\n relatedGroups,\n relatedState,\n search,\n serverURL,\n ],\n )\n\n // Get allowedCollections field name from hierarchy config\n const allowedCollectionsFieldName = useMemo(() => {\n const config = getEntityConfig({ collectionSlug })\n const hierarchy = config?.hierarchy\n\n if (hierarchy && typeof hierarchy === 'object' && hierarchy.collectionSpecific) {\n return hierarchy.collectionSpecific.fieldName\n }\n\n return undefined\n }, [collectionSlug, getEntityConfig])\n\n // Compute collection label for children (once)\n const childrenLabel = useMemo(\n () =>\n getTranslation(getEntityConfig({ collectionSlug })?.labels?.plural, i18n) || hierarchyLabel,\n [collectionSlug, getEntityConfig, hierarchyLabel, i18n],\n )\n\n // Build children data for table\n const childTableData: TableRow[] = useMemo(\n () =>\n childDocs.map((doc) => ({\n ...doc,\n id: doc.id,\n _allowedCollections: allowedCollectionsFieldName\n ? (doc[allowedCollectionsFieldName] as string[] | undefined)\n : undefined,\n _collectionLabel: childrenLabel,\n _collectionSlug: collectionSlug,\n _hasChildren: Boolean(doc._hasChildren),\n _hierarchyIcon: HierarchyIcon,\n })),\n [HierarchyIcon, allowedCollectionsFieldName, childDocs, childrenLabel, collectionSlug],\n )\n\n const hasChildren = (childPaginationData.totalDocs || 0) > 0\n const hasRelated = relatedGroups.some((g) => relatedState[g.collectionSlug]?.totalDocs > 0)\n\n // Unified groups array\n type GroupState = {\n docs: TableRow[]\n isChildren: boolean\n isHierarchyEnabled: boolean\n isLoading: boolean\n label: string\n onCheckboxChange: (row: TableRow) => void\n onPageChange: (page: number) => void\n onSelectAllChange: () => void\n paginationData: PaginatedDocs\n slug: string\n }\n\n const allGroups: GroupState[] = useMemo(() => {\n const groups: GroupState[] = []\n\n // Children group\n if (hasChildren) {\n groups.push({\n slug: collectionSlug,\n docs: childTableData,\n isChildren: true,\n isHierarchyEnabled: true,\n isLoading: childLoading,\n label: childrenLabel,\n onCheckboxChange: (row: TableRow) =>\n toggleSelection({\n id: row.id,\n collectionSlug,\n metadata: {\n allowedCollections: row._allowedCollections as string[] | undefined,\n },\n }),\n onPageChange: (page: number) => void handlePageChangeChildren(page),\n onSelectAllChange: () => toggleAllInCollection({ collectionSlug }),\n paginationData: {\n docs: childDocs,\n hasNextPage: childPaginationData.hasNextPage || false,\n hasPrevPage: childPaginationData.hasPrevPage || false,\n limit: childPaginationData.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: childPaginationData.page || 1,\n pagingCounter: childPaginationData.pagingCounter || 1,\n totalDocs: childPaginationData.totalDocs || 0,\n totalPages: childPaginationData.totalPages || 1,\n },\n })\n }\n\n // Related groups\n for (const group of relatedGroups) {\n const state = relatedState[group.collectionSlug]\n if (!state || state.totalDocs === 0) {\n continue\n }\n\n const relatedConfig = getEntityConfig({ collectionSlug: group.collectionSlug })\n const relatedLabel = getTranslation(relatedConfig?.labels?.plural, i18n) || group.label\n\n const relatedTableData: TableRow[] = state.docs.map((doc: Record<string, unknown>) => ({\n ...doc,\n id: doc.id as number | string,\n _collectionLabel: relatedLabel,\n _collectionSlug: group.collectionSlug,\n }))\n\n groups.push({\n slug: group.collectionSlug,\n docs: relatedTableData,\n isChildren: false,\n isHierarchyEnabled: false,\n isLoading: state.isLoading,\n label: relatedLabel,\n onCheckboxChange: (row: TableRow) =>\n toggleSelection({\n id: row.id,\n collectionSlug: group.collectionSlug,\n metadata: {}, // Related items don't have allowedCollections - their collection slug is the constraint\n }),\n onPageChange: (page: number) => void handlePageChangeRelated(group.collectionSlug, page),\n onSelectAllChange: () => toggleAllInCollection({ collectionSlug: group.collectionSlug }),\n paginationData: {\n docs: state.docs || [],\n hasNextPage: state.hasNextPage || false,\n hasPrevPage: state.hasPrevPage || false,\n limit: state.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: state.page || 1,\n pagingCounter: state.pagingCounter || 1,\n totalDocs: state.totalDocs || 0,\n totalPages: state.totalPages || 1,\n },\n })\n }\n\n return groups\n }, [\n childDocs,\n childLoading,\n childPaginationData,\n childrenLabel,\n childTableData,\n collectionSlug,\n getEntityConfig,\n handlePageChangeChildren,\n handlePageChangeRelated,\n hasChildren,\n i18n,\n relatedGroups,\n relatedState,\n toggleAllInCollection,\n toggleSelection,\n ])\n\n // Column definitions\n const columns: SlotColumn<TableRow>[] = useMemo(\n () => [\n {\n accessor: 'name',\n Cell: NameCell,\n className: `${baseClass}__col-name`,\n heading: t('general:name'),\n },\n {\n accessor: 'collection',\n Cell: CollectionCell,\n className: `${baseClass}__col-collection`,\n heading: t('general:collection'),\n },\n {\n accessor: 'updatedAt',\n Cell: DateCell,\n className: `${baseClass}__col-date`,\n heading: t('general:updatedAt'),\n },\n ],\n [t],\n )\n\n if (!hasChildren && !hasRelated) {\n const canShowCreateButton = hasCreatePermission && collections && collections.length > 0\n\n return (\n <NoListResults\n Actions={\n canShowCreateButton\n ? [\n <CreateDocumentButton\n collections={collections}\n drawerSlug={`hierarchy-create-empty-${collectionSlug}`}\n key=\"create\"\n onSave={clearRouteCache}\n />,\n ]\n : undefined\n }\n description={t('general:noResultsDescription')}\n title={t('general:noResultsFound')}\n withMargin\n />\n )\n }\n\n return (\n <div className={baseClass}>\n {allGroups.map((group) => (\n <TableSection key={group.slug}>\n <TableSection.Header heading={group.label}>\n <SimplePagination data={group.paginationData} onChange={group.onPageChange} />\n </TableSection.Header>\n <TableSection.Content>\n <SlotTable\n collectionSlug={group.slug}\n columns={columns}\n data={group.docs}\n enableCheckbox={true}\n enableDragHandle={false}\n enableHeader={true}\n enableSelectAll={true}\n getRowLockedUser={getRowLockedUser}\n mergeCheckboxHeader={false}\n onCheckboxChange={group.onCheckboxChange}\n onSelectAllChange={group.onSelectAllChange}\n parentId={parentId}\n selectedIds={\n new Set(\n group.docs\n .filter((row) => isSelected({ id: row.id, collectionSlug: group.slug }))\n .map((row) => row.id),\n )\n }\n />\n </TableSection.Content>\n </TableSection>\n ))}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","combineWhereConstraints","DEFAULT_HIERARCHY_LIST_LIMIT","formatAdminURL","qs","React","useCallback","useMemo","useState","CreateDocumentButton","NoListResults","SimplePagination","TableSection","useBranchParam","useConfig","useDocumentSelection","useRouteCache","useTranslation","ChildNameCell","DateCell","RelatedNameCell","SlotTable","baseClass","NameCell","props","row","_hasChildren","undefined","_jsx","CollectionCell","_collectionLabel","HierarchyTable","baseFilter","childrenData","collections","collectionSlug","hasCreatePermission","HierarchyIcon","hierarchyLabel","parentFieldName","parentId","relatedBaseFilters","relatedGroups","search","useAsTitle","i18n","t","clearRouteCache","config","routes","api","apiRoute","serverURL","getEntityConfig","branch","childDocs","setChildDocs","docs","childPaginationData","setChildPaginationData","hasNextPage","hasPrevPage","limit","page","pagingCounter","totalDocs","totalPages","childLoading","setChildLoading","relatedState","setRelatedState","initial","group","data","isLoading","isLocked","isSelected","toggleAllInCollection","toggleSelection","getRowLockedUser","locked","id","_collectionSlug","_userEditing","handlePageChangeChildren","parentCondition","equals","or","exists","searchCondition","like","where","queryString","stringify","addQueryPrefix","url","path","response","fetch","credentials","ok","Error","result","json","_error","handlePageChangeRelated","relatedSlug","state","find","g","prev","relationshipCondition","fieldName","in","conditions","hasMany","push","relatedConfig","relatedUseAsTitle","admin","relatedBaseFilter","allowedCollectionsFieldName","hierarchy","collectionSpecific","childrenLabel","labels","plural","childTableData","map","doc","_allowedCollections","Boolean","_hierarchyIcon","hasChildren","hasRelated","some","allGroups","groups","slug","isChildren","isHierarchyEnabled","label","onCheckboxChange","metadata","allowedCollections","onPageChange","onSelectAllChange","paginationData","relatedLabel","relatedTableData","columns","accessor","Cell","className","heading","canShowCreateButton","length","Actions","drawerSlug","onSave","description","title","withMargin","_jsxs","Header","onChange","Content","enableCheckbox","enableDragHandle","enableHeader","enableSelectAll","mergeCheckboxHeader","selectedIds","Set","filter"],"sources":["../../../../src/views/HierarchyList/HierarchyTable/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n combineWhereConstraints,\n DEFAULT_HIERARCHY_LIST_LIMIT,\n formatAdminURL,\n} from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useMemo, useState } from 'react'\n\nimport type { CollectionOption } from '../../../elements/CreateDocumentButton/index.js'\nimport type { HierarchyDocument } from '../../../elements/Hierarchy/Tree/types.js'\nimport type { SlotColumn } from './SlotTable.js'\nimport type { RelatedGroup, TableRow } from './types.js'\n\nimport { CreateDocumentButton } from '../../../elements/CreateDocumentButton/index.js'\nimport { NoListResults } from '../../../elements/NoListResults/index.js'\nimport { SimplePagination } from '../../../elements/Pagination/SimplePagination/index.js'\nimport { TableSection } from '../../../elements/TableSection/index.js'\nimport { useBranchParam } from '../../../providers/Branch/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentSelection } from '../../../providers/DocumentSelection/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ChildNameCell } from './ChildNameCell.js'\nimport { DateCell } from './DateCell.js'\nimport { RelatedNameCell } from './RelatedNameCell.js'\nimport { SlotTable } from './SlotTable.js'\nimport { baseClass } from './types.js'\nimport './index.css'\n\n// Top-level cell components to avoid nested component eslint errors\nconst NameCell: SlotColumn<TableRow>['Cell'] = (props) =>\n props.row._hasChildren !== undefined ? (\n <ChildNameCell {...props} />\n ) : (\n <RelatedNameCell {...props} />\n )\n\nconst CollectionCell: SlotColumn<TableRow>['Cell'] = ({ row }) => (\n <span>{row._collectionLabel}</span>\n)\n\nexport type HierarchyTableProps = {\n /** Base filter applied to hierarchy collection queries (e.g., tenant filter) */\n baseFilter?: Where\n childrenData?: PaginatedDocs<HierarchyDocument>\n /** Collections available for creation (for empty state) */\n collections?: CollectionOption[]\n collectionSlug: string\n hasCreatePermission?: boolean\n /** Resolved hierarchy icon component */\n HierarchyIcon?: React.ReactNode\n hierarchyLabel: string\n parentFieldName?: string\n parentId: null | number | string\n /** Base filters for related collections (keyed by collection slug) */\n relatedBaseFilters?: Record<string, Where>\n relatedGroups: RelatedGroup[]\n search?: string\n useAsTitle: string\n}\n\nexport function HierarchyTable({\n baseFilter,\n childrenData,\n collections,\n collectionSlug,\n hasCreatePermission,\n HierarchyIcon,\n hierarchyLabel,\n parentFieldName,\n parentId,\n relatedBaseFilters,\n relatedGroups,\n search,\n useAsTitle,\n}: HierarchyTableProps) {\n const { i18n, t } = useTranslation()\n const { clearRouteCache } = useRouteCache()\n const {\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const branch = useBranchParam()\n\n // Children pagination state\n const [childDocs, setChildDocs] = useState(childrenData?.docs || [])\n const [childPaginationData, setChildPaginationData] = useState<Partial<PaginatedDocs>>({\n hasNextPage: childrenData?.hasNextPage || false,\n hasPrevPage: childrenData?.hasPrevPage || false,\n limit: childrenData?.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: childrenData?.page || 1,\n pagingCounter: childrenData?.pagingCounter || 1,\n totalDocs: childrenData?.totalDocs || 0,\n totalPages: childrenData?.totalPages || 1,\n })\n const [childLoading, setChildLoading] = useState(false)\n\n // Related groups pagination state (per collection)\n const [relatedState, setRelatedState] = useState<\n Record<\n string,\n {\n isLoading: boolean\n } & Partial<PaginatedDocs>\n >\n >(() => {\n const initial: Record<\n string,\n {\n isLoading: boolean\n } & Partial<PaginatedDocs>\n > = {}\n for (const group of relatedGroups) {\n initial[group.collectionSlug] = {\n docs: group.data.docs,\n hasNextPage: group.data.hasNextPage,\n hasPrevPage: group.data.hasPrevPage || false,\n isLoading: false,\n limit: group.data.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: group.data.page || 1,\n pagingCounter: group.data.pagingCounter || 1,\n totalDocs: group.data.totalDocs,\n totalPages: group.data.totalPages || 1,\n }\n }\n return initial\n })\n\n // Get selection functions from context\n const { isLocked, isSelected, toggleAllInCollection, toggleSelection } = useDocumentSelection()\n\n // Get the user who is locking a row (for SlotTable to show lock icon instead of checkbox)\n const getRowLockedUser = useCallback(\n (row: TableRow) => {\n const locked = isLocked({ id: row.id, collectionSlug: row._collectionSlug })\n return locked ? row._userEditing : undefined\n },\n [isLocked],\n )\n\n // Page change for children\n const handlePageChangeChildren = useCallback(\n async (page: number) => {\n if (childLoading) {\n return\n }\n\n setChildLoading(true)\n\n try {\n const parentCondition = parentId\n ? { [parentFieldName]: { equals: parentId } }\n : {\n or: [\n { [parentFieldName]: { exists: false } },\n { [parentFieldName]: { equals: null } },\n ],\n }\n\n const searchCondition = search ? { [useAsTitle]: { like: search } } : undefined\n const where = combineWhereConstraints([parentCondition, searchCondition, baseFilter])\n\n const queryString = qs.stringify(\n { branch, limit: DEFAULT_HIERARCHY_LIST_LIMIT, page, where },\n { addQueryPrefix: true },\n )\n const url = formatAdminURL({\n apiRoute,\n path: `/${collectionSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (!response.ok) {\n throw new Error('Failed to load page')\n }\n\n const result: PaginatedDocs = await response.json()\n\n setChildDocs(result.docs)\n setChildPaginationData({\n hasNextPage: result.hasNextPage,\n hasPrevPage: result.hasPrevPage,\n limit: result.limit,\n page: result.page,\n pagingCounter: result.pagingCounter,\n totalDocs: result.totalDocs,\n totalPages: result.totalPages,\n })\n } catch (_error) {\n // Silently fail\n } finally {\n setChildLoading(false)\n }\n },\n [\n branch,\n apiRoute,\n baseFilter,\n childLoading,\n collectionSlug,\n parentFieldName,\n parentId,\n search,\n serverURL,\n useAsTitle,\n ],\n )\n\n // Page change for a related collection\n const handlePageChangeRelated = useCallback(\n async (relatedSlug: string, page: number) => {\n const state = relatedState[relatedSlug]\n if (!state || state.isLoading) {\n return\n }\n\n // Find the group to get field info\n const group = relatedGroups.find((g) => g.collectionSlug === relatedSlug)\n if (!group) {\n return\n }\n\n setRelatedState((prev) => ({\n ...prev,\n [relatedSlug]: { ...prev[relatedSlug], isLoading: true },\n }))\n\n try {\n // Build relationship condition based on whether we're at root or in a parent\n let relationshipCondition: Record<string, unknown>\n if (parentId) {\n // Nested level: find documents assigned to this hierarchy item\n // \"in\" operator works for both hasMany and single relationship fields\n relationshipCondition = { [group.fieldName]: { in: [parentId] } }\n } else {\n // Root level: find documents where hierarchy field doesn't exist, is null, or is empty array\n const conditions: Record<string, unknown>[] = [\n { [group.fieldName]: { exists: false } },\n { [group.fieldName]: { equals: null } },\n ]\n if (group.hasMany) {\n // hasMany fields store cleared values as empty arrays\n conditions.push({ [group.fieldName]: { equals: [] } })\n }\n relationshipCondition = { or: conditions }\n }\n\n const relatedConfig = getEntityConfig({ collectionSlug: relatedSlug })\n const relatedUseAsTitle = relatedConfig?.admin?.useAsTitle || 'id'\n\n const searchCondition = search ? { [relatedUseAsTitle]: { like: search } } : undefined\n const relatedBaseFilter = relatedBaseFilters?.[relatedSlug]\n const where = combineWhereConstraints([\n relationshipCondition,\n searchCondition,\n relatedBaseFilter,\n ])\n\n const queryString = qs.stringify(\n { branch, limit: DEFAULT_HIERARCHY_LIST_LIMIT, page, where },\n { addQueryPrefix: true },\n )\n const url = formatAdminURL({\n apiRoute,\n path: `/${relatedSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (!response.ok) {\n throw new Error('Failed to load page')\n }\n\n const result: PaginatedDocs = await response.json()\n\n setRelatedState((prev) => ({\n ...prev,\n [relatedSlug]: {\n docs: result.docs,\n hasNextPage: result.hasNextPage,\n hasPrevPage: result.hasPrevPage,\n isLoading: false,\n limit: result.limit,\n page: result.page,\n pagingCounter: result.pagingCounter,\n totalDocs: result.totalDocs,\n totalPages: result.totalPages,\n },\n }))\n } catch (_error) {\n setRelatedState((prev) => ({\n ...prev,\n [relatedSlug]: { ...prev[relatedSlug], isLoading: false },\n }))\n }\n },\n [\n branch,\n apiRoute,\n getEntityConfig,\n parentFieldName,\n parentId,\n relatedBaseFilters,\n relatedGroups,\n relatedState,\n search,\n serverURL,\n ],\n )\n\n // Get allowedCollections field name from hierarchy config\n const allowedCollectionsFieldName = useMemo(() => {\n const config = getEntityConfig({ collectionSlug })\n const hierarchy = config?.hierarchy\n\n if (hierarchy && typeof hierarchy === 'object' && hierarchy.collectionSpecific) {\n return hierarchy.collectionSpecific.fieldName\n }\n\n return undefined\n }, [collectionSlug, getEntityConfig])\n\n // Compute collection label for children (once)\n const childrenLabel = useMemo(\n () =>\n getTranslation(getEntityConfig({ collectionSlug })?.labels?.plural, i18n) || hierarchyLabel,\n [collectionSlug, getEntityConfig, hierarchyLabel, i18n],\n )\n\n // Build children data for table\n const childTableData: TableRow[] = useMemo(\n () =>\n childDocs.map((doc) => ({\n ...doc,\n id: doc.id,\n _allowedCollections: allowedCollectionsFieldName\n ? (doc[allowedCollectionsFieldName] as string[] | undefined)\n : undefined,\n _collectionLabel: childrenLabel,\n _collectionSlug: collectionSlug,\n _hasChildren: Boolean(doc._hasChildren),\n _hierarchyIcon: HierarchyIcon,\n })),\n [HierarchyIcon, allowedCollectionsFieldName, childDocs, childrenLabel, collectionSlug],\n )\n\n const hasChildren = (childPaginationData.totalDocs || 0) > 0\n const hasRelated = relatedGroups.some((g) => relatedState[g.collectionSlug]?.totalDocs > 0)\n\n // Unified groups array\n type GroupState = {\n docs: TableRow[]\n isChildren: boolean\n isHierarchyEnabled: boolean\n isLoading: boolean\n label: string\n onCheckboxChange: (row: TableRow) => void\n onPageChange: (page: number) => void\n onSelectAllChange: () => void\n paginationData: PaginatedDocs\n slug: string\n }\n\n const allGroups: GroupState[] = useMemo(() => {\n const groups: GroupState[] = []\n\n // Children group\n if (hasChildren) {\n groups.push({\n slug: collectionSlug,\n docs: childTableData,\n isChildren: true,\n isHierarchyEnabled: true,\n isLoading: childLoading,\n label: childrenLabel,\n onCheckboxChange: (row: TableRow) =>\n toggleSelection({\n id: row.id,\n collectionSlug,\n metadata: {\n allowedCollections: row._allowedCollections as string[] | undefined,\n },\n }),\n onPageChange: (page: number) => void handlePageChangeChildren(page),\n onSelectAllChange: () => toggleAllInCollection({ collectionSlug }),\n paginationData: {\n docs: childDocs,\n hasNextPage: childPaginationData.hasNextPage || false,\n hasPrevPage: childPaginationData.hasPrevPage || false,\n limit: childPaginationData.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: childPaginationData.page || 1,\n pagingCounter: childPaginationData.pagingCounter || 1,\n totalDocs: childPaginationData.totalDocs || 0,\n totalPages: childPaginationData.totalPages || 1,\n },\n })\n }\n\n // Related groups\n for (const group of relatedGroups) {\n const state = relatedState[group.collectionSlug]\n if (!state || state.totalDocs === 0) {\n continue\n }\n\n const relatedConfig = getEntityConfig({ collectionSlug: group.collectionSlug })\n const relatedLabel = getTranslation(relatedConfig?.labels?.plural, i18n) || group.label\n\n const relatedTableData: TableRow[] = state.docs.map((doc: Record<string, unknown>) => ({\n ...doc,\n id: doc.id as number | string,\n _collectionLabel: relatedLabel,\n _collectionSlug: group.collectionSlug,\n }))\n\n groups.push({\n slug: group.collectionSlug,\n docs: relatedTableData,\n isChildren: false,\n isHierarchyEnabled: false,\n isLoading: state.isLoading,\n label: relatedLabel,\n onCheckboxChange: (row: TableRow) =>\n toggleSelection({\n id: row.id,\n collectionSlug: group.collectionSlug,\n metadata: {}, // Related items don't have allowedCollections - their collection slug is the constraint\n }),\n onPageChange: (page: number) => void handlePageChangeRelated(group.collectionSlug, page),\n onSelectAllChange: () => toggleAllInCollection({ collectionSlug: group.collectionSlug }),\n paginationData: {\n docs: state.docs || [],\n hasNextPage: state.hasNextPage || false,\n hasPrevPage: state.hasPrevPage || false,\n limit: state.limit || DEFAULT_HIERARCHY_LIST_LIMIT,\n page: state.page || 1,\n pagingCounter: state.pagingCounter || 1,\n totalDocs: state.totalDocs || 0,\n totalPages: state.totalPages || 1,\n },\n })\n }\n\n return groups\n }, [\n childDocs,\n childLoading,\n childPaginationData,\n childrenLabel,\n childTableData,\n collectionSlug,\n getEntityConfig,\n handlePageChangeChildren,\n handlePageChangeRelated,\n hasChildren,\n i18n,\n relatedGroups,\n relatedState,\n toggleAllInCollection,\n toggleSelection,\n ])\n\n // Column definitions\n const columns: SlotColumn<TableRow>[] = useMemo(\n () => [\n {\n accessor: 'name',\n Cell: NameCell,\n className: `${baseClass}__col-name`,\n heading: t('general:name'),\n },\n {\n accessor: 'collection',\n Cell: CollectionCell,\n className: `${baseClass}__col-collection`,\n heading: t('general:collection'),\n },\n {\n accessor: 'updatedAt',\n Cell: DateCell,\n className: `${baseClass}__col-date`,\n heading: t('general:updatedAt'),\n },\n ],\n [t],\n )\n\n if (!hasChildren && !hasRelated) {\n const canShowCreateButton = hasCreatePermission && collections && collections.length > 0\n\n return (\n <NoListResults\n Actions={\n canShowCreateButton\n ? [\n <CreateDocumentButton\n collections={collections}\n drawerSlug={`hierarchy-create-empty-${collectionSlug}`}\n key=\"create\"\n onSave={clearRouteCache}\n />,\n ]\n : undefined\n }\n description={t('general:noResultsDescription')}\n title={t('general:noResultsFound')}\n withMargin\n />\n )\n }\n\n return (\n <div className={baseClass}>\n {allGroups.map((group) => (\n <TableSection key={group.slug}>\n <TableSection.Header heading={group.label}>\n <SimplePagination data={group.paginationData} onChange={group.onPageChange} />\n </TableSection.Header>\n <TableSection.Content>\n <SlotTable\n collectionSlug={group.slug}\n columns={columns}\n data={group.docs}\n enableCheckbox={true}\n enableDragHandle={false}\n enableHeader={true}\n enableSelectAll={true}\n getRowLockedUser={getRowLockedUser}\n mergeCheckboxHeader={false}\n onCheckboxChange={group.onCheckboxChange}\n onSelectAllChange={group.onSelectAllChange}\n parentId={parentId}\n selectedIds={\n new Set(\n group.docs\n .filter((row) => isSelected({ id: row.id, collectionSlug: group.slug }))\n .map((row) => row.id),\n )\n }\n />\n </TableSection.Content>\n </TableSection>\n ))}\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAIA,SAASA,cAAc,QAAQ;AAC/B,SACEC,uBAAuB,EACvBC,4BAA4B,EAC5BC,cAAc,QACT;AACP,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,WAAW,EAAEC,OAAO,EAAEC,QAAQ,QAAQ;AAOtD,SAASC,oBAAoB,QAAQ;AACrC,SAASC,aAAa,QAAQ;AAC9B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,SAAS,QAAQ;AAC1B,SAASC,oBAAoB,QAAQ;AACrC,SAASC,aAAa,QAAQ;AAC9B,SAASC,cAAc,QAAQ;AAC/B,SAASC,aAAa,QAAQ;AAC9B,SAASC,QAAQ,QAAQ;AACzB,SAASC,eAAe,QAAQ;AAChC,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,OAAO;AAEP;AACA,MAAMC,QAAA,GAA0CC,KAAA,IAC9CA,KAAA,CAAMC,GAAG,CAACC,YAAY,KAAKC,SAAA,gBACzBC,IAAA,CAACV,aAAA;EAAe,GAAGM;kBAEnBI,IAAA,CAACR,eAAA;EAAiB,GAAGI;;AAGzB,MAAMK,cAAA,GAA+CA,CAAC;EAAEJ;AAAG,CAAE,kBAC3DG,IAAA,CAAC;YAAMH,GAAA,CAAIK;;AAuBb,OAAO,SAASC,eAAe;EAC7BC,UAAU;EACVC,YAAY;EACZC,WAAW;EACXC,cAAc;EACdC,mBAAmB;EACnBC,aAAa;EACbC,cAAc;EACdC,eAAe;EACfC,QAAQ;EACRC,kBAAkB;EAClBC,aAAa;EACbC,MAAM;EACNC;AAAU,CACU;EACpB,MAAM;IAAEC,IAAI;IAAEC;EAAC,CAAE,GAAG7B,cAAA;EACpB,MAAM;IAAE8B;EAAe,CAAE,GAAG/B,aAAA;EAC5B,MAAM;IACJgC,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,GAAA,EAAKC;MAAQ,CAAE;MACzBC;IAAS,CACV;IACDC;EAAe,CAChB,GAAGvC,SAAA;EAEJ,MAAMwC,MAAA,GAASzC,cAAA;EAEf;EACA,MAAM,CAAC0C,SAAA,EAAWC,YAAA,CAAa,GAAGhD,QAAA,CAASyB,YAAA,EAAcwB,IAAA,IAAQ,EAAE;EACnE,MAAM,CAACC,mBAAA,EAAqBC,sBAAA,CAAuB,GAAGnD,QAAA,CAAiC;IACrFoD,WAAA,EAAa3B,YAAA,EAAc2B,WAAA,IAAe;IAC1CC,WAAA,EAAa5B,YAAA,EAAc4B,WAAA,IAAe;IAC1CC,KAAA,EAAO7B,YAAA,EAAc6B,KAAA,IAAS5D,4BAAA;IAC9B6D,IAAA,EAAM9B,YAAA,EAAc8B,IAAA,IAAQ;IAC5BC,aAAA,EAAe/B,YAAA,EAAc+B,aAAA,IAAiB;IAC9CC,SAAA,EAAWhC,YAAA,EAAcgC,SAAA,IAAa;IACtCC,UAAA,EAAYjC,YAAA,EAAciC,UAAA,IAAc;EAC1C;EACA,MAAM,CAACC,YAAA,EAAcC,eAAA,CAAgB,GAAG5D,QAAA,CAAS;EAEjD;EACA,MAAM,CAAC6D,YAAA,EAAcC,eAAA,CAAgB,GAAG9D,QAAA,CAOtC;IACA,MAAM+D,OAAA,GAKF,CAAC;IACL,KAAK,MAAMC,KAAA,IAAS9B,aAAA,EAAe;MACjC6B,OAAO,CAACC,KAAA,CAAMrC,cAAc,CAAC,GAAG;QAC9BsB,IAAA,EAAMe,KAAA,CAAMC,IAAI,CAAChB,IAAI;QACrBG,WAAA,EAAaY,KAAA,CAAMC,IAAI,CAACb,WAAW;QACnCC,WAAA,EAAaW,KAAA,CAAMC,IAAI,CAACZ,WAAW,IAAI;QACvCa,SAAA,EAAW;QACXZ,KAAA,EAAOU,KAAA,CAAMC,IAAI,CAACX,KAAK,IAAI5D,4BAAA;QAC3B6D,IAAA,EAAMS,KAAA,CAAMC,IAAI,CAACV,IAAI,IAAI;QACzBC,aAAA,EAAeQ,KAAA,CAAMC,IAAI,CAACT,aAAa,IAAI;QAC3CC,SAAA,EAAWO,KAAA,CAAMC,IAAI,CAACR,SAAS;QAC/BC,UAAA,EAAYM,KAAA,CAAMC,IAAI,CAACP,UAAU,IAAI;MACvC;IACF;IACA,OAAOK,OAAA;EACT;EAEA;EACA,MAAM;IAAEI,QAAQ;IAAEC,UAAU;IAAEC,qBAAqB;IAAEC;EAAe,CAAE,GAAG/D,oBAAA;EAEzE;EACA,MAAMgE,gBAAA,GAAmBzE,WAAA,CACtBmB,GAAA;IACC,MAAMuD,MAAA,GAASL,QAAA,CAAS;MAAEM,EAAA,EAAIxD,GAAA,CAAIwD,EAAE;MAAE9C,cAAA,EAAgBV,GAAA,CAAIyD;IAAgB;IAC1E,OAAOF,MAAA,GAASvD,GAAA,CAAI0D,YAAY,GAAGxD,SAAA;EACrC,GACA,CAACgD,QAAA,CAAS;EAGZ;EACA,MAAMS,wBAAA,GAA2B9E,WAAA,CAC/B,MAAOyD,IAAA;IACL,IAAII,YAAA,EAAc;MAChB;IACF;IAEAC,eAAA,CAAgB;IAEhB,IAAI;MACF,MAAMiB,eAAA,GAAkB7C,QAAA,GACpB;QAAE,CAACD,eAAA,GAAkB;UAAE+C,MAAA,EAAQ9C;QAAS;MAAE,IAC1C;QACE+C,EAAA,EAAI,CACF;UAAE,CAAChD,eAAA,GAAkB;YAAEiD,MAAA,EAAQ;UAAM;QAAE,GACvC;UAAE,CAACjD,eAAA,GAAkB;YAAE+C,MAAA,EAAQ;UAAK;QAAE;MAE1C;MAEJ,MAAMG,eAAA,GAAkB9C,MAAA,GAAS;QAAE,CAACC,UAAA,GAAa;UAAE8C,IAAA,EAAM/C;QAAO;MAAE,IAAIhB,SAAA;MACtE,MAAMgE,KAAA,GAAQ1F,uBAAA,CAAwB,CAACoF,eAAA,EAAiBI,eAAA,EAAiBzD,UAAA,CAAW;MAEpF,MAAM4D,WAAA,GAAcxF,EAAA,CAAGyF,SAAS,CAC9B;QAAEvC,MAAA;QAAQQ,KAAA,EAAO5D,4BAAA;QAA8B6D,IAAA;QAAM4B;MAAM,GAC3D;QAAEG,cAAA,EAAgB;MAAK;MAEzB,MAAMC,GAAA,GAAM5F,cAAA,CAAe;QACzBgD,QAAA;QACA6C,IAAA,EAAM,IAAI7D,cAAA,GAAiByD,WAAA,EAAa;QACxCxC;MACF;MAEA,MAAM6C,QAAA,GAAW,MAAMC,KAAA,CAAMH,GAAA,EAAK;QAAEI,WAAA,EAAa;MAAU;MAE3D,IAAI,CAACF,QAAA,CAASG,EAAE,EAAE;QAChB,MAAM,IAAIC,KAAA,CAAM;MAClB;MAEA,MAAMC,MAAA,GAAwB,MAAML,QAAA,CAASM,IAAI;MAEjD/C,YAAA,CAAa8C,MAAA,CAAO7C,IAAI;MACxBE,sBAAA,CAAuB;QACrBC,WAAA,EAAa0C,MAAA,CAAO1C,WAAW;QAC/BC,WAAA,EAAayC,MAAA,CAAOzC,WAAW;QAC/BC,KAAA,EAAOwC,MAAA,CAAOxC,KAAK;QACnBC,IAAA,EAAMuC,MAAA,CAAOvC,IAAI;QACjBC,aAAA,EAAesC,MAAA,CAAOtC,aAAa;QACnCC,SAAA,EAAWqC,MAAA,CAAOrC,SAAS;QAC3BC,UAAA,EAAYoC,MAAA,CAAOpC;MACrB;IACF,EAAE,OAAOsC,MAAA,EAAQ;MACf;IAAA,CACF,SAAU;MACRpC,eAAA,CAAgB;IAClB;EACF,GACA,CACEd,MAAA,EACAH,QAAA,EACAnB,UAAA,EACAmC,YAAA,EACAhC,cAAA,EACAI,eAAA,EACAC,QAAA,EACAG,MAAA,EACAS,SAAA,EACAR,UAAA,CACD;EAGH;EACA,MAAM6D,uBAAA,GAA0BnG,WAAA,CAC9B,OAAOoG,WAAA,EAAqB3C,MAAA;IAC1B,MAAM4C,KAAA,GAAQtC,YAAY,CAACqC,WAAA,CAAY;IACvC,IAAI,CAACC,KAAA,IAASA,KAAA,CAAMjC,SAAS,EAAE;MAC7B;IACF;IAEA;IACA,MAAMF,OAAA,GAAQ9B,aAAA,CAAckE,IAAI,CAAEC,CAAA,IAAMA,CAAA,CAAE1E,cAAc,KAAKuE,WAAA;IAC7D,IAAI,CAAClC,OAAA,EAAO;MACV;IACF;IAEAF,eAAA,CAAiBwC,IAAA,KAAU;MACzB,GAAGA,IAAI;MACP,CAACJ,WAAA,GAAc;QAAE,GAAGI,IAAI,CAACJ,WAAA,CAAY;QAAEhC,SAAA,EAAW;MAAK;IACzD;IAEA,IAAI;MACF;MACA,IAAIqC,qBAAA;MACJ,IAAIvE,QAAA,EAAU;QACZ;QACA;QACAuE,qBAAA,GAAwB;UAAE,CAACvC,OAAA,CAAMwC,SAAS,GAAG;YAAEC,EAAA,EAAI,CAACzE,QAAA;UAAU;QAAE;MAClE,OAAO;QACL;QACA,MAAM0E,UAAA,GAAwC,CAC5C;UAAE,CAAC1C,OAAA,CAAMwC,SAAS,GAAG;YAAExB,MAAA,EAAQ;UAAM;QAAE,GACvC;UAAE,CAAChB,OAAA,CAAMwC,SAAS,GAAG;YAAE1B,MAAA,EAAQ;UAAK;QAAE,EACvC;QACD,IAAId,OAAA,CAAM2C,OAAO,EAAE;UACjB;UACAD,UAAA,CAAWE,IAAI,CAAC;YAAE,CAAC5C,OAAA,CAAMwC,SAAS,GAAG;cAAE1B,MAAA,EAAQ;YAAG;UAAE;QACtD;QACAyB,qBAAA,GAAwB;UAAExB,EAAA,EAAI2B;QAAW;MAC3C;MAEA,MAAMG,aAAA,GAAgBhE,eAAA,CAAgB;QAAElB,cAAA,EAAgBuE;MAAY;MACpE,MAAMY,iBAAA,GAAoBD,aAAA,EAAeE,KAAA,EAAO3E,UAAA,IAAc;MAE9D,MAAM6C,iBAAA,GAAkB9C,MAAA,GAAS;QAAE,CAAC2E,iBAAA,GAAoB;UAAE5B,IAAA,EAAM/C;QAAO;MAAE,IAAIhB,SAAA;MAC7E,MAAM6F,iBAAA,GAAoB/E,kBAAA,GAAqBiE,WAAA,CAAY;MAC3D,MAAMf,OAAA,GAAQ1F,uBAAA,CAAwB,CACpC8G,qBAAA,EACAtB,iBAAA,EACA+B,iBAAA,CACD;MAED,MAAM5B,aAAA,GAAcxF,EAAA,CAAGyF,SAAS,CAC9B;QAAEvC,MAAA;QAAQQ,KAAA,EAAO5D,4BAAA;QAA8B6D,IAAA,EAAAA,MAAA;QAAM4B,KAAA,EAAAA;MAAM,GAC3D;QAAEG,cAAA,EAAgB;MAAK;MAEzB,MAAMC,KAAA,GAAM5F,cAAA,CAAe;QACzBgD,QAAA;QACA6C,IAAA,EAAM,IAAIU,WAAA,GAAcd,aAAA,EAAa;QACrCxC;MACF;MAEA,MAAM6C,UAAA,GAAW,MAAMC,KAAA,CAAMH,KAAA,EAAK;QAAEI,WAAA,EAAa;MAAU;MAE3D,IAAI,CAACF,UAAA,CAASG,EAAE,EAAE;QAChB,MAAM,IAAIC,KAAA,CAAM;MAClB;MAEA,MAAMC,QAAA,GAAwB,MAAML,UAAA,CAASM,IAAI;MAEjDjC,eAAA,CAAiBwC,MAAA,KAAU;QACzB,GAAGA,MAAI;QACP,CAACJ,WAAA,GAAc;UACbjD,IAAA,EAAM6C,QAAA,CAAO7C,IAAI;UACjBG,WAAA,EAAa0C,QAAA,CAAO1C,WAAW;UAC/BC,WAAA,EAAayC,QAAA,CAAOzC,WAAW;UAC/Ba,SAAA,EAAW;UACXZ,KAAA,EAAOwC,QAAA,CAAOxC,KAAK;UACnBC,IAAA,EAAMuC,QAAA,CAAOvC,IAAI;UACjBC,aAAA,EAAesC,QAAA,CAAOtC,aAAa;UACnCC,SAAA,EAAWqC,QAAA,CAAOrC,SAAS;UAC3BC,UAAA,EAAYoC,QAAA,CAAOpC;QACrB;MACF;IACF,EAAE,OAAOsC,QAAA,EAAQ;MACflC,eAAA,CAAiBwC,MAAA,KAAU;QACzB,GAAGA,MAAI;QACP,CAACJ,WAAA,GAAc;UAAE,GAAGI,MAAI,CAACJ,WAAA,CAAY;UAAEhC,SAAA,EAAW;QAAM;MAC1D;IACF;EACF,GACA,CACEpB,MAAA,EACAH,QAAA,EACAE,eAAA,EACAd,eAAA,EACAC,QAAA,EACAC,kBAAA,EACAC,aAAA,EACA2B,YAAA,EACA1B,MAAA,EACAS,SAAA,CACD;EAGH;EACA,MAAMqE,2BAAA,GAA8BlH,OAAA,CAAQ;IAC1C,MAAMyC,MAAA,GAASK,eAAA,CAAgB;MAAElB;IAAe;IAChD,MAAMuF,SAAA,GAAY1E,MAAA,EAAQ0E,SAAA;IAE1B,IAAIA,SAAA,IAAa,OAAOA,SAAA,KAAc,YAAYA,SAAA,CAAUC,kBAAkB,EAAE;MAC9E,OAAOD,SAAA,CAAUC,kBAAkB,CAACX,SAAS;IAC/C;IAEA,OAAOrF,SAAA;EACT,GAAG,CAACQ,cAAA,EAAgBkB,eAAA,CAAgB;EAEpC;EACA,MAAMuE,aAAA,GAAgBrH,OAAA,CACpB,MACEP,cAAA,CAAeqD,eAAA,CAAgB;IAAElB;EAAe,IAAI0F,MAAA,EAAQC,MAAA,EAAQjF,IAAA,KAASP,cAAA,EAC/E,CAACH,cAAA,EAAgBkB,eAAA,EAAiBf,cAAA,EAAgBO,IAAA,CAAK;EAGzD;EACA,MAAMkF,cAAA,GAA6BxH,OAAA,CACjC,MACEgD,SAAA,CAAUyE,GAAG,CAAEC,GAAA,KAAS;IACtB,GAAGA,GAAG;IACNhD,EAAA,EAAIgD,GAAA,CAAIhD,EAAE;IACViD,mBAAA,EAAqBT,2BAAA,GAChBQ,GAAG,CAACR,2BAAA,CAA4B,GACjC9F,SAAA;IACJG,gBAAA,EAAkB8F,aAAA;IAClB1C,eAAA,EAAiB/C,cAAA;IACjBT,YAAA,EAAcyG,OAAA,CAAQF,GAAA,CAAIvG,YAAY;IACtC0G,cAAA,EAAgB/F;EAClB,KACF,CAACA,aAAA,EAAeoF,2BAAA,EAA6BlE,SAAA,EAAWqE,aAAA,EAAezF,cAAA,CAAe;EAGxF,MAAMkG,WAAA,GAAc,CAAC3E,mBAAA,CAAoBO,SAAS,IAAI,KAAK;EAC3D,MAAMqE,UAAA,GAAa5F,aAAA,CAAc6F,IAAI,CAAE1B,GAAA,IAAMxC,YAAY,CAACwC,GAAA,CAAE1E,cAAc,CAAC,EAAE8B,SAAA,GAAY;EAgBzF,MAAMuE,SAAA,GAA0BjI,OAAA,CAAQ;IACtC,MAAMkI,MAAA,GAAuB,EAAE;IAE/B;IACA,IAAIJ,WAAA,EAAa;MACfI,MAAA,CAAOrB,IAAI,CAAC;QACVsB,IAAA,EAAMvG,cAAA;QACNsB,IAAA,EAAMsE,cAAA;QACNY,UAAA,EAAY;QACZC,kBAAA,EAAoB;QACpBlE,SAAA,EAAWP,YAAA;QACX0E,KAAA,EAAOjB,aAAA;QACPkB,gBAAA,EAAmBrH,KAAA,IACjBqD,eAAA,CAAgB;UACdG,EAAA,EAAIxD,KAAA,CAAIwD,EAAE;UACV9C,cAAA;UACA4G,QAAA,EAAU;YACRC,kBAAA,EAAoBvH,KAAA,CAAIyG;UAC1B;QACF;QACFe,YAAA,EAAelF,MAAA,IAAiB,KAAKqB,wBAAA,CAAyBrB,MAAA;QAC9DmF,iBAAA,EAAmBA,CAAA,KAAMrE,qBAAA,CAAsB;UAAE1C;QAAe;QAChEgH,cAAA,EAAgB;UACd1F,IAAA,EAAMF,SAAA;UACNK,WAAA,EAAaF,mBAAA,CAAoBE,WAAW,IAAI;UAChDC,WAAA,EAAaH,mBAAA,CAAoBG,WAAW,IAAI;UAChDC,KAAA,EAAOJ,mBAAA,CAAoBI,KAAK,IAAI5D,4BAAA;UACpC6D,IAAA,EAAML,mBAAA,CAAoBK,IAAI,IAAI;UAClCC,aAAA,EAAeN,mBAAA,CAAoBM,aAAa,IAAI;UACpDC,SAAA,EAAWP,mBAAA,CAAoBO,SAAS,IAAI;UAC5CC,UAAA,EAAYR,mBAAA,CAAoBQ,UAAU,IAAI;QAChD;MACF;IACF;IAEA;IACA,KAAK,MAAMM,OAAA,IAAS9B,aAAA,EAAe;MACjC,MAAMiE,OAAA,GAAQtC,YAAY,CAACG,OAAA,CAAMrC,cAAc,CAAC;MAChD,IAAI,CAACwE,OAAA,IAASA,OAAA,CAAM1C,SAAS,KAAK,GAAG;QACnC;MACF;MAEA,MAAMoD,eAAA,GAAgBhE,eAAA,CAAgB;QAAElB,cAAA,EAAgBqC,OAAA,CAAMrC;MAAe;MAC7E,MAAMiH,YAAA,GAAepJ,cAAA,CAAeqH,eAAA,EAAeQ,MAAA,EAAQC,MAAA,EAAQjF,IAAA,KAAS2B,OAAA,CAAMqE,KAAK;MAEvF,MAAMQ,gBAAA,GAA+B1C,OAAA,CAAMlD,IAAI,CAACuE,GAAG,CAAEC,KAAA,KAAkC;QACrF,GAAGA,KAAG;QACNhD,EAAA,EAAIgD,KAAA,CAAIhD,EAAE;QACVnD,gBAAA,EAAkBsH,YAAA;QAClBlE,eAAA,EAAiBV,OAAA,CAAMrC;MACzB;MAEAsG,MAAA,CAAOrB,IAAI,CAAC;QACVsB,IAAA,EAAMlE,OAAA,CAAMrC,cAAc;QAC1BsB,IAAA,EAAM4F,gBAAA;QACNV,UAAA,EAAY;QACZC,kBAAA,EAAoB;QACpBlE,SAAA,EAAWiC,OAAA,CAAMjC,SAAS;QAC1BmE,KAAA,EAAOO,YAAA;QACPN,gBAAA,EAAmBrH,KAAA,IACjBqD,eAAA,CAAgB;UACdG,EAAA,EAAIxD,KAAA,CAAIwD,EAAE;UACV9C,cAAA,EAAgBqC,OAAA,CAAMrC,cAAc;UACpC4G,QAAA,EAAU,CAAC;QACb;QACFE,YAAA,EAAelF,MAAA,IAAiB,KAAK0C,uBAAA,CAAwBjC,OAAA,CAAMrC,cAAc,EAAE4B,MAAA;QACnFmF,iBAAA,EAAmBA,CAAA,KAAMrE,qBAAA,CAAsB;UAAE1C,cAAA,EAAgBqC,OAAA,CAAMrC;QAAe;QACtFgH,cAAA,EAAgB;UACd1F,IAAA,EAAMkD,OAAA,CAAMlD,IAAI,IAAI,EAAE;UACtBG,WAAA,EAAa+C,OAAA,CAAM/C,WAAW,IAAI;UAClCC,WAAA,EAAa8C,OAAA,CAAM9C,WAAW,IAAI;UAClCC,KAAA,EAAO6C,OAAA,CAAM7C,KAAK,IAAI5D,4BAAA;UACtB6D,IAAA,EAAM4C,OAAA,CAAM5C,IAAI,IAAI;UACpBC,aAAA,EAAe2C,OAAA,CAAM3C,aAAa,IAAI;UACtCC,SAAA,EAAW0C,OAAA,CAAM1C,SAAS,IAAI;UAC9BC,UAAA,EAAYyC,OAAA,CAAMzC,UAAU,IAAI;QAClC;MACF;IACF;IAEA,OAAOuE,MAAA;EACT,GAAG,CACDlF,SAAA,EACAY,YAAA,EACAT,mBAAA,EACAkE,aAAA,EACAG,cAAA,EACA5F,cAAA,EACAkB,eAAA,EACA+B,wBAAA,EACAqB,uBAAA,EACA4B,WAAA,EACAxF,IAAA,EACAH,aAAA,EACA2B,YAAA,EACAQ,qBAAA,EACAC,eAAA,CACD;EAED;EACA,MAAMwE,OAAA,GAAkC/I,OAAA,CACtC,MAAM,CACJ;IACEgJ,QAAA,EAAU;IACVC,IAAA,EAAMjI,QAAA;IACNkI,SAAA,EAAW,GAAGnI,SAAA,YAAqB;IACnCoI,OAAA,EAAS5G,CAAA,CAAE;EACb,GACA;IACEyG,QAAA,EAAU;IACVC,IAAA,EAAM3H,cAAA;IACN4H,SAAA,EAAW,GAAGnI,SAAA,kBAA2B;IACzCoI,OAAA,EAAS5G,CAAA,CAAE;EACb,GACA;IACEyG,QAAA,EAAU;IACVC,IAAA,EAAMrI,QAAA;IACNsI,SAAA,EAAW,GAAGnI,SAAA,YAAqB;IACnCoI,OAAA,EAAS5G,CAAA,CAAE;EACb,EACD,EACD,CAACA,CAAA,CAAE;EAGL,IAAI,CAACuF,WAAA,IAAe,CAACC,UAAA,EAAY;IAC/B,MAAMqB,mBAAA,GAAsBvH,mBAAA,IAAuBF,WAAA,IAAeA,WAAA,CAAY0H,MAAM,GAAG;IAEvF,oBACEhI,IAAA,CAAClB,aAAA;MACCmJ,OAAA,EACEF,mBAAA,GACI,C,aACE/H,IAAA,CAACnB,oBAAA;QACCyB,WAAA,EAAaA,WAAA;QACb4H,UAAA,EAAY,0BAA0B3H,cAAA,EAAgB;QAEtD4H,MAAA,EAAQhH;SADJ,UAGP,GACDpB,SAAA;MAENqI,WAAA,EAAalH,CAAA,CAAE;MACfmH,KAAA,EAAOnH,CAAA,CAAE;MACToH,UAAU;;EAGhB;EAEA,oBACEtI,IAAA,CAAC;IAAI6H,SAAA,EAAWnI,SAAA;cACbkH,SAAA,CAAUR,GAAG,CAAExD,OAAA,iBACd2F,KAAA,CAACvJ,YAAA;8BACCgB,IAAA,CAAChB,YAAA,CAAawJ,MAAM;QAACV,OAAA,EAASlF,OAAA,CAAMqE,KAAK;kBACvC,aAAAjH,IAAA,CAACjB,gBAAA;UAAiB8D,IAAA,EAAMD,OAAA,CAAM2E,cAAc;UAAEkB,QAAA,EAAU7F,OAAA,CAAMyE;;uBAEhErH,IAAA,CAAChB,YAAA,CAAa0J,OAAO;kBACnB,aAAA1I,IAAA,CAACP,SAAA;UACCc,cAAA,EAAgBqC,OAAA,CAAMkE,IAAI;UAC1BY,OAAA,EAASA,OAAA;UACT7E,IAAA,EAAMD,OAAA,CAAMf,IAAI;UAChB8G,cAAA,EAAgB;UAChBC,gBAAA,EAAkB;UAClBC,YAAA,EAAc;UACdC,eAAA,EAAiB;UACjB3F,gBAAA,EAAkBA,gBAAA;UAClB4F,mBAAA,EAAqB;UACrB7B,gBAAA,EAAkBtE,OAAA,CAAMsE,gBAAgB;UACxCI,iBAAA,EAAmB1E,OAAA,CAAM0E,iBAAiB;UAC1C1G,QAAA,EAAUA,QAAA;UACVoI,WAAA,EACE,IAAIC,GAAA,CACFrG,OAAA,CAAMf,IAAI,CACPqH,MAAM,CAAErJ,KAAA,IAAQmD,UAAA,CAAW;YAAEK,EAAA,EAAIxD,KAAA,CAAIwD,EAAE;YAAE9C,cAAA,EAAgBqC,OAAA,CAAMkE;UAAK,IACpEV,GAAG,CAAEvG,KAAA,IAAQA,KAAA,CAAIwD,EAAE;;;OAtBbT,OAAA,CAAMkE,IAAI;;AA+BrC","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { I18nClient
|
|
1
|
+
import type { I18nClient } from '@payloadcms/translations';
|
|
2
2
|
import type { ClientCollectionConfig, ViewTypes } from 'payload';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import './index.css';
|
|
@@ -17,16 +17,7 @@ export type ListHeaderProps = {
|
|
|
17
17
|
isTrashEnabled?: boolean;
|
|
18
18
|
newDocumentURL: string;
|
|
19
19
|
onBulkUploadSuccess?: () => void;
|
|
20
|
-
/** @deprecated This prop will be removed in the next major version.
|
|
21
|
-
*
|
|
22
|
-
* Opening of the bulk upload modal is handled internally.
|
|
23
|
-
*
|
|
24
|
-
* Prefer `onBulkUploadSuccess` usage to handle the success of the bulk upload.
|
|
25
|
-
*/
|
|
26
|
-
openBulkUpload: () => void;
|
|
27
20
|
smallBreak: boolean;
|
|
28
|
-
/** @deprecated This prop will be removed in the next major version. */
|
|
29
|
-
t?: TFunction;
|
|
30
21
|
TitleActions?: React.ReactNode[];
|
|
31
22
|
viewType?: ViewTypes;
|
|
32
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/List/ListHeader/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/List/ListHeader/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAGhE,OAAO,KAAK,MAAM,OAAO,CAAA;AAezB,OAAO,aAAa,CAAA;AAIpB,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,IAAI,EAAE,UAAU,CAAA;IAChB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAA;IAChC,UAAU,EAAE,OAAO,CAAA;IACnB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA+F1D,CAAA"}
|
|
@@ -26,7 +26,6 @@ export const CollectionListHeader = ({
|
|
|
26
26
|
isBulkUploadEnabled,
|
|
27
27
|
isTrashEnabled,
|
|
28
28
|
onBulkUploadSuccess,
|
|
29
|
-
openBulkUpload,
|
|
30
29
|
smallBreak,
|
|
31
30
|
viewType
|
|
32
31
|
}) => {
|
|
@@ -84,8 +83,7 @@ export const CollectionListHeader = ({
|
|
|
84
83
|
collectionSlug: collectionConfig.slug,
|
|
85
84
|
hasCreatePermission: hasCreatePermission,
|
|
86
85
|
isBulkUploadEnabled: isBulkUploadEnabled,
|
|
87
|
-
onBulkUploadSuccess: onBulkUploadSuccess
|
|
88
|
-
openBulkUpload: openBulkUpload
|
|
86
|
+
onBulkUploadSuccess: onBulkUploadSuccess
|
|
89
87
|
}, "list-header-bulk-upload"), hasDeletePermission && isTrashEnabled && viewType === 'trash' && /*#__PURE__*/_jsx(ListEmptyTrashButton, {
|
|
90
88
|
collectionConfig: collectionConfig,
|
|
91
89
|
hasDeletePermission: hasDeletePermission
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","React","CloseModalButton","DefaultListViewTabs","useListDrawerContext","DrawerRelationshipSelect","ListDrawerCreateNewDocButton","ListHeader","ListBulkUploadButton","ListEmptyTrashButton","useConfig","useListQuery","ListSelection","drawerBaseClass","CollectionListHeader","className","collectionConfig","Description","disableBulkDelete","disableBulkEdit","hasCreatePermission","hasDeletePermission","hasTrashPermission","i18n","isBulkUploadEnabled","isTrashEnabled","onBulkUploadSuccess","
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","React","CloseModalButton","DefaultListViewTabs","useListDrawerContext","DrawerRelationshipSelect","ListDrawerCreateNewDocButton","ListHeader","ListBulkUploadButton","ListEmptyTrashButton","useConfig","useListQuery","ListSelection","drawerBaseClass","CollectionListHeader","className","collectionConfig","Description","disableBulkDelete","disableBulkEdit","hasCreatePermission","hasDeletePermission","hasTrashPermission","i18n","isBulkUploadEnabled","isTrashEnabled","onBulkUploadSuccess","smallBreak","viewType","config","getEntityConfig","drawerSlug","isInDrawer","selectedOption","isTrashRoute","isGroupingBy","_jsx","Actions","AfterListHeaderContent","_jsxs","_Fragment","BeforeTitle","slug","title","collectionSlug","value","labels","plural","TitleActions","filter","Boolean","label","showSelectAllAcrossPages"],"sources":["../../../../src/views/List/ListHeader/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ClientCollectionConfig, ViewTypes } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { CloseModalButton } from '../../../elements/CloseModalButton/index.js'\nimport { DefaultListViewTabs } from '../../../elements/DefaultListViewTabs/index.js'\nimport { useListDrawerContext } from '../../../elements/ListDrawer/Provider.js'\nimport { DrawerRelationshipSelect } from '../../../elements/ListHeader/DrawerRelationshipSelect/index.js'\nimport { ListDrawerCreateNewDocButton } from '../../../elements/ListHeader/DrawerTitleActions/index.js'\nimport { ListHeader } from '../../../elements/ListHeader/index.js'\nimport {\n ListBulkUploadButton,\n ListEmptyTrashButton,\n} from '../../../elements/ListHeader/TitleActions/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useListQuery } from '../../../providers/ListQuery/index.js'\nimport { ListSelection } from '../ListSelection/index.js'\nimport './index.css'\n\nconst drawerBaseClass = 'list-drawer'\n\nexport type ListHeaderProps = {\n Actions?: React.ReactNode[]\n className?: string\n collectionConfig: ClientCollectionConfig\n Description?: React.ReactNode\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasCreatePermission: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n i18n: I18nClient\n isBulkUploadEnabled: boolean\n isTrashEnabled?: boolean\n newDocumentURL: string\n onBulkUploadSuccess?: () => void\n smallBreak: boolean\n TitleActions?: React.ReactNode[]\n viewType?: ViewTypes\n}\n\nexport const CollectionListHeader: React.FC<ListHeaderProps> = ({\n className,\n collectionConfig,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n i18n,\n isBulkUploadEnabled,\n isTrashEnabled,\n onBulkUploadSuccess,\n smallBreak,\n viewType,\n}) => {\n const { config, getEntityConfig } = useConfig()\n const { drawerSlug, isInDrawer, selectedOption } = useListDrawerContext()\n const isTrashRoute = viewType === 'trash'\n const { isGroupingBy } = useListQuery()\n\n if (isInDrawer) {\n return (\n <ListHeader\n Actions={[]}\n AfterListHeaderContent={\n <>\n {Description}\n {<DrawerRelationshipSelect />}\n </>\n }\n BeforeTitle={\n <CloseModalButton className={`${drawerBaseClass}__header-close`} slug={drawerSlug} />\n }\n className={`${drawerBaseClass}__header`}\n title={getTranslation(\n getEntityConfig({ collectionSlug: selectedOption.value })?.labels?.plural,\n i18n,\n )}\n TitleActions={[\n <ListDrawerCreateNewDocButton\n hasCreatePermission={hasCreatePermission}\n key=\"list-drawer-create-new-doc\"\n />,\n ].filter(Boolean)}\n />\n )\n }\n\n return (\n <ListHeader\n Actions={[\n !smallBreak && !isGroupingBy && (\n <ListSelection\n collectionConfig={collectionConfig}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"list-selection\"\n label={getTranslation(collectionConfig?.labels?.plural, i18n)}\n showSelectAllAcrossPages={!isGroupingBy}\n viewType={viewType}\n />\n ),\n <DefaultListViewTabs\n collectionConfig={collectionConfig}\n config={config}\n key=\"default-list-actions\"\n viewType={viewType}\n />,\n ].filter(Boolean)}\n AfterListHeaderContent={Description}\n className={className}\n title={getTranslation(collectionConfig?.labels?.plural, i18n)}\n TitleActions={[\n hasCreatePermission && isBulkUploadEnabled && !isTrashRoute && (\n <ListBulkUploadButton\n collectionSlug={collectionConfig.slug}\n hasCreatePermission={hasCreatePermission}\n isBulkUploadEnabled={isBulkUploadEnabled}\n key=\"list-header-bulk-upload\"\n onBulkUploadSuccess={onBulkUploadSuccess}\n />\n ),\n hasDeletePermission && isTrashEnabled && viewType === 'trash' && (\n <ListEmptyTrashButton\n collectionConfig={collectionConfig}\n hasDeletePermission={hasDeletePermission}\n key=\"list-header-empty-trash\"\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAIlD,OAAO,KAAgD,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAIlD,OAAO,KAAgD,MAAM,OAAO,CAAA;AA0BpE,OAAO,aAAa,CAAA;AAIpB,wBAAgB,eAAe,CAAC,KAAK,EAAE,mBAAmB,qBAyUzD"}
|
|
@@ -4,7 +4,6 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
import { getTranslation } from '@payloadcms/translations';
|
|
5
5
|
import { formatAdminURL, formatFilesize } from 'payload/shared';
|
|
6
6
|
import React, { Fragment, useEffect, useRef, useState } from 'react';
|
|
7
|
-
import { useBulkUpload } from '../../elements/BulkUpload/index.js';
|
|
8
7
|
import { Button } from '../../elements/Button/index.js';
|
|
9
8
|
import { ListControls } from '../../elements/ListControls/index.js';
|
|
10
9
|
import { useListDrawerContext } from '../../elements/ListDrawer/Provider.js';
|
|
@@ -21,7 +20,6 @@ import { useControllableState } from '../../hooks/useControllableState.js';
|
|
|
21
20
|
import { useConfig } from '../../providers/Config/index.js';
|
|
22
21
|
import { DocumentSelectionProvider } from '../../providers/DocumentSelection/index.js';
|
|
23
22
|
import { useListQuery } from '../../providers/ListQuery/index.js';
|
|
24
|
-
import { useRouter } from '../../providers/RouterAdapter/index.js';
|
|
25
23
|
import { SelectionProvider } from '../../providers/Selection/index.js';
|
|
26
24
|
import { TableColumnsProvider } from '../../providers/TableColumns/index.js';
|
|
27
25
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
@@ -77,7 +75,6 @@ export function DefaultListView(props) {
|
|
|
77
75
|
},
|
|
78
76
|
getEntityConfig
|
|
79
77
|
} = useConfig();
|
|
80
|
-
const router = useRouter();
|
|
81
78
|
const {
|
|
82
79
|
data,
|
|
83
80
|
hasActiveFilters,
|
|
@@ -97,11 +94,6 @@ export function DefaultListView(props) {
|
|
|
97
94
|
const {
|
|
98
95
|
openModal
|
|
99
96
|
} = useModal();
|
|
100
|
-
const {
|
|
101
|
-
modalSlug: bulkUploadModalSlug,
|
|
102
|
-
setCollectionSlug,
|
|
103
|
-
setOnSuccess
|
|
104
|
-
} = useBulkUpload();
|
|
105
97
|
const collectionConfig = getEntityConfig({
|
|
106
98
|
collectionSlug
|
|
107
99
|
});
|
|
@@ -136,11 +128,6 @@ export function DefaultListView(props) {
|
|
|
136
128
|
return data?.docs;
|
|
137
129
|
}
|
|
138
130
|
}, [data?.docs, isUploadCollection]);
|
|
139
|
-
const openBulkUpload = React.useCallback(() => {
|
|
140
|
-
setCollectionSlug(collectionSlug);
|
|
141
|
-
openModal(bulkUploadModalSlug);
|
|
142
|
-
setOnSuccess(() => router.refresh());
|
|
143
|
-
}, [router, collectionSlug, bulkUploadModalSlug, openModal, setCollectionSlug, setOnSuccess]);
|
|
144
131
|
useEffect(() => {
|
|
145
132
|
if (!isInDrawer) {
|
|
146
133
|
const baseLabel = {
|
|
@@ -202,7 +189,6 @@ export function DefaultListView(props) {
|
|
|
202
189
|
isBulkUploadEnabled: isBulkUploadEnabled && !upload.hideFileInputOnCreate,
|
|
203
190
|
isTrashEnabled: isTrashEnabled,
|
|
204
191
|
newDocumentURL: newDocumentURL,
|
|
205
|
-
openBulkUpload: openBulkUpload,
|
|
206
192
|
smallBreak: smallBreak,
|
|
207
193
|
viewType: viewType
|
|
208
194
|
}), /*#__PURE__*/_jsx(ListControls, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.client.js","names":["getTranslation","formatAdminURL","formatFilesize","React","Fragment","useEffect","useRef","useState","useBulkUpload","Button","ListControls","useListDrawerContext","ListWhereBuilder","useModal","NoListResults","PageControls","RenderCustomComponent","SelectMany","useStepNav","RelationshipProvider","ViewDescription","useControllableState","useConfig","DocumentSelectionProvider","useListQuery","useRouter","SelectionProvider","TableColumnsProvider","useTranslation","useWindowInfo","ListSelection","DocumentListSelection","HierarchyTable","CollectionListHeader","baseClass","DefaultListView","props","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","disableQueryPresets","enableRowSelections","hasCreatePermission","hasCreatePermissionFromProps","hasDeletePermission","hasTrashPermission","hierarchyData","listMenuItems","newDocumentURL","NoResults","queryPreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","Table","InitialTable","viewType","allowCreate","createNewDrawerSlug","isInDrawer","onBulkSelect","undefined","config","routes","admin","adminRoute","serverURL","getEntityConfig","router","data","hasActiveFilters","isGroupingBy","query","hasWhereParam","Boolean","where","isWhereOpen","setIsWhereOpen","current","openModal","modalSlug","bulkUploadModalSlug","setCollectionSlug","setOnSuccess","collectionConfig","labels","upload","isUploadCollection","isBulkUploadEnabled","bulkUpload","isTrashEnabled","trash","i18n","collectionLabel","plural","setStepNav","breakpoints","s","smallBreak","docs","useMemo","map","doc","filesize","openBulkUpload","useCallback","refresh","baseLabel","label","url","path","trashLabel","t","navItems","breadcrumbs","queryParam","parentFieldName","hierarchyBreadcrumbs","crumb","index","isLast","length","title","id","_jsxs","_jsx","className","totalDocs","description","CustomComponent","Fallback","hideFileInputOnCreate","onClick","enableQueryPresets","onWhereToggle","prev","collectionPluralLabel","fields","onEmptyRemove","collectionData","childrenData","Object","fromEntries","entries","relatedDocumentsByCollection","slug","related","result","hierarchyLabel","parentId","relatedGroups","fieldName","hasMany","useAsTitle","Actions","el","singular","to","withMargin","AfterPageControls","showSelectAllAcrossPages","totalPages"],"sources":["../../../src/views/List/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { ListViewClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, formatFilesize } from 'payload/shared'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { ListControls } from '../../elements/ListControls/index.js'\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { ListWhereBuilder } from '../../elements/ListWhereBuilder/index.js'\nimport { useModal } from '../../elements/Modal/index.js'\nimport { NoListResults } from '../../elements/NoListResults/index.js'\nimport { PageControls } from '../../elements/PageControls/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js'\nimport { ViewDescription } from '../../elements/ViewDescription/index.js'\nimport { useControllableState } from '../../hooks/useControllableState.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { DocumentSelectionProvider } from '../../providers/DocumentSelection/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { SelectionProvider } from '../../providers/Selection/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListSelection } from '../../views/List/ListSelection/index.js'\nimport { DocumentListSelection } from '../HierarchyList/DocumentListSelection/index.js'\nimport { HierarchyTable } from '../HierarchyList/HierarchyTable/index.js'\nimport { CollectionListHeader } from './ListHeader/index.js'\nimport './index.css'\n\nconst baseClass = 'collection-list'\n\nexport function DefaultListView(props: ListViewClientProps) {\n const {\n AfterList,\n AfterListTable,\n beforeActions,\n BeforeList,\n BeforeListTable,\n collectionSlug,\n columnState,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission: hasCreatePermissionFromProps,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n listMenuItems,\n newDocumentURL,\n NoResults,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table: InitialTable,\n viewType,\n } = props\n\n const [Table] = useControllableState(InitialTable)\n\n const { allowCreate, createNewDrawerSlug, isInDrawer, onBulkSelect } = useListDrawerContext()\n\n const hasCreatePermission =\n allowCreate !== undefined\n ? allowCreate && hasCreatePermissionFromProps\n : hasCreatePermissionFromProps\n\n const {\n config: {\n routes: { admin: adminRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const router = useRouter()\n\n const { data, hasActiveFilters, isGroupingBy, query } = useListQuery()\n\n const hasWhereParam = useRef(Boolean(query?.where))\n const [isWhereOpen, setIsWhereOpen] = useState(hasActiveFilters)\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n setIsWhereOpen(false)\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [query?.where])\n\n const { openModal } = useModal()\n const { modalSlug: bulkUploadModalSlug, setCollectionSlug, setOnSuccess } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { labels, upload } = collectionConfig\n\n const isUploadCollection = Boolean(upload)\n\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const isTrashEnabled = Boolean(collectionConfig.trash)\n\n const { i18n } = useTranslation()\n\n const collectionLabel = getTranslation(labels?.plural, i18n)\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const docs = React.useMemo(() => {\n if (isUploadCollection) {\n return data.docs.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n } else {\n return data?.docs\n }\n }, [data?.docs, isUploadCollection])\n\n const openBulkUpload = React.useCallback(() => {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadModalSlug)\n setOnSuccess(() => router.refresh())\n }, [router, collectionSlug, bulkUploadModalSlug, openModal, setCollectionSlug, setOnSuccess])\n\n useEffect(() => {\n if (!isInDrawer) {\n const baseLabel = {\n label: collectionLabel,\n url:\n hierarchyData || (isTrashEnabled && viewType === 'trash')\n ? formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n })\n : undefined,\n }\n\n const trashLabel = {\n label: i18n.t('general:trash'),\n }\n\n let navItems = isTrashEnabled && viewType === 'trash' ? [baseLabel, trashLabel] : [baseLabel]\n\n // Add hierarchy breadcrumbs\n if (hierarchyData?.breadcrumbs) {\n const queryParam = hierarchyData.parentFieldName || 'parent'\n const hierarchyBreadcrumbs = hierarchyData.breadcrumbs.map((crumb, index) => {\n const isLast = index === hierarchyData.breadcrumbs.length - 1\n return {\n label: crumb.title,\n url: isLast\n ? undefined\n : formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}?${queryParam}=${crumb.id}`,\n }),\n }\n })\n navItems = [...navItems, ...hierarchyBreadcrumbs]\n }\n\n setStepNav(navItems)\n }\n }, [\n adminRoute,\n setStepNav,\n serverURL,\n labels,\n isInDrawer,\n isTrashEnabled,\n viewType,\n i18n,\n collectionSlug,\n hierarchyData,\n collectionLabel,\n ])\n\n return (\n <Fragment>\n <TableColumnsProvider collectionSlug={collectionSlug} columnState={columnState}>\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SelectionProvider docs={docs} totalDocs={data?.totalDocs}>\n {BeforeList}\n <CollectionListHeader\n collectionConfig={collectionConfig}\n Description={\n Description || collectionConfig?.admin?.description ? (\n <div className={`${baseClass}__sub-header`}>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={\n <ViewDescription\n collectionSlug={collectionSlug}\n description={collectionConfig?.admin?.description}\n />\n }\n />\n </div>\n ) : undefined\n }\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n hasCreatePermission={hasCreatePermission}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled && !upload.hideFileInputOnCreate}\n isTrashEnabled={isTrashEnabled}\n newDocumentURL={newDocumentURL}\n openBulkUpload={openBulkUpload}\n smallBreak={smallBreak}\n viewType={viewType}\n />\n <ListControls\n beforeActions={\n enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [...beforeActions, <SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions\n }\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n disableQueryPresets={\n collectionConfig?.enableQueryPresets !== true || disableQueryPresets\n }\n hasCreatePermission={hasCreatePermission && viewType !== 'trash' && !isInDrawer}\n isWhereOpen={isWhereOpen}\n listMenuItems={listMenuItems}\n newDocumentURL={newDocumentURL}\n onWhereToggle={() => setIsWhereOpen((prev) => !prev)}\n queryPreset={queryPreset}\n queryPresetPermissions={queryPresetPermissions}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n {isWhereOpen && (\n <ListWhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionSlug}\n fields={collectionConfig?.fields}\n onEmptyRemove={() => setIsWhereOpen(false)}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n )}\n {BeforeListTable}\n {hierarchyData ? (\n <DocumentSelectionProvider\n collectionData={{\n [collectionSlug]: { docs: hierarchyData.childrenData.docs },\n ...Object.fromEntries(\n Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => [slug, { docs: related.result.docs }],\n ),\n ),\n }}\n >\n <HierarchyTable\n childrenData={hierarchyData.childrenData}\n collectionSlug={collectionSlug}\n hierarchyLabel={collectionLabel}\n key={hierarchyData.parentId}\n parentId={hierarchyData.parentId}\n relatedGroups={Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => ({\n collectionSlug: slug,\n data: related.result,\n fieldName: related.fieldName,\n hasMany: related.hasMany,\n label: related.label,\n }),\n )}\n useAsTitle={collectionConfig?.admin?.useAsTitle || 'id'}\n />\n <DocumentListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n />\n </DocumentSelectionProvider>\n ) : docs?.length > 0 ? (\n <RelationshipProvider>{Table}</RelationshipProvider>\n ) : null}\n {/* HierarchyTable handles its own empty state, skip for hierarchy views */}\n {docs?.length === 0 &&\n (NoResults ?? (\n <NoListResults\n Actions={\n hasCreatePermission && newDocumentURL && viewType !== 'trash'\n ? [\n isInDrawer ? (\n <Button\n el=\"button\"\n key=\"create\"\n onClick={() => openModal(createNewDrawerSlug)}\n >\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ) : (\n <Button el=\"link\" key=\"create\" to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ),\n ]\n : []\n }\n description={\n viewType === 'trash'\n ? i18n.t('general:noTrashResults', {\n label: getTranslation(labels?.plural, i18n),\n })\n : i18n.t('general:noResultsDescription')\n }\n title={viewType !== 'trash' ? i18n.t('general:noResultsFound') : undefined}\n withMargin\n />\n ))}\n {AfterListTable}\n {AfterList}\n {docs?.length > 0 && !isGroupingBy && (\n <PageControls\n AfterPageControls={\n smallBreak ? (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection\n collectionConfig={collectionConfig}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n label={collectionLabel}\n showSelectAllAcrossPages={!isGroupingBy}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n {enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [\n ...beforeActions,\n <SelectMany key=\"select-many\" onClick={onBulkSelect} />,\n ]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions}\n </div>\n </div>\n ) : null\n }\n collectionConfig={collectionConfig}\n />\n )}\n </SelectionProvider>\n </div>\n </TableColumnsProvider>\n {docs?.length > 0 && isGroupingBy && data.totalPages > 1 && (\n <PageControls collectionConfig={collectionConfig} />\n )}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.client.js","names":["getTranslation","formatAdminURL","formatFilesize","React","Fragment","useEffect","useRef","useState","Button","ListControls","useListDrawerContext","ListWhereBuilder","useModal","NoListResults","PageControls","RenderCustomComponent","SelectMany","useStepNav","RelationshipProvider","ViewDescription","useControllableState","useConfig","DocumentSelectionProvider","useListQuery","SelectionProvider","TableColumnsProvider","useTranslation","useWindowInfo","ListSelection","DocumentListSelection","HierarchyTable","CollectionListHeader","baseClass","DefaultListView","props","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","disableQueryPresets","enableRowSelections","hasCreatePermission","hasCreatePermissionFromProps","hasDeletePermission","hasTrashPermission","hierarchyData","listMenuItems","newDocumentURL","NoResults","queryPreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","Table","InitialTable","viewType","allowCreate","createNewDrawerSlug","isInDrawer","onBulkSelect","undefined","config","routes","admin","adminRoute","serverURL","getEntityConfig","data","hasActiveFilters","isGroupingBy","query","hasWhereParam","Boolean","where","isWhereOpen","setIsWhereOpen","current","openModal","collectionConfig","labels","upload","isUploadCollection","isBulkUploadEnabled","bulkUpload","isTrashEnabled","trash","i18n","collectionLabel","plural","setStepNav","breakpoints","s","smallBreak","docs","useMemo","map","doc","filesize","baseLabel","label","url","path","trashLabel","t","navItems","breadcrumbs","queryParam","parentFieldName","hierarchyBreadcrumbs","crumb","index","isLast","length","title","id","_jsxs","_jsx","className","totalDocs","description","CustomComponent","Fallback","hideFileInputOnCreate","onClick","enableQueryPresets","onWhereToggle","prev","collectionPluralLabel","fields","onEmptyRemove","collectionData","childrenData","Object","fromEntries","entries","relatedDocumentsByCollection","slug","related","result","hierarchyLabel","parentId","relatedGroups","fieldName","hasMany","useAsTitle","Actions","el","singular","to","withMargin","AfterPageControls","showSelectAllAcrossPages","totalPages"],"sources":["../../../src/views/List/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { ListViewClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, formatFilesize } from 'payload/shared'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { ListControls } from '../../elements/ListControls/index.js'\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { ListWhereBuilder } from '../../elements/ListWhereBuilder/index.js'\nimport { useModal } from '../../elements/Modal/index.js'\nimport { NoListResults } from '../../elements/NoListResults/index.js'\nimport { PageControls } from '../../elements/PageControls/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js'\nimport { ViewDescription } from '../../elements/ViewDescription/index.js'\nimport { useControllableState } from '../../hooks/useControllableState.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { DocumentSelectionProvider } from '../../providers/DocumentSelection/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { SelectionProvider } from '../../providers/Selection/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListSelection } from '../../views/List/ListSelection/index.js'\nimport { DocumentListSelection } from '../HierarchyList/DocumentListSelection/index.js'\nimport { HierarchyTable } from '../HierarchyList/HierarchyTable/index.js'\nimport { CollectionListHeader } from './ListHeader/index.js'\nimport './index.css'\n\nconst baseClass = 'collection-list'\n\nexport function DefaultListView(props: ListViewClientProps) {\n const {\n AfterList,\n AfterListTable,\n beforeActions,\n BeforeList,\n BeforeListTable,\n collectionSlug,\n columnState,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission: hasCreatePermissionFromProps,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n listMenuItems,\n newDocumentURL,\n NoResults,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table: InitialTable,\n viewType,\n } = props\n\n const [Table] = useControllableState(InitialTable)\n\n const { allowCreate, createNewDrawerSlug, isInDrawer, onBulkSelect } = useListDrawerContext()\n\n const hasCreatePermission =\n allowCreate !== undefined\n ? allowCreate && hasCreatePermissionFromProps\n : hasCreatePermissionFromProps\n\n const {\n config: {\n routes: { admin: adminRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const { data, hasActiveFilters, isGroupingBy, query } = useListQuery()\n\n const hasWhereParam = useRef(Boolean(query?.where))\n const [isWhereOpen, setIsWhereOpen] = useState(hasActiveFilters)\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n setIsWhereOpen(false)\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [query?.where])\n\n const { openModal } = useModal()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { labels, upload } = collectionConfig\n\n const isUploadCollection = Boolean(upload)\n\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const isTrashEnabled = Boolean(collectionConfig.trash)\n\n const { i18n } = useTranslation()\n\n const collectionLabel = getTranslation(labels?.plural, i18n)\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const docs = React.useMemo(() => {\n if (isUploadCollection) {\n return data.docs.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n } else {\n return data?.docs\n }\n }, [data?.docs, isUploadCollection])\n\n useEffect(() => {\n if (!isInDrawer) {\n const baseLabel = {\n label: collectionLabel,\n url:\n hierarchyData || (isTrashEnabled && viewType === 'trash')\n ? formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n })\n : undefined,\n }\n\n const trashLabel = {\n label: i18n.t('general:trash'),\n }\n\n let navItems = isTrashEnabled && viewType === 'trash' ? [baseLabel, trashLabel] : [baseLabel]\n\n // Add hierarchy breadcrumbs\n if (hierarchyData?.breadcrumbs) {\n const queryParam = hierarchyData.parentFieldName || 'parent'\n const hierarchyBreadcrumbs = hierarchyData.breadcrumbs.map((crumb, index) => {\n const isLast = index === hierarchyData.breadcrumbs.length - 1\n return {\n label: crumb.title,\n url: isLast\n ? undefined\n : formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}?${queryParam}=${crumb.id}`,\n }),\n }\n })\n navItems = [...navItems, ...hierarchyBreadcrumbs]\n }\n\n setStepNav(navItems)\n }\n }, [\n adminRoute,\n setStepNav,\n serverURL,\n labels,\n isInDrawer,\n isTrashEnabled,\n viewType,\n i18n,\n collectionSlug,\n hierarchyData,\n collectionLabel,\n ])\n\n return (\n <Fragment>\n <TableColumnsProvider collectionSlug={collectionSlug} columnState={columnState}>\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SelectionProvider docs={docs} totalDocs={data?.totalDocs}>\n {BeforeList}\n <CollectionListHeader\n collectionConfig={collectionConfig}\n Description={\n Description || collectionConfig?.admin?.description ? (\n <div className={`${baseClass}__sub-header`}>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={\n <ViewDescription\n collectionSlug={collectionSlug}\n description={collectionConfig?.admin?.description}\n />\n }\n />\n </div>\n ) : undefined\n }\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n hasCreatePermission={hasCreatePermission}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled && !upload.hideFileInputOnCreate}\n isTrashEnabled={isTrashEnabled}\n newDocumentURL={newDocumentURL}\n smallBreak={smallBreak}\n viewType={viewType}\n />\n <ListControls\n beforeActions={\n enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [...beforeActions, <SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions\n }\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n disableQueryPresets={\n collectionConfig?.enableQueryPresets !== true || disableQueryPresets\n }\n hasCreatePermission={hasCreatePermission && viewType !== 'trash' && !isInDrawer}\n isWhereOpen={isWhereOpen}\n listMenuItems={listMenuItems}\n newDocumentURL={newDocumentURL}\n onWhereToggle={() => setIsWhereOpen((prev) => !prev)}\n queryPreset={queryPreset}\n queryPresetPermissions={queryPresetPermissions}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n {isWhereOpen && (\n <ListWhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionSlug}\n fields={collectionConfig?.fields}\n onEmptyRemove={() => setIsWhereOpen(false)}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n )}\n {BeforeListTable}\n {hierarchyData ? (\n <DocumentSelectionProvider\n collectionData={{\n [collectionSlug]: { docs: hierarchyData.childrenData.docs },\n ...Object.fromEntries(\n Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => [slug, { docs: related.result.docs }],\n ),\n ),\n }}\n >\n <HierarchyTable\n childrenData={hierarchyData.childrenData}\n collectionSlug={collectionSlug}\n hierarchyLabel={collectionLabel}\n key={hierarchyData.parentId}\n parentId={hierarchyData.parentId}\n relatedGroups={Object.entries(hierarchyData.relatedDocumentsByCollection).map(\n ([slug, related]) => ({\n collectionSlug: slug,\n data: related.result,\n fieldName: related.fieldName,\n hasMany: related.hasMany,\n label: related.label,\n }),\n )}\n useAsTitle={collectionConfig?.admin?.useAsTitle || 'id'}\n />\n <DocumentListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n />\n </DocumentSelectionProvider>\n ) : docs?.length > 0 ? (\n <RelationshipProvider>{Table}</RelationshipProvider>\n ) : null}\n {/* HierarchyTable handles its own empty state, skip for hierarchy views */}\n {docs?.length === 0 &&\n (NoResults ?? (\n <NoListResults\n Actions={\n hasCreatePermission && newDocumentURL && viewType !== 'trash'\n ? [\n isInDrawer ? (\n <Button\n el=\"button\"\n key=\"create\"\n onClick={() => openModal(createNewDrawerSlug)}\n >\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ) : (\n <Button el=\"link\" key=\"create\" to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ),\n ]\n : []\n }\n description={\n viewType === 'trash'\n ? i18n.t('general:noTrashResults', {\n label: getTranslation(labels?.plural, i18n),\n })\n : i18n.t('general:noResultsDescription')\n }\n title={viewType !== 'trash' ? i18n.t('general:noResultsFound') : undefined}\n withMargin\n />\n ))}\n {AfterListTable}\n {AfterList}\n {docs?.length > 0 && !isGroupingBy && (\n <PageControls\n AfterPageControls={\n smallBreak ? (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection\n collectionConfig={collectionConfig}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n label={collectionLabel}\n showSelectAllAcrossPages={!isGroupingBy}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n {enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [\n ...beforeActions,\n <SelectMany key=\"select-many\" onClick={onBulkSelect} />,\n ]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions}\n </div>\n </div>\n ) : null\n }\n collectionConfig={collectionConfig}\n />\n )}\n </SelectionProvider>\n </div>\n </TableColumnsProvider>\n {docs?.length > 0 && isGroupingBy && data.totalPages > 1 && (\n <PageControls collectionConfig={collectionConfig} />\n )}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
.collection-list__sub-header {
|
|
14
14
|
flex-basis: 100%;
|
|
15
|
-
padding-top: var(--spacer-
|
|
15
|
+
padding-top: var(--spacer-2-5);
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
.collection-list .table table {
|
|
@@ -35,6 +35,11 @@
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
+
/* The ID cell renders its own pill with a hover background instead of an underline */
|
|
39
|
+
.collection-list .table table td.cell--linked > :is(a, button):has(.id-label) {
|
|
40
|
+
text-decoration-line: none;
|
|
41
|
+
}
|
|
42
|
+
|
|
38
43
|
.collection-list .table table [class^='cell']:not(.cell--linked) > p,
|
|
39
44
|
.collection-list .table table [class^='cell']:not(.cell--linked) > span,
|
|
40
45
|
.collection-list .table table [class^='cell']:not(.cell--linked) > a {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAKpB,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EAEvB,gBAAgB,EAGjB,MAAM,SAAS,CAAA;AAYhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AAsBvC,OAAO,aAAa,CAAA;AAEpB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,iBAAiB,CAAC,EACd,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAA;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,oBAAoB,CAAA;AAExB;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,SACnB,kBAAkB,KACvB,OAAO,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAKpB,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EAEvB,gBAAgB,EAGjB,MAAM,SAAS,CAAA;AAYhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AAsBvC,OAAO,aAAa,CAAA;AAEpB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,iBAAiB,CAAC,EACd,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAA;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,oBAAoB,CAAA;AAExB;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,SACnB,kBAAkB,KACvB,OAAO,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,CAseA,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAWjD,CAAA"}
|
package/dist/views/List/index.js
CHANGED
|
@@ -162,6 +162,10 @@ export const renderListView = async args => {
|
|
|
162
162
|
});
|
|
163
163
|
/** Automatically force select active columns. */
|
|
164
164
|
const select = transformColumnsToSelect(columns);
|
|
165
|
+
/** Force select `useAsTitle` for accessible row-selection labels, even if its column is hidden. */
|
|
166
|
+
if (enableRowSelections && collectionConfig.admin.useAsTitle) {
|
|
167
|
+
select[collectionConfig.admin.useAsTitle] = true;
|
|
168
|
+
}
|
|
165
169
|
/** Force select image fields for list view thumbnails */
|
|
166
170
|
appendUploadSelectFields({
|
|
167
171
|
collectionConfig,
|