primereact
Version:
A rich set of premium UI Components for React.
4 lines (2 loc) • 1.61 kB
JavaScript
'use client';
import{Component as C,withComponent as B}from"@primereact/core/component";import{useRadioButton as h}from"@primereact/headless/radiobutton";import{cn as P,equals as f,mergeProps as c,resolve as b}from"@primeuix/utils";import{useRadioButtonGroupContext as g}from"primereact/radiobuttongroup";import*as t from"react";import{createOptionalContext as v}from"@primereact/core/utils";var[s,x]=v();import*as l from"@primereact/headless/radiobutton";var m={...l.defaultProps,as:"div",value:void 0,name:void 0,size:void 0,variant:void 0,tabIndex:void 0,disabled:!1,readOnly:!1,required:!1,invalid:!1,inputId:void 0,inputStyle:void 0,inputClassName:void 0,ariaLabel:void 0,ariaLabelledby:void 0,onFocus:void 0,onBlur:void 0};var S=B({name:"RadioButton.Root",defaultProps:m,setup(n){let{props:e,inProps:a,id:d}=n,o=g(),i=e.value??d,u=o?{...a,checked:f(o.state.value,i),defaultChecked:f(o.props.defaultValue,e.value),name:e.name??o.props.name,disabled:e.disabled||o.props.disabled,invalid:e.invalid||o.props.invalid,onCheckedChange:t.useCallback(r=>o.updateChange({...r,value:i}),[o.updateChange,i])}:{...a,onCheckedChange:t.useCallback(r=>e.onCheckedChange?.({...r,value:e.value}),[e.onCheckedChange])};return{...h(u),group:o}},render(n){let{id:e,props:a,ptmi:d,ptm:o,cx:i,inputProps:u,rootProps:p}=n,r=c(u,{style:a.inputStyle,className:P(i("input"),a.inputClassName)},o("input")),R=c(p,{id:e,className:i("root")},d("root"));return t.createElement(s,{value:n},t.createElement(C,{instance:n,attrs:R},t.createElement("input",{...r}),b(a.children,n)))}});export{S as RadioButtonRoot,m as defaultRootProps};