vee-validate 2.2.11 → 2.2.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/locale/ar.js +1 -1
  2. package/dist/locale/az.js +1 -1
  3. package/dist/locale/bg.js +1 -1
  4. package/dist/locale/ca.js +1 -1
  5. package/dist/locale/cs.js +1 -1
  6. package/dist/locale/da.js +1 -1
  7. package/dist/locale/de.js +1 -1
  8. package/dist/locale/el.js +1 -1
  9. package/dist/locale/en.js +1 -1
  10. package/dist/locale/es.js +1 -1
  11. package/dist/locale/et.js +1 -1
  12. package/dist/locale/eu.js +1 -1
  13. package/dist/locale/fa.js +1 -1
  14. package/dist/locale/fi.js +1 -1
  15. package/dist/locale/fr.js +1 -1
  16. package/dist/locale/he.js +1 -1
  17. package/dist/locale/hi.js +1 -1
  18. package/dist/locale/hr.js +1 -1
  19. package/dist/locale/hu.js +1 -1
  20. package/dist/locale/id.js +1 -1
  21. package/dist/locale/it.js +1 -1
  22. package/dist/locale/ja.js +1 -1
  23. package/dist/locale/ka.js +1 -1
  24. package/dist/locale/ko.js +1 -1
  25. package/dist/locale/lt.js +1 -1
  26. package/dist/locale/lv.js +1 -1
  27. package/dist/locale/mn.js +1 -1
  28. package/dist/locale/ms_MY.js +1 -1
  29. package/dist/locale/nb_NO.js +1 -1
  30. package/dist/locale/ne.js +1 -1
  31. package/dist/locale/nl.js +1 -1
  32. package/dist/locale/nn_NO.js +1 -1
  33. package/dist/locale/pl.js +1 -1
  34. package/dist/locale/pt_BR.js +1 -1
  35. package/dist/locale/pt_PT.js +1 -1
  36. package/dist/locale/ro.js +1 -1
  37. package/dist/locale/ru.js +1 -1
  38. package/dist/locale/sk.js +1 -1
  39. package/dist/locale/sl.js +1 -1
  40. package/dist/locale/sq.js +1 -1
  41. package/dist/locale/sr.js +1 -1
  42. package/dist/locale/sr_Latin.js +1 -1
  43. package/dist/locale/sv.js +1 -1
  44. package/dist/locale/tr.js +1 -1
  45. package/dist/locale/uk.js +1 -1
  46. package/dist/locale/vi.js +1 -1
  47. package/dist/locale/zh_TW.js +1 -1
  48. package/dist/rules.esm.js +154 -152
  49. package/dist/vee-validate.esm.js +203 -200
  50. package/dist/vee-validate.js +204 -201
  51. package/dist/vee-validate.min.js +1 -1
  52. package/dist/vee-validate.minimal.esm.js +14 -15
  53. package/dist/vee-validate.minimal.js +14 -15
  54. package/dist/vee-validate.minimal.min.js +1 -1
  55. package/package.json +15 -15
  56. package/types/vee-validate.d.ts +1 -0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * vee-validate v2.2.11
2
+ * vee-validate v2.2.15
3
3
  * (c) 2019 Abdelrahman Awad
4
4
  * @license MIT
5
5
  */
@@ -973,12 +973,15 @@ ErrorBag.prototype.clear = function clear (scope) {
973
973
  var this$1 = this;
974
974
 
975
975
  var matchesVM = isNullOrUndefined(this.vmId) ? function () { return true; } : function (i) { return i.vmId === this$1.vmId; };
976
- if (isNullOrUndefined(scope)) {
976
+ var matchesScope = function (i) { return i.scope === scope; };
977
+ if (arguments.length === 0) {
978
+ matchesScope = function () { return true; };
979
+ } else if (isNullOrUndefined(scope)) {
977
980
  scope = null;
978
981
  }
979
982
 
980
983
  for (var i = 0; i < this.items.length; ++i) {
981
- if (matchesVM(this.items[i]) && this.items[i].scope === scope) {
984
+ if (matchesVM(this.items[i]) && matchesScope(this.items[i])) {
982
985
  this.items.splice(i, 1);
983
986
  --i;
984
987
  }
@@ -1340,22 +1343,18 @@ function findModelConfig (vnode) {
1340
1343
  }
1341
1344
  // Adds a listener to vnode listener object.
1342
1345
  function mergeVNodeListeners (obj, eventName, handler) {
1343
- // Has a single listener.
1346
+ // Has a single listener, convert to array.
1344
1347
  if (isCallable(obj[eventName])) {
1345
1348
  var prevHandler = obj[eventName];
1346
1349
  obj[eventName] = [prevHandler];
1347
1350
  }
1348
1351
 
1349
- // has other listeners.
1350
- if (Array.isArray(obj[eventName])) {
1351
- obj[eventName].push(handler);
1352
- return;
1353
- }
1354
-
1355
- // no listener at all.
1352
+ // no listeners, create the array.
1356
1353
  if (isNullOrUndefined(obj[eventName])) {
1357
- obj[eventName] = [handler];
1354
+ obj[eventName] = [];
1358
1355
  }
1356
+
1357
+ obj[eventName].push(handler);
1359
1358
  }
1360
1359
 
1361
1360
  // Adds a listener to a native HTML vnode.
@@ -4174,112 +4173,112 @@ var isDefinedGlobally = function () {
4174
4173
  var obj;
4175
4174
 
4176
4175
  var messages = {
4177
- _default: function (field) { return ("The " + field + " value is not valid."); },
4176
+ _default: function (field) { return ("The " + field + " value is not valid"); },
4178
4177
  after: function (field, ref) {
4179
4178
  var target = ref[0];
4180
4179
  var inclusion = ref[1];
4181
4180
 
4182
- return ("The " + field + " must be after " + (inclusion ? 'or equal to ' : '') + target + ".");
4181
+ return ("The " + field + " must be after " + (inclusion ? 'or equal to ' : '') + target);
4183
4182
  },
4184
- alpha: function (field) { return ("The " + field + " field may only contain alphabetic characters."); },
4185
- alpha_dash: function (field) { return ("The " + field + " field may contain alpha-numeric characters as well as dashes and underscores."); },
4186
- alpha_num: function (field) { return ("The " + field + " field may only contain alpha-numeric characters."); },
4187
- alpha_spaces: function (field) { return ("The " + field + " field may only contain alphabetic characters as well as spaces."); },
4183
+ alpha: function (field) { return ("The " + field + " field may only contain alphabetic characters"); },
4184
+ alpha_dash: function (field) { return ("The " + field + " field may contain alpha-numeric characters as well as dashes and underscores"); },
4185
+ alpha_num: function (field) { return ("The " + field + " field may only contain alpha-numeric characters"); },
4186
+ alpha_spaces: function (field) { return ("The " + field + " field may only contain alphabetic characters as well as spaces"); },
4188
4187
  before: function (field, ref) {
4189
4188
  var target = ref[0];
4190
4189
  var inclusion = ref[1];
4191
4190
 
4192
- return ("The " + field + " must be before " + (inclusion ? 'or equal to ' : '') + target + ".");
4191
+ return ("The " + field + " must be before " + (inclusion ? 'or equal to ' : '') + target);
4193
4192
  },
4194
4193
  between: function (field, ref) {
4195
4194
  var min = ref[0];
4196
4195
  var max = ref[1];
4197
4196
 
4198
- return ("The " + field + " field must be between " + min + " and " + max + ".");
4197
+ return ("The " + field + " field must be between " + min + " and " + max);
4199
4198
  },
4200
- confirmed: function (field) { return ("The " + field + " confirmation does not match."); },
4201
- credit_card: function (field) { return ("The " + field + " field is invalid."); },
4199
+ confirmed: function (field) { return ("The " + field + " confirmation does not match"); },
4200
+ credit_card: function (field) { return ("The " + field + " field is invalid"); },
4202
4201
  date_between: function (field, ref) {
4203
4202
  var min = ref[0];
4204
4203
  var max = ref[1];
4205
4204
 
4206
- return ("The " + field + " must be between " + min + " and " + max + ".");
4205
+ return ("The " + field + " must be between " + min + " and " + max);
4207
4206
  },
4208
4207
  date_format: function (field, ref) {
4209
4208
  var format = ref[0];
4210
4209
 
4211
- return ("The " + field + " must be in the format " + format + ".");
4210
+ return ("The " + field + " must be in the format " + format);
4212
4211
  },
4213
4212
  decimal: function (field, ref) {
4214
4213
  if ( ref === void 0 ) ref = [];
4215
4214
  var decimals = ref[0]; if ( decimals === void 0 ) decimals = '*';
4216
4215
 
4217
- return ("The " + field + " field must be numeric and may contain" + (!decimals || decimals === '*' ? '' : decimals) + " decimal points.");
4216
+ return ("The " + field + " field must be numeric and may contain" + (!decimals || decimals === '*' ? '' : ' ' + decimals) + " decimal points");
4218
4217
  },
4219
4218
  digits: function (field, ref) {
4220
4219
  var length = ref[0];
4221
4220
 
4222
- return ("The " + field + " field must be numeric and contains exactly " + length + " digits.");
4221
+ return ("The " + field + " field must be numeric and contains exactly " + length + " digits");
4223
4222
  },
4224
4223
  dimensions: function (field, ref) {
4225
4224
  var width = ref[0];
4226
4225
  var height = ref[1];
4227
4226
 
4228
- return ("The " + field + " field must be " + width + " pixels by " + height + " pixels.");
4227
+ return ("The " + field + " field must be " + width + " pixels by " + height + " pixels");
4229
4228
  },
4230
- email: function (field) { return ("The " + field + " field must be a valid email."); },
4231
- excluded: function (field) { return ("The " + field + " field must be a valid value."); },
4232
- ext: function (field) { return ("The " + field + " field must be a valid file."); },
4233
- image: function (field) { return ("The " + field + " field must be an image."); },
4234
- included: function (field) { return ("The " + field + " field must be a valid value."); },
4235
- integer: function (field) { return ("The " + field + " field must be an integer."); },
4236
- ip: function (field) { return ("The " + field + " field must be a valid ip address."); },
4237
- ip_or_fqdn: function (field) { return ("The " + field + " field must be a valid ip address or FQDN."); },
4229
+ email: function (field) { return ("The " + field + " field must be a valid email"); },
4230
+ excluded: function (field) { return ("The " + field + " field must be a valid value"); },
4231
+ ext: function (field) { return ("The " + field + " field must be a valid file"); },
4232
+ image: function (field) { return ("The " + field + " field must be an image"); },
4233
+ included: function (field) { return ("The " + field + " field must be a valid value"); },
4234
+ integer: function (field) { return ("The " + field + " field must be an integer"); },
4235
+ ip: function (field) { return ("The " + field + " field must be a valid ip address"); },
4236
+ ip_or_fqdn: function (field) { return ("The " + field + " field must be a valid ip address or FQDN"); },
4238
4237
  length: function (field, ref) {
4239
4238
  var length = ref[0];
4240
4239
  var max = ref[1];
4241
4240
 
4242
4241
  if (max) {
4243
- return ("The " + field + " length must be between " + length + " and " + max + ".");
4242
+ return ("The " + field + " length must be between " + length + " and " + max);
4244
4243
  }
4245
4244
 
4246
- return ("The " + field + " length must be " + length + ".");
4245
+ return ("The " + field + " length must be " + length);
4247
4246
  },
4248
4247
  max: function (field, ref) {
4249
4248
  var length = ref[0];
4250
4249
 
4251
- return ("The " + field + " field may not be greater than " + length + " characters.");
4250
+ return ("The " + field + " field may not be greater than " + length + " characters");
4252
4251
  },
4253
4252
  max_value: function (field, ref) {
4254
4253
  var max = ref[0];
4255
4254
 
4256
- return ("The " + field + " field must be " + max + " or less.");
4255
+ return ("The " + field + " field must be " + max + " or less");
4257
4256
  },
4258
- mimes: function (field) { return ("The " + field + " field must have a valid file type."); },
4257
+ mimes: function (field) { return ("The " + field + " field must have a valid file type"); },
4259
4258
  min: function (field, ref) {
4260
4259
  var length = ref[0];
4261
4260
 
4262
- return ("The " + field + " field must be at least " + length + " characters.");
4261
+ return ("The " + field + " field must be at least " + length + " characters");
4263
4262
  },
4264
4263
  min_value: function (field, ref) {
4265
4264
  var min = ref[0];
4266
4265
 
4267
- return ("The " + field + " field must be " + min + " or more.");
4266
+ return ("The " + field + " field must be " + min + " or more");
4268
4267
  },
4269
- numeric: function (field) { return ("The " + field + " field may only contain numeric characters."); },
4270
- regex: function (field) { return ("The " + field + " field format is invalid."); },
4271
- required: function (field) { return ("The " + field + " field is required."); },
4268
+ numeric: function (field) { return ("The " + field + " field may only contain numeric characters"); },
4269
+ regex: function (field) { return ("The " + field + " field format is invalid"); },
4270
+ required: function (field) { return ("The " + field + " field is required"); },
4272
4271
  required_if: function (field, ref) {
4273
4272
  var target = ref[0];
4274
4273
 
4275
- return ("The " + field + " field is required when the " + target + " field has this value.");
4274
+ return ("The " + field + " field is required when the " + target + " field has this value");
4276
4275
  },
4277
4276
  size: function (field, ref) {
4278
4277
  var size = ref[0];
4279
4278
 
4280
- return ("The " + field + " size must be less than " + (formatFileSize(size)) + ".");
4279
+ return ("The " + field + " size must be less than " + (formatFileSize(size)));
4281
4280
  },
4282
- url: function (field) { return ("The " + field + " field is not a valid URL."); }
4281
+ url: function (field) { return ("The " + field + " field is not a valid URL"); }
4283
4282
  };
4284
4283
 
4285
4284
  var locale = {
@@ -4700,7 +4699,7 @@ function parseTimezone (timezoneString) {
4700
4699
  if (token) {
4701
4700
  hours = parseInt(token[2], 10);
4702
4701
 
4703
- if (!validateTimezone(hours)) {
4702
+ if (!validateTimezone()) {
4704
4703
  return NaN
4705
4704
  }
4706
4705
 
@@ -6376,7 +6375,7 @@ function dateTimeLongFormatter (pattern, formatLong, options) {
6376
6375
  var timePattern = matchResult[2];
6377
6376
 
6378
6377
  if (!timePattern) {
6379
- return dateLongFormatter(pattern, formatLong, options)
6378
+ return dateLongFormatter(pattern, formatLong)
6380
6379
  }
6381
6380
 
6382
6381
  var dateTimeFormat;
@@ -6398,8 +6397,8 @@ function dateTimeLongFormatter (pattern, formatLong, options) {
6398
6397
  }
6399
6398
 
6400
6399
  return dateTimeFormat
6401
- .replace('{{date}}', dateLongFormatter(datePattern, formatLong, options))
6402
- .replace('{{time}}', timeLongFormatter(timePattern, formatLong, options))
6400
+ .replace('{{date}}', dateLongFormatter(datePattern, formatLong))
6401
+ .replace('{{time}}', timeLongFormatter(timePattern, formatLong))
6403
6402
  }
6404
6403
 
6405
6404
  var longFormatters = {
@@ -6935,40 +6934,6 @@ function isBefore (dirtyDate, dirtyDateToCompare, dirtyOptions) {
6935
6934
  return date.getTime() < dateToCompare.getTime()
6936
6935
  }
6937
6936
 
6938
- /**
6939
- * @name isDate
6940
- * @category Common Helpers
6941
- * @summary Is the given value a date?
6942
- *
6943
- * @description
6944
- * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes.
6945
- *
6946
- * @param {*} value - the value to check
6947
- * @param {Options} [options] - the object with options. Unused; present for FP submodule compatibility sake. See [Options]{@link https://date-fns.org/docs/Options}
6948
- * @returns {boolean} true if the given value is a date
6949
- * @throws {TypeError} 1 arguments required
6950
- *
6951
- * @example
6952
- * // For a valid date:
6953
- * var result = isDate(new Date())
6954
- * //=> true
6955
- *
6956
- * @example
6957
- * // For an invalid date:
6958
- * var result = isDate(new Date(NaN))
6959
- * //=> true
6960
- *
6961
- * @example
6962
- * // For some value:
6963
- * var result = isDate('2014-02-31')
6964
- * //=> false
6965
- *
6966
- * @example
6967
- * // For an object:
6968
- * var result = isDate({})
6969
- * //=> false
6970
- */
6971
-
6972
6937
  /**
6973
6938
  * @name isEqual
6974
6939
  * @category Common Helpers
@@ -8691,8 +8656,6 @@ function cleanEscapedString$1(input) {
8691
8656
  return input.match(escapedStringRegExp$1)[1].replace(doubleQuoteRegExp$1, "'")
8692
8657
  }
8693
8658
 
8694
- // This file is generated automatically by `scripts/build/indices.js`. Please, don't change it.
8695
-
8696
8659
  //
8697
8660
 
8698
8661
  /**
@@ -8761,6 +8724,7 @@ var alpha = {
8761
8724
  da: /^[A-ZÆØÅ]*$/i,
8762
8725
  de: /^[A-ZÄÖÜß]*$/i,
8763
8726
  es: /^[A-ZÁÉÍÑÓÚÜ]*$/i,
8727
+ fa: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,
8764
8728
  fr: /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]*$/i,
8765
8729
  it: /^[A-Z\xC0-\xFF]*$/i,
8766
8730
  lt: /^[A-ZĄČĘĖĮŠŲŪŽ]*$/i,
@@ -8784,6 +8748,7 @@ var alphaSpaces = {
8784
8748
  da: /^[A-ZÆØÅ\s]*$/i,
8785
8749
  de: /^[A-ZÄÖÜß\s]*$/i,
8786
8750
  es: /^[A-ZÁÉÍÑÓÚÜ\s]*$/i,
8751
+ fa: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی\s]*$/,
8787
8752
  fr: /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ\s]*$/i,
8788
8753
  it: /^[A-Z\xC0-\xFF\s]*$/i,
8789
8754
  lt: /^[A-ZĄČĘĖĮŠŲŪŽ\s]*$/i,
@@ -8807,6 +8772,7 @@ var alphanumeric = {
8807
8772
  da: /^[0-9A-ZÆØÅ]$/i,
8808
8773
  de: /^[0-9A-ZÄÖÜß]*$/i,
8809
8774
  es: /^[0-9A-ZÁÉÍÑÓÚÜ]*$/i,
8775
+ fa: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,
8810
8776
  fr: /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]*$/i,
8811
8777
  it: /^[0-9A-Z\xC0-\xFF]*$/i,
8812
8778
  lt: /^[0-9A-ZĄČĘĖĮŠŲŪŽ]*$/i,
@@ -8830,6 +8796,7 @@ var alphaDash = {
8830
8796
  da: /^[0-9A-ZÆØÅ_-]*$/i,
8831
8797
  de: /^[0-9A-ZÄÖÜß_-]*$/i,
8832
8798
  es: /^[0-9A-ZÁÉÍÑÓÚÜ_-]*$/i,
8799
+ fa: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی_-]*$/,
8833
8800
  fr: /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ_-]*$/i,
8834
8801
  it: /^[0-9A-Z\xC0-\xFF_-]*$/i,
8835
8802
  lt: /^[0-9A-ZĄČĘĖĮŠŲŪŽ_-]*$/i,
@@ -9023,29 +8990,34 @@ var assertString_1 = createCommonjsModule(function (module, exports) {
9023
8990
  Object.defineProperty(exports, "__esModule", {
9024
8991
  value: true
9025
8992
  });
8993
+ exports.default = assertString;
9026
8994
 
9027
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
8995
+ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
9028
8996
 
9029
- exports.default = assertString;
9030
8997
  function assertString(input) {
9031
8998
  var isString = typeof input === 'string' || input instanceof String;
9032
8999
 
9033
9000
  if (!isString) {
9034
- var invalidType = void 0;
9001
+ var invalidType;
9002
+
9035
9003
  if (input === null) {
9036
9004
  invalidType = 'null';
9037
9005
  } else {
9038
- invalidType = typeof input === 'undefined' ? 'undefined' : _typeof(input);
9006
+ invalidType = _typeof(input);
9007
+
9039
9008
  if (invalidType === 'object' && input.constructor && input.constructor.hasOwnProperty('name')) {
9040
9009
  invalidType = input.constructor.name;
9041
9010
  } else {
9042
- invalidType = 'a ' + invalidType;
9011
+ invalidType = "a ".concat(invalidType);
9043
9012
  }
9044
9013
  }
9045
- throw new TypeError('Expected string but received ' + invalidType + '.');
9014
+
9015
+ throw new TypeError("Expected string but received ".concat(invalidType, "."));
9046
9016
  }
9047
9017
  }
9048
- module.exports = exports['default'];
9018
+
9019
+ module.exports = exports.default;
9020
+ module.exports.default = exports.default;
9049
9021
  });
9050
9022
 
9051
9023
  unwrapExports(assertString_1);
@@ -9057,9 +9029,7 @@ Object.defineProperty(exports, "__esModule", {
9057
9029
  });
9058
9030
  exports.default = isCreditCard;
9059
9031
 
9060
-
9061
-
9062
- var _assertString2 = _interopRequireDefault(assertString_1);
9032
+ var _assertString = _interopRequireDefault(assertString_1);
9063
9033
 
9064
9034
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9065
9035
 
@@ -9068,20 +9038,25 @@ var creditCard = /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][
9068
9038
  /* eslint-enable max-len */
9069
9039
 
9070
9040
  function isCreditCard(str) {
9071
- (0, _assertString2.default)(str);
9041
+ (0, _assertString.default)(str);
9072
9042
  var sanitized = str.replace(/[- ]+/g, '');
9043
+
9073
9044
  if (!creditCard.test(sanitized)) {
9074
9045
  return false;
9075
9046
  }
9047
+
9076
9048
  var sum = 0;
9077
- var digit = void 0;
9078
- var tmpNum = void 0;
9079
- var shouldDouble = void 0;
9049
+ var digit;
9050
+ var tmpNum;
9051
+ var shouldDouble;
9052
+
9080
9053
  for (var i = sanitized.length - 1; i >= 0; i--) {
9081
9054
  digit = sanitized.substring(i, i + 1);
9082
9055
  tmpNum = parseInt(digit, 10);
9056
+
9083
9057
  if (shouldDouble) {
9084
9058
  tmpNum *= 2;
9059
+
9085
9060
  if (tmpNum >= 10) {
9086
9061
  sum += tmpNum % 10 + 1;
9087
9062
  } else {
@@ -9090,11 +9065,15 @@ function isCreditCard(str) {
9090
9065
  } else {
9091
9066
  sum += tmpNum;
9092
9067
  }
9068
+
9093
9069
  shouldDouble = !shouldDouble;
9094
9070
  }
9071
+
9095
9072
  return !!(sum % 10 === 0 ? sanitized : false);
9096
9073
  }
9097
- module.exports = exports['default'];
9074
+
9075
+ module.exports = exports.default;
9076
+ module.exports.default = exports.default;
9098
9077
  });
9099
9078
 
9100
9079
  var isCreditCard = unwrapExports(isCreditCard_1);
@@ -9260,18 +9239,22 @@ Object.defineProperty(exports, "__esModule", {
9260
9239
  value: true
9261
9240
  });
9262
9241
  exports.default = merge;
9242
+
9263
9243
  function merge() {
9264
9244
  var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
9265
- var defaults = arguments[1];
9245
+ var defaults = arguments.length > 1 ? arguments[1] : undefined;
9266
9246
 
9267
9247
  for (var key in defaults) {
9268
9248
  if (typeof obj[key] === 'undefined') {
9269
9249
  obj[key] = defaults[key];
9270
9250
  }
9271
9251
  }
9252
+
9272
9253
  return obj;
9273
9254
  }
9274
- module.exports = exports['default'];
9255
+
9256
+ module.exports = exports.default;
9257
+ module.exports.default = exports.default;
9275
9258
  });
9276
9259
 
9277
9260
  unwrapExports(merge_1);
@@ -9281,23 +9264,21 @@ var isByteLength_1 = createCommonjsModule(function (module, exports) {
9281
9264
  Object.defineProperty(exports, "__esModule", {
9282
9265
  value: true
9283
9266
  });
9284
-
9285
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
9286
-
9287
9267
  exports.default = isByteLength;
9288
9268
 
9289
-
9290
-
9291
- var _assertString2 = _interopRequireDefault(assertString_1);
9269
+ var _assertString = _interopRequireDefault(assertString_1);
9292
9270
 
9293
9271
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9294
9272
 
9273
+ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
9274
+
9295
9275
  /* eslint-disable prefer-rest-params */
9296
9276
  function isByteLength(str, options) {
9297
- (0, _assertString2.default)(str);
9298
- var min = void 0;
9299
- var max = void 0;
9300
- if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) === 'object') {
9277
+ (0, _assertString.default)(str);
9278
+ var min;
9279
+ var max;
9280
+
9281
+ if (_typeof(options) === 'object') {
9301
9282
  min = options.min || 0;
9302
9283
  max = options.max;
9303
9284
  } else {
@@ -9305,10 +9286,13 @@ function isByteLength(str, options) {
9305
9286
  min = arguments[1];
9306
9287
  max = arguments[2];
9307
9288
  }
9289
+
9308
9290
  var len = encodeURI(str).split(/%..|./).length - 1;
9309
9291
  return len >= min && (typeof max === 'undefined' || len <= max);
9310
9292
  }
9311
- module.exports = exports['default'];
9293
+
9294
+ module.exports = exports.default;
9295
+ module.exports.default = exports.default;
9312
9296
  });
9313
9297
 
9314
9298
  unwrapExports(isByteLength_1);
@@ -9320,13 +9304,9 @@ Object.defineProperty(exports, "__esModule", {
9320
9304
  });
9321
9305
  exports.default = isFQDN;
9322
9306
 
9307
+ var _assertString = _interopRequireDefault(assertString_1);
9323
9308
 
9324
-
9325
- var _assertString2 = _interopRequireDefault(assertString_1);
9326
-
9327
-
9328
-
9329
- var _merge2 = _interopRequireDefault(merge_1);
9309
+ var _merge = _interopRequireDefault(merge_1);
9330
9310
 
9331
9311
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9332
9312
 
@@ -9337,48 +9317,61 @@ var default_fqdn_options = {
9337
9317
  };
9338
9318
 
9339
9319
  function isFQDN(str, options) {
9340
- (0, _assertString2.default)(str);
9341
- options = (0, _merge2.default)(options, default_fqdn_options);
9342
-
9320
+ (0, _assertString.default)(str);
9321
+ options = (0, _merge.default)(options, default_fqdn_options);
9343
9322
  /* Remove the optional trailing dot before checking validity */
9323
+
9344
9324
  if (options.allow_trailing_dot && str[str.length - 1] === '.') {
9345
9325
  str = str.substring(0, str.length - 1);
9346
9326
  }
9327
+
9347
9328
  var parts = str.split('.');
9329
+
9348
9330
  for (var i = 0; i < parts.length; i++) {
9349
9331
  if (parts[i].length > 63) {
9350
9332
  return false;
9351
9333
  }
9352
9334
  }
9335
+
9353
9336
  if (options.require_tld) {
9354
9337
  var tld = parts.pop();
9338
+
9355
9339
  if (!parts.length || !/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
9356
9340
  return false;
9357
- }
9358
- // disallow spaces
9341
+ } // disallow spaces
9342
+
9343
+
9359
9344
  if (/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(tld)) {
9360
9345
  return false;
9361
9346
  }
9362
9347
  }
9348
+
9363
9349
  for (var part, _i = 0; _i < parts.length; _i++) {
9364
9350
  part = parts[_i];
9351
+
9365
9352
  if (options.allow_underscores) {
9366
9353
  part = part.replace(/_/g, '');
9367
9354
  }
9355
+
9368
9356
  if (!/^[a-z\u00a1-\uffff0-9-]+$/i.test(part)) {
9369
9357
  return false;
9370
- }
9371
- // disallow full-width chars
9358
+ } // disallow full-width chars
9359
+
9360
+
9372
9361
  if (/[\uff01-\uff5e]/.test(part)) {
9373
9362
  return false;
9374
9363
  }
9364
+
9375
9365
  if (part[0] === '-' || part[part.length - 1] === '-') {
9376
9366
  return false;
9377
9367
  }
9378
9368
  }
9369
+
9379
9370
  return true;
9380
9371
  }
9381
- module.exports = exports['default'];
9372
+
9373
+ module.exports = exports.default;
9374
+ module.exports.default = exports.default;
9382
9375
  });
9383
9376
 
9384
9377
  var isFQDN = unwrapExports(isFQDN_1);
@@ -9390,9 +9383,7 @@ Object.defineProperty(exports, "__esModule", {
9390
9383
  });
9391
9384
  exports.default = isIP;
9392
9385
 
9393
-
9394
-
9395
- var _assertString2 = _interopRequireDefault(assertString_1);
9386
+ var _assertString = _interopRequireDefault(assertString_1);
9396
9387
 
9397
9388
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9398
9389
 
@@ -9401,15 +9392,16 @@ var ipv6Block = /^[0-9A-F]{1,4}$/i;
9401
9392
 
9402
9393
  function isIP(str) {
9403
9394
  var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
9404
-
9405
- (0, _assertString2.default)(str);
9395
+ (0, _assertString.default)(str);
9406
9396
  version = String(version);
9397
+
9407
9398
  if (!version) {
9408
9399
  return isIP(str, 4) || isIP(str, 6);
9409
9400
  } else if (version === '4') {
9410
9401
  if (!ipv4Maybe.test(str)) {
9411
9402
  return false;
9412
9403
  }
9404
+
9413
9405
  var parts = str.split('.').sort(function (a, b) {
9414
9406
  return a - b;
9415
9407
  });
@@ -9417,18 +9409,19 @@ function isIP(str) {
9417
9409
  } else if (version === '6') {
9418
9410
  var blocks = str.split(':');
9419
9411
  var foundOmissionBlock = false; // marker to indicate ::
9420
-
9421
9412
  // At least some OS accept the last 32 bits of an IPv6 address
9422
9413
  // (i.e. 2 of the blocks) in IPv4 notation, and RFC 3493 says
9423
9414
  // that '::ffff:a.b.c.d' is valid for IPv4-mapped IPv6 addresses,
9424
9415
  // and '::a.b.c.d' is deprecated, but also valid.
9416
+
9425
9417
  var foundIPv4TransitionBlock = isIP(blocks[blocks.length - 1], 4);
9426
9418
  var expectedNumberOfBlocks = foundIPv4TransitionBlock ? 7 : 8;
9427
9419
 
9428
9420
  if (blocks.length > expectedNumberOfBlocks) {
9429
9421
  return false;
9430
- }
9431
- // initial or final ::
9422
+ } // initial or final ::
9423
+
9424
+
9432
9425
  if (str === '::') {
9433
9426
  return true;
9434
9427
  } else if (str.substr(0, 2) === '::') {
@@ -9448,19 +9441,25 @@ function isIP(str) {
9448
9441
  if (foundOmissionBlock) {
9449
9442
  return false; // multiple :: in address
9450
9443
  }
9444
+
9451
9445
  foundOmissionBlock = true;
9452
9446
  } else if (foundIPv4TransitionBlock && i === blocks.length - 1) ; else if (!ipv6Block.test(blocks[i])) {
9453
9447
  return false;
9454
9448
  }
9455
9449
  }
9450
+
9456
9451
  if (foundOmissionBlock) {
9457
9452
  return blocks.length >= 1;
9458
9453
  }
9454
+
9459
9455
  return blocks.length === expectedNumberOfBlocks;
9460
9456
  }
9457
+
9461
9458
  return false;
9462
9459
  }
9463
- module.exports = exports['default'];
9460
+
9461
+ module.exports = exports.default;
9462
+ module.exports.default = exports.default;
9464
9463
  });
9465
9464
 
9466
9465
  var isIP = unwrapExports(isIP_1);
@@ -9472,25 +9471,15 @@ Object.defineProperty(exports, "__esModule", {
9472
9471
  });
9473
9472
  exports.default = isEmail;
9474
9473
 
9474
+ var _assertString = _interopRequireDefault(assertString_1);
9475
9475
 
9476
+ var _merge = _interopRequireDefault(merge_1);
9476
9477
 
9477
- var _assertString2 = _interopRequireDefault(assertString_1);
9478
-
9479
-
9480
-
9481
- var _merge2 = _interopRequireDefault(merge_1);
9482
-
9483
-
9484
-
9485
- var _isByteLength2 = _interopRequireDefault(isByteLength_1);
9486
-
9487
-
9478
+ var _isByteLength = _interopRequireDefault(isByteLength_1);
9488
9479
 
9489
- var _isFQDN2 = _interopRequireDefault(isFQDN_1);
9480
+ var _isFQDN = _interopRequireDefault(isFQDN_1);
9490
9481
 
9491
-
9492
-
9493
- var _isIP2 = _interopRequireDefault(isIP_1);
9482
+ var _isIP = _interopRequireDefault(isIP_1);
9494
9483
 
9495
9484
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9496
9485
 
@@ -9500,9 +9489,10 @@ var default_email_options = {
9500
9489
  allow_utf8_local_part: true,
9501
9490
  require_tld: true
9502
9491
  };
9503
-
9504
9492
  /* eslint-disable max-len */
9493
+
9505
9494
  /* eslint-disable no-control-regex */
9495
+
9506
9496
  var displayName = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\.\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\,\.\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\s]*<(.+)>$/i;
9507
9497
  var emailUserPart = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i;
9508
9498
  var gmailUserPart = /^[a-z\d]+$/;
@@ -9510,14 +9500,16 @@ var quotedEmailUser = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e
9510
9500
  var emailUserUtf8Part = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i;
9511
9501
  var quotedEmailUserUtf8 = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i;
9512
9502
  /* eslint-enable max-len */
9503
+
9513
9504
  /* eslint-enable no-control-regex */
9514
9505
 
9515
9506
  function isEmail(str, options) {
9516
- (0, _assertString2.default)(str);
9517
- options = (0, _merge2.default)(options, default_email_options);
9507
+ (0, _assertString.default)(str);
9508
+ options = (0, _merge.default)(options, default_email_options);
9518
9509
 
9519
9510
  if (options.require_display_name || options.allow_display_name) {
9520
9511
  var display_email = str.match(displayName);
9512
+
9521
9513
  if (display_email) {
9522
9514
  str = display_email[1];
9523
9515
  } else if (options.require_display_name) {
@@ -9528,7 +9520,6 @@ function isEmail(str, options) {
9528
9520
  var parts = str.split('@');
9529
9521
  var domain = parts.pop();
9530
9522
  var user = parts.join('@');
9531
-
9532
9523
  var lower_domain = domain.toLowerCase();
9533
9524
 
9534
9525
  if (options.domain_specific_validation && (lower_domain === 'gmail.com' || lower_domain === 'googlemail.com')) {
@@ -9539,17 +9530,19 @@ function isEmail(str, options) {
9539
9530
  Gmail only normalizes single dots, removing them from here is pointless,
9540
9531
  should be done in normalizeEmail
9541
9532
  */
9542
- user = user.toLowerCase();
9533
+ user = user.toLowerCase(); // Removing sub-address from username before gmail validation
9543
9534
 
9544
- // Removing sub-address from username before gmail validation
9545
- var username = user.split('+')[0];
9535
+ var username = user.split('+')[0]; // Dots are not included in gmail length restriction
9546
9536
 
9547
- // Dots are not included in gmail length restriction
9548
- if (!(0, _isByteLength2.default)(username.replace('.', ''), { min: 6, max: 30 })) {
9537
+ if (!(0, _isByteLength.default)(username.replace('.', ''), {
9538
+ min: 6,
9539
+ max: 30
9540
+ })) {
9549
9541
  return false;
9550
9542
  }
9551
9543
 
9552
9544
  var _user_parts = username.split('.');
9545
+
9553
9546
  for (var i = 0; i < _user_parts.length; i++) {
9554
9547
  if (!gmailUserPart.test(_user_parts[i])) {
9555
9548
  return false;
@@ -9557,23 +9550,29 @@ function isEmail(str, options) {
9557
9550
  }
9558
9551
  }
9559
9552
 
9560
- if (!(0, _isByteLength2.default)(user, { max: 64 }) || !(0, _isByteLength2.default)(domain, { max: 254 })) {
9553
+ if (!(0, _isByteLength.default)(user, {
9554
+ max: 64
9555
+ }) || !(0, _isByteLength.default)(domain, {
9556
+ max: 254
9557
+ })) {
9561
9558
  return false;
9562
9559
  }
9563
9560
 
9564
- if (!(0, _isFQDN2.default)(domain, { require_tld: options.require_tld })) {
9561
+ if (!(0, _isFQDN.default)(domain, {
9562
+ require_tld: options.require_tld
9563
+ })) {
9565
9564
  if (!options.allow_ip_domain) {
9566
9565
  return false;
9567
9566
  }
9568
9567
 
9569
- if (!(0, _isIP2.default)(domain)) {
9568
+ if (!(0, _isIP.default)(domain)) {
9570
9569
  if (!domain.startsWith('[') || !domain.endsWith(']')) {
9571
9570
  return false;
9572
9571
  }
9573
9572
 
9574
9573
  var noBracketdomain = domain.substr(1, domain.length - 2);
9575
9574
 
9576
- if (noBracketdomain.length === 0 || !(0, _isIP2.default)(noBracketdomain)) {
9575
+ if (noBracketdomain.length === 0 || !(0, _isIP.default)(noBracketdomain)) {
9577
9576
  return false;
9578
9577
  }
9579
9578
  }
@@ -9585,8 +9584,8 @@ function isEmail(str, options) {
9585
9584
  }
9586
9585
 
9587
9586
  var pattern = options.allow_utf8_local_part ? emailUserUtf8Part : emailUserPart;
9588
-
9589
9587
  var user_parts = user.split('.');
9588
+
9590
9589
  for (var _i = 0; _i < user_parts.length; _i++) {
9591
9590
  if (!pattern.test(user_parts[_i])) {
9592
9591
  return false;
@@ -9595,7 +9594,9 @@ function isEmail(str, options) {
9595
9594
 
9596
9595
  return true;
9597
9596
  }
9598
- module.exports = exports['default'];
9597
+
9598
+ module.exports = exports.default;
9599
+ module.exports.default = exports.default;
9599
9600
  });
9600
9601
 
9601
9602
  var isEmail = unwrapExports(isEmail_1);
@@ -9980,21 +9981,13 @@ Object.defineProperty(exports, "__esModule", {
9980
9981
  });
9981
9982
  exports.default = isURL;
9982
9983
 
9984
+ var _assertString = _interopRequireDefault(assertString_1);
9983
9985
 
9986
+ var _isFQDN = _interopRequireDefault(isFQDN_1);
9984
9987
 
9985
- var _assertString2 = _interopRequireDefault(assertString_1);
9986
-
9987
-
9988
-
9989
- var _isFQDN2 = _interopRequireDefault(isFQDN_1);
9990
-
9991
-
9988
+ var _isIP = _interopRequireDefault(isIP_1);
9992
9989
 
9993
- var _isIP2 = _interopRequireDefault(isIP_1);
9994
-
9995
-
9996
-
9997
- var _merge2 = _interopRequireDefault(merge_1);
9990
+ var _merge = _interopRequireDefault(merge_1);
9998
9991
 
9999
9992
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10000
9993
 
@@ -10008,7 +10001,6 @@ var default_url_options = {
10008
10001
  allow_trailing_dot: false,
10009
10002
  allow_protocol_relative_urls: false
10010
10003
  };
10011
-
10012
10004
  var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
10013
10005
 
10014
10006
  function isRegExp(obj) {
@@ -10018,40 +10010,37 @@ function isRegExp(obj) {
10018
10010
  function checkHost(host, matches) {
10019
10011
  for (var i = 0; i < matches.length; i++) {
10020
10012
  var match = matches[i];
10013
+
10021
10014
  if (host === match || isRegExp(match) && match.test(host)) {
10022
10015
  return true;
10023
10016
  }
10024
10017
  }
10018
+
10025
10019
  return false;
10026
10020
  }
10027
10021
 
10028
10022
  function isURL(url, options) {
10029
- (0, _assertString2.default)(url);
10023
+ (0, _assertString.default)(url);
10024
+
10030
10025
  if (!url || url.length >= 2083 || /[\s<>]/.test(url)) {
10031
10026
  return false;
10032
10027
  }
10028
+
10033
10029
  if (url.indexOf('mailto:') === 0) {
10034
10030
  return false;
10035
10031
  }
10036
- options = (0, _merge2.default)(options, default_url_options);
10037
- var protocol = void 0,
10038
- auth = void 0,
10039
- host = void 0,
10040
- hostname = void 0,
10041
- port = void 0,
10042
- port_str = void 0,
10043
- split = void 0,
10044
- ipv6 = void 0;
10045
10032
 
10033
+ options = (0, _merge.default)(options, default_url_options);
10034
+ var protocol, auth, host, hostname, port, port_str, split, ipv6;
10046
10035
  split = url.split('#');
10047
10036
  url = split.shift();
10048
-
10049
10037
  split = url.split('?');
10050
10038
  url = split.shift();
10051
-
10052
10039
  split = url.split('://');
10040
+
10053
10041
  if (split.length > 1) {
10054
10042
  protocol = split.shift().toLowerCase();
10043
+
10055
10044
  if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
10056
10045
  return false;
10057
10046
  }
@@ -10061,8 +10050,10 @@ function isURL(url, options) {
10061
10050
  if (!options.allow_protocol_relative_urls) {
10062
10051
  return false;
10063
10052
  }
10053
+
10064
10054
  split[0] = url.substr(2);
10065
10055
  }
10056
+
10066
10057
  url = split.join('://');
10067
10058
 
10068
10059
  if (url === '') {
@@ -10077,17 +10068,24 @@ function isURL(url, options) {
10077
10068
  }
10078
10069
 
10079
10070
  split = url.split('@');
10071
+
10080
10072
  if (split.length > 1) {
10073
+ if (options.disallow_auth) {
10074
+ return false;
10075
+ }
10076
+
10081
10077
  auth = split.shift();
10078
+
10082
10079
  if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
10083
10080
  return false;
10084
10081
  }
10085
10082
  }
10086
- hostname = split.join('@');
10087
10083
 
10084
+ hostname = split.join('@');
10088
10085
  port_str = null;
10089
10086
  ipv6 = null;
10090
10087
  var ipv6_match = hostname.match(wrapped_ipv6);
10088
+
10091
10089
  if (ipv6_match) {
10092
10090
  host = '';
10093
10091
  ipv6 = ipv6_match[1];
@@ -10095,6 +10093,7 @@ function isURL(url, options) {
10095
10093
  } else {
10096
10094
  split = hostname.split(':');
10097
10095
  host = split.shift();
10096
+
10098
10097
  if (split.length) {
10099
10098
  port_str = split.join(':');
10100
10099
  }
@@ -10102,12 +10101,13 @@ function isURL(url, options) {
10102
10101
 
10103
10102
  if (port_str !== null) {
10104
10103
  port = parseInt(port_str, 10);
10104
+
10105
10105
  if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
10106
10106
  return false;
10107
10107
  }
10108
10108
  }
10109
10109
 
10110
- if (!(0, _isIP2.default)(host) && !(0, _isFQDN2.default)(host, options) && (!ipv6 || !(0, _isIP2.default)(ipv6, 6))) {
10110
+ if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
10111
10111
  return false;
10112
10112
  }
10113
10113
 
@@ -10116,13 +10116,16 @@ function isURL(url, options) {
10116
10116
  if (options.host_whitelist && !checkHost(host, options.host_whitelist)) {
10117
10117
  return false;
10118
10118
  }
10119
+
10119
10120
  if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
10120
10121
  return false;
10121
10122
  }
10122
10123
 
10123
10124
  return true;
10124
10125
  }
10125
- module.exports = exports['default'];
10126
+
10127
+ module.exports = exports.default;
10128
+ module.exports.default = exports.default;
10126
10129
  });
10127
10130
 
10128
10131
  var isURL = unwrapExports(isURL_1);
@@ -10756,7 +10759,7 @@ function updateRenderingContextRefs (ctx) {
10756
10759
 
10757
10760
  // vid was changed.
10758
10761
  if (id !== vid && ctx.$_veeObserver.refs[id] === ctx) {
10759
- ctx.$_veeObserver.unsubscribe(ctx);
10762
+ ctx.$_veeObserver.unsubscribe({ vid: id });
10760
10763
  }
10761
10764
 
10762
10765
  ctx.$_veeObserver.subscribe(ctx);
@@ -10864,7 +10867,7 @@ var ValidationObserver = {
10864
10867
 
10865
10868
  return {
10866
10869
  then: function then (thenable) {
10867
- promise.then(function (success) {
10870
+ return promise.then(function (success) {
10868
10871
  if (success && isCallable(thenable)) {
10869
10872
  return Promise.resolve(thenable());
10870
10873
  }
@@ -11066,7 +11069,7 @@ function withValidation (component, ctxToProps) {
11066
11069
  return hoc;
11067
11070
  }
11068
11071
 
11069
- var version = '2.2.11';
11072
+ var version = '2.2.15';
11070
11073
 
11071
11074
  Object.keys(Rules).forEach(function (rule) {
11072
11075
  Validator.extend(rule, Rules[rule].validate, assign({}, Rules[rule].options, { paramNames: Rules[rule].paramNames }));