コンテンツにスキップ
Vantage
English
Esc
navigateopen⌘Jpreview
このページの内容

DateRangePicker

A date-range picker with presets.

Presets such as “Today” and “Last 7 days” alongside a two-month calendar. For picking a period on a dashboard, this is all you need.

export const client = "only";

import { useState } from "react";
import { DateRangePicker } from "@squadbase/vantage/components";
import type { DateRange } from "@squadbase/vantage/components";

export default function Example() {
  const [range, setRange] = useState<DateRange>({
    from: new Date(2026, 6, 1),
    to: new Date(2026, 6, 23),
  });
  return <DateRangePicker value={range} onChange={setRange} align="start" />;
}
import { DateRangePicker, defaultPresets } from "@squadbase/vantage/components";
import type { DateRange, PresetItem } from "@squadbase/vantage/components";
PropType
value?DateRange

`{ from, to }`; both are `Date | undefined`.

TypeDateRange
onChange?(range: DateRange) => void

Fired on selection.

Type(range: DateRange) => void
presets?PresetItem[]

The presets listed down the left.

TypePresetItem[]
DefaultdefaultPresets
showPresets?boolean

Whether to show that column.

Typeboolean
Defaulttrue
minDate?Date

Earliest selectable date.

TypeDate
maxDate?Date

Latest selectable date.

TypeDate
placeholder?string

Trigger text before anything is chosen.

Typestring
align?"start" | "center" | "end"

How the popover aligns.

Type"start" | "center" | "end"
disabled?boolean

Disable interaction.

Typeboolean

Replacing the presets

defaultPresets is Today / Yesterday / Last 7 days / Last 14 days / … . For your own, getValue returns a DateRange.

const presets: PresetItem[] = [
  { label: "This quarter", getValue: () => ({ from: quarterStart, to: today }) },
  ...defaultPresets,
];

<DateRangePicker presets={presets} value={range} onChange={setRange} />;

このページは役に立ちましたか?