"use client"
import { memo } from "react"
import type { GraphNode } from "./types"
import { cn } from "@lib/utils"
import { Settings } from "lucide-react"
interface NavigationControlsProps {
onCenter: () => void
onZoomIn: () => void
onZoomOut: () => void
onAutoFit: () => void
nodes: GraphNode[]
className?: string
zoomLevel: number
}
// Keyboard shortcut badge component
const KeyboardShortcut = memo(function KeyboardShortcut({
keys,
}: {
keys: string
}) {
return (
{keys}
)
})
// Navigation buttons component
const NavigationButtons = memo(function NavigationButtons({
onAutoFit,
onCenter,
onZoomIn,
onZoomOut,
zoomLevel,
}: {
onAutoFit: () => void
onCenter: () => void
onZoomIn: () => void
onZoomOut: () => void
zoomLevel: number
}) {
return (
{/* Fit button */}
{/* Center button */}
{/* Zoom controls */}
)
})
const SettingsButton = memo(function SettingsButton() {
return (
)
})
export const NavigationControls = memo(
({
onCenter,
onZoomIn,
onZoomOut,
onAutoFit,
nodes,
className = "",
zoomLevel,
}) => {
if (nodes.length === 0) {
return null
}
return (
{/* Commented out for now as we are not using this */}
{/**/}
)
},
)
NavigationControls.displayName = "NavigationControls"