From 38204b6708d294f7372bd526c3f0154885edb014 Mon Sep 17 00:00:00 2001 From: RekHoto Date: Thu, 7 Sep 2023 15:29:05 +0400 Subject: [PATCH] popup fix --- src/Map/Popup/Popup.jsx | 9 ++-- .../Popup/mode-popup/PendingPointPopup.jsx | 39 ++------------ src/utils.js | 51 +++++++++++++++++++ 3 files changed, 60 insertions(+), 39 deletions(-) diff --git a/src/Map/Popup/Popup.jsx b/src/Map/Popup/Popup.jsx index a0591f6..46d3a3f 100644 --- a/src/Map/Popup/Popup.jsx +++ b/src/Map/Popup/Popup.jsx @@ -11,9 +11,10 @@ import { usePopup } from "../../stores/usePopup.js"; import { PanoramaIcon } from "../../icons/PanoramaIcon"; import {useOtherGroups, usePostamatesAndPvzGroups} from "../../api.js"; import {useMemo} from "react"; -import {getFilteredGroups} from "../../utils.js"; +import {doesMatchFilter, getFilteredGroups} from "../../utils.js"; import Checkbox from "antd/es/checkbox/Checkbox"; import {usePointSelection} from "../../stores/usePointSelection.js"; +import {usePendingPointsFilters} from "../../stores/usePendingPointsFilters.js"; const getRivalsName = (feature) => { const { data: postamatesAndPvzGroups } = usePostamatesAndPvzGroups(); @@ -88,12 +89,14 @@ const SingleFeaturePopup = ({ feature }) => { const MultipleFeaturesPopup = ({ features }) => { const { setPopup } = usePopup(); const { selection, include, exclude } = usePointSelection(); + const { filters, ranges } = usePendingPointsFilters(); return (
{features.map((feature) => { const featureId = feature.properties.id; - const isSelected = !selection.excluded.has(featureId) || selection.included.has(featureId); + const isSelected = (doesMatchFilter(filters, ranges, feature) && !selection.excluded.has(featureId)) || + selection.included.has(featureId); const handleSelect = () => { if (isSelected) { exclude(featureId); @@ -111,7 +114,7 @@ const MultipleFeaturesPopup = ({ features }) => { )}