Вспомогательные функции для времени
Функции для генерации значений времени, преобразования между 12/24-часовыми форматами, привязки к шагам и разрешения конфигурации времени.
import { generateHours, generateHours12, generateMinutes, generateSeconds, adjustMinuteToStep, adjustSecondToStep, to12Hour, to24Hour, resolveTimeConfig,} from "react-date-range-picker-headless";generateHours
Генерирует массив 24-часовых значений.
| Сигнатура | generateHours(): number[] |
| Возвращает | [0, 1, 2, ..., 23] |
generateHours12
Генерирует массив 12-часовых значений.
| Сигнатура | generateHours12(): number[] |
| Возвращает | [1, 2, 3, ..., 12] |
generateMinutes
Генерирует массив минут, отфильтрованный по шагу.
| Сигнатура | generateMinutes(minuteStep?: MinuteStep): number[] |
| По умолчанию | 5 |
generateMinutes(); // [0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55]generateMinutes(15); // [0, 15, 30, 45]generateMinutes(1); // [0, 1, 2, ..., 59]generateSeconds
Генерирует массив секунд, отфильтрованный по шагу.
| Сигнатура | generateSeconds(secondStep?: SecondStep): number[] |
| По умолчанию | 1 |
generateSeconds(); // [0, 1, 2, ..., 59]generateSeconds(15); // [0, 15, 30, 45]adjustMinuteToStep
Привязывает значение минуты к ближайшему допустимому шагу (округляет вниз).
| Сигнатура | adjustMinuteToStep(minute: number, minuteStep: MinuteStep): number |
adjustMinuteToStep(7, 5); // 5adjustMinuteToStep(13, 10); // 10adjustMinuteToStep(29, 15); // 15adjustSecondToStep
Привязывает значение секунды к ближайшему допустимому шагу (округляет вниз).
| Сигнатура | adjustSecondToStep(second: number, secondStep: SecondStep): number |
adjustSecondToStep(7, 5); // 5adjustSecondToStep(14, 10); // 10to12Hour
Преобразует 24-часовое значение в 12-часовой формат с AM/PM.
| Сигнатура | to12Hour(hour24: number): { hour: number; period: TimePeriod } |
to12Hour(0); // { hour: 12, period: "AM" }to12Hour(12); // { hour: 12, period: "PM" }to12Hour(13); // { hour: 1, period: "PM" }to12Hour(23); // { hour: 11, period: "PM" }to24Hour
Преобразует 12-часовое значение с AM/PM в 24-часовой формат.
| Сигнатура | to24Hour(hour12: number, period: TimePeriod): number |
to24Hour(12, "AM"); // 0to24Hour(12, "PM"); // 12to24Hour(1, "PM"); // 13to24Hour(11, "PM"); // 23resolveTimeConfig
Разрешает частичный TimeConfig со значениями по умолчанию.
| Сигнатура | resolveTimeConfig(config?: TimeConfig): Required<TimeConfig> |
| Поле | По умолчанию |
|---|---|
precision | "minute" |
hourFormat | "24" |
minuteStep | 5 |
secondStep | 1 |
itemHeight | 32 |
resolveTimeConfig();// { precision: "minute", hourFormat: "24", minuteStep: 5, secondStep: 1, itemHeight: 32 }
resolveTimeConfig({ precision: "second", hourFormat: "12" });// { precision: "second", hourFormat: "12", minuteStep: 5, secondStep: 1, itemHeight: 32 }