import type RangeSlider from "./RangeSlider.js"; import SliderTooltip from "./SliderTooltip.js"; import SliderHandle, { SliderHandleType } from "./SliderHandle.js"; import SliderScale from "./SliderScale.js"; const _handlePosition = (min: number, max: number, value: number) => { const range = max - min; const position = ((value - min) / range) * 100; return position; }; const startHandle = (slider: RangeSlider) => { const position = _handlePosition(slider.min, slider.max, slider.startValue); return ( <> {startTooltip(slider)} ); }; const endHandle = (slider: RangeSlider) => { const position = _handlePosition(slider.min, slider.max, slider.endValue); return ( <> {endTooltip(slider)} ); }; const startTooltip = (slider: RangeSlider) => ( ); const endTooltip = (slider: RangeSlider) => ( ); export default function RangeSliderTemplate(this: RangeSlider) { return ( <>
{startHandle(this)} {endHandle(this)} {this.editableTooltip && <> {this._ariaDescribedByInputText} }
); }