@jengaui/slider
Version:
Jenga UI Slider component in React
9 lines (6 loc) • 696 B
JavaScript
import { useCallback } from 'react';
import { Flow } from '@jengaui/layout';
import { NumberInput } from '@jengaui/number-input';
import { jsx } from 'react/jsx-runtime';
function c(u,n){if(typeof u>"u")return;let e=String(u).length,t=e>2?1.6:1.75;return `${e*(n?t:2)}x`}function P(u){let{state:n,index:e,suffix:t,min:i,max:r,...o}=u,m=n.values[e],s=c(r,!!t),l=useCallback(d=>{n.setThumbValue(e,d);},[e,n]),p=typeof r<"u"?String(r).length:void 0;return jsx(NumberInput,{...o,hideStepper:!0,size:"small",inputStyles:{width:s},suffix:t&&jsx(Flow,{padding:"1.5x right",children:t}),value:m,minValue:n.getThumbMinValue(e),maxValue:n.getThumbMaxValue(e),maxLength:p,onChange:l})}
export { P as a };