Changes in Filter Date Range picker.
This commit is contained in:
parent
40fb010128
commit
d4be35b44d
@ -1,8 +1,9 @@
|
||||
import React, { useState, useCallback, useEffect } from "react";
|
||||
import { FormProvider, useForm } from "react-hook-form";
|
||||
import moment from "moment";
|
||||
import DateRangePicker from "../../components/common/DateRangePicker";
|
||||
import DateRangePicker, { DateRangePicker1 } from "../../components/common/DateRangePicker";
|
||||
import SelectMultiple from "../../components/common/SelectMultiple";
|
||||
import { localToUtc } from "../../utils/appUtils";
|
||||
|
||||
const defaultGalleryFilterValues = {
|
||||
buildingIds: [],
|
||||
@ -58,27 +59,21 @@ const ImageGalleryFilters = ({
|
||||
[setValue]
|
||||
);
|
||||
|
||||
// Submit → Apply filters
|
||||
const onSubmit = useCallback(
|
||||
(formData) => {
|
||||
const payload = {
|
||||
const onSubmit =(formData)=>{
|
||||
const inputStartDate = localToUtc(formData.startDate)
|
||||
const inputEndDate = localToUtc(formData.endDate)
|
||||
const payload = {
|
||||
...formData,
|
||||
startDate: formData.startDate
|
||||
? moment(formData.startDate).utc().toISOString()
|
||||
: null,
|
||||
endDate: formData.endDate
|
||||
? moment(formData.endDate).utc().toISOString()
|
||||
: null,
|
||||
startDate: inputStartDate,
|
||||
endDate: inputEndDate,
|
||||
};
|
||||
onApplyFilters(payload);
|
||||
},
|
||||
[onApplyFilters]
|
||||
);
|
||||
onApplyFilters(payload);
|
||||
}
|
||||
|
||||
// Clear all filters
|
||||
const onClear = useCallback(() => {
|
||||
reset(defaultGalleryFilterValues);
|
||||
setResetKey((prev) => prev + 1); // reset DateRangePicker
|
||||
setResetKey((prev) => prev + 1);
|
||||
onApplyFilters(defaultGalleryFilterValues);
|
||||
}, [onApplyFilters, reset]);
|
||||
|
||||
@ -86,13 +81,12 @@ const ImageGalleryFilters = ({
|
||||
<div className="p-3">
|
||||
<FormProvider {...methods}>
|
||||
<form onSubmit={handleSubmit(onSubmit)} className="d-flex flex-column">
|
||||
{/* Date Range */}
|
||||
<div className="mb-3 text-start">
|
||||
<label className="">Date Range :</label>
|
||||
<DateRangePicker
|
||||
<DateRangePicker1
|
||||
onRangeChange={handleDateRangeChange}
|
||||
startDate={appliedFilters?.startDate}
|
||||
endDate={appliedFilters?.endDate}
|
||||
startDate="startDate"
|
||||
endDate="endDate"
|
||||
resetSignal={resetKey}
|
||||
/>
|
||||
</div>
|
||||
|
@ -67,6 +67,8 @@ const DateRangePicker = ({
|
||||
style={{ right: "22px", bottom: "-8px" }}
|
||||
></i>
|
||||
</div>
|
||||
|
||||
|
||||
);
|
||||
};
|
||||
|
||||
|
@ -72,8 +72,11 @@ export const normalizeAllowedContentTypes = (allowedContentType) => {
|
||||
|
||||
|
||||
export function localToUtc(localDateString) {
|
||||
if (!localDateString || localDateString.trim() === "") return null; // return null instead of undefined
|
||||
const date = new Date(localDateString);
|
||||
if (isNaN(date.getTime())) return null; // invalid date check
|
||||
if (!localDateString || localDateString.trim() === "") return null;
|
||||
|
||||
const [day, month, year] = localDateString.split("-").map(Number);
|
||||
if (!day || !month || !year) return null;
|
||||
|
||||
const date = new Date(Date.UTC(year, month - 1, day));
|
||||
return date.toISOString();
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user