Saltar al contenido principal

wiki-Date-Selector

Ver en Git


Date Selector

El componente DateSelector es un selector de fechas interactivo que permite al usuario seleccionar un día específico desde un calendario desplegable. Incluye funcionalidades para la navegación por meses, deshabilitación de fechas específicas, y personalización según el idioma. Es ideal para aplicaciones que requieran la entrada o selección de fechas de manera intuitiva.

Referencia de la API

PropiedadTipoPredeterminadoDescripción
defaultValuestring (opcional)undefinedValor inicial predeterminado en formato ISO 8601 (ejemplo: YYYY-MM-DD).
valuestring | numberundefinedValor actual de la fecha seleccionada en formato ISO 8601 o timestamp.
onChange(date: Date) => voidundefinedFunción que se ejecuta cuando el usuario selecciona una fecha.
languagelanguagesT (opcional)'es_AR'Idioma del componente. Controla los textos y nombres de los meses en el calendario.
classNamestring (opcional)undefinedClase CSS adicional para personalizar el contenedor del componente.
disableFromTodayboolean (opcional)falseSi es true, deshabilita todas las fechas anteriores a la fecha actual.
disabledDaysDate[] (opcional)[]Array de fechas específicas que estarán deshabilitadas y no podrán ser seleccionadas.
activeDatesstring[] (opcional)undefinedLista de fechas específicas que se destacarán como "activas" en el calendario.

Ejemplo de Uso

import { useState } from 'react';
import { DateSelector } from '@auravant/ui-kit';

export const DateSelectorExample = () => {
const [selectedDate, setSelectedDate] = useState<Date>();

const handleDateChange = (date: Date) => {
setSelectedDate(date);
console.log('Fecha seleccionada:', date);
};

return (
<DateSelector
defaultValue="2025-01-01"
onChange={handleDateChange}
disableFromToday={true}
disabledDays={[new Date('2025-01-15'), new Date('2025-01-20')]}
language="en_US"
className="custom-class"
/>
);
};

Notas

  • Estado Controlado: El componente es controlado externamente, pero también puede manejar un valor inicial mediante defaultValue.

  • Formato de Fechas: El valor esperado para defaultValue y value debe estar en formato ISO 8601 o como timestamp. Las fechas deshabilitadas (disabledDays) deben ser objetos de tipo Date. Deshabilitación Dinámica: La prop disableFromToday desactiva dinámicamente las fechas anteriores a la actual.

  • Personalización del Diseño: Se pueden aplicar estilos adicionales mediante las props className y style. Los nombres de los meses y los textos son traducibles mediante las traducciones internas o especificando un idioma.