'use client'; import type * as React from 'react'; import { cn } from '@djangocfg/ui-core/lib'; export interface MicMeterProps { /** RMS level 0..1 (use the value returned by `useMicLevel`). */ level: number; /** Number of bars rendered. @default 12 */ bars?: number; /** Bar gap in px. @default 2 */ gap?: number; /** Bar width in px. @default 3 */ barWidth?: number; /** Container height in px. @default 24 */ height?: number; className?: string; } /** * Discrete-bar VU meter — small, dependency-free, no canvas. Each bar * lights up when the current `level` exceeds its threshold. Centre bars * are tallest so the meter reads like a classic mic level indicator. */ export function MicMeter({ level, bars = 12, gap = 2, barWidth = 3, height = 24, className, }: MicMeterProps): React.ReactElement { const clamped = Math.min(1, Math.max(0, level)); return (