import { zodResolver } from "@hookform/resolvers/zod"; import { t } from "@lingui/core/macro"; import { useEffect, useState } from "react"; import { useForm } from "react-hook-form"; import { HiXMark } from "react-icons/hi2"; import { z } from "zod"; import type { Template } from "./TemplateBoards"; import Button from "~/components/Button"; import Input from "~/components/Input"; import Toggle from "~/components/Toggle"; import { useModal } from "~/providers/modal"; import { useWorkspace } from "~/providers/workspace"; import { api } from "~/utils/api"; import TemplateBoards, { getTemplates } from "./TemplateBoards"; const schema = z.object({ name: z .string() .min(1, { message: t`Board name is required` }) .max(100, { message: t`Board name cannot exceed 100 characters` }), workspacePublicId: z.string(), template: z.custom