primereact
Version:
A rich set of premium UI Components for React.
4 lines (2 loc) • 1.34 kB
JavaScript
'use client';
import{Component as x,withComponent as y}from"@primereact/core/component";import{cn as I,mergeProps as p,resolve as P}from"@primeuix/utils";import*as o from"react";import{createOptionalContext as b}from"@primereact/core/utils";var[C,l]=b();var s={as:"div",index:0,ariaLabel:void 0,ariaLabelledby:void 0,name:void 0,tabIndex:void 0,disabled:!1,readOnly:!1,invalid:!1,inputId:void 0,inputStyle:void 0,inputClassName:void 0,onFocus:void 0,onBlur:void 0};var R=y({name:"Slider.Handle",defaultProps:s,setup(t){let{props:e}=t,r=l(),n=e.index??0,a=!!(r?.props.disabled||e.disabled),d=!!(r?.props.readOnly||e.readOnly);return{slider:r,handleIndex:n,disabled:a,readOnly:d}},render(t){let{props:e,ptmi:r,slider:n,handleIndex:a,disabled:d,readOnly:m}=t,i=n?.getHandleProps?.(a),u=p(i,{className:n?.cx("handle"),style:{...i?.style,...n?.sx("handle")},...d?{"data-disabled":""}:{}},n?.ptm("handle"),r("root")),c=(()=>{let f=p(n?.getHiddenInputProps?.(a),{id:e.inputId,style:e.inputStyle,className:I(n?.cx("input"),e.inputClassName),name:e.name,tabIndex:d?-1:e.tabIndex??0,disabled:d,readOnly:m,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},n?.ptm("input"));return o.createElement("input",{...f})})();return o.createElement(x,{instance:t,attrs:u},c,P(e.children,t))}});export{R as SliderHandle,s as defaultHandleProps};