Утилиты форматирования

Функции для форматирования дат, времени и чисел для отображения.

import {
formatDate,
formatDateTime,
formatTimeDisplay,
padNumber,
} from "react-date-range-picker-headless";

formatDate

Форматирует дату с помощью настраиваемой строки формата.

СигнатураformatDate(date: Date, format?: string): string
Формат по умолчанию"YYYY.MM.DD"
formatDate(new Date(2026, 2, 1)); // "2026.03.01"
formatDate(new Date(2026, 2, 1), "YYYY-MM-DD"); // "2026-03-01"
formatDate(new Date(2026, 2, 1), "M/D"); // "3/1"

formatDateTime

Форматирует дату и время с помощью настраиваемой строки формата.

СигнатураformatDateTime(date: Date, format?: string): string
Формат по умолчанию"YYYY.MM.DD HH:mm"
formatDateTime(new Date(2026, 2, 1, 14, 30)); // "2026.03.01 14:30"
formatDateTime(new Date(2026, 2, 1, 14, 30), "YYYY-MM-DD HH:mm:ss"); // "2026-03-01 14:30:00"

formatTimeDisplay

Форматирует строку отображения времени на основе разрешенного TimeConfig.

СигнатураformatTimeDisplay(hour: number, minute: number, second: number, period: TimePeriod, config: Required<TimeConfig>, amLabel?: string, pmLabel?: string): string
ПараметрТипПо умолчаниюОписание
hournumberЗначение часа (внутренне в 24-часовом формате).
minutenumberЗначение минуты.
secondnumberЗначение секунды.
periodTimePeriodAM/PM (используется для отображения в 12-часовом режиме).
configRequired<TimeConfig>Разрешенная конфигурация времени.
amLabelstring"AM"Метка для отображения AM.
pmLabelstring"PM"Метка для отображения PM.
import { resolveTimeConfig, formatTimeDisplay } from "react-date-range-picker-headless";
const config = resolveTimeConfig({ precision: "minute", hourFormat: "24" });
formatTimeDisplay(14, 30, 0, "PM", config); // "14:30"
const config12 = resolveTimeConfig({ precision: "second", hourFormat: "12" });
formatTimeDisplay(14, 30, 15, "PM", config12); // "02:30:15 PM"

padNumber

Дополняет число до 2-значной строки.

СигнатураpadNumber(num: number): string
padNumber(1); // "01"
padNumber(12); // "12"
padNumber(0); // "00"