import { useEffect } from "react"; import { api } from "~/utils/api"; import { HiXMark } from "react-icons/hi2"; import { useModal } from "~/providers/modal"; import { useWorkspace } from "~/providers/workspace"; import { Formik, Form, Field } from "formik"; interface FormValues { name: string; } export function NewWorkspaceForm() { const { closeModal } = useModal(); const { switchWorkspace } = useWorkspace(); const createWorkspace = api.workspace.create.useMutation({ onSuccess: (values) => { try { if (values?.publicId && values.name) { switchWorkspace({ publicId: values.publicId, name: values.name }); closeModal(); } } catch (e) { console.log(e); } }, }); useEffect(() => { const nameElement: HTMLElement | null = document?.querySelector("#workspace-name"); if (nameElement) nameElement.focus(); }, []); return ( <>

New workspace

{ createWorkspace.mutate({ name: values.name, }); }} >
); }