UNPKG

@tolokoban/ui

Version:

React components with theme

17 lines 2.64 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { Theme } from "../../theme/index.js"; import { useChangeableValue } from "../../hooks/changeable-value.js"; import Styles from "./Slider.module.css"; const $ = Theme.classNames; export function ViewSlider({ min, max, step, className, wide, text, value, onChange, }) { const [val, setVal] = useChangeableValue({ value, onChange }); return (_jsxs("div", { className: $.join(className, Styles.Slider, wide ? "wide" : ""), children: [_jsx("input", { type: "range", min: min !== null && min !== void 0 ? min : 0, max: max !== null && max !== void 0 ? max : 0, step: step !== null && step !== void 0 ? step : 1, value: val, onChange: (evt) => setVal(parseFloat(evt.target.value)) }), text && _jsx("div", { children: computeText(text, val) })] })); } function computeText(text, value) { if (typeof text === "string") return text; if (typeof text === "number") return `${text}`; return text(value); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2xpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ZpZXcvU2xpZGVyL1NsaWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUU1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUVqRSxPQUFPLE1BQU0sTUFBTSxxQkFBcUIsQ0FBQTtBQUV4QyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFBO0FBZ0IxQixNQUFNLFVBQVUsVUFBVSxDQUFDLEVBQ3ZCLEdBQUcsRUFDSCxHQUFHLEVBQ0gsSUFBSSxFQUNKLFNBQVMsRUFDVCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssRUFDTCxRQUFRLEdBQ007SUFDZCxNQUFNLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHLGtCQUFrQixDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFDN0QsT0FBTyxDQUNILGVBQUssU0FBUyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxhQUNoRSxnQkFDSSxJQUFJLEVBQUMsT0FBTyxFQUNaLEdBQUcsRUFBRSxHQUFHLGFBQUgsR0FBRyxjQUFILEdBQUcsR0FBSSxDQUFDLEVBQ2IsR0FBRyxFQUFFLEdBQUcsYUFBSCxHQUFHLGNBQUgsR0FBRyxHQUFJLENBQUMsRUFDYixJQUFJLEVBQUUsSUFBSSxhQUFKLElBQUksY0FBSixJQUFJLEdBQUksQ0FBQyxFQUNmLEtBQUssRUFBRSxHQUFHLEVBQ1YsUUFBUSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsR0FDekQsRUFDRCxJQUFJLElBQUksd0JBQU0sV0FBVyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsR0FBTyxJQUMxQyxDQUNULENBQUE7QUFDTCxDQUFDO0FBRUQsU0FBUyxXQUFXLENBQ2hCLElBQW1ELEVBQ25ELEtBQWE7SUFFYixJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFPLElBQUksQ0FBQTtJQUN6QyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFPLEdBQUcsSUFBSSxFQUFFLENBQUE7SUFDOUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7QUFDdEIsQ0FBQyJ9