UNPKG

@cosva-lab/form-builder

Version:
3 lines (2 loc) 26.5 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-is"),require("mobx-react"),require("@mui/material/Grid"),require("clsx"),require("mobx"),require("@mui/material/TextField"),require("@mui/material/FormControl"),require("@mui/material/FormHelperText"),require("@mui/material/Grow"),require("@mui/material/CircularProgress"),require("validator/lib/contains"),require("validator/lib/equals"),require("validator/lib/isAfter"),require("validator/lib/isAlpha"),require("validator/lib/isAlphanumeric"),require("validator/lib/isAscii"),require("validator/lib/isDecimal"),require("validator/lib/isEmail"),require("validator/lib/isEmpty"),require("validator/lib/isFloat"),require("validator/lib/isNumeric")):"function"==typeof define&&define.amd?define(["exports","react","react-is","mobx-react","@mui/material/Grid","clsx","mobx","@mui/material/TextField","@mui/material/FormControl","@mui/material/FormHelperText","@mui/material/Grow","@mui/material/CircularProgress","validator/lib/contains","validator/lib/equals","validator/lib/isAfter","validator/lib/isAlpha","validator/lib/isAlphanumeric","validator/lib/isAscii","validator/lib/isDecimal","validator/lib/isEmail","validator/lib/isEmpty","validator/lib/isFloat","validator/lib/isNumeric"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).FormBuilder={},e.React,e.ReactIs,e.mobxReact,e.Grid,e.clsx,e.mobx,e.TextField,e.FormControl,e.FormHelperText,e.Grow,e.CircularProgress,e.contains,e.equals,e.isAfter,e.isAlpha,e.isAlphanumeric,e.isAscii,e.isDecimal,e.isEmail,e.isEmpty$1,e.isFloat,e.isNumeric)}(this,(function(e,t,r,i,n,o,a,s,l,u,d,c,p,f,h,v,b,y,m,g,E,F,P){"use strict";function A(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var I=A(r),V=function(e,t){return V=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},V(e,t)};function _(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}V(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var S=function(){return S=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},S.apply(this,arguments)};function C(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]])}return r}function O(e,t,r,i){var n,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(o<3?n(a):o>3?n(t,r,a):n(t,r))||a);return o>3&&a&&Object.defineProperty(t,r,a),a}function x(e,t,r,i){return new(r||(r=Promise))((function(n,o){function a(e){try{l(i.next(e))}catch(e){o(e)}}function s(e){try{l(i.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))}function D(e,t){var r,i,n,o,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,i&&(n=2&s[0]?i.return:s[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,s[1])).done)return n;switch(i=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,i=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],i=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}function k(e,t,r){if(r||2===arguments.length)for(var i,n=0,o=t.length;n<o;n++)!i&&n in t||(i||(i=Array.prototype.slice.call(t,0,n)),i[n]=t[n]);return e.concat(i||Array.prototype.slice.call(t))}var w=function(e){return null==e||("string"==typeof e?""===e.trim():Array.isArray(e)?0===e.length:"object"==typeof e&&0===Object.keys(e).length)},L="Loading-module_progress__sL-jU",j=function(e){function r(){return null!==e&&e.apply(this,arguments)||this}return _(r,e),r.prototype.render=function(){var e=this.props,r=e.size,i=e.color,n=e.disableShrink,o=e.thickness,a=e.variant,s=e.style;return t.createElement(c,S({variant:a||"indeterminate",className:L},{style:s,size:r,color:i,disableShrink:n,thickness:o}))},r.defaultProps={color:"primary",disableShrink:!1,size:40,thickness:3.6,variant:"indeterminate"},r}(t.PureComponent),B=function(e){var r=e.children;return t.createElement(d,S({in:!0,style:{transformOrigin:"0 0 0"}},{timeout:1e3}),r)},q=t.createContext((function(e){return e.message})),T=function(){return t.useContext(q)},N=q.Consumer,G=function(e){var r=T();return t.createElement("span",null,r(e))},R=function(e){var r=e.styles,i=C(e,["styles"]);return t.createElement(t.Suspense,{fallback:t.createElement(B,null,t.createElement("div",{style:S(S({},r),{display:"flex",justifyContent:"center"})},t.createElement(j,{size:20})))},t.createElement(G,S({},i)))};R.defaultProps={styles:{},props:{}};var H=function(e){var r,i=e.ns,n=e.name,o=e.label;if(t.isValidElement(o))return o;var a=i;return r="string"==typeof o?o:o&&o.message||n.toString(),t.createElement(R,S({},{message:r,ns:a,props:undefined}))},M=t.createContext({ns:"validations"}),W=function(){return t.useContext(M)},z=M.Consumer,J=t.createContext(null),U=J.Consumer,Y=function(e){var r=t.useContext(J),i=T();return t.createElement(t.Fragment,null,(r||i)(e))};function $(e){return e&&"object"==typeof e&&"string"==typeof e.message}var K=function(e){var r=e.children;return t.createElement("div",null,r)},Q=function(e){var r=e.errors,i=e.field,n=i&&i.ns,o=W();return t.createElement(t.Fragment,null,r.map((function(e,r){return t.isValidElement(e)?t.createElement(e.type,S({},e.props,{key:e.key||r})):"string"==typeof e?t.createElement(K,{key:r},e):$(e)?t.createElement(K,{key:r},t.createElement(Y,S({},S(S({ns:n},o),e)))):Object.values(e).map((function(e,r){return t.createElement(K,{key:r},"string"==typeof e?e:$(e)&&t.createElement(Y,S({},S(S({ns:n},o),e)))||null)}))})))},X={root:"Input-module_root__OxT2J",widthNormal:"Input-module_widthNormal__b-G-O",InputLabelProps:"Input-module_InputLabelProps__kYT5j",formHelperTextPropsRoot:"Input-module_formHelperTextPropsRoot__op-3l"},Z=function(e){function r(t){var r=e.call(this,t)||this;return r.errors=[],r.animation=!0,r.getProps=function(e){return S({},e.field)},r.getLastProps=function(){return r.getProps(r.props)},r.state={type:t.type},r}return _(r,e),r.prototype.componentDidMount=function(){var e=this,t=this.props.field;a.intercept(t,"errors",(function(t){return e.animation=!0,t}))},r.prototype.render=function(){var e=this,r=this.props;r.onChangeField;var i=r.field,n=i.ns,a=i.label,d=i.name,c=i.disabled,p=i.fullWidth,f=void 0===p||p,h=i.errors,v=i.autoComplete,b=i.InputProps,y=i.textFieldProps,m=i.value,g=i.renderErrors,E=this.state.type,F=h&&(g&&t.createElement(g,S({},{errors:h,field:i}))||t.createElement(Q,S({},{errors:h,field:i})));return t.createElement(l,S({},{fullWidth:f},{className:X.formControl,variant:"outlined"}),t.createElement(s,S({label:t.createElement(H,S({},{label:a,ns:n,name:d})),inputRef:function(e){return i.inputRef=e},error:!w(h),InputProps:"function"==typeof b?b({type:E,field:i,changeType:function(t,r){t!==e.state.type&&e.setState({type:t},r)}}):b,InputLabelProps:{shrink:"date"===E||void 0,classes:{root:o(X.InputLabelProps,X.widthNormal)}},onChange:function(e){var t=i.onChange,r=e.target.value;t?t({name:i.name,value:r,field:i},e):i.setValue(r)},onBlur:function(){var t=e.props.field;t&&t.markAsTouched()},name:d.toString()},S(S({},y),{type:E,value:m,disabled:c,autoComplete:v}))),F&&t.createElement(u,{component:"div",error:!0,className:X.formHelperTextPropsRoot},F))},r=O([i.observer],r)}(t.Component);function ee(e){var r=e.onChangeField,i=e.field,n=i.type;switch(n){case"date":case"email":case"number":case"password":case"search":case"tel":case"text":case"time":case"url":case"week":case"datetime-local":case void 0:return t.createElement(Z,S({},{field:i,onChangeField:r,type:n}));default:return null}}var te,re=function(e){var r=e.component,n=e.propsForm,o=r;try{o=i.observer(r)}catch(e){}return t.createElement(o,S({},n))},ie=function(e){function r(){var t=null!==e&&e.apply(this,arguments)||this;return t.onChangeField=function(e,r){var i=t.props.onChangeField;null==i||i(e,r)},t}return _(r,e),r.prototype.render=function(){var e=this.props.field,r=S({},e.breakpoints),i=r.xs,o=void 0===i?12:i,a=r.sm,s=void 0===a?o:a,l=r.md,u=void 0===l?s:l,d=r.lg,c=void 0===d?u:d,p=r.xl,f=void 0===p?c:p,h=e.component,v=e.render,b=e.type,y=e.grid,m=void 0===y?void 0===this.props.grid||this.props.grid:y,g={field:e,onChangeField:this.onChangeField},E=t.createElement(ee,S({},g));return v?v({children:E,props:g}):"component"===b?(h&&(h.displayName="[fields.".concat(e.name.toString(),"].component")),t.isValidElement(h)?t.createElement(h.type,S({},S(S({},h.props),g))):I.isValidElementType(h)?t.createElement(re,{component:h,propsForm:g}):null):m?t.createElement(n,{item:!0,xs:o,sm:s,md:u,lg:c,xl:f},E):E},r}(t.PureComponent);e.StatusField=void 0,(te=e.StatusField||(e.StatusField={})).VALID="VALID",te.INVALID="INVALID",te.PENDING="PENDING",te.DISABLED="DISABLED";var ne=function(){function t(t){var r=t.type,i=t.name,n=t.value,o=t.disabled,s=t.defaultInputValue,l=t.label,u=t.onChange,d=t.onSetValue;this.fieldsBuilder=void 0,this.type=void 0,this.defaultInputValue=void 0,this.errors=[],this.onChange=void 0,this.onSetValue=void 0,this.pristine=!0,this.type=r,this.name=i,this.value=n,o?this.disable():this.status=e.StatusField.VALID,this.defaultInputValue=s,this.label=l,this.onChange=u,this.onSetValue=d,a.makeObservable(this)}return Object.defineProperty(t.prototype,"dirty",{get:function(){return!this.pristine},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"valid",{get:function(){return this.status===e.StatusField.VALID},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"invalid",{get:function(){return this.status===e.StatusField.INVALID},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pending",{get:function(){return this.status==e.StatusField.PENDING},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return this.status===e.StatusField.DISABLED},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enabled",{get:function(){return this.status!==e.StatusField.DISABLED},enumerable:!1,configurable:!0}),t.prototype.disable=function(){this.status=e.StatusField.DISABLED,this.errors=this.errors=[]},t.prototype.enable=function(){this.status=e.StatusField.VALID},t.prototype.markAsDirty=function(){this.pristine=!1},t.prototype.markAsPristine=function(){this.pristine=!0},t.prototype._setInitialStatus=function(){this.status=this.disabled?e.StatusField.DISABLED:e.StatusField.VALID},O([a.observable],t.prototype,"type",void 0),O([a.observable],t.prototype,"name",void 0),O([a.observable],t.prototype,"value",void 0),O([a.observable],t.prototype,"defaultInputValue",void 0),O([a.observable],t.prototype,"label",void 0),O([a.observable],t.prototype,"status",void 0),O([a.observable],t.prototype,"errors",void 0),O([a.observable],t.prototype,"onChange",void 0),O([a.observable],t.prototype,"onSetValue",void 0),O([a.action],t.prototype,"disable",null),O([a.action],t.prototype,"enable",null),O([a.action],t.prototype,"_setInitialStatus",null),t}(),oe={contains:p,equals:f,isAfter:h,isAlpha:v,isAlphanumeric:b,isAscii:y,isDecimal:m,isEmail:g,isEmpty:E,isFloat:F,isNumeric:P},ae=function(t){function r(e){var r=t.call(this,e)||this;r._validate=!1,a.makeObservable(r);var i=e.validate,n=e.validations,o=e.value,s=e.globalProps;return void 0!==i&&(r._validate=i),r.validations=n,r.originalProps={value:o,validate:i},r.globalProps=s,r}return _(r,t),r.getValidation=function(e){return"function"==typeof e._validate?e._validate(e):e._validate},Object.defineProperty(r.prototype,"validate",{get:function(){return r.getValidation(this)},set:function(e){this._validate=e,e?this.validity():this.errors=[]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"untouched",{get:function(){return!this.touched},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"globalProps",{get:function(){return this.fieldsBuilder&&this.fieldsBuilder.globalProps||this._globalProps},set:function(e){this.fieldsBuilder?this.fieldsBuilder.globalProps=e:this._globalProps=e},enumerable:!1,configurable:!0}),r.prototype.hasValidationError=function(t){var r=t.rule||"isEmpty",i=t.args,n=void 0===i?[]:i;if(["contains","equals","isAfter","isAlpha","isAlphanumeric","isAscii","isDecimal","isEmail","isEmpty","isFloat","isNumeric"].includes(r)){var o=oe[r];if(o){var a=!1;if("isEmpty"===r)a=!0;if("string"==typeof this.value&&o((this.value||"").toString(),n)===a)return this.status=e.StatusField.INVALID,!0;this.status=e.StatusField.VALID}}else console.error(r,"the rule don't exists"),r="isEmpty";return!1},r.prototype.markAsTouched=function(){this.touched=!0},r.prototype.markAsUntouched=function(){this.touched=!1},r.prototype.validityBase=function(){return x(this,void 0,void 0,(function(){var t,r=this;return D(this,(function(i){switch(i.label){case 0:return[4,this.getErrors()];case 1:return t=i.sent(),a.runInAction((function(){t&&t.length?(r.errors=t,r.status=e.StatusField.INVALID):(r.errors=r.errors=[],r.status=e.StatusField.VALID)})),[2,this.valid]}}))}))},r.prototype.validity=function(){return x(this,void 0,void 0,(function(){return D(this,(function(e){return this._validate=!0,[2,this.validityBase()]}))}))},r.prototype._calculateStatus=function(){return this.disabled?e.StatusField.DISABLED:this.errors&&this.errors.length?e.StatusField.INVALID:e.StatusField.VALID},r.prototype.updateValueAndValidity=function(){return x(this,void 0,void 0,(function(){var e=this;return D(this,(function(t){switch(t.label){case 0:return this._setInitialStatus(),this.enabled?[4,this.validity()]:[3,2];case 1:t.sent(),a.runInAction((function(){e.status=e._calculateStatus()})),t.label=2;case 2:return[2]}}))}))},r.prototype.reset=function(){this.markAsPristine(),this.markAsUntouched(),this._setInitialStatus();var e=this.originalProps;if(e){var t=e.validate,r=e.value;this._validate=t,this.value=r}},r.prototype.addError=function(t){t&&(this.status!==e.StatusField.INVALID&&(this.status=e.StatusField.INVALID),this.errors||(this.errors=[]),this.errors.unshift(t))},r.prototype.addErrors=function(t){this.status=e.StatusField.INVALID;var r=this.errors||[];this.errors=k(k([],t,!0),r,!0)},r.prototype.setError=function(e){this.addError(e)},r.prototype.setErrors=function(e){this.addErrors(e)},O([a.observable],r.prototype,"validations",void 0),O([a.action],r.prototype,"hasValidationError",null),O([a.action],r.prototype,"validityBase",null),O([a.action],r.prototype,"validity",null),O([a.action],r.prototype,"updateValueAndValidity",null),O([a.action],r.prototype,"reset",null),O([a.action],r.prototype,"addError",null),O([a.action],r.prototype,"addErrors",null),r}(ne),se=function(e){function t(t){var r=e.call(this,t)||this;r._ns=void 0,r.render=void 0,r.fullWidth=void 0,r.grid=void 0,r.autoComplete=void 0,r.InputProps=void 0,r.textFieldProps=void 0,r.breakpoints=void 0,r.component=void 0,a.makeObservable(r);var i=t.ns,n=t.render,o=t.fullWidth,s=void 0===o||o,l=t.grid,u=void 0===l||l,d=t.autoComplete,c=t.InputProps,p=t.textFieldProps,f=t.breakpoints,h=t.component,v=t.renderErrors;return r.validate=ae.getValidation(r),r.ns=i,r.render=n,r.fullWidth=s,r.grid=u,r.autoComplete=d,r.InputProps=c,r.textFieldProps=p,r.breakpoints=f,r.component=h,r.renderErrors=v,r.getErrors=r.getErrors.bind(r),r}return _(t,e),Object.defineProperty(t.prototype,"ns",{get:function(){return void 0===this._ns?this.fieldsBuilder&&this.fieldsBuilder.ns:this._ns},set:function(e){this._ns=e},enumerable:!1,configurable:!0}),t.prototype.getErrorsBase=function(e){return x(this,void 0,void 0,(function(){var t,r,i,n,o,a,s,l,u,d,c;return D(this,(function(p){switch(p.label){case 0:if(t=S({},e).sequential,r=void 0!==t&&t,n=(i=this).validations,o=i.value,"function"!=typeof this.validate&&(this._validate=!0),a=this.validate,s=[],!a&&!this.dirty&&!this.enabled)return[2,s];if(!Array.isArray(n)||!a)return[3,6];l=0,u=n,p.label=1;case 1:return l<u.length?(d=u[l],c=void 0,"object"!=typeof d?[3,2]:(this.hasValidationError(d)&&(c=d),[3,4])):[3,6];case 2:return"function"!=typeof d?[3,4]:[4,d({field:this,fieldsBuilder:this.fieldsBuilder,validate:a,value:o})];case 3:c=p.sent(),p.label=4;case 4:if(c&&(s=k(k([],s,!0),[c],!1),r))return[3,6];p.label=5;case 5:return l++,[3,1];case 6:return[2,s.length?s:void 0]}}))}))},t.prototype.getErrors=function(){return this.getErrorsBase()},t.prototype.hasErrors=function(){return x(this,void 0,void 0,(function(){var e;return D(this,(function(t){switch(t.label){case 0:return[4,this.getErrorsBase({sequential:!0})];case 1:return[2,!(!(e=t.sent())||!e.length)]}}))}))},t.prototype.hasValid=function(){return x(this,void 0,void 0,(function(){return D(this,(function(e){switch(e.label){case 0:return[4,this.hasErrors()];case 1:return[2,!e.sent()]}}))}))},t.prototype.setValue=function(e){return x(this,void 0,void 0,(function(){var t=this;return D(this,(function(r){return a.runInAction((function(){t.value=e})),this.markAsDirty(),this.markAsTouched(),(void 0!==this.validate?this.validate:this.dirty)&&a.runInAction((function(){t.updateValueAndValidity()})),this.onSetValue&&this.onSetValue({lastValue:a.toJS(this.value),newValue:e,field:this}),[2]}))}))},O([a.observable],t.prototype,"_ns",void 0),O([a.observable],t.prototype,"render",void 0),O([a.observable],t.prototype,"fullWidth",void 0),O([a.observable],t.prototype,"grid",void 0),O([a.observable],t.prototype,"autoComplete",void 0),O([a.observable],t.prototype,"InputProps",void 0),O([a.observable],t.prototype,"textFieldProps",void 0),O([a.observable],t.prototype,"breakpoints",void 0),O([a.observable],t.prototype,"component",void 0),O([a.action],t.prototype,"setValue",null),t}(ae),le=function(e){function r(){return null!==e&&e.apply(this,arguments)||this}return _(r,e),r.prototype.render=function(){var e=this.props,r=e.fields,i=e.globalProps,n=e.grid,o=e.onChangeField;return t.createElement(t.Fragment,null,r.map((function(e){return e instanceof se&&i&&(e.globalProps=i),t.createElement(ie,S({key:e.name.toString(),field:e,onChangeField:o},{grid:n}))})))},r.defaultProps={ns:"inputs",transPosition:""},r}(t.PureComponent),ue=function(){function e(e){var t=e.fields,r=e.validate;this.valid=!0,this.fieldsMap={},this._validate=!1,a.makeObservable(this),void 0!==r&&(this._validate=r),this.callbackField=this.callbackField.bind(this),this.addErrors=this.addErrors.bind(this),this.hasErrors=this.hasErrors.bind(this),this.getErrors=this.getErrors.bind(this),this.fields=t.map((function(e){return new se(e)}));for(var i=0,n=this.fields;i<n.length;i++){var o=n[i],s=o.name;this.fieldsMap[s]=o}}return Object.defineProperty(e.prototype,"invalid",{get:function(){return!this.valid},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"validate",{get:function(){return"function"==typeof this._validate?this._validate(this):this._validate},set:function(e){this._validate=e,e&&this.validity();for(var t=0,r=this.fields||[];t<r.length;t++){var i=r[t];e&&!i._validate?i._validate=!0:i.errors=void 0}},enumerable:!1,configurable:!0}),e.prototype.callbackField=function(e){return x(this,void 0,void 0,(function(){var t,r,i,n,o;return D(this,(function(a){switch(a.label){case 0:t=this.fields,r=function(t){var r;return D(this,(function(i){switch(i.label){case 0:return r=!1,[4,e(t,(function(){return r=!0}))];case 1:return i.sent(),r?[2,"break"]:[2]}}))},i=0,n=this.fields||[],a.label=1;case 1:return i<n.length?(o=n[i],[5,r(o)]):[3,4];case 2:if("break"===a.sent())return[3,4];a.label=3;case 3:return i++,[3,1];case 4:return[2,t]}}))}))},e.prototype.validityBase=function(e){return x(this,void 0,void 0,(function(){var t,r,i,n,o,s=this;return D(this,(function(l){switch(l.label){case 0:return this.valid=!0,t=S({},e),r=t.setErrors,i=void 0===r||r,n=t.throwFirstError,o=void 0!==n&&n,[4,this.callbackField((function(e,t){return x(s,void 0,void 0,(function(){var r,n,s=this;return D(this,(function(l){switch(l.label){case 0:return e.enabled?i?[4,e.validity()]:[3,2]:[3,5];case 1:return n=l.sent(),[3,4];case 2:return[4,e.hasErrors()];case 3:n=!l.sent(),l.label=4;case 4:r=n,a.runInAction((function(){r||(s.valid=r)})),o&&!this.valid&&t(),l.label=5;case 5:return[2]}}))}))}))];case 1:return l.sent(),[2,this.valid]}}))}))},e.prototype.validity=function(){return this._validate=!0,this.validityBase()},e.prototype.hasErrors=function(e){return x(this,void 0,void 0,(function(){var t,r,i,n,o;return D(this,(function(a){switch(a.label){case 0:return t=S({},e),r=t.setErrors,i=void 0!==r&&r,n=t.throwFirstError,o=void 0!==n&&n,i&&(this._validate=!0),[4,this.validityBase({setErrors:i,throwFirstError:o})];case 1:return[2,!a.sent()]}}))}))},e.prototype.addErrors=function(e){this.validate||(this.validate=!0);var t=function(t){if(e.hasOwnProperty(t)){var i=e[t];r.callbackField((function(e){[e.name].some((function(e){return e===t}))&&e.addErrors(i)}))}},r=this;for(var i in e)t(i)},e.prototype.setErrors=function(e){e&&this.addErrors(e)},e.prototype.getErrors=function(){return x(this,void 0,void 0,(function(){var e,t,r,i,n,o,a;return D(this,(function(s){for(e={},t=0,r=this.fields;t<r.length;t++)i=r[t],n=i.name,o=i.errors,a=i.enabled,o&&a&&(e[n]=o);return[2,e]}))}))},O([a.observable],e.prototype,"valid",void 0),O([a.observable],e.prototype,"fields",void 0),O([a.observable],e.prototype,"_validate",void 0),O([a.action],e.prototype,"validityBase",null),O([a.action],e.prototype,"hasErrors",null),O([a.action],e.prototype,"addErrors",null),O([a.action],e.prototype,"setErrors",null),e}(),de=function(e){function t(t){var r=e.call(this,t)||this;r._ns=void 0,a.makeObservable(r);var i=t.ns,n=t.globalProps;r._ns=i,r.globalProps=n;for(var o=0,s=r.fields;o<s.length;o++){s[o].fieldsBuilder=r}return r.validate=r._validate,r.saveData=r.saveData.bind(r),r.restore=r.restore.bind(r),r.restoreLast=r.restoreLast.bind(r),r.onChangeField=r.onChangeField.bind(r),r.onChangeFields=r.onChangeFields.bind(r),r.setValidation=r.setValidation.bind(r),r.setErrors=r.setErrors.bind(r),r.getErrors=r.getErrors.bind(r),r.getValues=r.getValues.bind(r),r.get=r.get.bind(r),r.getField=r.getField.bind(r),r}return _(t,e),Object.defineProperty(t.prototype,"ns",{get:function(){return this._ns},set:function(e){this._ns=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"values",{get:function(){return this.getValues()},enumerable:!1,configurable:!0}),t.prototype.setField=function(e){var t=this.fields.find((function(t){var r=t.name;return e.name===r}));t&&(t.fieldsBuilder=this,t.value=e.value,t.errors=e.errors)},t.prototype.setFields=function(e){var t=this;e.forEach((function(e){return t.setField(e)}))},t.prototype.saveData=function(){var e=this,t=e.fields,r=e.ns,i=e.validate;this.paramsLast={fields:a.toJS(t),ns:r,validate:i}},t.prototype.restore=function(){for(var e=0,t=this.fields;e<t.length;e++){t[e].reset()}},t.prototype.restoreLast=function(){if(this.paramsLast){var e=this.paramsLast.fields;this.setFields(e),this.paramsLast=void 0}},t.prototype.getValues=function(){for(var e=Object.create(null),t=0,r=this.fields;t<r.length;t++){var i=r[t],n=i.name,o=i.value;e[n]=o}return a.toJS(e)},t.prototype.get=function(e){return this.fieldsMap[e]},t.prototype.getField=function(e){return this.fieldsMap[e]},t.prototype.onChangeField=function(e){var t=e.value,r=e.name,i=this.fieldsMap[r];i?i.setValue(t):console.warn("Field ".concat(r.toString()," not found"))},t.prototype.onChangeFields=function(e){var t=this;e.forEach((function(e){return t.onChangeField(e)}))},t.prototype.changeValue=function(e){var t=e.name,r=e.value,i=this.get(t);i?i.value=r:console.warn("Field ".concat(t," not found"))},t.prototype.changeValues=function(e){var t=this;e.forEach((function(e){return t.changeValue(e)}))},t.prototype.setValidation=function(e){this.validate=e},O([a.observable],t.prototype,"_ns",void 0),O([a.observable],t.prototype,"actionsExtra",void 0),O([a.action],t.prototype,"onChangeField",null),O([a.action],t.prototype,"onChangeFields",null),O([a.action],t.prototype,"changeValue",null),O([a.action],t.prototype,"changeValues",null),O([a.action],t.prototype,"setValidation",null),t}(ue);e.Animation=B,e.Field=ne,e.FieldBuilder=se,e.FieldErrorConsumer=z,e.FieldErrorProvider=function(e){var r=e.children,i=C(e,["children"]);return t.createElement(M.Provider,{value:i},r)},e.FieldRender=ie,e.FieldTranslateConsumer=N,e.FieldsBuilder=de,e.FieldsRender=le,e.GlobalTranslate=R,e.GlobalTranslateProvider=function(e){var r=e.children,i=e.translator;return t.createElement(q.Provider,{value:i},r)},e.Input=Z,e.InputValidator=ae,e.Inputs=ee,e.InputsValidator=ue,e.RenderErrorsDefault=Q,e.TransformLabel=H,e.TranslateFieldError=Y,e.TranslateFieldErrorConsumer=U,e.TranslateFieldErrorProvider=function(e){var r=e.children,i=e.translator;return t.createElement(J.Provider,{value:i},r)},e.useField=function(e){return i.useLocalObservable((function(){var t="function"==typeof e?e():e;return new se(t)}))},e.useFieldError=W,e.useFields=function(e){return i.useLocalObservable((function(){return"function"==typeof e?e():e}))},e.useGlobalTranslate=T,e.validators=oe})); //# sourceMappingURL=form-builder-production.min.js.map