vee-validate 2.2.12 → 2.2.13

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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * vee-validate v2.2.12
2
+ * vee-validate v2.2.13
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
  }
@@ -4700,7 +4703,7 @@ function parseTimezone (timezoneString) {
4700
4703
  if (token) {
4701
4704
  hours = parseInt(token[2], 10);
4702
4705
 
4703
- if (!validateTimezone(hours)) {
4706
+ if (!validateTimezone()) {
4704
4707
  return NaN
4705
4708
  }
4706
4709
 
@@ -6376,7 +6379,7 @@ function dateTimeLongFormatter (pattern, formatLong, options) {
6376
6379
  var timePattern = matchResult[2];
6377
6380
 
6378
6381
  if (!timePattern) {
6379
- return dateLongFormatter(pattern, formatLong, options)
6382
+ return dateLongFormatter(pattern, formatLong)
6380
6383
  }
6381
6384
 
6382
6385
  var dateTimeFormat;
@@ -6398,8 +6401,8 @@ function dateTimeLongFormatter (pattern, formatLong, options) {
6398
6401
  }
6399
6402
 
6400
6403
  return dateTimeFormat
6401
- .replace('{{date}}', dateLongFormatter(datePattern, formatLong, options))
6402
- .replace('{{time}}', timeLongFormatter(timePattern, formatLong, options))
6404
+ .replace('{{date}}', dateLongFormatter(datePattern, formatLong))
6405
+ .replace('{{time}}', timeLongFormatter(timePattern, formatLong))
6403
6406
  }
6404
6407
 
6405
6408
  var longFormatters = {
@@ -6935,40 +6938,6 @@ function isBefore (dirtyDate, dirtyDateToCompare, dirtyOptions) {
6935
6938
  return date.getTime() < dateToCompare.getTime()
6936
6939
  }
6937
6940
 
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
6941
  /**
6973
6942
  * @name isEqual
6974
6943
  * @category Common Helpers
@@ -8691,8 +8660,6 @@ function cleanEscapedString$1(input) {
8691
8660
  return input.match(escapedStringRegExp$1)[1].replace(doubleQuoteRegExp$1, "'")
8692
8661
  }
8693
8662
 
8694
- // This file is generated automatically by `scripts/build/indices.js`. Please, don't change it.
8695
-
8696
8663
  //
8697
8664
 
8698
8665
  /**
@@ -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
+ var _isByteLength = _interopRequireDefault(isByteLength_1);
9478
9479
 
9480
+ var _isFQDN = _interopRequireDefault(isFQDN_1);
9479
9481
 
9480
-
9481
- var _merge2 = _interopRequireDefault(merge_1);
9482
-
9483
-
9484
-
9485
- var _isByteLength2 = _interopRequireDefault(isByteLength_1);
9486
-
9487
-
9488
-
9489
- var _isFQDN2 = _interopRequireDefault(isFQDN_1);
9490
-
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
-
9992
-
9993
- var _isIP2 = _interopRequireDefault(isIP_1);
9988
+ var _isIP = _interopRequireDefault(isIP_1);
9994
9989
 
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);
@@ -11066,7 +11069,7 @@ function withValidation (component, ctxToProps) {
11066
11069
  return hoc;
11067
11070
  }
11068
11071
 
11069
- var version = '2.2.12';
11072
+ var version = '2.2.13';
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 }));