New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

mobx-react-form

Package Overview
Dependencies
Maintainers
1
Versions
249
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mobx-react-form - npm Package Compare versions

Comparing version 1.9.1 to 1.9.2

2

lib/Field.js

@@ -276,3 +276,3 @@ (function (global, factory) {

this.resetValidation();
if (_lodash2.default.isArray(this.$value)) this.$value = [];
if ((0, _mobx.isObservableArray)(this.$value)) this.$value = [];
if (_lodash2.default.isBoolean(this.$value)) this.$value = false;

@@ -279,0 +279,0 @@ if (_lodash2.default.isNumber(this.$value)) this.$value = 0;

@@ -197,7 +197,2 @@ (function (global, factory) {

}
}, {
key: 'loadingMessage',
value: function loadingMessage() {
return this.options.loadingMessage || 'validating...';
}
}]);

@@ -204,0 +199,0 @@

{
"name": "mobx-react-form",
"license": "MIT",
"version": "1.9.1",
"version": "1.9.2",
"author": "Claudio Savino <claudio.savino@me.com> (https://twitter.com/foxhound87)",

@@ -6,0 +6,0 @@ "description": "Automagically manage React forms state with MobX and automatic validation.",

@@ -30,3 +30,3 @@ # MobX React Form

https://mobx-react-form-demo-jojligwzdx.now.sh/
https://mobx-react-form-demo-zgltrpjjwi.now.sh/

@@ -45,4 +45,2 @@ ## Features

> Optionally using a `default` property, it will fill the field on `reset` instead of using the initial `value`.
```javascript

@@ -53,3 +51,2 @@ const fields = {

value: 'SteveJobs'
default: '',
},

@@ -83,3 +80,3 @@ email: {

> Simply pass the `fields` and `plugins` objects to the constructor
Simply pass the `fields` and `plugins` objects to the constructor

@@ -89,11 +86,9 @@ ```javascript

...
export default new Form({ fields, plugins });
```
Now define a `rules` property on the form fields as shown [here](https://github.com/foxhound87/mobx-react-form/blob/master/docs/EnablingDVRValidation.md#add-the-rules-property-to-the-form-fields).
#### Pass the form to a react component
> `form.$('fieldkey')` is a shortcut to `form.fields.fieldkey`
```javascript

@@ -139,2 +134,4 @@ import React from 'react';

> `form.$('fieldkey')` is a shortcut to `form.fields.fieldkey`
#### Deal with events

@@ -190,2 +187,3 @@

- [Defining the Form Fields](https://github.com/foxhound87/mobx-react-form/blob/master/docs/DefiningFields.md)
- [Validation Plugins](https://github.com/foxhound87/mobx-react-form/blob/master/DOCUMENTATION.md#validation-plugins)

@@ -196,3 +194,2 @@ - [Form Constructor](https://github.com/foxhound87/mobx-react-form/blob/master/DOCUMENTATION.md#form-constructor)

- [Fields API List](https://github.com/foxhound87/mobx-react-form/blob/master/docs/FormApi.md#fields-api)
- [Defining the Form Fields](https://github.com/foxhound87/mobx-react-form/blob/master/docs/DefiningFields.md)
- [Supported Validation Packages](https://github.com/foxhound87/mobx-react-form/blob/master/DOCUMENTATION.md#supported-validation-packages)

@@ -199,0 +196,0 @@ - [Remove AJV Warnings from webpack](https://github.com/foxhound87/mobx-react-form/blob/master/DOCUMENTATION.md#remove-ajv-warnings-from-webpack)

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("_"),require("mobx")):"function"==typeof define&&define.amd?define(["_","mobx"],t):"object"==typeof exports?exports.ReactiveForm=t(require("_"),require("mobx")):e.ReactiveForm=t(e._,e.mobx)}(this,function(e,t){return function(e){function t(r){if(i[r])return i[r].exports;var n=i[r]={exports:{},id:r,loaded:!1};return e[r].call(n.exports,n,n.exports,t),n.loaded=!0,n.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}([function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(5)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(5)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(r);(0,i.isStrictModeEnabled)(),t["default"]=a["default"],e.exports=t["default"]})})},function(t,i){t.exports=e},function(e,i){e.exports=t},function(e,t,i){var r,n,a,r,n,a;!function(i,o){n=[e,t],r=o,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(i,o){n=[e,t],r=o,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};t["default"]={isPromise:function(e){return!!e&&("object"===("undefined"==typeof e?"undefined":i(e))||"function"==typeof e)&&"function"==typeof e.then}},e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function a(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t,i,r,n){var a={};return Object.keys(r).forEach(function(e){a[e]=r[e]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce(function(i,r){return r(e,t,i)||i},a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var l,u,c,d,f,p,v,y,h,g,b=n(r),m=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),k=(l=function(){function e(t){var i=this,r=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];o(this,e),a(this,"$value",u,this),a(this,"interacted",c,this),a(this,"disabled",d,this),a(this,"validationErrorStack",f,this),a(this,"asyncErrorMessage",p,this),a(this,"errorMessage",v,this),a(this,"showError",y,this),a(this,"validationFunctionsData",h,this),a(this,"validationAsyncData",g,this),this.defaultValue=null,this.initialValue=null,this.sync=function(e){return b["default"].isUndefined(e.target)?void i.setValue(e):b["default"].isBoolean(i.$value)&&b["default"].isBoolean(e.target.checked)?void i.setValue(e.target.checked):void i.setValue(e.target.value)},this.initField(t,r)}return m(e,[{key:"initField",value:function(e,t){if(this.key=e,b["default"].isBoolean(t)||b["default"].isArray(t)||b["default"].isString(t)||b["default"].isNumber(t))return this.name=e,this.label=e,this.initialValue=this.parseInitialValue(t),this.defaultValue=this.initialValue,void(this.$value=this.initialValue);if(b["default"].isObject(t)){var r=t.name,n=t.label,a=t.disabled,o=t.rules,s=t.validate,l=t.related;return this.initialValue=this.parseInitialValue(t.value),this.defaultValue=this.parseDefaultValue(t["default"]),this.$value=this.initialValue,this.name=r||e,this.label=n||e,this.rules=o||null,this.validate=(0,i.toJS)(s)||null,this.disabled=a||!1,void(this.related=l||[])}}},{key:"parseInitialValue",value:function(e){return b["default"].isBoolean(e)?e:b["default"].isUndefined(e)?"":e}},{key:"parseDefaultValue",value:function(e){return b["default"].isUndefined(e)?this.initialValue:e}},{key:"getValue",value:function(){return this.$value}},{key:"setValue",value:function(e){if(this.interacted||(this.interacted=!0),this.$value!==e){if(b["default"].isNumber(this.initialValue)){var t=b["default"].toNumber(e);if(!b["default"].isString(t)&&!b["default"].isNaN(t))return void(this.$value=t)}this.$value=e}}},{key:"setInvalid",value:function(e){var t=!(arguments.length<=1||void 0===arguments[1])&&arguments[1];return t===!0?void(this.asyncErrorMessage=e):b["default"].isArray(e)?void(this.validationErrorStack=e):void this.validationErrorStack.unshift(e)}},{key:"resetValidation",value:function(){this.showError=!0,this.errorMessage=null,this.asyncErrorMessage=null,this.validationAsyncData={},this.validationFunctionsData=[],this.validationErrorStack=[]}},{key:"setValidationAsyncData",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];this.validationAsyncData=e}},{key:"clear",value:function(){this.interacted=!1,this.resetValidation(),b["default"].isArray(this.$value)&&(this.$value=[]),b["default"].isBoolean(this.$value)&&(this.$value=!1),b["default"].isNumber(this.$value)&&(this.$value=0),b["default"].isString(this.$value)&&(this.$value="")}},{key:"reset",value:function(){var e=this.defaultValue!==this.initialValue;e&&(this.$value=this.defaultValue),e||(this.$value=this.initialValue),this.interacted=!1}},{key:"update",value:function(e){this.setValue(e)}},{key:"showErrors",value:function(){var e=arguments.length<=0||void 0===arguments[0]||arguments[0];return e===!1?void(this.showError=!1):(this.errorMessage=b["default"].head(this.validationErrorStack),void(this.validationErrorStack=[]))}},{key:"showAsyncErrors",value:function(){return this.validationAsyncData.valid===!1?void(this.asyncErrorMessage=this.validationAsyncData.message):void(this.asyncErrorMessage=null)}},{key:"value",get:function(){return(0,i.isObservableArray)(this.$value)?[].slice.call(this.$value):this.$value}},{key:"default",get:function(){return this.defaultValue}},{key:"initial",get:function(){return this.initialValue}},{key:"error",get:function(){return this.showError===!1?null:this.asyncErrorMessage||this.errorMessage}},{key:"hasError",get:function(){return!b["default"].isEmpty(this.validationAsyncData)&&this.validationAsyncData.valid===!1||0!==this.validationErrorStack.length||b["default"].isString(this.errorMessage)}},{key:"isValid",get:function(){return!this.hasError}},{key:"isDirty",get:function(){return this.defaultValue!==this.$value}},{key:"isPristine",get:function(){return this.defaultValue===this.$value}},{key:"isDefault",get:function(){return this.defaultValue===this.$value}},{key:"isEmpty",get:function(){return!b["default"].isNumber(this.$value)&&(b["default"].isBoolean(this.$value)?!this.$value:b["default"].isEmpty(this.$value))}}]),e}(),u=s(l.prototype,"$value",[i.observable],{enumerable:!0,initializer:null}),c=s(l.prototype,"interacted",[i.observable],{enumerable:!0,initializer:function(){return!1}}),d=s(l.prototype,"disabled",[i.observable],{enumerable:!0,initializer:function(){return!1}}),f=s(l.prototype,"validationErrorStack",[i.observable],{enumerable:!0,initializer:function(){return[]}}),p=s(l.prototype,"asyncErrorMessage",[i.observable],{enumerable:!0,initializer:function(){return null}}),v=s(l.prototype,"errorMessage",[i.observable],{enumerable:!0,initializer:function(){return null}}),y=s(l.prototype,"showError",[i.observable],{enumerable:!0,initializer:function(){return!0}}),h=s(l.prototype,"validationFunctionsData",[i.observable],{enumerable:!0,initializer:function(){return[]}}),g=s(l.prototype,"validationAsyncData",[i.observable],{enumerable:!0,initializer:function(){return{}}}),s(l.prototype,"initField",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"initField"),l.prototype),s(l.prototype,"value",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"value"),l.prototype),s(l.prototype,"setValue",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"setValue"),l.prototype),s(l.prototype,"setInvalid",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"setInvalid"),l.prototype),s(l.prototype,"resetValidation",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"resetValidation"),l.prototype),s(l.prototype,"setValidationAsyncData",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"setValidationAsyncData"),l.prototype),s(l.prototype,"clear",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"clear"),l.prototype),s(l.prototype,"reset",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"reset"),l.prototype),s(l.prototype,"update",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"update"),l.prototype),s(l.prototype,"showErrors",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"showErrors"),l.prototype),s(l.prototype,"showAsyncErrors",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"showAsyncErrors"),l.prototype),s(l.prototype,"default",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"default"),l.prototype),s(l.prototype,"initial",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"initial"),l.prototype),s(l.prototype,"error",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"error"),l.prototype),s(l.prototype,"hasError",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"hasError"),l.prototype),s(l.prototype,"isValid",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isValid"),l.prototype),s(l.prototype,"isDirty",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isDirty"),l.prototype),s(l.prototype,"isPristine",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isPristine"),l.prototype),s(l.prototype,"isDefault",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isDefault"),l.prototype),s(l.prototype,"isEmpty",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isEmpty"),l.prototype),l);t["default"]=k,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(1),i(6),i(4)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(1),i(6),i(4)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r,n,a){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function s(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t,i,r,n){var a={};return Object.keys(r).forEach(function(e){a[e]=r[e]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce(function(i,r){return r(e,t,i)||i},a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var c,d=o(r),f=o(n),p=o(a),v=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),y=(c=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];l(this,e),this.events=[],this.fields={},this.options={validateOnInit:!0,showErrorsOnInit:!1,defaultGenericError:null,loadingMessage:null,allowRequired:!1},this.assignInitData(t),this.initValidator(t),this.initFields(t),this.observeFields(),this.options.validateOnInit===!0&&this.validate({showErrors:this.options.showErrorsOnInit})}return v(e,[{key:"assignInitData",value:function(e){var t=e.fields,i=void 0===t?{}:t,r=e.options,n=void 0===r?{}:r;d["default"].merge(this.fields,i),d["default"].merge(this.options,n)}},{key:"initValidator",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];this.validator=new f["default"](e)}},{key:"initFields",value:function(){var e=this;this.mergeSchemaDefaults();var t=Object.keys(this.fields);t.forEach(function(t){return d["default"].merge(e.fields,s({},t,new p["default"](t,e.fields[t])))})}},{key:"mergeSchemaDefaults",value:function(){var e=this,t=this.validator.schema();0===Object.keys(this.fields).length&&t&&!function(){var i=t.properties;Object.keys(i).forEach(function(t){var r=i[t].title,n=i[t]["default"];e.fields[t]={label:r,value:n}})}()}},{key:"observeFields",value:function(){var e=this;d["default"].each(this.fields,function(t,r){return(0,i.observe)(e.fields[r],"$value",function(){return e.validate({key:r,showErrors:!0,recursive:!0})})})}},{key:"validate",value:function(){var e=this,t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],i=t.key,r=void 0===i?null:i,n=t.showErrors,a=void 0===n||n,o=t.recursive,s=void 0!==o&&o,l=a&&!this.eventsRunning(["clear","reset"]);return r?(this.validator.validateField(this.fields,r,l,s),this.fields[r].isValid):new Promise(function(t){return e.validator.validateAll({recursive:s,showErrors:l,fields:e.fields,values:e.values()}),Promise.all(e.validator.promises).then(function(){return t(e.isValid)})})}},{key:"errors",value:function(){return d["default"].reduce(this.fields,function(e,t){return d["default"].set(e,t.key,t.error)},{})}},{key:"$",value:function(e){return this.fields[e]}},{key:"values",value:function(){return d["default"].mapValues(this.fields,"value")}},{key:"invalidate",value:function(e){this.validator.invalidate(e)}},{key:"eventsRunning",value:function(e){return d["default"].intersection(e,this.events).length>0}},{key:"clear",value:function(){var e="clear";this.events.push(e),this.validator.genericErrorMessage=null,d["default"].each(this.fields,function(e){return e.clear()}),this.events.pop(e)}},{key:"reset",value:function(){var e="reset";this.events.push(e),this.validator.genericErrorMessage=null,d["default"].each(this.fields,function(e){return e.reset()}),this.events.pop(e)}},{key:"update",value:function(e){var t=this;d["default"].each(e,function(e,i){return t.fields[i].update(e)})}},{key:"hasError",get:function(){return d["default"].some(this.fields,"hasError")}},{key:"isDirty",get:function(){return d["default"].some(this.fields,"isDirty")}},{key:"isPristine",get:function(){return d["default"].every(this.fields,"isPristine")}},{key:"isDefault",get:function(){return d["default"].every(this.fields,"isDefault")}},{key:"isValid",get:function(){return d["default"].every(this.fields,"isValid")}},{key:"isEmpty",get:function(){return d["default"].every(this.fields,"isEmpty")}},{key:"error",get:function(){return this.validator.genericErrorMessage}},{key:"genericError",get:function(){return this.validator.genericErrorMessage}}]),e}(),u(c.prototype,"hasError",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"hasError"),c.prototype),u(c.prototype,"isDirty",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isDirty"),c.prototype),u(c.prototype,"isPristine",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isPristine"),c.prototype),u(c.prototype,"isDefault",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isDefault"),c.prototype),u(c.prototype,"isValid",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isValid"),c.prototype),u(c.prototype,"isEmpty",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isEmpty"),c.prototype),u(c.prototype,"error",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"error"),c.prototype),u(c.prototype,"genericError",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"genericError"),c.prototype),u(c.prototype,"clear",[i.action],Object.getOwnPropertyDescriptor(c.prototype,"clear"),c.prototype),u(c.prototype,"reset",[i.action],Object.getOwnPropertyDescriptor(c.prototype,"reset"),c.prototype),c);t["default"]=y,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(1),i(9),i(8),i(7)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(1),i(9),i(8),i(7)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r,n,a,o){"use strict";function s(e){return e&&e.__esModule?e:{"default":e}}function l(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t,i,r,n){var a={};return Object.keys(r).forEach(function(e){a[e]=r[e]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce(function(i,r){return r(e,t,i)||i},a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var d,f,p=s(r),v=s(n),y=s(a),h=s(o),g=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),b=(d=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];u(this,e),this.promises=[],this.options={},this.plugins={vjf:!0,svk:!1,dvr:!1},this.validators={vjf:null,svk:null,dvr:null},l(this,"genericErrorMessage",f,this),this.assignInitData(t),this.initializePlugins(t)}return g(e,[{key:"assignInitData",value:function(e){var t=e.options,i=void 0===t?{}:t,r=e.plugins,n=void 0===r?{}:r;p["default"].merge(this.options,i),p["default"].merge(this.plugins,n)}},{key:"initializePlugins",value:function(e){var t=e.schema,i=void 0===t?{}:t,r=e.fields,n=void 0===r?{}:r;this.plugins.vjf===!0&&(this.validators.vjf=new v["default"](this.plugins.vjf,{promises:this.promises,options:this.options,fields:n})),this.plugins.svk&&(this.validators.svk=new y["default"](this.plugins.svk,{promises:this.promises,options:this.options,schema:i})),this.plugins.dvr&&(this.validators.dvr=new h["default"](this.plugins.dvr,{promises:this.promises,options:this.options}))}},{key:"schema",value:function(){return p["default"].isNull(this.validators.svk)?{}:this.validators.svk.schema}},{key:"validateAll",value:function(e){var t=this,i=e.fields,r=e.values,n=void 0===r?null:r,a=e.showErrors,o=void 0===a||a,s=e.recursive,l=void 0!==s&&s,u=this.validators.svk;this.genericErrorMessage=null,u&&u.validate(n),p["default"].each(i,function(e,r){return t.validateField(i,r,o,l)})}},{key:"validateField",value:function(e,t){var i=arguments.length<=2||void 0===arguments[2]||arguments[2],r=!(arguments.length<=3||void 0===arguments[3])&&arguments[3],n=e[t];n.resetValidation();var a=this.validators,o=a.svk,s=a.dvr,l=a.vjf;o&&o.validateField(n),s&&s.validateField(n),l&&l.validateField(n,e),n.showErrors(i),r&&this.recursiveFieldValidation(e,n,i)}},{key:"recursiveFieldValidation",value:function(e,t,i){var r=this;p["default"].isEmpty(t.related)||p["default"].each(t.related,function(t){return r.validateField(e,t,i,!1)})}},{key:"getDefaultErrorMessage",value:function(){var e=this.options.defaultGenericError;return p["default"].isString(e)?e:"The form is invalid"}},{key:"invalidate",value:function(){var e=arguments.length<=0||void 0===arguments[0]?null:arguments[0];return p["default"].isString(e)?void(this.genericErrorMessage=e):void(this.genericErrorMessage=this.getDefaultErrorMessage())}}]),e}(),f=c(d.prototype,"genericErrorMessage",[i.observable],{enumerable:!0,initializer:function(){return null}}),c(d.prototype,"validateAll",[i.action],Object.getOwnPropertyDescriptor(d.prototype,"validateAll"),d.prototype),c(d.prototype,"invalidate",[i.action],Object.getOwnPropertyDescriptor(d.prototype,"invalidate"),d.prototype),d);t["default"]=b,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var o=r(i),s=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),l=function(){function e(t){var i=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];a(this,e),this.promises=[],this.asyncRules=[],this.validators={},this.validator=null,this.extend=null,this.options={},this.assignInitData(t,i),this.extendValidator()}return s(e,[{key:"assignInitData",value:function(e,t){var i=t.options,r=void 0===i?{}:i,n=t.promises,a=void 0===n?[]:n;o["default"].merge(this.options,r),this.promises=a,this.extend=e.extend,this.validator=e["package"]||e}},{key:"extendValidator",value:function(){var e=this;o["default"].extend(this.validator,{registerAsyncRule:function(t,i){return e.registerAsyncRule(t,i)}}),o["default"].isFunction(this.extend)&&this.extend(this.validator)}},{key:"validateField",value:function(e){this.validateFieldAsync(e),this.validateFieldSync(e)}},{key:"validateFieldSync",value:function(e){var t=this.rules(e.rules,"sync");if(!o["default"].isEmpty(t[0])){var i=n({},e.key,e.value),r=n({},e.key,t),a=this.validator,s=new a(i,r);s.setAttributeNames(n({},e.key,e.label)),s.passes()||e.setInvalid(o["default"].first(s.errors.get(e.key)))}}},{key:"validateFieldAsync",value:function(e){var t=this,i=this.rules(e.rules,"async");if(!o["default"].isEmpty(i[0])){var r=n({},e.key,e.value),a=n({},e.key,i),s=this.validator,l=new s(r,a);l.setAttributeNames(n({},e.key,e.label)),e.hasError||e.setInvalid(this.loadingMessage(),!0);var u=new Promise(function(i){l.passes(function(){return t.handleAsyncPasses(e,i)}),l.fails(function(){return t.handleAsyncFails(e,l,i)})});this.promises.push(u)}}},{key:"handleAsyncPasses",value:function(e,t){e.setValidationAsyncData({valid:!0,message:""}),e.showAsyncErrors(),t()}},{key:"handleAsyncFails",value:function(e,t,i){e.setValidationAsyncData({valid:!1,message:o["default"].first(t.errors.get(e.key))}),this.executeAsyncValidation(e),e.showAsyncErrors(),i()}},{key:"executeAsyncValidation",value:function(e){e.validationAsyncData.valid===!1&&e.setInvalid(e.validationAsyncData.message,!0)}},{key:"registerAsyncRule",value:function(e,t){this.asyncRules.push(e),this.validator.registerAsync(e,t)}},{key:"rules",value:function(e,t){var i=[],r=o["default"].split(e,"|");return"sync"===t&&(i=o["default"].difference(r,this.asyncRules)),"async"===t&&(i=o["default"].intersection(r,this.asyncRules)),i}},{key:"loadingMessage",value:function(){return this.options.loadingMessage||"validating..."}}]),e}();t["default"]=l,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(1),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(1),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function a(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var s=n(i),l=n(r),u=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),c=function(){function e(t){var i=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];o(this,e),this.validate=null,this.promises=[],this.schema={},this.extend=null,this.options={ajv:{v5:!0,allErrors:!0,coerceTypes:!0,errorDataPath:"property"}},this.assignInitData(t,i),this.initAJV(t)}return u(e,[{key:"assignInitData",value:function(e,t){var i=t.options,r=void 0===i?{}:i,n=t.schema,a=void 0===n?{}:n,o=t.promises,l=void 0===o?[]:o;s["default"].merge(this.options,r),s["default"].merge(this.schema,a),this.promises=l,this.extend=e.extend}},{key:"initAJV",value:function(e){if(this.schema){var t=e["package"]||e,i=new t(this.options.ajv);s["default"].isFunction(this.extend)&&this.extend(i),this.validate=i.compile(this.schema)}}},{key:"validate",value:function(e){this.validate(this.parseValues(e))}},{key:"validateField",value:function(e){var t=this,i=a({},e.name,e.value),r=this.validate(this.parseValues(i));if(l["default"].isPromise(r)){e.hasError||e.setInvalid(this.loadingMessage(),!0);var n=r.then(function(){return e.setValidationAsyncData({valid:!0,message:""})})["catch"](function(i){return i&&t.handleAsyncError(e,i.errors)}).then(function(){return t.executeAsyncValidation(e)}).then(function(){return e.showAsyncErrors()});return void this.promises.push(n)}this.handleSyncError(e)}},{key:"handleSyncError",value:function(e){var t=s["default"].find(this.validate.errors,function(t){return s["default"].includes(t.dataPath,"."+e.name)});if(!s["default"].isUndefined(t)){var i=e.label+" "+t.message;e.setInvalid(i)}}},{key:"handleAsyncError",value:function(e,t){var i=s["default"].find(t,function(t){return s["default"].includes(t.dataPath,"."+e.name)});if(!s["default"].isUndefined(i)){var r=e.label+" "+i.message;e.setValidationAsyncData({valid:!1,message:r})}}},{key:"executeAsyncValidation",value:function(e){e.validationAsyncData.valid===!1&&e.setInvalid(e.validationAsyncData.message,!0)}},{key:"parseValues",value:function(e){return this.options.allowRequired===!0?s["default"].omitBy(e,s["default"].isEmpty||s["default"].isNull||s["default"].isUndefined||s["default"].isNaN):e}},{key:"loadingMessage",value:function(){return this.options.loadingMessage||"validating..."}}]),e}();t["default"]=c,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(1),i(2),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(1),i(2),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var s=a(i),l=a(n),u=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),c=function(){function e(t,i){var r=i.promises,n=void 0===r?[]:r,a=i.options,s=void 0===a?{}:a;o(this,e),this.enabled=!0,this.options={},this.enabled=t,this.promises=n,this.options=s}return u(e,[{key:"validateField",value:function(e,t){var i=this;if(e.validate){var n=(0,r.toJS)(e.validate);s["default"].isArray(n)&&n.map(function(r){return i.collectData(r,e,t)}),s["default"].isFunction(n)&&this.collectData(n,e,t),this.executeValidation(e)}}},{key:"collectData",value:function(e,t,i){var r=this,n=this.handleFunctionResult(e,t,i);if(l["default"].isPromise(n)){t.hasError||t.setInvalid(this.loadingMessage(),!0);var a=n.then(function(e){return t.setValidationAsyncData({valid:e[0],message:e[1]})}).then(function(){return r.executeAsyncValidation(t)}).then(function(){return t.showAsyncErrors()});return void this.promises.push(a)}t.validationFunctionsData.unshift({valid:n[0],message:n[1]})}},{key:"executeValidation",value:function(e){e.validationFunctionsData.map(function(t){return t.valid===!1&&e.setInvalid(t.message)})}},{key:"executeAsyncValidation",value:function(e){e.validationAsyncData.valid===!1&&e.setInvalid(e.validationAsyncData.message,!0)}},{key:"handleFunctionResult",value:function(e,t,i){var r=e({field:t,fields:i});if(s["default"].isArray(r)){var n=r[0]||!1,a=r[1]||"Error";return[n,a]}return s["default"].isBoolean(r)?[r,"Error"]:s["default"].isString(r)?[!1,r]:l["default"].isPromise(r)?r:[!1,"Error"]}},{key:"loadingMessage",value:function(){return this.options.loadingMessage||"validating..."}}]),e}();t["default"]=c,e.exports=t["default"]})})}])});
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("_"),require("mobx")):"function"==typeof define&&define.amd?define(["_","mobx"],t):"object"==typeof exports?exports.ReactiveForm=t(require("_"),require("mobx")):e.ReactiveForm=t(e._,e.mobx)}(this,function(e,t){return function(e){function t(r){if(i[r])return i[r].exports;var n=i[r]={exports:{},id:r,loaded:!1};return e[r].call(n.exports,n,n.exports,t),n.loaded=!0,n.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}([function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(5)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(5)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(r);(0,i.isStrictModeEnabled)(),t["default"]=a["default"],e.exports=t["default"]})})},function(t,i){t.exports=e},function(e,i){e.exports=t},function(e,t,i){var r,n,a,r,n,a;!function(i,o){n=[e,t],r=o,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(i,o){n=[e,t],r=o,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};t["default"]={isPromise:function(e){return!!e&&("object"===("undefined"==typeof e?"undefined":i(e))||"function"==typeof e)&&"function"==typeof e.then}},e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function a(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t,i,r,n){var a={};return Object.keys(r).forEach(function(e){a[e]=r[e]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce(function(i,r){return r(e,t,i)||i},a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var l,u,c,d,f,p,v,y,h,g,b=n(r),m=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),k=(l=function(){function e(t){var i=this,r=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];o(this,e),a(this,"$value",u,this),a(this,"interacted",c,this),a(this,"disabled",d,this),a(this,"validationErrorStack",f,this),a(this,"asyncErrorMessage",p,this),a(this,"errorMessage",v,this),a(this,"showError",y,this),a(this,"validationFunctionsData",h,this),a(this,"validationAsyncData",g,this),this.defaultValue=null,this.initialValue=null,this.sync=function(e){return b["default"].isUndefined(e.target)?void i.setValue(e):b["default"].isBoolean(i.$value)&&b["default"].isBoolean(e.target.checked)?void i.setValue(e.target.checked):void i.setValue(e.target.value)},this.initField(t,r)}return m(e,[{key:"initField",value:function(e,t){if(this.key=e,b["default"].isBoolean(t)||b["default"].isArray(t)||b["default"].isString(t)||b["default"].isNumber(t))return this.name=e,this.label=e,this.initialValue=this.parseInitialValue(t),this.defaultValue=this.initialValue,void(this.$value=this.initialValue);if(b["default"].isObject(t)){var r=t.name,n=t.label,a=t.disabled,o=t.rules,s=t.validate,l=t.related;return this.initialValue=this.parseInitialValue(t.value),this.defaultValue=this.parseDefaultValue(t["default"]),this.$value=this.initialValue,this.name=r||e,this.label=n||e,this.rules=o||null,this.validate=(0,i.toJS)(s)||null,this.disabled=a||!1,void(this.related=l||[])}}},{key:"parseInitialValue",value:function(e){return b["default"].isBoolean(e)?e:b["default"].isUndefined(e)?"":e}},{key:"parseDefaultValue",value:function(e){return b["default"].isUndefined(e)?this.initialValue:e}},{key:"getValue",value:function(){return this.$value}},{key:"setValue",value:function(e){if(this.interacted||(this.interacted=!0),this.$value!==e){if(b["default"].isNumber(this.initialValue)){var t=b["default"].toNumber(e);if(!b["default"].isString(t)&&!b["default"].isNaN(t))return void(this.$value=t)}this.$value=e}}},{key:"setInvalid",value:function(e){var t=!(arguments.length<=1||void 0===arguments[1])&&arguments[1];return t===!0?void(this.asyncErrorMessage=e):b["default"].isArray(e)?void(this.validationErrorStack=e):void this.validationErrorStack.unshift(e)}},{key:"resetValidation",value:function(){this.showError=!0,this.errorMessage=null,this.asyncErrorMessage=null,this.validationAsyncData={},this.validationFunctionsData=[],this.validationErrorStack=[]}},{key:"setValidationAsyncData",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];this.validationAsyncData=e}},{key:"clear",value:function(){this.interacted=!1,this.resetValidation(),(0,i.isObservableArray)(this.$value)&&(this.$value=[]),b["default"].isBoolean(this.$value)&&(this.$value=!1),b["default"].isNumber(this.$value)&&(this.$value=0),b["default"].isString(this.$value)&&(this.$value="")}},{key:"reset",value:function(){var e=this.defaultValue!==this.initialValue;e&&(this.$value=this.defaultValue),e||(this.$value=this.initialValue),this.interacted=!1}},{key:"update",value:function(e){this.setValue(e)}},{key:"showErrors",value:function(){var e=arguments.length<=0||void 0===arguments[0]||arguments[0];return e===!1?void(this.showError=!1):(this.errorMessage=b["default"].head(this.validationErrorStack),void(this.validationErrorStack=[]))}},{key:"showAsyncErrors",value:function(){return this.validationAsyncData.valid===!1?void(this.asyncErrorMessage=this.validationAsyncData.message):void(this.asyncErrorMessage=null)}},{key:"value",get:function(){return(0,i.isObservableArray)(this.$value)?[].slice.call(this.$value):this.$value}},{key:"default",get:function(){return this.defaultValue}},{key:"initial",get:function(){return this.initialValue}},{key:"error",get:function(){return this.showError===!1?null:this.asyncErrorMessage||this.errorMessage}},{key:"hasError",get:function(){return!b["default"].isEmpty(this.validationAsyncData)&&this.validationAsyncData.valid===!1||0!==this.validationErrorStack.length||b["default"].isString(this.errorMessage)}},{key:"isValid",get:function(){return!this.hasError}},{key:"isDirty",get:function(){return this.defaultValue!==this.$value}},{key:"isPristine",get:function(){return this.defaultValue===this.$value}},{key:"isDefault",get:function(){return this.defaultValue===this.$value}},{key:"isEmpty",get:function(){return!b["default"].isNumber(this.$value)&&(b["default"].isBoolean(this.$value)?!this.$value:b["default"].isEmpty(this.$value))}}]),e}(),u=s(l.prototype,"$value",[i.observable],{enumerable:!0,initializer:null}),c=s(l.prototype,"interacted",[i.observable],{enumerable:!0,initializer:function(){return!1}}),d=s(l.prototype,"disabled",[i.observable],{enumerable:!0,initializer:function(){return!1}}),f=s(l.prototype,"validationErrorStack",[i.observable],{enumerable:!0,initializer:function(){return[]}}),p=s(l.prototype,"asyncErrorMessage",[i.observable],{enumerable:!0,initializer:function(){return null}}),v=s(l.prototype,"errorMessage",[i.observable],{enumerable:!0,initializer:function(){return null}}),y=s(l.prototype,"showError",[i.observable],{enumerable:!0,initializer:function(){return!0}}),h=s(l.prototype,"validationFunctionsData",[i.observable],{enumerable:!0,initializer:function(){return[]}}),g=s(l.prototype,"validationAsyncData",[i.observable],{enumerable:!0,initializer:function(){return{}}}),s(l.prototype,"initField",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"initField"),l.prototype),s(l.prototype,"value",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"value"),l.prototype),s(l.prototype,"setValue",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"setValue"),l.prototype),s(l.prototype,"setInvalid",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"setInvalid"),l.prototype),s(l.prototype,"resetValidation",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"resetValidation"),l.prototype),s(l.prototype,"setValidationAsyncData",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"setValidationAsyncData"),l.prototype),s(l.prototype,"clear",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"clear"),l.prototype),s(l.prototype,"reset",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"reset"),l.prototype),s(l.prototype,"update",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"update"),l.prototype),s(l.prototype,"showErrors",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"showErrors"),l.prototype),s(l.prototype,"showAsyncErrors",[i.action],Object.getOwnPropertyDescriptor(l.prototype,"showAsyncErrors"),l.prototype),s(l.prototype,"default",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"default"),l.prototype),s(l.prototype,"initial",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"initial"),l.prototype),s(l.prototype,"error",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"error"),l.prototype),s(l.prototype,"hasError",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"hasError"),l.prototype),s(l.prototype,"isValid",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isValid"),l.prototype),s(l.prototype,"isDirty",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isDirty"),l.prototype),s(l.prototype,"isPristine",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isPristine"),l.prototype),s(l.prototype,"isDefault",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isDefault"),l.prototype),s(l.prototype,"isEmpty",[i.computed],Object.getOwnPropertyDescriptor(l.prototype,"isEmpty"),l.prototype),l);t["default"]=k,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(1),i(6),i(4)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(1),i(6),i(4)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r,n,a){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function s(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t,i,r,n){var a={};return Object.keys(r).forEach(function(e){a[e]=r[e]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce(function(i,r){return r(e,t,i)||i},a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var c,d=o(r),f=o(n),p=o(a),v=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),y=(c=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];l(this,e),this.events=[],this.fields={},this.options={validateOnInit:!0,showErrorsOnInit:!1,defaultGenericError:null,loadingMessage:null,allowRequired:!1},this.assignInitData(t),this.initValidator(t),this.initFields(t),this.observeFields(),this.options.validateOnInit===!0&&this.validate({showErrors:this.options.showErrorsOnInit})}return v(e,[{key:"assignInitData",value:function(e){var t=e.fields,i=void 0===t?{}:t,r=e.options,n=void 0===r?{}:r;d["default"].merge(this.fields,i),d["default"].merge(this.options,n)}},{key:"initValidator",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];this.validator=new f["default"](e)}},{key:"initFields",value:function(){var e=this;this.mergeSchemaDefaults();var t=Object.keys(this.fields);t.forEach(function(t){return d["default"].merge(e.fields,s({},t,new p["default"](t,e.fields[t])))})}},{key:"mergeSchemaDefaults",value:function(){var e=this,t=this.validator.schema();0===Object.keys(this.fields).length&&t&&!function(){var i=t.properties;Object.keys(i).forEach(function(t){var r=i[t].title,n=i[t]["default"];e.fields[t]={label:r,value:n}})}()}},{key:"observeFields",value:function(){var e=this;d["default"].each(this.fields,function(t,r){return(0,i.observe)(e.fields[r],"$value",function(){return e.validate({key:r,showErrors:!0,recursive:!0})})})}},{key:"validate",value:function(){var e=this,t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],i=t.key,r=void 0===i?null:i,n=t.showErrors,a=void 0===n||n,o=t.recursive,s=void 0!==o&&o,l=a&&!this.eventsRunning(["clear","reset"]);return r?(this.validator.validateField(this.fields,r,l,s),this.fields[r].isValid):new Promise(function(t){return e.validator.validateAll({recursive:s,showErrors:l,fields:e.fields,values:e.values()}),Promise.all(e.validator.promises).then(function(){return t(e.isValid)})})}},{key:"errors",value:function(){return d["default"].reduce(this.fields,function(e,t){return d["default"].set(e,t.key,t.error)},{})}},{key:"$",value:function(e){return this.fields[e]}},{key:"values",value:function(){return d["default"].mapValues(this.fields,"value")}},{key:"invalidate",value:function(e){this.validator.invalidate(e)}},{key:"eventsRunning",value:function(e){return d["default"].intersection(e,this.events).length>0}},{key:"clear",value:function(){var e="clear";this.events.push(e),this.validator.genericErrorMessage=null,d["default"].each(this.fields,function(e){return e.clear()}),this.events.pop(e)}},{key:"reset",value:function(){var e="reset";this.events.push(e),this.validator.genericErrorMessage=null,d["default"].each(this.fields,function(e){return e.reset()}),this.events.pop(e)}},{key:"update",value:function(e){var t=this;d["default"].each(e,function(e,i){return t.fields[i].update(e)})}},{key:"hasError",get:function(){return d["default"].some(this.fields,"hasError")}},{key:"isDirty",get:function(){return d["default"].some(this.fields,"isDirty")}},{key:"isPristine",get:function(){return d["default"].every(this.fields,"isPristine")}},{key:"isDefault",get:function(){return d["default"].every(this.fields,"isDefault")}},{key:"isValid",get:function(){return d["default"].every(this.fields,"isValid")}},{key:"isEmpty",get:function(){return d["default"].every(this.fields,"isEmpty")}},{key:"error",get:function(){return this.validator.genericErrorMessage}},{key:"genericError",get:function(){return this.validator.genericErrorMessage}}]),e}(),u(c.prototype,"hasError",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"hasError"),c.prototype),u(c.prototype,"isDirty",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isDirty"),c.prototype),u(c.prototype,"isPristine",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isPristine"),c.prototype),u(c.prototype,"isDefault",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isDefault"),c.prototype),u(c.prototype,"isValid",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isValid"),c.prototype),u(c.prototype,"isEmpty",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"isEmpty"),c.prototype),u(c.prototype,"error",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"error"),c.prototype),u(c.prototype,"genericError",[i.computed],Object.getOwnPropertyDescriptor(c.prototype,"genericError"),c.prototype),u(c.prototype,"clear",[i.action],Object.getOwnPropertyDescriptor(c.prototype,"clear"),c.prototype),u(c.prototype,"reset",[i.action],Object.getOwnPropertyDescriptor(c.prototype,"reset"),c.prototype),c);t["default"]=y,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(2),i(1),i(9),i(8),i(7)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(2),i(1),i(9),i(8),i(7)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r,n,a,o){"use strict";function s(e){return e&&e.__esModule?e:{"default":e}}function l(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t,i,r,n){var a={};return Object.keys(r).forEach(function(e){a[e]=r[e]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce(function(i,r){return r(e,t,i)||i},a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var d,f,p=s(r),v=s(n),y=s(a),h=s(o),g=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),b=(d=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];u(this,e),this.promises=[],this.options={},this.plugins={vjf:!0,svk:!1,dvr:!1},this.validators={vjf:null,svk:null,dvr:null},l(this,"genericErrorMessage",f,this),this.assignInitData(t),this.initializePlugins(t)}return g(e,[{key:"assignInitData",value:function(e){var t=e.options,i=void 0===t?{}:t,r=e.plugins,n=void 0===r?{}:r;p["default"].merge(this.options,i),p["default"].merge(this.plugins,n)}},{key:"initializePlugins",value:function(e){var t=e.schema,i=void 0===t?{}:t,r=e.fields,n=void 0===r?{}:r;this.plugins.vjf===!0&&(this.validators.vjf=new v["default"](this.plugins.vjf,{promises:this.promises,options:this.options,fields:n})),this.plugins.svk&&(this.validators.svk=new y["default"](this.plugins.svk,{promises:this.promises,options:this.options,schema:i})),this.plugins.dvr&&(this.validators.dvr=new h["default"](this.plugins.dvr,{promises:this.promises,options:this.options}))}},{key:"schema",value:function(){return p["default"].isNull(this.validators.svk)?{}:this.validators.svk.schema}},{key:"validateAll",value:function(e){var t=this,i=e.fields,r=e.values,n=void 0===r?null:r,a=e.showErrors,o=void 0===a||a,s=e.recursive,l=void 0!==s&&s,u=this.validators.svk;this.genericErrorMessage=null,u&&u.validate(n),p["default"].each(i,function(e,r){return t.validateField(i,r,o,l)})}},{key:"validateField",value:function(e,t){var i=arguments.length<=2||void 0===arguments[2]||arguments[2],r=!(arguments.length<=3||void 0===arguments[3])&&arguments[3],n=e[t];n.resetValidation();var a=this.validators,o=a.svk,s=a.dvr,l=a.vjf;o&&o.validateField(n),s&&s.validateField(n),l&&l.validateField(n,e),n.showErrors(i),r&&this.recursiveFieldValidation(e,n,i)}},{key:"recursiveFieldValidation",value:function(e,t,i){var r=this;p["default"].isEmpty(t.related)||p["default"].each(t.related,function(t){return r.validateField(e,t,i,!1)})}},{key:"getDefaultErrorMessage",value:function(){var e=this.options.defaultGenericError;return p["default"].isString(e)?e:"The form is invalid"}},{key:"invalidate",value:function(){var e=arguments.length<=0||void 0===arguments[0]?null:arguments[0];return p["default"].isString(e)?void(this.genericErrorMessage=e):void(this.genericErrorMessage=this.getDefaultErrorMessage())}}]),e}(),f=c(d.prototype,"genericErrorMessage",[i.observable],{enumerable:!0,initializer:function(){return null}}),c(d.prototype,"validateAll",[i.action],Object.getOwnPropertyDescriptor(d.prototype,"validateAll"),d.prototype),c(d.prototype,"invalidate",[i.action],Object.getOwnPropertyDescriptor(d.prototype,"invalidate"),d.prototype),d);t["default"]=b,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(1)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var o=r(i),s=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),l=function(){function e(t){var i=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];a(this,e),this.promises=[],this.asyncRules=[],this.validators={},this.validator=null,this.extend=null,this.options={},this.assignInitData(t,i),this.extendValidator()}return s(e,[{key:"assignInitData",value:function(e,t){var i=t.options,r=void 0===i?{}:i,n=t.promises,a=void 0===n?[]:n;o["default"].merge(this.options,r),this.promises=a,this.extend=e.extend,this.validator=e["package"]||e}},{key:"extendValidator",value:function(){var e=this;o["default"].extend(this.validator,{registerAsyncRule:function(t,i){return e.registerAsyncRule(t,i)}}),o["default"].isFunction(this.extend)&&this.extend(this.validator)}},{key:"validateField",value:function(e){this.validateFieldAsync(e),this.validateFieldSync(e)}},{key:"validateFieldSync",value:function(e){var t=this.rules(e.rules,"sync");if(!o["default"].isEmpty(t[0])){var i=n({},e.key,e.value),r=n({},e.key,t),a=this.validator,s=new a(i,r);s.setAttributeNames(n({},e.key,e.label)),s.passes()||e.setInvalid(o["default"].first(s.errors.get(e.key)))}}},{key:"validateFieldAsync",value:function(e){var t=this,i=this.rules(e.rules,"async");if(!o["default"].isEmpty(i[0])){var r=n({},e.key,e.value),a=n({},e.key,i),s=this.validator,l=new s(r,a);l.setAttributeNames(n({},e.key,e.label)),e.hasError||e.setInvalid(this.loadingMessage(),!0);var u=new Promise(function(i){l.passes(function(){return t.handleAsyncPasses(e,i)}),l.fails(function(){return t.handleAsyncFails(e,l,i)})});this.promises.push(u)}}},{key:"handleAsyncPasses",value:function(e,t){e.setValidationAsyncData({valid:!0,message:""}),e.showAsyncErrors(),t()}},{key:"handleAsyncFails",value:function(e,t,i){e.setValidationAsyncData({valid:!1,message:o["default"].first(t.errors.get(e.key))}),this.executeAsyncValidation(e),e.showAsyncErrors(),i()}},{key:"executeAsyncValidation",value:function(e){e.validationAsyncData.valid===!1&&e.setInvalid(e.validationAsyncData.message,!0)}},{key:"registerAsyncRule",value:function(e,t){this.asyncRules.push(e),this.validator.registerAsync(e,t)}},{key:"rules",value:function(e,t){var i=[],r=o["default"].split(e,"|");return"sync"===t&&(i=o["default"].difference(r,this.asyncRules)),"async"===t&&(i=o["default"].intersection(r,this.asyncRules)),i}},{key:"loadingMessage",value:function(){return this.options.loadingMessage||"validating..."}}]),e}();t["default"]=l,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(1),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(1),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function a(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var s=n(i),l=n(r),u=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),c=function(){function e(t){var i=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];o(this,e),this.validate=null,this.promises=[],this.schema={},this.extend=null,this.options={ajv:{v5:!0,allErrors:!0,coerceTypes:!0,errorDataPath:"property"}},this.assignInitData(t,i),this.initAJV(t)}return u(e,[{key:"assignInitData",value:function(e,t){var i=t.options,r=void 0===i?{}:i,n=t.schema,a=void 0===n?{}:n,o=t.promises,l=void 0===o?[]:o;s["default"].merge(this.options,r),s["default"].merge(this.schema,a),this.promises=l,this.extend=e.extend}},{key:"initAJV",value:function(e){if(this.schema){var t=e["package"]||e,i=new t(this.options.ajv);s["default"].isFunction(this.extend)&&this.extend(i),this.validate=i.compile(this.schema)}}},{key:"validate",value:function(e){this.validate(this.parseValues(e))}},{key:"validateField",value:function(e){var t=this,i=a({},e.name,e.value),r=this.validate(this.parseValues(i));if(l["default"].isPromise(r)){e.hasError||e.setInvalid(this.loadingMessage(),!0);var n=r.then(function(){return e.setValidationAsyncData({valid:!0,message:""})})["catch"](function(i){return i&&t.handleAsyncError(e,i.errors)}).then(function(){return t.executeAsyncValidation(e)}).then(function(){return e.showAsyncErrors()});return void this.promises.push(n)}this.handleSyncError(e)}},{key:"handleSyncError",value:function(e){var t=s["default"].find(this.validate.errors,function(t){return s["default"].includes(t.dataPath,"."+e.name)});if(!s["default"].isUndefined(t)){var i=e.label+" "+t.message;e.setInvalid(i)}}},{key:"handleAsyncError",value:function(e,t){var i=s["default"].find(t,function(t){return s["default"].includes(t.dataPath,"."+e.name)});if(!s["default"].isUndefined(i)){var r=e.label+" "+i.message;e.setValidationAsyncData({valid:!1,message:r})}}},{key:"executeAsyncValidation",value:function(e){e.validationAsyncData.valid===!1&&e.setInvalid(e.validationAsyncData.message,!0)}},{key:"parseValues",value:function(e){return this.options.allowRequired===!0?s["default"].omitBy(e,s["default"].isEmpty||s["default"].isNull||s["default"].isUndefined||s["default"].isNaN):e}}]),e}();t["default"]=c,e.exports=t["default"]})})},function(e,t,i){var r,n,a,r,n,a;!function(o,s){n=[e,t,i(1),i(2),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t){!function(o,s){n=[e,t,i(1),i(2),i(3)],r=s,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(this,function(e,t,i,r,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=void 0;var s=a(i),l=a(n),u=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,i,r){return i&&e(t.prototype,i),r&&e(t,r),t}}(),c=function(){function e(t,i){var r=i.promises,n=void 0===r?[]:r,a=i.options,s=void 0===a?{}:a;o(this,e),this.enabled=!0,this.options={},this.enabled=t,this.promises=n,this.options=s}return u(e,[{key:"validateField",value:function(e,t){var i=this;if(e.validate){var n=(0,r.toJS)(e.validate);s["default"].isArray(n)&&n.map(function(r){return i.collectData(r,e,t)}),s["default"].isFunction(n)&&this.collectData(n,e,t),this.executeValidation(e)}}},{key:"collectData",value:function(e,t,i){var r=this,n=this.handleFunctionResult(e,t,i);if(l["default"].isPromise(n)){t.hasError||t.setInvalid(this.loadingMessage(),!0);var a=n.then(function(e){return t.setValidationAsyncData({valid:e[0],message:e[1]})}).then(function(){return r.executeAsyncValidation(t)}).then(function(){return t.showAsyncErrors()});return void this.promises.push(a)}t.validationFunctionsData.unshift({valid:n[0],message:n[1]})}},{key:"executeValidation",value:function(e){e.validationFunctionsData.map(function(t){return t.valid===!1&&e.setInvalid(t.message)})}},{key:"executeAsyncValidation",value:function(e){e.validationAsyncData.valid===!1&&e.setInvalid(e.validationAsyncData.message,!0)}},{key:"handleFunctionResult",value:function(e,t,i){var r=e({field:t,fields:i});if(s["default"].isArray(r)){var n=r[0]||!1,a=r[1]||"Error";return[n,a]}return s["default"].isBoolean(r)?[r,"Error"]:s["default"].isString(r)?[!1,r]:l["default"].isPromise(r)?r:[!1,"Error"]}},{key:"loadingMessage",value:function(){return this.options.loadingMessage||"validating..."}}]),e}();t["default"]=c,e.exports=t["default"]})})}])});
//# sourceMappingURL=index.umd.min.js.map

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc