date-picker-with-range.tsx — ui Source File
Architecture documentation for date-picker-with-range.tsx, a tsx file in the ui codebase. 8 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR aa6af87f_0fe9_070a_ba13_c52cd0ffc85d["date-picker-with-range.tsx"] 1d141819_425e_b5fd_4c8e_32f7c6a42cf2["react"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> 1d141819_425e_b5fd_4c8e_32f7c6a42cf2 f9e8c1ea_9de4_3e04_ca27_b15cada2e81e["date-fns"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> f9e8c1ea_9de4_3e04_ca27_b15cada2e81e d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3["lucide-react"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3 bfc8708c_7488_3983_8998_32b793781735["react-day-picker"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> bfc8708c_7488_3983_8998_32b793781735 79081a1f_55a3_945a_fb8c_d53d6d3eab81["utils"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> 79081a1f_55a3_945a_fb8c_d53d6d3eab81 aa2f3ec6_f291_3763_88ec_65a3f5ad5939["button"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> aa2f3ec6_f291_3763_88ec_65a3f5ad5939 5000e233_363d_e409_8b5c_7e80d38646fe["calendar"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> 5000e233_363d_e409_8b5c_7e80d38646fe e33b0d79_0534_28ec_a112_ac16ee736e09["popover"] aa6af87f_0fe9_070a_ba13_c52cd0ffc85d --> e33b0d79_0534_28ec_a112_ac16ee736e09 style aa6af87f_0fe9_070a_ba13_c52cd0ffc85d fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"use client"
import * as React from "react"
import { addDays, format } from "date-fns"
import { CalendarIcon } from "lucide-react"
import { DateRange } from "react-day-picker"
import { cn } from "@/lib/utils"
import { Button } from "@/registry/new-york/ui/button"
import { Calendar } from "@/registry/new-york/ui/calendar"
import {
Popover,
PopoverContent,
PopoverTrigger,
} from "@/registry/new-york/ui/popover"
export default function DatePickerWithRange({
className,
}: React.HTMLAttributes<HTMLDivElement>) {
const [date, setDate] = React.useState<DateRange | undefined>({
from: new Date(2022, 0, 20),
to: addDays(new Date(2022, 0, 20), 20),
})
return (
<div className={cn("grid gap-2", className)}>
<Popover>
<PopoverTrigger asChild>
<Button
id="date"
variant={"outline"}
className={cn(
"w-[300px] justify-start text-left font-normal",
!date && "text-muted-foreground"
)}
>
<CalendarIcon />
{date?.from ? (
date.to ? (
<>
{format(date.from, "LLL dd, y")} -{" "}
{format(date.to, "LLL dd, y")}
</>
) : (
format(date.from, "LLL dd, y")
)
) : (
<span>Pick a date</span>
)}
</Button>
</PopoverTrigger>
<PopoverContent className="w-auto p-0" align="start">
<Calendar
initialFocus
mode="range"
defaultMonth={date?.from}
selected={date}
onSelect={setDate}
numberOfMonths={2}
/>
</PopoverContent>
</Popover>
</div>
)
}
Domain
Subdomains
Functions
Dependencies
- button
- calendar
- date-fns
- lucide-react
- popover
- react
- react-day-picker
- utils
Source
Frequently Asked Questions
What does date-picker-with-range.tsx do?
date-picker-with-range.tsx is a source file in the ui codebase, written in tsx. It belongs to the ComponentRegistry domain, ChartRegistry subdomain.
What functions are defined in date-picker-with-range.tsx?
date-picker-with-range.tsx defines 1 function(s): DatePickerWithRange.
What does date-picker-with-range.tsx depend on?
date-picker-with-range.tsx imports 8 module(s): button, calendar, date-fns, lucide-react, popover, react, react-day-picker, utils.
Where is date-picker-with-range.tsx in the architecture?
date-picker-with-range.tsx is located at deprecated/www/registry/new-york/examples/date-picker-with-range.tsx (domain: ComponentRegistry, subdomain: ChartRegistry, directory: deprecated/www/registry/new-york/examples).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free