@lanaco/lnc-react-ui
Version:
React component library
8 lines (7 loc) • 1.51 kB
JavaScript
"use strict";const p=require("react/jsx-runtime"),n=require("react"),I=require("./emotion-styled.browser.esm-Cle7tAM9.cjs"),e=require("./index-BPVoEhTF.cjs"),O=require("./RadioInput.cjs"),R=require("./emotion-element-f0de968e.browser.esm-B7k6i6lC.cjs"),_=I.newStyled.div`
display: inline-flex;
flex-direction: ${s=>s.inline===!0?"row":"column"};
gap: 1.5rem;
width: fit-content;
box-sizing: border-box;
`,t=n.forwardRef((s,l)=>{const{id:d="",name:c,value:o=null,disabled:y=!1,readOnly:u=!1,items:m=[],mapId:z="id",mapValue:S="value",radioProps:P,inline:T=!0,onChange:a=()=>{},className:f="",style:g={},size:b="small",color:h="primary",...x}=s;var v=R.useTheme();const[w,q]=n.useState(null);n.useEffect(()=>{o!==w&&q(o)},[o]);var C={color:h,theme:v,size:b,disabled:y,readOnly:u};const j=(r,i)=>{a&&a(r)};return p.jsx(_,{ref:l,id:d,inline:T,style:g,className:f,...x,children:m.map((r,i)=>p.jsx(O,{...C,label:r.label,value:r.value,...P,onChange:j,name:c},i))})});t.propTypes={id:e.PropTypes.string,name:e.PropTypes.string,value:e.PropTypes.any,disabled:e.PropTypes.bool,readOnly:e.PropTypes.bool,items:e.PropTypes.arrayOf(e.PropTypes.object),mapId:e.PropTypes.string,mapValue:e.PropTypes.string,inline:e.PropTypes.bool,onChange:e.PropTypes.func,className:e.PropTypes.string,style:e.PropTypes.object,size:e.PropTypes.oneOf(["small","medium","large"]),color:e.PropTypes.oneOf(["primary","secondary","success","danger","warning","information","neutral","gray"]),radioProps:e.PropTypes.any};module.exports=t;