Props

PropTipoPadrãoDescrição
value{ start: Date | null; end: Date | null }Valor do intervalo de data e hora selecionado
onChange(value: { start: Date | null; end: Date | null }) => voidCallback para quando o valor muda
timeTimeConfigConfiguração do painel de tempo (aplicado ao início e ao fim)
presetsDateRangePreset[]Predefinições de intervalo de datas
maxDaysnumberMáximo de dias permitidos no intervalo (inclusivo)
minDaysnumberMínimo de dias exigidos no intervalo (inclusivo)
allowSingleDateInRangebooleantruePermitir intervalo onde o início é igual ao fim
minDateDateData mínima selecionável
maxDateDateData máxima selecionável
localePartial<Locale>Configuração de localidade personalizada
initialMonthDateMês inicial exibido
size"small" | "medium" | "large" | "x-large""medium"Tamanho do componente
weekStartsOnWeekDay"sunday"Primeiro dia da semana
isDateUnavailable(date: Date) => booleanMarcar datas como desabilitadas
displayFormatstringFormato de exibição personalizado
openbooleanEstado de abertura controlado
initialOpenbooleanEstado de abertura inicial (não controlado)
onOpenChange(open: boolean) => voidCallback para quando o estado de abertura muda
requiredbooleanfalseDesabilitar a limpeza do valor
showOutsideDaysbooleanfalseMostrar dias dos meses adjacentes
highlightDatesDate[]Datas para destacar
shouldCloseOnSelectbooleanfalseConfirmar automaticamente ao clicar em uma predefinição
numberOfMonthsnumber2Número de meses para exibir
captionLayout"buttons" | "dropdown""buttons"Estilo de navegação do cabeçalho
fromYearnumberAno de início para o dropdown
toYearnumberAno de término para o dropdown
disablePastbooleanfalseDesabilitar datas anteriores a hoje
disableFuturebooleanfalseDesabilitar datas posteriores a hoje
inlinebooleanfalseMostrar calendário em linha (sem popup)
namestringNome do input oculto para submissão de formulário (data-hora de início)
endNamestringNome do input oculto para data-hora de término (padrão é name-end)
placeholderstringTexto do placeholder do gatilho
hideHeaderbooleanfalseOcultar o cabeçalho de navegação
hideFooterbooleanfalseOcultar o rodapé de ações

TimeConfig

interface TimeConfig {
/** Precisão de exibição da hora. Padrão é "minute". */
precision?: "hour" | "minute" | "second";
/** Formato de 12 ou 24 horas. Padrão é "24". */
hourFormat?: "12" | "24";
/** Passo de incremento dos minutos. Padrão é 5. */
minuteStep?: 1 | 2 | 3 | 5 | 10 | 15 | 20 | 30;
/** Passo de incremento dos segundos. Padrão é 1. */
secondStep?: 1 | 2 | 3 | 5 | 10 | 15 | 20 | 30;
/** Altura (em px) de cada item da roda de rolagem. Padrão é 32. */
itemHeight?: number;
}

DateRangePreset

interface DateRangePreset {
label: string;
value: { start: Date; end: Date } | (() => { start: Date; end: Date });
}