import { parameterRegistry } from '../../domain/modulation/ParameterRegistry' interface Mapping { targetParam: string depth: number } interface MappingEditorProps { lfoIndex: number mappings: Mapping[] onUpdateDepth: (paramId: string, depth: number) => void onRemoveMapping: (paramId: string) => void onClose: () => void } export function MappingEditor({ lfoIndex, mappings, onUpdateDepth, onRemoveMapping, onClose }: MappingEditorProps) { return ( <>
e.stopPropagation()} >

LFO {lfoIndex + 1} MAPPINGS

{mappings.length === 0 ? (
NO MAPPINGS
) : (
{mappings.map((mapping) => { const meta = parameterRegistry.getMetadata(mapping.targetParam) return (
{meta?.label ?? mapping.targetParam}
onUpdateDepth(mapping.targetParam, Number(e.target.value))} className="flex-1 h-[2px] appearance-none cursor-pointer slider bg-white" /> {mapping.depth}%
) })}
)}
) }