@tomorrowevening/hermes
Version:
An extendable set of Web Tools controlled via a separate window for non-intereference with content.
2 lines (1 loc) • 1.2 kB
JavaScript
"use strict";const a=require("react/jsx-runtime"),m=require("react"),g=require("./utils/DragNumber.cjs"),s=require("../../../core/types.cjs"),r=require("../../utils.cjs");function c(e){const u=m.useRef(null),d=m.useRef(null),[i,l]=m.useState(e.value);return g({label:e.labelRef,input:u,sliderRef:d,defaultValue:i,min:e.min,max:e.max,step:e.step,onChange:n=>{l(n),e.onChange!==void 0&&e.onChange(e.prop,n)}}),a.jsxs(a.Fragment,{children:[e.type==="number"&&a.jsx("input",{alt:e.alt,className:e.className,ref:u,type:"number",value:i,min:e.min,max:e.max,step:e.step,disabled:e.disabled,name:r.randomID(),onChange:n=>{if(l(n.target.value),n.target.value.length===0)return;const t=Number(n.target.value);isNaN(t)||e.onChange!==void 0&&e.onChange(e.prop,t)}}),e.type==="range"&&a.jsxs(a.Fragment,{children:[a.jsx("input",{type:"text",value:i.toString(),disabled:e.disabled,ref:u,className:"min",name:r.randomID(),onChange:n=>{if(n.target.value.length===0)return;const t=Number(n.target.value);isNaN(t)||(l(t),e.onChange!==void 0&&e.onChange(e.prop,t))}}),a.jsx("input",{disabled:e.disabled,type:"range",value:i,min:e.min,max:e.max,step:e.step,ref:d,name:r.randomID(),onChange:s.noop})]})]})}module.exports=c;