Перейти к содержимому
v2.5.0
English
Русский
Документация

CalendarBase

CalendarBase — общая основа раскладки и контекста для семейства календарей VegaUI.

Пропсы корня

ПропТипПо умолчанию
variantCalendarBaseVariant'secondary'
Визуальный вариант календаря. Передаётся через CalendarBaseContext и используется вложенными элементами управления (кнопками, подписями и т. д.) для единообразной стилизации.
sizeCalendarBaseSize'xs'
Общая шкала размера календаря. Через CalendarBaseContext влияет на вложенные элементы управления: кнопки навигации, триггеры пикеров и подписи дней недели.
compactboolean—
Флаг плотности для более компактных раскладок. При true корневой элемент получает data-compact="true", чтобы стили могли уменьшить отступы, промежутки и высоту элементов управления для более плотного календаря. При false или undefined календарь использует обычные интервалы.

Также принимает все атрибуты <div>.

Дочерние части

  • CalendarBaseHeader
  • CalendarBaseWeekLabels
  • CalendarBaseWeekLabel
  • CalendarBasePickerButton
  • CalendarBaseControlIconButton

CalendarBaseHeader

Также принимает все атрибуты <div>.

CalendarBaseWeekLabel

ПропТипПо умолчанию
sizeTextSize—
Визуальный размер текста, обычно соответствует типографической шкале дизайн-системы.
asChildboolean—
Если true, рендерит текст как дочерний компонент через Slot. Полезно для совместимости с нативными элементами или другими компонентами.
fontWeight400 | 500 | 600 | 700 | 900—
Насыщенность шрифта текста. Распространённые значения: 400: обычный; 500: средний; 600: полужирный; 700: жирный; 900: сверхжирный
refRef<HTMLSpanElement>—
Ref на нижележащий <span> или элемент в слоте. Полезен для измерений, фокуса или работы с DOM.

Также принимает все атрибуты <span>.

CalendarBaseWeekLabels

Также принимает все атрибуты <div>.

CalendarBasePickerButton

ПропТипПо умолчанию
asChildboolean—
Если true, рендерит кнопку как дочерний компонент через Slot (например, из Radix UI). Включает полиморфный рендер — полезно, чтобы кнопка работала как ссылка или собственный тег.
sizeButtonSize—
Определяет размер кнопки. Влияет на отступы, размер шрифта и общие габариты.
fullWidthboolean—
Если true, кнопка растягивается на всю ширину контейнера.
variantButtonBaseVariant—
Определяет визуальный стиль кнопки: цветовую схему и акцент.
appearanceButtonBaseAppearance—
Настраивает структурный внешний вид кнопки (фон, рамка и т. д.).
disabledboolean—
Отключает кнопку при true. Запрещает взаимодействие и применяет визуальное отключённое состояние. Не применяется с asChild: отключённым состоянием владеет дочерний элемент, например через aria-disabled или ссылку без href.
classNamestring—
Необязательный собственный CSS-класс для элемента кнопки. Полезен для переопределений дизайн-системы или локальных стилей.
childrenReactNode—
Содержимое кнопки — текст, иконка или любой React-узел.
refRef<HTMLButtonElement>—
Ref, передаваемый на нативный элемент <button>. Даёт прямой доступ к DOM для управления фокусом или измерений.

Также принимает все атрибуты <button>.

CalendarBaseControlIconButton

ПропТипПо умолчанию
sizeIconButtonSize—
Размер контейнера кнопки. Управляет отступами и общей кликабельной областью.
asChildboolean—
Если true, рендерит кнопку как дочерний компонент через Slot (например, из Radix UI). Включает полиморфный рендер — полезно, чтобы кнопка работала как ссылка или собственный тег.
variantButtonBaseVariant—
Определяет визуальный стиль кнопки: цветовую схему и акцент.
appearanceButtonBaseAppearance—
Настраивает структурный внешний вид кнопки (фон, рамка и т. д.).
disabledboolean—
Отключает кнопку при true. Запрещает взаимодействие и применяет визуальное отключённое состояние. Не применяется с asChild: отключённым состоянием владеет дочерний элемент, например через aria-disabled или ссылку без href.
classNamestring—
Необязательный собственный CSS-класс для элемента кнопки. Полезен для переопределений дизайн-системы или локальных стилей.
childrenReactNode—
Содержимое кнопки — текст, иконка или любой React-узел.
refRef<HTMLButtonElement>—
Ref, передаваемый на нативный элемент <button>. Даёт прямой доступ к DOM для управления фокусом или измерений.

Также принимает все атрибуты <button>.

Типы

  • CalendarBaseProps
  • CalendarBaseHeaderProps
  • CalendarBaseWeekLabelsProps
  • CalendarBaseWeekLabelProps
  • CalendarBasePickerButtonProps
  • CalendarBaseControlIconButtonProps
  • CalendarBaseVariant
  • CalendarBaseSize

Модель состояния

  • У CalendarBase нет собственного состояния выбора даты.
  • Он только передаёт визуальный контекст вложенным частям семейства календаря.