"use client"; import { CATEGORIES, PROFILES, PROFILE_IDS, VALID_THRESHOLDS } from "@transportationer/shared"; import type { CategoryId, TravelMode, ProfileId } from "@transportationer/shared"; const TRAVEL_MODES: Array<{ value: TravelMode; label: string; icon: string; description: string }> = [ { value: "cyclist", label: "Cyclist", icon: "🚢🚲🚌", description: "Best of walking, cycling & transit β€” for people who cycle and use public transport" }, { value: "cycling_walk", label: "Cyclist (no transit)", icon: "🚢🚲", description: "Best of walking & cycling only β€” for cyclists who avoid public transport" }, { value: "transit_walk", label: "Transit + Walk", icon: "🚢🚌", description: "Best of walking & transit β€” for people without a bike" }, { value: "walking", label: "Walker", icon: "🚢", description: "Walking only β€” for people who rely solely on foot travel" }, { value: "cycling", label: "Cycling only", icon: "🚲", description: "Raw cycling travel times, unblended" }, { value: "transit", label: "Transit only", icon: "🚌", description: "Raw transit travel times, unblended" }, { value: "driving", label: "Driving only", icon: "πŸš—", description: "Raw driving travel times, unblended" }, ]; type BaseOverlay = "accessibility" | "estate-value" | "hidden-gem"; interface ControlPanelProps { profile: ProfileId; mode: TravelMode; threshold: number; weights: Record; activeCategory: CategoryId | "composite"; baseOverlay: BaseOverlay; estateValueAvailable: boolean; onProfileChange: (p: ProfileId) => void; onModeChange: (m: TravelMode) => void; onThresholdChange: (t: number) => void; onWeightChange: (cat: CategoryId, w: number) => void; onCategoryChange: (cat: CategoryId | "composite") => void; onBaseOverlayChange: (o: BaseOverlay) => void; } export function ControlPanel({ profile, mode, threshold, weights, activeCategory, baseOverlay, estateValueAvailable, onProfileChange, onModeChange, onThresholdChange, onWeightChange, onCategoryChange, onBaseOverlayChange, }: ControlPanelProps) { return ( ); }