UNPKG

@lanaco/lnc-react-ui

Version:

React component library

32 lines (31 loc) 2.47 kB
"use strict";const u=require("react/jsx-runtime"),l=require("react"),R=require("./emotion-styled.browser.esm-Cle7tAM9.cjs"),r=require("./index-BPVoEhTF.cjs"),q=require("./index-DaiUAQVF.cjs"),t=require("./utils-NZLCh-J5.cjs"),v=require("./emotion-element-f0de968e.browser.esm-B7k6i6lC.cjs"),O=({theme:e,size:i})=>{var s=t.getSizeValueWithUnits(e,i);return` min-height: ${s}; max-height: ${s}; `},w=R.newStyled.input` ${e=>O(e)} ${e=>t.getComponentTypographyCss(e.theme,"Input",e.size,"enabled")} padding: 0.625rem 0.75rem 0.62rem 0.75rem; line-height: inherit; appearance: none; outline: none; display: inline-block; border-radius: 0.25rem; width: 100%; box-sizing: border-box; background-color: ${e=>t.getColorRgbaValue(e.theme,"Input",e.color,"enabled","background")}; border: 1px solid ${e=>t.getColorRgbaValue(e.theme,"Input",e.color,e.disabled===!0?"disabled":"enabled","border")}; border-radius: ${e=>t.getBorderRadiusValueWithUnits(e.theme,"regular")}; color: ${e=>t.getColorRgbaValue(e.theme,"Input",e.color,"enabled","text")}; &:disabled { ${e=>t.getDisabledStateCss(e.theme)}; cursor: default; } &:focus:enabled { border: none; ${e=>e.readOnly!==!0?t.getOutlineCss(e.theme):""}; color: ${e=>t.getColorRgbaValue(e.theme,"Input","primary","enabled","text")}; border: 1px solid ${e=>t.getColorRgbaValue(e.theme,"Input","primary",e.disabled===!0?"disabled":"enabled","border")}; } `,c=l.forwardRef((e,i)=>{const{disabled:s,readOnly:m,defaultValue:g,value:o,debounceTime:p=0,onChange:a,className:y="",style:h={},size:T="small",color:C="primary",...f}=e,x=v.useTheme(),[$,b]=l.useState(o||g||"");l.useEffect(()=>{o!=null&&b(o)},[o]);const P=l.useCallback(q.debounce((n,d)=>V(n,d),p),[a]),V=(n,d)=>{a&&(a==null||a(n,d))},I=n=>{b(n.target.value),P(n,n.target.value)};return u.jsx(u.Fragment,{children:u.jsx(w,{type:"time",ref:i,onChange:I,disabled:s,readOnly:m,theme:x,color:C,size:T,className:y,style:h,value:$,...f})})});c.propTypes={id:r.PropTypes.string,defaultValue:r.PropTypes.string,value:r.PropTypes.string,disabled:r.PropTypes.bool,readOnly:r.PropTypes.bool,debounceTime:r.PropTypes.number,tabIndex:r.PropTypes.number,onChange:r.PropTypes.func,className:r.PropTypes.string,style:r.PropTypes.object,size:r.PropTypes.oneOf(["small","medium","large"]),color:r.PropTypes.oneOf(["primary","secondary","success","danger","warning","information","neutral","gray"])};module.exports=c;