import { useState } from "react"

export function useZoom(initialZoom: number = 100, min: number = 50, max: number = 150) {
  const [zoom, setZoom] = useState(initialZoom)

  const zoomIn = () => setZoom((prev) => Math.min(prev + 10, max))
  const zoomOut = () => setZoom((prev) => Math.max(prev - 10, min))
  const resetZoom = () => setZoom(initialZoom)

  const canZoomIn = zoom < max
  const canZoomOut = zoom > min

  return {
    zoom,
    zoomIn,
    zoomOut,
    resetZoom,
    canZoomIn,
    canZoomOut,
  }
}