@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useModal","formatAdminURL","formatFilesize","isImage","React","Fragment","useCallback","useEffect","useRef","useState","toast","FieldError","fieldBaseClass","TextInput","useForm","useField","useConfig","useDocumentInfo","EditDepthProvider","useTranslation","useUploadControls","useUploadEdits","Button","Drawer","Dropzone","EditUpload","PreviewSizes","Thumbnail","editDrawerSlug","sizePreviewSlug","pasteURLDrawerSlug","UploadFromURLModal","AudioPreview","FilePreview","PdfPreview","VideoPreview","FileToolbar","baseClass","validate","value","undefined","name","FileManager","collectionSlug","initialState","resetUploadEdits","resetUploadEditsFromProps","updateUploadEdits","updateUploadEditsFromProps","uploadConfig","UploadControls","uploadEdits","uploadEditsFromProps","UploadFilePreview","closeModal","openModal","t","setModified","id","data","setUploadStatus","errorMessage","setValue","showError","path","config","routes","api","setUploadControlFile","setUploadControlFileName","setUploadControlFileUrl","uploadControlFile","uploadControlFileName","uploadControlFileUrl","uploadEditsContext","fileSrc","setFileSrc","removedFile","setRemovedFile","filename","setFilename","fileUrl","setFileUrl","selectedSize","setSelectedSize","inputRef","useServerSideFetch","pasteURL","allowList","length","acceptMimeTypes","mimeTypes","join","imageCacheTag","cacheTags","updatedAt","hasImageSizes","imageSizes","hasResizeOptions","Boolean","resizeOptions","focalPointEnabled","focalPoint","crop","showCrop","showFocalPoint","selectedSizeData","sizes","sidePanelFileSrc","url","thumbnailURL","sidePanelMimeType","mimeType","fileTypeIsAdjustable","renameFile","fileToChange","newName","File","type","lastModified","handleFileChange","file","isNewFile","URL","createObjectURL","handleFileNameChange","e","updatedFileName","target","handleFileRemoval","handleFileSelection","files","isValidUrl","canParse","handleUrlSubmit","clientResponse","fetch","ok","Error","status","blob","rawSegment","split","pop","fileName","decodeURIComponent","_clientError","error","encodeURIComponent","serverResponse","apiRoute","_serverError","onEditsSave","args","startsWith","revokeObjectURL","handleControlFileUrl","renderSelectedFilePreview","src","fileType","_jsx","className","title","size","drawers","_jsxs","initialCrop","initialFocalPoint","x","focalX","y","focalY","onSave","hoverTitle","slug","label","doc","showUploadInput","hideFileInputOnCreate","filter","message","hideRemoveFile","isAdjustable","onEditImage","onReplace","buttonStyle","icon","onClick","round","tooltip","onChange","current","click","accept","hidden","ref"],"sources":["../../../src/elements/FileManager/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig, UploadEdits } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { formatAdminURL, formatFilesize, isImage } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { fieldBaseClass } from '../../fields/shared/index.js'\nimport { TextInput } from '../../fields/Text/Input.js'\nimport { useForm } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { EditDepthProvider } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useUploadControls } from '../../providers/UploadControls/index.js'\nimport { useUploadEdits } from '../../providers/UploadEdits/index.js'\nimport { Button } from '../Button/index.js'\nimport { Drawer } from '../Drawer/index.js'\nimport { Dropzone } from '../Dropzone/index.js'\nimport { EditUpload } from '../EditUpload/index.js'\nimport { PreviewSizes } from '../PreviewSizes/index.js'\nimport { Thumbnail } from '../Thumbnail/index.js'\nimport { editDrawerSlug, sizePreviewSlug } from '../Upload/index.js'\nimport { pasteURLDrawerSlug, UploadFromURLModal } from '../Upload/UploadFromURLModal/index.js'\nimport { AudioPreview } from './FilePreview/AudioPreview/index.js'\nimport { FilePreview } from './FilePreview/index.js'\nimport { PdfPreview } from './FilePreview/PdfPreview/index.js'\nimport { VideoPreview } from './FilePreview/VideoPreview/index.js'\nimport { FileToolbar } from './FileToolbar/index.js'\nimport './index.css'\n\nconst baseClass = 'file-manager'\n\nconst validate = (value) => {\n if (!value && value !== undefined) {\n return 'A file is required.'\n }\n if (value && (!value.name || value.name === '')) {\n return 'A file name is required.'\n }\n return true\n}\n\nexport type FileManagerProps = {\n readonly collectionSlug: string\n readonly initialState?: import('payload').FormState\n /**\n * When provided, upload edits are sourced from these props instead of the `useUploadEdits`\n * context. The bulk upload drawer uses this to drive per-file edits from its FormsManager.\n */\n readonly resetUploadEdits?: () => void\n readonly updateUploadEdits?: (args: UploadEdits) => void\n readonly uploadConfig: Omit<SanitizedCollectionConfig['upload'], 'uploadInstructions'>\n readonly UploadControls?: React.ReactNode\n readonly uploadEdits?: UploadEdits\n readonly UploadFilePreview?: React.ReactNode\n}\n\nexport const FileManager: React.FC<FileManagerProps> = ({\n collectionSlug,\n initialState,\n resetUploadEdits: resetUploadEditsFromProps,\n updateUploadEdits: updateUploadEditsFromProps,\n uploadConfig,\n UploadControls,\n uploadEdits: uploadEditsFromProps,\n UploadFilePreview,\n}) => {\n const { closeModal, openModal } = useModal()\n const { t } = useTranslation()\n const { setModified } = useForm()\n const { id, data, setUploadStatus } = useDocumentInfo()\n const { errorMessage, setValue, showError, value } = useField<File>({\n path: 'file',\n validate,\n })\n const {\n config: {\n routes: { api },\n },\n } = useConfig()\n const {\n setUploadControlFile,\n setUploadControlFileName,\n setUploadControlFileUrl,\n uploadControlFile,\n uploadControlFileName,\n uploadControlFileUrl,\n } = useUploadControls()\n const uploadEditsContext = useUploadEdits()\n const resetUploadEdits = resetUploadEditsFromProps ?? uploadEditsContext.resetUploadEdits\n const updateUploadEdits = updateUploadEditsFromProps ?? uploadEditsContext.updateUploadEdits\n const uploadEdits = uploadEditsFromProps ?? uploadEditsContext.uploadEdits\n\n const [fileSrc, setFileSrc] = useState<null | string>(null)\n const [removedFile, setRemovedFile] = useState(false)\n const [filename, setFilename] = useState<string>(value?.name || '')\n const [fileUrl, setFileUrl] = useState<string>('')\n const [selectedSize, setSelectedSize] = useState<null | string>(null)\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n const useServerSideFetch =\n typeof uploadConfig?.pasteURL === 'object' && uploadConfig.pasteURL.allowList?.length > 0\n\n const acceptMimeTypes = uploadConfig.mimeTypes?.join(', ')\n const imageCacheTag = uploadConfig?.cacheTags && data?.updatedAt\n\n const hasImageSizes = uploadConfig?.imageSizes?.length > 0\n const hasResizeOptions = Boolean(uploadConfig?.resizeOptions)\n const focalPointEnabled = uploadConfig?.focalPoint === true\n const { crop: showCrop = true, focalPoint = true } = uploadConfig\n const showFocalPoint = focalPoint && (hasImageSizes || hasResizeOptions || focalPointEnabled)\n\n const selectedSizeData = selectedSize\n ? (data?.sizes?.[selectedSize] as Record<string, unknown>)\n : null\n const sidePanelFileSrc = (selectedSizeData?.url ?? data?.thumbnailURL ?? data?.url ?? null) as\n | null\n | string\n const sidePanelMimeType = data?.mimeType as string | undefined\n const fileTypeIsAdjustable =\n !!sidePanelMimeType &&\n isImage(sidePanelMimeType) &&\n sidePanelMimeType !== 'image/svg+xml' &&\n sidePanelMimeType !== 'image/jxl'\n\n const renameFile = (fileToChange: File, newName: string): File =>\n new File([fileToChange], newName, {\n type: fileToChange.type,\n lastModified: fileToChange.lastModified,\n })\n\n const handleFileChange = useCallback(\n ({ file, isNewFile = true }: { file: File | null; isNewFile?: boolean }) => {\n if (isNewFile && file instanceof File) {\n setFileSrc(URL.createObjectURL(file))\n }\n setValue(file)\n setUploadControlFileUrl('')\n setUploadControlFileName(null)\n setUploadControlFile(null)\n },\n [setValue, setUploadControlFile, setUploadControlFileName, setUploadControlFileUrl],\n )\n\n const handleFileNameChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const updatedFileName = e.target.value\n if (value) {\n handleFileChange({ file: renameFile(value, updatedFileName), isNewFile: false })\n setFilename(updatedFileName)\n }\n },\n [handleFileChange, value],\n )\n\n const handleFileRemoval = useCallback(() => {\n setRemovedFile(true)\n handleFileChange({ file: null })\n setFileSrc('')\n setFileUrl('')\n setSelectedSize(null)\n resetUploadEdits()\n setUploadControlFileUrl('')\n setUploadControlFileName(null)\n setUploadControlFile(null)\n }, [\n handleFileChange,\n resetUploadEdits,\n setUploadControlFile,\n setUploadControlFileName,\n setUploadControlFileUrl,\n ])\n\n const handleFileSelection = useCallback(\n (files: FileList) => handleFileChange({ file: files?.[0] }),\n [handleFileChange],\n )\n\n const isValidUrl = Boolean(fileUrl && URL.canParse(fileUrl))\n\n const handleUrlSubmit = useCallback(async () => {\n if (!fileUrl || !URL.canParse(fileUrl) || uploadConfig?.pasteURL === false) {\n return\n }\n setUploadStatus('uploading')\n try {\n const clientResponse = await fetch(fileUrl)\n if (!clientResponse.ok) {\n throw new Error(`Fetch failed: ${clientResponse.status}`)\n }\n const blob = await clientResponse.blob()\n const rawSegment = fileUrl.split('/').pop() || ''\n const fileName = uploadControlFileName || decodeURIComponent(rawSegment.split('?')[0])\n handleFileChange({ file: new File([blob], fileName, { type: blob.type }) })\n setUploadStatus('idle')\n closeModal(pasteURLDrawerSlug)\n setFileUrl('')\n return\n } catch (_clientError) {\n if (!useServerSideFetch) {\n toast.error('Failed to fetch the file.')\n setUploadStatus('failed')\n return\n }\n }\n try {\n const pasteURL: `/${string}` = `/${collectionSlug}/paste-url${id ? `/${id}?` : '?'}src=${encodeURIComponent(fileUrl)}`\n const serverResponse = await fetch(formatAdminURL({ apiRoute: api, path: pasteURL }))\n if (!serverResponse.ok) {\n throw new Error(`Fetch failed: ${serverResponse.status}`)\n }\n const blob = await serverResponse.blob()\n const rawSegment = fileUrl.split('/').pop() || ''\n const fileName = decodeURIComponent(rawSegment.split('?')[0])\n handleFileChange({ file: new File([blob], fileName, { type: blob.type }) })\n setUploadStatus('idle')\n closeModal(pasteURLDrawerSlug)\n setFileUrl('')\n } catch (_serverError) {\n toast.error('The provided URL is not allowed.')\n setUploadStatus('failed')\n }\n }, [\n api,\n closeModal,\n collectionSlug,\n fileUrl,\n handleFileChange,\n id,\n setUploadStatus,\n uploadConfig,\n uploadControlFileName,\n useServerSideFetch,\n ])\n\n const onEditsSave = useCallback(\n (args: UploadEdits) => {\n setModified(true)\n updateUploadEdits(args)\n },\n [setModified, updateUploadEdits],\n )\n\n // Reset states for when replacing the file with a new upload\n useEffect(() => {\n setSelectedSize(null)\n setRemovedFile(false)\n setFileSrc('')\n }, [data?.url, data?.filename])\n\n useEffect(() => {\n if (initialState?.file?.value instanceof File) {\n setFileSrc(URL.createObjectURL(initialState.file.value))\n setRemovedFile(false)\n }\n }, [initialState])\n\n useEffect(() => {\n return () => {\n if (fileSrc?.startsWith('blob:')) {\n URL.revokeObjectURL(fileSrc)\n }\n }\n }, [fileSrc])\n\n useEffect(() => {\n const handleControlFileUrl = async () => {\n if (uploadControlFileUrl) {\n setFileUrl(uploadControlFileUrl)\n await handleUrlSubmit()\n }\n }\n void handleControlFileUrl()\n }, [uploadControlFileUrl, handleUrlSubmit])\n\n useEffect(() => {\n if (uploadControlFile) {\n handleFileChange({ file: uploadControlFile })\n }\n }, [uploadControlFile, handleFileChange])\n\n // Preview a freshly-selected (not-yet-saved) file from its local object URL, so video/audio/PDF\n // are playable/viewable just like images. Sizing is capped in CSS so large files stay contained.\n const renderSelectedFilePreview = (src: string) => {\n const fileType = value?.type ?? ''\n\n if (fileType.startsWith('video/')) {\n return (\n <div className={`${baseClass}__selected-preview`}>\n <VideoPreview fileSrc={src} />\n </div>\n )\n }\n\n if (fileType.startsWith('audio/')) {\n return (\n <div className={`${baseClass}__selected-preview ${baseClass}__selected-preview--audio`}>\n <AudioPreview fileSrc={src} />\n </div>\n )\n }\n\n if (fileType === 'application/pdf') {\n return (\n <div className={`${baseClass}__selected-preview`}>\n <PdfPreview fileSrc={src} title={value?.name} />\n </div>\n )\n }\n\n return (\n <div className={`${baseClass}__selected-preview`}>\n <Thumbnail\n collectionSlug={collectionSlug}\n fileSrc={isImage(fileType) ? src : null}\n size=\"expand\"\n />\n </div>\n )\n }\n\n const drawers = (\n <Fragment>\n {(value || data?.filename) && (\n <EditDepthProvider>\n <EditUpload\n fileName={value?.name || (data?.filename as string)}\n fileSrc={(data?.url as string) || fileSrc}\n imageCacheTag={imageCacheTag}\n initialCrop={uploadEdits?.crop ?? undefined}\n initialFocalPoint={{\n x: uploadEdits?.focalPoint?.x || (data?.focalX as number) || 50,\n y: uploadEdits?.focalPoint?.y || (data?.focalY as number) || 50,\n }}\n onSave={onEditsSave}\n showCrop={showCrop}\n showFocalPoint={showFocalPoint}\n />\n </EditDepthProvider>\n )}\n {data && hasImageSizes && (\n <Drawer\n className={`${baseClass}__preview-drawer`}\n hoverTitle\n slug={sizePreviewSlug}\n title={t('upload:sizesFor', { label: data.filename })}\n >\n <PreviewSizes doc={data} imageCacheTag={imageCacheTag} uploadConfig={uploadConfig} />\n </Drawer>\n )}\n {uploadConfig?.pasteURL !== false && (\n <UploadFromURLModal\n fileUrl={fileUrl}\n handleUrlSubmit={handleUrlSubmit}\n isValidUrl={isValidUrl}\n setFileUrl={setFileUrl}\n />\n )}\n </Fragment>\n )\n\n // Hide the create file input when the collection opts out of it (unless the user has explicitly\n // removed an existing file or already selected a new one).\n const showUploadInput = Boolean(value) || removedFile || !uploadConfig?.hideFileInputOnCreate\n\n return (\n <div className={[fieldBaseClass, baseClass].filter(Boolean).join(' ')}>\n <FieldError message={errorMessage} path=\"filename\" showError={showError} />\n <div className={`${baseClass}__panel`}>\n {data?.filename && !removedFile && (\n <FileToolbar\n filename={data.filename as string}\n fileSrc={sidePanelFileSrc}\n fileUrl={data?.url as string}\n hideRemoveFile={uploadConfig?.hideRemoveFile}\n isAdjustable={fileTypeIsAdjustable}\n onEditImage={() => openModal(editDrawerSlug)}\n onReplace={handleFileRemoval}\n />\n )}\n <div className={`${baseClass}__content`}>\n {data?.filename && !removedFile ? (\n <FilePreview\n collectionSlug={collectionSlug}\n data={data as Record<string, unknown>}\n imageCacheTag={imageCacheTag}\n selectedSize={selectedSize}\n selectedSizeData={selectedSizeData}\n setSelectedSize={setSelectedSize}\n uploadConfig={uploadConfig}\n UploadFilePreview={UploadFilePreview}\n />\n ) : showUploadInput ? (\n <div className={`${baseClass}__upload`}>\n {!value && removedFile && data?.filename && (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n onClick={() => setRemovedFile(false)}\n round\n tooltip={t('general:cancel')}\n />\n )}\n {!value && (\n <Dropzone onChange={handleFileSelection}>\n <div className={`${baseClass}__dropzone-content`}>\n <div className={`${baseClass}__dropzone-buttons`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={() => inputRef.current?.click()}\n size=\"medium\"\n >\n {t('upload:selectFile')}\n </Button>\n <input\n accept={acceptMimeTypes}\n aria-hidden=\"true\"\n className={`${baseClass}__hidden-input`}\n hidden\n onChange={(e) => {\n if (e.target.files && e.target.files.length > 0) {\n handleFileSelection(e.target.files)\n }\n }}\n ref={inputRef}\n type=\"file\"\n />\n {uploadConfig?.pasteURL !== false && (\n <Fragment>\n <span className={`${baseClass}__or-text`}>{t('general:or')}</span>\n <Button\n buttonStyle=\"secondary\"\n onClick={() => {\n openModal(pasteURLDrawerSlug)\n setUploadControlFileUrl('')\n setUploadControlFile(null)\n setUploadControlFileName(null)\n }}\n size=\"medium\"\n >\n {t('upload:pasteURL')}\n </Button>\n </Fragment>\n )}\n {UploadControls ?? null}\n </div>\n <p className={`${baseClass}__drag-text`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n </div>\n </Dropzone>\n )}\n {value && fileSrc && (\n <Fragment>\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n onClick={handleFileRemoval}\n round\n tooltip={t('general:cancel')}\n />\n {renderSelectedFilePreview(fileSrc)}\n <div className={`${baseClass}__file-adjustments`}>\n {/* Custom id so this editor doesn't collide with the hidden auto `filename` field. */}\n <TextInput\n id=\"field-filemanager-filename\"\n label={t('upload:fileName')}\n onChange={handleFileNameChange}\n path=\"filename\"\n value={filename || value.name}\n />\n {(value.size || value.type) && (\n <span className={`${baseClass}__selected-meta`}>\n {[value.size ? formatFilesize(value.size) : null, value.type]\n .filter(Boolean)\n .join(' – ')}\n </span>\n )}\n </div>\n </Fragment>\n )}\n </div>\n ) : null}\n </div>\n </div>\n {drawers}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","useModal","formatFilesize","isImage","React","Fragment","useCallback","useEffect","useState","FieldError","fieldBaseClass","TextInput","useForm","useField","useDocumentInfo","EditDepthProvider","useTranslation","useUploadControls","useUploadEdits","Button","Drawer","Dropzone","EditUpload","PreviewSizes","Thumbnail","editDrawerSlug","sizePreviewSlug","UploadFromURLModal","usePasteFromClipboard","useUploadFromUrl","UploadDropzoneContent","AudioPreview","FilePreview","PdfPreview","VideoPreview","FileToolbar","baseClass","validate","value","undefined","name","FileManager","t0","$","collectionSlug","initialState","resetUploadEdits","resetUploadEditsFromProps","updateUploadEdits","updateUploadEditsFromProps","uploadConfig","UploadControls","uploadEdits","uploadEditsFromProps","UploadFilePreview","openModal","t","setModified","data","t1","Symbol","for","path","errorMessage","setValue","showError","setUploadControlFile","setUploadControlFileName","setUploadControlFileUrl","uploadControlFile","uploadControlFileUrl","uploadEditsContext","fileSrc","setFileSrc","removedFile","setRemovedFile","filename","setFilename","selectedSize","setSelectedSize","acceptMimeTypes","mimeTypes","join","imageCacheTag","cacheTags","updatedAt","hasImageSizes","imageSizes","length","hasResizeOptions","Boolean","resizeOptions","focalPointEnabled","focalPoint","crop","t2","t3","showCrop","showFocalPoint","selectedSizeData","sizes","sidePanelFileSrc","url","thumbnailURL","sidePanelMimeType","mimeType","fileTypeIsAdjustable","renameFile","_temp","t4","t5","file","isNewFile","t6","File","URL","createObjectURL","handleFileChange","e","updatedFileName","target","handleFileNameChange","files","handleFileSelection","t7","file_0","handleFileFetchedFromUrl","t8","onFileFetched","fileUrl","handleUrlSubmit","isValidUrl","setFileUrl","t9","handlePasteFromClipboard","t10","handleFileRemoval","t11","args","onEditsSave","t12","t13","t14","t15","t16","t17","t18","t19","startsWith","revokeObjectURL","t20","t21","handleControlFileUrl","t22","t23","t24","type","src","fileType","_jsx","className","children","title","size","renderSelectedFilePreview","drawers","_jsxs","fileName","initialCrop","initialFocalPoint","x","focalX","y","focalY","onSave","hoverTitle","slug","label","doc","pasteURL","showUploadInput","hideFileInputOnCreate","t25","filter","message","hideRemoveFile","isAdjustable","onEditImage","onReplace","buttonStyle","icon","onClick","round","tooltip","onChange","extraControls","onFilesSelected","onPasteFromClipboard","pasteButtonClassName","pasteTooltip","id","fileToChange","newName","lastModified"],"sources":["../../../src/elements/FileManager/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig, UploadEdits } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { formatFilesize, isImage } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useState } from 'react'\n\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { fieldBaseClass } from '../../fields/shared/index.js'\nimport { TextInput } from '../../fields/Text/Input.js'\nimport { useForm } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { EditDepthProvider } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useUploadControls } from '../../providers/UploadControls/index.js'\nimport { useUploadEdits } from '../../providers/UploadEdits/index.js'\nimport { Button } from '../Button/index.js'\nimport { Drawer } from '../Drawer/index.js'\nimport { Dropzone } from '../Dropzone/index.js'\nimport { EditUpload } from '../EditUpload/index.js'\nimport { PreviewSizes } from '../PreviewSizes/index.js'\nimport { Thumbnail } from '../Thumbnail/index.js'\nimport { editDrawerSlug, sizePreviewSlug } from '../Upload/index.js'\nimport { UploadFromURLModal } from '../Upload/UploadFromURLModal/index.js'\nimport { usePasteFromClipboard } from '../Upload/usePasteFromClipboard.js'\nimport { useUploadFromUrl } from '../Upload/useUploadFromUrl.js'\nimport { UploadDropzoneContent } from '../UploadDropzoneContent/index.js'\nimport { AudioPreview } from './FilePreview/AudioPreview/index.js'\nimport { FilePreview } from './FilePreview/index.js'\nimport { PdfPreview } from './FilePreview/PdfPreview/index.js'\nimport { VideoPreview } from './FilePreview/VideoPreview/index.js'\nimport { FileToolbar } from './FileToolbar/index.js'\nimport './index.css'\n\nconst baseClass = 'file-manager'\n\nconst validate = (value) => {\n if (!value && value !== undefined) {\n return 'A file is required.'\n }\n if (value && (!value.name || value.name === '')) {\n return 'A file name is required.'\n }\n return true\n}\n\nexport type FileManagerProps = {\n readonly collectionSlug: string\n readonly initialState?: import('payload').FormState\n /**\n * When provided, upload edits are sourced from these props instead of the `useUploadEdits`\n * context. The bulk upload drawer uses this to drive per-file edits from its FormsManager.\n */\n readonly resetUploadEdits?: () => void\n readonly updateUploadEdits?: (args: UploadEdits) => void\n readonly uploadConfig: Omit<SanitizedCollectionConfig['upload'], 'uploadInstructions'>\n readonly UploadControls?: React.ReactNode\n readonly uploadEdits?: UploadEdits\n readonly UploadFilePreview?: React.ReactNode\n}\n\nexport const FileManager: React.FC<FileManagerProps> = ({\n collectionSlug,\n initialState,\n resetUploadEdits: resetUploadEditsFromProps,\n updateUploadEdits: updateUploadEditsFromProps,\n uploadConfig,\n UploadControls,\n uploadEdits: uploadEditsFromProps,\n UploadFilePreview,\n}) => {\n const { openModal } = useModal()\n const { t } = useTranslation()\n const { setModified } = useForm()\n const { data } = useDocumentInfo()\n const { errorMessage, setValue, showError, value } = useField<File>({\n path: 'file',\n validate,\n })\n const {\n setUploadControlFile,\n setUploadControlFileName,\n setUploadControlFileUrl,\n uploadControlFile,\n uploadControlFileUrl,\n } = useUploadControls()\n const uploadEditsContext = useUploadEdits()\n const resetUploadEdits = resetUploadEditsFromProps ?? uploadEditsContext.resetUploadEdits\n const updateUploadEdits = updateUploadEditsFromProps ?? uploadEditsContext.updateUploadEdits\n const uploadEdits = uploadEditsFromProps ?? uploadEditsContext.uploadEdits\n\n const [fileSrc, setFileSrc] = useState<null | string>(null)\n const [removedFile, setRemovedFile] = useState(false)\n const [filename, setFilename] = useState<string>(value?.name || '')\n const [selectedSize, setSelectedSize] = useState<null | string>(null)\n\n const acceptMimeTypes = uploadConfig.mimeTypes?.join(', ')\n const imageCacheTag = uploadConfig?.cacheTags && data?.updatedAt\n\n const hasImageSizes = uploadConfig?.imageSizes?.length > 0\n const hasResizeOptions = Boolean(uploadConfig?.resizeOptions)\n const focalPointEnabled = uploadConfig?.focalPoint === true\n const { crop: showCrop = true, focalPoint = true } = uploadConfig\n const showFocalPoint = focalPoint && (hasImageSizes || hasResizeOptions || focalPointEnabled)\n\n const selectedSizeData = selectedSize\n ? (data?.sizes?.[selectedSize] as Record<string, unknown>)\n : null\n const sidePanelFileSrc = (selectedSizeData?.url ?? data?.thumbnailURL ?? data?.url ?? null) as\n | null\n | string\n const sidePanelMimeType = data?.mimeType as string | undefined\n const fileTypeIsAdjustable =\n !!sidePanelMimeType &&\n isImage(sidePanelMimeType) &&\n sidePanelMimeType !== 'image/svg+xml' &&\n sidePanelMimeType !== 'image/jxl'\n\n const renameFile = (fileToChange: File, newName: string): File =>\n new File([fileToChange], newName, {\n type: fileToChange.type,\n lastModified: fileToChange.lastModified,\n })\n\n const handleFileChange = useCallback(\n ({ file, isNewFile = true }: { file: File | null; isNewFile?: boolean }) => {\n if (isNewFile && file instanceof File) {\n setFileSrc(URL.createObjectURL(file))\n }\n setValue(file)\n setUploadControlFileUrl('')\n setUploadControlFileName(null)\n setUploadControlFile(null)\n },\n [setValue, setUploadControlFile, setUploadControlFileName, setUploadControlFileUrl],\n )\n\n const handleFileNameChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const updatedFileName = e.target.value\n if (value) {\n handleFileChange({ file: renameFile(value, updatedFileName), isNewFile: false })\n setFilename(updatedFileName)\n }\n },\n [handleFileChange, value],\n )\n\n const handleFileSelection = useCallback(\n (files: FileList) => handleFileChange({ file: files?.[0] }),\n [handleFileChange],\n )\n\n const handleFileFetchedFromUrl = useCallback(\n (file: File) => handleFileChange({ file }),\n [handleFileChange],\n )\n\n const { fileUrl, handleUrlSubmit, isValidUrl, setFileUrl } = useUploadFromUrl({\n collectionSlug,\n onFileFetched: handleFileFetchedFromUrl,\n uploadConfig,\n })\n\n const handlePasteFromClipboard = usePasteFromClipboard({\n handleFileSelection,\n handleUrlSubmit,\n setFileUrl,\n uploadConfig,\n })\n\n const handleFileRemoval = useCallback(() => {\n setRemovedFile(true)\n handleFileChange({ file: null })\n setFileSrc('')\n setFileUrl('')\n setSelectedSize(null)\n resetUploadEdits()\n setUploadControlFileUrl('')\n setUploadControlFileName(null)\n setUploadControlFile(null)\n }, [\n handleFileChange,\n resetUploadEdits,\n setFileUrl,\n setUploadControlFile,\n setUploadControlFileName,\n setUploadControlFileUrl,\n ])\n\n const onEditsSave = useCallback(\n (args: UploadEdits) => {\n setModified(true)\n updateUploadEdits(args)\n },\n [setModified, updateUploadEdits],\n )\n\n // Reset states for when replacing the file with a new upload\n useEffect(() => {\n setSelectedSize(null)\n setRemovedFile(false)\n setFileSrc('')\n }, [data?.url, data?.filename])\n\n useEffect(() => {\n if (initialState?.file?.value instanceof File) {\n setFileSrc(URL.createObjectURL(initialState.file.value))\n setRemovedFile(false)\n }\n }, [initialState])\n\n useEffect(() => {\n return () => {\n if (fileSrc?.startsWith('blob:')) {\n URL.revokeObjectURL(fileSrc)\n }\n }\n }, [fileSrc])\n\n useEffect(() => {\n const handleControlFileUrl = async () => {\n if (uploadControlFileUrl) {\n setFileUrl(uploadControlFileUrl)\n await handleUrlSubmit()\n }\n }\n void handleControlFileUrl()\n }, [uploadControlFileUrl, handleUrlSubmit, setFileUrl])\n\n useEffect(() => {\n if (uploadControlFile) {\n handleFileChange({ file: uploadControlFile })\n }\n }, [uploadControlFile, handleFileChange])\n\n // Preview a freshly-selected (not-yet-saved) file from its local object URL, so video/audio/PDF\n // are playable/viewable just like images. Sizing is capped in CSS so large files stay contained.\n const renderSelectedFilePreview = (src: string) => {\n const fileType = value?.type ?? ''\n\n if (fileType.startsWith('video/')) {\n return (\n <div className={`${baseClass}__selected-preview`}>\n <VideoPreview fileSrc={src} />\n </div>\n )\n }\n\n if (fileType.startsWith('audio/')) {\n return (\n <div className={`${baseClass}__selected-preview ${baseClass}__selected-preview--audio`}>\n <AudioPreview fileSrc={src} />\n </div>\n )\n }\n\n if (fileType === 'application/pdf') {\n return (\n <div className={`${baseClass}__selected-preview`}>\n <PdfPreview fileSrc={src} title={value?.name} />\n </div>\n )\n }\n\n return (\n <div className={`${baseClass}__selected-preview`}>\n <Thumbnail\n collectionSlug={collectionSlug}\n fileSrc={isImage(fileType) ? src : null}\n size=\"expand\"\n />\n </div>\n )\n }\n\n const drawers = (\n <Fragment>\n {(value || data?.filename) && (\n <EditDepthProvider>\n <EditUpload\n fileName={value?.name || (data?.filename as string)}\n fileSrc={(data?.url as string) || fileSrc}\n imageCacheTag={imageCacheTag}\n initialCrop={uploadEdits?.crop ?? undefined}\n initialFocalPoint={{\n x: uploadEdits?.focalPoint?.x || (data?.focalX as number) || 50,\n y: uploadEdits?.focalPoint?.y || (data?.focalY as number) || 50,\n }}\n onSave={onEditsSave}\n showCrop={showCrop}\n showFocalPoint={showFocalPoint}\n />\n </EditDepthProvider>\n )}\n {data && hasImageSizes && (\n <Drawer\n className={`${baseClass}__preview-drawer`}\n hoverTitle\n slug={sizePreviewSlug}\n title={t('upload:sizesFor', { label: data.filename })}\n >\n <PreviewSizes doc={data} imageCacheTag={imageCacheTag} uploadConfig={uploadConfig} />\n </Drawer>\n )}\n {uploadConfig?.pasteURL !== false && (\n <UploadFromURLModal\n fileUrl={fileUrl}\n handleUrlSubmit={handleUrlSubmit}\n isValidUrl={isValidUrl}\n setFileUrl={setFileUrl}\n />\n )}\n </Fragment>\n )\n\n // Hide the create file input when the collection opts out of it (unless the user has explicitly\n // removed an existing file or already selected a new one).\n const showUploadInput = Boolean(value) || removedFile || !uploadConfig?.hideFileInputOnCreate\n\n return (\n <div className={[fieldBaseClass, baseClass].filter(Boolean).join(' ')}>\n <FieldError message={errorMessage} path=\"filename\" showError={showError} />\n <div className={`${baseClass}__panel`}>\n {data?.filename && !removedFile && (\n <FileToolbar\n filename={data.filename as string}\n fileSrc={sidePanelFileSrc}\n fileUrl={data?.url as string}\n hideRemoveFile={uploadConfig?.hideRemoveFile}\n isAdjustable={fileTypeIsAdjustable}\n onEditImage={() => openModal(editDrawerSlug)}\n onReplace={handleFileRemoval}\n />\n )}\n <div className={`${baseClass}__content`}>\n {data?.filename && !removedFile ? (\n <FilePreview\n collectionSlug={collectionSlug}\n data={data as Record<string, unknown>}\n imageCacheTag={imageCacheTag}\n selectedSize={selectedSize}\n selectedSizeData={selectedSizeData}\n setSelectedSize={setSelectedSize}\n uploadConfig={uploadConfig}\n UploadFilePreview={UploadFilePreview}\n />\n ) : showUploadInput ? (\n <div className={`${baseClass}__upload`}>\n {!value && removedFile && data?.filename && (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n onClick={() => setRemovedFile(false)}\n round\n tooltip={t('general:cancel')}\n />\n )}\n {!value && (\n <Dropzone onChange={handleFileSelection}>\n <UploadDropzoneContent\n acceptMimeTypes={acceptMimeTypes}\n extraControls={UploadControls}\n onFilesSelected={handleFileSelection}\n onPasteFromClipboard={handlePasteFromClipboard}\n pasteButtonClassName={`${baseClass}__pasteFromClipboard`}\n pasteTooltip={t('upload:pasteURL')}\n />\n </Dropzone>\n )}\n {value && fileSrc && (\n <Fragment>\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__remove`}\n icon=\"x\"\n onClick={handleFileRemoval}\n round\n tooltip={t('general:cancel')}\n />\n {renderSelectedFilePreview(fileSrc)}\n <div className={`${baseClass}__file-adjustments`}>\n {/* Custom id so this editor doesn't collide with the hidden auto `filename` field. */}\n <TextInput\n id=\"field-filemanager-filename\"\n label={t('upload:fileName')}\n onChange={handleFileNameChange}\n path=\"filename\"\n value={filename || value.name}\n />\n {(value.size || value.type) && (\n <span className={`${baseClass}__selected-meta`}>\n {[value.size ? formatFilesize(value.size) : null, value.type]\n .filter(Boolean)\n .join(' – ')}\n </span>\n )}\n </div>\n </Fragment>\n )}\n </div>\n ) : null}\n </div>\n </div>\n {drawers}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,9 +16,13 @@
|
|
|
16
16
|
justify-content: space-between;
|
|
17
17
|
gap: var(--spacer-2);
|
|
18
18
|
padding: var(--spacer-1) var(--spacer-3);
|
|
19
|
-
|
|
19
|
+
/*
|
|
20
|
+
* Lines the add button's trailing edge up with the chevron below it: the items list is inset
|
|
21
|
+
* by --spacer-1 and each row adds --spacer-1 of margin plus --spacer-1 of padding.
|
|
22
|
+
*/
|
|
23
|
+
padding-inline-end: var(--spacer-2-5);
|
|
20
24
|
flex-shrink: 0;
|
|
21
|
-
margin-bottom: var(--spacer-
|
|
25
|
+
margin-bottom: var(--spacer-1);
|
|
22
26
|
border-bottom: var(--stroke-width-small) solid var(--color-border);
|
|
23
27
|
}
|
|
24
28
|
|
|
@@ -35,7 +39,6 @@
|
|
|
35
39
|
display: flex;
|
|
36
40
|
align-items: center;
|
|
37
41
|
gap: var(--spacer-2);
|
|
38
|
-
font-weight: 500;
|
|
39
42
|
color: var(--color-text);
|
|
40
43
|
white-space: nowrap;
|
|
41
44
|
overflow: hidden;
|
|
@@ -49,6 +52,19 @@
|
|
|
49
52
|
overflow-y: auto;
|
|
50
53
|
margin: 0 var(--spacer-1);
|
|
51
54
|
gap: var(--spacer-1);
|
|
55
|
+
/* Keeps the last row - usually the load-more count - off the column's bottom edge when scrolled */
|
|
56
|
+
padding-block-end: var(--spacer-3);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.hierarchy-column__empty {
|
|
60
|
+
flex: 1;
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
justify-content: center;
|
|
64
|
+
padding: var(--spacer-3);
|
|
65
|
+
text-align: center;
|
|
66
|
+
text-wrap: balance;
|
|
67
|
+
color: var(--color-text-secondary);
|
|
52
68
|
}
|
|
53
69
|
|
|
54
70
|
.hierarchy-column__loading {
|
|
@@ -59,6 +75,8 @@
|
|
|
59
75
|
}
|
|
60
76
|
|
|
61
77
|
.hierarchy-column__load-more {
|
|
62
|
-
padding: var(--spacer-1)
|
|
78
|
+
padding-block: var(--spacer-1);
|
|
79
|
+
padding-inline-start: var(--spacer-2-5);
|
|
80
|
+
padding-inline-end: var(--spacer-2);
|
|
63
81
|
}
|
|
64
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/Hierarchy/ColumnBrowser/Column/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAQ9C,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/Hierarchy/ColumnBrowser/Column/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAQ9C,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAyGxC,CAAA"}
|
|
@@ -12,15 +12,16 @@ import { ColumnItem } from '../ColumnItem/index.js';
|
|
|
12
12
|
import './index.css';
|
|
13
13
|
const baseClass = 'hierarchy-column';
|
|
14
14
|
export const Column = t0 => {
|
|
15
|
-
const $ = _c(
|
|
15
|
+
const $ = _c(44);
|
|
16
16
|
const {
|
|
17
|
-
ancestorsWithSelections,
|
|
18
17
|
canCreate,
|
|
19
18
|
collectionLabel,
|
|
19
|
+
collectionLabelPlural,
|
|
20
20
|
disabled,
|
|
21
21
|
disabledIds,
|
|
22
22
|
expandedId,
|
|
23
23
|
filterByCollection,
|
|
24
|
+
hasMany,
|
|
24
25
|
hasNextPage,
|
|
25
26
|
isLoading,
|
|
26
27
|
items,
|
|
@@ -31,6 +32,9 @@ export const Column = t0 => {
|
|
|
31
32
|
parentId,
|
|
32
33
|
parentTitle,
|
|
33
34
|
pathToColumn,
|
|
35
|
+
revealedId,
|
|
36
|
+
revealToken,
|
|
37
|
+
selectedDescendantCounts,
|
|
34
38
|
selectedIds,
|
|
35
39
|
totalDocs
|
|
36
40
|
} = t0;
|
|
@@ -38,10 +42,13 @@ export const Column = t0 => {
|
|
|
38
42
|
t
|
|
39
43
|
} = useTranslation();
|
|
40
44
|
let t1;
|
|
41
|
-
if ($[0] !==
|
|
45
|
+
if ($[0] !== canCreate || $[1] !== collectionLabel || $[2] !== collectionLabelPlural || $[3] !== disabled || $[4] !== disabledIds || $[5] !== expandedId || $[6] !== filterByCollection || $[7] !== hasMany || $[8] !== hasNextPage || $[9] !== isLoading || $[10] !== items || $[11] !== onCreateNew || $[12] !== onExpand || $[13] !== onLoadMore || $[14] !== onSelect || $[15] !== parentId || $[16] !== parentTitle || $[17] !== pathToColumn || $[18] !== revealToken || $[19] !== revealedId || $[20] !== selectedDescendantCounts || $[21] !== selectedIds || $[22] !== t || $[23] !== totalDocs) {
|
|
42
46
|
const headerTitle = parentTitle || (parentId === null ? t("general:all") : "");
|
|
47
|
+
const newItemLabel = `New ${collectionLabel}`;
|
|
48
|
+
const isEmpty = !disabled && !isLoading && items.length === 0;
|
|
49
|
+
const emptyLabel = parentId === null ? `No ${collectionLabelPlural}` : `No other ${collectionLabelPlural}`;
|
|
43
50
|
let t2;
|
|
44
|
-
if ($[
|
|
51
|
+
if ($[25] !== items || $[26] !== onSelect || $[27] !== pathToColumn) {
|
|
45
52
|
t2 = t3 => {
|
|
46
53
|
const {
|
|
47
54
|
id
|
|
@@ -56,51 +63,56 @@ export const Column = t0 => {
|
|
|
56
63
|
path: fullPath
|
|
57
64
|
});
|
|
58
65
|
};
|
|
59
|
-
$[
|
|
60
|
-
$[
|
|
61
|
-
$[
|
|
62
|
-
$[
|
|
66
|
+
$[25] = items;
|
|
67
|
+
$[26] = onSelect;
|
|
68
|
+
$[27] = pathToColumn;
|
|
69
|
+
$[28] = t2;
|
|
63
70
|
} else {
|
|
64
|
-
t2 = $[
|
|
71
|
+
t2 = $[28];
|
|
65
72
|
}
|
|
66
73
|
const handleSelect = t2;
|
|
67
74
|
let t3;
|
|
68
|
-
if ($[
|
|
75
|
+
if ($[29] !== onCreateNew || $[30] !== parentId) {
|
|
69
76
|
t3 = () => {
|
|
70
77
|
onCreateNew({
|
|
71
78
|
parentId
|
|
72
79
|
});
|
|
73
80
|
};
|
|
74
|
-
$[
|
|
75
|
-
$[
|
|
76
|
-
$[
|
|
81
|
+
$[29] = onCreateNew;
|
|
82
|
+
$[30] = parentId;
|
|
83
|
+
$[31] = t3;
|
|
77
84
|
} else {
|
|
78
|
-
t3 = $[
|
|
85
|
+
t3 = $[31];
|
|
79
86
|
}
|
|
80
87
|
const handleCreateNew = t3;
|
|
81
88
|
let t4;
|
|
82
|
-
if ($[
|
|
89
|
+
if ($[32] !== disabled || $[33] !== disabledIds || $[34] !== expandedId || $[35] !== filterByCollection || $[36] !== handleSelect || $[37] !== hasMany || $[38] !== onExpand || $[39] !== revealToken || $[40] !== revealedId || $[41] !== selectedDescendantCounts || $[42] !== selectedIds) {
|
|
83
90
|
t4 = item_0 => _jsx(ColumnItem, {
|
|
84
91
|
disabled: Boolean(disabled || disabledIds?.has(item_0.id)),
|
|
85
92
|
filterByCollection,
|
|
86
|
-
|
|
93
|
+
hasMany,
|
|
87
94
|
isExpanded: expandedId === item_0.id,
|
|
88
95
|
isSelected: selectedIds.has(item_0.id),
|
|
89
96
|
item: item_0,
|
|
90
97
|
onExpand,
|
|
91
|
-
onSelect: handleSelect
|
|
98
|
+
onSelect: handleSelect,
|
|
99
|
+
revealToken: revealedId === item_0.id ? revealToken : undefined,
|
|
100
|
+
selectedDescendantCount: selectedDescendantCounts.get(item_0.id) ?? 0
|
|
92
101
|
}, String(item_0.id));
|
|
93
|
-
$[
|
|
94
|
-
$[
|
|
95
|
-
$[
|
|
96
|
-
$[
|
|
97
|
-
$[
|
|
98
|
-
$[
|
|
99
|
-
$[
|
|
100
|
-
$[
|
|
101
|
-
$[
|
|
102
|
+
$[32] = disabled;
|
|
103
|
+
$[33] = disabledIds;
|
|
104
|
+
$[34] = expandedId;
|
|
105
|
+
$[35] = filterByCollection;
|
|
106
|
+
$[36] = handleSelect;
|
|
107
|
+
$[37] = hasMany;
|
|
108
|
+
$[38] = onExpand;
|
|
109
|
+
$[39] = revealToken;
|
|
110
|
+
$[40] = revealedId;
|
|
111
|
+
$[41] = selectedDescendantCounts;
|
|
112
|
+
$[42] = selectedIds;
|
|
113
|
+
$[43] = t4;
|
|
102
114
|
} else {
|
|
103
|
-
t4 = $[
|
|
115
|
+
t4 = $[43];
|
|
104
116
|
}
|
|
105
117
|
t1 = _jsxs("div", {
|
|
106
118
|
className: baseClass,
|
|
@@ -109,18 +121,18 @@ export const Column = t0 => {
|
|
|
109
121
|
children: [_jsx("span", {
|
|
110
122
|
className: `${baseClass}__header-title`,
|
|
111
123
|
children: headerTitle
|
|
112
|
-
}), canCreate &&
|
|
124
|
+
}), canCreate && _jsx(Button, {
|
|
125
|
+
"aria-label": newItemLabel,
|
|
113
126
|
buttonStyle: "ghost",
|
|
114
127
|
className: `${baseClass}__add-button`,
|
|
115
128
|
disabled,
|
|
116
129
|
icon: _jsx(PlusIcon, {
|
|
117
|
-
size:
|
|
130
|
+
size: 24
|
|
118
131
|
}),
|
|
119
|
-
iconPosition: "left",
|
|
120
132
|
margin: false,
|
|
121
133
|
onClick: handleCreateNew,
|
|
122
134
|
size: "medium",
|
|
123
|
-
|
|
135
|
+
tooltip: newItemLabel
|
|
124
136
|
})]
|
|
125
137
|
}), _jsxs("div", {
|
|
126
138
|
className: `${baseClass}__items`,
|
|
@@ -130,6 +142,9 @@ export const Column = t0 => {
|
|
|
130
142
|
loadingText: null,
|
|
131
143
|
size: "sm"
|
|
132
144
|
})
|
|
145
|
+
}), isEmpty && _jsx("div", {
|
|
146
|
+
className: `${baseClass}__empty`,
|
|
147
|
+
children: emptyLabel
|
|
133
148
|
}), !disabled && !isLoading && totalDocs > 0 && _jsx(LoadMoreRow, {
|
|
134
149
|
className: `${baseClass}__load-more`,
|
|
135
150
|
currentCount: items.length,
|
|
@@ -139,29 +154,33 @@ export const Column = t0 => {
|
|
|
139
154
|
})]
|
|
140
155
|
})]
|
|
141
156
|
});
|
|
142
|
-
$[0] =
|
|
143
|
-
$[1] =
|
|
144
|
-
$[2] =
|
|
157
|
+
$[0] = canCreate;
|
|
158
|
+
$[1] = collectionLabel;
|
|
159
|
+
$[2] = collectionLabelPlural;
|
|
145
160
|
$[3] = disabled;
|
|
146
161
|
$[4] = disabledIds;
|
|
147
162
|
$[5] = expandedId;
|
|
148
163
|
$[6] = filterByCollection;
|
|
149
|
-
$[7] =
|
|
150
|
-
$[8] =
|
|
151
|
-
$[9] =
|
|
152
|
-
$[10] =
|
|
153
|
-
$[11] =
|
|
154
|
-
$[12] =
|
|
155
|
-
$[13] =
|
|
156
|
-
$[14] =
|
|
157
|
-
$[15] =
|
|
158
|
-
$[16] =
|
|
159
|
-
$[17] =
|
|
160
|
-
$[18] =
|
|
161
|
-
$[19] =
|
|
162
|
-
$[20] =
|
|
164
|
+
$[7] = hasMany;
|
|
165
|
+
$[8] = hasNextPage;
|
|
166
|
+
$[9] = isLoading;
|
|
167
|
+
$[10] = items;
|
|
168
|
+
$[11] = onCreateNew;
|
|
169
|
+
$[12] = onExpand;
|
|
170
|
+
$[13] = onLoadMore;
|
|
171
|
+
$[14] = onSelect;
|
|
172
|
+
$[15] = parentId;
|
|
173
|
+
$[16] = parentTitle;
|
|
174
|
+
$[17] = pathToColumn;
|
|
175
|
+
$[18] = revealToken;
|
|
176
|
+
$[19] = revealedId;
|
|
177
|
+
$[20] = selectedDescendantCounts;
|
|
178
|
+
$[21] = selectedIds;
|
|
179
|
+
$[22] = t;
|
|
180
|
+
$[23] = totalDocs;
|
|
181
|
+
$[24] = t1;
|
|
163
182
|
} else {
|
|
164
|
-
t1 = $[
|
|
183
|
+
t1 = $[24];
|
|
165
184
|
}
|
|
166
185
|
return t1;
|
|
167
186
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","useCallback","PlusIcon","useTranslation","Button","LoadMoreRow","Spinner","ColumnItem","baseClass","Column","t0","$","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useCallback","PlusIcon","useTranslation","Button","LoadMoreRow","Spinner","ColumnItem","baseClass","Column","t0","$","canCreate","collectionLabel","collectionLabelPlural","disabled","disabledIds","expandedId","filterByCollection","hasMany","hasNextPage","isLoading","items","onCreateNew","onExpand","onLoadMore","onSelect","parentId","parentTitle","pathToColumn","revealedId","revealToken","selectedDescendantCounts","selectedIds","totalDocs","t","t1","headerTitle","newItemLabel","isEmpty","length","emptyLabel","t2","t3","id","item","find","i","fullPath","title","path","handleSelect","handleCreateNew","t4","item_0","_jsx","Boolean","has","isExpanded","isSelected","undefined","selectedDescendantCount","get","String","_jsxs","className","children","buttonStyle","icon","size","tooltip","map","loadingText","currentCount","hasMore"],"sources":["../../../../../src/elements/Hierarchy/ColumnBrowser/Column/index.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback } from 'react'\n\nimport type { ColumnProps } from '../types.js'\n\nimport { PlusIcon } from '../../../../icons/Plus/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { Button } from '../../../Button/index.js'\nimport { LoadMoreRow } from '../../../LoadMoreRow/index.js'\nimport { Spinner } from '../../../Spinner/index.js'\nimport { ColumnItem } from '../ColumnItem/index.js'\nimport './index.css'\n\nconst baseClass = 'hierarchy-column'\n\nexport const Column: React.FC<ColumnProps> = ({\n canCreate,\n collectionLabel,\n collectionLabelPlural,\n disabled,\n disabledIds,\n expandedId,\n filterByCollection,\n hasMany,\n hasNextPage,\n isLoading,\n items,\n onCreateNew,\n onExpand,\n onLoadMore,\n onSelect,\n parentId,\n parentTitle,\n pathToColumn,\n revealedId,\n revealToken,\n selectedDescendantCounts,\n selectedIds,\n totalDocs,\n}) => {\n const { t } = useTranslation()\n\n const headerTitle = parentTitle || (parentId === null ? t('general:all') : '')\n const newItemLabel = `New ${collectionLabel}`\n const isEmpty = !disabled && !isLoading && items.length === 0\n\n // TODO: replace with translation keys once the hierarchy strings are finalized. The closest\n // existing string, `version:noRowsFound`, belongs to the version-diff tables.\n const emptyLabel =\n parentId === null ? `No ${collectionLabelPlural}` : `No other ${collectionLabelPlural}`\n\n const handleSelect = useCallback(\n ({ id }: { id: number | string }) => {\n const item = items.find((i) => i.id === id)\n const fullPath = item ? [...pathToColumn, { id: item.id, title: item.title }] : pathToColumn\n onSelect({ id, path: fullPath })\n },\n [items, onSelect, pathToColumn],\n )\n\n const handleCreateNew = useCallback(() => {\n onCreateNew({ parentId })\n }, [onCreateNew, parentId])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n <span className={`${baseClass}__header-title`}>{headerTitle}</span>\n {canCreate && (\n <Button\n aria-label={newItemLabel}\n buttonStyle=\"ghost\"\n className={`${baseClass}__add-button`}\n disabled={disabled}\n icon={<PlusIcon size={24} />}\n margin={false}\n onClick={handleCreateNew}\n size=\"medium\"\n tooltip={newItemLabel}\n />\n )}\n </div>\n\n <div className={`${baseClass}__items`}>\n {items.map((item) => (\n <ColumnItem\n disabled={Boolean(disabled || disabledIds?.has(item.id))}\n filterByCollection={filterByCollection}\n hasMany={hasMany}\n isExpanded={expandedId === item.id}\n isSelected={selectedIds.has(item.id)}\n item={item}\n key={String(item.id)}\n onExpand={onExpand}\n onSelect={handleSelect}\n revealToken={revealedId === item.id ? revealToken : undefined}\n selectedDescendantCount={selectedDescendantCounts.get(item.id) ?? 0}\n />\n ))}\n\n {isLoading && (\n <div className={`${baseClass}__loading`}>\n <Spinner loadingText={null} size=\"sm\" />\n </div>\n )}\n\n {isEmpty && <div className={`${baseClass}__empty`}>{emptyLabel}</div>}\n\n {!disabled && !isLoading && totalDocs > 0 && (\n <LoadMoreRow\n className={`${baseClass}__load-more`}\n currentCount={items.length}\n hasMore={hasNextPage}\n onLoadMore={onLoadMore}\n totalDocs={totalDocs}\n />\n )}\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|