diff --git a/src/app/components/create-task-sheet.tsx b/src/app/components/create-task-sheet.tsx deleted file mode 100644 index c8c21521..00000000 --- a/src/app/components/create-task-sheet.tsx +++ /dev/null @@ -1,81 +0,0 @@ -"use client"; - -import { zodResolver } from "@hookform/resolvers/zod"; -import { Loader, Plus } from "lucide-react"; -import * as React from "react"; -import { useForm } from "react-hook-form"; -import { toast } from "sonner"; - -import { Button } from "@/registry/bases/radix/ui/button"; -import { - Sheet, - SheetClose, - SheetContent, - SheetDescription, - SheetFooter, - SheetHeader, - SheetTitle, - SheetTrigger, -} from "@/registry/bases/radix/ui/sheet"; - -import type { CreateTaskSchema } from "../lib/validations"; - -import { createTask } from "../lib/actions"; -import { createTaskSchema } from "../lib/validations"; -import { TaskForm } from "./task-form"; - -export function CreateTaskSheet() { - const [open, setOpen] = React.useState(false); - const [isPending, startTransition] = React.useTransition(); - - const form = useForm({ - resolver: zodResolver(createTaskSchema), - }); - - function onSubmit(input: CreateTaskSchema) { - startTransition(async () => { - const { error } = await createTask(input); - - if (error) { - toast.error(error); - return; - } - - form.reset(); - setOpen(false); - toast.success("Task created"); - }); - } - - return ( - - - - - - - Create task - - Fill in the details below to create a new task - - - - - - - - - - - - - ); -} diff --git a/src/app/components/task-form.tsx b/src/app/components/task-form.tsx deleted file mode 100644 index b0d34d42..00000000 --- a/src/app/components/task-form.tsx +++ /dev/null @@ -1,179 +0,0 @@ -"use client"; - -import type * as React from "react"; -import type { FieldPath, FieldValues, UseFormReturn } from "react-hook-form"; - -import { tasks } from "@/db/schema"; -import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage, -} from "@/registry/bases/radix/ui/form"; -import { Input } from "@/registry/bases/radix/ui/input"; -import { - Select, - SelectContent, - SelectGroup, - SelectItem, - SelectTrigger, - SelectValue, -} from "@/registry/bases/radix/ui/select"; -import { Textarea } from "@/registry/bases/radix/ui/textarea"; - -interface TaskFormProps extends Omit< - React.ComponentPropsWithRef<"form">, - "onSubmit" -> { - children: React.ReactNode; - form: UseFormReturn; - onSubmit: (data: T) => void; -} - -export function TaskForm({ - form, - onSubmit, - children, -}: TaskFormProps) { - return ( -
- - } - render={({ field }) => ( - - Title - -