| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188 | 
							- import _extends from 'babel-runtime/helpers/extends';
 
- import _typeof from 'babel-runtime/helpers/typeof';
 
- var formatRegExp = /%[sdj%]/g;
 
- export var warning = function warning() {};
 
- // don't print warning message when in production env or node runtime
 
- if (process.env.NODE_ENV !== 'production' && typeof window !== 'undefined' && typeof document !== 'undefined') {
 
-   warning = function warning(type, errors) {
 
-     if (typeof console !== 'undefined' && console.warn) {
 
-       if (errors.every(function (e) {
 
-         return typeof e === 'string';
 
-       })) {
 
-         console.warn(type, errors);
 
-       }
 
-     }
 
-   };
 
- }
 
- export function format() {
 
-   for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
 
-     args[_key] = arguments[_key];
 
-   }
 
-   var i = 1;
 
-   var f = args[0];
 
-   var len = args.length;
 
-   if (typeof f === 'function') {
 
-     return f.apply(null, args.slice(1));
 
-   }
 
-   if (typeof f === 'string') {
 
-     var str = String(f).replace(formatRegExp, function (x) {
 
-       if (x === '%%') {
 
-         return '%';
 
-       }
 
-       if (i >= len) {
 
-         return x;
 
-       }
 
-       switch (x) {
 
-         case '%s':
 
-           return String(args[i++]);
 
-         case '%d':
 
-           return Number(args[i++]);
 
-         case '%j':
 
-           try {
 
-             return JSON.stringify(args[i++]);
 
-           } catch (_) {
 
-             return '[Circular]';
 
-           }
 
-           break;
 
-         default:
 
-           return x;
 
-       }
 
-     });
 
-     for (var arg = args[i]; i < len; arg = args[++i]) {
 
-       str += ' ' + arg;
 
-     }
 
-     return str;
 
-   }
 
-   return f;
 
- }
 
- function isNativeStringType(type) {
 
-   return type === 'string' || type === 'url' || type === 'hex' || type === 'email' || type === 'pattern';
 
- }
 
- export function isEmptyValue(value, type) {
 
-   if (value === undefined || value === null) {
 
-     return true;
 
-   }
 
-   if (type === 'array' && Array.isArray(value) && !value.length) {
 
-     return true;
 
-   }
 
-   if (isNativeStringType(type) && typeof value === 'string' && !value) {
 
-     return true;
 
-   }
 
-   return false;
 
- }
 
- export function isEmptyObject(obj) {
 
-   return Object.keys(obj).length === 0;
 
- }
 
- function asyncParallelArray(arr, func, callback) {
 
-   var results = [];
 
-   var total = 0;
 
-   var arrLength = arr.length;
 
-   function count(errors) {
 
-     results.push.apply(results, errors);
 
-     total++;
 
-     if (total === arrLength) {
 
-       callback(results);
 
-     }
 
-   }
 
-   arr.forEach(function (a) {
 
-     func(a, count);
 
-   });
 
- }
 
- function asyncSerialArray(arr, func, callback) {
 
-   var index = 0;
 
-   var arrLength = arr.length;
 
-   function next(errors) {
 
-     if (errors && errors.length) {
 
-       callback(errors);
 
-       return;
 
-     }
 
-     var original = index;
 
-     index = index + 1;
 
-     if (original < arrLength) {
 
-       func(arr[original], next);
 
-     } else {
 
-       callback([]);
 
-     }
 
-   }
 
-   next([]);
 
- }
 
- function flattenObjArr(objArr) {
 
-   var ret = [];
 
-   Object.keys(objArr).forEach(function (k) {
 
-     ret.push.apply(ret, objArr[k]);
 
-   });
 
-   return ret;
 
- }
 
- export function asyncMap(objArr, option, func, callback) {
 
-   if (option.first) {
 
-     var flattenArr = flattenObjArr(objArr);
 
-     return asyncSerialArray(flattenArr, func, callback);
 
-   }
 
-   var firstFields = option.firstFields || [];
 
-   if (firstFields === true) {
 
-     firstFields = Object.keys(objArr);
 
-   }
 
-   var objArrKeys = Object.keys(objArr);
 
-   var objArrLength = objArrKeys.length;
 
-   var total = 0;
 
-   var results = [];
 
-   var next = function next(errors) {
 
-     results.push.apply(results, errors);
 
-     total++;
 
-     if (total === objArrLength) {
 
-       callback(results);
 
-     }
 
-   };
 
-   objArrKeys.forEach(function (key) {
 
-     var arr = objArr[key];
 
-     if (firstFields.indexOf(key) !== -1) {
 
-       asyncSerialArray(arr, func, next);
 
-     } else {
 
-       asyncParallelArray(arr, func, next);
 
-     }
 
-   });
 
- }
 
- export function complementError(rule) {
 
-   return function (oe) {
 
-     if (oe && oe.message) {
 
-       oe.field = oe.field || rule.fullField;
 
-       return oe;
 
-     }
 
-     return {
 
-       message: oe,
 
-       field: oe.field || rule.fullField
 
-     };
 
-   };
 
- }
 
- export function deepMerge(target, source) {
 
-   if (source) {
 
-     for (var s in source) {
 
-       if (source.hasOwnProperty(s)) {
 
-         var value = source[s];
 
-         if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && _typeof(target[s]) === 'object') {
 
-           target[s] = _extends({}, target[s], value);
 
-         } else {
 
-           target[s] = value;
 
-         }
 
-       }
 
-     }
 
-   }
 
-   return target;
 
- }
 
 
  |