react-day-picker / examples /CustomMultiple.tsx
AbdulElahGwaith's picture
Upload folder using huggingface_hub
cf86710 verified
import { isSameDay } from "date-fns";
import React, { useState } from "react";
import { type DayEventHandler, DayPicker } from "react-day-picker";
export function CustomMultiple() {
const [value, setValue] = useState<Date[]>([]);
const handleDayClick: DayEventHandler<React.MouseEvent> = (
day,
modifiers,
) => {
const newValue = [...value];
if (modifiers.selected) {
const index = value.findIndex((d) => isSameDay(day, d));
newValue.splice(index, 1);
} else {
newValue.push(day);
}
setValue(newValue);
};
const handleResetClick = () => setValue([]);
let footer = <>Please pick one or more days.</>;
if (value.length > 0)
footer = (
<>
You selected {value.length} days.{" "}
<button type="button" onClick={handleResetClick}>
Reset
</button>
</>
);
return (
<DayPicker
onDayClick={handleDayClick}
modifiers={{ selected: value }}
footer={footer}
/>
);
}