/** * DXClusterPanel Component * Displays DX cluster spots with filtering controls */ import React from 'react'; import { getBandColor } from '../utils/callsign.js'; export const DXClusterPanel = ({ data, loading, totalSpots, filters, onOpenFilters, onHoverSpot, hoveredSpot }) => { const getActiveFilterCount = () => { let count = 0; if (filters?.cqZones?.length) count++; if (filters?.ituZones?.length) count++; if (filters?.continents?.length) count++; if (filters?.bands?.length) count++; if (filters?.modes?.length) count++; if (filters?.watchlist?.length) count++; if (filters?.excludeList?.length) count++; if (filters?.callsign) count++; if (filters?.watchlistOnly) count++; return count; }; const filterCount = getActiveFilterCount(); return (