From 5b710d12475d0f650aa77970cf06c8b72a5b8bba Mon Sep 17 00:00:00 2001 From: Huarch Date: Wed, 28 Oct 2026 14:47:33 +0800 Subject: [PATCH] feat: extend map targeting and overlay controls Support batch feature targeting and clear map highlights and overlays from the More panel. Remove misleading action chevrons and unused configuration export entries. Validated the isolated patch with lint, typecheck, 36 focused tests and 5 browser cases using mocked data. --- .../map/core/components/control-panel.tsx | 6 +- .../map/core/components/measure-panel.tsx | 16 +- .../components/map-dev-panel.test.tsx | 24 ++ .../workbench/components/map-dev-panel.tsx | 56 ++-- .../workbench/components/toolbar-panel.tsx | 18 +- .../components/workbench-top-bar-menus.tsx | 4 - .../components/workbench-top-bar.tsx | 3 - ...nvestigation-presentation-follower.test.ts | 18 ++ .../investigation-presentation-follower.ts | 7 + .../hooks/use-investigation-presentation.ts | 65 +++-- src/features/workbench/index.ts | 1 + src/features/workbench/map-workbench-page.tsx | 32 +-- .../map/workbench-map-controller.test.ts | 106 ++++++++ .../workbench/map/workbench-map-controller.ts | 251 ++++++++++-------- tests/browser/map-clear-overlays.e2e.ts | 84 ++++++ .../browser/map-multi-feature-location.e2e.ts | 60 +++++ .../mock-investigation-presentation.ts | 117 ++++++++ 17 files changed, 666 insertions(+), 202 deletions(-) create mode 100644 tests/browser/map-clear-overlays.e2e.ts create mode 100644 tests/browser/map-multi-feature-location.e2e.ts create mode 100644 tests/browser/support/mock-investigation-presentation.ts diff --git a/src/features/map/core/components/control-panel.tsx b/src/features/map/core/components/control-panel.tsx index 93d3173..914025c 100644 --- a/src/features/map/core/components/control-panel.tsx +++ b/src/features/map/core/components/control-panel.tsx @@ -1,4 +1,4 @@ -import { ChevronRight, type LucideIcon } from "lucide-react"; +import type { LucideIcon } from "lucide-react"; import type { ReactNode } from "react"; import { cn } from "@/shared/ui/cn"; import { @@ -204,9 +204,7 @@ export function MapActionRow({ > {status} - ) : ( -