In the Image Gallery, the filter drawer's date picker should default to the last 7 days (today minus 7 days).

This commit is contained in:
Kartik sharma 2025-07-09 13:09:44 +05:30
parent 80abfd599a
commit a8ff2fbccb

View File

@ -8,6 +8,15 @@ const DateRangePickerNoDefault = ({
const inputRef = useRef(null);
useEffect(() => {
const today = new Date();
const sevenDaysAgo = new Date();
sevenDaysAgo.setDate(today.getDate() - 7);
const formatDate = (date) => date.toISOString().split('T')[0];
const defaultStartDate = formatDate(sevenDaysAgo);
const defaultEndDate = formatDate(today);
const fp = flatpickr(inputRef.current, {
mode: "range",
dateFormat: "Y-m-d",
@ -24,7 +33,10 @@ const DateRangePickerNoDefault = ({
}
},
onReady: (selectedDates, dateStr, instance) => {
if (startDate && endDate) {
if (!startDate && !endDate) {
instance.setDate([defaultStartDate, defaultEndDate], true);
onRangeChange?.({ startDate: defaultStartDate, endDate: defaultEndDate });
} else if (startDate && endDate) {
instance.setDate([startDate, endDate], true);
}
},
@ -32,8 +44,12 @@ const DateRangePickerNoDefault = ({
if (startDate && endDate) {
fp.setDate([startDate, endDate], false);
} else if (!startDate && !endDate) {
} else if (!startDate && !endDate && fp.selectedDates.length > 0) {
fp.clear();
onRangeChange?.({ startDate: defaultStartDate, endDate: defaultEndDate });
} else if (!startDate && !endDate && fp.selectedDates.length === 0) {
fp.setDate([defaultStartDate, defaultEndDate], false);
onRangeChange?.({ startDate: defaultStartDate, endDate: defaultEndDate });
}
return () => {
@ -52,4 +68,4 @@ const DateRangePickerNoDefault = ({
);
};
export default DateRangePickerNoDefault;
export default DateRangePickerNoDefault;