Adding dates chips in document.

This commit is contained in:
Kartik Sharma 2025-12-10 15:41:53 +05:30 committed by pramod.mahajan
parent 0f43c877c4
commit c71fe3a45e
4 changed files with 25 additions and 10 deletions

View File

@ -41,10 +41,13 @@ const TaskReportFilterPanel = forwardRef(({ handleFilter, setFilterdata, clearFi
if (value !== undefined) {
setValue(name, value);
} else {
reset({ ...methods.getValues(), [name]: defaultFilter[name] });
// Fix: Use TaskReportDefaultValue or get current values before setting new ones
// reset({ ...methods.getValues(), [name]: TaskReportDefaultValue[name] }); // Updated to use TaskReportDefaultValue
setValue(name, TaskReportDefaultValue[name]);
}
},
getValues: methods.getValues, // optional, to read current filter state
getValues: methods.getValues,
onClear: onClear, // 💡 EXPOSE THE ONCLEAR FUNCTION
}));
useEffect(() => {

View File

@ -59,12 +59,18 @@ const DocumentFilterPanel = forwardRef(
useImperativeHandle(ref, () => ({
resetFieldValue: (name, value) => {
if (value !== undefined) {
setValue(name, value);
setValue(name, value, { shouldValidate: true, shouldDirty: true });
} else {
reset({ ...methods.getValues(), [name]: DocumentFilterDefaultValues[name] });
}
if ((name === "startDate" || name === "endDate") && value === null) {
setTimeout(() => {
setResetKey((prev) => prev + 1);
}, 0);
}
},
getValues: methods.getValues, // optional, to read current filter state
getValues: methods.getValues,
}));
//changes

View File

@ -124,26 +124,27 @@ const Documents = ({ Document_Entity, Entity }) => {
const updatedFilters = { ...filters };
if (Array.isArray(updatedFilters[key])) {
updatedFilters[key] = updatedFilters[key].filter((v) => v !== id);
updatedRef.current?.resetFieldValue(key,updatedFilters[key]);
updatedRef.current?.resetFieldValue(key, updatedFilters[key]);
}
else if (key === "dateRange") {
updatedFilters.startDate = null;
updatedFilters.endDate = null;
updatedRef.current?.resetFieldValue("startDate",null);
updatedRef.current?.resetFieldValue("endDate",null);
// These calls correctly tell the DocumentFilterPanel to update its form state:
updatedRef.current?.resetFieldValue("startDate", null);
updatedRef.current?.resetFieldValue("endDate", null);
}
else {
updatedFilters[key] = null;
}
setFilter(updatedFilters);
return updatedFilters;
return updatedFilters;
};
return (
<DocumentContext.Provider value={contextValues}>
<div className="mt-2">
<div className="card page-min-h d-flex p-5">
<DocumentFilterChips filters={filters} filterData={filterData} removeFilterChip={removeFilterChip} />
<div className="row align-items-center">
{/* Search */}
<div className="d-flex flex-row gap-2 col-12 col-md-8 col-lg-4 mb-md-0 align-items-center mb-2">
@ -194,6 +195,9 @@ const Documents = ({ Document_Entity, Entity }) => {
)}
</div>
</div>
<div className="ms-n1">
<DocumentFilterChips filters={filters} filterData={filterData} removeFilterChip={removeFilterChip} />
</div>
<DocumentsList
Document_Entity={DocumentEntity}
Entity={Entity}

View File

@ -51,7 +51,9 @@ const DailyProgrssReport = () => {
serviceFilter: ""
}
});
const clearFilter = () => setFilter(TaskReportDefaultValue);
const clearFilter = () => {
updatedRef.current?.onClear();
};
const handleFilter = (filterObj) => {
setFilter(filterObj)
}