@cosmotech/core 1.11.4 → 1.11.5

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.
package/dist/index.esm.js CHANGED
@@ -1,25 +1,25 @@
1
1
  import require$$0 from 'stream';
2
2
 
3
- function ownKeys(object, enumerableOnly) {
4
- var keys = Object.keys(object);
3
+ function ownKeys(e, r) {
4
+ var t = Object.keys(e);
5
5
  if (Object.getOwnPropertySymbols) {
6
- var symbols = Object.getOwnPropertySymbols(object);
7
- enumerableOnly && (symbols = symbols.filter(function (sym) {
8
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
9
- })), keys.push.apply(keys, symbols);
6
+ var o = Object.getOwnPropertySymbols(e);
7
+ r && (o = o.filter(function (r) {
8
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
9
+ })), t.push.apply(t, o);
10
10
  }
11
- return keys;
12
- }
13
- function _objectSpread2(target) {
14
- for (var i = 1; i < arguments.length; i++) {
15
- var source = null != arguments[i] ? arguments[i] : {};
16
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
17
- _defineProperty$1(target, key, source[key]);
18
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
19
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
11
+ return t;
12
+ }
13
+ function _objectSpread2(e) {
14
+ for (var r = 1; r < arguments.length; r++) {
15
+ var t = null != arguments[r] ? arguments[r] : {};
16
+ r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
17
+ _defineProperty$1(e, r, t[r]);
18
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
19
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
20
20
  });
21
21
  }
22
- return target;
22
+ return e;
23
23
  }
24
24
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
25
25
  try {
@@ -26807,14 +26807,14 @@ var utils/*:any*/ = {
26807
26807
  }
26808
26808
  };
26809
26809
 
26810
- function _typeof$1(obj) {
26810
+ function _typeof$1(o) {
26811
26811
  "@babel/helpers - typeof";
26812
26812
 
26813
- return _typeof$1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
26814
- return typeof obj;
26815
- } : function (obj) {
26816
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
26817
- }, _typeof$1(obj);
26813
+ return _typeof$1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
26814
+ return typeof o;
26815
+ } : function (o) {
26816
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
26817
+ }, _typeof$1(o);
26818
26818
  }
26819
26819
 
26820
26820
  function toInteger(dirtyNumber) {
@@ -32372,6 +32372,7 @@ var alpha = {
32372
32372
  'pl-PL': /^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,
32373
32373
  'pt-PT': /^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,
32374
32374
  'ru-RU': /^[А-ЯЁ]+$/i,
32375
+ 'kk-KZ': /^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,
32375
32376
  'sl-SI': /^[A-ZČĆĐŠŽ]+$/i,
32376
32377
  'sk-SK': /^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,
32377
32378
  'sr-RS@latin': /^[A-ZČĆŽŠĐ]+$/i,
@@ -32411,6 +32412,7 @@ var alphanumeric = {
32411
32412
  'pl-PL': /^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,
32412
32413
  'pt-PT': /^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,
32413
32414
  'ru-RU': /^[0-9А-ЯЁ]+$/i,
32415
+ 'kk-KZ': /^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,
32414
32416
  'sl-SI': /^[0-9A-ZČĆĐŠŽ]+$/i,
32415
32417
  'sk-SK': /^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,
32416
32418
  'sr-RS@latin': /^[0-9A-ZČĆŽŠĐ]+$/i,
@@ -32478,7 +32480,7 @@ for (var _locale3, _i3 = 0; _i3 < bengaliLocales.length; _i3++) {
32478
32480
 
32479
32481
  var dotDecimal = ['ar-EG', 'ar-LB', 'ar-LY'];
32480
32482
  alpha$1.dotDecimal = dotDecimal;
32481
- var commaDecimal = ['bg-BG', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'en-ZM', 'es-ES', 'fr-CA', 'fr-FR', 'id-ID', 'it-IT', 'ku-IQ', 'hi-IN', 'hu-HU', 'nb-NO', 'nn-NO', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'si-LK', 'sl-SI', 'sr-RS@latin', 'sr-RS', 'sv-SE', 'tr-TR', 'uk-UA', 'vi-VN'];
32483
+ var commaDecimal = ['bg-BG', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'en-ZM', 'es-ES', 'fr-CA', 'fr-FR', 'id-ID', 'it-IT', 'ku-IQ', 'hi-IN', 'hu-HU', 'nb-NO', 'nn-NO', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'kk-KZ', 'si-LK', 'sl-SI', 'sr-RS@latin', 'sr-RS', 'sv-SE', 'tr-TR', 'uk-UA', 'vi-VN'];
32482
32484
  alpha$1.commaDecimal = commaDecimal;
32483
32485
 
32484
32486
  for (var _i4 = 0; _i4 < dotDecimal.length; _i4++) {
@@ -32507,14 +32509,14 @@ Object.defineProperty(isFloat$1, "__esModule", {
32507
32509
  isFloat$1.default = isFloat;
32508
32510
  isFloat$1.locales = void 0;
32509
32511
 
32510
- var _assertString$a = _interopRequireDefault$a(assertStringExports);
32512
+ var _assertString$b = _interopRequireDefault$b(assertStringExports);
32511
32513
 
32512
32514
  var _alpha$2 = alpha$1;
32513
32515
 
32514
- function _interopRequireDefault$a(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
32516
+ function _interopRequireDefault$b(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
32515
32517
 
32516
32518
  function isFloat(str, options) {
32517
- (0, _assertString$a.default)(str);
32519
+ (0, _assertString$b.default)(str);
32518
32520
  options = options || {};
32519
32521
  var float = new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(options.locale ? _alpha$2.decimal[options.locale] : '.', "[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));
32520
32522
 
@@ -32976,18 +32978,19 @@ var isIPExports = isIP.exports;
32976
32978
 
32977
32979
  var _assertString = _interopRequireDefault(assertStringExports);
32978
32980
 
32979
- var _merge = _interopRequireDefault(mergeExports);
32980
-
32981
32981
  var _isByteLength = _interopRequireDefault(isByteLengthExports);
32982
32982
 
32983
32983
  var _isFQDN = _interopRequireDefault(isFQDNExports);
32984
32984
 
32985
32985
  var _isIP = _interopRequireDefault(isIPExports);
32986
32986
 
32987
+ var _merge = _interopRequireDefault(mergeExports);
32988
+
32987
32989
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
32988
32990
 
32989
32991
  var default_email_options = {
32990
32992
  allow_display_name: false,
32993
+ allow_underscores: false,
32991
32994
  require_display_name: false,
32992
32995
  allow_utf8_local_part: true,
32993
32996
  require_tld: true,
@@ -33004,7 +33007,7 @@ var isIPExports = isIP.exports;
33004
33007
  var emailUserPart = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i;
33005
33008
  var gmailUserPart = /^[a-z\d]+$/;
33006
33009
  var quotedEmailUser = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i;
33007
- var emailUserUtf8Part = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i;
33010
+ var emailUserUtf8Part = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i;
33008
33011
  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;
33009
33012
  var defaultMaxEmailLength = 254;
33010
33013
  /* eslint-enable max-len */
@@ -33128,7 +33131,8 @@ var isIPExports = isIP.exports;
33128
33131
 
33129
33132
  if (!(0, _isFQDN.default)(domain, {
33130
33133
  require_tld: options.require_tld,
33131
- ignore_max_length: options.ignore_max_length
33134
+ ignore_max_length: options.ignore_max_length,
33135
+ allow_underscores: options.allow_underscores
33132
33136
  })) {
33133
33137
  if (!options.allow_ip_domain) {
33134
33138
  return false;
@@ -33613,7 +33617,25 @@ var isDate$1 = {exports: {}};
33613
33617
  _iterator.f();
33614
33618
  }
33615
33619
 
33616
- return new Date("".concat(dateObj.m, "/").concat(dateObj.d, "/").concat(dateObj.y)).getDate() === +dateObj.d;
33620
+ var fullYear = dateObj.y;
33621
+
33622
+ if (dateObj.y.length === 2) {
33623
+ var parsedYear = parseInt(dateObj.y, 10);
33624
+
33625
+ if (isNaN(parsedYear)) {
33626
+ return false;
33627
+ }
33628
+
33629
+ var currentYearLastTwoDigits = new Date().getFullYear() % 100;
33630
+
33631
+ if (parsedYear < currentYearLastTwoDigits) {
33632
+ fullYear = "20".concat(dateObj.y);
33633
+ } else {
33634
+ fullYear = "19".concat(dateObj.y);
33635
+ }
33636
+ }
33637
+
33638
+ return new Date("".concat(fullYear, "-").concat(dateObj.m, "-").concat(dateObj.d)).getDate() === +dateObj.d;
33617
33639
  }
33618
33640
 
33619
33641
  if (!options.strictMode) {
@@ -33718,16 +33740,107 @@ var isLocale = {exports: {}};
33718
33740
 
33719
33741
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33720
33742
 
33721
- var localeReg = /^[A-Za-z]{2,4}([_-]([A-Za-z]{4}|[\d]{3}))?([_-]([A-Za-z]{2}|[\d]{3}))?$/;
33743
+ /*
33744
+ = 3ALPHA ; selected ISO 639 codes
33745
+ *2("-" 3ALPHA) ; permanently reserved
33746
+ */
33747
+ var extlang = '([A-Za-z]{3}(-[A-Za-z]{3}){0,2})';
33748
+ /*
33749
+ = 2*3ALPHA ; shortest ISO 639 code
33750
+ ["-" extlang] ; sometimes followed by
33751
+ ; extended language subtags
33752
+ / 4ALPHA ; or reserved for future use
33753
+ / 5*8ALPHA ; or registered language subtag
33754
+ */
33722
33755
 
33723
- function isLocale(str) {
33724
- (0, _assertString.default)(str);
33756
+ var language = "(([a-zA-Z]{2,3}(-".concat(extlang, ")?)|([a-zA-Z]{5,8}))");
33757
+ /*
33758
+ = 4ALPHA ; ISO 15924 code
33759
+ */
33725
33760
 
33726
- if (str === 'en_US_POSIX' || str === 'ca_ES_VALENCIA') {
33727
- return true;
33728
- }
33761
+ var script = '([A-Za-z]{4})';
33762
+ /*
33763
+ = 2ALPHA ; ISO 3166-1 code
33764
+ / 3DIGIT ; UN M.49 code
33765
+ */
33766
+
33767
+ var region = '([A-Za-z]{2}|\\d{3})';
33768
+ /*
33769
+ = 5*8alphanum ; registered variants
33770
+ / (DIGIT 3alphanum)
33771
+ */
33772
+
33773
+ var variant = '([A-Za-z0-9]{5,8}|(\\d[A-Z-a-z0-9]{3}))';
33774
+ /*
33775
+ = DIGIT ; 0 - 9
33776
+ / %x41-57 ; A - W
33777
+ / %x59-5A ; Y - Z
33778
+ / %x61-77 ; a - w
33779
+ / %x79-7A ; y - z
33780
+ */
33781
+
33782
+ var singleton = '(\\d|[A-W]|[Y-Z]|[a-w]|[y-z])';
33783
+ /*
33784
+ = singleton 1*("-" (2*8alphanum))
33785
+ ; Single alphanumerics
33786
+ ; "x" reserved for private use
33787
+ */
33788
+
33789
+ var extension = "(".concat(singleton, "(-[A-Za-z0-9]{2,8})+)");
33790
+ /*
33791
+ = "x" 1*("-" (1*8alphanum))
33792
+ */
33793
+
33794
+ var privateuse = '(x(-[A-Za-z0-9]{1,8})+)'; // irregular tags do not match the 'langtag' production and would not
33795
+ // otherwise be considered 'well-formed'. These tags are all valid, but
33796
+ // most are deprecated in favor of more modern subtags or subtag combination
33797
+
33798
+ var irregular = '((en-GB-oed)|(i-ami)|(i-bnn)|(i-default)|(i-enochian)|' + '(i-hak)|(i-klingon)|(i-lux)|(i-mingo)|(i-navajo)|(i-pwn)|(i-tao)|' + '(i-tay)|(i-tsu)|(sgn-BE-FR)|(sgn-BE-NL)|(sgn-CH-DE))'; // regular tags match the 'langtag' production, but their subtags are not
33799
+ // extended language or variant subtags: their meaning is defined by
33800
+ // their registration and all of these are deprecated in favor of a more
33801
+ // modern subtag or sequence of subtags
33802
+
33803
+ var regular = '((art-lojban)|(cel-gaulish)|(no-bok)|(no-nyn)|(zh-guoyu)|' + '(zh-hakka)|(zh-min)|(zh-min-nan)|(zh-xiang))';
33804
+ /*
33805
+ = irregular ; non-redundant tags registered
33806
+ / regular ; during the RFC 3066 era
33807
+
33808
+ */
33809
+
33810
+ var grandfathered = "(".concat(irregular, "|").concat(regular, ")");
33811
+ /*
33812
+ RFC 5646 defines delimitation of subtags via a hyphen:
33813
+
33814
+ "Subtag" refers to a specific section of a tag, delimited by a
33815
+ hyphen, such as the subtags 'zh', 'Hant', and 'CN' in the tag "zh-
33816
+ Hant-CN". Examples of subtags in this document are enclosed in
33817
+ single quotes ('Hant')
33818
+
33819
+ However, we need to add "_" to maintain the existing behaviour.
33820
+ */
33821
+
33822
+ var delimiter = '(-|_)';
33823
+ /*
33824
+ = language
33825
+ ["-" script]
33826
+ ["-" region]
33827
+ *("-" variant)
33828
+ *("-" extension)
33829
+ ["-" privateuse]
33830
+ */
33831
+
33832
+ var langtag = "".concat(language, "(").concat(delimiter).concat(script, ")?(").concat(delimiter).concat(region, ")?(").concat(delimiter).concat(variant, ")*(").concat(delimiter).concat(extension, ")*(").concat(delimiter).concat(privateuse, ")?");
33833
+ /*
33834
+ Regex implementation based on BCP RFC 5646
33835
+ Tags for Identifying Languages
33836
+ https://www.rfc-editor.org/rfc/rfc5646.html
33837
+ */
33729
33838
 
33730
- return localeReg.test(str);
33839
+ var languageTagRegex = new RegExp("(^".concat(privateuse, "$)|(^").concat(grandfathered, "$)|(^").concat(langtag, "$)"));
33840
+
33841
+ function isLocale(str) {
33842
+ (0, _assertString.default)(str);
33843
+ return languageTagRegex.test(str);
33731
33844
  }
33732
33845
 
33733
33846
  module.exports = exports.default;
@@ -33744,16 +33857,16 @@ Object.defineProperty(isAlpha$1, "__esModule", {
33744
33857
  isAlpha$1.default = isAlpha;
33745
33858
  isAlpha$1.locales = void 0;
33746
33859
 
33747
- var _assertString$9 = _interopRequireDefault$9(assertStringExports);
33860
+ var _assertString$a = _interopRequireDefault$a(assertStringExports);
33748
33861
 
33749
33862
  var _alpha$1 = alpha$1;
33750
33863
 
33751
- function _interopRequireDefault$9(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33864
+ function _interopRequireDefault$a(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33752
33865
 
33753
33866
  function isAlpha(_str) {
33754
33867
  var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en-US';
33755
33868
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
33756
- (0, _assertString$9.default)(_str);
33869
+ (0, _assertString$a.default)(_str);
33757
33870
  var str = _str;
33758
33871
  var ignore = options.ignore;
33759
33872
 
@@ -33785,16 +33898,16 @@ Object.defineProperty(isAlphanumeric$1, "__esModule", {
33785
33898
  isAlphanumeric$1.default = isAlphanumeric;
33786
33899
  isAlphanumeric$1.locales = void 0;
33787
33900
 
33788
- var _assertString$8 = _interopRequireDefault$8(assertStringExports);
33901
+ var _assertString$9 = _interopRequireDefault$9(assertStringExports);
33789
33902
 
33790
33903
  var _alpha = alpha$1;
33791
33904
 
33792
- function _interopRequireDefault$8(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33905
+ function _interopRequireDefault$9(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33793
33906
 
33794
33907
  function isAlphanumeric(_str) {
33795
33908
  var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en-US';
33796
33909
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
33797
- (0, _assertString$8.default)(_str);
33910
+ (0, _assertString$9.default)(_str);
33798
33911
  var str = _str;
33799
33912
  var ignore = options.ignore;
33800
33913
 
@@ -34226,15 +34339,15 @@ Object.defineProperty(isFullWidth$1, "__esModule", {
34226
34339
  isFullWidth$1.default = isFullWidth;
34227
34340
  isFullWidth$1.fullWidth = void 0;
34228
34341
 
34229
- var _assertString$7 = _interopRequireDefault$7(assertStringExports);
34342
+ var _assertString$8 = _interopRequireDefault$8(assertStringExports);
34230
34343
 
34231
- function _interopRequireDefault$7(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34344
+ function _interopRequireDefault$8(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34232
34345
 
34233
34346
  var fullWidth = /[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;
34234
34347
  isFullWidth$1.fullWidth = fullWidth;
34235
34348
 
34236
34349
  function isFullWidth(str) {
34237
- (0, _assertString$7.default)(str);
34350
+ (0, _assertString$8.default)(str);
34238
34351
  return fullWidth.test(str);
34239
34352
  }
34240
34353
 
@@ -34246,15 +34359,15 @@ Object.defineProperty(isHalfWidth$1, "__esModule", {
34246
34359
  isHalfWidth$1.default = isHalfWidth;
34247
34360
  isHalfWidth$1.halfWidth = void 0;
34248
34361
 
34249
- var _assertString$6 = _interopRequireDefault$6(assertStringExports);
34362
+ var _assertString$7 = _interopRequireDefault$7(assertStringExports);
34250
34363
 
34251
- function _interopRequireDefault$6(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34364
+ function _interopRequireDefault$7(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34252
34365
 
34253
34366
  var halfWidth = /[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;
34254
34367
  isHalfWidth$1.halfWidth = halfWidth;
34255
34368
 
34256
34369
  function isHalfWidth(str) {
34257
- (0, _assertString$6.default)(str);
34370
+ (0, _assertString$7.default)(str);
34258
34371
  return halfWidth.test(str);
34259
34372
  }
34260
34373
 
@@ -34681,9 +34794,9 @@ Object.defineProperty(isIBAN$1, "__esModule", {
34681
34794
  isIBAN$1.default = isIBAN;
34682
34795
  isIBAN$1.locales = void 0;
34683
34796
 
34684
- var _assertString$5 = _interopRequireDefault$5(assertStringExports);
34797
+ var _assertString$6 = _interopRequireDefault$6(assertStringExports);
34685
34798
 
34686
- function _interopRequireDefault$5(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34799
+ function _interopRequireDefault$6(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34687
34800
 
34688
34801
  /**
34689
34802
  * List of country codes with
@@ -34738,6 +34851,7 @@ var ibanRegexThroughCountryCode = {
34738
34851
  LT: /^(LT[0-9]{2})\d{16}$/,
34739
34852
  LU: /^(LU[0-9]{2})\d{3}[A-Z0-9]{13}$/,
34740
34853
  LV: /^(LV[0-9]{2})[A-Z]{4}[A-Z0-9]{13}$/,
34854
+ MA: /^(MA[0-9]{26})$/,
34741
34855
  MC: /^(MC[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/,
34742
34856
  MD: /^(MD[0-9]{2})[A-Z0-9]{20}$/,
34743
34857
  ME: /^(ME[0-9]{2})\d{18}$/,
@@ -34770,6 +34884,25 @@ var ibanRegexThroughCountryCode = {
34770
34884
  VG: /^(VG[0-9]{2})[A-Z0-9]{4}\d{16}$/,
34771
34885
  XK: /^(XK[0-9]{2})\d{16}$/
34772
34886
  };
34887
+ /**
34888
+ * Check if the country codes passed are valid using the
34889
+ * ibanRegexThroughCountryCode as a reference
34890
+ *
34891
+ * @param {array} countryCodeArray
34892
+ * @return {boolean}
34893
+ */
34894
+
34895
+ function hasOnlyValidCountryCodes(countryCodeArray) {
34896
+ var countryCodeArrayFilteredWithObjectIbanCode = countryCodeArray.filter(function (countryCode) {
34897
+ return !(countryCode in ibanRegexThroughCountryCode);
34898
+ });
34899
+
34900
+ if (countryCodeArrayFilteredWithObjectIbanCode.length > 0) {
34901
+ return false;
34902
+ }
34903
+
34904
+ return true;
34905
+ }
34773
34906
  /**
34774
34907
  * Check whether string has correct universal IBAN format
34775
34908
  * The IBAN consists of up to 34 alphanumeric characters, as follows:
@@ -34779,14 +34912,38 @@ var ibanRegexThroughCountryCode = {
34779
34912
  * NOTE: Permitted IBAN characters are: digits [0-9] and the 26 latin alphabetic [A-Z]
34780
34913
  *
34781
34914
  * @param {string} str - string under validation
34915
+ * @param {object} options - object to pass the countries to be either whitelisted or blacklisted
34782
34916
  * @return {boolean}
34783
34917
  */
34784
34918
 
34785
- function hasValidIbanFormat(str) {
34919
+
34920
+ function hasValidIbanFormat(str, options) {
34786
34921
  // Strip white spaces and hyphens
34787
34922
  var strippedStr = str.replace(/[\s\-]+/gi, '').toUpperCase();
34788
34923
  var isoCountryCode = strippedStr.slice(0, 2).toUpperCase();
34789
- return isoCountryCode in ibanRegexThroughCountryCode && ibanRegexThroughCountryCode[isoCountryCode].test(strippedStr);
34924
+ var isoCountryCodeInIbanRegexCodeObject = (isoCountryCode in ibanRegexThroughCountryCode);
34925
+
34926
+ if (options.whitelist) {
34927
+ if (!hasOnlyValidCountryCodes(options.whitelist)) {
34928
+ return false;
34929
+ }
34930
+
34931
+ var isoCountryCodeInWhiteList = options.whitelist.includes(isoCountryCode);
34932
+
34933
+ if (!isoCountryCodeInWhiteList) {
34934
+ return false;
34935
+ }
34936
+ }
34937
+
34938
+ if (options.blacklist) {
34939
+ var isoCountryCodeInBlackList = options.blacklist.includes(isoCountryCode);
34940
+
34941
+ if (isoCountryCodeInBlackList) {
34942
+ return false;
34943
+ }
34944
+ }
34945
+
34946
+ return isoCountryCodeInIbanRegexCodeObject && ibanRegexThroughCountryCode[isoCountryCode].test(strippedStr);
34790
34947
  }
34791
34948
  /**
34792
34949
  * Check whether string has valid IBAN Checksum
@@ -34817,8 +34974,9 @@ function hasValidIbanChecksum(str) {
34817
34974
  }
34818
34975
 
34819
34976
  function isIBAN(str) {
34820
- (0, _assertString$5.default)(str);
34821
- return hasValidIbanFormat(str) && hasValidIbanChecksum(str);
34977
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
34978
+ (0, _assertString$6.default)(str);
34979
+ return hasValidIbanFormat(str, options) && hasValidIbanChecksum(str);
34822
34980
  }
34823
34981
 
34824
34982
  var locales$2 = Object.keys(ibanRegexThroughCountryCode);
@@ -34834,15 +34992,15 @@ Object.defineProperty(isISO31661Alpha2$1, "__esModule", {
34834
34992
  isISO31661Alpha2$1.default = isISO31661Alpha2;
34835
34993
  isISO31661Alpha2$1.CountryCodes = void 0;
34836
34994
 
34837
- var _assertString$4 = _interopRequireDefault$4(assertStringExports);
34995
+ var _assertString$5 = _interopRequireDefault$5(assertStringExports);
34838
34996
 
34839
- function _interopRequireDefault$4(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34997
+ function _interopRequireDefault$5(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
34840
34998
 
34841
34999
  // from https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
34842
35000
  var validISO31661Alpha2CountriesCodes = new Set(['AD', 'AE', 'AF', 'AG', 'AI', 'AL', 'AM', 'AO', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AW', 'AX', 'AZ', 'BA', 'BB', 'BD', 'BE', 'BF', 'BG', 'BH', 'BI', 'BJ', 'BL', 'BM', 'BN', 'BO', 'BQ', 'BR', 'BS', 'BT', 'BV', 'BW', 'BY', 'BZ', 'CA', 'CC', 'CD', 'CF', 'CG', 'CH', 'CI', 'CK', 'CL', 'CM', 'CN', 'CO', 'CR', 'CU', 'CV', 'CW', 'CX', 'CY', 'CZ', 'DE', 'DJ', 'DK', 'DM', 'DO', 'DZ', 'EC', 'EE', 'EG', 'EH', 'ER', 'ES', 'ET', 'FI', 'FJ', 'FK', 'FM', 'FO', 'FR', 'GA', 'GB', 'GD', 'GE', 'GF', 'GG', 'GH', 'GI', 'GL', 'GM', 'GN', 'GP', 'GQ', 'GR', 'GS', 'GT', 'GU', 'GW', 'GY', 'HK', 'HM', 'HN', 'HR', 'HT', 'HU', 'ID', 'IE', 'IL', 'IM', 'IN', 'IO', 'IQ', 'IR', 'IS', 'IT', 'JE', 'JM', 'JO', 'JP', 'KE', 'KG', 'KH', 'KI', 'KM', 'KN', 'KP', 'KR', 'KW', 'KY', 'KZ', 'LA', 'LB', 'LC', 'LI', 'LK', 'LR', 'LS', 'LT', 'LU', 'LV', 'LY', 'MA', 'MC', 'MD', 'ME', 'MF', 'MG', 'MH', 'MK', 'ML', 'MM', 'MN', 'MO', 'MP', 'MQ', 'MR', 'MS', 'MT', 'MU', 'MV', 'MW', 'MX', 'MY', 'MZ', 'NA', 'NC', 'NE', 'NF', 'NG', 'NI', 'NL', 'NO', 'NP', 'NR', 'NU', 'NZ', 'OM', 'PA', 'PE', 'PF', 'PG', 'PH', 'PK', 'PL', 'PM', 'PN', 'PR', 'PS', 'PT', 'PW', 'PY', 'QA', 'RE', 'RO', 'RS', 'RU', 'RW', 'SA', 'SB', 'SC', 'SD', 'SE', 'SG', 'SH', 'SI', 'SJ', 'SK', 'SL', 'SM', 'SN', 'SO', 'SR', 'SS', 'ST', 'SV', 'SX', 'SY', 'SZ', 'TC', 'TD', 'TF', 'TG', 'TH', 'TJ', 'TK', 'TL', 'TM', 'TN', 'TO', 'TR', 'TT', 'TV', 'TW', 'TZ', 'UA', 'UG', 'UM', 'US', 'UY', 'UZ', 'VA', 'VC', 'VE', 'VG', 'VI', 'VN', 'VU', 'WF', 'WS', 'YE', 'YT', 'ZA', 'ZM', 'ZW']);
34843
35001
 
34844
35002
  function isISO31661Alpha2(str) {
34845
- (0, _assertString$4.default)(str);
35003
+ (0, _assertString$5.default)(str);
34846
35004
  return validISO31661Alpha2CountriesCodes.has(str.toUpperCase());
34847
35005
  }
34848
35006
 
@@ -35015,7 +35173,7 @@ var isBase64Exports = isBase64.exports;
35015
35173
  var dotSplit = str.split('.');
35016
35174
  var len = dotSplit.length;
35017
35175
 
35018
- if (len > 3 || len < 2) {
35176
+ if (len !== 3) {
35019
35177
  return false;
35020
35178
  }
35021
35179
 
@@ -35391,10 +35549,19 @@ var isCreditCard = {exports: {}};
35391
35549
  unionpay: /^(6[27][0-9]{14}|^(81[0-9]{14,17}))$/,
35392
35550
  visa: /^(?:4[0-9]{12})(?:[0-9]{3,6})?$/
35393
35551
  };
35394
- /* eslint-disable max-len */
35395
35552
 
35396
- var allCards = /^(?:4[0-9]{12}(?:[0-9]{3,6})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12,15}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14}|^(81[0-9]{14,17}))$/;
35397
- /* eslint-enable max-len */
35553
+ var allCards = function () {
35554
+ var tmpCardsArray = [];
35555
+
35556
+ for (var cardProvider in cards) {
35557
+ // istanbul ignore else
35558
+ if (cards.hasOwnProperty(cardProvider)) {
35559
+ tmpCardsArray.push(cards[cardProvider]);
35560
+ }
35561
+ }
35562
+
35563
+ return tmpCardsArray;
35564
+ }();
35398
35565
 
35399
35566
  function isCreditCard(card) {
35400
35567
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -35410,7 +35577,9 @@ var isCreditCard = {exports: {}};
35410
35577
  } else if (provider && !(provider.toLowerCase() in cards)) {
35411
35578
  /* specific provider not in the list */
35412
35579
  throw new Error("".concat(provider, " is not a valid credit card provider."));
35413
- } else if (!allCards.test(sanitized)) {
35580
+ } else if (!allCards.some(function (cardProvider) {
35581
+ return cardProvider.test(sanitized);
35582
+ })) {
35414
35583
  // no specific provider
35415
35584
  return false;
35416
35585
  }
@@ -37803,9 +37972,9 @@ Object.defineProperty(isMobilePhone$1, "__esModule", {
37803
37972
  isMobilePhone$1.default = isMobilePhone;
37804
37973
  isMobilePhone$1.locales = void 0;
37805
37974
 
37806
- var _assertString$3 = _interopRequireDefault$3(assertStringExports);
37975
+ var _assertString$4 = _interopRequireDefault$4(assertStringExports);
37807
37976
 
37808
- function _interopRequireDefault$3(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
37977
+ function _interopRequireDefault$4(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
37809
37978
 
37810
37979
  /* eslint-disable max-len */
37811
37980
  var phones = {
@@ -37823,6 +37992,7 @@ var phones = {
37823
37992
  'ar-OM': /^((\+|00)968)?(9[1-9])\d{6}$/,
37824
37993
  'ar-PS': /^(\+?970|0)5[6|9](\d{7})$/,
37825
37994
  'ar-SA': /^(!?(\+?966)|0)?5\d{8}$/,
37995
+ 'ar-SD': /^((\+?249)|0)?(9[012369]|1[012])\d{7}$/,
37826
37996
  'ar-SY': /^(!?(\+?963)|0)?9\d{8}$/,
37827
37997
  'ar-TN': /^(\+?216)?[2459]\d{7}$/,
37828
37998
  'az-AZ': /^(\+994|0)(10|5[015]|7[07]|99)\d{7}$/,
@@ -37855,6 +38025,7 @@ var phones = {
37855
38025
  'en-IN': /^(\+?91|0)?[6789]\d{9}$/,
37856
38026
  'en-JM': /^(\+?876)?\d{7}$/,
37857
38027
  'en-KE': /^(\+?254|0)(7|1)\d{8}$/,
38028
+ 'fr-CF': /^(\+?236| ?)(70|75|77|72|21|22)\d{6}$/,
37858
38029
  'en-SS': /^(\+?211|0)(9[1257])\d{7}$/,
37859
38030
  'en-KI': /^((\+686|686)?)?( )?((6|7)(2|3|8)[0-9]{6})$/,
37860
38031
  'en-KN': /^(?:\+1|1)869(?:46\d|48[89]|55[6-8]|66\d|76[02-7])\d{4}$/,
@@ -37882,7 +38053,7 @@ var phones = {
37882
38053
  'es-CO': /^(\+?57)?3(0(0|1|2|4|5)|1\d|2[0-4]|5(0|1))\d{7}$/,
37883
38054
  'es-CL': /^(\+?56|0)[2-9]\d{1}\d{7}$/,
37884
38055
  'es-CR': /^(\+506)?[2-8]\d{7}$/,
37885
- 'es-CU': /^(\+53|0053)?5\d{7}/,
38056
+ 'es-CU': /^(\+53|0053)?5\d{7}$/,
37886
38057
  'es-DO': /^(\+?1)?8[024]9\d{7}$/,
37887
38058
  'es-HN': /^(\+?504)?[9|8|3|2]\d{7}$/,
37888
38059
  'es-EC': /^(\+?593|0)([2-7]|9[2-9])\d{7}$/,
@@ -37910,6 +38081,7 @@ var phones = {
37910
38081
  'fr-MQ': /^(\+?596|0|00596)[67]\d{8}$/,
37911
38082
  'fr-PF': /^(\+?689)?8[789]\d{6}$/,
37912
38083
  'fr-RE': /^(\+?262|0|00262)[67]\d{8}$/,
38084
+ 'fr-WF': /^(\+681)?\d{6}$/,
37913
38085
  'he-IL': /^(\+972|0)([23489]|5[012345689]|77)[1-9]\d{6}$/,
37914
38086
  'hu-HU': /^(\+?36|06)(20|30|31|50|70)\d{7}$/,
37915
38087
  'id-ID': /^(\+?62|0)8(1[123456789]|2[1238]|3[1238]|5[12356789]|7[78]|9[56789]|8[123456789])([\s?|\d]{5,11})$/,
@@ -37935,7 +38107,7 @@ var phones = {
37935
38107
  'nl-NL': /^(((\+|00)?31\(0\))|((\+|00)?31)|0)6{1}\d{8}$/,
37936
38108
  'nl-AW': /^(\+)?297(56|59|64|73|74|99)\d{5}$/,
37937
38109
  'nn-NO': /^(\+?47)?[49]\d{7}$/,
37938
- 'pl-PL': /^(\+?48)? ?[5-8]\d ?\d{3} ?\d{2} ?\d{2}$/,
38110
+ 'pl-PL': /^(\+?48)? ?([5-8]\d|45) ?\d{3} ?\d{2} ?\d{2}$/,
37939
38111
  'pt-BR': /^((\+?55\ ?[1-9]{2}\ ?)|(\+?55\ ?\([1-9]{2}\)\ ?)|(0[1-9]{2}\ ?)|(\([1-9]{2}\)\ ?)|([1-9]{2}\ ?))((\d{4}\-?\d{4})|(9[1-9]{1}\d{3}\-?\d{4}))$/,
37940
38112
  'pt-PT': /^(\+?351)?9[1236]\d{7}$/,
37941
38113
  'pt-AO': /^(\+244)\d{9}$/,
@@ -37945,6 +38117,7 @@ var phones = {
37945
38117
  'si-LK': /^(?:0|94|\+94)?(7(0|1|2|4|5|6|7|8)( |-)?)\d{7}$/,
37946
38118
  'sl-SI': /^(\+386\s?|0)(\d{1}\s?\d{3}\s?\d{2}\s?\d{2}|\d{2}\s?\d{3}\s?\d{3})$/,
37947
38119
  'sk-SK': /^(\+?421)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/,
38120
+ 'so-SO': /^(\+?252|0)((6[0-9])\d{7}|(7[1-9])\d{7})$/,
37948
38121
  'sq-AL': /^(\+355|0)6[789]\d{6}$/,
37949
38122
  'sr-RS': /^(\+3816|06)[- \d]{5,9}$/,
37950
38123
  'sv-SE': /^(\+?46|0)[\s\-]?7[\s\-]?[02369]([\s\-]?\d){7}$/,
@@ -37975,7 +38148,7 @@ phones['fr-CH'] = phones['de-CH'];
37975
38148
  phones['it-CH'] = phones['fr-CH'];
37976
38149
 
37977
38150
  function isMobilePhone(str, locale, options) {
37978
- (0, _assertString$3.default)(str);
38151
+ (0, _assertString$4.default)(str);
37979
38152
 
37980
38153
  if (options && options.strictMode && !str.startsWith('+')) {
37981
38154
  return false;
@@ -38168,6 +38341,51 @@ var isBtcAddress = {exports: {}};
38168
38341
 
38169
38342
  var isBtcAddressExports = isBtcAddress.exports;
38170
38343
 
38344
+ var isISO6346$1 = {};
38345
+
38346
+ Object.defineProperty(isISO6346$1, "__esModule", {
38347
+ value: true
38348
+ });
38349
+ isISO6346$1.isISO6346 = isISO6346;
38350
+ isISO6346$1.isFreightContainerID = void 0;
38351
+
38352
+ var _assertString$3 = _interopRequireDefault$3(assertStringExports);
38353
+
38354
+ function _interopRequireDefault$3(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38355
+
38356
+ // https://en.wikipedia.org/wiki/ISO_6346
38357
+ // according to ISO6346 standard, checksum digit is mandatory for freight container but recommended
38358
+ // for other container types (J and Z)
38359
+ var isISO6346Str = /^[A-Z]{3}(U[0-9]{7})|([J,Z][0-9]{6,7})$/;
38360
+ var isDigit = /^[0-9]$/;
38361
+
38362
+ function isISO6346(str) {
38363
+ (0, _assertString$3.default)(str);
38364
+ str = str.toUpperCase();
38365
+ if (!isISO6346Str.test(str)) return false;
38366
+
38367
+ if (str.length === 11) {
38368
+ var sum = 0;
38369
+
38370
+ for (var i = 0; i < str.length - 1; i++) {
38371
+ if (!isDigit.test(str[i])) {
38372
+ var convertedCode = void 0;
38373
+ var letterCode = str.charCodeAt(i) - 55;
38374
+ if (letterCode < 11) convertedCode = letterCode;else if (letterCode >= 11 && letterCode <= 20) convertedCode = 12 + letterCode % 11;else if (letterCode >= 21 && letterCode <= 30) convertedCode = 23 + letterCode % 21;else convertedCode = 34 + letterCode % 31;
38375
+ sum += convertedCode * Math.pow(2, i);
38376
+ } else sum += str[i] * Math.pow(2, i);
38377
+ }
38378
+
38379
+ var checkSumDigit = sum % 11;
38380
+ return Number(str[str.length - 1]) === checkSumDigit;
38381
+ }
38382
+
38383
+ return true;
38384
+ }
38385
+
38386
+ var isFreightContainerID = isISO6346;
38387
+ isISO6346$1.isFreightContainerID = isFreightContainerID;
38388
+
38171
38389
  var isISO6391 = {exports: {}};
38172
38390
 
38173
38391
  (function (module, exports) {
@@ -38514,6 +38732,215 @@ var isMagnetURI = {exports: {}};
38514
38732
 
38515
38733
  var isMagnetURIExports = isMagnetURI.exports;
38516
38734
 
38735
+ var isMailtoURI = {exports: {}};
38736
+
38737
+ var trim = {exports: {}};
38738
+
38739
+ var rtrim = {exports: {}};
38740
+
38741
+ (function (module, exports) {
38742
+
38743
+ Object.defineProperty(exports, "__esModule", {
38744
+ value: true
38745
+ });
38746
+ exports.default = rtrim;
38747
+
38748
+ var _assertString = _interopRequireDefault(assertStringExports);
38749
+
38750
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38751
+
38752
+ function rtrim(str, chars) {
38753
+ (0, _assertString.default)(str);
38754
+
38755
+ if (chars) {
38756
+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Escaping
38757
+ var pattern = new RegExp("[".concat(chars.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), "]+$"), 'g');
38758
+ return str.replace(pattern, '');
38759
+ } // Use a faster and more safe than regex trim method https://blog.stevenlevithan.com/archives/faster-trim-javascript
38760
+
38761
+
38762
+ var strIndex = str.length - 1;
38763
+
38764
+ while (/\s/.test(str.charAt(strIndex))) {
38765
+ strIndex -= 1;
38766
+ }
38767
+
38768
+ return str.slice(0, strIndex + 1);
38769
+ }
38770
+
38771
+ module.exports = exports.default;
38772
+ module.exports.default = exports.default;
38773
+ } (rtrim, rtrim.exports));
38774
+
38775
+ var rtrimExports = rtrim.exports;
38776
+
38777
+ var ltrim = {exports: {}};
38778
+
38779
+ (function (module, exports) {
38780
+
38781
+ Object.defineProperty(exports, "__esModule", {
38782
+ value: true
38783
+ });
38784
+ exports.default = ltrim;
38785
+
38786
+ var _assertString = _interopRequireDefault(assertStringExports);
38787
+
38788
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38789
+
38790
+ function ltrim(str, chars) {
38791
+ (0, _assertString.default)(str); // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Escaping
38792
+
38793
+ var pattern = chars ? new RegExp("^[".concat(chars.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), "]+"), 'g') : /^\s+/g;
38794
+ return str.replace(pattern, '');
38795
+ }
38796
+
38797
+ module.exports = exports.default;
38798
+ module.exports.default = exports.default;
38799
+ } (ltrim, ltrim.exports));
38800
+
38801
+ var ltrimExports = ltrim.exports;
38802
+
38803
+ (function (module, exports) {
38804
+
38805
+ Object.defineProperty(exports, "__esModule", {
38806
+ value: true
38807
+ });
38808
+ exports.default = trim;
38809
+
38810
+ var _rtrim = _interopRequireDefault(rtrimExports);
38811
+
38812
+ var _ltrim = _interopRequireDefault(ltrimExports);
38813
+
38814
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38815
+
38816
+ function trim(str, chars) {
38817
+ return (0, _rtrim.default)((0, _ltrim.default)(str, chars), chars);
38818
+ }
38819
+
38820
+ module.exports = exports.default;
38821
+ module.exports.default = exports.default;
38822
+ } (trim, trim.exports));
38823
+
38824
+ var trimExports = trim.exports;
38825
+
38826
+ (function (module, exports) {
38827
+
38828
+ Object.defineProperty(exports, "__esModule", {
38829
+ value: true
38830
+ });
38831
+ exports.default = isMailtoURI;
38832
+
38833
+ var _trim = _interopRequireDefault(trimExports);
38834
+
38835
+ var _isEmail = _interopRequireDefault(isEmailExports);
38836
+
38837
+ var _assertString = _interopRequireDefault(assertStringExports);
38838
+
38839
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38840
+
38841
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
38842
+
38843
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
38844
+
38845
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
38846
+
38847
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
38848
+
38849
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
38850
+
38851
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
38852
+
38853
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
38854
+
38855
+ function parseMailtoQueryString(queryString) {
38856
+ var allowedParams = new Set(['subject', 'body', 'cc', 'bcc']),
38857
+ query = {
38858
+ cc: '',
38859
+ bcc: ''
38860
+ };
38861
+ var isParseFailed = false;
38862
+ var queryParams = queryString.split('&');
38863
+
38864
+ if (queryParams.length > 4) {
38865
+ return false;
38866
+ }
38867
+
38868
+ var _iterator = _createForOfIteratorHelper(queryParams),
38869
+ _step;
38870
+
38871
+ try {
38872
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
38873
+ var q = _step.value;
38874
+
38875
+ var _q$split = q.split('='),
38876
+ _q$split2 = _slicedToArray(_q$split, 2),
38877
+ key = _q$split2[0],
38878
+ value = _q$split2[1]; // checked for invalid and duplicated query params
38879
+
38880
+
38881
+ if (key && !allowedParams.has(key)) {
38882
+ isParseFailed = true;
38883
+ break;
38884
+ }
38885
+
38886
+ if (value && (key === 'cc' || key === 'bcc')) {
38887
+ query[key] = value;
38888
+ }
38889
+
38890
+ if (key) {
38891
+ allowedParams.delete(key);
38892
+ }
38893
+ }
38894
+ } catch (err) {
38895
+ _iterator.e(err);
38896
+ } finally {
38897
+ _iterator.f();
38898
+ }
38899
+
38900
+ return isParseFailed ? false : query;
38901
+ }
38902
+
38903
+ function isMailtoURI(url, options) {
38904
+ (0, _assertString.default)(url);
38905
+
38906
+ if (url.indexOf('mailto:') !== 0) {
38907
+ return false;
38908
+ }
38909
+
38910
+ var _url$replace$split = url.replace('mailto:', '').split('?'),
38911
+ _url$replace$split2 = _slicedToArray(_url$replace$split, 2),
38912
+ _url$replace$split2$ = _url$replace$split2[0],
38913
+ to = _url$replace$split2$ === void 0 ? '' : _url$replace$split2$,
38914
+ _url$replace$split2$2 = _url$replace$split2[1],
38915
+ queryString = _url$replace$split2$2 === void 0 ? '' : _url$replace$split2$2;
38916
+
38917
+ if (!to && !queryString) {
38918
+ return true;
38919
+ }
38920
+
38921
+ var query = parseMailtoQueryString(queryString);
38922
+
38923
+ if (!query) {
38924
+ return false;
38925
+ }
38926
+
38927
+ return "".concat(to, ",").concat(query.cc, ",").concat(query.bcc).split(',').every(function (email) {
38928
+ email = (0, _trim.default)(email, ' ');
38929
+
38930
+ if (email) {
38931
+ return (0, _isEmail.default)(email, options);
38932
+ }
38933
+
38934
+ return true;
38935
+ });
38936
+ }
38937
+
38938
+ module.exports = exports.default;
38939
+ module.exports.default = exports.default;
38940
+ } (isMailtoURI, isMailtoURI.exports));
38941
+
38942
+ var isMailtoURIExports = isMailtoURI.exports;
38943
+
38517
38944
  var isMimeType = {exports: {}};
38518
38945
 
38519
38946
  (function (module, exports) {
@@ -38726,95 +39153,6 @@ function isPostalCode(str, locale) {
38726
39153
  throw new Error("Invalid locale '".concat(locale, "'"));
38727
39154
  }
38728
39155
 
38729
- var ltrim = {exports: {}};
38730
-
38731
- (function (module, exports) {
38732
-
38733
- Object.defineProperty(exports, "__esModule", {
38734
- value: true
38735
- });
38736
- exports.default = ltrim;
38737
-
38738
- var _assertString = _interopRequireDefault(assertStringExports);
38739
-
38740
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38741
-
38742
- function ltrim(str, chars) {
38743
- (0, _assertString.default)(str); // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Escaping
38744
-
38745
- var pattern = chars ? new RegExp("^[".concat(chars.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), "]+"), 'g') : /^\s+/g;
38746
- return str.replace(pattern, '');
38747
- }
38748
-
38749
- module.exports = exports.default;
38750
- module.exports.default = exports.default;
38751
- } (ltrim, ltrim.exports));
38752
-
38753
- var ltrimExports = ltrim.exports;
38754
-
38755
- var rtrim = {exports: {}};
38756
-
38757
- (function (module, exports) {
38758
-
38759
- Object.defineProperty(exports, "__esModule", {
38760
- value: true
38761
- });
38762
- exports.default = rtrim;
38763
-
38764
- var _assertString = _interopRequireDefault(assertStringExports);
38765
-
38766
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38767
-
38768
- function rtrim(str, chars) {
38769
- (0, _assertString.default)(str);
38770
-
38771
- if (chars) {
38772
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Escaping
38773
- var pattern = new RegExp("[".concat(chars.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), "]+$"), 'g');
38774
- return str.replace(pattern, '');
38775
- } // Use a faster and more safe than regex trim method https://blog.stevenlevithan.com/archives/faster-trim-javascript
38776
-
38777
-
38778
- var strIndex = str.length - 1;
38779
-
38780
- while (/\s/.test(str.charAt(strIndex))) {
38781
- strIndex -= 1;
38782
- }
38783
-
38784
- return str.slice(0, strIndex + 1);
38785
- }
38786
-
38787
- module.exports = exports.default;
38788
- module.exports.default = exports.default;
38789
- } (rtrim, rtrim.exports));
38790
-
38791
- var rtrimExports = rtrim.exports;
38792
-
38793
- var trim = {exports: {}};
38794
-
38795
- (function (module, exports) {
38796
-
38797
- Object.defineProperty(exports, "__esModule", {
38798
- value: true
38799
- });
38800
- exports.default = trim;
38801
-
38802
- var _rtrim = _interopRequireDefault(rtrimExports);
38803
-
38804
- var _ltrim = _interopRequireDefault(ltrimExports);
38805
-
38806
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
38807
-
38808
- function trim(str, chars) {
38809
- return (0, _rtrim.default)((0, _ltrim.default)(str, chars), chars);
38810
- }
38811
-
38812
- module.exports = exports.default;
38813
- module.exports.default = exports.default;
38814
- } (trim, trim.exports));
38815
-
38816
- var trimExports = trim.exports;
38817
-
38818
39156
  var _escape = {exports: {}};
38819
39157
 
38820
39158
  (function (module, exports) {
@@ -39371,6 +39709,24 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
39371
39709
 
39372
39710
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39373
39711
 
39712
+ var CH = function CH(str) {
39713
+ // @see {@link https://www.ech.ch/de/ech/ech-0097/5.2.0}
39714
+ var hasValidCheckNumber = function hasValidCheckNumber(digits) {
39715
+ var lastDigit = digits.pop(); // used as check number
39716
+
39717
+ var weights = [5, 4, 3, 2, 7, 6, 5, 4];
39718
+ var calculatedCheckNumber = (11 - digits.reduce(function (acc, el, idx) {
39719
+ return acc + el * weights[idx];
39720
+ }, 0) % 11) % 11;
39721
+ return lastDigit === calculatedCheckNumber;
39722
+ }; // @see {@link https://www.estv.admin.ch/estv/de/home/mehrwertsteuer/uid/mwst-uid-nummer.html}
39723
+
39724
+
39725
+ return /^(CHE[- ]?)?(\d{9}|(\d{3}\.\d{3}\.\d{3})|(\d{3} \d{3} \d{3})) ?(TVA|MWST|IVA)?$/.test(str) && hasValidCheckNumber(str.match(/\d/g).map(function (el) {
39726
+ return +el;
39727
+ }));
39728
+ };
39729
+
39374
39730
  var PT = function PT(str) {
39375
39731
  var match = str.match(/^(PT)?(\d{9})$/);
39376
39732
 
@@ -39531,9 +39887,7 @@ var vatMatchers = {
39531
39887
  RS: function RS(str) {
39532
39888
  return /^(RS)?\d{9}$/.test(str);
39533
39889
  },
39534
- CH: function CH(str) {
39535
- return /^(CH)?(\d{6}|\d{9}|(\d{3}.\d{3})|(\d{3}.\d{3}.\d{3}))(TVA|MWST|IVA)$/.test(str);
39536
- },
39890
+ CH: CH,
39537
39891
  TR: function TR(str) {
39538
39892
  return /^(TR)?\d{10}$/.test(str);
39539
39893
  },
@@ -39763,9 +40117,11 @@ function isVAT(str, countryCode) {
39763
40117
 
39764
40118
  var _isBtcAddress = _interopRequireDefault(isBtcAddressExports);
39765
40119
 
39766
- var _isISO = _interopRequireDefault(isISO6391Exports);
40120
+ var _isISO = isISO6346$1;
40121
+
40122
+ var _isISO2 = _interopRequireDefault(isISO6391Exports);
39767
40123
 
39768
- var _isISO2 = _interopRequireDefault(isISO8601Exports);
40124
+ var _isISO3 = _interopRequireDefault(isISO8601Exports);
39769
40125
 
39770
40126
  var _isRFC = _interopRequireDefault(isRFC3339Exports);
39771
40127
 
@@ -39773,7 +40129,7 @@ function isVAT(str, countryCode) {
39773
40129
 
39774
40130
  var _isISO31661Alpha2 = _interopRequireDefault(isISO31661Alpha3Exports);
39775
40131
 
39776
- var _isISO3 = _interopRequireDefault(isISO4217$1);
40132
+ var _isISO4 = _interopRequireDefault(isISO4217$1);
39777
40133
 
39778
40134
  var _isBase = _interopRequireDefault(isBase32Exports);
39779
40135
 
@@ -39785,6 +40141,8 @@ function isVAT(str, countryCode) {
39785
40141
 
39786
40142
  var _isMagnetURI = _interopRequireDefault(isMagnetURIExports);
39787
40143
 
40144
+ var _isMailtoURI = _interopRequireDefault(isMailtoURIExports);
40145
+
39788
40146
  var _isMimeType = _interopRequireDefault(isMimeTypeExports);
39789
40147
 
39790
40148
  var _isLatLong = _interopRequireDefault(isLatLongExports);
@@ -39825,7 +40183,7 @@ function isVAT(str, countryCode) {
39825
40183
 
39826
40184
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39827
40185
 
39828
- var version = '13.9.0';
40186
+ var version = '13.11.0';
39829
40187
  var validator = {
39830
40188
  version: version,
39831
40189
  toDate: _toDate.default,
@@ -39899,17 +40257,20 @@ function isVAT(str, countryCode) {
39899
40257
  isEthereumAddress: _isEthereumAddress.default,
39900
40258
  isCurrency: _isCurrency.default,
39901
40259
  isBtcAddress: _isBtcAddress.default,
39902
- isISO6391: _isISO.default,
39903
- isISO8601: _isISO2.default,
40260
+ isISO6346: _isISO.isISO6346,
40261
+ isFreightContainerID: _isISO.isFreightContainerID,
40262
+ isISO6391: _isISO2.default,
40263
+ isISO8601: _isISO3.default,
39904
40264
  isRFC3339: _isRFC.default,
39905
40265
  isISO31661Alpha2: _isISO31661Alpha.default,
39906
40266
  isISO31661Alpha3: _isISO31661Alpha2.default,
39907
- isISO4217: _isISO3.default,
40267
+ isISO4217: _isISO4.default,
39908
40268
  isBase32: _isBase.default,
39909
40269
  isBase58: _isBase2.default,
39910
40270
  isBase64: _isBase3.default,
39911
40271
  isDataURI: _isDataURI.default,
39912
40272
  isMagnetURI: _isMagnetURI.default,
40273
+ isMailtoURI: _isMailtoURI.default,
39913
40274
  isMimeType: _isMimeType.default,
39914
40275
  isLatLong: _isLatLong.default,
39915
40276
  ltrim: _ltrim.default,
@@ -40095,9 +40456,9 @@ var _validateFormat = (rows, hasHeader, cols, options) => {
40095
40456
  if (colIndex < knownColsCount) {
40096
40457
  var colType = colsData[colIndex].type;
40097
40458
  if (colType && rowCell !== undefined) {
40098
- var _colsData$colIndex$en, _colsData$colIndex, _colsData$colIndex2, _colsData$colIndex2$c, _ref, _colsData$colIndex$ac, _colsData$colIndex$ce;
40459
+ var _colsData$colIndex$en, _colsData$colIndex, _colsData$colIndex2, _ref, _colsData$colIndex$ac, _colsData$colIndex$ce;
40099
40460
  // use of cellEditorParams is deprecated
40100
- var enumValues = (_colsData$colIndex$en = (_colsData$colIndex = colsData[colIndex]) === null || _colsData$colIndex === void 0 ? void 0 : _colsData$colIndex.enumValues) !== null && _colsData$colIndex$en !== void 0 ? _colsData$colIndex$en : (_colsData$colIndex2 = colsData[colIndex]) === null || _colsData$colIndex2 === void 0 ? void 0 : (_colsData$colIndex2$c = _colsData$colIndex2.cellEditorParams) === null || _colsData$colIndex2$c === void 0 ? void 0 : _colsData$colIndex2$c.enumValues;
40461
+ var enumValues = (_colsData$colIndex$en = (_colsData$colIndex = colsData[colIndex]) === null || _colsData$colIndex === void 0 ? void 0 : _colsData$colIndex.enumValues) !== null && _colsData$colIndex$en !== void 0 ? _colsData$colIndex$en : (_colsData$colIndex2 = colsData[colIndex]) === null || _colsData$colIndex2 === void 0 || (_colsData$colIndex2 = _colsData$colIndex2.cellEditorParams) === null || _colsData$colIndex2 === void 0 ? void 0 : _colsData$colIndex2.enumValues;
40101
40462
  var colOptions = _objectSpread2(_objectSpread2({}, options), {}, {
40102
40463
  enumValues
40103
40464
  });