'use client'
import { useState } from 'react'
import { CalendarIcon, ChevronDownIcon } from 'lucide-react'
import { Button } from '@/registry/new-york/ui/button'
import { Calendar } from '@/registry/new-york/ui/calendar'
import { Label } from '@/registry/new-york/ui/label'
import { Popover, PopoverContent, PopoverTrigger } from '@/registry/new-york/ui/popover'
const DatePickerWithIconDemo = () => {
const [open, setOpen] = useState(false)
const [date, setDate] = useState<Date | undefined>(undefined)
return (
<div className='w-full max-w-xs space-y-2'>
<Label htmlFor='date' className='px-1'>
Date picker with icon
</Label>
<Popover open={open} onOpenChange={setOpen}>
<PopoverTrigger asChild>
<Button variant='outline' id='date' className='w-full justify-between font-normal'>
<span className='flex items-center'>
<CalendarIcon className='mr-2' />
{date ? date.toLocaleDateString() : 'Pick a date'}
</span>
<ChevronDownIcon />
</Button>
</PopoverTrigger>
<PopoverContent className='w-auto overflow-hidden p-0' align='start'>
<Calendar
mode='single'
selected={date}
onSelect={date => {
setDate(date)
setOpen(false)
}}
/>
</PopoverContent>
</Popover>
</div>
)
}
export default DatePickerWithIconDemo