@payloadcms/ui 4.0.0-internal.a7ca468 → 4.0.0-internal.af6aad0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/AddNewRelation/index.css +0 -4
- package/dist/elements/AddNewRelation/index.js +2 -2
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AppHeader/index.css +5 -0
- package/dist/elements/AppHeader/index.d.ts +1 -8
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +4 -13
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.d.ts +1 -0
- package/dist/elements/ArrayAction/index.d.ts.map +1 -1
- package/dist/elements/ArrayAction/index.js +45 -32
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.css +10 -4
- package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +71 -51
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/Button/index.css +25 -2
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +2 -0
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/types.d.ts +1 -1
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- 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 +65 -3
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js +345 -1
- package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.css +1 -0
- package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.js +84 -62
- package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/Drawer/index.css +10 -4
- package/dist/elements/Drawer/types.d.ts +2 -2
- package/dist/elements/Drawer/types.d.ts.map +1 -1
- package/dist/elements/Drawer/types.js.map +1 -1
- package/dist/elements/Dropzone/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/FileManager/index.css +0 -30
- package/dist/elements/FileManager/index.d.ts.map +1 -1
- package/dist/elements/FileManager/index.js +379 -287
- package/dist/elements/FileManager/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +22 -4
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +68 -49
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +100 -15
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +97 -137
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/index.js +51 -23
- package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +26 -3
- package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
- package/dist/elements/Hierarchy/CreateNewButton/index.css +9 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.d.ts +9 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.d.ts.map +1 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.js +111 -0
- package/dist/elements/Hierarchy/CreateNewButton/index.js.map +1 -0
- package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.js +6 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.server.js +1 -3
- package/dist/elements/Hierarchy/DocHeaderButton/index.server.js.map +1 -1
- package/dist/elements/Hierarchy/Field/index.client.d.ts +5 -0
- package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Field/index.client.js +120 -95
- package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
- package/dist/elements/Hierarchy/Field/index.css +3 -34
- package/dist/elements/Hierarchy/Modal/Footer/index.css +45 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.d.ts +28 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.d.ts.map +1 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.js +166 -0
- package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -0
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +18 -4
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +88 -24
- package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/index.css +4 -53
- package/dist/elements/Hierarchy/Modal/index.d.ts +5 -2
- package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/index.js +136 -99
- package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/types.d.ts +15 -0
- package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.d.ts +7 -3
- package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/MoveMany/index.js +43 -170
- package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
- package/dist/elements/Hierarchy/Search/index.css +2 -9
- package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Search/index.js +6 -73
- package/dist/elements/Hierarchy/Search/index.js.map +1 -1
- package/dist/elements/Hierarchy/Search/types.d.ts +2 -6
- package/dist/elements/Hierarchy/Search/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Search/types.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts +0 -4
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +101 -186
- 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 +1 -21
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/LoadMore/index.css +3 -3
- package/dist/elements/Hierarchy/Tree/TreeNode/index.css +59 -29
- package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeNode/index.js +54 -10
- package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/index.css +8 -9
- package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/index.js +29 -47
- package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/types.d.ts +9 -1
- package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/types.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/useChildren.js +11 -1
- package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
- package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts +22 -0
- package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts.map +1 -0
- package/dist/elements/Hierarchy/getFolderHierarchySlug.js +17 -0
- package/dist/elements/Hierarchy/getFolderHierarchySlug.js.map +1 -0
- package/dist/elements/Hierarchy/move/moveDocuments.d.ts +34 -0
- package/dist/elements/Hierarchy/move/moveDocuments.d.ts.map +1 -0
- package/dist/elements/Hierarchy/move/moveDocuments.js +94 -0
- package/dist/elements/Hierarchy/move/moveDocuments.js.map +1 -0
- 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/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +3 -2
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/types.d.ts +4 -0
- package/dist/elements/ListControls/types.d.ts.map +1 -1
- package/dist/elements/ListControls/types.js.map +1 -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/Nav/NavSidebarToggle/index.js +1 -1
- package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.d.ts +1 -0
- package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js +12 -18
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/SidebarTabs/index.css +1 -2
- package/dist/elements/Nav/context.d.ts +0 -1
- package/dist/elements/Nav/context.d.ts.map +1 -1
- package/dist/elements/Nav/context.js +92 -67
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/Nav/index.css +47 -42
- package/dist/elements/Nav/index.d.ts +4 -0
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +16 -1
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/elements/NavGroup/index.css +29 -15
- package/dist/elements/Popup/PopupButtonList/index.css +33 -17
- package/dist/elements/Popup/index.css +6 -0
- package/dist/elements/Popup/index.d.ts +10 -0
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +13 -6
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.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/types.d.ts +5 -0
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +5 -2
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/SegmentedControl/index.css +58 -0
- package/dist/elements/SegmentedControl/index.d.ts +19 -0
- package/dist/elements/SegmentedControl/index.d.ts.map +1 -0
- package/dist/elements/SegmentedControl/index.js +104 -0
- package/dist/elements/SegmentedControl/index.js.map +1 -0
- package/dist/elements/SelectAll/index.d.ts.map +1 -1
- package/dist/elements/SelectAll/index.js +1 -2
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectRow/index.d.ts.map +1 -1
- package/dist/elements/SelectRow/index.js +1 -2
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/SidebarRow/index.css +1 -5
- package/dist/elements/SidebarToggle/index.css +3 -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/DropTarget/index.css +20 -0
- package/dist/elements/StepNav/DropTarget/index.d.ts +16 -0
- package/dist/elements/StepNav/DropTarget/index.d.ts.map +1 -0
- package/dist/elements/StepNav/DropTarget/index.js +71 -0
- package/dist/elements/StepNav/DropTarget/index.js.map +1 -0
- package/dist/elements/StepNav/index.css +64 -14
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +147 -69
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StepNav/types.d.ts +6 -0
- package/dist/elements/StepNav/types.d.ts.map +1 -1
- package/dist/elements/StepNav/types.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +5 -7
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +14 -3
- package/dist/elements/Table/DefaultCell/fields/Hierarchy/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/Upload/UploadFromURLModal/index.d.ts +1 -1
- package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -1
- package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
- package/dist/elements/Upload/index.css +39 -32
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +37 -99
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/usePasteFromClipboard.d.ts +14 -0
- package/dist/elements/Upload/usePasteFromClipboard.d.ts.map +1 -0
- package/dist/elements/Upload/usePasteFromClipboard.js +93 -0
- package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -0
- package/dist/elements/Upload/useUploadFromUrl.d.ts +20 -0
- package/dist/elements/Upload/useUploadFromUrl.d.ts.map +1 -0
- package/dist/elements/Upload/useUploadFromUrl.js +201 -0
- package/dist/elements/Upload/useUploadFromUrl.js.map +1 -0
- package/dist/elements/UploadDropzoneContent/index.css +31 -0
- package/dist/elements/UploadDropzoneContent/index.d.ts +17 -0
- package/dist/elements/UploadDropzoneContent/index.d.ts.map +1 -0
- package/dist/elements/UploadDropzoneContent/index.js +62 -0
- package/dist/elements/UploadDropzoneContent/index.js.map +1 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts +18 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts.map +1 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.js +38 -0
- package/dist/elements/UserMenu/HoverSubmenuGroup.js.map +1 -0
- package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/LanguageMenu/index.js +83 -39
- package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/SettingsMenu/index.js +57 -21
- package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/ThemeMenu/index.js +83 -39
- package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/index.css +32 -2
- package/dist/elements/UserMenu/index.d.ts +1 -0
- package/dist/elements/UserMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/index.js +77 -51
- package/dist/elements/UserMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/useHoverSubmenu.d.ts +21 -0
- package/dist/elements/UserMenu/useHoverSubmenu.d.ts.map +1 -0
- package/dist/elements/UserMenu/useHoverSubmenu.js +260 -0
- package/dist/elements/UserMenu/useHoverSubmenu.js.map +1 -0
- package/dist/elements/ViewModeToggle/index.d.ts +8 -0
- package/dist/elements/ViewModeToggle/index.d.ts.map +1 -0
- package/dist/elements/ViewModeToggle/index.js +29 -0
- package/dist/elements/ViewModeToggle/index.js.map +1 -0
- package/dist/elements/WhereBuilder/conditionValue.d.ts +32 -0
- package/dist/elements/WhereBuilder/conditionValue.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/conditionValue.js +32 -0
- package/dist/elements/WhereBuilder/conditionValue.js.map +1 -0
- package/dist/elements/WhereBuilder/conditionValue.spec.js +65 -0
- package/dist/elements/WhereBuilder/conditionValue.spec.js.map +1 -0
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js +15 -4
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +6 -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 +2 -0
- 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 +2 -0
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/RowActions.d.ts +1 -0
- package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
- package/dist/fields/Blocks/RowActions.js +22 -19
- 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 +35 -7
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.d.ts +2 -2
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +134 -152
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.css +168 -155
- package/dist/fields/Relationship/Input.d.ts.map +1 -1
- package/dist/fields/Relationship/Input.js +24 -6
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
- package/dist/fields/Relationship/optionsReducer.js +2 -0
- package/dist/fields/Relationship/optionsReducer.js.map +1 -1
- package/dist/fields/Relationship/types.d.ts +24 -0
- package/dist/fields/Relationship/types.d.ts.map +1 -1
- package/dist/fields/Relationship/types.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +44 -16
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/Input.spec.js +241 -0
- package/dist/fields/Upload/Input.spec.js.map +1 -0
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +4 -1
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -0
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/icons/CollapseLayers/index.css +5 -0
- package/dist/icons/CollapseLayers/index.d.ts +7 -0
- package/dist/icons/CollapseLayers/index.d.ts.map +1 -0
- package/dist/icons/CollapseLayers/index.js +23 -0
- package/dist/icons/CollapseLayers/index.js.map +1 -0
- 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/icons/Table/index.css +5 -0
- package/dist/icons/Table/index.d.ts +7 -0
- package/dist/icons/Table/index.d.ts.map +1 -0
- package/dist/icons/Table/index.js +25 -0
- package/dist/icons/Table/index.js.map +1 -0
- 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/FormErrorHandler/index.d.ts +5 -1
- package/dist/providers/FormErrorHandler/index.d.ts.map +1 -1
- package/dist/providers/FormErrorHandler/index.js.map +1 -1
- package/dist/providers/Hierarchy/index.d.ts.map +1 -1
- package/dist/providers/Hierarchy/index.js +53 -24
- package/dist/providers/Hierarchy/index.js.map +1 -1
- package/dist/providers/Hierarchy/types.d.ts +2 -0
- package/dist/providers/Hierarchy/types.d.ts.map +1 -1
- package/dist/providers/Hierarchy/types.js.map +1 -1
- package/dist/providers/HierarchyDnd/index.css +51 -0
- package/dist/providers/HierarchyDnd/index.d.ts +21 -0
- package/dist/providers/HierarchyDnd/index.d.ts.map +1 -0
- package/dist/providers/HierarchyDnd/index.js +163 -0
- package/dist/providers/HierarchyDnd/index.js.map +1 -0
- package/dist/providers/HierarchyDnd/types.d.ts +56 -0
- package/dist/providers/HierarchyDnd/types.d.ts.map +1 -0
- package/dist/providers/HierarchyDnd/types.js +21 -0
- package/dist/providers/HierarchyDnd/types.js.map +1 -0
- 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.js +4 -4
- 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/styles.css +1 -1
- package/dist/templates/Default/Wrapper/index.css +2 -1
- package/dist/templates/Default/Wrapper/index.d.ts +2 -0
- package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
- package/dist/templates/Default/Wrapper/index.js +12 -6
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.css +3 -1
- 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 +19 -15
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/utilities/formatMetadata.d.ts.map +1 -1
- package/dist/utilities/formatMetadata.js +0 -5
- package/dist/utilities/formatMetadata.js.map +1 -1
- package/dist/utilities/getFilesFromClipboard.d.ts +10 -0
- package/dist/utilities/getFilesFromClipboard.d.ts.map +1 -0
- package/dist/utilities/getFilesFromClipboard.js +49 -0
- package/dist/utilities/getFilesFromClipboard.js.map +1 -0
- package/dist/utilities/slugify.d.ts.map +1 -1
- package/dist/utilities/slugify.js +1 -0
- 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 +33 -140
- package/dist/views/Edit/SetDocumentTitle/index.d.ts.map +1 -1
- package/dist/views/Edit/SetDocumentTitle/index.js +4 -1
- package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +3 -2
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/DocumentListSelection/index.js +100 -105
- package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.css +216 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts +20 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js +182 -0
- package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.css +38 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts +15 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js +85 -0
- package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.css +98 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts +27 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js +84 -0
- package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts +19 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js +100 -0
- package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts +53 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js +145 -0
- package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts +8 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js +21 -0
- package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/index.css +115 -0
- package/dist/views/HierarchyList/HierarchyCards/index.d.ts +80 -0
- package/dist/views/HierarchyList/HierarchyCards/index.d.ts.map +1 -0
- package/dist/views/HierarchyList/HierarchyCards/index.js +457 -0
- package/dist/views/HierarchyList/HierarchyCards/index.js.map +1 -0
- package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +6 -1
- package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyListHeader/index.js +10 -8
- package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +11 -10
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +3 -6
- package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/index.css +51 -0
- package/dist/views/HierarchyList/HierarchyTable/index.d.ts +13 -1
- package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/index.js +156 -38
- package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/types.d.ts +6 -0
- package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
- package/dist/views/HierarchyList/index.d.ts.map +1 -1
- package/dist/views/HierarchyList/index.js +103 -20
- package/dist/views/HierarchyList/index.js.map +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/ListSelection/index.d.ts.map +1 -1
- package/dist/views/List/ListSelection/index.js +138 -122
- package/dist/views/List/ListSelection/index.js.map +1 -1
- package/dist/views/List/handleHierarchy.d.ts +6 -1
- package/dist/views/List/handleHierarchy.d.ts.map +1 -1
- package/dist/views/List/handleHierarchy.js +34 -3
- package/dist/views/List/handleHierarchy.js.map +1 -1
- package/dist/views/List/index.client.d.ts.map +1 -1
- package/dist/views/List/index.client.js +128 -18
- package/dist/views/List/index.client.js.map +1 -1
- package/dist/views/List/index.css +5 -0
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +27 -16
- package/dist/views/List/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/getRouteData.d.ts.map +1 -1
- package/dist/views/Root/getRouteData.js +8 -2
- package/dist/views/Root/getRouteData.js.map +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +1 -0
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
- package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
- package/package.json +4 -4
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +0 -36
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +0 -13
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +0 -1
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +0 -141
- package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +0 -1
|
@@ -6,18 +6,21 @@ import * as qs from 'qs-esm';
|
|
|
6
6
|
import React, { Fragment, useCallback } from 'react';
|
|
7
7
|
import { DeleteMany } from '../../../elements/DeleteMany/index.js';
|
|
8
8
|
import { EditMany } from '../../../elements/EditMany/index.js';
|
|
9
|
+
import { getFolderHierarchySlug } from '../../../elements/Hierarchy/getFolderHierarchySlug.js';
|
|
10
|
+
import { MoveMany } from '../../../elements/Hierarchy/MoveMany/index.js';
|
|
9
11
|
import { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js';
|
|
10
12
|
import { PublishMany } from '../../../elements/PublishMany/index.js';
|
|
11
13
|
import { RestoreMany } from '../../../elements/RestoreMany/index.js';
|
|
12
14
|
import { UnpublishMany } from '../../../elements/UnpublishMany/index.js';
|
|
13
15
|
import { useAuth } from '../../../providers/Auth/index.js';
|
|
16
|
+
import { useConfig } from '../../../providers/Config/index.js';
|
|
14
17
|
import { useRouteCache } from '../../../providers/RouteCache/index.js';
|
|
15
18
|
import { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js';
|
|
16
19
|
import { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js';
|
|
17
20
|
import { useTranslation } from '../../../providers/Translation/index.js';
|
|
18
21
|
import { parseSearchParams } from '../../../utilities/parseSearchParams.js';
|
|
19
22
|
export const ListSelection = t0 => {
|
|
20
|
-
const $ = _c(
|
|
23
|
+
const $ = _c(23);
|
|
21
24
|
const {
|
|
22
25
|
collectionConfig,
|
|
23
26
|
disableBulkDelete,
|
|
@@ -44,137 +47,150 @@ export const ListSelection = t0 => {
|
|
|
44
47
|
const {
|
|
45
48
|
permissions
|
|
46
49
|
} = useAuth();
|
|
50
|
+
const {
|
|
51
|
+
config
|
|
52
|
+
} = useConfig();
|
|
47
53
|
const router = useRouter();
|
|
48
54
|
const searchParams = useSearchParams();
|
|
49
55
|
const {
|
|
50
56
|
clearRouteCache
|
|
51
57
|
} = useRouteCache();
|
|
52
58
|
let t2;
|
|
53
|
-
if ($[0] !== toggleAll) {
|
|
54
|
-
t2 = () => toggleAll();
|
|
55
|
-
$[0] = toggleAll;
|
|
56
|
-
$[1] = t2;
|
|
57
|
-
} else {
|
|
58
|
-
t2 = $[1];
|
|
59
|
-
}
|
|
60
|
-
const onActionSuccess = t2;
|
|
61
|
-
if (count === 0) {
|
|
62
|
-
return null;
|
|
63
|
-
}
|
|
64
|
-
const isTrashView = collectionConfig?.trash && viewType === "trash";
|
|
65
|
-
const collectionPermissions = permissions?.collections?.[collectionConfig?.slug];
|
|
66
|
-
const hasDeletePermission = hasDeletePermissionFromProps !== undefined ? hasDeletePermissionFromProps : Boolean(collectionPermissions?.delete);
|
|
67
|
-
const hasTrashPermission = hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission;
|
|
68
|
-
const canShowDeleteButton = viewType === "trash" ? hasDeletePermission : hasDeletePermission || hasTrashPermission;
|
|
69
|
-
const selectingAll = selectAll === SelectAllStatus.AllAvailable;
|
|
70
59
|
let t3;
|
|
71
|
-
if ($[
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
60
|
+
if ($[0] !== clearRouteCache || $[1] !== collectionConfig || $[2] !== config || $[3] !== count || $[4] !== disableBulkDelete || $[5] !== disableBulkEdit || $[6] !== hasDeletePermissionFromProps || $[7] !== hasTrashPermissionFromProps || $[8] !== label || $[9] !== modalPrefix || $[10] !== permissions?.collections || $[11] !== router || $[12] !== searchParams || $[13] !== selectAll || $[14] !== selectedIDs || $[15] !== showSelectAllAcrossPages || $[16] !== t || $[17] !== toggleAll || $[18] !== totalDocs || $[19] !== viewType || $[20] !== where) {
|
|
61
|
+
t3 = Symbol.for("react.early_return_sentinel");
|
|
62
|
+
bb0: {
|
|
63
|
+
const hierarchySlug = collectionConfig ? getFolderHierarchySlug(config.collections, collectionConfig.slug) : undefined;
|
|
64
|
+
const onActionSuccess = () => toggleAll();
|
|
65
|
+
if (count === 0) {
|
|
66
|
+
t3 = null;
|
|
67
|
+
break bb0;
|
|
68
|
+
}
|
|
69
|
+
const isTrashView = collectionConfig?.trash && viewType === "trash";
|
|
70
|
+
const collectionPermissions = permissions?.collections?.[collectionConfig?.slug];
|
|
71
|
+
const hasDeletePermission = hasDeletePermissionFromProps !== undefined ? hasDeletePermissionFromProps : Boolean(collectionPermissions?.delete);
|
|
72
|
+
const hasTrashPermission = hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission;
|
|
73
|
+
const canShowDeleteButton = viewType === "trash" ? hasDeletePermission : hasDeletePermission || hasTrashPermission;
|
|
74
|
+
const selectingAll = selectAll === SelectAllStatus.AllAvailable;
|
|
75
|
+
const deleteIDs = selectingAll ? [] : selectedIDs;
|
|
76
|
+
const baseWhere = parseSearchParams(searchParams)?.where;
|
|
77
|
+
const deleteWhere = viewType === "trash" ? {
|
|
78
|
+
and: [...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []), {
|
|
79
|
+
deletedAt: {
|
|
80
|
+
exists: true
|
|
81
|
+
}
|
|
82
|
+
}]
|
|
83
|
+
} : baseWhere;
|
|
84
|
+
t2 = _jsx(ListSelection_v4, {
|
|
85
|
+
count,
|
|
86
|
+
ListActions: [selectAll !== SelectAllStatus.AllAvailable && count < totalDocs && showSelectAllAcrossPages !== false ? _jsx(ListSelectionButton, {
|
|
87
|
+
"aria-label": t("general:selectAll", {
|
|
88
|
+
count: `(${totalDocs})`,
|
|
89
|
+
label
|
|
90
|
+
}),
|
|
91
|
+
id: "select-all-across-pages",
|
|
92
|
+
onClick: () => toggleAll(true),
|
|
93
|
+
children: t("general:selectAll", {
|
|
94
|
+
count: `(${totalDocs})`,
|
|
95
|
+
label: ""
|
|
96
|
+
})
|
|
97
|
+
}, "select-all") : null].filter(Boolean),
|
|
98
|
+
SelectionActions: [!disableBulkEdit && !isTrashView && _jsxs(Fragment, {
|
|
99
|
+
children: [_jsx(EditMany, {
|
|
100
|
+
collection: collectionConfig,
|
|
101
|
+
count,
|
|
102
|
+
ids: selectedIDs,
|
|
103
|
+
modalPrefix,
|
|
104
|
+
onSuccess: onActionSuccess,
|
|
105
|
+
selectAll: selectAll === SelectAllStatus.AllAvailable,
|
|
106
|
+
where
|
|
107
|
+
}), _jsx(PublishMany, {
|
|
108
|
+
collection: collectionConfig,
|
|
109
|
+
count,
|
|
110
|
+
ids: selectedIDs,
|
|
111
|
+
modalPrefix,
|
|
112
|
+
onSuccess: onActionSuccess,
|
|
113
|
+
selectAll: selectAll === SelectAllStatus.AllAvailable,
|
|
114
|
+
where
|
|
115
|
+
}), _jsx(UnpublishMany, {
|
|
116
|
+
collection: collectionConfig,
|
|
117
|
+
count,
|
|
118
|
+
ids: selectedIDs,
|
|
119
|
+
modalPrefix,
|
|
120
|
+
onSuccess: onActionSuccess,
|
|
121
|
+
selectAll: selectAll === SelectAllStatus.AllAvailable,
|
|
122
|
+
where
|
|
123
|
+
}), hierarchySlug && collectionConfig && selectAll !== SelectAllStatus.AllAvailable && _jsx(MoveMany, {
|
|
124
|
+
hierarchySlug,
|
|
125
|
+
onSuccess: onActionSuccess,
|
|
126
|
+
requiredCollections: [collectionConfig.slug],
|
|
127
|
+
selections: {
|
|
128
|
+
[collectionConfig.slug]: {
|
|
129
|
+
ids: selectedIDs
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
})]
|
|
133
|
+
}, "bulk-actions"), isTrashView && _jsx(RestoreMany, {
|
|
113
134
|
collection: collectionConfig,
|
|
114
|
-
|
|
115
|
-
|
|
135
|
+
viewType
|
|
136
|
+
}, "bulk-restore"), !disableBulkDelete && canShowDeleteButton && collectionConfig && _jsx(DeleteMany, {
|
|
137
|
+
afterDelete: () => {
|
|
138
|
+
toggleAll();
|
|
139
|
+
router.replace(qs.stringify({
|
|
140
|
+
...parseSearchParams(searchParams),
|
|
141
|
+
page: selectAll ? "1" : undefined
|
|
142
|
+
}, {
|
|
143
|
+
addQueryPrefix: true
|
|
144
|
+
}));
|
|
145
|
+
clearRouteCache();
|
|
146
|
+
},
|
|
147
|
+
hasDeletePermission,
|
|
148
|
+
hasTrashPermission,
|
|
116
149
|
modalPrefix,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
$[
|
|
152
|
-
$[
|
|
153
|
-
$[
|
|
154
|
-
$[5] = count;
|
|
155
|
-
$[6] = disableBulkDelete;
|
|
156
|
-
$[7] = disableBulkEdit;
|
|
157
|
-
$[8] = hasDeletePermission;
|
|
158
|
-
$[9] = hasTrashPermission;
|
|
159
|
-
$[10] = isTrashView;
|
|
160
|
-
$[11] = label;
|
|
161
|
-
$[12] = modalPrefix;
|
|
162
|
-
$[13] = onActionSuccess;
|
|
163
|
-
$[14] = router;
|
|
164
|
-
$[15] = searchParams;
|
|
165
|
-
$[16] = selectAll;
|
|
166
|
-
$[17] = selectedIDs;
|
|
167
|
-
$[18] = selectingAll;
|
|
168
|
-
$[19] = showSelectAllAcrossPages;
|
|
169
|
-
$[20] = t;
|
|
170
|
-
$[21] = toggleAll;
|
|
171
|
-
$[22] = totalDocs;
|
|
172
|
-
$[23] = viewType;
|
|
173
|
-
$[24] = where;
|
|
174
|
-
$[25] = t3;
|
|
150
|
+
search: parseSearchParams(searchParams)?.search,
|
|
151
|
+
selections: {
|
|
152
|
+
[collectionConfig.slug]: {
|
|
153
|
+
all: selectingAll,
|
|
154
|
+
ids: deleteIDs,
|
|
155
|
+
totalCount: selectingAll ? count : deleteIDs.length
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
trash: collectionConfig?.trash,
|
|
159
|
+
viewType,
|
|
160
|
+
where: deleteWhere
|
|
161
|
+
}, "bulk-delete")].filter(Boolean)
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
$[0] = clearRouteCache;
|
|
165
|
+
$[1] = collectionConfig;
|
|
166
|
+
$[2] = config;
|
|
167
|
+
$[3] = count;
|
|
168
|
+
$[4] = disableBulkDelete;
|
|
169
|
+
$[5] = disableBulkEdit;
|
|
170
|
+
$[6] = hasDeletePermissionFromProps;
|
|
171
|
+
$[7] = hasTrashPermissionFromProps;
|
|
172
|
+
$[8] = label;
|
|
173
|
+
$[9] = modalPrefix;
|
|
174
|
+
$[10] = permissions?.collections;
|
|
175
|
+
$[11] = router;
|
|
176
|
+
$[12] = searchParams;
|
|
177
|
+
$[13] = selectAll;
|
|
178
|
+
$[14] = selectedIDs;
|
|
179
|
+
$[15] = showSelectAllAcrossPages;
|
|
180
|
+
$[16] = t;
|
|
181
|
+
$[17] = toggleAll;
|
|
182
|
+
$[18] = totalDocs;
|
|
183
|
+
$[19] = viewType;
|
|
184
|
+
$[20] = where;
|
|
185
|
+
$[21] = t2;
|
|
186
|
+
$[22] = t3;
|
|
175
187
|
} else {
|
|
176
|
-
|
|
188
|
+
t2 = $[21];
|
|
189
|
+
t3 = $[22];
|
|
190
|
+
}
|
|
191
|
+
if (t3 !== Symbol.for("react.early_return_sentinel")) {
|
|
192
|
+
return t3;
|
|
177
193
|
}
|
|
178
|
-
return
|
|
194
|
+
return t2;
|
|
179
195
|
};
|
|
180
196
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","qs","React","Fragment","useCallback","DeleteMany","EditMany","ListSelection_v4","ListSelectionButton","PublishMany","RestoreMany","UnpublishMany","useAuth","useRouteCache","useRouter","useSearchParams","SelectAllStatus","useSelection","useTranslation","parseSearchParams","ListSelection","t0","$","collectionConfig","disableBulkDelete","disableBulkEdit","hasDeletePermission","hasDeletePermissionFromProps","hasTrashPermission","hasTrashPermissionFromProps","label","modalPrefix","showSelectAllAcrossPages","t1","viewType","where","undefined","count","selectAll","selectedIDs","toggleAll","totalDocs","t","permissions","router","searchParams","clearRouteCache","t2","onActionSuccess","isTrashView","trash","collectionPermissions","collections","slug","Boolean","delete","canShowDeleteButton","selectingAll","AllAvailable","t3","deleteIDs","baseWhere","deleteWhere","and","Array","isArray","deletedAt","exists","_jsx","ListActions","id","onClick","children","filter","SelectionActions","_jsxs","collection","ids","onSuccess","afterDelete","replace","stringify","page","addQueryPrefix","search","selections","all","totalCount","length"],"sources":["../../../../src/views/List/ListSelection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ViewTypes, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany } from '../../../elements/PublishMany/index.js'\nimport { RestoreMany } from '../../../elements/RestoreMany/index.js'\nimport { UnpublishMany } from '../../../elements/UnpublishMany/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js'\nimport { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { parseSearchParams } from '../../../utilities/parseSearchParams.js'\n\nexport type ListSelectionProps = {\n collectionConfig?: ClientCollectionConfig\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n label: string\n modalPrefix?: string\n showSelectAllAcrossPages?: boolean\n viewType?: ViewTypes\n where?: Where\n}\n\nexport const ListSelection: React.FC<ListSelectionProps> = ({\n collectionConfig,\n disableBulkDelete,\n disableBulkEdit,\n hasDeletePermission: hasDeletePermissionFromProps,\n hasTrashPermission: hasTrashPermissionFromProps,\n label,\n modalPrefix,\n showSelectAllAcrossPages = true,\n viewType,\n where,\n}) => {\n const { count, selectAll, selectedIDs, toggleAll, totalDocs } = useSelection()\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const onActionSuccess = useCallback(() => toggleAll(), [toggleAll])\n\n if (count === 0) {\n return null\n }\n\n const isTrashView = collectionConfig?.trash && viewType === 'trash'\n\n const collectionPermissions = permissions?.collections?.[collectionConfig?.slug]\n const hasDeletePermission =\n hasDeletePermissionFromProps !== undefined\n ? hasDeletePermissionFromProps\n : Boolean(collectionPermissions?.delete)\n const hasTrashPermission =\n hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission\n const canShowDeleteButton =\n viewType === 'trash' ? hasDeletePermission : hasDeletePermission || hasTrashPermission\n\n const selectingAll = selectAll === SelectAllStatus.AllAvailable\n const deleteIDs = selectingAll ? [] : selectedIDs\n const baseWhere = parseSearchParams(searchParams)?.where as Where\n const deleteWhere =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []),\n { deletedAt: { exists: true } },\n ],\n }\n : baseWhere\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n selectAll !== SelectAllStatus.AllAvailable &&\n count < totalDocs &&\n showSelectAllAcrossPages !== false ? (\n <ListSelectionButton\n aria-label={t('general:selectAll', { count: `(${totalDocs})`, label })}\n id=\"select-all-across-pages\"\n key=\"select-all\"\n onClick={() => toggleAll(true)}\n >\n {t('general:selectAll', { count: `(${totalDocs})`, label: '' })}\n </ListSelectionButton>\n ) : null,\n ].filter(Boolean)}\n SelectionActions={[\n !disableBulkEdit && !isTrashView && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <PublishMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <UnpublishMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n </Fragment>\n ),\n isTrashView && (\n <RestoreMany collection={collectionConfig} key=\"bulk-restore\" viewType={viewType} />\n ),\n !disableBulkDelete && canShowDeleteButton && collectionConfig && (\n <DeleteMany\n afterDelete={() => {\n toggleAll()\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n }}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"bulk-delete\"\n modalPrefix={modalPrefix}\n search={parseSearchParams(searchParams)?.search as string}\n selections={{\n [collectionConfig.slug]: {\n all: selectingAll,\n ids: deleteIDs,\n totalCount: selectingAll ? count : deleteIDs.length,\n },\n }}\n trash={collectionConfig?.trash}\n viewType={viewType}\n where={deleteWhere}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","qs","React","Fragment","useCallback","DeleteMany","EditMany","getFolderHierarchySlug","MoveMany","ListSelection_v4","ListSelectionButton","PublishMany","RestoreMany","UnpublishMany","useAuth","useConfig","useRouteCache","useRouter","useSearchParams","SelectAllStatus","useSelection","useTranslation","parseSearchParams","ListSelection","t0","$","collectionConfig","disableBulkDelete","disableBulkEdit","hasDeletePermission","hasDeletePermissionFromProps","hasTrashPermission","hasTrashPermissionFromProps","label","modalPrefix","showSelectAllAcrossPages","t1","viewType","where","undefined","count","selectAll","selectedIDs","toggleAll","totalDocs","t","permissions","config","router","searchParams","clearRouteCache","t2","t3","collections","Symbol","for","bb0","hierarchySlug","slug","onActionSuccess","isTrashView","trash","collectionPermissions","Boolean","delete","canShowDeleteButton","selectingAll","AllAvailable","deleteIDs","baseWhere","deleteWhere","and","Array","isArray","deletedAt","exists","_jsx","ListActions","id","onClick","children","filter","SelectionActions","_jsxs","collection","ids","onSuccess","requiredCollections","selections","afterDelete","replace","stringify","page","addQueryPrefix","search","all","totalCount","length"],"sources":["../../../../src/views/List/ListSelection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ViewTypes, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { getFolderHierarchySlug } from '../../../elements/Hierarchy/getFolderHierarchySlug.js'\nimport { MoveMany } from '../../../elements/Hierarchy/MoveMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany } from '../../../elements/PublishMany/index.js'\nimport { RestoreMany } from '../../../elements/RestoreMany/index.js'\nimport { UnpublishMany } from '../../../elements/UnpublishMany/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js'\nimport { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { parseSearchParams } from '../../../utilities/parseSearchParams.js'\n\nexport type ListSelectionProps = {\n collectionConfig?: ClientCollectionConfig\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n label: string\n modalPrefix?: string\n showSelectAllAcrossPages?: boolean\n viewType?: ViewTypes\n where?: Where\n}\n\nexport const ListSelection: React.FC<ListSelectionProps> = ({\n collectionConfig,\n disableBulkDelete,\n disableBulkEdit,\n hasDeletePermission: hasDeletePermissionFromProps,\n hasTrashPermission: hasTrashPermissionFromProps,\n label,\n modalPrefix,\n showSelectAllAcrossPages = true,\n viewType,\n where,\n}) => {\n const { count, selectAll, selectedIDs, toggleAll, totalDocs } = useSelection()\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const { config } = useConfig()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const hierarchySlug = collectionConfig\n ? getFolderHierarchySlug(config.collections, collectionConfig.slug)\n : undefined\n\n const onActionSuccess = useCallback(() => toggleAll(), [toggleAll])\n\n if (count === 0) {\n return null\n }\n\n const isTrashView = collectionConfig?.trash && viewType === 'trash'\n\n const collectionPermissions = permissions?.collections?.[collectionConfig?.slug]\n const hasDeletePermission =\n hasDeletePermissionFromProps !== undefined\n ? hasDeletePermissionFromProps\n : Boolean(collectionPermissions?.delete)\n const hasTrashPermission =\n hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission\n const canShowDeleteButton =\n viewType === 'trash' ? hasDeletePermission : hasDeletePermission || hasTrashPermission\n\n const selectingAll = selectAll === SelectAllStatus.AllAvailable\n const deleteIDs = selectingAll ? [] : selectedIDs\n const baseWhere = parseSearchParams(searchParams)?.where as Where\n const deleteWhere =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []),\n { deletedAt: { exists: true } },\n ],\n }\n : baseWhere\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n selectAll !== SelectAllStatus.AllAvailable &&\n count < totalDocs &&\n showSelectAllAcrossPages !== false ? (\n <ListSelectionButton\n aria-label={t('general:selectAll', { count: `(${totalDocs})`, label })}\n id=\"select-all-across-pages\"\n key=\"select-all\"\n onClick={() => toggleAll(true)}\n >\n {t('general:selectAll', { count: `(${totalDocs})`, label: '' })}\n </ListSelectionButton>\n ) : null,\n ].filter(Boolean)}\n SelectionActions={[\n !disableBulkEdit && !isTrashView && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <PublishMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <UnpublishMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n {hierarchySlug && collectionConfig && selectAll !== SelectAllStatus.AllAvailable && (\n <MoveMany\n hierarchySlug={hierarchySlug}\n onSuccess={onActionSuccess}\n requiredCollections={[collectionConfig.slug]}\n selections={{ [collectionConfig.slug]: { ids: selectedIDs } }}\n />\n )}\n </Fragment>\n ),\n isTrashView && (\n <RestoreMany collection={collectionConfig} key=\"bulk-restore\" viewType={viewType} />\n ),\n !disableBulkDelete && canShowDeleteButton && collectionConfig && (\n <DeleteMany\n afterDelete={() => {\n toggleAll()\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n }}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"bulk-delete\"\n modalPrefix={modalPrefix}\n search={parseSearchParams(searchParams)?.search as string}\n selections={{\n [collectionConfig.slug]: {\n all: selectingAll,\n ids: deleteIDs,\n totalCount: selectingAll ? count : deleteIDs.length,\n },\n }}\n trash={collectionConfig?.trash}\n viewType={viewType}\n where={deleteWhere}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,13 +3,18 @@ import type { HierarchyViewData, PayloadRequest, SanitizedCollectionConfig, Sani
|
|
|
3
3
|
* Fetches hierarchy data for a collection with a selected parent.
|
|
4
4
|
* Returns data that can be rendered client-side by HierarchyTable.
|
|
5
5
|
*/
|
|
6
|
-
export declare const handleHierarchy: ({ baseFilter, collectionConfig, collectionSlug, parentId, permissions, req, search, typeFilter, user, }: {
|
|
6
|
+
export declare const handleHierarchy: ({ baseFilter, collectionConfig, collectionSlug, parentId, permissions, req, scopedToCollection, search, typeFilter, user, }: {
|
|
7
7
|
baseFilter?: null | Where;
|
|
8
8
|
collectionConfig: SanitizedCollectionConfig;
|
|
9
9
|
collectionSlug: string;
|
|
10
10
|
parentId: null | number | string;
|
|
11
11
|
permissions?: SanitizedPermissions;
|
|
12
12
|
req: PayloadRequest;
|
|
13
|
+
/**
|
|
14
|
+
* When set, only this collection's documents are listed and folder children are filtered to
|
|
15
|
+
* folders that accept it. `collectionConfig`/`collectionSlug` must be the folder collection.
|
|
16
|
+
*/
|
|
17
|
+
scopedToCollection?: string;
|
|
13
18
|
search?: string;
|
|
14
19
|
/** Filter hierarchy items by their collectionSpecific type field */
|
|
15
20
|
typeFilter?: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleHierarchy.d.ts","sourceRoot":"","sources":["../../../src/views/List/handleHierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,yBAAyB,EACzB,oBAAoB,EAEpB,KAAK,EACN,MAAM,SAAS,CAAA;AAMhB;;;GAGG;AACH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"handleHierarchy.d.ts","sourceRoot":"","sources":["../../../src/views/List/handleHierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,yBAAyB,EACzB,oBAAoB,EAEpB,KAAK,EACN,MAAM,SAAS,CAAA;AAMhB;;;GAGG;AACH,eAAO,MAAM,eAAe,gIAWzB;IACD,UAAU,CAAC,EAAE,IAAI,GAAG,KAAK,CAAA;IACzB,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;IAChC,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,GAAG,EAAE,cAAc,CAAA;IACnB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAC7B,KAAG,OAAO,CAAC,iBAAiB,CAsR5B,CAAA"}
|
|
@@ -12,6 +12,7 @@ export const handleHierarchy = async ({
|
|
|
12
12
|
parentId,
|
|
13
13
|
permissions,
|
|
14
14
|
req,
|
|
15
|
+
scopedToCollection,
|
|
15
16
|
search,
|
|
16
17
|
typeFilter,
|
|
17
18
|
user
|
|
@@ -86,6 +87,22 @@ export const handleHierarchy = async ({
|
|
|
86
87
|
};
|
|
87
88
|
}
|
|
88
89
|
}
|
|
90
|
+
// Scoped browse only lists folders that can hold the scoped collection, so no folder in the view
|
|
91
|
+
// is a dead end and every folder shown is a valid drop target.
|
|
92
|
+
if (scopedToCollection && hierarchyConfig.collectionSpecific && typeof hierarchyConfig.collectionSpecific === 'object') {
|
|
93
|
+
const typeFieldName = hierarchyConfig.collectionSpecific.fieldName;
|
|
94
|
+
typeCondition = {
|
|
95
|
+
or: [{
|
|
96
|
+
[typeFieldName]: {
|
|
97
|
+
in: [scopedToCollection]
|
|
98
|
+
}
|
|
99
|
+
}, {
|
|
100
|
+
[typeFieldName]: {
|
|
101
|
+
exists: false
|
|
102
|
+
}
|
|
103
|
+
}]
|
|
104
|
+
};
|
|
105
|
+
}
|
|
89
106
|
// Combine conditions: parent + search + typeFilter
|
|
90
107
|
const conditions = [parentCondition];
|
|
91
108
|
if (search) {
|
|
@@ -121,12 +138,22 @@ export const handleHierarchy = async ({
|
|
|
121
138
|
// At nested level: show documents assigned to the selected hierarchy item
|
|
122
139
|
const relatedDocumentsByCollection = {};
|
|
123
140
|
const relatedBaseFilters = {};
|
|
141
|
+
/**
|
|
142
|
+
* At the root, related documents are the ones not filed under any hierarchy item. Aggregating
|
|
143
|
+
* those across every related collection isn't a meaningful grouping - it amounts to "everything
|
|
144
|
+
* unfiled, from everywhere" - so they are only listed when browsing one specific collection by
|
|
145
|
+
* hierarchy. Inside a hierarchy item they are that item's contents, so they always list.
|
|
146
|
+
*/
|
|
147
|
+
const shouldListRelatedDocuments = parentId !== null || Boolean(scopedToCollection);
|
|
124
148
|
// Use pre-computed relatedCollections from sanitized hierarchy config
|
|
125
|
-
const relatedCollectionsConfig = hierarchyConfig.relatedCollections || {};
|
|
149
|
+
const relatedCollectionsConfig = shouldListRelatedDocuments ? hierarchyConfig.relatedCollections || {} : {};
|
|
126
150
|
for (const [relatedSlug, fieldInfo] of Object.entries(relatedCollectionsConfig)) {
|
|
127
151
|
if (relatedSlug === collectionSlug) {
|
|
128
152
|
continue;
|
|
129
153
|
}
|
|
154
|
+
if (scopedToCollection && relatedSlug !== scopedToCollection) {
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
130
157
|
const relatedCollectionConfig = req.payload.collections[relatedSlug]?.config;
|
|
131
158
|
if (!relatedCollectionConfig) {
|
|
132
159
|
continue;
|
|
@@ -208,7 +235,9 @@ export const handleHierarchy = async ({
|
|
|
208
235
|
user,
|
|
209
236
|
where
|
|
210
237
|
});
|
|
211
|
-
|
|
238
|
+
// The scoped collection's group is the whole point of a scoped browse, so it survives an
|
|
239
|
+
// empty folder rather than vanishing along with its band.
|
|
240
|
+
if (data.totalDocs > 0 || relatedSlug === scopedToCollection) {
|
|
212
241
|
relatedDocumentsByCollection[relatedSlug] = {
|
|
213
242
|
fieldName,
|
|
214
243
|
hasMany,
|
|
@@ -249,11 +278,13 @@ export const handleHierarchy = async ({
|
|
|
249
278
|
allowedCollections,
|
|
250
279
|
breadcrumbs,
|
|
251
280
|
childrenData,
|
|
281
|
+
hierarchySlug: collectionSlug,
|
|
252
282
|
parent,
|
|
253
283
|
parentFieldName,
|
|
254
284
|
parentId,
|
|
255
285
|
relatedBaseFilters: Object.keys(relatedBaseFilters).length > 0 ? relatedBaseFilters : undefined,
|
|
256
|
-
relatedDocumentsByCollection
|
|
286
|
+
relatedDocumentsByCollection,
|
|
287
|
+
scopedCollectionSlug: scopedToCollection
|
|
257
288
|
};
|
|
258
289
|
};
|
|
259
290
|
//# sourceMappingURL=handleHierarchy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleHierarchy.js","names":["getTranslation","getAncestors","combineWhereConstraints","DEFAULT_HIERARCHY_LIST_LIMIT","handleHierarchy","baseFilter","collectionConfig","collectionSlug","parentId","permissions","req","search","typeFilter","user","hierarchyConfig","hierarchy","undefined","Error","parentFieldName","useAsTitle","admin","parent","breadcrumbs","item","ancestors","Promise","all","payload","findByID","id","collection","depth","overrideAccess","_error","logger","warn","msg","parentCondition","or","exists","equals","typeCondition","length","collectionSpecific","typeFieldName","fieldName","filteredTypes","filter","t","in","conditions","push","like","childrenWhere","and","childrenData","find","draft","fallbackLocale","includeLockStatus","limit","locale","page","where","relatedDocumentsByCollection","relatedBaseFilters","relatedCollectionsConfig","relatedCollections","relatedSlug","fieldInfo","Object","entries","relatedCollectionConfig","collections","config","read","hasMany","relatedBaseFilter","baseListFilter","sort","relationshipWhere","relatedUseAsTitle","whereWithSearch","data","totalDocs","label","labels","plural","i18n","result","error","err","allowedCollections","typeValues","map","slug","keys"],"sources":["../../../src/views/List/handleHierarchy.ts"],"sourcesContent":["import type {\n HierarchyViewData,\n PayloadRequest,\n RelatedDocumentsGrouped,\n SanitizedCollectionConfig,\n SanitizedPermissions,\n TypeWithID,\n Where,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { getAncestors } from 'payload'\nimport { combineWhereConstraints, DEFAULT_HIERARCHY_LIST_LIMIT } from 'payload/shared'\n\n/**\n * Fetches hierarchy data for a collection with a selected parent.\n * Returns data that can be rendered client-side by HierarchyTable.\n */\nexport const handleHierarchy = async ({\n baseFilter,\n collectionConfig,\n collectionSlug,\n parentId,\n permissions,\n req,\n search,\n typeFilter,\n user,\n}: {\n baseFilter?: null | Where\n collectionConfig: SanitizedCollectionConfig\n collectionSlug: string\n parentId: null | number | string\n permissions?: SanitizedPermissions\n req: PayloadRequest\n search?: string\n /** Filter hierarchy items by their collectionSpecific type field */\n typeFilter?: string[]\n user: PayloadRequest['user']\n}): Promise<HierarchyViewData> => {\n const hierarchyConfig =\n collectionConfig.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy\n : undefined\n\n if (!hierarchyConfig) {\n throw new Error('Collection is not a hierarchy')\n }\n\n const parentFieldName = hierarchyConfig.parentFieldName\n\n const useAsTitle = collectionConfig.admin?.useAsTitle || 'id'\n\n // Fetch the parent item and breadcrumbs (skip for root level)\n let parent: null | (Record<string, unknown> & TypeWithID) = null\n let breadcrumbs: Array<{ id: number | string; title: string }> = []\n\n if (parentId !== null) {\n try {\n const [item, ancestors] = await Promise.all([\n req.payload.findByID({\n id: parentId,\n collection: collectionSlug,\n depth: 0,\n overrideAccess: false,\n req,\n user,\n }),\n getAncestors({\n id: parentId,\n collectionSlug,\n req,\n }),\n ])\n\n parent = item\n breadcrumbs = ancestors\n } catch (_error) {\n req.payload.logger.warn({\n msg: `Hierarchy item not found: ${parentId}`,\n })\n }\n }\n\n // Build children where clause\n // For root level (parentId is null), find items without a parent\n // For nested level, find items with this specific parent\n const parentCondition =\n parentId === null\n ? {\n or: [{ [parentFieldName]: { exists: false } }, { [parentFieldName]: { equals: null } }],\n }\n : { [parentFieldName]: { equals: parentId } }\n\n // Build type filter condition if typeFilter is provided and collectionSpecific is configured\n // Filter to folders that allow ANY of the selected types OR are unrestricted\n let typeCondition: Record<string, unknown> | undefined\n\n if (\n typeFilter &&\n typeFilter.length > 0 &&\n hierarchyConfig.collectionSpecific &&\n typeof hierarchyConfig.collectionSpecific === 'object'\n ) {\n const typeFieldName = hierarchyConfig.collectionSpecific.fieldName\n // Exclude the hierarchy collection itself from the filter (folders always show folders)\n const filteredTypes = typeFilter.filter((t) => t !== collectionSlug)\n\n if (filteredTypes.length > 0) {\n typeCondition = {\n or: [\n { [typeFieldName]: { in: filteredTypes } },\n { [typeFieldName]: { exists: false } }, // Include unrestricted folders\n ],\n }\n }\n }\n\n // Combine conditions: parent + search + typeFilter\n const conditions: Record<string, unknown>[] = [parentCondition]\n\n if (search) {\n conditions.push({ [useAsTitle]: { like: search } })\n }\n\n if (typeCondition) {\n conditions.push(typeCondition)\n }\n\n const childrenWhere = conditions.length > 1 ? { and: conditions } : parentCondition\n\n // Fetch children (hierarchy items with this parent, or root items if parentId is null)\n const childrenData = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: DEFAULT_HIERARCHY_LIST_LIMIT,\n locale: req.locale,\n overrideAccess: false,\n page: 1,\n req,\n user,\n where: combineWhereConstraints([childrenWhere, baseFilter]),\n })\n\n // Fetch related documents from other collections\n // At root level: show unassigned documents (where hierarchy field doesn't exist)\n // At nested level: show documents assigned to the selected hierarchy item\n const relatedDocumentsByCollection: RelatedDocumentsGrouped = {}\n const relatedBaseFilters: Record<string, Where> = {}\n\n // Use pre-computed relatedCollections from sanitized hierarchy config\n const relatedCollectionsConfig = hierarchyConfig.relatedCollections || {}\n\n for (const [relatedSlug, fieldInfo] of Object.entries(relatedCollectionsConfig)) {\n if (relatedSlug === collectionSlug) {\n continue\n }\n\n const relatedCollectionConfig = req.payload.collections[relatedSlug]?.config\n if (!relatedCollectionConfig) {\n continue\n }\n\n // Check if user has read permission for this collection\n if (!permissions?.collections?.[relatedSlug]?.read) {\n continue\n }\n\n const { fieldName, hasMany } = fieldInfo\n\n // Get baseFilter for this related collection\n const relatedBaseFilter = await (\n relatedCollectionConfig.admin?.baseFilter ?? relatedCollectionConfig.admin?.baseListFilter\n )?.({\n limit: DEFAULT_HIERARCHY_LIST_LIMIT,\n page: 1,\n req,\n sort: undefined,\n })\n\n if (relatedBaseFilter) {\n relatedBaseFilters[relatedSlug] = relatedBaseFilter\n }\n\n // Build where clause based on whether we're at root or nested level\n let relationshipWhere: Record<string, unknown>\n\n if (parentId === null) {\n // Root level: find documents where hierarchy field doesn't exist, is null, or is empty array\n const conditions: Record<string, unknown>[] = [\n { [fieldName]: { exists: false } },\n { [fieldName]: { equals: null } },\n ]\n if (hasMany) {\n // hasMany fields store cleared values as empty arrays\n conditions.push({ [fieldName]: { equals: [] } })\n }\n relationshipWhere = { or: conditions }\n } else {\n // Nested level: find documents assigned to this hierarchy item\n // \"in\" operator works for both hasMany and single relationship fields\n relationshipWhere = {\n [fieldName]: { in: [parentId] },\n }\n }\n\n // Add search filter if provided\n const relatedUseAsTitle = relatedCollectionConfig.admin?.useAsTitle || 'id'\n const whereWithSearch = search\n ? { and: [relationshipWhere, { [relatedUseAsTitle]: { like: search } }] }\n : relationshipWhere\n\n // Combine relationship where with related collection's baseFilter\n const where = combineWhereConstraints([whereWithSearch, relatedBaseFilter])\n\n try {\n const data = await req.payload.find({\n collection: relatedSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: DEFAULT_HIERARCHY_LIST_LIMIT,\n locale: req.locale,\n overrideAccess: false,\n page: 1,\n req,\n user,\n where,\n })\n\n if (data.totalDocs > 0) {\n relatedDocumentsByCollection[relatedSlug] = {\n fieldName,\n hasMany,\n label: getTranslation(relatedCollectionConfig.labels?.plural, req.i18n),\n result: data,\n }\n }\n } catch (error) {\n req.payload.logger.warn({\n err: error,\n msg: `Failed to query related collection ${relatedSlug}`,\n })\n }\n }\n\n // Extract allowed collections from parent's collectionSpecific field\n // - undefined: collectionSpecific not configured, no filtering needed\n // - []: parent folder accepts everything, can only move to unrestricted destinations\n // - [{ slug, label }, ...]: parent folder has restrictions\n let allowedCollections: Array<{ label: string; slug: string }> | undefined\n\n if (hierarchyConfig.collectionSpecific && parent) {\n const typeFieldName = hierarchyConfig.collectionSpecific.fieldName\n const typeValues = parent[typeFieldName] as null | string[] | undefined\n\n if (typeValues && typeValues.length > 0) {\n allowedCollections = typeValues.map((slug) => {\n const config = req.payload.collections[slug]?.config\n const label = config ? getTranslation(config.labels?.plural, req.i18n) : slug\n return { slug, label }\n })\n } else {\n // Parent folder accepts everything (type is null or empty)\n allowedCollections = []\n }\n }\n\n return {\n allowedCollections,\n breadcrumbs,\n childrenData,\n parent,\n parentFieldName,\n parentId,\n relatedBaseFilters: Object.keys(relatedBaseFilters).length > 0 ? relatedBaseFilters : undefined,\n relatedDocumentsByCollection,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"handleHierarchy.js","names":["getTranslation","getAncestors","combineWhereConstraints","DEFAULT_HIERARCHY_LIST_LIMIT","handleHierarchy","baseFilter","collectionConfig","collectionSlug","parentId","permissions","req","scopedToCollection","search","typeFilter","user","hierarchyConfig","hierarchy","undefined","Error","parentFieldName","useAsTitle","admin","parent","breadcrumbs","item","ancestors","Promise","all","payload","findByID","id","collection","depth","overrideAccess","_error","logger","warn","msg","parentCondition","or","exists","equals","typeCondition","length","collectionSpecific","typeFieldName","fieldName","filteredTypes","filter","t","in","conditions","push","like","childrenWhere","and","childrenData","find","draft","fallbackLocale","includeLockStatus","limit","locale","page","where","relatedDocumentsByCollection","relatedBaseFilters","shouldListRelatedDocuments","Boolean","relatedCollectionsConfig","relatedCollections","relatedSlug","fieldInfo","Object","entries","relatedCollectionConfig","collections","config","read","hasMany","relatedBaseFilter","baseListFilter","sort","relationshipWhere","relatedUseAsTitle","whereWithSearch","data","totalDocs","label","labels","plural","i18n","result","error","err","allowedCollections","typeValues","map","slug","hierarchySlug","keys","scopedCollectionSlug"],"sources":["../../../src/views/List/handleHierarchy.ts"],"sourcesContent":["import type {\n HierarchyViewData,\n PayloadRequest,\n RelatedDocumentsGrouped,\n SanitizedCollectionConfig,\n SanitizedPermissions,\n TypeWithID,\n Where,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { getAncestors } from 'payload'\nimport { combineWhereConstraints, DEFAULT_HIERARCHY_LIST_LIMIT } from 'payload/shared'\n\n/**\n * Fetches hierarchy data for a collection with a selected parent.\n * Returns data that can be rendered client-side by HierarchyTable.\n */\nexport const handleHierarchy = async ({\n baseFilter,\n collectionConfig,\n collectionSlug,\n parentId,\n permissions,\n req,\n scopedToCollection,\n search,\n typeFilter,\n user,\n}: {\n baseFilter?: null | Where\n collectionConfig: SanitizedCollectionConfig\n collectionSlug: string\n parentId: null | number | string\n permissions?: SanitizedPermissions\n req: PayloadRequest\n /**\n * When set, only this collection's documents are listed and folder children are filtered to\n * folders that accept it. `collectionConfig`/`collectionSlug` must be the folder collection.\n */\n scopedToCollection?: string\n search?: string\n /** Filter hierarchy items by their collectionSpecific type field */\n typeFilter?: string[]\n user: PayloadRequest['user']\n}): Promise<HierarchyViewData> => {\n const hierarchyConfig =\n collectionConfig.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy\n : undefined\n\n if (!hierarchyConfig) {\n throw new Error('Collection is not a hierarchy')\n }\n\n const parentFieldName = hierarchyConfig.parentFieldName\n\n const useAsTitle = collectionConfig.admin?.useAsTitle || 'id'\n\n // Fetch the parent item and breadcrumbs (skip for root level)\n let parent: null | (Record<string, unknown> & TypeWithID) = null\n let breadcrumbs: Array<{ id: number | string; title: string }> = []\n\n if (parentId !== null) {\n try {\n const [item, ancestors] = await Promise.all([\n req.payload.findByID({\n id: parentId,\n collection: collectionSlug,\n depth: 0,\n overrideAccess: false,\n req,\n user,\n }),\n getAncestors({\n id: parentId,\n collectionSlug,\n req,\n }),\n ])\n\n parent = item\n breadcrumbs = ancestors\n } catch (_error) {\n req.payload.logger.warn({\n msg: `Hierarchy item not found: ${parentId}`,\n })\n }\n }\n\n // Build children where clause\n // For root level (parentId is null), find items without a parent\n // For nested level, find items with this specific parent\n const parentCondition =\n parentId === null\n ? {\n or: [{ [parentFieldName]: { exists: false } }, { [parentFieldName]: { equals: null } }],\n }\n : { [parentFieldName]: { equals: parentId } }\n\n // Build type filter condition if typeFilter is provided and collectionSpecific is configured\n // Filter to folders that allow ANY of the selected types OR are unrestricted\n let typeCondition: Record<string, unknown> | undefined\n\n if (\n typeFilter &&\n typeFilter.length > 0 &&\n hierarchyConfig.collectionSpecific &&\n typeof hierarchyConfig.collectionSpecific === 'object'\n ) {\n const typeFieldName = hierarchyConfig.collectionSpecific.fieldName\n // Exclude the hierarchy collection itself from the filter (folders always show folders)\n const filteredTypes = typeFilter.filter((t) => t !== collectionSlug)\n\n if (filteredTypes.length > 0) {\n typeCondition = {\n or: [\n { [typeFieldName]: { in: filteredTypes } },\n { [typeFieldName]: { exists: false } }, // Include unrestricted folders\n ],\n }\n }\n }\n\n // Scoped browse only lists folders that can hold the scoped collection, so no folder in the view\n // is a dead end and every folder shown is a valid drop target.\n if (\n scopedToCollection &&\n hierarchyConfig.collectionSpecific &&\n typeof hierarchyConfig.collectionSpecific === 'object'\n ) {\n const typeFieldName = hierarchyConfig.collectionSpecific.fieldName\n\n typeCondition = {\n or: [\n { [typeFieldName]: { in: [scopedToCollection] } },\n { [typeFieldName]: { exists: false } },\n ],\n }\n }\n\n // Combine conditions: parent + search + typeFilter\n const conditions: Record<string, unknown>[] = [parentCondition]\n\n if (search) {\n conditions.push({ [useAsTitle]: { like: search } })\n }\n\n if (typeCondition) {\n conditions.push(typeCondition)\n }\n\n const childrenWhere = conditions.length > 1 ? { and: conditions } : parentCondition\n\n // Fetch children (hierarchy items with this parent, or root items if parentId is null)\n const childrenData = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: DEFAULT_HIERARCHY_LIST_LIMIT,\n locale: req.locale,\n overrideAccess: false,\n page: 1,\n req,\n user,\n where: combineWhereConstraints([childrenWhere, baseFilter]),\n })\n\n // Fetch related documents from other collections\n // At root level: show unassigned documents (where hierarchy field doesn't exist)\n // At nested level: show documents assigned to the selected hierarchy item\n const relatedDocumentsByCollection: RelatedDocumentsGrouped = {}\n const relatedBaseFilters: Record<string, Where> = {}\n\n /**\n * At the root, related documents are the ones not filed under any hierarchy item. Aggregating\n * those across every related collection isn't a meaningful grouping - it amounts to \"everything\n * unfiled, from everywhere\" - so they are only listed when browsing one specific collection by\n * hierarchy. Inside a hierarchy item they are that item's contents, so they always list.\n */\n const shouldListRelatedDocuments = parentId !== null || Boolean(scopedToCollection)\n\n // Use pre-computed relatedCollections from sanitized hierarchy config\n const relatedCollectionsConfig = shouldListRelatedDocuments\n ? hierarchyConfig.relatedCollections || {}\n : {}\n\n for (const [relatedSlug, fieldInfo] of Object.entries(relatedCollectionsConfig)) {\n if (relatedSlug === collectionSlug) {\n continue\n }\n\n if (scopedToCollection && relatedSlug !== scopedToCollection) {\n continue\n }\n\n const relatedCollectionConfig = req.payload.collections[relatedSlug]?.config\n if (!relatedCollectionConfig) {\n continue\n }\n\n // Check if user has read permission for this collection\n if (!permissions?.collections?.[relatedSlug]?.read) {\n continue\n }\n\n const { fieldName, hasMany } = fieldInfo\n\n // Get baseFilter for this related collection\n const relatedBaseFilter = await (\n relatedCollectionConfig.admin?.baseFilter ?? relatedCollectionConfig.admin?.baseListFilter\n )?.({\n limit: DEFAULT_HIERARCHY_LIST_LIMIT,\n page: 1,\n req,\n sort: undefined,\n })\n\n if (relatedBaseFilter) {\n relatedBaseFilters[relatedSlug] = relatedBaseFilter\n }\n\n // Build where clause based on whether we're at root or nested level\n let relationshipWhere: Record<string, unknown>\n\n if (parentId === null) {\n // Root level: find documents where hierarchy field doesn't exist, is null, or is empty array\n const conditions: Record<string, unknown>[] = [\n { [fieldName]: { exists: false } },\n { [fieldName]: { equals: null } },\n ]\n if (hasMany) {\n // hasMany fields store cleared values as empty arrays\n conditions.push({ [fieldName]: { equals: [] } })\n }\n relationshipWhere = { or: conditions }\n } else {\n // Nested level: find documents assigned to this hierarchy item\n // \"in\" operator works for both hasMany and single relationship fields\n relationshipWhere = {\n [fieldName]: { in: [parentId] },\n }\n }\n\n // Add search filter if provided\n const relatedUseAsTitle = relatedCollectionConfig.admin?.useAsTitle || 'id'\n const whereWithSearch = search\n ? { and: [relationshipWhere, { [relatedUseAsTitle]: { like: search } }] }\n : relationshipWhere\n\n // Combine relationship where with related collection's baseFilter\n const where = combineWhereConstraints([whereWithSearch, relatedBaseFilter])\n\n try {\n const data = await req.payload.find({\n collection: relatedSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: DEFAULT_HIERARCHY_LIST_LIMIT,\n locale: req.locale,\n overrideAccess: false,\n page: 1,\n req,\n user,\n where,\n })\n\n // The scoped collection's group is the whole point of a scoped browse, so it survives an\n // empty folder rather than vanishing along with its band.\n if (data.totalDocs > 0 || relatedSlug === scopedToCollection) {\n relatedDocumentsByCollection[relatedSlug] = {\n fieldName,\n hasMany,\n label: getTranslation(relatedCollectionConfig.labels?.plural, req.i18n),\n result: data,\n }\n }\n } catch (error) {\n req.payload.logger.warn({\n err: error,\n msg: `Failed to query related collection ${relatedSlug}`,\n })\n }\n }\n\n // Extract allowed collections from parent's collectionSpecific field\n // - undefined: collectionSpecific not configured, no filtering needed\n // - []: parent folder accepts everything, can only move to unrestricted destinations\n // - [{ slug, label }, ...]: parent folder has restrictions\n let allowedCollections: Array<{ label: string; slug: string }> | undefined\n\n if (hierarchyConfig.collectionSpecific && parent) {\n const typeFieldName = hierarchyConfig.collectionSpecific.fieldName\n const typeValues = parent[typeFieldName] as null | string[] | undefined\n\n if (typeValues && typeValues.length > 0) {\n allowedCollections = typeValues.map((slug) => {\n const config = req.payload.collections[slug]?.config\n const label = config ? getTranslation(config.labels?.plural, req.i18n) : slug\n return { slug, label }\n })\n } else {\n // Parent folder accepts everything (type is null or empty)\n allowedCollections = []\n }\n }\n\n return {\n allowedCollections,\n breadcrumbs,\n childrenData,\n hierarchySlug: collectionSlug,\n parent,\n parentFieldName,\n parentId,\n relatedBaseFilters: Object.keys(relatedBaseFilters).length > 0 ? relatedBaseFilters : undefined,\n relatedDocumentsByCollection,\n scopedCollectionSlug: scopedToCollection,\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;AAgCpE,OAAO,aAAa,CAAA;AA+DpB,wBAAgB,eAAe,CAAC,KAAK,EAAE,mBAAmB,qBA4WzD"}
|