import React, { useState, useCallback } from "react"; import { Dialog } from "../../packages/excalidraw/components/Dialog"; import { TextField } from "../../packages/excalidraw/components/TextField"; import { FilledButton } from "../../packages/excalidraw/components/FilledButton"; import { useSetAtom } from "jotai"; import { createCanvasDialogAtom } from "../app-jotai"; interface CreateCanvasDialogProps { onCanvasCreate: (name: string) => void; } export const CreateCanvasDialog: React.FC = ({ onCanvasCreate, }) => { const [name, setName] = useState("Untitled Canvas"); const setCreateCanvasDialog = useSetAtom(createCanvasDialogAtom); const handleCreate = useCallback(() => { if (name.trim()) { onCanvasCreate(name.trim()); setCreateCanvasDialog({ isOpen: false }); } }, [name, onCanvasCreate, setCreateCanvasDialog]); const handleClose = useCallback(() => { setCreateCanvasDialog({ isOpen: false }); }, [setCreateCanvasDialog]); return (
e.key === "Enter" && handleCreate()} />
); };