mirror of
https://github.com/shadcn-ui/ui.git
synced 2026-07-07 22:18:39 +00:00
36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
"use client"
|
|
|
|
import * as React from "react"
|
|
import { addDays } from "date-fns"
|
|
import { type DateRange } from "react-day-picker"
|
|
|
|
import { Calendar } from "@/registry/new-york-v4/ui/calendar"
|
|
|
|
export function CalendarDemo() {
|
|
const [date, setDate] = React.useState<Date | undefined>(new Date())
|
|
const [dateRange, setDateRange] = React.useState<DateRange | undefined>({
|
|
from: new Date(new Date().getFullYear(), 0, 12),
|
|
to: addDays(new Date(new Date().getFullYear(), 0, 12), 30),
|
|
})
|
|
|
|
return (
|
|
<div className="flex flex-col items-start gap-2 md:flex-row">
|
|
<Calendar
|
|
mode="single"
|
|
selected={date}
|
|
onSelect={setDate}
|
|
className="rounded-md border shadow-sm"
|
|
/>
|
|
<Calendar
|
|
mode="range"
|
|
defaultMonth={dateRange?.from}
|
|
selected={dateRange}
|
|
onSelect={setDateRange}
|
|
numberOfMonths={2}
|
|
disabled={(date) => date > new Date() || date < new Date("1900-01-01")}
|
|
className="rounded-md border shadow-sm"
|
|
/>
|
|
</div>
|
|
)
|
|
}
|