"use client" import { zodResolver } from "@hookform/resolvers/zod" import { CalendarIcon } from "@radix-ui/react-icons" import { format } from "date-fns" import { useForm } from "react-hook-form" import { z } from "zod" import { cn } from "@/lib/utils" import { Button } from "@/components/ui/button" import { Calendar } from "@/components/ui/calendar" import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, } from "@/components/ui/form" import { Popover, PopoverContent, PopoverTrigger, } from "@/components/ui/popover" import { toast } from "@/components/ui/use-toast" const FormSchema = z.object({ dob: z.date({ required_error: "A date of birth is required.", }), }) export function DatePickerForm() { const form = useForm>({ resolver: zodResolver(FormSchema), }) function onSubmit(data: z.infer) { toast({ title: "You submitted the following values:", description: (
					{JSON.stringify(data, null, 2)}
				
), }) } return (
( Date of birth date > new Date() || date < new Date("1900-01-01") } initialFocus /> Your date of birth is used to calculate your age. )} /> ) }