move folder creation to sidebar

This commit is contained in:
2025-10-30 02:18:33 +01:00
parent e5d44c13b4
commit 9fe97f2b8a
3 changed files with 51 additions and 156 deletions
+24
View File
@@ -10,6 +10,7 @@ import {
SettingsIcon,
CheckIcon,
PlusIcon,
FolderPlusIcon,
} from '../ui/icons';
import { getTagColorStyle } from '../utils/colors';
@@ -139,6 +140,8 @@ const Sidebar = ({
onFolderDragStart,
onFolderDragEnd,
draggedFolderId,
onCreateFolder,
creatingFolder = false,
tags = [],
activeTagIds = [],
onToggleTagFilter,
@@ -209,6 +212,14 @@ const Sidebar = ({
console.error('[sidebar] failed to create correspondent', error);
}
}, [onCreateCorrespondent]);
const handleCreateFolder = useCallback(() => {
if (creatingFolder) {
return;
}
onCreateFolder?.();
}, [creatingFolder, onCreateFolder]);
const handleSearchInputChange = useCallback(
(event) => {
onSearchChange?.(event.target.value);
@@ -442,6 +453,19 @@ const Sidebar = ({
<div className="sidebar-section sidebar-section--folders">
<div className="sidebar-section__header">
<h3>Folders</h3>
{onCreateFolder ? (
<div className="sidebar-section__actions">
<button
type="button"
className="icon-button"
onClick={handleCreateFolder}
aria-label="Create folder"
disabled={creatingFolder}
>
<FolderPlusIcon size={16} />
</button>
</div>
) : null}
</div>
<ul className="folder-tree">
{rootNode && renderNodes([rootNode.id], 0)}