UNPKG

jb-checkbox

Version:
2 lines 1.59 kB
import e,{useCallback as r,useEffect as t,useImperativeHandle as a,useRef as n}from"react";import"jb-checkbox";function u(e,a,n,i=!1){let s=r(r=>{e.current&&"function"==typeof n&&n(r)},[e,n]);t(()=>{let r=e.current;return r&&r.addEventListener(a,s,{passive:i,capture:!1}),function(){r&&r.removeEventListener(a,s,{passive:i,capture:!1})}},[e,a,n,i])}let i=e.forwardRef((r,i)=>{var s;let o=n(null);return a(i,()=>o?o.current:void 0,[o]),t(()=>{s.name?o?.current?.setAttribute("name",s.name||""):o?.current?.removeAttribute("name")},[(s=r).name]),t(()=>{s.message?o.current.setAttribute("message",s.message):o.current.removeAttribute("message")},[s.message]),t(()=>{o&&o.current&&(o.current.validation.list=s.validationList||[])},[s.validationList]),t(()=>{"boolean"==typeof s.disabled&&s.disabled?o?.current?.setAttribute("disabled",""):o?.current?.removeAttribute("disabled")},[s.disabled]),t(()=>{"string"==typeof s.required&&o?.current?.setAttribute("required",s.required),"boolean"==typeof s.required&&(s.required?o?.current?.setAttribute("required",""):o?.current?.removeAttribute("required"))},[s.required]),t(()=>{o.current&&null!==s.value&&void 0!==s.value&&(o.current.value=s.value)},[s.value]),t(()=>{s.error?o?.current?.setAttribute("error",s.error):o?.current?.removeAttribute("error")},[s.error]),u(o,"before-change",r.onBeforeChange,!0),u(o,"change",r.onChange,!0),e.createElement("jb-checkbox",{class:r.className?r.className:"",label:r.label?r.label:"",ref:o,style:r.style},r.children)});i.displayName="JBSwitch";export{i as JBCheckbox}; //# sourceMappingURL=JBCheckbox.js.map