jb-form
Version:
form web component with extended feature like validation and dirty check
2 lines • 1.65 kB
JavaScript
;let e,t;var r=Object.create,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,u=Object.getOwnPropertyNames,a=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;const c=(t=null!=(e=require("react"))?r(a(e)):{},((e,t,r,a)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var c,i=u(t),s=0,f=i.length;s<f;s++)c=i[s],l.call(e,c)||void 0===c||n(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(a=o(t,c))||a.enumerable});return e})(e&&e.__esModule?t:n(t,"default",{value:e,enumerable:!0}),e));function i(e,t,r,n=!1){let o=(0,c.useCallback)(t=>{e.current&&"function"==typeof r&&r(t)},[e,r]);(0,c.useEffect)(()=>{let r=e.current;return r&&r.addEventListener(t,o,{passive:n,capture:!1}),function(){r&&r.removeEventListener(t,o,{passive:n,capture:!1})}},[e,t,r,n])}require("jb-form");const s=(0,c.createContext)(null),f=s.Provider,d=c.default.forwardRef((e,t)=>{var r;let{onSubmit:n,name:o,onValidityChange:u,onDirtyChange:a,children:l,...s}=e,d=c.default.useRef(null);return(0,c.useImperativeHandle)(t,()=>d.current??void 0,[d]),i(d,"load",(r={onSubmit:n,onValidityChange:u,onDirtyChange:a}).onLoad,!0),i(d,"init",r.onInit,!0),i(d,"validity-change",r.onValidityChange),i(d,"dirty-change",r.onDirtyChange),i(d,"submit",r.onSubmit),(0,c.useEffect)(()=>{d.current&&(o?d.current.setAttribute("name",o):d.current.removeAttribute("name"))},[d.current,o]),c.default.createElement("form",{is:"jb-form",ref:d,...s},c.default.createElement(f,{value:d.current??null},l))});d.displayName="JBForm",exports.JBForm=d,exports.JBFormContext=s,exports.JBFormProvider=f,exports.useJBForm=()=>(0,c.useContext)(s);
//# sourceMappingURL=JBForm.cjs.js.map