From cbf6e5df4972b43cae8af5b71b6b25d7d484d47c Mon Sep 17 00:00:00 2001 From: majkshkurti Date: Thu, 17 Oct 2024 15:26:43 +0200 Subject: [PATCH] fix: goat-community/goat#3345 --- .../components/map/panels/toolbox/tools/buffer/Buffer.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/web/components/map/panels/toolbox/tools/buffer/Buffer.tsx b/apps/web/components/map/panels/toolbox/tools/buffer/Buffer.tsx index 32d72e11..4d3d50da 100644 --- a/apps/web/components/map/panels/toolbox/tools/buffer/Buffer.tsx +++ b/apps/web/components/map/panels/toolbox/tools/buffer/Buffer.tsx @@ -39,9 +39,7 @@ const Buffer = ({ onBack, onClose }: IndicatorBaseProps) => { }); const dispatch = useAppDispatch(); const runningJobIds = useAppSelector((state) => state.jobs.runningJobIds); - const isValid = useMemo(() => { - return true; - }, []); + const [bufferLayer, setBufferLayer] = useState(undefined); const [distance, setDistance] = useState(bufferDefaults.default_distance); const [steps, setSteps] = useState({ @@ -56,6 +54,10 @@ const Buffer = ({ onBack, onClose }: IndicatorBaseProps) => { const { scenarioItems } = useScenarioItems(projectId as string); const [selectedScenario, setSelectedScenario] = useState(undefined); + const isValid = useMemo(() => { + return !!bufferLayer && distance > 0; + }, [bufferLayer, distance]); + useEffect(() => { if (!isPolygonUnion) { setIsPolygonDifference(false);