diff options
| author | Ruben Beltran del Rio <jj@r.bdr.sh> | 2026-01-30 11:31:24 +0100 |
|---|---|---|
| committer | Ruben Beltran del Rio <jj@r.bdr.sh> | 2026-01-30 13:05:48 +0100 |
| commit | 0d4b61993cba37c180ac91e40a0fb362711de8de (patch) | |
| tree | f41dd68420b51766c1ca6fc1ee2c20dc5df830d1 /src/components/ControlSlider.tsx | |
Initial implementation
Diffstat (limited to 'src/components/ControlSlider.tsx')
| -rw-r--r-- | src/components/ControlSlider.tsx | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/components/ControlSlider.tsx b/src/components/ControlSlider.tsx new file mode 100644 index 0000000..34d3c82 --- /dev/null +++ b/src/components/ControlSlider.tsx @@ -0,0 +1,36 @@ +import React from "react"; + +interface ControlSliderProps { + label: string; + name: string; + value: number; + min: number; + max: number; + step: number; + onChange: (value: string) => void; +} + +export const ControlSlider: React.FC<ControlSliderProps> = ({ + label, + name, + value, + min, + max, + step, + onChange, +}) => { + return ( + <div className="control-row"> + <label>{label}</label> + <input + type="range" + name={name} + min={min} + max={max} + value={value} + onChange={(event) => onChange(event.target.value)} + step={step} + /> + </div> + ); +}; |