mobx-react-form
Version:
Reactive MobX Form State Management
2 lines • 2.48 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("_")):"function"==typeof define&&define.amd?define(["_"],t):"object"==typeof exports?exports.MobxReactFormValidatorVJF=t(require("_")):e.MobxReactFormValidatorVJF=t(e._)}(self,(e=>(()=>{"use strict";var t={69:function(e,t,i){var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.VJF=void 0;const o=a(i(479));function r(e){return!!e&&"function"==typeof e.then&&("object"==typeof e||"function"==typeof e)}class n{constructor({config:e,state:t=null,promises:i=[]}){Object.defineProperty(this,"promises",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"extend",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"validator",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.state=t,this.promises=i,this.config=e,this.extend=null==e?void 0:e.extend,this.validator=null==e?void 0:e.package,this.extendValidator()}extendValidator(){"function"==typeof this.extend&&this.extend({validator:this.validator,form:this.state.form})}validate(e){e.validators&&((Array.isArray(e.validators)?e.validators:[e.validators]).forEach((t=>this.collectData(t,e))),this.executeValidation(e))}collectData(e,t){const i=this.handleFunctionResult(e,t);if(r(i)){const e=i.then((([e,i])=>t.setValidationAsyncData(e,i))).then((()=>this.executeAsyncValidation(t)));this.promises.push(e)}else t.validationFunctionsData.unshift({valid:i[0],message:i[1]})}executeValidation(e){e.validationFunctionsData.forEach((({valid:t,message:i})=>{!1===t&&e.invalidate(i,!1)}))}executeAsyncValidation(e){const t=e.validationAsyncData;!1===t.valid&&e.invalidate(t.message,!1,!0)}handleFunctionResult(e,t){const i=e({validator:this.validator,form:this.state.form,field:t});return Array.isArray(i)?[i[0]||!1,i[1]||"Error"]:o.default.isBoolean(i)?[i,"Error"]:o.default.isString(i)?[!1,i]:r(i)?i:[!1,"Error"]}}t.VJF=n,t.default=e=>({class:n,config:e})},479:t=>{t.exports=e}},i={};return function e(a){var o=i[a];if(void 0!==o)return o.exports;var r=i[a]={exports:{}};return t[a].call(r.exports,r,r.exports,e),r.exports}(69)})()));
//# sourceMappingURL=MobxReactFormValidatorVJF.umd.min.js.map