feat: Enhance filter editing functionality in FilterManager by adding index tracking for updates
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 6m27s
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 6m27s
This commit is contained in:
@@ -390,15 +390,20 @@ function FilterManager() {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleEditFilter = (filter) => {
|
const handleEditFilter = (filter, index) => {
|
||||||
setEditingFilter({ ...filter });
|
setEditingFilter({ ...filter, _originalIndex: index });
|
||||||
setEditFilterModalOpen(true);
|
setEditFilterModalOpen(true);
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleSaveEditFilter = async (updatedFilter) => {
|
const handleSaveEditFilter = async (updatedFilter) => {
|
||||||
const updatedFilters = serverFilters.map(f =>
|
const updatedFilters = [...serverFilters];
|
||||||
f.community === updatedFilter.community ? { ...updatedFilter } : f
|
if (updatedFilter._originalIndex !== undefined) {
|
||||||
);
|
updatedFilters[updatedFilter._originalIndex] = {
|
||||||
|
community: updatedFilter.community,
|
||||||
|
gateway: updatedFilter.gateway,
|
||||||
|
description: updatedFilter.description
|
||||||
|
};
|
||||||
|
}
|
||||||
setServerFilters(updatedFilters);
|
setServerFilters(updatedFilters);
|
||||||
setEditFilterModalOpen(false);
|
setEditFilterModalOpen(false);
|
||||||
setEditingFilter(null);
|
setEditingFilter(null);
|
||||||
@@ -1075,7 +1080,7 @@ function FilterManager() {
|
|||||||
<div className="btn-list">
|
<div className="btn-list">
|
||||||
<button
|
<button
|
||||||
className="btn btn-outline-primary btn-icon btn-sm"
|
className="btn btn-outline-primary btn-icon btn-sm"
|
||||||
onClick={() => handleEditFilter(filter)}
|
onClick={() => handleEditFilter(filter, index)}
|
||||||
title="Редактировать фильтр"
|
title="Редактировать фильтр"
|
||||||
>
|
>
|
||||||
<IconEdit size={16} />
|
<IconEdit size={16} />
|
||||||
|
|||||||
Reference in New Issue
Block a user