/** * VerbFXMode — verb / fx unit (joystick input, ~47 outputs). */ import { Component, createSignal } from 'solid-js'; import { ModeShell } from './ModeShell'; import { useModeRuntime } from './mode-runtime'; import { VirtualJoystick } from '../primitives/VirtualJoystick'; import { OutputDisplay } from '../primitives/OutputDisplay'; import { SliderBank } from '../primitives/SliderBank'; import { LossPlot } from '../primitives/LossPlot'; import { paramsToSliderConfig, outputsToSliderValues } from './mode-helpers'; import { VerbFxSchema } from './generated/verb_fx_schema'; export const VerbFXMode: Component = () => { const schema = VerbFxSchema; const runtime = useModeRuntime(schema); const [voiceSpace, setVoiceSpace] = createSignal(0); const sliderConfig = paramsToSliderConfig(schema.params); const sliderValues = () => outputsToSliderValues(runtime.processedOutputs(), schema.params); return ( ( { /* read-only */ }} /> )} primaryInput={() => ( <> runtime.setInput(x, y)} position={runtime.pipedInput} /> Sweep through verb space. Voice space:  {schema.voice_spaces[voiceSpace()] ?? 'Default'} )} outputArea={() => ( <> )} /> ); }; export default VerbFXMode;