import type { ReactNode } from "react"; import { Compass, Focus, HelpCircle } from "lucide-react"; import { useState } from "react"; import { Button, Modal, Tooltip } from "antd"; import { canvasThemes } from "@/lib/canvas-theme"; import { useThemeStore } from "@/stores/use-theme-store"; type CanvasZoomControlsProps = { scale: number; onScaleChange: (scale: number) => void; onReset: () => void; isMiniMapOpen: boolean; onToggleMiniMap: () => void; }; export function CanvasZoomControls({ scale, onScaleChange, onReset, isMiniMapOpen, onToggleMiniMap }: CanvasZoomControlsProps) { const [shortcutsOpen, setShortcutsOpen] = useState(false); const colorTheme = useThemeStore((state) => state.theme); const theme = canvasThemes[colorTheme]; const dockStyle = { background: theme.toolbar.panel, borderColor: theme.toolbar.border, color: theme.toolbar.item, boxShadow: colorTheme === "dark" ? "0 18px 45px rgba(0,0,0,.32)" : "0 16px 40px rgba(28,25,23,.12)" }; const activeStyle = { background: theme.toolbar.activeBg, color: theme.toolbar.activeText }; return (
event.stopPropagation()} onPointerDown={(event) => event.stopPropagation()}>
setShortcutsOpen(false)} footer={null} centered>
); } function Shortcut({ label, value }: { label: ReactNode; value: string }) { return (
{label} {value}
); }