import { Button, Group, Select, Stack, Text, TextInput, Title, UnstyledButton, } from "@mantine/core"; import type { LoggingLevel } from "@modelcontextprotocol/sdk/types.js"; const LOG_LEVELS: LoggingLevel[] = [ "debug", "info", "notice", "warning", "error", "critical", "alert", "emergency", ]; const LEVEL_COLORS: Record = { debug: { c: "dimmed" }, info: { c: "blue" }, notice: { c: "teal" }, warning: { c: "yellow" }, error: { c: "red" }, critical: { c: "red" }, alert: { c: "red" }, emergency: { c: "red" }, }; const SubtleButton = Button.withProps({ variant: "subtle", size: "xs", }); export interface LogControlsProps { currentLevel: LoggingLevel; filterText: string; visibleLevels: Record; onSetLevel: (level: LoggingLevel) => void; onFilterChange: (text: string) => void; onToggleLevel: (level: LoggingLevel, visible: boolean) => void; onToggleAllLevels: () => void; } export function LogControls({ currentLevel, filterText, visibleLevels, onSetLevel, onFilterChange, onToggleLevel, onToggleAllLevels, }: LogControlsProps) { return ( Logging onFilterChange(e.currentTarget.value)} /> Set Active Level