"use client"; import { useEffect } from "react"; import type { GraphNode } from "@/lib/types"; interface MobileActionSheetProps { node: GraphNode; onShowDescription?: () => void; onAddComment: () => void; onClaimTask?: () => void; onUnclaimTask?: () => void; onCollapseEpic?: () => void; onUncollapseEpic?: () => void; onFocusEpic?: () => void; onExitFocusEpic?: () => void; onClose: () => void; } export function MobileActionSheet({ node, onShowDescription, onAddComment, onClaimTask, onUnclaimTask, onCollapseEpic, onUncollapseEpic, onFocusEpic, onExitFocusEpic, onClose, }: MobileActionSheetProps) { // Escape key dismissal useEffect(() => { const handler = (e: KeyboardEvent) => { if (e.key === "Escape") onClose(); }; window.addEventListener("keydown", handler); return () => window.removeEventListener("keydown", handler); }, [onClose]); return ( <> {/* Backdrop */}
{/* Action sheet */}