mirror of
https://github.com/bitsocialnet/5chan.git
synced 2026-08-03 07:41:04 +02:00
fix(catalog filters): clicking "save" button didn't close the modal
This commit is contained in:
@@ -5,7 +5,7 @@ import { isAllView, isCatalogView } from '../../../lib/utils/view-utils';
|
|||||||
import useCatalogFiltersStore from '../../../stores/use-catalog-filters-store';
|
import useCatalogFiltersStore from '../../../stores/use-catalog-filters-store';
|
||||||
import styles from './catalog-filters.module.css';
|
import styles from './catalog-filters.module.css';
|
||||||
|
|
||||||
const FiltersTable = () => {
|
const FiltersTable = ({ onSave }: { onSave: () => void }) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
const { filterItems, saveAndApplyFilters } = useCatalogFiltersStore();
|
const { filterItems, saveAndApplyFilters } = useCatalogFiltersStore();
|
||||||
|
|
||||||
@@ -18,7 +18,8 @@ const FiltersTable = () => {
|
|||||||
const handleSave = useCallback(() => {
|
const handleSave = useCallback(() => {
|
||||||
const nonEmptyFilters = localFilterItems.filter((item) => item.text.trim() !== '');
|
const nonEmptyFilters = localFilterItems.filter((item) => item.text.trim() !== '');
|
||||||
saveAndApplyFilters(nonEmptyFilters);
|
saveAndApplyFilters(nonEmptyFilters);
|
||||||
}, [saveAndApplyFilters, localFilterItems]);
|
onSave();
|
||||||
|
}, [saveAndApplyFilters, localFilterItems, onSave]);
|
||||||
|
|
||||||
const updateLocalFilterItem = useCallback((index: number, item: any) => {
|
const updateLocalFilterItem = useCallback((index: number, item: any) => {
|
||||||
setLocalFilterItems((prev) => prev.map((f, i) => (i === index ? item : f)));
|
setLocalFilterItems((prev) => prev.map((f, i) => (i === index ? item : f)));
|
||||||
@@ -139,7 +140,7 @@ const FiltersModal = ({ closeModal }: { closeModal: () => void }) => {
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
{isInCatalogView && <FiltersTable />}
|
{isInCatalogView && <FiltersTable onSave={closeModal} />}
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user