import React from "react"; import { BoxSelect, Braces, Cable, Download, FileText, FolderOpen, Image as ImageIcon, Link as LinkIcon, PaintRoller, Paperclip, Plus, Redo2, Save, Sigma, Smile, Sparkles, StickyNote, Tag, Trash2, Undo2, } from "lucide-react"; type ToolbarProps = { canBack: boolean; canForward: boolean; activeCount: number; painterMode: boolean; onUndo: () => void; onRedo: () => void; onPainter: () => void; onSibling: () => void; onChild: () => void; onDelete: () => void; onImage: () => void; onIcon: () => void; onLink: () => void; onNote: () => void; onTag: () => void; onSummary: () => void; onAssociativeLine: () => void; onFormula: () => void; onAttachment: () => void; onOuterFrame: () => void; onAi: () => void; onImport: (e: React.ChangeEvent) => void; onNew: () => void; onOpenDirectory: () => void; onSaveAs: () => void; onExportJson: () => void; onExportPng: () => void; fileInputRef: React.RefObject; }; const ToolbarButton = ({ icon: Icon, label, onClick, disabled = false, active = false, className = "", }: { icon: React.ElementType; label: string; onClick?: () => void; disabled?: boolean; active?: boolean; className?: string; }) => ( ); const Divider = () =>
; export const MindmapToolbar = ({ canBack, canForward, activeCount, painterMode, onUndo, onRedo, onPainter, onSibling, onChild, onDelete, onImage, onIcon, onLink, onNote, onTag, onSummary, onAssociativeLine, onFormula, onAttachment, onOuterFrame, onAi, onImport, onNew, onOpenDirectory, onSaveAs, onExportJson, onExportPng, fileInputRef, }: ToolbarProps) => { return (
{/* Left Section: Edit & Node Operations */}
{/* Right Section: File & Export Actions */}
fileInputRef.current?.click()} /> {/* Hidden Input */}
); };