Restrições
Obrigatório
Quando required é definido, o botão de limpar é desativado e o valor não pode ser esvaziado.
import { useState } from "react";import { DatePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function Required() { const [value, setValue] = useState<Date | null>(new Date());
return <DatePicker value={value} onChange={setValue} required />;}Datas Mínima e Máxima
Restrinja as datas selecionáveis a um intervalo específico usando minDate e maxDate.
import { useState } from "react";import { DatePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function MinMaxDate() { const [value, setValue] = useState<Date | null>(null);
const today = new Date(); const minDate = new Date(today.getFullYear(), today.getMonth(), 1); const maxDate = new Date(today.getFullYear(), today.getMonth() + 1, 0);
return <DatePicker value={value} onChange={setValue} minDate={minDate} maxDate={maxDate} />;}Datas Desativadas
Use isDateUnavailable para desativar dinamicamente datas específicas.
import { useState } from "react";import { DatePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function DisabledDates() { const [value, setValue] = useState<Date | null>(null);
const isDateUnavailable = (date: Date) => { const day = date.getDay(); return day === 0 || day === 6; // Disable weekends };
return <DatePicker value={value} onChange={setValue} isDateUnavailable={isDateUnavailable} />;}Desativar Passado / Futuro
Use disablePast ou disableFuture para desativar rapidamente datas antes/depois de hoje.
import { useState } from "react";import { DatePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function DisablePastFuture() { const [pastValue, setPastValue] = useState<Date | null>(null); const [futureValue, setFutureValue] = useState<Date | null>(null);
return ( <div style={{ display: "flex", flexDirection: "column", gap: 16 }}> <div> <div style={{ fontSize: 13, fontWeight: 600, opacity: 0.7, marginBottom: 8 }}> Past dates disabled </div> <DatePicker value={pastValue} onChange={setPastValue} disablePast /> </div> <div> <div style={{ fontSize: 13, fontWeight: 600, opacity: 0.7, marginBottom: 8 }}> Future dates disabled </div> <DatePicker value={futureValue} onChange={setFutureValue} disableFuture /> </div> </div> );}Past dates disabled
Future dates disabled
Destacar Datas
Destaque visualmente datas específicas (ex: feriados, eventos) usando a propriedade highlightDates.
import { useState } from "react";import { DatePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function HighlightDates() { const [value, setValue] = useState<Date | null>(null);
const today = new Date(); const highlightDates = [ new Date(today.getFullYear(), today.getMonth(), 5), new Date(today.getFullYear(), today.getMonth(), 15), new Date(today.getFullYear(), today.getMonth(), 25), ];
return <DatePicker value={value} onChange={setValue} highlightDates={highlightDates} />;}Mês Inicial
Defina o mês exibido inicialmente quando o seletor é aberto pela primeira vez.
import { useState } from "react";import { DatePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function InitialMonth() { const [value, setValue] = useState<Date | null>(null);
return <DatePicker value={value} onChange={setValue} initialMonth={new Date(2026, 5, 1)} />;}