react-hook-form-mui
Version:
<div align="center"> <a href="https://react-hook-form-material-ui.vercel.app/" rel="noopener" target="_blank"> <img src="./rhf-mui.png" alt="Material-UI and react-hook-form combined" /> </a> </div>
1 lines • 27.3 kB
JavaScript
"use client";function e(e,r){if(r==null||r>e.length)r=e.length;for(var o=0,n=new Array(r);o<r;o++)n[o]=e[o];return n}function r(e){if(Array.isArray(e))return e}function o(r){if(Array.isArray(r))return e(r)}function n(e,r,o){if(r in e){Object.defineProperty(e,r,{value:o,enumerable:true,configurable:true,writable:true})}else{e[r]=o}return e}function t(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,r){var o=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(o==null)return;var n=[];var t=true;var i=false;var a,l;try{for(o=o.call(e);!(t=(a=o.next()).done);t=true){n.push(a.value);if(r&&n.length===r)break}}catch(e){i=true;l=e}finally{try{if(!t&&o["return"]!=null)o["return"]()}finally{if(i)throw l}}return n}function a(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(e){for(var r=1;r<arguments.length;r++){var o=arguments[r]!=null?arguments[r]:{};var t=Object.keys(o);if(typeof Object.getOwnPropertySymbols==="function"){t=t.concat(Object.getOwnPropertySymbols(o).filter(function(e){return Object.getOwnPropertyDescriptor(o,e).enumerable}))}t.forEach(function(r){n(e,r,o[r])})}return e}function s(e,r){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(r){n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})}o.push.apply(o,n)}return o}function d(e,r){r=r!=null?r:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(r))}else{s(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}function f(e,r){if(e==null)return{};var o=p(e,r);var n,t;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(t=0;t<i.length;t++){n=i[t];if(r.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;o[n]=e[n]}}return o}function p(e,r){if(e==null)return{};var o={};var n=Object.keys(e);var t,i;for(i=0;i<n.length;i++){t=n[i];if(r.indexOf(t)>=0)continue;o[t]=e[t]}return o}function m(e,o){return r(e)||i(e,o)||h(e,o)||a()}function c(e){return o(e)||t(e)||h(e)||l()}function v(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function h(r,o){if(!r)return;if(typeof r==="string")return e(r,o);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,o)}import{a as b,b as y,c as g,d as x}from"./chunk-EMVR4BWV.js";import"./chunk-FJYXLP4R.js";import{TextField as C,useForkRef as P}from"@mui/material";import{useController as w}from"react-hook-form";import{forwardRef as j}from"react";import{jsx as q}from"react/jsx-runtime";var S=j(function(e,r){var o=e.rules,n=o===void 0?{}:o,t=e.parseError,i=e.type,a=e.required,l=e.name,s=e.control,p=e.component,m=p===void 0?C:p,c=e.inputRef,v=e.transform,h=e.onBlur,b=f(e,["rules","parseError","type","required","name","control","component","inputRef","transform","onBlur"]),x=y(),j=t||x,S=u({},n,a&&!n.required&&{required:"This field is required"},i==="email"&&!n.pattern&&{pattern:{value:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,message:"Please enter a valid email address"}}),E=w({name:l,control:s,disabled:b.disabled,rules:S}),O=E.field,k=E.fieldState,T=k.error,R=g({value:O.value,onChange:O.onChange,transform:{input:typeof(v===null||v===void 0?void 0:v.input)=="function"?v.input:function(e){return e!==null&&e!==void 0?e:""},output:typeof(v===null||v===void 0?void 0:v.output)=="function"?v.output:function(e){var r=e.target.value;return i!=="number"?r:r===""?null:r==null?r:Number(r)}}}),F=R.value,A=R.onChange,B=P(O.ref,c);return q(m,d(u({},b),{name:O.name,value:F,onChange:function(e){A(e),typeof b.onChange=="function"&&b.onChange(e)},onBlur:function(e){O.onBlur(),typeof h=="function"&&h(e)},required:a,type:i,error:!!T,helperText:T?typeof j=="function"?j(T):T.message:b.helperText,ref:r,inputRef:B}))});S.displayName="TextFieldElement";var E=S;import{FormProvider as O,useForm as k}from"react-hook-form";import{jsx as T}from"react/jsx-runtime";function R(e){var r=e.handleSubmit,o=e.children,n=e.FormProps,t=e.formContext,i=e.onSuccess,a=e.onError,l=f(e,["handleSubmit","children","FormProps","formContext","onSuccess","onError"]);return t?(typeof i=="function"&&typeof r=="function"&&console.warn("Property `onSuccess` will be ignored because handleSubmit is provided"),T(O,d(u({},t),{children:T("form",d(u({noValidate:!0},n),{onSubmit:r||(i?t.handleSubmit(i,a):function(){return console.log("submit handler `onSuccess` is missing")}),children:o}))}))):T(F,u({onSuccess:i,onError:a,FormProps:n,children:o},l))}function F(e){var r=e.onSuccess,o=e.onError,n=e.FormProps,t=e.children,i=f(e,["onSuccess","onError","FormProps","children"]);var a=k(u({},i)),l=a.handleSubmit;return T(O,d(u({},a),{children:T("form",d(u({onSubmit:l(r||function(){return console.log("submit handler `onSuccess` is missing")},o),noValidate:!0},n),{children:t}))}))}import{useController as A}from"react-hook-form";import{Checkbox as B,FormControl as I,FormControlLabel as L,FormGroup as M,FormHelperText as N,useForkRef as K}from"@mui/material";import{forwardRef as V}from"react";import{jsx as W,jsxs as z}from"react/jsx-runtime";var D=V(function(e,r){var o=e.name,n=e.rules,t=n===void 0?{}:n,i=e.required,a=e.parseError,l=e.label,s=e.control,p=e.helperText,m=e.labelProps,v=e.inputRef,h=e.transform,b=f(e,["name","rules","required","parseError","label","control","helperText","labelProps","inputRef","transform"]),x=y(),C=a||x,P=u({},t,i&&!t.required&&{required:"This field is required"}),w=A({name:o,control:s,disabled:b.disabled,rules:P}),j=w.field,q=w.fieldState,S=q.error,E=g({value:j.value,onChange:j.onChange,transform:{input:h===null||h===void 0?void 0:h.input,output:typeof(h===null||h===void 0?void 0:h.output)=="function"?h===null||h===void 0?void 0:h.output:function(e,r){return r}}}),O=E.value,k=E.onChange,T=K(j.ref,v),R=S?typeof C=="function"?C(S):S.message:p;return z(I,{required:i,error:!!S,ref:r,children:[W(M,{row:!0,children:W(L,d(u({},m),{label:l||"",control:W(B,d(u({},b),{color:b.color||"primary",sx:c(Array.isArray(b.sx)?b.sx:[b.sx]).concat([{color:S?"error.main":void 0}]),value:O,checked:!!O,onChange:function(e,r){k(e,r),typeof b.onChange=="function"&&b.onChange(e,r)},inputRef:T}))}))}),R&&W(N,{error:!!S,children:R})]})});D.displayName="CheckboxElement";var G=D;import{forwardRef as H}from"react";import{MenuItem as Y,TextField as Z,useForkRef as $}from"@mui/material";import{useController as J}from"react-hook-form";import{jsx as Q,jsxs as U}from"react/jsx-runtime";var X=H(function(e,r){var o;var n=e.name,t=e.required,i=e.valueKey,a=i===void 0?"id":i,l=e.labelKey,s=l===void 0?"label":l,p=e.options,m=p===void 0?[]:p,c=e.parseError,h=e.type,b=e.objectOnChange,C=e.rules,P=C===void 0?{}:C,w=e.control,j=e.inputRef,q=e.transform,S=e.onBlur,E=f(e,["name","required","valueKey","labelKey","options","parseError","type","objectOnChange","rules","control","inputRef","transform","onBlur"]),O=y(),k=c||O,T=!!((o=E.SelectProps)===null||o===void 0?void 0:o.native),R=u({},P,t&&!P.required&&{required:"This field is required"}),F=J({name:n,rules:R,disabled:E.disabled,control:w}),A=F.field,B=F.fieldState,I=B.error,L=g({value:A.value,onChange:A.onChange,transform:{input:typeof(q===null||q===void 0?void 0:q.input)=="function"?q.input:function(e){var r,o;return(o=(r=e===null||e===void 0?void 0:e[a])!==null&&r!==void 0?r:e)!==null&&o!==void 0?o:""},output:typeof(q===null||q===void 0?void 0:q.output)=="function"?q.output:function(e){var r=e.target.value;return h==="number"&&r&&(r=Number(r)),r}}}),M=L.value,N=L.onChange,K=$(A.ref,j);return h==="number"&&(typeof M==="undefined"?"undefined":v(M))<"u"&&(E.InputLabelProps=E.InputLabelProps||{},E.InputLabelProps.shrink=!0),U(Z,d(u({},E),{name:n,value:M,onBlur:function(e){A.onBlur(),typeof S=="function"&&S(e)},ref:r,onChange:function(e){if(N(e),typeof E.onChange=="function"){var r=e.target.value;h==="number"&&r&&(r=Number(r)),b&&(r=m.find(function(e){return e[a]===r})),E.onChange(r)}},select:!0,required:t,error:!!I,helperText:I?typeof k=="function"?k(I):I.message:E.helperText,inputRef:K,children:[T&&Q("option",{}),m.map(function(e){var r;var o="".concat(n,"_").concat(e[a]),t={value:(r=e===null||e===void 0?void 0:e[a])!==null&&r!==void 0?r:e,disabled:x(e,"disabled")?!!e.disabled:!1,children:e[s]};return T?Q("option",u({},t),o):Q(Y,u({},t),o)})]}))});X.displayName="SelectElement";var _=X;import{Checkbox as ee,FormControl as er,FormControlLabel as eo,FormGroup as en,FormHelperText as et,FormLabel as ei,useTheme as ea}from"@mui/material";import{useController as el}from"react-hook-form";import{forwardRef as eu}from"react";import{jsx as es,jsxs as ed}from"react/jsx-runtime";import{createElement as ef}from"react";var ep=eu(function(e,r){var o=e.helperText,n=e.options,t=e.label,i=e.name,a=e.parseError,l=e.required,s=e.labelKey,p=s===void 0?"label":s,m=e.valueKey,v=m===void 0?"id":m,h=e.returnObject,b=e.disabled,C=e.row,P=e.control,w=e.checkboxColor,j=e.rules,q=e.labelProps,S=e.transform,E=e.defaultValue,O=E===void 0?[]:E,k=f(e,["helperText","options","label","name","parseError","required","labelKey","valueKey","returnObject","disabled","row","control","checkboxColor","rules","labelProps","transform","defaultValue"]),T=ea(),R=y(),F=a||R,A=el({name:i,rules:l?{required:"This field is required"}:j,disabled:b,control:P,defaultValue:O}),B=A.field,I=A.fieldState,L=I.error,M=I.invalid,N=g({value:B.value,onChange:B.onChange,transform:{input:typeof(S===null||S===void 0?void 0:S.input)=="function"?S.input:function(e){return Array.isArray(e)?e:[]},output:S===null||S===void 0?void 0:S.output}}),K=N.value,V=N.onChange,W=function(e){var r=x(e,v)?e[v]:e,o=K.findIndex(function(e){var o=x(e,v)?e[v]:e;return r===o}),n=(o===-1?c(K).concat([e]):K.filter(function(e,r){return o!==r})).map(function(e){return h||!x(e,v)?e:e[v]});V(n),typeof k.onChange=="function"&&k.onChange(n)},z=L?typeof F=="function"?F(L):L.message:o;return ed(er,{error:M,required:l,ref:r,component:"fieldset",children:[t?es(ei,{component:"legend",children:t}):null,es(en,{row:C,children:n.map(function(e){var r=x(e,v)?e[v]:e,o=x(e,p)?e[p]:e,n=K.some(function(e){return(x(e,v)?e[v]:e)===r});return ef(eo,d(u({},q),{control:es(ee,{sx:{color:L?T.palette.error.main:void 0},color:w,value:r,checked:n,disabled:b,onChange:function(){return W(e)}}),label:o,key:"".concat(r)}))})}),z&&es(et,{children:z})]})});ep.displayName="CheckboxButtonGroup";var em=ep;import ec from"@mui/icons-material/Cancel";import{useController as ev}from"react-hook-form";import{Checkbox as eh,Chip as eb,FormControl as ey,FormHelperText as eg,InputLabel as ex,ListItemText as eC,MenuItem as eP,Select as ew,useForkRef as ej}from"@mui/material";import{forwardRef as eq}from"react";import{jsx as eS,jsxs as eE}from"react/jsx-runtime";var eO=48,ek=8,eT=eq(function(e,r){var o,n,t,i,a;var l=e.onBlur,s=e.options,p=e.label,m=p===void 0?"":p,c=e.itemKey,v=c===void 0?"id":c,h=e.itemValue,b=h===void 0?"":h,C=e.itemLabel,P=C===void 0?"label":C,w=e.required,j=w===void 0?!1:w,q=e.rules,S=q===void 0?{}:q,E=e.parseError,O=e.name,k=e.menuMaxHeight,T=k===void 0?eO*4.5+ek:k,R=e.menuMaxWidth,F=R===void 0?250:R,A=e.minWidth,B=A===void 0?120:A,I=e.helperText,L=e.showChips,M=e.preserveOrder,N=e.control,K=e.showCheckbox,V=e.formControlProps,W=e.inputRef,z=e.transform,D=e.inputLabelProps,G=f(e,["onBlur","options","label","itemKey","itemValue","itemLabel","required","rules","parseError","name","menuMaxHeight","menuMaxWidth","minWidth","helperText","showChips","preserveOrder","control","showCheckbox","formControlProps","inputRef","transform","inputLabelProps"]),H=y(),Y=E||H,Z=function(e){var r;var o;return(o=(r=s.find(function(r){var o;return((o=r[b||v])!==null&&o!==void 0?o:r)===e}))===null||r===void 0?void 0:r[P])!==null&&o!==void 0?o:e},$=u({},S,j&&!S.required&&{required:"This field is required"}),J=ev({name:O,rules:$,disabled:G.disabled,control:N}),Q=J.field,U=J.fieldState,X=U.error,_=g({value:Q.value,onChange:Q.onChange,transform:{input:typeof(z===null||z===void 0?void 0:z.input)=="function"?z.input:function(e){return Array.isArray(e)?e:[]},output:z===null||z===void 0?void 0:z.output}}),ee=_.value,er=_.onChange,eo=ej(Q.ref,W),en=X?typeof Y=="function"?Y(X):X.message:I;var et;return eE(ey,d(u({},V),{style:u({minWidth:B},V===null||V===void 0?void 0:V.style),variant:G.variant,fullWidth:G.fullWidth,error:!!X,size:G.size,ref:r,children:[m&&eS(ex,d(u({},D),{size:G.size==="small"?"small":D===null||D===void 0?void 0:D.size,error:!!X,htmlFor:G.id||"select-multi-select-".concat(O),required:j,children:m})),eS(ew,d(u({},G),{id:G.id||"select-multi-select-".concat(O),multiple:!0,label:m||void 0,error:!!X,value:ee,required:j,onChange:er,onBlur:function(e){Q.onBlur(),typeof l=="function"&&l(e)},MenuProps:d(u({},G.MenuProps),{slotProps:d(u({},(o=G.MenuProps)===null||o===void 0?void 0:o.slotProps),{paper:u({},(et=(t=G.MenuProps)===null||t===void 0?void 0:(n=t.slotProps)===null||n===void 0?void 0:n.paper)!==null&&et!==void 0?et:{style:u({maxHeight:T,width:F},x((a=G.MenuProps)===null||a===void 0?void 0:(i=a.slotProps)===null||i===void 0?void 0:i.paper,"style")&&typeof G.MenuProps.slotProps.paper.style=="object"&&u({},G.MenuProps.slotProps.paper.style))})})}),renderValue:typeof G.renderValue=="function"?G.renderValue:L?function(e){return eS("div",{style:{display:"flex",flexWrap:"wrap",gap:"4px"},children:(M?s.filter(function(r){return e.includes(r)}):e||[]).map(function(e){return eS(eb,{label:Z(e),style:{display:"flex",flexWrap:"wrap"},onDelete:function(){er((Array.isArray(ee)?ee:[]).filter(function(r){return r!==e}))},deleteIcon:eS(ec,{onMouseDown:function(e){e.stopPropagation()}})},e)})})}:function(e){return Array.isArray(e)?e.map(Z).join(", "):""},inputRef:eo,children:s.map(function(e){var r;var o=(r=e[b||v])!==null&&r!==void 0?r:e,n=Array.isArray(ee)?ee.some(function(e){return e===o}):!1;return eE(eP,{value:o,sx:{fontWeight:function(e){return n?e.typography.fontWeightBold:e.typography.fontWeightRegular}},children:[K&&eS(eh,{checked:n}),eS(eC,{primary:e[P]||e})]},o)})})),en&&eS(eg,{error:!!X,children:en})]}))});eT.displayName="MultiSelectElement";var eR=eT;import{forwardRef as eF,useState as eA}from"react";import{IconButton as eB,InputAdornment as eI}from"@mui/material";import eL from"@mui/icons-material/Visibility";import eM from"@mui/icons-material/VisibilityOff";import{jsx as eN}from"react/jsx-runtime";var eK=eF(function(e,r){var o=e.iconColor,n=e.renderIcon,t=n===void 0?function(e){return e?eN(eL,{}):eN(eM,{})}:n,i=e.InputProps,a=i===void 0?{}:i,l=e.slotProps,s=f(e,["iconColor","renderIcon","InputProps","slotProps"]),p=m(eA(!0),2),c=p[0],h=p[1],b=eN(eI,{position:"end",children:eN(eB,{"aria-label":c?"Hide password":"Show password",onMouseDown:function(e){return e.preventDefault()},onClick:function(){return h(!c)},tabIndex:-1,color:o!==null&&o!==void 0?o:"default",children:t(c)})});return eN(E,u(d(u({},s),{ref:r,type:c?"password":"text"}),(typeof l==="undefined"?"undefined":v(l))>"u"?{InputProps:u({endAdornment:b},a)}:{slotProps:d(u({},l),{input:u({endAdornment:b},a,l===null||l===void 0?void 0:l.input)})}))});eK.displayName="PasswordElement";var eV=eK;import{forwardRef as eW}from"react";import{useController as ez}from"react-hook-form";import{FormControl as eD,FormControlLabel as eG,FormHelperText as eH,FormLabel as eY,Radio as eZ,RadioGroup as e$,useTheme as eJ}from"@mui/material";import{jsx as eQ,jsxs as eU}from"react/jsx-runtime";import{createElement as eX}from"react";var e_=eW(function(e,r){var o=e.helperText,n=e.options,t=e.label,i=e.name,a=e.parseError,l=e.labelKey,s=l===void 0?"label":l,p=e.valueKey,m=p===void 0?"id":p,c=e.disabledKey,v=c===void 0?"disabled":c,h=e.required,b=e.emptyOptionLabel,x=e.returnObject,C=e.row,P=e.control,w=e.type,j=e.labelProps,q=e.disabled,S=e.formLabelProps,E=e.radioProps,O=e.transform,k=e.rules,T=k===void 0?{}:k,R=f(e,["helperText","options","label","name","parseError","labelKey","valueKey","disabledKey","required","emptyOptionLabel","returnObject","row","control","type","labelProps","disabled","formLabelProps","radioProps","transform","rules"]),F=eJ(),A=y(),B=a||A,I=u({},T,h&&!T.required&&{required:"This field is required"}),L=ez({name:i,rules:I,disabled:q,control:P}),M=L.field,N=L.fieldState,K=N.error,V=g({value:M.value,onChange:M.onChange,transform:{input:typeof(O===null||O===void 0?void 0:O.input)=="function"?O.input:function(e){return e||""},output:typeof(O===null||O===void 0?void 0:O.output)=="function"?O===null||O===void 0?void 0:O.output:function(e,r){return r&&w==="number"?Number(r):r}}}),W=V.value,z=V.onChange,D=K?typeof B=="function"?B(K):K.message:o,G=function(e,r){var o=x?n.find(function(e){return e[m]===r}):r;z(e,o),typeof R.onChange=="function"&&R.onChange(o)};return eU(eD,{error:!!K,ref:r,children:[t&&eQ(eY,d(u({},S),{required:h,error:!!K,children:t})),eU(e$,{onChange:G,name:i,row:C,value:W,children:[b&&eQ(eG,d(u({},j),{control:eQ(eZ,d(u({},E),{sx:{color:K?F.palette.error.main:void 0},checked:!W})),label:b,value:""})),n.map(function(e){var r=e[m],o=e[v]||!1;r===void 0&&console.error("RadioButtonGroup: valueKey ".concat(m," does not exist on option"),e);var n=x?W===null||W===void 0?void 0:W[m]:W;w==="number"&&(n=Number(n));var t=n===r;return eX(eG,d(u({},j),{control:eQ(eZ,d(u({},E),{sx:{color:K?F.palette.error.main:void 0},disabled:q||o,checked:t})),value:r,label:e[s],key:r}))})]}),D&&eQ(eH,{children:D})]})});e_.displayName="RadioButtonGroup";var e0=e_;import{useController as e1}from"react-hook-form";import{FormControlLabel as e2,Switch as e3,useForkRef as e4}from"@mui/material";import{forwardRef as e9}from"react";import{jsx as e8}from"react/jsx-runtime";var e5=e9(function(e,r){var o=e.name,n=e.control,t=e.switchProps,i=e.transform,a=f(e,["name","control","switchProps","transform"]),l=e1({name:o,control:n,disabled:a.disabled}),s=l.field,p=g({value:s.value,onChange:s.onChange,transform:{input:i===null||i===void 0?void 0:i.input,output:typeof(i===null||i===void 0?void 0:i.output)=="function"?i.output:function(e,r){return r}}}),m=p.value,c=p.onChange,v=e4(s.ref,t===null||t===void 0?void 0:t.ref);return e8(e2,u({ref:r,control:e8(e3,d(u({},t),{name:s.name,value:m,onChange:function(e,r){c(e,r),typeof(t===null||t===void 0?void 0:t.onChange)=="function"&&t.onChange(e,r)},onBlur:function(e){s.onBlur(),typeof(t===null||t===void 0?void 0:t.onBlur)=="function"&&(t===null||t===void 0?void 0:t.onBlur(e))},ref:v,checked:!!m}))},a))});e5.displayName="SwitchElement";var e6=e5;import{useWatch as e7}from"react-hook-form";import{forwardRef as re}from"react";import{jsx as rr}from"react/jsx-runtime";var ro=re(function(e,r){var o=e.passwordFieldName,n=e.customInvalidFieldMessage,t=e.control,i=f(e,["passwordFieldName","customInvalidFieldMessage","control"]),a=e7({name:o,control:t});return rr(eV,d(u({control:t},i),{ref:r,rules:{validate:function(e){return e===a||(n!==null&&n!==void 0?n:"Password should match")}}}))});ro.displayName="PasswordRepeatElement";var rn=ro;import{useController as rt}from"react-hook-form";import{Autocomplete as ri,Checkbox as ra,TextField as rl,useForkRef as ru,CircularProgress as rs}from"@mui/material";import{forwardRef as rd}from"react";import{Fragment as rf,jsx as rp,jsxs as rm}from"react/jsx-runtime";import{createElement as rc}from"react";var rv=rd(function(e,r){var o=e.textFieldProps,n=e.autocompleteProps,t=e.name,i=e.control,a=e.options,l=e.loading,s=e.showCheckbox,f=e.rules,p=e.loadingIndicator,m=e.required,c=e.multiple,v=e.label,h=e.parseError,b=e.transform,C=e.matchId,P=y(),w=h||P,j=u({},f,m&&{required:(f===null||f===void 0?void 0:f.required)||"This field is required"}),q=rt({name:t,control:i,disabled:n===null||n===void 0?void 0:n.disabled,rules:j}),S=q.field,E=q.fieldState,O=E.error,k=function(e){return typeof(n===null||n===void 0?void 0:n.getOptionLabel)=="function"?n.getOptionLabel(e):x(e,"label")?"".concat(e===null||e===void 0?void 0:e.label):"".concat(e)},T=function(e,r){if(typeof(n===null||n===void 0?void 0:n.isOptionEqualToValue)=="function")return n.isOptionEqualToValue(e,r);var o=x(e,"id")?e.id:e,t=x(r,"id")?r.id:r;return o===t},R=function(e){return a.find(function(r){return C&&x(r,"id")?r.id===e:T(r,e)})},F=g({value:S.value,onChange:S.onChange,transform:{input:typeof(b===null||b===void 0?void 0:b.input)=="function"?b.input:function(e){var r;return c?(Array.isArray(e)?e:[]).map(R):(r=R(e))!==null&&r!==void 0?r:null},output:typeof(b===null||b===void 0?void 0:b.output)=="function"?b.output:function(e,r){if(c){var o=Array.isArray(r)?r:[];return C?o.map(function(e){return x(e,"id")?e.id:e}):o}return C&&x(r,"id")?r.id:r}}}),A=F.value,B=F.onChange,I=ru(S.ref,o===null||o===void 0?void 0:o.inputRef),L=p||rp(rs,{color:"inherit",size:20});var M;return rp(ri,d(u({},n),{value:A,loading:l,multiple:c,options:a,disableCloseOnSelect:typeof(n===null||n===void 0?void 0:n.disableCloseOnSelect)=="boolean"?n.disableCloseOnSelect:!!c,isOptionEqualToValue:T,getOptionLabel:k,onChange:function(e,r,o,t){B(e,r,o,t),(n===null||n===void 0?void 0:n.onChange)&&n.onChange(e,r,o,t)},ref:r,renderOption:(M=n===null||n===void 0?void 0:n.renderOption)!==null&&M!==void 0?M:s?function(e,r,o){var n=o.selected;return rc("li",d(u({},e),{key:e.key}),rp(ra,{sx:{marginRight:1},checked:n}),k(r))}:void 0,onBlur:function(e){S.onBlur(),typeof(n===null||n===void 0?void 0:n.onBlur)=="function"&&n.onBlur(e)},renderInput:function(e){return rp(rl,d(u({name:t,required:(f===null||f===void 0?void 0:f.required)?!0:m,label:v},o,e),{error:!!O,InputLabelProps:u({},e.InputLabelProps,o===null||o===void 0?void 0:o.InputLabelProps),InputProps:u(d(u({},e.InputProps),{endAdornment:rm(rf,{children:[l?L:null,e.InputProps.endAdornment]})}),o===null||o===void 0?void 0:o.InputProps),inputProps:u({},e.inputProps,o===null||o===void 0?void 0:o.inputProps),helperText:O?typeof w=="function"?w(O):O.message:o===null||o===void 0?void 0:o.helperText,inputRef:I}))}}))});rv.displayName="AutocompleteElement";var rh=rv;import{useController as rb}from"react-hook-form";import{FormControl as ry,FormHelperText as rg,FormLabel as rx,Slider as rC}from"@mui/material";import{forwardRef as rP}from"react";import{jsx as rw,jsxs as rj}from"react/jsx-runtime";var rq=rP(function(e,r){var o=e.name,n=e.control,t=e.label,i=e.rules,a=i===void 0?{}:i,l=e.parseError,s=e.required,p=e.formControlProps,m=e.transform,c=f(e,["name","control","label","rules","parseError","required","formControlProps","transform"]),v=y(),h=l||v,b=u({},a,s&&!a.required&&{required:"This field is required"}),x=rb({name:o,control:n,disabled:c.disabled,rules:b}),C=x.field,P=x.fieldState,w=P.error,j=P.invalid,q=g({value:C.value,onChange:C.onChange,transform:m}),S=q.value,E=q.onChange,O=w?typeof h=="function"?h(w):w.message:null;return rj(ry,d(u({error:j,required:s,fullWidth:!0},p),{ref:r,children:[t&&rw(rx,{component:"legend",error:j,children:t}),rw(rC,d(u({},c),{value:S,onChange:E,valueLabelDisplay:c.valueLabelDisplay||"auto"})),O&&rw(rg,{error:j,children:O})]}))});rq.displayName="SliderElement";var rS=rq;import{useController as rE}from"react-hook-form";import{FormControl as rO,FormHelperText as rk,FormLabel as rT,ToggleButton as rR,ToggleButtonGroup as rF}from"@mui/material";import{jsx as rA,jsxs as rB}from"react/jsx-runtime";import{createElement as rI}from"react";function rL(e){var r=e.name,o=e.control,n=e.label,t=e.rules,i=t===void 0?{}:t,a=e.required,l=e.options,s=l===void 0?[]:l,p=e.onBlur,m=e.parseError,c=e.helperText,v=e.formLabelProps,h=e.enforceAtLeastOneSelected,b=h===void 0?!1:h,x=e.exclusive,C=e.transform,P=f(e,["name","control","label","rules","required","options","onBlur","parseError","helperText","formLabelProps","enforceAtLeastOneSelected","exclusive","transform"]),w=y(),j=m||w,q=u({},i,a&&!i.required&&{required:"This field is required"}),S=a||!!(i===null||i===void 0?void 0:i.required),E=rE({name:r,control:o,rules:q,disabled:P.disabled}),O=E.field,k=E.fieldState,T=k.error,R=g({value:O.value,onChange:O.onChange,transform:{input:C===null||C===void 0?void 0:C.input,output:typeof(C===null||C===void 0?void 0:C.output)=="function"?C.output:function(e,r){return r}}}),F=R.value,A=R.onChange,B=T?typeof j=="function"?j(T):T.message:c;return rB(rO,{error:!!T,required:S,fullWidth:P===null||P===void 0?void 0:P.fullWidth,children:[n&&rA(rT,d(u({},v),{error:!!T,required:S,sx:u({mb:1},v===null||v===void 0?void 0:v.sx),children:n})),rA(rF,d(u({},P),{exclusive:x,value:F,onBlur:function(e){O.onBlur(),typeof p=="function"&&p(e)},onChange:function(e,r){b&&(x&&r===null||!x&&(r===null||r===void 0?void 0:r.length)===0)||(A(e,r),typeof P.onChange=="function"&&P.onChange(e,r))},children:s.map(function(e){var r=e.label,o=e.id,n=f(e,["label","id"]);return rI(rR,d(u({value:o},n),{key:o}),r)})})),B&&rA(rk,{children:B})]})}import{TextareaAutosize as rM,TextField as rN,useForkRef as rK}from"@mui/material";import{useController as rV}from"react-hook-form";import{forwardRef as rW}from"react";import{jsx as rz}from"react/jsx-runtime";var rD=rW(function(e,r){var o=e.rules,n=o===void 0?{}:o,t=e.parseError,i=e.required,a=e.name,l=e.control,s=e.rows,p=e.resizeStyle,m=p===void 0?"none":p,c=e.maxRows,v=e.minRows,h=e.inputRef,b=e.inputProps,x=e.transform,C=e.onBlur,P=f(e,["rules","parseError","required","name","control","rows","resizeStyle","maxRows","minRows","inputRef","inputProps","transform","onBlur"]),w=y(),j=t||w,q=u({},n,i&&!n.required&&{required:"This field is required"}),S=rV({name:a,control:l,rules:q,disabled:P.disabled}),E=S.field,O=S.fieldState,k=O.error,T=g({value:E.value,onChange:E.onChange,transform:{input:typeof(x===null||x===void 0?void 0:x.input)=="function"?x.input:function(e){return e!==null&&e!==void 0?e:""},output:typeof(x===null||x===void 0?void 0:x.output)=="function"?x.output:function(e){return e.target.value}}}),R=T.value,F=T.onChange,A=rK(E.ref,h);return rz(rN,d(u({},P),{name:a,value:R,onChange:function(e){F(e),typeof P.onChange=="function"&&P.onChange(e)},onBlur:function(e){E.onBlur(),typeof C=="function"&&C(e)},required:i,error:!!k,helperText:k?typeof j=="function"?j(k):k.message:P.helperText,inputRef:A,multiline:!0,ref:r,slotProps:{input:{inputComponent:rM,inputProps:u({minRows:v||s,maxRows:c||s,style:{resize:m}},b||{})}}}))});rD.displayName="TextareaAutosizeElement";var rG=rD;export*from"react-hook-form";export{rh as AutocompleteElement,em as CheckboxButtonGroup,G as CheckboxElement,R as FormContainer,b as FormErrorProvider,eR as MultiSelectElement,eV as PasswordElement,rn as PasswordRepeatElement,e0 as RadioButtonGroup,_ as SelectElement,rS as SliderElement,e6 as SwitchElement,E as TextFieldElement,rG as TextareaAutosizeElement,rL as ToggleButtonGroupElement,y as useFormError,g as useTransform};//# sourceMappingURL=index.js.map