Skip to content

Commit dcb4057

Browse files
committed
Remove tree node delete quick action
1 parent 87256f2 commit dcb4057

4 files changed

Lines changed: 27 additions & 39 deletions

File tree

components/IconButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import Tooltip from './Tooltip';
33

44
interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
55
children: React.ReactNode;
6-
tooltip: string;
6+
tooltip?: string;
77
variant?: 'primary' | 'ghost' | 'destructive';
88
size?: 'xs' | 'sm' | 'md';
99
tooltipPosition?: 'top' | 'bottom';

components/PromptList.tsx

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,7 @@ interface DocumentListProps {
1919
onImportNodes: (payload: DraggedNodeTransfer, targetId: string | null, position: 'before' | 'after' | 'inside') => void | Promise<void>;
2020
onDropFiles: (files: FileList, parentId: string | null) => void;
2121
onCopyNodeContent: (id: string) => void;
22-
copyContentTooltip: string;
23-
onSaveNodeToFile: (id: string) => void;
24-
saveToFileTooltip: string;
2522
onToggleLock: (id: string, locked: boolean) => void | Promise<void>;
26-
getToggleLockTooltip: (locked: boolean) => string;
2723
searchTerm: string;
2824
expandedIds: Set<string>;
2925
onToggleExpand: (id: string) => void;
@@ -50,11 +46,7 @@ const DocumentList: React.FC<DocumentListProps> = ({
5046
onImportNodes,
5147
onDropFiles,
5248
onCopyNodeContent,
53-
copyContentTooltip,
54-
onSaveNodeToFile,
55-
saveToFileTooltip,
5649
onToggleLock,
57-
getToggleLockTooltip,
5850
searchTerm,
5951
expandedIds,
6052
onToggleExpand,
@@ -264,11 +256,7 @@ const DocumentList: React.FC<DocumentListProps> = ({
264256
onDropFiles={onDropFiles}
265257
onToggleExpand={onToggleExpand}
266258
onCopyNodeContent={onCopyNodeContent}
267-
copyContentTooltip={copyContentTooltip}
268259
onToggleLock={onToggleLock}
269-
getToggleLockTooltip={getToggleLockTooltip}
270-
onSaveNodeToFile={onSaveNodeToFile}
271-
saveToFileTooltip={saveToFileTooltip}
272260
searchTerm={searchTerm}
273261
onMoveUp={onMoveUp}
274262
onMoveDown={onMoveDown}

components/PromptTreeItem.tsx

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import React, { useState, useRef, useEffect, useLayoutEffect } from 'react';
22
// Fix: Correctly import the DocumentOrFolder type.
33
import type { DocumentOrFolder, DraggedNodeTransfer } from '../types';
44
import IconButton from './IconButton';
5-
import { FileIcon, FolderIcon, FolderOpenIcon, TrashIcon, ChevronRightIcon, ChevronDownIcon, CopyIcon, ArrowUpIcon, ArrowDownIcon, CodeIcon, SaveIcon, LockClosedIcon, LockOpenIcon } from './Icons';
5+
import { FileIcon, FolderIcon, FolderOpenIcon, ChevronRightIcon, ChevronDownIcon, CopyIcon, ArrowUpIcon, ArrowDownIcon, CodeIcon, LockClosedIcon, LockOpenIcon } from './Icons';
66
import Tooltip from './Tooltip';
77

88
export interface DocumentNode extends DocumentOrFolder {
@@ -30,11 +30,7 @@ interface DocumentTreeItemProps {
3030
onDropFiles: (files: FileList, parentId: string | null) => void;
3131
onToggleExpand: (id: string) => void;
3232
onCopyNodeContent: (id: string) => void;
33-
copyContentTooltip: string;
34-
onSaveNodeToFile: (id: string) => void;
35-
saveToFileTooltip: string;
3633
onToggleLock: (id: string, locked: boolean) => void | Promise<void>;
37-
getToggleLockTooltip: (locked: boolean) => string;
3834
isKnownNodeId: (id: string) => boolean;
3935
searchTerm: string;
4036
onMoveUp: (id: string) => void;
@@ -117,11 +113,7 @@ const DocumentTreeItem: React.FC<DocumentTreeItemProps> = (props) => {
117113
onDropFiles,
118114
onToggleExpand,
119115
onCopyNodeContent,
120-
copyContentTooltip,
121-
onSaveNodeToFile,
122-
saveToFileTooltip,
123116
onToggleLock,
124-
getToggleLockTooltip,
125117
onMoveUp,
126118
onMoveDown,
127119
canMoveUp,
@@ -155,6 +147,7 @@ const DocumentTreeItem: React.FC<DocumentTreeItemProps> = (props) => {
155147
const isOpenInTab = !isFolder && openDocumentIds.has(node.id);
156148
const areActionsVisible = isSelected || isFocused || isHovered;
157149
const emojiForNode = !isFolder ? extractEmoji(node.title) : null;
150+
const lockAriaLabel = node.locked ? 'Unlock Document' : 'Lock Document';
158151
const displayTitle = React.useMemo(() => {
159152
if (!emojiForNode || isFolder) {
160153
return node.title;
@@ -463,23 +456,40 @@ const DocumentTreeItem: React.FC<DocumentTreeItemProps> = (props) => {
463456
overflow: areActionsVisible ? undefined : 'hidden',
464457
}}
465458
>
466-
<IconButton onClick={(e) => { e.stopPropagation(); onMoveUp(node.id); }} tooltip="Move Up" size="xs" variant="ghost" disabled={!canMoveUp}>
459+
<IconButton
460+
aria-label="Move Up"
461+
onClick={(e) => { e.stopPropagation(); onMoveUp(node.id); }}
462+
size="xs"
463+
variant="ghost"
464+
disabled={!canMoveUp}
465+
>
467466
<ArrowUpIcon className="w-3.5 h-3.5" />
468467
</IconButton>
469-
<IconButton onClick={(e) => { e.stopPropagation(); onMoveDown(node.id); }} tooltip="Move Down" size="xs" variant="ghost" disabled={!canMoveDown}>
468+
<IconButton
469+
aria-label="Move Down"
470+
onClick={(e) => { e.stopPropagation(); onMoveDown(node.id); }}
471+
size="xs"
472+
variant="ghost"
473+
disabled={!canMoveDown}
474+
>
470475
<ArrowDownIcon className="w-3.5 h-3.5" />
471476
</IconButton>
472477
{!isFolder && (
473478
<>
474-
<IconButton onClick={(e) => { e.stopPropagation(); onCopyNodeContent(node.id); }} tooltip={copyContentTooltip} size="xs" variant="ghost">
479+
<IconButton
480+
aria-label="Copy Content"
481+
onClick={(e) => { e.stopPropagation(); onCopyNodeContent(node.id); }}
482+
size="xs"
483+
variant="ghost"
484+
>
475485
<CopyIcon className="w-3.5 h-3.5" />
476486
</IconButton>
477487
<IconButton
488+
aria-label={lockAriaLabel}
478489
onClick={(e) => {
479490
e.stopPropagation();
480491
void onToggleLock(node.id, !node.locked);
481492
}}
482-
tooltip={getToggleLockTooltip(node.locked)}
483493
size="xs"
484494
variant="ghost"
485495
className={node.locked ? 'text-primary' : ''}
@@ -490,14 +500,8 @@ const DocumentTreeItem: React.FC<DocumentTreeItemProps> = (props) => {
490500
<LockOpenIcon className="w-3.5 h-3.5" />
491501
)}
492502
</IconButton>
493-
<IconButton onClick={(e) => { e.stopPropagation(); onSaveNodeToFile(node.id); }} tooltip={saveToFileTooltip} size="xs" variant="ghost">
494-
<SaveIcon className="w-3.5 h-3.5" />
495-
</IconButton>
496503
</>
497504
)}
498-
<IconButton onClick={(e) => { e.stopPropagation(); onDeleteNode(node.id, e.shiftKey); }} tooltip="Delete" size="xs" variant="destructive">
499-
<TrashIcon className="w-3.5 h-3.5" />
500-
</IconButton>
501505
</div>
502506
)}
503507
</div>

components/Sidebar.tsx

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -510,15 +510,11 @@ const Sidebar: React.FC<SidebarProps> = (props) => {
510510
onSelectNode={props.onSelectNode}
511511
onDeleteNode={props.onDeleteNode}
512512
onRenameNode={props.onRenameNode}
513-
onMoveNode={props.onMoveNode}
513+
onMoveNode={props.onMoveNode}
514514
onImportNodes={props.onImportNodes}
515515
onDropFiles={props.onDropFiles}
516-
onCopyNodeContent={props.onCopyNodeContent}
517-
onToggleLock={props.onToggleNodeLock}
518-
getToggleLockTooltip={(locked) => getTooltip('toggle-document-lock', locked ? 'Unlock Document' : 'Lock Document')}
519-
copyContentTooltip={getTooltip('document-tree-copy-content', 'Copy Content')}
520-
onSaveNodeToFile={props.onSaveNodeToFile}
521-
saveToFileTooltip={getTooltip('document-tree-save-to-file', 'Save to File')}
516+
onCopyNodeContent={props.onCopyNodeContent}
517+
onToggleLock={props.onToggleNodeLock}
522518
searchTerm={searchTerm}
523519
expandedIds={props.expandedFolderIds}
524520
onToggleExpand={props.onToggleExpand}

0 commit comments

Comments
 (0)