Ortak Tipler

Headless paketinde kullanılan paylaşılan tip takma adları.

import type {
DatePickerSize,
WeekDay,
CaptionLayout,
TimePrecision,
HourFormat,
TimePeriod,
MinuteStep,
SecondStep,
CalendarMonth,
DateUnit,
} from "react-date-range-picker-headless";

DatePickerSize

UI boyut varyantı. Headless hook’ları bunu kullanmadan geçirir. Styled component’ler bunu görsel boyutlandırma için kullanır.

type DatePickerSize = "x-large" | "large" | "medium" | "small";

WeekDay

Haftanın gününü bir dize olarak belirtir. weekStartsOn seçeneğinde kullanılır.

type WeekDay = "sunday" | "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday";

CaptionLayout

Takvim başlığı düzen modu.

type CaptionLayout = "buttons" | "dropdown";
DeğerAçıklama
"buttons"Önceki/sonraki ay gezinme düğmeleri (varsayılan).
"dropdown"Yıl ve ay seçim açılır menüleri.

TimePrecision

Hangi zaman sütunlarının gösterileceğini kontrol eder.

type TimePrecision = "hour" | "minute" | "second";
DeğerGösterilen Sütunlar
"hour"Sadece saat.
"minute"Saat + dakika.
"second"Saat + dakika + saniye.

HourFormat

12 saatlik veya 24 saatlik zaman gösterimi.

type HourFormat = "12" | "24";

TimePeriod

12 saatlik format için AM/PM göstergesi.

type TimePeriod = "AM" | "PM";

MinuteStep

Adım tabanlı dakika seçimi için geçerli dakika artış değerleri.

type MinuteStep = 1 | 2 | 3 | 5 | 10 | 15 | 20 | 30;

SecondStep

Adım tabanlı saniye seçimi için geçerli saniye artış değerleri.

type SecondStep = 1 | 2 | 3 | 5 | 10 | 15 | 20 | 30;

CalendarMonth

Tek bir ay için oluşturulan takvim verileri.

interface CalendarMonth {
month: Date;
days: (Date | null)[];
weeks: (Date | null)[][];
}
AlanTipAçıklama
monthDateBu takvimin temsil ettiği ay.
days(Date | null)[]42 hücrelik düz bir dizi (6 hafta x 7 gün). Boş hücreler için null.
weeks(Date | null)[][]Her biri 7 gün hücresi içeren 6 haftalık 2D dizi.

DateUnit

Tarih yardımcı fonksiyonları (startOf, endOf, add, subtract, isSame, isBefore, isAfter, diff) için zaman birimi.

type DateUnit = "year" | "month" | "week" | "day" | "hour" | "minute" | "second" | "millisecond";