z-schema 3.24.1 → 3.25.1

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.
@@ -3843,390 +3843,256 @@ process.chdir = function (dir) {
3843
3843
  process.umask = function() { return 0; };
3844
3844
 
3845
3845
  },{}],55:[function(require,module,exports){
3846
- 'use strict';
3846
+ "use strict";
3847
3847
 
3848
3848
  Object.defineProperty(exports, "__esModule", {
3849
3849
  value: true
3850
3850
  });
3851
+ exports.default = void 0;
3851
3852
 
3852
- var _toDate = require('./lib/toDate');
3853
-
3854
- var _toDate2 = _interopRequireDefault(_toDate);
3855
-
3856
- var _toFloat = require('./lib/toFloat');
3857
-
3858
- var _toFloat2 = _interopRequireDefault(_toFloat);
3859
-
3860
- var _toInt = require('./lib/toInt');
3861
-
3862
- var _toInt2 = _interopRequireDefault(_toInt);
3863
-
3864
- var _toBoolean = require('./lib/toBoolean');
3865
-
3866
- var _toBoolean2 = _interopRequireDefault(_toBoolean);
3867
-
3868
- var _equals = require('./lib/equals');
3869
-
3870
- var _equals2 = _interopRequireDefault(_equals);
3871
-
3872
- var _contains = require('./lib/contains');
3873
-
3874
- var _contains2 = _interopRequireDefault(_contains);
3875
-
3876
- var _matches = require('./lib/matches');
3877
-
3878
- var _matches2 = _interopRequireDefault(_matches);
3879
-
3880
- var _isEmail = require('./lib/isEmail');
3881
-
3882
- var _isEmail2 = _interopRequireDefault(_isEmail);
3883
-
3884
- var _isURL = require('./lib/isURL');
3885
-
3886
- var _isURL2 = _interopRequireDefault(_isURL);
3887
-
3888
- var _isMACAddress = require('./lib/isMACAddress');
3889
-
3890
- var _isMACAddress2 = _interopRequireDefault(_isMACAddress);
3891
-
3892
- var _isIP = require('./lib/isIP');
3893
-
3894
- var _isIP2 = _interopRequireDefault(_isIP);
3895
-
3896
- var _isIPRange = require('./lib/isIPRange');
3897
-
3898
- var _isIPRange2 = _interopRequireDefault(_isIPRange);
3899
-
3900
- var _isFQDN = require('./lib/isFQDN');
3901
-
3902
- var _isFQDN2 = _interopRequireDefault(_isFQDN);
3903
-
3904
- var _isBoolean = require('./lib/isBoolean');
3905
-
3906
- var _isBoolean2 = _interopRequireDefault(_isBoolean);
3907
-
3908
- var _isAlpha = require('./lib/isAlpha');
3909
-
3910
- var _isAlpha2 = _interopRequireDefault(_isAlpha);
3911
-
3912
- var _isAlphanumeric = require('./lib/isAlphanumeric');
3913
-
3914
- var _isAlphanumeric2 = _interopRequireDefault(_isAlphanumeric);
3915
-
3916
- var _isNumeric = require('./lib/isNumeric');
3917
-
3918
- var _isNumeric2 = _interopRequireDefault(_isNumeric);
3919
-
3920
- var _isPort = require('./lib/isPort');
3921
-
3922
- var _isPort2 = _interopRequireDefault(_isPort);
3923
-
3924
- var _isLowercase = require('./lib/isLowercase');
3925
-
3926
- var _isLowercase2 = _interopRequireDefault(_isLowercase);
3927
-
3928
- var _isUppercase = require('./lib/isUppercase');
3929
-
3930
- var _isUppercase2 = _interopRequireDefault(_isUppercase);
3931
-
3932
- var _isAscii = require('./lib/isAscii');
3933
-
3934
- var _isAscii2 = _interopRequireDefault(_isAscii);
3935
-
3936
- var _isFullWidth = require('./lib/isFullWidth');
3937
-
3938
- var _isFullWidth2 = _interopRequireDefault(_isFullWidth);
3939
-
3940
- var _isHalfWidth = require('./lib/isHalfWidth');
3941
-
3942
- var _isHalfWidth2 = _interopRequireDefault(_isHalfWidth);
3943
-
3944
- var _isVariableWidth = require('./lib/isVariableWidth');
3945
-
3946
- var _isVariableWidth2 = _interopRequireDefault(_isVariableWidth);
3947
-
3948
- var _isMultibyte = require('./lib/isMultibyte');
3949
-
3950
- var _isMultibyte2 = _interopRequireDefault(_isMultibyte);
3951
-
3952
- var _isSurrogatePair = require('./lib/isSurrogatePair');
3953
-
3954
- var _isSurrogatePair2 = _interopRequireDefault(_isSurrogatePair);
3955
-
3956
- var _isInt = require('./lib/isInt');
3957
-
3958
- var _isInt2 = _interopRequireDefault(_isInt);
3959
-
3960
- var _isFloat = require('./lib/isFloat');
3853
+ var _toDate = _interopRequireDefault(require("./lib/toDate"));
3961
3854
 
3962
- var _isFloat2 = _interopRequireDefault(_isFloat);
3855
+ var _toFloat = _interopRequireDefault(require("./lib/toFloat"));
3963
3856
 
3964
- var _isDecimal = require('./lib/isDecimal');
3857
+ var _toInt = _interopRequireDefault(require("./lib/toInt"));
3965
3858
 
3966
- var _isDecimal2 = _interopRequireDefault(_isDecimal);
3859
+ var _toBoolean = _interopRequireDefault(require("./lib/toBoolean"));
3967
3860
 
3968
- var _isHexadecimal = require('./lib/isHexadecimal');
3861
+ var _equals = _interopRequireDefault(require("./lib/equals"));
3969
3862
 
3970
- var _isHexadecimal2 = _interopRequireDefault(_isHexadecimal);
3863
+ var _contains = _interopRequireDefault(require("./lib/contains"));
3971
3864
 
3972
- var _isDivisibleBy = require('./lib/isDivisibleBy');
3865
+ var _matches = _interopRequireDefault(require("./lib/matches"));
3973
3866
 
3974
- var _isDivisibleBy2 = _interopRequireDefault(_isDivisibleBy);
3867
+ var _isEmail = _interopRequireDefault(require("./lib/isEmail"));
3975
3868
 
3976
- var _isHexColor = require('./lib/isHexColor');
3869
+ var _isURL = _interopRequireDefault(require("./lib/isURL"));
3977
3870
 
3978
- var _isHexColor2 = _interopRequireDefault(_isHexColor);
3871
+ var _isMACAddress = _interopRequireDefault(require("./lib/isMACAddress"));
3979
3872
 
3980
- var _isISRC = require('./lib/isISRC');
3873
+ var _isIP = _interopRequireDefault(require("./lib/isIP"));
3981
3874
 
3982
- var _isISRC2 = _interopRequireDefault(_isISRC);
3875
+ var _isIPRange = _interopRequireDefault(require("./lib/isIPRange"));
3983
3876
 
3984
- var _isMD = require('./lib/isMD5');
3877
+ var _isFQDN = _interopRequireDefault(require("./lib/isFQDN"));
3985
3878
 
3986
- var _isMD2 = _interopRequireDefault(_isMD);
3879
+ var _isBoolean = _interopRequireDefault(require("./lib/isBoolean"));
3987
3880
 
3988
- var _isHash = require('./lib/isHash');
3881
+ var _isAlpha = _interopRequireWildcard(require("./lib/isAlpha"));
3989
3882
 
3990
- var _isHash2 = _interopRequireDefault(_isHash);
3883
+ var _isAlphanumeric = _interopRequireWildcard(require("./lib/isAlphanumeric"));
3991
3884
 
3992
- var _isJWT = require('./lib/isJWT');
3885
+ var _isNumeric = _interopRequireDefault(require("./lib/isNumeric"));
3993
3886
 
3994
- var _isJWT2 = _interopRequireDefault(_isJWT);
3887
+ var _isPort = _interopRequireDefault(require("./lib/isPort"));
3995
3888
 
3996
- var _isJSON = require('./lib/isJSON');
3889
+ var _isLowercase = _interopRequireDefault(require("./lib/isLowercase"));
3997
3890
 
3998
- var _isJSON2 = _interopRequireDefault(_isJSON);
3891
+ var _isUppercase = _interopRequireDefault(require("./lib/isUppercase"));
3999
3892
 
4000
- var _isEmpty = require('./lib/isEmpty');
3893
+ var _isAscii = _interopRequireDefault(require("./lib/isAscii"));
4001
3894
 
4002
- var _isEmpty2 = _interopRequireDefault(_isEmpty);
3895
+ var _isFullWidth = _interopRequireDefault(require("./lib/isFullWidth"));
4003
3896
 
4004
- var _isLength = require('./lib/isLength');
3897
+ var _isHalfWidth = _interopRequireDefault(require("./lib/isHalfWidth"));
4005
3898
 
4006
- var _isLength2 = _interopRequireDefault(_isLength);
3899
+ var _isVariableWidth = _interopRequireDefault(require("./lib/isVariableWidth"));
4007
3900
 
4008
- var _isByteLength = require('./lib/isByteLength');
3901
+ var _isMultibyte = _interopRequireDefault(require("./lib/isMultibyte"));
4009
3902
 
4010
- var _isByteLength2 = _interopRequireDefault(_isByteLength);
3903
+ var _isSurrogatePair = _interopRequireDefault(require("./lib/isSurrogatePair"));
4011
3904
 
4012
- var _isUUID = require('./lib/isUUID');
3905
+ var _isInt = _interopRequireDefault(require("./lib/isInt"));
4013
3906
 
4014
- var _isUUID2 = _interopRequireDefault(_isUUID);
3907
+ var _isFloat = _interopRequireWildcard(require("./lib/isFloat"));
4015
3908
 
4016
- var _isMongoId = require('./lib/isMongoId');
3909
+ var _isDecimal = _interopRequireDefault(require("./lib/isDecimal"));
4017
3910
 
4018
- var _isMongoId2 = _interopRequireDefault(_isMongoId);
3911
+ var _isHexadecimal = _interopRequireDefault(require("./lib/isHexadecimal"));
4019
3912
 
4020
- var _isAfter = require('./lib/isAfter');
3913
+ var _isDivisibleBy = _interopRequireDefault(require("./lib/isDivisibleBy"));
4021
3914
 
4022
- var _isAfter2 = _interopRequireDefault(_isAfter);
3915
+ var _isHexColor = _interopRequireDefault(require("./lib/isHexColor"));
4023
3916
 
4024
- var _isBefore = require('./lib/isBefore');
3917
+ var _isISRC = _interopRequireDefault(require("./lib/isISRC"));
4025
3918
 
4026
- var _isBefore2 = _interopRequireDefault(_isBefore);
3919
+ var _isMD = _interopRequireDefault(require("./lib/isMD5"));
4027
3920
 
4028
- var _isIn = require('./lib/isIn');
3921
+ var _isHash = _interopRequireDefault(require("./lib/isHash"));
4029
3922
 
4030
- var _isIn2 = _interopRequireDefault(_isIn);
3923
+ var _isJWT = _interopRequireDefault(require("./lib/isJWT"));
4031
3924
 
4032
- var _isCreditCard = require('./lib/isCreditCard');
3925
+ var _isJSON = _interopRequireDefault(require("./lib/isJSON"));
4033
3926
 
4034
- var _isCreditCard2 = _interopRequireDefault(_isCreditCard);
3927
+ var _isEmpty = _interopRequireDefault(require("./lib/isEmpty"));
4035
3928
 
4036
- var _isISIN = require('./lib/isISIN');
3929
+ var _isLength = _interopRequireDefault(require("./lib/isLength"));
4037
3930
 
4038
- var _isISIN2 = _interopRequireDefault(_isISIN);
3931
+ var _isByteLength = _interopRequireDefault(require("./lib/isByteLength"));
4039
3932
 
4040
- var _isISBN = require('./lib/isISBN');
3933
+ var _isUUID = _interopRequireDefault(require("./lib/isUUID"));
4041
3934
 
4042
- var _isISBN2 = _interopRequireDefault(_isISBN);
3935
+ var _isMongoId = _interopRequireDefault(require("./lib/isMongoId"));
4043
3936
 
4044
- var _isISSN = require('./lib/isISSN');
3937
+ var _isAfter = _interopRequireDefault(require("./lib/isAfter"));
4045
3938
 
4046
- var _isISSN2 = _interopRequireDefault(_isISSN);
3939
+ var _isBefore = _interopRequireDefault(require("./lib/isBefore"));
4047
3940
 
4048
- var _isMobilePhone = require('./lib/isMobilePhone');
3941
+ var _isIn = _interopRequireDefault(require("./lib/isIn"));
4049
3942
 
4050
- var _isMobilePhone2 = _interopRequireDefault(_isMobilePhone);
3943
+ var _isCreditCard = _interopRequireDefault(require("./lib/isCreditCard"));
4051
3944
 
4052
- var _isCurrency = require('./lib/isCurrency');
3945
+ var _isIdentityCard = _interopRequireDefault(require("./lib/isIdentityCard"));
4053
3946
 
4054
- var _isCurrency2 = _interopRequireDefault(_isCurrency);
3947
+ var _isISIN = _interopRequireDefault(require("./lib/isISIN"));
4055
3948
 
4056
- var _isISO = require('./lib/isISO8601');
3949
+ var _isISBN = _interopRequireDefault(require("./lib/isISBN"));
4057
3950
 
4058
- var _isISO2 = _interopRequireDefault(_isISO);
3951
+ var _isISSN = _interopRequireDefault(require("./lib/isISSN"));
4059
3952
 
4060
- var _isRFC = require('./lib/isRFC3339');
3953
+ var _isMobilePhone = _interopRequireWildcard(require("./lib/isMobilePhone"));
4061
3954
 
4062
- var _isRFC2 = _interopRequireDefault(_isRFC);
3955
+ var _isCurrency = _interopRequireDefault(require("./lib/isCurrency"));
4063
3956
 
4064
- var _isISO31661Alpha = require('./lib/isISO31661Alpha2');
3957
+ var _isISO = _interopRequireDefault(require("./lib/isISO8601"));
4065
3958
 
4066
- var _isISO31661Alpha2 = _interopRequireDefault(_isISO31661Alpha);
3959
+ var _isRFC = _interopRequireDefault(require("./lib/isRFC3339"));
4067
3960
 
4068
- var _isISO31661Alpha3 = require('./lib/isISO31661Alpha3');
3961
+ var _isISO31661Alpha = _interopRequireDefault(require("./lib/isISO31661Alpha2"));
4069
3962
 
4070
- var _isISO31661Alpha4 = _interopRequireDefault(_isISO31661Alpha3);
3963
+ var _isISO31661Alpha2 = _interopRequireDefault(require("./lib/isISO31661Alpha3"));
4071
3964
 
4072
- var _isBase = require('./lib/isBase64');
3965
+ var _isBase = _interopRequireDefault(require("./lib/isBase64"));
4073
3966
 
4074
- var _isBase2 = _interopRequireDefault(_isBase);
3967
+ var _isDataURI = _interopRequireDefault(require("./lib/isDataURI"));
4075
3968
 
4076
- var _isDataURI = require('./lib/isDataURI');
3969
+ var _isMagnetURI = _interopRequireDefault(require("./lib/isMagnetURI"));
4077
3970
 
4078
- var _isDataURI2 = _interopRequireDefault(_isDataURI);
3971
+ var _isMimeType = _interopRequireDefault(require("./lib/isMimeType"));
4079
3972
 
4080
- var _isMagnetURI = require('./lib/isMagnetURI');
3973
+ var _isLatLong = _interopRequireDefault(require("./lib/isLatLong"));
4081
3974
 
4082
- var _isMagnetURI2 = _interopRequireDefault(_isMagnetURI);
3975
+ var _isPostalCode = _interopRequireWildcard(require("./lib/isPostalCode"));
4083
3976
 
4084
- var _isMimeType = require('./lib/isMimeType');
3977
+ var _ltrim = _interopRequireDefault(require("./lib/ltrim"));
4085
3978
 
4086
- var _isMimeType2 = _interopRequireDefault(_isMimeType);
3979
+ var _rtrim = _interopRequireDefault(require("./lib/rtrim"));
4087
3980
 
4088
- var _isLatLong = require('./lib/isLatLong');
3981
+ var _trim = _interopRequireDefault(require("./lib/trim"));
4089
3982
 
4090
- var _isLatLong2 = _interopRequireDefault(_isLatLong);
3983
+ var _escape = _interopRequireDefault(require("./lib/escape"));
4091
3984
 
4092
- var _isPostalCode = require('./lib/isPostalCode');
3985
+ var _unescape = _interopRequireDefault(require("./lib/unescape"));
4093
3986
 
4094
- var _isPostalCode2 = _interopRequireDefault(_isPostalCode);
3987
+ var _stripLow = _interopRequireDefault(require("./lib/stripLow"));
4095
3988
 
4096
- var _ltrim = require('./lib/ltrim');
3989
+ var _whitelist = _interopRequireDefault(require("./lib/whitelist"));
4097
3990
 
4098
- var _ltrim2 = _interopRequireDefault(_ltrim);
3991
+ var _blacklist = _interopRequireDefault(require("./lib/blacklist"));
4099
3992
 
4100
- var _rtrim = require('./lib/rtrim');
3993
+ var _isWhitelisted = _interopRequireDefault(require("./lib/isWhitelisted"));
4101
3994
 
4102
- var _rtrim2 = _interopRequireDefault(_rtrim);
3995
+ var _normalizeEmail = _interopRequireDefault(require("./lib/normalizeEmail"));
4103
3996
 
4104
- var _trim = require('./lib/trim');
3997
+ var _toString = _interopRequireDefault(require("./lib/util/toString"));
4105
3998
 
4106
- var _trim2 = _interopRequireDefault(_trim);
4107
-
4108
- var _escape = require('./lib/escape');
4109
-
4110
- var _escape2 = _interopRequireDefault(_escape);
4111
-
4112
- var _unescape = require('./lib/unescape');
4113
-
4114
- var _unescape2 = _interopRequireDefault(_unescape);
4115
-
4116
- var _stripLow = require('./lib/stripLow');
4117
-
4118
- var _stripLow2 = _interopRequireDefault(_stripLow);
4119
-
4120
- var _whitelist = require('./lib/whitelist');
4121
-
4122
- var _whitelist2 = _interopRequireDefault(_whitelist);
4123
-
4124
- var _blacklist = require('./lib/blacklist');
4125
-
4126
- var _blacklist2 = _interopRequireDefault(_blacklist);
4127
-
4128
- var _isWhitelisted = require('./lib/isWhitelisted');
4129
-
4130
- var _isWhitelisted2 = _interopRequireDefault(_isWhitelisted);
4131
-
4132
- var _normalizeEmail = require('./lib/normalizeEmail');
4133
-
4134
- var _normalizeEmail2 = _interopRequireDefault(_normalizeEmail);
4135
-
4136
- var _toString = require('./lib/util/toString');
4137
-
4138
- var _toString2 = _interopRequireDefault(_toString);
3999
+ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
4139
4000
 
4140
4001
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4141
4002
 
4142
- var version = '10.7.1';
4143
-
4003
+ var version = '10.9.0';
4144
4004
  var validator = {
4145
4005
  version: version,
4146
- toDate: _toDate2.default,
4147
- toFloat: _toFloat2.default,
4148
- toInt: _toInt2.default,
4149
- toBoolean: _toBoolean2.default,
4150
- equals: _equals2.default,
4151
- contains: _contains2.default,
4152
- matches: _matches2.default,
4153
- isEmail: _isEmail2.default,
4154
- isURL: _isURL2.default,
4155
- isMACAddress: _isMACAddress2.default,
4156
- isIP: _isIP2.default,
4157
- isIPRange: _isIPRange2.default,
4158
- isFQDN: _isFQDN2.default,
4159
- isBoolean: _isBoolean2.default,
4160
- isAlpha: _isAlpha2.default,
4161
- isAlphanumeric: _isAlphanumeric2.default,
4162
- isNumeric: _isNumeric2.default,
4163
- isPort: _isPort2.default,
4164
- isLowercase: _isLowercase2.default,
4165
- isUppercase: _isUppercase2.default,
4166
- isAscii: _isAscii2.default,
4167
- isFullWidth: _isFullWidth2.default,
4168
- isHalfWidth: _isHalfWidth2.default,
4169
- isVariableWidth: _isVariableWidth2.default,
4170
- isMultibyte: _isMultibyte2.default,
4171
- isSurrogatePair: _isSurrogatePair2.default,
4172
- isInt: _isInt2.default,
4173
- isFloat: _isFloat2.default,
4174
- isDecimal: _isDecimal2.default,
4175
- isHexadecimal: _isHexadecimal2.default,
4176
- isDivisibleBy: _isDivisibleBy2.default,
4177
- isHexColor: _isHexColor2.default,
4178
- isISRC: _isISRC2.default,
4179
- isMD5: _isMD2.default,
4180
- isHash: _isHash2.default,
4181
- isJWT: _isJWT2.default,
4182
- isJSON: _isJSON2.default,
4183
- isEmpty: _isEmpty2.default,
4184
- isLength: _isLength2.default,
4185
- isByteLength: _isByteLength2.default,
4186
- isUUID: _isUUID2.default,
4187
- isMongoId: _isMongoId2.default,
4188
- isAfter: _isAfter2.default,
4189
- isBefore: _isBefore2.default,
4190
- isIn: _isIn2.default,
4191
- isCreditCard: _isCreditCard2.default,
4192
- isISIN: _isISIN2.default,
4193
- isISBN: _isISBN2.default,
4194
- isISSN: _isISSN2.default,
4195
- isMobilePhone: _isMobilePhone2.default,
4196
- isPostalCode: _isPostalCode2.default,
4006
+ toDate: _toDate.default,
4007
+ toFloat: _toFloat.default,
4008
+ toInt: _toInt.default,
4009
+ toBoolean: _toBoolean.default,
4010
+ equals: _equals.default,
4011
+ contains: _contains.default,
4012
+ matches: _matches.default,
4013
+ isEmail: _isEmail.default,
4014
+ isURL: _isURL.default,
4015
+ isMACAddress: _isMACAddress.default,
4016
+ isIP: _isIP.default,
4017
+ isIPRange: _isIPRange.default,
4018
+ isFQDN: _isFQDN.default,
4019
+ isBoolean: _isBoolean.default,
4020
+ isAlpha: _isAlpha.default,
4021
+ isAlphaLocales: _isAlpha.locales,
4022
+ isAlphanumeric: _isAlphanumeric.default,
4023
+ isAlphanumericLocales: _isAlphanumeric.locales,
4024
+ isNumeric: _isNumeric.default,
4025
+ isPort: _isPort.default,
4026
+ isLowercase: _isLowercase.default,
4027
+ isUppercase: _isUppercase.default,
4028
+ isAscii: _isAscii.default,
4029
+ isFullWidth: _isFullWidth.default,
4030
+ isHalfWidth: _isHalfWidth.default,
4031
+ isVariableWidth: _isVariableWidth.default,
4032
+ isMultibyte: _isMultibyte.default,
4033
+ isSurrogatePair: _isSurrogatePair.default,
4034
+ isInt: _isInt.default,
4035
+ isFloat: _isFloat.default,
4036
+ isFloatLocales: _isFloat.locales,
4037
+ isDecimal: _isDecimal.default,
4038
+ isHexadecimal: _isHexadecimal.default,
4039
+ isDivisibleBy: _isDivisibleBy.default,
4040
+ isHexColor: _isHexColor.default,
4041
+ isISRC: _isISRC.default,
4042
+ isMD5: _isMD.default,
4043
+ isHash: _isHash.default,
4044
+ isJWT: _isJWT.default,
4045
+ isJSON: _isJSON.default,
4046
+ isEmpty: _isEmpty.default,
4047
+ isLength: _isLength.default,
4048
+ isByteLength: _isByteLength.default,
4049
+ isUUID: _isUUID.default,
4050
+ isMongoId: _isMongoId.default,
4051
+ isAfter: _isAfter.default,
4052
+ isBefore: _isBefore.default,
4053
+ isIn: _isIn.default,
4054
+ isCreditCard: _isCreditCard.default,
4055
+ isIdentityCard: _isIdentityCard.default,
4056
+ isISIN: _isISIN.default,
4057
+ isISBN: _isISBN.default,
4058
+ isISSN: _isISSN.default,
4059
+ isMobilePhone: _isMobilePhone.default,
4060
+ isMobilePhoneLocales: _isMobilePhone.locales,
4061
+ isPostalCode: _isPostalCode.default,
4197
4062
  isPostalCodeLocales: _isPostalCode.locales,
4198
- isCurrency: _isCurrency2.default,
4199
- isISO8601: _isISO2.default,
4200
- isRFC3339: _isRFC2.default,
4201
- isISO31661Alpha2: _isISO31661Alpha2.default,
4202
- isISO31661Alpha3: _isISO31661Alpha4.default,
4203
- isBase64: _isBase2.default,
4204
- isDataURI: _isDataURI2.default,
4205
- isMagnetURI: _isMagnetURI2.default,
4206
- isMimeType: _isMimeType2.default,
4207
- isLatLong: _isLatLong2.default,
4208
- ltrim: _ltrim2.default,
4209
- rtrim: _rtrim2.default,
4210
- trim: _trim2.default,
4211
- escape: _escape2.default,
4212
- unescape: _unescape2.default,
4213
- stripLow: _stripLow2.default,
4214
- whitelist: _whitelist2.default,
4215
- blacklist: _blacklist2.default,
4216
- isWhitelisted: _isWhitelisted2.default,
4217
- normalizeEmail: _normalizeEmail2.default,
4218
- toString: _toString2.default
4219
- };
4220
-
4221
- exports.default = validator;
4222
- module.exports = exports['default'];
4223
- },{"./lib/blacklist":57,"./lib/contains":58,"./lib/equals":59,"./lib/escape":60,"./lib/isAfter":61,"./lib/isAlpha":62,"./lib/isAlphanumeric":63,"./lib/isAscii":64,"./lib/isBase64":65,"./lib/isBefore":66,"./lib/isBoolean":67,"./lib/isByteLength":68,"./lib/isCreditCard":69,"./lib/isCurrency":70,"./lib/isDataURI":71,"./lib/isDecimal":72,"./lib/isDivisibleBy":73,"./lib/isEmail":74,"./lib/isEmpty":75,"./lib/isFQDN":76,"./lib/isFloat":77,"./lib/isFullWidth":78,"./lib/isHalfWidth":79,"./lib/isHash":80,"./lib/isHexColor":81,"./lib/isHexadecimal":82,"./lib/isIP":83,"./lib/isIPRange":84,"./lib/isISBN":85,"./lib/isISIN":86,"./lib/isISO31661Alpha2":87,"./lib/isISO31661Alpha3":88,"./lib/isISO8601":89,"./lib/isISRC":90,"./lib/isISSN":91,"./lib/isIn":92,"./lib/isInt":93,"./lib/isJSON":94,"./lib/isJWT":95,"./lib/isLatLong":96,"./lib/isLength":97,"./lib/isLowercase":98,"./lib/isMACAddress":99,"./lib/isMD5":100,"./lib/isMagnetURI":101,"./lib/isMimeType":102,"./lib/isMobilePhone":103,"./lib/isMongoId":104,"./lib/isMultibyte":105,"./lib/isNumeric":106,"./lib/isPort":107,"./lib/isPostalCode":108,"./lib/isRFC3339":109,"./lib/isSurrogatePair":110,"./lib/isURL":111,"./lib/isUUID":112,"./lib/isUppercase":113,"./lib/isVariableWidth":114,"./lib/isWhitelisted":115,"./lib/ltrim":116,"./lib/matches":117,"./lib/normalizeEmail":118,"./lib/rtrim":119,"./lib/stripLow":120,"./lib/toBoolean":121,"./lib/toDate":122,"./lib/toFloat":123,"./lib/toInt":124,"./lib/trim":125,"./lib/unescape":126,"./lib/util/toString":130,"./lib/whitelist":131}],56:[function(require,module,exports){
4224
- 'use strict';
4063
+ isCurrency: _isCurrency.default,
4064
+ isISO8601: _isISO.default,
4065
+ isRFC3339: _isRFC.default,
4066
+ isISO31661Alpha2: _isISO31661Alpha.default,
4067
+ isISO31661Alpha3: _isISO31661Alpha2.default,
4068
+ isBase64: _isBase.default,
4069
+ isDataURI: _isDataURI.default,
4070
+ isMagnetURI: _isMagnetURI.default,
4071
+ isMimeType: _isMimeType.default,
4072
+ isLatLong: _isLatLong.default,
4073
+ ltrim: _ltrim.default,
4074
+ rtrim: _rtrim.default,
4075
+ trim: _trim.default,
4076
+ escape: _escape.default,
4077
+ unescape: _unescape.default,
4078
+ stripLow: _stripLow.default,
4079
+ whitelist: _whitelist.default,
4080
+ blacklist: _blacklist.default,
4081
+ isWhitelisted: _isWhitelisted.default,
4082
+ normalizeEmail: _normalizeEmail.default,
4083
+ toString: _toString.default
4084
+ };
4085
+ var _default = validator;
4086
+ exports.default = _default;
4087
+ module.exports = exports.default;
4088
+ },{"./lib/blacklist":57,"./lib/contains":58,"./lib/equals":59,"./lib/escape":60,"./lib/isAfter":61,"./lib/isAlpha":62,"./lib/isAlphanumeric":63,"./lib/isAscii":64,"./lib/isBase64":65,"./lib/isBefore":66,"./lib/isBoolean":67,"./lib/isByteLength":68,"./lib/isCreditCard":69,"./lib/isCurrency":70,"./lib/isDataURI":71,"./lib/isDecimal":72,"./lib/isDivisibleBy":73,"./lib/isEmail":74,"./lib/isEmpty":75,"./lib/isFQDN":76,"./lib/isFloat":77,"./lib/isFullWidth":78,"./lib/isHalfWidth":79,"./lib/isHash":80,"./lib/isHexColor":81,"./lib/isHexadecimal":82,"./lib/isIP":83,"./lib/isIPRange":84,"./lib/isISBN":85,"./lib/isISIN":86,"./lib/isISO31661Alpha2":87,"./lib/isISO31661Alpha3":88,"./lib/isISO8601":89,"./lib/isISRC":90,"./lib/isISSN":91,"./lib/isIdentityCard":92,"./lib/isIn":93,"./lib/isInt":94,"./lib/isJSON":95,"./lib/isJWT":96,"./lib/isLatLong":97,"./lib/isLength":98,"./lib/isLowercase":99,"./lib/isMACAddress":100,"./lib/isMD5":101,"./lib/isMagnetURI":102,"./lib/isMimeType":103,"./lib/isMobilePhone":104,"./lib/isMongoId":105,"./lib/isMultibyte":106,"./lib/isNumeric":107,"./lib/isPort":108,"./lib/isPostalCode":109,"./lib/isRFC3339":110,"./lib/isSurrogatePair":111,"./lib/isURL":112,"./lib/isUUID":113,"./lib/isUppercase":114,"./lib/isVariableWidth":115,"./lib/isWhitelisted":116,"./lib/ltrim":117,"./lib/matches":118,"./lib/normalizeEmail":119,"./lib/rtrim":120,"./lib/stripLow":121,"./lib/toBoolean":122,"./lib/toDate":123,"./lib/toFloat":124,"./lib/toInt":125,"./lib/trim":126,"./lib/unescape":127,"./lib/util/toString":131,"./lib/whitelist":132}],56:[function(require,module,exports){
4089
+ "use strict";
4225
4090
 
4226
4091
  Object.defineProperty(exports, "__esModule", {
4227
4092
  value: true
4228
4093
  });
4229
- var alpha = exports.alpha = {
4094
+ exports.commaDecimal = exports.dotDecimal = exports.arabicLocales = exports.englishLocales = exports.decimal = exports.alphanumeric = exports.alpha = void 0;
4095
+ var alpha = {
4230
4096
  'en-US': /^[A-Z]+$/i,
4231
4097
  'bg-BG': /^[А-Я]+$/i,
4232
4098
  'cs-CZ': /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,
@@ -4243,6 +4109,7 @@ var alpha = exports.alpha = {
4243
4109
  'pl-PL': /^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,
4244
4110
  'pt-PT': /^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i,
4245
4111
  'ru-RU': /^[А-ЯЁ]+$/i,
4112
+ 'sl-SI': /^[A-ZČĆĐŠŽ]+$/i,
4246
4113
  'sk-SK': /^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,
4247
4114
  'sr-RS@latin': /^[A-ZČĆŽŠĐ]+$/i,
4248
4115
  'sr-RS': /^[А-ЯЂЈЉЊЋЏ]+$/i,
@@ -4252,8 +4119,8 @@ var alpha = exports.alpha = {
4252
4119
  'ku-IQ': /^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,
4253
4120
  ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/
4254
4121
  };
4255
-
4256
- var alphanumeric = exports.alphanumeric = {
4122
+ exports.alpha = alpha;
4123
+ var alphanumeric = {
4257
4124
  'en-US': /^[0-9A-Z]+$/i,
4258
4125
  'bg-BG': /^[0-9А-Я]+$/i,
4259
4126
  'cs-CZ': /^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,
@@ -4270,6 +4137,7 @@ var alphanumeric = exports.alphanumeric = {
4270
4137
  'pl-PL': /^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,
4271
4138
  'pt-PT': /^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i,
4272
4139
  'ru-RU': /^[0-9А-ЯЁ]+$/i,
4140
+ 'sl-SI': /^[0-9A-ZČĆĐŠŽ]+$/i,
4273
4141
  'sk-SK': /^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,
4274
4142
  'sr-RS@latin': /^[0-9A-ZČĆŽŠĐ]+$/i,
4275
4143
  'sr-RS': /^[0-9А-ЯЂЈЉЊЋЏ]+$/i,
@@ -4279,34 +4147,38 @@ var alphanumeric = exports.alphanumeric = {
4279
4147
  'ku-IQ': /^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,
4280
4148
  ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/
4281
4149
  };
4282
-
4283
- var decimal = exports.decimal = {
4150
+ exports.alphanumeric = alphanumeric;
4151
+ var decimal = {
4284
4152
  'en-US': '.',
4285
4153
  ar: '٫'
4286
4154
  };
4287
-
4288
- var englishLocales = exports.englishLocales = ['AU', 'GB', 'HK', 'IN', 'NZ', 'ZA', 'ZM'];
4155
+ exports.decimal = decimal;
4156
+ var englishLocales = ['AU', 'GB', 'HK', 'IN', 'NZ', 'ZA', 'ZM'];
4157
+ exports.englishLocales = englishLocales;
4289
4158
 
4290
4159
  for (var locale, i = 0; i < englishLocales.length; i++) {
4291
- locale = 'en-' + englishLocales[i];
4160
+ locale = "en-".concat(englishLocales[i]);
4292
4161
  alpha[locale] = alpha['en-US'];
4293
4162
  alphanumeric[locale] = alphanumeric['en-US'];
4294
4163
  decimal[locale] = decimal['en-US'];
4295
- }
4164
+ } // Source: http://www.localeplanet.com/java/
4296
4165
 
4297
- // Source: http://www.localeplanet.com/java/
4298
- var arabicLocales = exports.arabicLocales = ['AE', 'BH', 'DZ', 'EG', 'IQ', 'JO', 'KW', 'LB', 'LY', 'MA', 'QM', 'QA', 'SA', 'SD', 'SY', 'TN', 'YE'];
4166
+
4167
+ var arabicLocales = ['AE', 'BH', 'DZ', 'EG', 'IQ', 'JO', 'KW', 'LB', 'LY', 'MA', 'QM', 'QA', 'SA', 'SD', 'SY', 'TN', 'YE'];
4168
+ exports.arabicLocales = arabicLocales;
4299
4169
 
4300
4170
  for (var _locale, _i = 0; _i < arabicLocales.length; _i++) {
4301
- _locale = 'ar-' + arabicLocales[_i];
4171
+ _locale = "ar-".concat(arabicLocales[_i]);
4302
4172
  alpha[_locale] = alpha.ar;
4303
4173
  alphanumeric[_locale] = alphanumeric.ar;
4304
4174
  decimal[_locale] = decimal.ar;
4305
- }
4175
+ } // Source: https://en.wikipedia.org/wiki/Decimal_mark
4306
4176
 
4307
- // Source: https://en.wikipedia.org/wiki/Decimal_mark
4308
- var dotDecimal = exports.dotDecimal = [];
4309
- var commaDecimal = exports.commaDecimal = ['bg-BG', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'es-ES', 'fr-FR', 'it-IT', 'ku-IQ', 'hu-HU', 'nb-NO', 'nn-NO', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'sr-RS@latin', 'sr-RS', 'sv-SE', 'tr-TR', 'uk-UA'];
4177
+
4178
+ var dotDecimal = [];
4179
+ exports.dotDecimal = dotDecimal;
4180
+ var commaDecimal = ['bg-BG', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'es-ES', 'fr-FR', 'it-IT', 'ku-IQ', 'hu-HU', 'nb-NO', 'nn-NO', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'sl-SI', 'sr-RS@latin', 'sr-RS', 'sv-SE', 'tr-TR', 'uk-UA'];
4181
+ exports.commaDecimal = commaDecimal;
4310
4182
 
4311
4183
  for (var _i2 = 0; _i2 < dotDecimal.length; _i2++) {
4312
4184
  decimal[dotDecimal[_i2]] = decimal['en-US'];
@@ -4318,182 +4190,173 @@ for (var _i3 = 0; _i3 < commaDecimal.length; _i3++) {
4318
4190
 
4319
4191
  alpha['pt-BR'] = alpha['pt-PT'];
4320
4192
  alphanumeric['pt-BR'] = alphanumeric['pt-PT'];
4321
- decimal['pt-BR'] = decimal['pt-PT'];
4193
+ decimal['pt-BR'] = decimal['pt-PT']; // see #862
4322
4194
 
4323
- // see #862
4324
4195
  alpha['pl-Pl'] = alpha['pl-PL'];
4325
4196
  alphanumeric['pl-Pl'] = alphanumeric['pl-PL'];
4326
4197
  decimal['pl-Pl'] = decimal['pl-PL'];
4327
4198
  },{}],57:[function(require,module,exports){
4328
- 'use strict';
4199
+ "use strict";
4329
4200
 
4330
4201
  Object.defineProperty(exports, "__esModule", {
4331
4202
  value: true
4332
4203
  });
4333
4204
  exports.default = blacklist;
4334
4205
 
4335
- var _assertString = require('./util/assertString');
4336
-
4337
- var _assertString2 = _interopRequireDefault(_assertString);
4206
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4338
4207
 
4339
4208
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4340
4209
 
4341
4210
  function blacklist(str, chars) {
4342
- (0, _assertString2.default)(str);
4343
- return str.replace(new RegExp('[' + chars + ']+', 'g'), '');
4211
+ (0, _assertString.default)(str);
4212
+ return str.replace(new RegExp("[".concat(chars, "]+"), 'g'), '');
4344
4213
  }
4345
- module.exports = exports['default'];
4346
- },{"./util/assertString":127}],58:[function(require,module,exports){
4347
- 'use strict';
4214
+
4215
+ module.exports = exports.default;
4216
+ },{"./util/assertString":128}],58:[function(require,module,exports){
4217
+ "use strict";
4348
4218
 
4349
4219
  Object.defineProperty(exports, "__esModule", {
4350
4220
  value: true
4351
4221
  });
4352
4222
  exports.default = contains;
4353
4223
 
4354
- var _assertString = require('./util/assertString');
4224
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4355
4225
 
4356
- var _assertString2 = _interopRequireDefault(_assertString);
4357
-
4358
- var _toString = require('./util/toString');
4359
-
4360
- var _toString2 = _interopRequireDefault(_toString);
4226
+ var _toString = _interopRequireDefault(require("./util/toString"));
4361
4227
 
4362
4228
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4363
4229
 
4364
4230
  function contains(str, elem) {
4365
- (0, _assertString2.default)(str);
4366
- return str.indexOf((0, _toString2.default)(elem)) >= 0;
4231
+ (0, _assertString.default)(str);
4232
+ return str.indexOf((0, _toString.default)(elem)) >= 0;
4367
4233
  }
4368
- module.exports = exports['default'];
4369
- },{"./util/assertString":127,"./util/toString":130}],59:[function(require,module,exports){
4370
- 'use strict';
4234
+
4235
+ module.exports = exports.default;
4236
+ },{"./util/assertString":128,"./util/toString":131}],59:[function(require,module,exports){
4237
+ "use strict";
4371
4238
 
4372
4239
  Object.defineProperty(exports, "__esModule", {
4373
4240
  value: true
4374
4241
  });
4375
4242
  exports.default = equals;
4376
4243
 
4377
- var _assertString = require('./util/assertString');
4378
-
4379
- var _assertString2 = _interopRequireDefault(_assertString);
4244
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4380
4245
 
4381
4246
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4382
4247
 
4383
4248
  function equals(str, comparison) {
4384
- (0, _assertString2.default)(str);
4249
+ (0, _assertString.default)(str);
4385
4250
  return str === comparison;
4386
4251
  }
4387
- module.exports = exports['default'];
4388
- },{"./util/assertString":127}],60:[function(require,module,exports){
4389
- 'use strict';
4252
+
4253
+ module.exports = exports.default;
4254
+ },{"./util/assertString":128}],60:[function(require,module,exports){
4255
+ "use strict";
4390
4256
 
4391
4257
  Object.defineProperty(exports, "__esModule", {
4392
4258
  value: true
4393
4259
  });
4394
4260
  exports.default = escape;
4395
4261
 
4396
- var _assertString = require('./util/assertString');
4397
-
4398
- var _assertString2 = _interopRequireDefault(_assertString);
4262
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4399
4263
 
4400
4264
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4401
4265
 
4402
4266
  function escape(str) {
4403
- (0, _assertString2.default)(str);
4267
+ (0, _assertString.default)(str);
4404
4268
  return str.replace(/&/g, '&amp;').replace(/"/g, '&quot;').replace(/'/g, '&#x27;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\//g, '&#x2F;').replace(/\\/g, '&#x5C;').replace(/`/g, '&#96;');
4405
4269
  }
4406
- module.exports = exports['default'];
4407
- },{"./util/assertString":127}],61:[function(require,module,exports){
4408
- 'use strict';
4270
+
4271
+ module.exports = exports.default;
4272
+ },{"./util/assertString":128}],61:[function(require,module,exports){
4273
+ "use strict";
4409
4274
 
4410
4275
  Object.defineProperty(exports, "__esModule", {
4411
4276
  value: true
4412
4277
  });
4413
4278
  exports.default = isAfter;
4414
4279
 
4415
- var _assertString = require('./util/assertString');
4416
-
4417
- var _assertString2 = _interopRequireDefault(_assertString);
4280
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4418
4281
 
4419
- var _toDate = require('./toDate');
4420
-
4421
- var _toDate2 = _interopRequireDefault(_toDate);
4282
+ var _toDate = _interopRequireDefault(require("./toDate"));
4422
4283
 
4423
4284
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4424
4285
 
4425
4286
  function isAfter(str) {
4426
4287
  var date = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : String(new Date());
4427
-
4428
- (0, _assertString2.default)(str);
4429
- var comparison = (0, _toDate2.default)(date);
4430
- var original = (0, _toDate2.default)(str);
4288
+ (0, _assertString.default)(str);
4289
+ var comparison = (0, _toDate.default)(date);
4290
+ var original = (0, _toDate.default)(str);
4431
4291
  return !!(original && comparison && original > comparison);
4432
4292
  }
4433
- module.exports = exports['default'];
4434
- },{"./toDate":122,"./util/assertString":127}],62:[function(require,module,exports){
4435
- 'use strict';
4293
+
4294
+ module.exports = exports.default;
4295
+ },{"./toDate":123,"./util/assertString":128}],62:[function(require,module,exports){
4296
+ "use strict";
4436
4297
 
4437
4298
  Object.defineProperty(exports, "__esModule", {
4438
4299
  value: true
4439
4300
  });
4440
4301
  exports.default = isAlpha;
4302
+ exports.locales = void 0;
4441
4303
 
4442
- var _assertString = require('./util/assertString');
4304
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4443
4305
 
4444
- var _assertString2 = _interopRequireDefault(_assertString);
4445
-
4446
- var _alpha = require('./alpha');
4306
+ var _alpha = require("./alpha");
4447
4307
 
4448
4308
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4449
4309
 
4450
4310
  function isAlpha(str) {
4451
4311
  var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en-US';
4312
+ (0, _assertString.default)(str);
4452
4313
 
4453
- (0, _assertString2.default)(str);
4454
4314
  if (locale in _alpha.alpha) {
4455
4315
  return _alpha.alpha[locale].test(str);
4456
4316
  }
4457
- throw new Error('Invalid locale \'' + locale + '\'');
4317
+
4318
+ throw new Error("Invalid locale '".concat(locale, "'"));
4458
4319
  }
4459
- module.exports = exports['default'];
4460
- },{"./alpha":56,"./util/assertString":127}],63:[function(require,module,exports){
4461
- 'use strict';
4320
+
4321
+ var locales = Object.keys(_alpha.alpha);
4322
+ exports.locales = locales;
4323
+ },{"./alpha":56,"./util/assertString":128}],63:[function(require,module,exports){
4324
+ "use strict";
4462
4325
 
4463
4326
  Object.defineProperty(exports, "__esModule", {
4464
4327
  value: true
4465
4328
  });
4466
4329
  exports.default = isAlphanumeric;
4330
+ exports.locales = void 0;
4467
4331
 
4468
- var _assertString = require('./util/assertString');
4332
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4469
4333
 
4470
- var _assertString2 = _interopRequireDefault(_assertString);
4471
-
4472
- var _alpha = require('./alpha');
4334
+ var _alpha = require("./alpha");
4473
4335
 
4474
4336
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4475
4337
 
4476
4338
  function isAlphanumeric(str) {
4477
4339
  var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en-US';
4340
+ (0, _assertString.default)(str);
4478
4341
 
4479
- (0, _assertString2.default)(str);
4480
4342
  if (locale in _alpha.alphanumeric) {
4481
4343
  return _alpha.alphanumeric[locale].test(str);
4482
4344
  }
4483
- throw new Error('Invalid locale \'' + locale + '\'');
4345
+
4346
+ throw new Error("Invalid locale '".concat(locale, "'"));
4484
4347
  }
4485
- module.exports = exports['default'];
4486
- },{"./alpha":56,"./util/assertString":127}],64:[function(require,module,exports){
4487
- 'use strict';
4348
+
4349
+ var locales = Object.keys(_alpha.alphanumeric);
4350
+ exports.locales = locales;
4351
+ },{"./alpha":56,"./util/assertString":128}],64:[function(require,module,exports){
4352
+ "use strict";
4488
4353
 
4489
4354
  Object.defineProperty(exports, "__esModule", {
4490
4355
  value: true
4491
4356
  });
4492
4357
  exports.default = isAscii;
4493
4358
 
4494
- var _assertString = require('./util/assertString');
4495
-
4496
- var _assertString2 = _interopRequireDefault(_assertString);
4359
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4497
4360
 
4498
4361
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4499
4362
 
@@ -4502,105 +4365,100 @@ var ascii = /^[\x00-\x7F]+$/;
4502
4365
  /* eslint-enable no-control-regex */
4503
4366
 
4504
4367
  function isAscii(str) {
4505
- (0, _assertString2.default)(str);
4368
+ (0, _assertString.default)(str);
4506
4369
  return ascii.test(str);
4507
4370
  }
4508
- module.exports = exports['default'];
4509
- },{"./util/assertString":127}],65:[function(require,module,exports){
4510
- 'use strict';
4371
+
4372
+ module.exports = exports.default;
4373
+ },{"./util/assertString":128}],65:[function(require,module,exports){
4374
+ "use strict";
4511
4375
 
4512
4376
  Object.defineProperty(exports, "__esModule", {
4513
4377
  value: true
4514
4378
  });
4515
4379
  exports.default = isBase64;
4516
4380
 
4517
- var _assertString = require('./util/assertString');
4518
-
4519
- var _assertString2 = _interopRequireDefault(_assertString);
4381
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4520
4382
 
4521
4383
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4522
4384
 
4523
4385
  var notBase64 = /[^A-Z0-9+\/=]/i;
4524
4386
 
4525
4387
  function isBase64(str) {
4526
- (0, _assertString2.default)(str);
4388
+ (0, _assertString.default)(str);
4527
4389
  var len = str.length;
4390
+
4528
4391
  if (!len || len % 4 !== 0 || notBase64.test(str)) {
4529
4392
  return false;
4530
4393
  }
4394
+
4531
4395
  var firstPaddingChar = str.indexOf('=');
4532
4396
  return firstPaddingChar === -1 || firstPaddingChar === len - 1 || firstPaddingChar === len - 2 && str[len - 1] === '=';
4533
4397
  }
4534
- module.exports = exports['default'];
4535
- },{"./util/assertString":127}],66:[function(require,module,exports){
4536
- 'use strict';
4398
+
4399
+ module.exports = exports.default;
4400
+ },{"./util/assertString":128}],66:[function(require,module,exports){
4401
+ "use strict";
4537
4402
 
4538
4403
  Object.defineProperty(exports, "__esModule", {
4539
4404
  value: true
4540
4405
  });
4541
4406
  exports.default = isBefore;
4542
4407
 
4543
- var _assertString = require('./util/assertString');
4544
-
4545
- var _assertString2 = _interopRequireDefault(_assertString);
4408
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4546
4409
 
4547
- var _toDate = require('./toDate');
4548
-
4549
- var _toDate2 = _interopRequireDefault(_toDate);
4410
+ var _toDate = _interopRequireDefault(require("./toDate"));
4550
4411
 
4551
4412
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4552
4413
 
4553
4414
  function isBefore(str) {
4554
4415
  var date = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : String(new Date());
4555
-
4556
- (0, _assertString2.default)(str);
4557
- var comparison = (0, _toDate2.default)(date);
4558
- var original = (0, _toDate2.default)(str);
4416
+ (0, _assertString.default)(str);
4417
+ var comparison = (0, _toDate.default)(date);
4418
+ var original = (0, _toDate.default)(str);
4559
4419
  return !!(original && comparison && original < comparison);
4560
4420
  }
4561
- module.exports = exports['default'];
4562
- },{"./toDate":122,"./util/assertString":127}],67:[function(require,module,exports){
4563
- 'use strict';
4421
+
4422
+ module.exports = exports.default;
4423
+ },{"./toDate":123,"./util/assertString":128}],67:[function(require,module,exports){
4424
+ "use strict";
4564
4425
 
4565
4426
  Object.defineProperty(exports, "__esModule", {
4566
4427
  value: true
4567
4428
  });
4568
4429
  exports.default = isBoolean;
4569
4430
 
4570
- var _assertString = require('./util/assertString');
4571
-
4572
- var _assertString2 = _interopRequireDefault(_assertString);
4431
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4573
4432
 
4574
4433
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4575
4434
 
4576
4435
  function isBoolean(str) {
4577
- (0, _assertString2.default)(str);
4436
+ (0, _assertString.default)(str);
4578
4437
  return ['true', 'false', '1', '0'].indexOf(str) >= 0;
4579
4438
  }
4580
- module.exports = exports['default'];
4581
- },{"./util/assertString":127}],68:[function(require,module,exports){
4582
- 'use strict';
4439
+
4440
+ module.exports = exports.default;
4441
+ },{"./util/assertString":128}],68:[function(require,module,exports){
4442
+ "use strict";
4583
4443
 
4584
4444
  Object.defineProperty(exports, "__esModule", {
4585
4445
  value: true
4586
4446
  });
4587
-
4588
- 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; };
4589
-
4590
4447
  exports.default = isByteLength;
4591
4448
 
4592
- var _assertString = require('./util/assertString');
4593
-
4594
- var _assertString2 = _interopRequireDefault(_assertString);
4449
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4595
4450
 
4596
4451
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4597
4452
 
4453
+ 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); }
4454
+
4598
4455
  /* eslint-disable prefer-rest-params */
4599
4456
  function isByteLength(str, options) {
4600
- (0, _assertString2.default)(str);
4601
- var min = void 0;
4602
- var max = void 0;
4603
- if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) === 'object') {
4457
+ (0, _assertString.default)(str);
4458
+ var min;
4459
+ var max;
4460
+
4461
+ if (_typeof(options) === 'object') {
4604
4462
  min = options.min || 0;
4605
4463
  max = options.max;
4606
4464
  } else {
@@ -4608,21 +4466,21 @@ function isByteLength(str, options) {
4608
4466
  min = arguments[1];
4609
4467
  max = arguments[2];
4610
4468
  }
4469
+
4611
4470
  var len = encodeURI(str).split(/%..|./).length - 1;
4612
4471
  return len >= min && (typeof max === 'undefined' || len <= max);
4613
4472
  }
4614
- module.exports = exports['default'];
4615
- },{"./util/assertString":127}],69:[function(require,module,exports){
4616
- 'use strict';
4473
+
4474
+ module.exports = exports.default;
4475
+ },{"./util/assertString":128}],69:[function(require,module,exports){
4476
+ "use strict";
4617
4477
 
4618
4478
  Object.defineProperty(exports, "__esModule", {
4619
4479
  value: true
4620
4480
  });
4621
4481
  exports.default = isCreditCard;
4622
4482
 
4623
- var _assertString = require('./util/assertString');
4624
-
4625
- var _assertString2 = _interopRequireDefault(_assertString);
4483
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4626
4484
 
4627
4485
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4628
4486
 
@@ -4631,20 +4489,25 @@ var creditCard = /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][
4631
4489
  /* eslint-enable max-len */
4632
4490
 
4633
4491
  function isCreditCard(str) {
4634
- (0, _assertString2.default)(str);
4492
+ (0, _assertString.default)(str);
4635
4493
  var sanitized = str.replace(/[- ]+/g, '');
4494
+
4636
4495
  if (!creditCard.test(sanitized)) {
4637
4496
  return false;
4638
4497
  }
4498
+
4639
4499
  var sum = 0;
4640
- var digit = void 0;
4641
- var tmpNum = void 0;
4642
- var shouldDouble = void 0;
4500
+ var digit;
4501
+ var tmpNum;
4502
+ var shouldDouble;
4503
+
4643
4504
  for (var i = sanitized.length - 1; i >= 0; i--) {
4644
4505
  digit = sanitized.substring(i, i + 1);
4645
4506
  tmpNum = parseInt(digit, 10);
4507
+
4646
4508
  if (shouldDouble) {
4647
4509
  tmpNum *= 2;
4510
+
4648
4511
  if (tmpNum >= 10) {
4649
4512
  sum += tmpNum % 10 + 1;
4650
4513
  } else {
@@ -4653,57 +4516,55 @@ function isCreditCard(str) {
4653
4516
  } else {
4654
4517
  sum += tmpNum;
4655
4518
  }
4519
+
4656
4520
  shouldDouble = !shouldDouble;
4657
4521
  }
4522
+
4658
4523
  return !!(sum % 10 === 0 ? sanitized : false);
4659
4524
  }
4660
- module.exports = exports['default'];
4661
- },{"./util/assertString":127}],70:[function(require,module,exports){
4662
- 'use strict';
4525
+
4526
+ module.exports = exports.default;
4527
+ },{"./util/assertString":128}],70:[function(require,module,exports){
4528
+ "use strict";
4663
4529
 
4664
4530
  Object.defineProperty(exports, "__esModule", {
4665
4531
  value: true
4666
4532
  });
4667
4533
  exports.default = isCurrency;
4668
4534
 
4669
- var _merge = require('./util/merge');
4670
-
4671
- var _merge2 = _interopRequireDefault(_merge);
4535
+ var _merge = _interopRequireDefault(require("./util/merge"));
4672
4536
 
4673
- var _assertString = require('./util/assertString');
4674
-
4675
- var _assertString2 = _interopRequireDefault(_assertString);
4537
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4676
4538
 
4677
4539
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4678
4540
 
4679
4541
  function currencyRegex(options) {
4680
- var decimal_digits = '\\d{' + options.digits_after_decimal[0] + '}';
4542
+ var decimal_digits = "\\d{".concat(options.digits_after_decimal[0], "}");
4681
4543
  options.digits_after_decimal.forEach(function (digit, index) {
4682
- if (index !== 0) decimal_digits = decimal_digits + '|\\d{' + digit + '}';
4544
+ if (index !== 0) decimal_digits = "".concat(decimal_digits, "|\\d{").concat(digit, "}");
4683
4545
  });
4684
- var symbol = '(\\' + options.symbol.replace(/\./g, '\\.') + ')' + (options.require_symbol ? '' : '?'),
4546
+ var symbol = "(\\".concat(options.symbol.replace(/\./g, '\\.'), ")").concat(options.require_symbol ? '' : '?'),
4685
4547
  negative = '-?',
4686
4548
  whole_dollar_amount_without_sep = '[1-9]\\d*',
4687
- whole_dollar_amount_with_sep = '[1-9]\\d{0,2}(\\' + options.thousands_separator + '\\d{3})*',
4549
+ whole_dollar_amount_with_sep = "[1-9]\\d{0,2}(\\".concat(options.thousands_separator, "\\d{3})*"),
4688
4550
  valid_whole_dollar_amounts = ['0', whole_dollar_amount_without_sep, whole_dollar_amount_with_sep],
4689
- whole_dollar_amount = '(' + valid_whole_dollar_amounts.join('|') + ')?',
4690
- decimal_amount = '(\\' + options.decimal_separator + '(' + decimal_digits + '))' + (options.require_decimal ? '' : '?');
4691
- var pattern = whole_dollar_amount + (options.allow_decimal || options.require_decimal ? decimal_amount : '');
4551
+ whole_dollar_amount = "(".concat(valid_whole_dollar_amounts.join('|'), ")?"),
4552
+ decimal_amount = "(\\".concat(options.decimal_separator, "(").concat(decimal_digits, "))").concat(options.require_decimal ? '' : '?');
4553
+ var pattern = whole_dollar_amount + (options.allow_decimal || options.require_decimal ? decimal_amount : ''); // default is negative sign before symbol, but there are two other options (besides parens)
4692
4554
 
4693
- // default is negative sign before symbol, but there are two other options (besides parens)
4694
4555
  if (options.allow_negatives && !options.parens_for_negatives) {
4695
4556
  if (options.negative_sign_after_digits) {
4696
4557
  pattern += negative;
4697
4558
  } else if (options.negative_sign_before_digits) {
4698
4559
  pattern = negative + pattern;
4699
4560
  }
4700
- }
4561
+ } // South African Rand, for example, uses R 123 (space) and R-123 (no space)
4562
+
4701
4563
 
4702
- // South African Rand, for example, uses R 123 (space) and R-123 (no space)
4703
4564
  if (options.allow_negative_sign_placeholder) {
4704
- pattern = '( (?!\\-))?' + pattern;
4565
+ pattern = "( (?!\\-))?".concat(pattern);
4705
4566
  } else if (options.allow_space_after_symbol) {
4706
- pattern = ' ?' + pattern;
4567
+ pattern = " ?".concat(pattern);
4707
4568
  } else if (options.allow_space_after_digits) {
4708
4569
  pattern += '( (?!$))?';
4709
4570
  }
@@ -4716,15 +4577,15 @@ function currencyRegex(options) {
4716
4577
 
4717
4578
  if (options.allow_negatives) {
4718
4579
  if (options.parens_for_negatives) {
4719
- pattern = '(\\(' + pattern + '\\)|' + pattern + ')';
4580
+ pattern = "(\\(".concat(pattern, "\\)|").concat(pattern, ")");
4720
4581
  } else if (!(options.negative_sign_before_digits || options.negative_sign_after_digits)) {
4721
4582
  pattern = negative + pattern;
4722
4583
  }
4723
- }
4724
-
4725
- // ensure there's a dollar and/or decimal amount, and that
4584
+ } // ensure there's a dollar and/or decimal amount, and that
4726
4585
  // it doesn't start with a space or a negative sign followed by a space
4727
- return new RegExp('^(?!-? )(?=.*\\d)' + pattern + '$');
4586
+
4587
+
4588
+ return new RegExp("^(?!-? )(?=.*\\d)".concat(pattern, "$"));
4728
4589
  }
4729
4590
 
4730
4591
  var default_currency_options = {
@@ -4746,87 +4607,86 @@ var default_currency_options = {
4746
4607
  };
4747
4608
 
4748
4609
  function isCurrency(str, options) {
4749
- (0, _assertString2.default)(str);
4750
- options = (0, _merge2.default)(options, default_currency_options);
4610
+ (0, _assertString.default)(str);
4611
+ options = (0, _merge.default)(options, default_currency_options);
4751
4612
  return currencyRegex(options).test(str);
4752
4613
  }
4753
- module.exports = exports['default'];
4754
- },{"./util/assertString":127,"./util/merge":129}],71:[function(require,module,exports){
4755
- 'use strict';
4614
+
4615
+ module.exports = exports.default;
4616
+ },{"./util/assertString":128,"./util/merge":130}],71:[function(require,module,exports){
4617
+ "use strict";
4756
4618
 
4757
4619
  Object.defineProperty(exports, "__esModule", {
4758
4620
  value: true
4759
4621
  });
4760
4622
  exports.default = isDataURI;
4761
4623
 
4762
- var _assertString = require('./util/assertString');
4763
-
4764
- var _assertString2 = _interopRequireDefault(_assertString);
4624
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4765
4625
 
4766
4626
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4767
4627
 
4768
4628
  var validMediaType = /^[a-z]+\/[a-z0-9\-\+]+$/i;
4769
-
4770
4629
  var validAttribute = /^[a-z\-]+=[a-z0-9\-]+$/i;
4771
-
4772
4630
  var validData = /^[a-z0-9!\$&'\(\)\*\+,;=\-\._~:@\/\?%\s]*$/i;
4773
4631
 
4774
4632
  function isDataURI(str) {
4775
- (0, _assertString2.default)(str);
4633
+ (0, _assertString.default)(str);
4776
4634
  var data = str.split(',');
4635
+
4777
4636
  if (data.length < 2) {
4778
4637
  return false;
4779
4638
  }
4639
+
4780
4640
  var attributes = data.shift().trim().split(';');
4781
4641
  var schemeAndMediaType = attributes.shift();
4642
+
4782
4643
  if (schemeAndMediaType.substr(0, 5) !== 'data:') {
4783
4644
  return false;
4784
4645
  }
4646
+
4785
4647
  var mediaType = schemeAndMediaType.substr(5);
4648
+
4786
4649
  if (mediaType !== '' && !validMediaType.test(mediaType)) {
4787
4650
  return false;
4788
4651
  }
4652
+
4789
4653
  for (var i = 0; i < attributes.length; i++) {
4790
- if (i === attributes.length - 1 && attributes[i].toLowerCase() === 'base64') {
4791
- // ok
4654
+ if (i === attributes.length - 1 && attributes[i].toLowerCase() === 'base64') {// ok
4792
4655
  } else if (!validAttribute.test(attributes[i])) {
4793
4656
  return false;
4794
4657
  }
4795
4658
  }
4659
+
4796
4660
  for (var _i = 0; _i < data.length; _i++) {
4797
4661
  if (!validData.test(data[_i])) {
4798
4662
  return false;
4799
4663
  }
4800
4664
  }
4665
+
4801
4666
  return true;
4802
4667
  }
4803
- module.exports = exports['default'];
4804
- },{"./util/assertString":127}],72:[function(require,module,exports){
4805
- 'use strict';
4668
+
4669
+ module.exports = exports.default;
4670
+ },{"./util/assertString":128}],72:[function(require,module,exports){
4671
+ "use strict";
4806
4672
 
4807
4673
  Object.defineProperty(exports, "__esModule", {
4808
4674
  value: true
4809
4675
  });
4810
4676
  exports.default = isDecimal;
4811
4677
 
4812
- var _merge = require('./util/merge');
4678
+ var _merge = _interopRequireDefault(require("./util/merge"));
4813
4679
 
4814
- var _merge2 = _interopRequireDefault(_merge);
4680
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4815
4681
 
4816
- var _assertString = require('./util/assertString');
4682
+ var _includes = _interopRequireDefault(require("./util/includes"));
4817
4683
 
4818
- var _assertString2 = _interopRequireDefault(_assertString);
4819
-
4820
- var _includes = require('./util/includes');
4821
-
4822
- var _includes2 = _interopRequireDefault(_includes);
4823
-
4824
- var _alpha = require('./alpha');
4684
+ var _alpha = require("./alpha");
4825
4685
 
4826
4686
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4827
4687
 
4828
4688
  function decimalRegExp(options) {
4829
- var regExp = new RegExp('^[-+]?([0-9]+)?(\\' + _alpha.decimal[options.locale] + '[0-9]{' + options.decimal_digits + '})' + (options.force_decimal ? '' : '?') + '$');
4689
+ var regExp = new RegExp("^[-+]?([0-9]+)?(\\".concat(_alpha.decimal[options.locale], "[0-9]{").concat(options.decimal_digits, "})").concat(options.force_decimal ? '' : '?', "$"));
4830
4690
  return regExp;
4831
4691
  }
4832
4692
 
@@ -4835,68 +4695,57 @@ var default_decimal_options = {
4835
4695
  decimal_digits: '1,',
4836
4696
  locale: 'en-US'
4837
4697
  };
4838
-
4839
4698
  var blacklist = ['', '-', '+'];
4840
4699
 
4841
4700
  function isDecimal(str, options) {
4842
- (0, _assertString2.default)(str);
4843
- options = (0, _merge2.default)(options, default_decimal_options);
4701
+ (0, _assertString.default)(str);
4702
+ options = (0, _merge.default)(options, default_decimal_options);
4703
+
4844
4704
  if (options.locale in _alpha.decimal) {
4845
- return !(0, _includes2.default)(blacklist, str.replace(/ /g, '')) && decimalRegExp(options).test(str);
4705
+ return !(0, _includes.default)(blacklist, str.replace(/ /g, '')) && decimalRegExp(options).test(str);
4846
4706
  }
4847
- throw new Error('Invalid locale \'' + options.locale + '\'');
4707
+
4708
+ throw new Error("Invalid locale '".concat(options.locale, "'"));
4848
4709
  }
4849
- module.exports = exports['default'];
4850
- },{"./alpha":56,"./util/assertString":127,"./util/includes":128,"./util/merge":129}],73:[function(require,module,exports){
4851
- 'use strict';
4710
+
4711
+ module.exports = exports.default;
4712
+ },{"./alpha":56,"./util/assertString":128,"./util/includes":129,"./util/merge":130}],73:[function(require,module,exports){
4713
+ "use strict";
4852
4714
 
4853
4715
  Object.defineProperty(exports, "__esModule", {
4854
4716
  value: true
4855
4717
  });
4856
4718
  exports.default = isDivisibleBy;
4857
4719
 
4858
- var _assertString = require('./util/assertString');
4859
-
4860
- var _assertString2 = _interopRequireDefault(_assertString);
4861
-
4862
- var _toFloat = require('./toFloat');
4720
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4863
4721
 
4864
- var _toFloat2 = _interopRequireDefault(_toFloat);
4722
+ var _toFloat = _interopRequireDefault(require("./toFloat"));
4865
4723
 
4866
4724
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4867
4725
 
4868
4726
  function isDivisibleBy(str, num) {
4869
- (0, _assertString2.default)(str);
4870
- return (0, _toFloat2.default)(str) % parseInt(num, 10) === 0;
4727
+ (0, _assertString.default)(str);
4728
+ return (0, _toFloat.default)(str) % parseInt(num, 10) === 0;
4871
4729
  }
4872
- module.exports = exports['default'];
4873
- },{"./toFloat":123,"./util/assertString":127}],74:[function(require,module,exports){
4874
- 'use strict';
4730
+
4731
+ module.exports = exports.default;
4732
+ },{"./toFloat":124,"./util/assertString":128}],74:[function(require,module,exports){
4733
+ "use strict";
4875
4734
 
4876
4735
  Object.defineProperty(exports, "__esModule", {
4877
4736
  value: true
4878
4737
  });
4879
4738
  exports.default = isEmail;
4880
4739
 
4881
- var _assertString = require('./util/assertString');
4740
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
4882
4741
 
4883
- var _assertString2 = _interopRequireDefault(_assertString);
4742
+ var _merge = _interopRequireDefault(require("./util/merge"));
4884
4743
 
4885
- var _merge = require('./util/merge');
4744
+ var _isByteLength = _interopRequireDefault(require("./isByteLength"));
4886
4745
 
4887
- var _merge2 = _interopRequireDefault(_merge);
4746
+ var _isFQDN = _interopRequireDefault(require("./isFQDN"));
4888
4747
 
4889
- var _isByteLength = require('./isByteLength');
4890
-
4891
- var _isByteLength2 = _interopRequireDefault(_isByteLength);
4892
-
4893
- var _isFQDN = require('./isFQDN');
4894
-
4895
- var _isFQDN2 = _interopRequireDefault(_isFQDN);
4896
-
4897
- var _isIP = require('./isIP');
4898
-
4899
- var _isIP2 = _interopRequireDefault(_isIP);
4748
+ var _isIP = _interopRequireDefault(require("./isIP"));
4900
4749
 
4901
4750
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4902
4751
 
@@ -4906,9 +4755,10 @@ var default_email_options = {
4906
4755
  allow_utf8_local_part: true,
4907
4756
  require_tld: true
4908
4757
  };
4909
-
4910
4758
  /* eslint-disable max-len */
4759
+
4911
4760
  /* eslint-disable no-control-regex */
4761
+
4912
4762
  var displayName = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\.\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\,\.\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\s]*<(.+)>$/i;
4913
4763
  var emailUserPart = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i;
4914
4764
  var gmailUserPart = /^[a-z\d]+$/;
@@ -4916,14 +4766,16 @@ var quotedEmailUser = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e
4916
4766
  var emailUserUtf8Part = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i;
4917
4767
  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;
4918
4768
  /* eslint-enable max-len */
4769
+
4919
4770
  /* eslint-enable no-control-regex */
4920
4771
 
4921
4772
  function isEmail(str, options) {
4922
- (0, _assertString2.default)(str);
4923
- options = (0, _merge2.default)(options, default_email_options);
4773
+ (0, _assertString.default)(str);
4774
+ options = (0, _merge.default)(options, default_email_options);
4924
4775
 
4925
4776
  if (options.require_display_name || options.allow_display_name) {
4926
4777
  var display_email = str.match(displayName);
4778
+
4927
4779
  if (display_email) {
4928
4780
  str = display_email[1];
4929
4781
  } else if (options.require_display_name) {
@@ -4934,7 +4786,6 @@ function isEmail(str, options) {
4934
4786
  var parts = str.split('@');
4935
4787
  var domain = parts.pop();
4936
4788
  var user = parts.join('@');
4937
-
4938
4789
  var lower_domain = domain.toLowerCase();
4939
4790
 
4940
4791
  if (options.domain_specific_validation && (lower_domain === 'gmail.com' || lower_domain === 'googlemail.com')) {
@@ -4945,17 +4796,19 @@ function isEmail(str, options) {
4945
4796
  Gmail only normalizes single dots, removing them from here is pointless,
4946
4797
  should be done in normalizeEmail
4947
4798
  */
4948
- user = user.toLowerCase();
4799
+ user = user.toLowerCase(); // Removing sub-address from username before gmail validation
4949
4800
 
4950
- // Removing sub-address from username before gmail validation
4951
- var username = user.split('+')[0];
4801
+ var username = user.split('+')[0]; // Dots are not included in gmail length restriction
4952
4802
 
4953
- // Dots are not included in gmail length restriction
4954
- if (!(0, _isByteLength2.default)(username.replace('.', ''), { min: 6, max: 30 })) {
4803
+ if (!(0, _isByteLength.default)(username.replace('.', ''), {
4804
+ min: 6,
4805
+ max: 30
4806
+ })) {
4955
4807
  return false;
4956
4808
  }
4957
4809
 
4958
4810
  var _user_parts = username.split('.');
4811
+
4959
4812
  for (var i = 0; i < _user_parts.length; i++) {
4960
4813
  if (!gmailUserPart.test(_user_parts[i])) {
4961
4814
  return false;
@@ -4963,23 +4816,29 @@ function isEmail(str, options) {
4963
4816
  }
4964
4817
  }
4965
4818
 
4966
- if (!(0, _isByteLength2.default)(user, { max: 64 }) || !(0, _isByteLength2.default)(domain, { max: 254 })) {
4819
+ if (!(0, _isByteLength.default)(user, {
4820
+ max: 64
4821
+ }) || !(0, _isByteLength.default)(domain, {
4822
+ max: 254
4823
+ })) {
4967
4824
  return false;
4968
4825
  }
4969
4826
 
4970
- if (!(0, _isFQDN2.default)(domain, { require_tld: options.require_tld })) {
4827
+ if (!(0, _isFQDN.default)(domain, {
4828
+ require_tld: options.require_tld
4829
+ })) {
4971
4830
  if (!options.allow_ip_domain) {
4972
4831
  return false;
4973
4832
  }
4974
4833
 
4975
- if (!(0, _isIP2.default)(domain)) {
4834
+ if (!(0, _isIP.default)(domain)) {
4976
4835
  if (!domain.startsWith('[') || !domain.endsWith(']')) {
4977
4836
  return false;
4978
4837
  }
4979
4838
 
4980
4839
  var noBracketdomain = domain.substr(1, domain.length - 2);
4981
4840
 
4982
- if (noBracketdomain.length === 0 || !(0, _isIP2.default)(noBracketdomain)) {
4841
+ if (noBracketdomain.length === 0 || !(0, _isIP.default)(noBracketdomain)) {
4983
4842
  return false;
4984
4843
  }
4985
4844
  }
@@ -4991,8 +4850,8 @@ function isEmail(str, options) {
4991
4850
  }
4992
4851
 
4993
4852
  var pattern = options.allow_utf8_local_part ? emailUserUtf8Part : emailUserPart;
4994
-
4995
4853
  var user_parts = user.split('.');
4854
+
4996
4855
  for (var _i = 0; _i < user_parts.length; _i++) {
4997
4856
  if (!pattern.test(user_parts[_i])) {
4998
4857
  return false;
@@ -5001,22 +4860,19 @@ function isEmail(str, options) {
5001
4860
 
5002
4861
  return true;
5003
4862
  }
5004
- module.exports = exports['default'];
5005
- },{"./isByteLength":68,"./isFQDN":76,"./isIP":83,"./util/assertString":127,"./util/merge":129}],75:[function(require,module,exports){
5006
- 'use strict';
4863
+
4864
+ module.exports = exports.default;
4865
+ },{"./isByteLength":68,"./isFQDN":76,"./isIP":83,"./util/assertString":128,"./util/merge":130}],75:[function(require,module,exports){
4866
+ "use strict";
5007
4867
 
5008
4868
  Object.defineProperty(exports, "__esModule", {
5009
4869
  value: true
5010
4870
  });
5011
4871
  exports.default = isEmpty;
5012
4872
 
5013
- var _assertString = require('./util/assertString');
5014
-
5015
- var _assertString2 = _interopRequireDefault(_assertString);
4873
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5016
4874
 
5017
- var _merge = require('./util/merge');
5018
-
5019
- var _merge2 = _interopRequireDefault(_merge);
4875
+ var _merge = _interopRequireDefault(require("./util/merge"));
5020
4876
 
5021
4877
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5022
4878
 
@@ -5025,27 +4881,23 @@ var default_is_empty_options = {
5025
4881
  };
5026
4882
 
5027
4883
  function isEmpty(str, options) {
5028
- (0, _assertString2.default)(str);
5029
- options = (0, _merge2.default)(options, default_is_empty_options);
5030
-
4884
+ (0, _assertString.default)(str);
4885
+ options = (0, _merge.default)(options, default_is_empty_options);
5031
4886
  return (options.ignore_whitespace ? str.trim().length : str.length) === 0;
5032
4887
  }
5033
- module.exports = exports['default'];
5034
- },{"./util/assertString":127,"./util/merge":129}],76:[function(require,module,exports){
5035
- 'use strict';
4888
+
4889
+ module.exports = exports.default;
4890
+ },{"./util/assertString":128,"./util/merge":130}],76:[function(require,module,exports){
4891
+ "use strict";
5036
4892
 
5037
4893
  Object.defineProperty(exports, "__esModule", {
5038
4894
  value: true
5039
4895
  });
5040
4896
  exports.default = isFQDN;
5041
4897
 
5042
- var _assertString = require('./util/assertString');
5043
-
5044
- var _assertString2 = _interopRequireDefault(_assertString);
4898
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5045
4899
 
5046
- var _merge = require('./util/merge');
5047
-
5048
- var _merge2 = _interopRequireDefault(_merge);
4900
+ var _merge = _interopRequireDefault(require("./util/merge"));
5049
4901
 
5050
4902
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5051
4903
 
@@ -5056,128 +4908,139 @@ var default_fqdn_options = {
5056
4908
  };
5057
4909
 
5058
4910
  function isFQDN(str, options) {
5059
- (0, _assertString2.default)(str);
5060
- options = (0, _merge2.default)(options, default_fqdn_options);
5061
-
4911
+ (0, _assertString.default)(str);
4912
+ options = (0, _merge.default)(options, default_fqdn_options);
5062
4913
  /* Remove the optional trailing dot before checking validity */
4914
+
5063
4915
  if (options.allow_trailing_dot && str[str.length - 1] === '.') {
5064
4916
  str = str.substring(0, str.length - 1);
5065
4917
  }
4918
+
5066
4919
  var parts = str.split('.');
4920
+
5067
4921
  for (var i = 0; i < parts.length; i++) {
5068
4922
  if (parts[i].length > 63) {
5069
4923
  return false;
5070
4924
  }
5071
4925
  }
4926
+
5072
4927
  if (options.require_tld) {
5073
4928
  var tld = parts.pop();
4929
+
5074
4930
  if (!parts.length || !/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
5075
4931
  return false;
5076
- }
5077
- // disallow spaces
4932
+ } // disallow spaces
4933
+
4934
+
5078
4935
  if (/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(tld)) {
5079
4936
  return false;
5080
4937
  }
5081
4938
  }
4939
+
5082
4940
  for (var part, _i = 0; _i < parts.length; _i++) {
5083
4941
  part = parts[_i];
4942
+
5084
4943
  if (options.allow_underscores) {
5085
4944
  part = part.replace(/_/g, '');
5086
4945
  }
4946
+
5087
4947
  if (!/^[a-z\u00a1-\uffff0-9-]+$/i.test(part)) {
5088
4948
  return false;
5089
- }
5090
- // disallow full-width chars
4949
+ } // disallow full-width chars
4950
+
4951
+
5091
4952
  if (/[\uff01-\uff5e]/.test(part)) {
5092
4953
  return false;
5093
4954
  }
4955
+
5094
4956
  if (part[0] === '-' || part[part.length - 1] === '-') {
5095
4957
  return false;
5096
4958
  }
5097
4959
  }
4960
+
5098
4961
  return true;
5099
4962
  }
5100
- module.exports = exports['default'];
5101
- },{"./util/assertString":127,"./util/merge":129}],77:[function(require,module,exports){
5102
- 'use strict';
4963
+
4964
+ module.exports = exports.default;
4965
+ },{"./util/assertString":128,"./util/merge":130}],77:[function(require,module,exports){
4966
+ "use strict";
5103
4967
 
5104
4968
  Object.defineProperty(exports, "__esModule", {
5105
4969
  value: true
5106
4970
  });
5107
4971
  exports.default = isFloat;
4972
+ exports.locales = void 0;
5108
4973
 
5109
- var _assertString = require('./util/assertString');
4974
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5110
4975
 
5111
- var _assertString2 = _interopRequireDefault(_assertString);
5112
-
5113
- var _alpha = require('./alpha');
4976
+ var _alpha = require("./alpha");
5114
4977
 
5115
4978
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5116
4979
 
5117
4980
  function isFloat(str, options) {
5118
- (0, _assertString2.default)(str);
4981
+ (0, _assertString.default)(str);
5119
4982
  options = options || {};
5120
- var float = new RegExp('^(?:[-+])?(?:[0-9]+)?(?:\\' + (options.locale ? _alpha.decimal[options.locale] : '.') + '[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$');
4983
+ var float = new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(options.locale ? _alpha.decimal[options.locale] : '.', "[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));
4984
+
5121
4985
  if (str === '' || str === '.' || str === '-' || str === '+') {
5122
4986
  return false;
5123
4987
  }
4988
+
5124
4989
  var value = parseFloat(str.replace(',', '.'));
5125
4990
  return float.test(str) && (!options.hasOwnProperty('min') || value >= options.min) && (!options.hasOwnProperty('max') || value <= options.max) && (!options.hasOwnProperty('lt') || value < options.lt) && (!options.hasOwnProperty('gt') || value > options.gt);
5126
4991
  }
5127
- module.exports = exports['default'];
5128
- },{"./alpha":56,"./util/assertString":127}],78:[function(require,module,exports){
5129
- 'use strict';
4992
+
4993
+ var locales = Object.keys(_alpha.decimal);
4994
+ exports.locales = locales;
4995
+ },{"./alpha":56,"./util/assertString":128}],78:[function(require,module,exports){
4996
+ "use strict";
5130
4997
 
5131
4998
  Object.defineProperty(exports, "__esModule", {
5132
4999
  value: true
5133
5000
  });
5134
- exports.fullWidth = undefined;
5135
5001
  exports.default = isFullWidth;
5002
+ exports.fullWidth = void 0;
5136
5003
 
5137
- var _assertString = require('./util/assertString');
5138
-
5139
- var _assertString2 = _interopRequireDefault(_assertString);
5004
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5140
5005
 
5141
5006
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5142
5007
 
5143
- var fullWidth = exports.fullWidth = /[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;
5008
+ var fullWidth = /[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;
5009
+ exports.fullWidth = fullWidth;
5144
5010
 
5145
5011
  function isFullWidth(str) {
5146
- (0, _assertString2.default)(str);
5012
+ (0, _assertString.default)(str);
5147
5013
  return fullWidth.test(str);
5148
5014
  }
5149
- },{"./util/assertString":127}],79:[function(require,module,exports){
5150
- 'use strict';
5015
+ },{"./util/assertString":128}],79:[function(require,module,exports){
5016
+ "use strict";
5151
5017
 
5152
5018
  Object.defineProperty(exports, "__esModule", {
5153
5019
  value: true
5154
5020
  });
5155
- exports.halfWidth = undefined;
5156
5021
  exports.default = isHalfWidth;
5022
+ exports.halfWidth = void 0;
5157
5023
 
5158
- var _assertString = require('./util/assertString');
5159
-
5160
- var _assertString2 = _interopRequireDefault(_assertString);
5024
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5161
5025
 
5162
5026
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5163
5027
 
5164
- var halfWidth = exports.halfWidth = /[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;
5028
+ var halfWidth = /[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;
5029
+ exports.halfWidth = halfWidth;
5165
5030
 
5166
5031
  function isHalfWidth(str) {
5167
- (0, _assertString2.default)(str);
5032
+ (0, _assertString.default)(str);
5168
5033
  return halfWidth.test(str);
5169
5034
  }
5170
- },{"./util/assertString":127}],80:[function(require,module,exports){
5171
- 'use strict';
5035
+ },{"./util/assertString":128}],80:[function(require,module,exports){
5036
+ "use strict";
5172
5037
 
5173
5038
  Object.defineProperty(exports, "__esModule", {
5174
5039
  value: true
5175
5040
  });
5176
5041
  exports.default = isHash;
5177
5042
 
5178
- var _assertString = require('./util/assertString');
5179
-
5180
- var _assertString2 = _interopRequireDefault(_assertString);
5043
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5181
5044
 
5182
5045
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5183
5046
 
@@ -5198,64 +5061,61 @@ var lengths = {
5198
5061
  };
5199
5062
 
5200
5063
  function isHash(str, algorithm) {
5201
- (0, _assertString2.default)(str);
5202
- var hash = new RegExp('^[a-f0-9]{' + lengths[algorithm] + '}$');
5064
+ (0, _assertString.default)(str);
5065
+ var hash = new RegExp("^[a-f0-9]{".concat(lengths[algorithm], "}$"));
5203
5066
  return hash.test(str);
5204
5067
  }
5205
- module.exports = exports['default'];
5206
- },{"./util/assertString":127}],81:[function(require,module,exports){
5207
- 'use strict';
5068
+
5069
+ module.exports = exports.default;
5070
+ },{"./util/assertString":128}],81:[function(require,module,exports){
5071
+ "use strict";
5208
5072
 
5209
5073
  Object.defineProperty(exports, "__esModule", {
5210
5074
  value: true
5211
5075
  });
5212
5076
  exports.default = isHexColor;
5213
5077
 
5214
- var _assertString = require('./util/assertString');
5215
-
5216
- var _assertString2 = _interopRequireDefault(_assertString);
5078
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5217
5079
 
5218
5080
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5219
5081
 
5220
5082
  var hexcolor = /^#?([0-9A-F]{3}|[0-9A-F]{6})$/i;
5221
5083
 
5222
5084
  function isHexColor(str) {
5223
- (0, _assertString2.default)(str);
5085
+ (0, _assertString.default)(str);
5224
5086
  return hexcolor.test(str);
5225
5087
  }
5226
- module.exports = exports['default'];
5227
- },{"./util/assertString":127}],82:[function(require,module,exports){
5228
- 'use strict';
5088
+
5089
+ module.exports = exports.default;
5090
+ },{"./util/assertString":128}],82:[function(require,module,exports){
5091
+ "use strict";
5229
5092
 
5230
5093
  Object.defineProperty(exports, "__esModule", {
5231
5094
  value: true
5232
5095
  });
5233
5096
  exports.default = isHexadecimal;
5234
5097
 
5235
- var _assertString = require('./util/assertString');
5236
-
5237
- var _assertString2 = _interopRequireDefault(_assertString);
5098
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5238
5099
 
5239
5100
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5240
5101
 
5241
5102
  var hexadecimal = /^[0-9A-F]+$/i;
5242
5103
 
5243
5104
  function isHexadecimal(str) {
5244
- (0, _assertString2.default)(str);
5105
+ (0, _assertString.default)(str);
5245
5106
  return hexadecimal.test(str);
5246
5107
  }
5247
- module.exports = exports['default'];
5248
- },{"./util/assertString":127}],83:[function(require,module,exports){
5249
- 'use strict';
5108
+
5109
+ module.exports = exports.default;
5110
+ },{"./util/assertString":128}],83:[function(require,module,exports){
5111
+ "use strict";
5250
5112
 
5251
5113
  Object.defineProperty(exports, "__esModule", {
5252
5114
  value: true
5253
5115
  });
5254
5116
  exports.default = isIP;
5255
5117
 
5256
- var _assertString = require('./util/assertString');
5257
-
5258
- var _assertString2 = _interopRequireDefault(_assertString);
5118
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5259
5119
 
5260
5120
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5261
5121
 
@@ -5264,15 +5124,16 @@ var ipv6Block = /^[0-9A-F]{1,4}$/i;
5264
5124
 
5265
5125
  function isIP(str) {
5266
5126
  var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
5267
-
5268
- (0, _assertString2.default)(str);
5127
+ (0, _assertString.default)(str);
5269
5128
  version = String(version);
5129
+
5270
5130
  if (!version) {
5271
5131
  return isIP(str, 4) || isIP(str, 6);
5272
5132
  } else if (version === '4') {
5273
5133
  if (!ipv4Maybe.test(str)) {
5274
5134
  return false;
5275
5135
  }
5136
+
5276
5137
  var parts = str.split('.').sort(function (a, b) {
5277
5138
  return a - b;
5278
5139
  });
@@ -5280,18 +5141,19 @@ function isIP(str) {
5280
5141
  } else if (version === '6') {
5281
5142
  var blocks = str.split(':');
5282
5143
  var foundOmissionBlock = false; // marker to indicate ::
5283
-
5284
5144
  // At least some OS accept the last 32 bits of an IPv6 address
5285
5145
  // (i.e. 2 of the blocks) in IPv4 notation, and RFC 3493 says
5286
5146
  // that '::ffff:a.b.c.d' is valid for IPv4-mapped IPv6 addresses,
5287
5147
  // and '::a.b.c.d' is deprecated, but also valid.
5148
+
5288
5149
  var foundIPv4TransitionBlock = isIP(blocks[blocks.length - 1], 4);
5289
5150
  var expectedNumberOfBlocks = foundIPv4TransitionBlock ? 7 : 8;
5290
5151
 
5291
5152
  if (blocks.length > expectedNumberOfBlocks) {
5292
5153
  return false;
5293
- }
5294
- // initial or final ::
5154
+ } // initial or final ::
5155
+
5156
+
5295
5157
  if (str === '::') {
5296
5158
  return true;
5297
5159
  } else if (str.substr(0, 2) === '::') {
@@ -5311,74 +5173,72 @@ function isIP(str) {
5311
5173
  if (foundOmissionBlock) {
5312
5174
  return false; // multiple :: in address
5313
5175
  }
5176
+
5314
5177
  foundOmissionBlock = true;
5315
- } else if (foundIPv4TransitionBlock && i === blocks.length - 1) {
5316
- // it has been checked before that the last
5178
+ } else if (foundIPv4TransitionBlock && i === blocks.length - 1) {// it has been checked before that the last
5317
5179
  // block is a valid IPv4 address
5318
5180
  } else if (!ipv6Block.test(blocks[i])) {
5319
5181
  return false;
5320
5182
  }
5321
5183
  }
5184
+
5322
5185
  if (foundOmissionBlock) {
5323
5186
  return blocks.length >= 1;
5324
5187
  }
5188
+
5325
5189
  return blocks.length === expectedNumberOfBlocks;
5326
5190
  }
5191
+
5327
5192
  return false;
5328
5193
  }
5329
- module.exports = exports['default'];
5330
- },{"./util/assertString":127}],84:[function(require,module,exports){
5331
- 'use strict';
5194
+
5195
+ module.exports = exports.default;
5196
+ },{"./util/assertString":128}],84:[function(require,module,exports){
5197
+ "use strict";
5332
5198
 
5333
5199
  Object.defineProperty(exports, "__esModule", {
5334
5200
  value: true
5335
5201
  });
5336
5202
  exports.default = isIPRange;
5337
5203
 
5338
- var _assertString = require('./util/assertString');
5339
-
5340
- var _assertString2 = _interopRequireDefault(_assertString);
5341
-
5342
- var _isIP = require('./isIP');
5204
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5343
5205
 
5344
- var _isIP2 = _interopRequireDefault(_isIP);
5206
+ var _isIP = _interopRequireDefault(require("./isIP"));
5345
5207
 
5346
5208
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5347
5209
 
5348
5210
  var subnetMaybe = /^\d{1,2}$/;
5349
5211
 
5350
5212
  function isIPRange(str) {
5351
- (0, _assertString2.default)(str);
5352
- var parts = str.split('/');
5213
+ (0, _assertString.default)(str);
5214
+ var parts = str.split('/'); // parts[0] -> ip, parts[1] -> subnet
5353
5215
 
5354
- // parts[0] -> ip, parts[1] -> subnet
5355
5216
  if (parts.length !== 2) {
5356
5217
  return false;
5357
5218
  }
5358
5219
 
5359
5220
  if (!subnetMaybe.test(parts[1])) {
5360
5221
  return false;
5361
- }
5222
+ } // Disallow preceding 0 i.e. 01, 02, ...
5223
+
5362
5224
 
5363
- // Disallow preceding 0 i.e. 01, 02, ...
5364
5225
  if (parts[1].length > 1 && parts[1].startsWith('0')) {
5365
5226
  return false;
5366
5227
  }
5367
5228
 
5368
- return (0, _isIP2.default)(parts[0], 4) && parts[1] <= 32 && parts[1] >= 0;
5229
+ return (0, _isIP.default)(parts[0], 4) && parts[1] <= 32 && parts[1] >= 0;
5369
5230
  }
5370
- module.exports = exports['default'];
5371
- },{"./isIP":83,"./util/assertString":127}],85:[function(require,module,exports){
5372
- 'use strict';
5231
+
5232
+ module.exports = exports.default;
5233
+ },{"./isIP":83,"./util/assertString":128}],85:[function(require,module,exports){
5234
+ "use strict";
5373
5235
 
5374
5236
  Object.defineProperty(exports, "__esModule", {
5375
5237
  value: true
5376
5238
  });
5377
5239
  exports.default = isISBN;
5378
5240
 
5379
- var _assertString = require('./util/assertString');
5380
-
5381
- var _assertString2 = _interopRequireDefault(_assertString);
5241
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5382
5242
 
5383
5243
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5384
5244
 
@@ -5388,27 +5248,32 @@ var factor = [1, 3];
5388
5248
 
5389
5249
  function isISBN(str) {
5390
5250
  var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
5391
-
5392
- (0, _assertString2.default)(str);
5251
+ (0, _assertString.default)(str);
5393
5252
  version = String(version);
5253
+
5394
5254
  if (!version) {
5395
5255
  return isISBN(str, 10) || isISBN(str, 13);
5396
5256
  }
5257
+
5397
5258
  var sanitized = str.replace(/[\s-]+/g, '');
5398
5259
  var checksum = 0;
5399
- var i = void 0;
5260
+ var i;
5261
+
5400
5262
  if (version === '10') {
5401
5263
  if (!isbn10Maybe.test(sanitized)) {
5402
5264
  return false;
5403
5265
  }
5266
+
5404
5267
  for (i = 0; i < 9; i++) {
5405
5268
  checksum += (i + 1) * sanitized.charAt(i);
5406
5269
  }
5270
+
5407
5271
  if (sanitized.charAt(9) === 'X') {
5408
5272
  checksum += 10 * 10;
5409
5273
  } else {
5410
5274
  checksum += 10 * sanitized.charAt(9);
5411
5275
  }
5276
+
5412
5277
  if (checksum % 11 === 0) {
5413
5278
  return !!sanitized;
5414
5279
  }
@@ -5416,34 +5281,37 @@ function isISBN(str) {
5416
5281
  if (!isbn13Maybe.test(sanitized)) {
5417
5282
  return false;
5418
5283
  }
5284
+
5419
5285
  for (i = 0; i < 12; i++) {
5420
5286
  checksum += factor[i % 2] * sanitized.charAt(i);
5421
5287
  }
5288
+
5422
5289
  if (sanitized.charAt(12) - (10 - checksum % 10) % 10 === 0) {
5423
5290
  return !!sanitized;
5424
5291
  }
5425
5292
  }
5293
+
5426
5294
  return false;
5427
5295
  }
5428
- module.exports = exports['default'];
5429
- },{"./util/assertString":127}],86:[function(require,module,exports){
5430
- 'use strict';
5296
+
5297
+ module.exports = exports.default;
5298
+ },{"./util/assertString":128}],86:[function(require,module,exports){
5299
+ "use strict";
5431
5300
 
5432
5301
  Object.defineProperty(exports, "__esModule", {
5433
5302
  value: true
5434
5303
  });
5435
5304
  exports.default = isISIN;
5436
5305
 
5437
- var _assertString = require('./util/assertString');
5438
-
5439
- var _assertString2 = _interopRequireDefault(_assertString);
5306
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5440
5307
 
5441
5308
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5442
5309
 
5443
5310
  var isin = /^[A-Z]{2}[0-9A-Z]{9}[0-9]$/;
5444
5311
 
5445
5312
  function isISIN(str) {
5446
- (0, _assertString2.default)(str);
5313
+ (0, _assertString.default)(str);
5314
+
5447
5315
  if (!isin.test(str)) {
5448
5316
  return false;
5449
5317
  }
@@ -5451,16 +5319,18 @@ function isISIN(str) {
5451
5319
  var checksumStr = str.replace(/[A-Z]/g, function (character) {
5452
5320
  return parseInt(character, 36);
5453
5321
  });
5454
-
5455
5322
  var sum = 0;
5456
- var digit = void 0;
5457
- var tmpNum = void 0;
5323
+ var digit;
5324
+ var tmpNum;
5458
5325
  var shouldDouble = true;
5326
+
5459
5327
  for (var i = checksumStr.length - 2; i >= 0; i--) {
5460
5328
  digit = checksumStr.substring(i, i + 1);
5461
5329
  tmpNum = parseInt(digit, 10);
5330
+
5462
5331
  if (shouldDouble) {
5463
5332
  tmpNum *= 2;
5333
+
5464
5334
  if (tmpNum >= 10) {
5465
5335
  sum += tmpNum + 1;
5466
5336
  } else {
@@ -5469,27 +5339,25 @@ function isISIN(str) {
5469
5339
  } else {
5470
5340
  sum += tmpNum;
5471
5341
  }
5342
+
5472
5343
  shouldDouble = !shouldDouble;
5473
5344
  }
5474
5345
 
5475
5346
  return parseInt(str.substr(str.length - 1), 10) === (10000 - sum) % 10;
5476
5347
  }
5477
- module.exports = exports['default'];
5478
- },{"./util/assertString":127}],87:[function(require,module,exports){
5479
- 'use strict';
5348
+
5349
+ module.exports = exports.default;
5350
+ },{"./util/assertString":128}],87:[function(require,module,exports){
5351
+ "use strict";
5480
5352
 
5481
5353
  Object.defineProperty(exports, "__esModule", {
5482
5354
  value: true
5483
5355
  });
5484
5356
  exports.default = isISO31661Alpha2;
5485
5357
 
5486
- var _assertString = require('./util/assertString');
5487
-
5488
- var _assertString2 = _interopRequireDefault(_assertString);
5489
-
5490
- var _includes = require('./util/includes');
5358
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5491
5359
 
5492
- var _includes2 = _interopRequireDefault(_includes);
5360
+ var _includes = _interopRequireDefault(require("./util/includes"));
5493
5361
 
5494
5362
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5495
5363
 
@@ -5497,25 +5365,22 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
5497
5365
  var validISO31661Alpha2CountriesCodes = ['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'];
5498
5366
 
5499
5367
  function isISO31661Alpha2(str) {
5500
- (0, _assertString2.default)(str);
5501
- return (0, _includes2.default)(validISO31661Alpha2CountriesCodes, str.toUpperCase());
5368
+ (0, _assertString.default)(str);
5369
+ return (0, _includes.default)(validISO31661Alpha2CountriesCodes, str.toUpperCase());
5502
5370
  }
5503
- module.exports = exports['default'];
5504
- },{"./util/assertString":127,"./util/includes":128}],88:[function(require,module,exports){
5505
- 'use strict';
5371
+
5372
+ module.exports = exports.default;
5373
+ },{"./util/assertString":128,"./util/includes":129}],88:[function(require,module,exports){
5374
+ "use strict";
5506
5375
 
5507
5376
  Object.defineProperty(exports, "__esModule", {
5508
5377
  value: true
5509
5378
  });
5510
5379
  exports.default = isISO31661Alpha3;
5511
5380
 
5512
- var _assertString = require('./util/assertString');
5513
-
5514
- var _assertString2 = _interopRequireDefault(_assertString);
5381
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5515
5382
 
5516
- var _includes = require('./util/includes');
5517
-
5518
- var _includes2 = _interopRequireDefault(_includes);
5383
+ var _includes = _interopRequireDefault(require("./util/includes"));
5519
5384
 
5520
5385
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5521
5386
 
@@ -5523,45 +5388,76 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
5523
5388
  var validISO31661Alpha3CountriesCodes = ['AFG', 'ALA', 'ALB', 'DZA', 'ASM', 'AND', 'AGO', 'AIA', 'ATA', 'ATG', 'ARG', 'ARM', 'ABW', 'AUS', 'AUT', 'AZE', 'BHS', 'BHR', 'BGD', 'BRB', 'BLR', 'BEL', 'BLZ', 'BEN', 'BMU', 'BTN', 'BOL', 'BES', 'BIH', 'BWA', 'BVT', 'BRA', 'IOT', 'BRN', 'BGR', 'BFA', 'BDI', 'KHM', 'CMR', 'CAN', 'CPV', 'CYM', 'CAF', 'TCD', 'CHL', 'CHN', 'CXR', 'CCK', 'COL', 'COM', 'COG', 'COD', 'COK', 'CRI', 'CIV', 'HRV', 'CUB', 'CUW', 'CYP', 'CZE', 'DNK', 'DJI', 'DMA', 'DOM', 'ECU', 'EGY', 'SLV', 'GNQ', 'ERI', 'EST', 'ETH', 'FLK', 'FRO', 'FJI', 'FIN', 'FRA', 'GUF', 'PYF', 'ATF', 'GAB', 'GMB', 'GEO', 'DEU', 'GHA', 'GIB', 'GRC', 'GRL', 'GRD', 'GLP', 'GUM', 'GTM', 'GGY', 'GIN', 'GNB', 'GUY', 'HTI', 'HMD', 'VAT', 'HND', 'HKG', 'HUN', 'ISL', 'IND', 'IDN', 'IRN', 'IRQ', 'IRL', 'IMN', 'ISR', 'ITA', 'JAM', 'JPN', 'JEY', 'JOR', 'KAZ', 'KEN', 'KIR', 'PRK', 'KOR', 'KWT', 'KGZ', 'LAO', 'LVA', 'LBN', 'LSO', 'LBR', 'LBY', 'LIE', 'LTU', 'LUX', 'MAC', 'MKD', 'MDG', 'MWI', 'MYS', 'MDV', 'MLI', 'MLT', 'MHL', 'MTQ', 'MRT', 'MUS', 'MYT', 'MEX', 'FSM', 'MDA', 'MCO', 'MNG', 'MNE', 'MSR', 'MAR', 'MOZ', 'MMR', 'NAM', 'NRU', 'NPL', 'NLD', 'NCL', 'NZL', 'NIC', 'NER', 'NGA', 'NIU', 'NFK', 'MNP', 'NOR', 'OMN', 'PAK', 'PLW', 'PSE', 'PAN', 'PNG', 'PRY', 'PER', 'PHL', 'PCN', 'POL', 'PRT', 'PRI', 'QAT', 'REU', 'ROU', 'RUS', 'RWA', 'BLM', 'SHN', 'KNA', 'LCA', 'MAF', 'SPM', 'VCT', 'WSM', 'SMR', 'STP', 'SAU', 'SEN', 'SRB', 'SYC', 'SLE', 'SGP', 'SXM', 'SVK', 'SVN', 'SLB', 'SOM', 'ZAF', 'SGS', 'SSD', 'ESP', 'LKA', 'SDN', 'SUR', 'SJM', 'SWZ', 'SWE', 'CHE', 'SYR', 'TWN', 'TJK', 'TZA', 'THA', 'TLS', 'TGO', 'TKL', 'TON', 'TTO', 'TUN', 'TUR', 'TKM', 'TCA', 'TUV', 'UGA', 'UKR', 'ARE', 'GBR', 'USA', 'UMI', 'URY', 'UZB', 'VUT', 'VEN', 'VNM', 'VGB', 'VIR', 'WLF', 'ESH', 'YEM', 'ZMB', 'ZWE'];
5524
5389
 
5525
5390
  function isISO31661Alpha3(str) {
5526
- (0, _assertString2.default)(str);
5527
- return (0, _includes2.default)(validISO31661Alpha3CountriesCodes, str.toUpperCase());
5391
+ (0, _assertString.default)(str);
5392
+ return (0, _includes.default)(validISO31661Alpha3CountriesCodes, str.toUpperCase());
5528
5393
  }
5529
- module.exports = exports['default'];
5530
- },{"./util/assertString":127,"./util/includes":128}],89:[function(require,module,exports){
5531
- 'use strict';
5394
+
5395
+ module.exports = exports.default;
5396
+ },{"./util/assertString":128,"./util/includes":129}],89:[function(require,module,exports){
5397
+ "use strict";
5532
5398
 
5533
5399
  Object.defineProperty(exports, "__esModule", {
5534
5400
  value: true
5535
5401
  });
5536
5402
  exports.default = isISO8601;
5537
5403
 
5538
- var _assertString = require('./util/assertString');
5539
-
5540
- var _assertString2 = _interopRequireDefault(_assertString);
5404
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5541
5405
 
5542
5406
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5543
5407
 
5544
5408
  /* eslint-disable max-len */
5545
5409
  // from http://goo.gl/0ejHHW
5546
- var iso8601 = /^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;
5410
+ var iso8601 = /^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;
5547
5411
  /* eslint-enable max-len */
5548
5412
 
5549
- function isISO8601(str) {
5550
- (0, _assertString2.default)(str);
5551
- return iso8601.test(str);
5413
+ var isValidDate = function isValidDate(str) {
5414
+ // str must have passed the ISO8601 check
5415
+ // this check is meant to catch invalid dates
5416
+ // like 2009-02-31
5417
+ // first check for ordinal dates
5418
+ var ordinalMatch = str.match(/^(\d{4})-?(\d{3})([ T]{1}\.*|$)/);
5419
+
5420
+ if (ordinalMatch) {
5421
+ var oYear = Number(ordinalMatch[1]);
5422
+ var oDay = Number(ordinalMatch[2]); // if is leap year
5423
+
5424
+ if (oYear % 4 === 0 && oYear % 100 !== 0) return oDay <= 366;
5425
+ return oDay <= 365;
5426
+ }
5427
+
5428
+ var match = str.match(/(\d{4})-?(\d{0,2})-?(\d*)/).map(Number);
5429
+ var year = match[1];
5430
+ var month = match[2];
5431
+ var day = match[3]; // create a date object and compare
5432
+
5433
+ var d = new Date("".concat(year, "-").concat(month || 1, "-").concat(day || 1));
5434
+ if (isNaN(d.getFullYear())) return false;
5435
+
5436
+ if (month && day) {
5437
+ return d.getFullYear() === year && d.getMonth() + 1 === month && d.getDate() === day;
5438
+ }
5439
+
5440
+ return true;
5441
+ };
5442
+
5443
+ function isISO8601(str, options) {
5444
+ (0, _assertString.default)(str);
5445
+ var check = iso8601.test(str);
5446
+ if (!options) return check;
5447
+ if (check && options.strict) return isValidDate(str);
5448
+ return check;
5552
5449
  }
5553
- module.exports = exports['default'];
5554
- },{"./util/assertString":127}],90:[function(require,module,exports){
5555
- 'use strict';
5450
+
5451
+ module.exports = exports.default;
5452
+ },{"./util/assertString":128}],90:[function(require,module,exports){
5453
+ "use strict";
5556
5454
 
5557
5455
  Object.defineProperty(exports, "__esModule", {
5558
5456
  value: true
5559
5457
  });
5560
5458
  exports.default = isISRC;
5561
5459
 
5562
- var _assertString = require('./util/assertString');
5563
-
5564
- var _assertString2 = _interopRequireDefault(_assertString);
5460
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5565
5461
 
5566
5462
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5567
5463
 
@@ -5569,21 +5465,20 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
5569
5465
  var isrc = /^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/;
5570
5466
 
5571
5467
  function isISRC(str) {
5572
- (0, _assertString2.default)(str);
5468
+ (0, _assertString.default)(str);
5573
5469
  return isrc.test(str);
5574
5470
  }
5575
- module.exports = exports['default'];
5576
- },{"./util/assertString":127}],91:[function(require,module,exports){
5577
- 'use strict';
5471
+
5472
+ module.exports = exports.default;
5473
+ },{"./util/assertString":128}],91:[function(require,module,exports){
5474
+ "use strict";
5578
5475
 
5579
5476
  Object.defineProperty(exports, "__esModule", {
5580
5477
  value: true
5581
5478
  });
5582
5479
  exports.default = isISSN;
5583
5480
 
5584
- var _assertString = require('./util/assertString');
5585
-
5586
- var _assertString2 = _interopRequireDefault(_assertString);
5481
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5587
5482
 
5588
5483
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5589
5484
 
@@ -5591,74 +5486,137 @@ var issn = '^\\d{4}-?\\d{3}[\\dX]$';
5591
5486
 
5592
5487
  function isISSN(str) {
5593
5488
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
5594
-
5595
- (0, _assertString2.default)(str);
5489
+ (0, _assertString.default)(str);
5596
5490
  var testIssn = issn;
5597
5491
  testIssn = options.require_hyphen ? testIssn.replace('?', '') : testIssn;
5598
5492
  testIssn = options.case_sensitive ? new RegExp(testIssn) : new RegExp(testIssn, 'i');
5493
+
5599
5494
  if (!testIssn.test(str)) {
5600
5495
  return false;
5601
5496
  }
5497
+
5602
5498
  var digits = str.replace('-', '').toUpperCase();
5603
5499
  var checksum = 0;
5500
+
5604
5501
  for (var i = 0; i < digits.length; i++) {
5605
5502
  var digit = digits[i];
5606
5503
  checksum += (digit === 'X' ? 10 : +digit) * (8 - i);
5607
5504
  }
5505
+
5608
5506
  return checksum % 11 === 0;
5609
5507
  }
5610
- module.exports = exports['default'];
5611
- },{"./util/assertString":127}],92:[function(require,module,exports){
5612
- 'use strict';
5508
+
5509
+ module.exports = exports.default;
5510
+ },{"./util/assertString":128}],92:[function(require,module,exports){
5511
+ "use strict";
5613
5512
 
5614
5513
  Object.defineProperty(exports, "__esModule", {
5615
5514
  value: true
5616
5515
  });
5516
+ exports.default = isIdentityCard;
5617
5517
 
5618
- 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; };
5518
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5619
5519
 
5620
- exports.default = isIn;
5520
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5521
+
5522
+ var validators = {
5523
+ ES: function ES(str) {
5524
+ (0, _assertString.default)(str);
5525
+ var DNI = /^[0-9X-Z][0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKE]$/;
5526
+ var charsValue = {
5527
+ X: 0,
5528
+ Y: 1,
5529
+ Z: 2
5530
+ };
5531
+ var controlDigits = ['T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E']; // sanitize user input
5532
+
5533
+ var sanitized = str.trim().toUpperCase(); // validate the data structure
5534
+
5535
+ if (!DNI.test(sanitized)) {
5536
+ return false;
5537
+ } // validate the control digit
5538
+
5539
+
5540
+ var number = sanitized.slice(0, -1).replace(/[X,Y,Z]/g, function (char) {
5541
+ return charsValue[char];
5542
+ });
5543
+ return sanitized.endsWith(controlDigits[number % 23]);
5544
+ }
5545
+ };
5621
5546
 
5622
- var _assertString = require('./util/assertString');
5547
+ function isIdentityCard(str) {
5548
+ var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'any';
5549
+ (0, _assertString.default)(str);
5623
5550
 
5624
- var _assertString2 = _interopRequireDefault(_assertString);
5551
+ if (locale in validators) {
5552
+ return validators[locale](str);
5553
+ } else if (locale === 'any') {
5554
+ for (var key in validators) {
5555
+ if (validators.hasOwnProperty(key)) {
5556
+ var validator = validators[key];
5557
+
5558
+ if (validator(str)) {
5559
+ return true;
5560
+ }
5561
+ }
5562
+ }
5563
+
5564
+ return false;
5565
+ }
5566
+
5567
+ throw new Error("Invalid locale '".concat(locale, "'"));
5568
+ }
5569
+
5570
+ module.exports = exports.default;
5571
+ },{"./util/assertString":128}],93:[function(require,module,exports){
5572
+ "use strict";
5573
+
5574
+ Object.defineProperty(exports, "__esModule", {
5575
+ value: true
5576
+ });
5577
+ exports.default = isIn;
5625
5578
 
5626
- var _toString = require('./util/toString');
5579
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5627
5580
 
5628
- var _toString2 = _interopRequireDefault(_toString);
5581
+ var _toString = _interopRequireDefault(require("./util/toString"));
5629
5582
 
5630
5583
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5631
5584
 
5585
+ 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); }
5586
+
5632
5587
  function isIn(str, options) {
5633
- (0, _assertString2.default)(str);
5634
- var i = void 0;
5588
+ (0, _assertString.default)(str);
5589
+ var i;
5590
+
5635
5591
  if (Object.prototype.toString.call(options) === '[object Array]') {
5636
5592
  var array = [];
5593
+
5637
5594
  for (i in options) {
5638
5595
  if ({}.hasOwnProperty.call(options, i)) {
5639
- array[i] = (0, _toString2.default)(options[i]);
5596
+ array[i] = (0, _toString.default)(options[i]);
5640
5597
  }
5641
5598
  }
5599
+
5642
5600
  return array.indexOf(str) >= 0;
5643
- } else if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) === 'object') {
5601
+ } else if (_typeof(options) === 'object') {
5644
5602
  return options.hasOwnProperty(str);
5645
5603
  } else if (options && typeof options.indexOf === 'function') {
5646
5604
  return options.indexOf(str) >= 0;
5647
5605
  }
5606
+
5648
5607
  return false;
5649
5608
  }
5650
- module.exports = exports['default'];
5651
- },{"./util/assertString":127,"./util/toString":130}],93:[function(require,module,exports){
5652
- 'use strict';
5609
+
5610
+ module.exports = exports.default;
5611
+ },{"./util/assertString":128,"./util/toString":131}],94:[function(require,module,exports){
5612
+ "use strict";
5653
5613
 
5654
5614
  Object.defineProperty(exports, "__esModule", {
5655
5615
  value: true
5656
5616
  });
5657
5617
  exports.default = isInt;
5658
5618
 
5659
- var _assertString = require('./util/assertString');
5660
-
5661
- var _assertString2 = _interopRequireDefault(_assertString);
5619
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5662
5620
 
5663
5621
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5664
5622
 
@@ -5666,116 +5624,112 @@ var int = /^(?:[-+]?(?:0|[1-9][0-9]*))$/;
5666
5624
  var intLeadingZeroes = /^[-+]?[0-9]+$/;
5667
5625
 
5668
5626
  function isInt(str, options) {
5669
- (0, _assertString2.default)(str);
5670
- options = options || {};
5671
-
5672
- // Get the regex to use for testing, based on whether
5627
+ (0, _assertString.default)(str);
5628
+ options = options || {}; // Get the regex to use for testing, based on whether
5673
5629
  // leading zeroes are allowed or not.
5674
- var regex = options.hasOwnProperty('allow_leading_zeroes') && !options.allow_leading_zeroes ? int : intLeadingZeroes;
5675
5630
 
5676
- // Check min/max/lt/gt
5631
+ var regex = options.hasOwnProperty('allow_leading_zeroes') && !options.allow_leading_zeroes ? int : intLeadingZeroes; // Check min/max/lt/gt
5632
+
5677
5633
  var minCheckPassed = !options.hasOwnProperty('min') || str >= options.min;
5678
5634
  var maxCheckPassed = !options.hasOwnProperty('max') || str <= options.max;
5679
5635
  var ltCheckPassed = !options.hasOwnProperty('lt') || str < options.lt;
5680
5636
  var gtCheckPassed = !options.hasOwnProperty('gt') || str > options.gt;
5681
-
5682
5637
  return regex.test(str) && minCheckPassed && maxCheckPassed && ltCheckPassed && gtCheckPassed;
5683
5638
  }
5684
- module.exports = exports['default'];
5685
- },{"./util/assertString":127}],94:[function(require,module,exports){
5686
- 'use strict';
5639
+
5640
+ module.exports = exports.default;
5641
+ },{"./util/assertString":128}],95:[function(require,module,exports){
5642
+ "use strict";
5687
5643
 
5688
5644
  Object.defineProperty(exports, "__esModule", {
5689
5645
  value: true
5690
5646
  });
5691
-
5692
- 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; };
5693
-
5694
5647
  exports.default = isJSON;
5695
5648
 
5696
- var _assertString = require('./util/assertString');
5697
-
5698
- var _assertString2 = _interopRequireDefault(_assertString);
5649
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5699
5650
 
5700
5651
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5701
5652
 
5653
+ 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); }
5654
+
5702
5655
  function isJSON(str) {
5703
- (0, _assertString2.default)(str);
5656
+ (0, _assertString.default)(str);
5657
+
5704
5658
  try {
5705
5659
  var obj = JSON.parse(str);
5706
- return !!obj && (typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object';
5707
- } catch (e) {/* ignore */}
5660
+ return !!obj && _typeof(obj) === 'object';
5661
+ } catch (e) {
5662
+ /* ignore */
5663
+ }
5664
+
5708
5665
  return false;
5709
5666
  }
5710
- module.exports = exports['default'];
5711
- },{"./util/assertString":127}],95:[function(require,module,exports){
5712
- 'use strict';
5667
+
5668
+ module.exports = exports.default;
5669
+ },{"./util/assertString":128}],96:[function(require,module,exports){
5670
+ "use strict";
5713
5671
 
5714
5672
  Object.defineProperty(exports, "__esModule", {
5715
5673
  value: true
5716
5674
  });
5717
5675
  exports.default = isJWT;
5718
5676
 
5719
- var _assertString = require('./util/assertString');
5720
-
5721
- var _assertString2 = _interopRequireDefault(_assertString);
5677
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5722
5678
 
5723
5679
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5724
5680
 
5725
- var jwt = /^[a-zA-Z0-9\-_]+\.[a-zA-Z0-9\-_]+\.[a-zA-Z0-9\-_]+$/;
5681
+ var jwt = /^([A-Za-z0-9\-_~+\/]+[=]{0,2})\.([A-Za-z0-9\-_~+\/]+[=]{0,2})(?:\.([A-Za-z0-9\-_~+\/]+[=]{0,2}))?$/;
5726
5682
 
5727
5683
  function isJWT(str) {
5728
- (0, _assertString2.default)(str);
5684
+ (0, _assertString.default)(str);
5729
5685
  return jwt.test(str);
5730
5686
  }
5731
- module.exports = exports['default'];
5732
- },{"./util/assertString":127}],96:[function(require,module,exports){
5733
- 'use strict';
5687
+
5688
+ module.exports = exports.default;
5689
+ },{"./util/assertString":128}],97:[function(require,module,exports){
5690
+ "use strict";
5734
5691
 
5735
5692
  Object.defineProperty(exports, "__esModule", {
5736
5693
  value: true
5737
5694
  });
5695
+ exports.default = _default;
5738
5696
 
5739
- exports.default = function (str) {
5740
- (0, _assertString2.default)(str);
5741
- if (!str.includes(',')) return false;
5742
- var pair = str.split(',');
5743
- return lat.test(pair[0]) && long.test(pair[1]);
5744
- };
5745
-
5746
- var _assertString = require('./util/assertString');
5747
-
5748
- var _assertString2 = _interopRequireDefault(_assertString);
5697
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5749
5698
 
5750
5699
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5751
5700
 
5752
5701
  var lat = /^\(?[+-]?(90(\.0+)?|[1-8]?\d(\.\d+)?)$/;
5753
5702
  var long = /^\s?[+-]?(180(\.0+)?|1[0-7]\d(\.\d+)?|\d{1,2}(\.\d+)?)\)?$/;
5754
5703
 
5755
- module.exports = exports['default'];
5756
- },{"./util/assertString":127}],97:[function(require,module,exports){
5757
- 'use strict';
5704
+ function _default(str) {
5705
+ (0, _assertString.default)(str);
5706
+ if (!str.includes(',')) return false;
5707
+ var pair = str.split(',');
5708
+ return lat.test(pair[0]) && long.test(pair[1]);
5709
+ }
5710
+
5711
+ module.exports = exports.default;
5712
+ },{"./util/assertString":128}],98:[function(require,module,exports){
5713
+ "use strict";
5758
5714
 
5759
5715
  Object.defineProperty(exports, "__esModule", {
5760
5716
  value: true
5761
5717
  });
5762
-
5763
- 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; };
5764
-
5765
5718
  exports.default = isLength;
5766
5719
 
5767
- var _assertString = require('./util/assertString');
5768
-
5769
- var _assertString2 = _interopRequireDefault(_assertString);
5720
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5770
5721
 
5771
5722
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5772
5723
 
5724
+ 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); }
5725
+
5773
5726
  /* eslint-disable prefer-rest-params */
5774
5727
  function isLength(str, options) {
5775
- (0, _assertString2.default)(str);
5776
- var min = void 0;
5777
- var max = void 0;
5778
- if ((typeof options === 'undefined' ? 'undefined' : _typeof(options)) === 'object') {
5728
+ (0, _assertString.default)(str);
5729
+ var min;
5730
+ var max;
5731
+
5732
+ if (_typeof(options) === 'object') {
5779
5733
  min = options.min || 0;
5780
5734
  max = options.max;
5781
5735
  } else {
@@ -5783,41 +5737,40 @@ function isLength(str, options) {
5783
5737
  min = arguments[1];
5784
5738
  max = arguments[2];
5785
5739
  }
5740
+
5786
5741
  var surrogatePairs = str.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g) || [];
5787
5742
  var len = str.length - surrogatePairs.length;
5788
5743
  return len >= min && (typeof max === 'undefined' || len <= max);
5789
5744
  }
5790
- module.exports = exports['default'];
5791
- },{"./util/assertString":127}],98:[function(require,module,exports){
5792
- 'use strict';
5745
+
5746
+ module.exports = exports.default;
5747
+ },{"./util/assertString":128}],99:[function(require,module,exports){
5748
+ "use strict";
5793
5749
 
5794
5750
  Object.defineProperty(exports, "__esModule", {
5795
5751
  value: true
5796
5752
  });
5797
5753
  exports.default = isLowercase;
5798
5754
 
5799
- var _assertString = require('./util/assertString');
5800
-
5801
- var _assertString2 = _interopRequireDefault(_assertString);
5755
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5802
5756
 
5803
5757
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5804
5758
 
5805
5759
  function isLowercase(str) {
5806
- (0, _assertString2.default)(str);
5760
+ (0, _assertString.default)(str);
5807
5761
  return str === str.toLowerCase();
5808
5762
  }
5809
- module.exports = exports['default'];
5810
- },{"./util/assertString":127}],99:[function(require,module,exports){
5811
- 'use strict';
5763
+
5764
+ module.exports = exports.default;
5765
+ },{"./util/assertString":128}],100:[function(require,module,exports){
5766
+ "use strict";
5812
5767
 
5813
5768
  Object.defineProperty(exports, "__esModule", {
5814
5769
  value: true
5815
5770
  });
5816
5771
  exports.default = isMACAddress;
5817
5772
 
5818
- var _assertString = require('./util/assertString');
5819
-
5820
- var _assertString2 = _interopRequireDefault(_assertString);
5773
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5821
5774
 
5822
5775
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5823
5776
 
@@ -5825,66 +5778,65 @@ var macAddress = /^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$/;
5825
5778
  var macAddressNoColons = /^([0-9a-fA-F]){12}$/;
5826
5779
 
5827
5780
  function isMACAddress(str, options) {
5828
- (0, _assertString2.default)(str);
5781
+ (0, _assertString.default)(str);
5782
+
5829
5783
  if (options && options.no_colons) {
5830
5784
  return macAddressNoColons.test(str);
5831
5785
  }
5786
+
5832
5787
  return macAddress.test(str);
5833
5788
  }
5834
- module.exports = exports['default'];
5835
- },{"./util/assertString":127}],100:[function(require,module,exports){
5836
- 'use strict';
5789
+
5790
+ module.exports = exports.default;
5791
+ },{"./util/assertString":128}],101:[function(require,module,exports){
5792
+ "use strict";
5837
5793
 
5838
5794
  Object.defineProperty(exports, "__esModule", {
5839
5795
  value: true
5840
5796
  });
5841
5797
  exports.default = isMD5;
5842
5798
 
5843
- var _assertString = require('./util/assertString');
5844
-
5845
- var _assertString2 = _interopRequireDefault(_assertString);
5799
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5846
5800
 
5847
5801
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5848
5802
 
5849
5803
  var md5 = /^[a-f0-9]{32}$/;
5850
5804
 
5851
5805
  function isMD5(str) {
5852
- (0, _assertString2.default)(str);
5806
+ (0, _assertString.default)(str);
5853
5807
  return md5.test(str);
5854
5808
  }
5855
- module.exports = exports['default'];
5856
- },{"./util/assertString":127}],101:[function(require,module,exports){
5857
- 'use strict';
5809
+
5810
+ module.exports = exports.default;
5811
+ },{"./util/assertString":128}],102:[function(require,module,exports){
5812
+ "use strict";
5858
5813
 
5859
5814
  Object.defineProperty(exports, "__esModule", {
5860
5815
  value: true
5861
5816
  });
5862
5817
  exports.default = isMagnetURI;
5863
5818
 
5864
- var _assertString = require('./util/assertString');
5865
-
5866
- var _assertString2 = _interopRequireDefault(_assertString);
5819
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5867
5820
 
5868
5821
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5869
5822
 
5870
5823
  var magnetURI = /^magnet:\?xt=urn:[a-z0-9]+:[a-z0-9]{32,40}&dn=.+&tr=.+$/i;
5871
5824
 
5872
5825
  function isMagnetURI(url) {
5873
- (0, _assertString2.default)(url);
5826
+ (0, _assertString.default)(url);
5874
5827
  return magnetURI.test(url.trim());
5875
5828
  }
5876
- module.exports = exports['default'];
5877
- },{"./util/assertString":127}],102:[function(require,module,exports){
5878
- 'use strict';
5829
+
5830
+ module.exports = exports.default;
5831
+ },{"./util/assertString":128}],103:[function(require,module,exports){
5832
+ "use strict";
5879
5833
 
5880
5834
  Object.defineProperty(exports, "__esModule", {
5881
5835
  value: true
5882
5836
  });
5883
5837
  exports.default = isMimeType;
5884
5838
 
5885
- var _assertString = require('./util/assertString');
5886
-
5887
- var _assertString2 = _interopRequireDefault(_assertString);
5839
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5888
5840
 
5889
5841
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5890
5842
 
@@ -5909,35 +5861,34 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
5909
5861
  - https://tools.ietf.org/html/rfc7231#section-3.1.1.1
5910
5862
  - https://tools.ietf.org/html/rfc7231#section-3.1.1.5
5911
5863
  */
5912
-
5913
5864
  // Match simple MIME types
5914
5865
  // NB :
5915
5866
  // Subtype length must not exceed 100 characters.
5916
5867
  // This rule does not comply to the RFC specs (what is the max length ?).
5917
5868
  var mimeTypeSimple = /^(application|audio|font|image|message|model|multipart|text|video)\/[a-zA-Z0-9\.\-\+]{1,100}$/i; // eslint-disable-line max-len
5918
-
5919
5869
  // Handle "charset" in "text/*"
5920
- var mimeTypeText = /^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i; // eslint-disable-line max-len
5921
5870
 
5871
+ var mimeTypeText = /^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i; // eslint-disable-line max-len
5922
5872
  // Handle "boundary" in "multipart/*"
5873
+
5923
5874
  var mimeTypeMultipart = /^multipart\/[a-zA-Z0-9\.\-\+]{1,100}(;\s?(boundary|charset)=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?){0,2}$/i; // eslint-disable-line max-len
5924
5875
 
5925
5876
  function isMimeType(str) {
5926
- (0, _assertString2.default)(str);
5877
+ (0, _assertString.default)(str);
5927
5878
  return mimeTypeSimple.test(str) || mimeTypeText.test(str) || mimeTypeMultipart.test(str);
5928
5879
  }
5929
- module.exports = exports['default'];
5930
- },{"./util/assertString":127}],103:[function(require,module,exports){
5931
- 'use strict';
5880
+
5881
+ module.exports = exports.default;
5882
+ },{"./util/assertString":128}],104:[function(require,module,exports){
5883
+ "use strict";
5932
5884
 
5933
5885
  Object.defineProperty(exports, "__esModule", {
5934
5886
  value: true
5935
5887
  });
5936
5888
  exports.default = isMobilePhone;
5889
+ exports.locales = void 0;
5937
5890
 
5938
- var _assertString = require('./util/assertString');
5939
-
5940
- var _assertString2 = _interopRequireDefault(_assertString);
5891
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
5941
5892
 
5942
5893
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5943
5894
 
@@ -5954,16 +5905,18 @@ var phones = {
5954
5905
  'ar-TN': /^(\+?216)?[2459]\d{7}$/,
5955
5906
  'be-BY': /^(\+?375)?(24|25|29|33|44)\d{7}$/,
5956
5907
  'bg-BG': /^(\+?359|0)?8[789]\d{7}$/,
5957
- 'bn-BD': /\+?(88)?0?1[156789][0-9]{8}\b/,
5908
+ 'bn-BD': /\+?(88)?0?1[356789][0-9]{8}\b/,
5958
5909
  'cs-CZ': /^(\+?420)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/,
5959
5910
  'da-DK': /^(\+?45)?\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2}$/,
5960
5911
  'de-DE': /^(\+?49[ \.\-]?)?([\(]{1}[0-9]{1,6}[\)])?([0-9 \.\-\/]{3,20})((x|ext|extension)[ ]?[0-9]{1,4})?$/,
5961
5912
  'el-GR': /^(\+?30|0)?(69\d{8})$/,
5962
5913
  'en-AU': /^(\+?61|0)4\d{8}$/,
5963
5914
  'en-GB': /^(\+?44|0)7\d{9}$/,
5915
+ 'en-GH': /^(\+233|0)(20|50|24|54|27|57|26|56|23|28)\d{7}$/,
5964
5916
  'en-HK': /^(\+?852\-?)?[456789]\d{3}\-?\d{4}$/,
5965
5917
  'en-IN': /^(\+?91|0)?[6789]\d{9}$/,
5966
5918
  'en-KE': /^(\+?254|0)?[7]\d{8}$/,
5919
+ 'en-MU': /^(\+?230|0)?\d{8}$/,
5967
5920
  'en-NG': /^(\+?234|0)?[789]\d{9}$/,
5968
5921
  'en-NZ': /^(\+?64|0)[28]\d{7,9}$/,
5969
5922
  'en-PK': /^((\+92)|(0092))-{0,1}\d{3}-{0,1}\d{7}$|^\d{11}$|^\d{4}-\d{7}$/,
@@ -5976,6 +5929,7 @@ var phones = {
5976
5929
  'en-ZM': /^(\+?26)?09[567]\d{7}$/,
5977
5930
  'es-ES': /^(\+?34)?(6\d{1}|7[1234])\d{7}$/,
5978
5931
  'es-MX': /^(\+?52)?(1|01)?\d{10,11}$/,
5932
+ 'es-UY': /^(\+598|0)9[1-9][\d]{6}$/,
5979
5933
  'et-EE': /^(\+?372)?\s?(5|8[1-4])\s?([0-9]\s?){6,7}$/,
5980
5934
  'fa-IR': /^(\+?98[\-\s]?|0)9[0-39]\d[\-\s]?\d{3}[\-\s]?\d{4}$/,
5981
5935
  'fi-FI': /^(\+?358|0)\s?(4(0|1|2|4|5|6)?|50)\s?(\d\s?){4,8}\d$/,
@@ -5983,7 +5937,7 @@ var phones = {
5983
5937
  'fr-FR': /^(\+?33|0)[67]\d{8}$/,
5984
5938
  'he-IL': /^(\+972|0)([23489]|5[012345689]|77)[1-9]\d{6}$/,
5985
5939
  'hu-HU': /^(\+?36)(20|30|70)\d{7}$/,
5986
- 'id-ID': /^(\+?62|0)(0?8?\d\d\s?\d?)([\s?|\d]{7,12})$/,
5940
+ 'id-ID': /^(\+?62|0)8(1[123456789]|2[1238]|3[1238]|5[12356789]|7[78]|9[56789]|8[123456789])([\s?|\d]{5,11})$/,
5987
5941
  'it-IT': /^(\+?39)?\s?3\d{2} ?\d{6,7}$/,
5988
5942
  'ja-JP': /^(\+?81|0)[789]0[ \-]?[1-9]\d{2}[ \-]?\d{5}$/,
5989
5943
  'kk-KZ': /^(\+?7|8)?7\d{9}$/,
@@ -5999,89 +5953,93 @@ var phones = {
5999
5953
  'pt-PT': /^(\+?351)?9[1236]\d{7}$/,
6000
5954
  'ro-RO': /^(\+?4?0)\s?7\d{2}(\/|\s|\.|\-)?\d{3}(\s|\.|\-)?\d{3}$/,
6001
5955
  'ru-RU': /^(\+?7|8)?9\d{9}$/,
5956
+ 'sl-SI': /^(\+386\s?|0)(\d{1}\s?\d{3}\s?\d{2}\s?\d{2}|\d{2}\s?\d{3}\s?\d{3})$/,
6002
5957
  'sk-SK': /^(\+?421)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/,
6003
5958
  'sr-RS': /^(\+3816|06)[- \d]{5,9}$/,
6004
5959
  'sv-SE': /^(\+?46|0)[\s\-]?7[\s\-]?[02369]([\s\-]?\d){7}$/,
6005
5960
  'th-TH': /^(\+66|66|0)\d{9}$/,
6006
5961
  'tr-TR': /^(\+?90|0)?5\d{9}$/,
6007
5962
  'uk-UA': /^(\+?38|8)?0\d{9}$/,
6008
- 'vi-VN': /^(\+?84|0)?((1(2([0-9])|6([2-9])|88|99))|(9((?!5)[0-9])))([0-9]{7})$/,
5963
+ 'vi-VN': /^(\+?84|0)((3([2-9]))|(5([689]))|(7([0|6-9]))|(8([1-5]))|(9([0-9])))([0-9]{7})$/,
6009
5964
  'zh-CN': /^((\+|00)86)?1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$/,
6010
5965
  'zh-TW': /^(\+?886\-?|0)?9\d{8}$/
6011
5966
  };
6012
5967
  /* eslint-enable max-len */
6013
-
6014
5968
  // aliases
5969
+
6015
5970
  phones['en-CA'] = phones['en-US'];
6016
5971
  phones['fr-BE'] = phones['nl-BE'];
6017
5972
  phones['zh-HK'] = phones['en-HK'];
6018
5973
 
6019
5974
  function isMobilePhone(str, locale, options) {
6020
- (0, _assertString2.default)(str);
5975
+ (0, _assertString.default)(str);
5976
+
6021
5977
  if (options && options.strictMode && !str.startsWith('+')) {
6022
5978
  return false;
6023
5979
  }
5980
+
6024
5981
  if (Array.isArray(locale)) {
6025
5982
  return locale.some(function (key) {
6026
5983
  if (phones.hasOwnProperty(key)) {
6027
5984
  var phone = phones[key];
5985
+
6028
5986
  if (phone.test(str)) {
6029
5987
  return true;
6030
5988
  }
6031
5989
  }
5990
+
6032
5991
  return false;
6033
5992
  });
6034
5993
  } else if (locale in phones) {
6035
- return phones[locale].test(str);
6036
- // alias falsey locale as 'any'
5994
+ return phones[locale].test(str); // alias falsey locale as 'any'
6037
5995
  } else if (!locale || locale === 'any') {
6038
5996
  for (var key in phones) {
6039
5997
  if (phones.hasOwnProperty(key)) {
6040
5998
  var phone = phones[key];
5999
+
6041
6000
  if (phone.test(str)) {
6042
6001
  return true;
6043
6002
  }
6044
6003
  }
6045
6004
  }
6005
+
6046
6006
  return false;
6047
6007
  }
6048
- throw new Error('Invalid locale \'' + locale + '\'');
6008
+
6009
+ throw new Error("Invalid locale '".concat(locale, "'"));
6049
6010
  }
6050
- module.exports = exports['default'];
6051
- },{"./util/assertString":127}],104:[function(require,module,exports){
6052
- 'use strict';
6011
+
6012
+ var locales = Object.keys(phones);
6013
+ exports.locales = locales;
6014
+ },{"./util/assertString":128}],105:[function(require,module,exports){
6015
+ "use strict";
6053
6016
 
6054
6017
  Object.defineProperty(exports, "__esModule", {
6055
6018
  value: true
6056
6019
  });
6057
6020
  exports.default = isMongoId;
6058
6021
 
6059
- var _assertString = require('./util/assertString');
6022
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6060
6023
 
6061
- var _assertString2 = _interopRequireDefault(_assertString);
6062
-
6063
- var _isHexadecimal = require('./isHexadecimal');
6064
-
6065
- var _isHexadecimal2 = _interopRequireDefault(_isHexadecimal);
6024
+ var _isHexadecimal = _interopRequireDefault(require("./isHexadecimal"));
6066
6025
 
6067
6026
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6068
6027
 
6069
6028
  function isMongoId(str) {
6070
- (0, _assertString2.default)(str);
6071
- return (0, _isHexadecimal2.default)(str) && str.length === 24;
6029
+ (0, _assertString.default)(str);
6030
+ return (0, _isHexadecimal.default)(str) && str.length === 24;
6072
6031
  }
6073
- module.exports = exports['default'];
6074
- },{"./isHexadecimal":82,"./util/assertString":127}],105:[function(require,module,exports){
6075
- 'use strict';
6032
+
6033
+ module.exports = exports.default;
6034
+ },{"./isHexadecimal":82,"./util/assertString":128}],106:[function(require,module,exports){
6035
+ "use strict";
6076
6036
 
6077
6037
  Object.defineProperty(exports, "__esModule", {
6078
6038
  value: true
6079
6039
  });
6080
6040
  exports.default = isMultibyte;
6081
6041
 
6082
- var _assertString = require('./util/assertString');
6083
-
6084
- var _assertString2 = _interopRequireDefault(_assertString);
6042
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6085
6043
 
6086
6044
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6087
6045
 
@@ -6090,21 +6048,20 @@ var multibyte = /[^\x00-\x7F]/;
6090
6048
  /* eslint-enable no-control-regex */
6091
6049
 
6092
6050
  function isMultibyte(str) {
6093
- (0, _assertString2.default)(str);
6051
+ (0, _assertString.default)(str);
6094
6052
  return multibyte.test(str);
6095
6053
  }
6096
- module.exports = exports['default'];
6097
- },{"./util/assertString":127}],106:[function(require,module,exports){
6098
- 'use strict';
6054
+
6055
+ module.exports = exports.default;
6056
+ },{"./util/assertString":128}],107:[function(require,module,exports){
6057
+ "use strict";
6099
6058
 
6100
6059
  Object.defineProperty(exports, "__esModule", {
6101
6060
  value: true
6102
6061
  });
6103
6062
  exports.default = isNumeric;
6104
6063
 
6105
- var _assertString = require('./util/assertString');
6106
-
6107
- var _assertString2 = _interopRequireDefault(_assertString);
6064
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6108
6065
 
6109
6066
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6110
6067
 
@@ -6112,60 +6069,46 @@ var numeric = /^[+-]?([0-9]*[.])?[0-9]+$/;
6112
6069
  var numericNoSymbols = /^[0-9]+$/;
6113
6070
 
6114
6071
  function isNumeric(str, options) {
6115
- (0, _assertString2.default)(str);
6072
+ (0, _assertString.default)(str);
6073
+
6116
6074
  if (options && options.no_symbols) {
6117
6075
  return numericNoSymbols.test(str);
6118
6076
  }
6077
+
6119
6078
  return numeric.test(str);
6120
6079
  }
6121
- module.exports = exports['default'];
6122
- },{"./util/assertString":127}],107:[function(require,module,exports){
6123
- 'use strict';
6080
+
6081
+ module.exports = exports.default;
6082
+ },{"./util/assertString":128}],108:[function(require,module,exports){
6083
+ "use strict";
6124
6084
 
6125
6085
  Object.defineProperty(exports, "__esModule", {
6126
6086
  value: true
6127
6087
  });
6128
6088
  exports.default = isPort;
6129
6089
 
6130
- var _isInt = require('./isInt');
6131
-
6132
- var _isInt2 = _interopRequireDefault(_isInt);
6090
+ var _isInt = _interopRequireDefault(require("./isInt"));
6133
6091
 
6134
6092
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6135
6093
 
6136
6094
  function isPort(str) {
6137
- return (0, _isInt2.default)(str, { min: 0, max: 65535 });
6095
+ return (0, _isInt.default)(str, {
6096
+ min: 0,
6097
+ max: 65535
6098
+ });
6138
6099
  }
6139
- module.exports = exports['default'];
6140
- },{"./isInt":93}],108:[function(require,module,exports){
6141
- 'use strict';
6100
+
6101
+ module.exports = exports.default;
6102
+ },{"./isInt":94}],109:[function(require,module,exports){
6103
+ "use strict";
6142
6104
 
6143
6105
  Object.defineProperty(exports, "__esModule", {
6144
6106
  value: true
6145
6107
  });
6146
- exports.locales = undefined;
6147
-
6148
- exports.default = function (str, locale) {
6149
- (0, _assertString2.default)(str);
6150
- if (locale in patterns) {
6151
- return patterns[locale].test(str);
6152
- } else if (locale === 'any') {
6153
- for (var key in patterns) {
6154
- if (patterns.hasOwnProperty(key)) {
6155
- var pattern = patterns[key];
6156
- if (pattern.test(str)) {
6157
- return true;
6158
- }
6159
- }
6160
- }
6161
- return false;
6162
- }
6163
- throw new Error('Invalid locale \'' + locale + '\'');
6164
- };
6165
-
6166
- var _assertString = require('./util/assertString');
6108
+ exports.default = _default;
6109
+ exports.locales = void 0;
6167
6110
 
6168
- var _assertString2 = _interopRequireDefault(_assertString);
6111
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6169
6112
 
6170
6113
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6171
6114
 
@@ -6174,7 +6117,6 @@ var threeDigit = /^\d{3}$/;
6174
6117
  var fourDigit = /^\d{4}$/;
6175
6118
  var fiveDigit = /^\d{5}$/;
6176
6119
  var sixDigit = /^\d{6}$/;
6177
-
6178
6120
  var patterns = {
6179
6121
  AD: /^AD\d{3}$/,
6180
6122
  AT: fourDigit,
@@ -6222,92 +6164,98 @@ var patterns = {
6222
6164
  ZA: fourDigit,
6223
6165
  ZM: fiveDigit
6224
6166
  };
6167
+ var locales = Object.keys(patterns);
6168
+ exports.locales = locales;
6225
6169
 
6226
- var locales = exports.locales = Object.keys(patterns);
6227
- },{"./util/assertString":127}],109:[function(require,module,exports){
6228
- 'use strict';
6170
+ function _default(str, locale) {
6171
+ (0, _assertString.default)(str);
6172
+
6173
+ if (locale in patterns) {
6174
+ return patterns[locale].test(str);
6175
+ } else if (locale === 'any') {
6176
+ for (var key in patterns) {
6177
+ if (patterns.hasOwnProperty(key)) {
6178
+ var pattern = patterns[key];
6179
+
6180
+ if (pattern.test(str)) {
6181
+ return true;
6182
+ }
6183
+ }
6184
+ }
6185
+
6186
+ return false;
6187
+ }
6188
+
6189
+ throw new Error("Invalid locale '".concat(locale, "'"));
6190
+ }
6191
+ },{"./util/assertString":128}],110:[function(require,module,exports){
6192
+ "use strict";
6229
6193
 
6230
6194
  Object.defineProperty(exports, "__esModule", {
6231
6195
  value: true
6232
6196
  });
6233
6197
  exports.default = isRFC3339;
6234
6198
 
6235
- var _assertString = require('./util/assertString');
6236
-
6237
- var _assertString2 = _interopRequireDefault(_assertString);
6199
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6238
6200
 
6239
6201
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6240
6202
 
6241
6203
  /* Based on https://tools.ietf.org/html/rfc3339#section-5.6 */
6242
-
6243
6204
  var dateFullYear = /[0-9]{4}/;
6244
6205
  var dateMonth = /(0[1-9]|1[0-2])/;
6245
6206
  var dateMDay = /([12]\d|0[1-9]|3[01])/;
6246
-
6247
6207
  var timeHour = /([01][0-9]|2[0-3])/;
6248
6208
  var timeMinute = /[0-5][0-9]/;
6249
6209
  var timeSecond = /([0-5][0-9]|60)/;
6250
-
6251
6210
  var timeSecFrac = /(\.[0-9]+)?/;
6252
- var timeNumOffset = new RegExp('[-+]' + timeHour.source + ':' + timeMinute.source);
6253
- var timeOffset = new RegExp('([zZ]|' + timeNumOffset.source + ')');
6254
-
6255
- var partialTime = new RegExp(timeHour.source + ':' + timeMinute.source + ':' + timeSecond.source + timeSecFrac.source);
6256
-
6257
- var fullDate = new RegExp(dateFullYear.source + '-' + dateMonth.source + '-' + dateMDay.source);
6258
- var fullTime = new RegExp('' + partialTime.source + timeOffset.source);
6259
-
6260
- var rfc3339 = new RegExp(fullDate.source + '[ tT]' + fullTime.source);
6211
+ var timeNumOffset = new RegExp("[-+]".concat(timeHour.source, ":").concat(timeMinute.source));
6212
+ var timeOffset = new RegExp("([zZ]|".concat(timeNumOffset.source, ")"));
6213
+ var partialTime = new RegExp("".concat(timeHour.source, ":").concat(timeMinute.source, ":").concat(timeSecond.source).concat(timeSecFrac.source));
6214
+ var fullDate = new RegExp("".concat(dateFullYear.source, "-").concat(dateMonth.source, "-").concat(dateMDay.source));
6215
+ var fullTime = new RegExp("".concat(partialTime.source).concat(timeOffset.source));
6216
+ var rfc3339 = new RegExp("".concat(fullDate.source, "[ tT]").concat(fullTime.source));
6261
6217
 
6262
6218
  function isRFC3339(str) {
6263
- (0, _assertString2.default)(str);
6219
+ (0, _assertString.default)(str);
6264
6220
  return rfc3339.test(str);
6265
6221
  }
6266
- module.exports = exports['default'];
6267
- },{"./util/assertString":127}],110:[function(require,module,exports){
6268
- 'use strict';
6222
+
6223
+ module.exports = exports.default;
6224
+ },{"./util/assertString":128}],111:[function(require,module,exports){
6225
+ "use strict";
6269
6226
 
6270
6227
  Object.defineProperty(exports, "__esModule", {
6271
6228
  value: true
6272
6229
  });
6273
6230
  exports.default = isSurrogatePair;
6274
6231
 
6275
- var _assertString = require('./util/assertString');
6276
-
6277
- var _assertString2 = _interopRequireDefault(_assertString);
6232
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6278
6233
 
6279
6234
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6280
6235
 
6281
6236
  var surrogatePair = /[\uD800-\uDBFF][\uDC00-\uDFFF]/;
6282
6237
 
6283
6238
  function isSurrogatePair(str) {
6284
- (0, _assertString2.default)(str);
6239
+ (0, _assertString.default)(str);
6285
6240
  return surrogatePair.test(str);
6286
6241
  }
6287
- module.exports = exports['default'];
6288
- },{"./util/assertString":127}],111:[function(require,module,exports){
6289
- 'use strict';
6242
+
6243
+ module.exports = exports.default;
6244
+ },{"./util/assertString":128}],112:[function(require,module,exports){
6245
+ "use strict";
6290
6246
 
6291
6247
  Object.defineProperty(exports, "__esModule", {
6292
6248
  value: true
6293
6249
  });
6294
6250
  exports.default = isURL;
6295
6251
 
6296
- var _assertString = require('./util/assertString');
6297
-
6298
- var _assertString2 = _interopRequireDefault(_assertString);
6252
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6299
6253
 
6300
- var _isFQDN = require('./isFQDN');
6254
+ var _isFQDN = _interopRequireDefault(require("./isFQDN"));
6301
6255
 
6302
- var _isFQDN2 = _interopRequireDefault(_isFQDN);
6256
+ var _isIP = _interopRequireDefault(require("./isIP"));
6303
6257
 
6304
- var _isIP = require('./isIP');
6305
-
6306
- var _isIP2 = _interopRequireDefault(_isIP);
6307
-
6308
- var _merge = require('./util/merge');
6309
-
6310
- var _merge2 = _interopRequireDefault(_merge);
6258
+ var _merge = _interopRequireDefault(require("./util/merge"));
6311
6259
 
6312
6260
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6313
6261
 
@@ -6321,7 +6269,6 @@ var default_url_options = {
6321
6269
  allow_trailing_dot: false,
6322
6270
  allow_protocol_relative_urls: false
6323
6271
  };
6324
-
6325
6272
  var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
6326
6273
 
6327
6274
  function isRegExp(obj) {
@@ -6331,40 +6278,37 @@ function isRegExp(obj) {
6331
6278
  function checkHost(host, matches) {
6332
6279
  for (var i = 0; i < matches.length; i++) {
6333
6280
  var match = matches[i];
6281
+
6334
6282
  if (host === match || isRegExp(match) && match.test(host)) {
6335
6283
  return true;
6336
6284
  }
6337
6285
  }
6286
+
6338
6287
  return false;
6339
6288
  }
6340
6289
 
6341
6290
  function isURL(url, options) {
6342
- (0, _assertString2.default)(url);
6291
+ (0, _assertString.default)(url);
6292
+
6343
6293
  if (!url || url.length >= 2083 || /[\s<>]/.test(url)) {
6344
6294
  return false;
6345
6295
  }
6296
+
6346
6297
  if (url.indexOf('mailto:') === 0) {
6347
6298
  return false;
6348
6299
  }
6349
- options = (0, _merge2.default)(options, default_url_options);
6350
- var protocol = void 0,
6351
- auth = void 0,
6352
- host = void 0,
6353
- hostname = void 0,
6354
- port = void 0,
6355
- port_str = void 0,
6356
- split = void 0,
6357
- ipv6 = void 0;
6358
6300
 
6301
+ options = (0, _merge.default)(options, default_url_options);
6302
+ var protocol, auth, host, hostname, port, port_str, split, ipv6;
6359
6303
  split = url.split('#');
6360
6304
  url = split.shift();
6361
-
6362
6305
  split = url.split('?');
6363
6306
  url = split.shift();
6364
-
6365
6307
  split = url.split('://');
6308
+
6366
6309
  if (split.length > 1) {
6367
6310
  protocol = split.shift().toLowerCase();
6311
+
6368
6312
  if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
6369
6313
  return false;
6370
6314
  }
@@ -6374,8 +6318,10 @@ function isURL(url, options) {
6374
6318
  if (!options.allow_protocol_relative_urls) {
6375
6319
  return false;
6376
6320
  }
6321
+
6377
6322
  split[0] = url.substr(2);
6378
6323
  }
6324
+
6379
6325
  url = split.join('://');
6380
6326
 
6381
6327
  if (url === '') {
@@ -6390,17 +6336,24 @@ function isURL(url, options) {
6390
6336
  }
6391
6337
 
6392
6338
  split = url.split('@');
6339
+
6393
6340
  if (split.length > 1) {
6341
+ if (options.disallow_auth) {
6342
+ return false;
6343
+ }
6344
+
6394
6345
  auth = split.shift();
6346
+
6395
6347
  if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
6396
6348
  return false;
6397
6349
  }
6398
6350
  }
6399
- hostname = split.join('@');
6400
6351
 
6352
+ hostname = split.join('@');
6401
6353
  port_str = null;
6402
6354
  ipv6 = null;
6403
6355
  var ipv6_match = hostname.match(wrapped_ipv6);
6356
+
6404
6357
  if (ipv6_match) {
6405
6358
  host = '';
6406
6359
  ipv6 = ipv6_match[1];
@@ -6408,6 +6361,7 @@ function isURL(url, options) {
6408
6361
  } else {
6409
6362
  split = hostname.split(':');
6410
6363
  host = split.shift();
6364
+
6411
6365
  if (split.length) {
6412
6366
  port_str = split.join(':');
6413
6367
  }
@@ -6415,12 +6369,13 @@ function isURL(url, options) {
6415
6369
 
6416
6370
  if (port_str !== null) {
6417
6371
  port = parseInt(port_str, 10);
6372
+
6418
6373
  if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
6419
6374
  return false;
6420
6375
  }
6421
6376
  }
6422
6377
 
6423
- if (!(0, _isIP2.default)(host) && !(0, _isFQDN2.default)(host, options) && (!ipv6 || !(0, _isIP2.default)(ipv6, 6))) {
6378
+ if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
6424
6379
  return false;
6425
6380
  }
6426
6381
 
@@ -6429,24 +6384,24 @@ function isURL(url, options) {
6429
6384
  if (options.host_whitelist && !checkHost(host, options.host_whitelist)) {
6430
6385
  return false;
6431
6386
  }
6387
+
6432
6388
  if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
6433
6389
  return false;
6434
6390
  }
6435
6391
 
6436
6392
  return true;
6437
6393
  }
6438
- module.exports = exports['default'];
6439
- },{"./isFQDN":76,"./isIP":83,"./util/assertString":127,"./util/merge":129}],112:[function(require,module,exports){
6440
- 'use strict';
6394
+
6395
+ module.exports = exports.default;
6396
+ },{"./isFQDN":76,"./isIP":83,"./util/assertString":128,"./util/merge":130}],113:[function(require,module,exports){
6397
+ "use strict";
6441
6398
 
6442
6399
  Object.defineProperty(exports, "__esModule", {
6443
6400
  value: true
6444
6401
  });
6445
6402
  exports.default = isUUID;
6446
6403
 
6447
- var _assertString = require('./util/assertString');
6448
-
6449
- var _assertString2 = _interopRequireDefault(_assertString);
6404
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6450
6405
 
6451
6406
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6452
6407
 
@@ -6459,131 +6414,128 @@ var uuid = {
6459
6414
 
6460
6415
  function isUUID(str) {
6461
6416
  var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'all';
6462
-
6463
- (0, _assertString2.default)(str);
6417
+ (0, _assertString.default)(str);
6464
6418
  var pattern = uuid[version];
6465
6419
  return pattern && pattern.test(str);
6466
6420
  }
6467
- module.exports = exports['default'];
6468
- },{"./util/assertString":127}],113:[function(require,module,exports){
6469
- 'use strict';
6421
+
6422
+ module.exports = exports.default;
6423
+ },{"./util/assertString":128}],114:[function(require,module,exports){
6424
+ "use strict";
6470
6425
 
6471
6426
  Object.defineProperty(exports, "__esModule", {
6472
6427
  value: true
6473
6428
  });
6474
6429
  exports.default = isUppercase;
6475
6430
 
6476
- var _assertString = require('./util/assertString');
6477
-
6478
- var _assertString2 = _interopRequireDefault(_assertString);
6431
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6479
6432
 
6480
6433
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6481
6434
 
6482
6435
  function isUppercase(str) {
6483
- (0, _assertString2.default)(str);
6436
+ (0, _assertString.default)(str);
6484
6437
  return str === str.toUpperCase();
6485
6438
  }
6486
- module.exports = exports['default'];
6487
- },{"./util/assertString":127}],114:[function(require,module,exports){
6488
- 'use strict';
6439
+
6440
+ module.exports = exports.default;
6441
+ },{"./util/assertString":128}],115:[function(require,module,exports){
6442
+ "use strict";
6489
6443
 
6490
6444
  Object.defineProperty(exports, "__esModule", {
6491
6445
  value: true
6492
6446
  });
6493
6447
  exports.default = isVariableWidth;
6494
6448
 
6495
- var _assertString = require('./util/assertString');
6496
-
6497
- var _assertString2 = _interopRequireDefault(_assertString);
6449
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6498
6450
 
6499
- var _isFullWidth = require('./isFullWidth');
6451
+ var _isFullWidth = require("./isFullWidth");
6500
6452
 
6501
- var _isHalfWidth = require('./isHalfWidth');
6453
+ var _isHalfWidth = require("./isHalfWidth");
6502
6454
 
6503
6455
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6504
6456
 
6505
6457
  function isVariableWidth(str) {
6506
- (0, _assertString2.default)(str);
6458
+ (0, _assertString.default)(str);
6507
6459
  return _isFullWidth.fullWidth.test(str) && _isHalfWidth.halfWidth.test(str);
6508
6460
  }
6509
- module.exports = exports['default'];
6510
- },{"./isFullWidth":78,"./isHalfWidth":79,"./util/assertString":127}],115:[function(require,module,exports){
6511
- 'use strict';
6461
+
6462
+ module.exports = exports.default;
6463
+ },{"./isFullWidth":78,"./isHalfWidth":79,"./util/assertString":128}],116:[function(require,module,exports){
6464
+ "use strict";
6512
6465
 
6513
6466
  Object.defineProperty(exports, "__esModule", {
6514
6467
  value: true
6515
6468
  });
6516
6469
  exports.default = isWhitelisted;
6517
6470
 
6518
- var _assertString = require('./util/assertString');
6519
-
6520
- var _assertString2 = _interopRequireDefault(_assertString);
6471
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6521
6472
 
6522
6473
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6523
6474
 
6524
6475
  function isWhitelisted(str, chars) {
6525
- (0, _assertString2.default)(str);
6476
+ (0, _assertString.default)(str);
6477
+
6526
6478
  for (var i = str.length - 1; i >= 0; i--) {
6527
6479
  if (chars.indexOf(str[i]) === -1) {
6528
6480
  return false;
6529
6481
  }
6530
6482
  }
6483
+
6531
6484
  return true;
6532
6485
  }
6533
- module.exports = exports['default'];
6534
- },{"./util/assertString":127}],116:[function(require,module,exports){
6535
- 'use strict';
6486
+
6487
+ module.exports = exports.default;
6488
+ },{"./util/assertString":128}],117:[function(require,module,exports){
6489
+ "use strict";
6536
6490
 
6537
6491
  Object.defineProperty(exports, "__esModule", {
6538
6492
  value: true
6539
6493
  });
6540
6494
  exports.default = ltrim;
6541
6495
 
6542
- var _assertString = require('./util/assertString');
6543
-
6544
- var _assertString2 = _interopRequireDefault(_assertString);
6496
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6545
6497
 
6546
6498
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6547
6499
 
6548
6500
  function ltrim(str, chars) {
6549
- (0, _assertString2.default)(str);
6550
- var pattern = chars ? new RegExp('^[' + chars + ']+', 'g') : /^\s+/g;
6501
+ (0, _assertString.default)(str);
6502
+ var pattern = chars ? new RegExp("^[".concat(chars, "]+"), 'g') : /^\s+/g;
6551
6503
  return str.replace(pattern, '');
6552
6504
  }
6553
- module.exports = exports['default'];
6554
- },{"./util/assertString":127}],117:[function(require,module,exports){
6555
- 'use strict';
6505
+
6506
+ module.exports = exports.default;
6507
+ },{"./util/assertString":128}],118:[function(require,module,exports){
6508
+ "use strict";
6556
6509
 
6557
6510
  Object.defineProperty(exports, "__esModule", {
6558
6511
  value: true
6559
6512
  });
6560
6513
  exports.default = matches;
6561
6514
 
6562
- var _assertString = require('./util/assertString');
6563
-
6564
- var _assertString2 = _interopRequireDefault(_assertString);
6515
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6565
6516
 
6566
6517
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6567
6518
 
6568
6519
  function matches(str, pattern, modifiers) {
6569
- (0, _assertString2.default)(str);
6520
+ (0, _assertString.default)(str);
6521
+
6570
6522
  if (Object.prototype.toString.call(pattern) !== '[object RegExp]') {
6571
6523
  pattern = new RegExp(pattern, modifiers);
6572
6524
  }
6525
+
6573
6526
  return pattern.test(str);
6574
6527
  }
6575
- module.exports = exports['default'];
6576
- },{"./util/assertString":127}],118:[function(require,module,exports){
6577
- 'use strict';
6528
+
6529
+ module.exports = exports.default;
6530
+ },{"./util/assertString":128}],119:[function(require,module,exports){
6531
+ "use strict";
6578
6532
 
6579
6533
  Object.defineProperty(exports, "__esModule", {
6580
6534
  value: true
6581
6535
  });
6582
6536
  exports.default = normalizeEmail;
6583
6537
 
6584
- var _merge = require('./util/merge');
6585
-
6586
- var _merge2 = _interopRequireDefault(_merge);
6538
+ var _merge = _interopRequireDefault(require("./util/merge"));
6587
6539
 
6588
6540
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6589
6541
 
@@ -6593,7 +6545,6 @@ var default_normalize_email_options = {
6593
6545
  // Please note this may violate RFC 5321 as per http://stackoverflow.com/a/9808332/192024).
6594
6546
  // The domain is always lowercased, as per RFC 1035
6595
6547
  all_lowercase: true,
6596
-
6597
6548
  // The following conversions are specific to GMail
6598
6549
  // Lowercases the local part of the GMail address (known to be case-insensitive)
6599
6550
  gmail_lowercase: true,
@@ -6603,63 +6554,53 @@ var default_normalize_email_options = {
6603
6554
  gmail_remove_subaddress: true,
6604
6555
  // Conversts the googlemail.com domain to gmail.com
6605
6556
  gmail_convert_googlemaildotcom: true,
6606
-
6607
6557
  // The following conversions are specific to Outlook.com / Windows Live / Hotmail
6608
6558
  // Lowercases the local part of the Outlook.com address (known to be case-insensitive)
6609
6559
  outlookdotcom_lowercase: true,
6610
6560
  // Removes the subaddress (e.g. "+foo") from the email address
6611
6561
  outlookdotcom_remove_subaddress: true,
6612
-
6613
6562
  // The following conversions are specific to Yahoo
6614
6563
  // Lowercases the local part of the Yahoo address (known to be case-insensitive)
6615
6564
  yahoo_lowercase: true,
6616
6565
  // Removes the subaddress (e.g. "-foo") from the email address
6617
6566
  yahoo_remove_subaddress: true,
6618
-
6619
6567
  // The following conversions are specific to Yandex
6620
6568
  // Lowercases the local part of the Yandex address (known to be case-insensitive)
6621
6569
  yandex_lowercase: true,
6622
-
6623
6570
  // The following conversions are specific to iCloud
6624
6571
  // Lowercases the local part of the iCloud address (known to be case-insensitive)
6625
6572
  icloud_lowercase: true,
6626
6573
  // Removes the subaddress (e.g. "+foo") from the email address
6627
6574
  icloud_remove_subaddress: true
6628
- };
6575
+ }; // List of domains used by iCloud
6629
6576
 
6630
- // List of domains used by iCloud
6631
- var icloud_domains = ['icloud.com', 'me.com'];
6632
-
6633
- // List of domains used by Outlook.com and its predecessors
6577
+ var icloud_domains = ['icloud.com', 'me.com']; // List of domains used by Outlook.com and its predecessors
6634
6578
  // This list is likely incomplete.
6635
6579
  // Partial reference:
6636
6580
  // https://blogs.office.com/2013/04/17/outlook-com-gets-two-step-verification-sign-in-by-alias-and-new-international-domains/
6637
- var outlookdotcom_domains = ['hotmail.at', 'hotmail.be', 'hotmail.ca', 'hotmail.cl', 'hotmail.co.il', 'hotmail.co.nz', 'hotmail.co.th', 'hotmail.co.uk', 'hotmail.com', 'hotmail.com.ar', 'hotmail.com.au', 'hotmail.com.br', 'hotmail.com.gr', 'hotmail.com.mx', 'hotmail.com.pe', 'hotmail.com.tr', 'hotmail.com.vn', 'hotmail.cz', 'hotmail.de', 'hotmail.dk', 'hotmail.es', 'hotmail.fr', 'hotmail.hu', 'hotmail.id', 'hotmail.ie', 'hotmail.in', 'hotmail.it', 'hotmail.jp', 'hotmail.kr', 'hotmail.lv', 'hotmail.my', 'hotmail.ph', 'hotmail.pt', 'hotmail.sa', 'hotmail.sg', 'hotmail.sk', 'live.be', 'live.co.uk', 'live.com', 'live.com.ar', 'live.com.mx', 'live.de', 'live.es', 'live.eu', 'live.fr', 'live.it', 'live.nl', 'msn.com', 'outlook.at', 'outlook.be', 'outlook.cl', 'outlook.co.il', 'outlook.co.nz', 'outlook.co.th', 'outlook.com', 'outlook.com.ar', 'outlook.com.au', 'outlook.com.br', 'outlook.com.gr', 'outlook.com.pe', 'outlook.com.tr', 'outlook.com.vn', 'outlook.cz', 'outlook.de', 'outlook.dk', 'outlook.es', 'outlook.fr', 'outlook.hu', 'outlook.id', 'outlook.ie', 'outlook.in', 'outlook.it', 'outlook.jp', 'outlook.kr', 'outlook.lv', 'outlook.my', 'outlook.ph', 'outlook.pt', 'outlook.sa', 'outlook.sg', 'outlook.sk', 'passport.com'];
6638
6581
 
6639
- // List of domains used by Yahoo Mail
6582
+ var outlookdotcom_domains = ['hotmail.at', 'hotmail.be', 'hotmail.ca', 'hotmail.cl', 'hotmail.co.il', 'hotmail.co.nz', 'hotmail.co.th', 'hotmail.co.uk', 'hotmail.com', 'hotmail.com.ar', 'hotmail.com.au', 'hotmail.com.br', 'hotmail.com.gr', 'hotmail.com.mx', 'hotmail.com.pe', 'hotmail.com.tr', 'hotmail.com.vn', 'hotmail.cz', 'hotmail.de', 'hotmail.dk', 'hotmail.es', 'hotmail.fr', 'hotmail.hu', 'hotmail.id', 'hotmail.ie', 'hotmail.in', 'hotmail.it', 'hotmail.jp', 'hotmail.kr', 'hotmail.lv', 'hotmail.my', 'hotmail.ph', 'hotmail.pt', 'hotmail.sa', 'hotmail.sg', 'hotmail.sk', 'live.be', 'live.co.uk', 'live.com', 'live.com.ar', 'live.com.mx', 'live.de', 'live.es', 'live.eu', 'live.fr', 'live.it', 'live.nl', 'msn.com', 'outlook.at', 'outlook.be', 'outlook.cl', 'outlook.co.il', 'outlook.co.nz', 'outlook.co.th', 'outlook.com', 'outlook.com.ar', 'outlook.com.au', 'outlook.com.br', 'outlook.com.gr', 'outlook.com.pe', 'outlook.com.tr', 'outlook.com.vn', 'outlook.cz', 'outlook.de', 'outlook.dk', 'outlook.es', 'outlook.fr', 'outlook.hu', 'outlook.id', 'outlook.ie', 'outlook.in', 'outlook.it', 'outlook.jp', 'outlook.kr', 'outlook.lv', 'outlook.my', 'outlook.ph', 'outlook.pt', 'outlook.sa', 'outlook.sg', 'outlook.sk', 'passport.com']; // List of domains used by Yahoo Mail
6640
6583
  // This list is likely incomplete
6641
- var yahoo_domains = ['rocketmail.com', 'yahoo.ca', 'yahoo.co.uk', 'yahoo.com', 'yahoo.de', 'yahoo.fr', 'yahoo.in', 'yahoo.it', 'ymail.com'];
6642
6584
 
6643
- // List of domains used by yandex.ru
6644
- var yandex_domains = ['yandex.ru', 'yandex.ua', 'yandex.kz', 'yandex.com', 'yandex.by', 'ya.ru'];
6585
+ var yahoo_domains = ['rocketmail.com', 'yahoo.ca', 'yahoo.co.uk', 'yahoo.com', 'yahoo.de', 'yahoo.fr', 'yahoo.in', 'yahoo.it', 'ymail.com']; // List of domains used by yandex.ru
6586
+
6587
+ var yandex_domains = ['yandex.ru', 'yandex.ua', 'yandex.kz', 'yandex.com', 'yandex.by', 'ya.ru']; // replace single dots, but not multiple consecutive dots
6645
6588
 
6646
- // replace single dots, but not multiple consecutive dots
6647
6589
  function dotsReplacer(match) {
6648
6590
  if (match.length > 1) {
6649
6591
  return match;
6650
6592
  }
6593
+
6651
6594
  return '';
6652
6595
  }
6653
6596
 
6654
6597
  function normalizeEmail(email, options) {
6655
- options = (0, _merge2.default)(options, default_normalize_email_options);
6656
-
6598
+ options = (0, _merge.default)(options, default_normalize_email_options);
6657
6599
  var raw_parts = email.split('@');
6658
6600
  var domain = raw_parts.pop();
6659
6601
  var user = raw_parts.join('@');
6660
- var parts = [user, domain];
6602
+ var parts = [user, domain]; // The domain is always lowercased, as it's case-insensitive per RFC 1035
6661
6603
 
6662
- // The domain is always lowercased, as it's case-insensitive per RFC 1035
6663
6604
  parts[1] = parts[1].toLowerCase();
6664
6605
 
6665
6606
  if (parts[1] === 'gmail.com' || parts[1] === 'googlemail.com') {
@@ -6667,25 +6608,31 @@ function normalizeEmail(email, options) {
6667
6608
  if (options.gmail_remove_subaddress) {
6668
6609
  parts[0] = parts[0].split('+')[0];
6669
6610
  }
6611
+
6670
6612
  if (options.gmail_remove_dots) {
6671
6613
  // this does not replace consecutive dots like example..email@gmail.com
6672
6614
  parts[0] = parts[0].replace(/\.+/g, dotsReplacer);
6673
6615
  }
6616
+
6674
6617
  if (!parts[0].length) {
6675
6618
  return false;
6676
6619
  }
6620
+
6677
6621
  if (options.all_lowercase || options.gmail_lowercase) {
6678
6622
  parts[0] = parts[0].toLowerCase();
6679
6623
  }
6624
+
6680
6625
  parts[1] = options.gmail_convert_googlemaildotcom ? 'gmail.com' : parts[1];
6681
6626
  } else if (icloud_domains.indexOf(parts[1]) >= 0) {
6682
6627
  // Address is iCloud
6683
6628
  if (options.icloud_remove_subaddress) {
6684
6629
  parts[0] = parts[0].split('+')[0];
6685
6630
  }
6631
+
6686
6632
  if (!parts[0].length) {
6687
6633
  return false;
6688
6634
  }
6635
+
6689
6636
  if (options.all_lowercase || options.icloud_lowercase) {
6690
6637
  parts[0] = parts[0].toLowerCase();
6691
6638
  }
@@ -6694,9 +6641,11 @@ function normalizeEmail(email, options) {
6694
6641
  if (options.outlookdotcom_remove_subaddress) {
6695
6642
  parts[0] = parts[0].split('+')[0];
6696
6643
  }
6644
+
6697
6645
  if (!parts[0].length) {
6698
6646
  return false;
6699
6647
  }
6648
+
6700
6649
  if (options.all_lowercase || options.outlookdotcom_lowercase) {
6701
6650
  parts[0] = parts[0].toLowerCase();
6702
6651
  }
@@ -6706,9 +6655,11 @@ function normalizeEmail(email, options) {
6706
6655
  var components = parts[0].split('-');
6707
6656
  parts[0] = components.length > 1 ? components.slice(0, -1).join('-') : components[0];
6708
6657
  }
6658
+
6709
6659
  if (!parts[0].length) {
6710
6660
  return false;
6711
6661
  }
6662
+
6712
6663
  if (options.all_lowercase || options.yahoo_lowercase) {
6713
6664
  parts[0] = parts[0].toLowerCase();
6714
6665
  }
@@ -6716,243 +6667,262 @@ function normalizeEmail(email, options) {
6716
6667
  if (options.all_lowercase || options.yandex_lowercase) {
6717
6668
  parts[0] = parts[0].toLowerCase();
6718
6669
  }
6670
+
6719
6671
  parts[1] = 'yandex.ru'; // all yandex domains are equal, 1st preffered
6720
6672
  } else if (options.all_lowercase) {
6721
6673
  // Any other address
6722
6674
  parts[0] = parts[0].toLowerCase();
6723
6675
  }
6676
+
6724
6677
  return parts.join('@');
6725
6678
  }
6726
- module.exports = exports['default'];
6727
- },{"./util/merge":129}],119:[function(require,module,exports){
6728
- 'use strict';
6679
+
6680
+ module.exports = exports.default;
6681
+ },{"./util/merge":130}],120:[function(require,module,exports){
6682
+ "use strict";
6729
6683
 
6730
6684
  Object.defineProperty(exports, "__esModule", {
6731
6685
  value: true
6732
6686
  });
6733
6687
  exports.default = rtrim;
6734
6688
 
6735
- var _assertString = require('./util/assertString');
6736
-
6737
- var _assertString2 = _interopRequireDefault(_assertString);
6689
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6738
6690
 
6739
6691
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6740
6692
 
6741
6693
  function rtrim(str, chars) {
6742
- (0, _assertString2.default)(str);
6743
- var pattern = chars ? new RegExp('[' + chars + ']') : /\s/;
6744
-
6694
+ (0, _assertString.default)(str);
6695
+ var pattern = chars ? new RegExp("[".concat(chars, "]")) : /\s/;
6745
6696
  var idx = str.length - 1;
6746
- for (; idx >= 0 && pattern.test(str[idx]); idx--) {}
6697
+
6698
+ for (; idx >= 0 && pattern.test(str[idx]); idx--) {
6699
+ ;
6700
+ }
6747
6701
 
6748
6702
  return idx < str.length ? str.substr(0, idx + 1) : str;
6749
6703
  }
6750
- module.exports = exports['default'];
6751
- },{"./util/assertString":127}],120:[function(require,module,exports){
6752
- 'use strict';
6704
+
6705
+ module.exports = exports.default;
6706
+ },{"./util/assertString":128}],121:[function(require,module,exports){
6707
+ "use strict";
6753
6708
 
6754
6709
  Object.defineProperty(exports, "__esModule", {
6755
6710
  value: true
6756
6711
  });
6757
6712
  exports.default = stripLow;
6758
6713
 
6759
- var _assertString = require('./util/assertString');
6760
-
6761
- var _assertString2 = _interopRequireDefault(_assertString);
6762
-
6763
- var _blacklist = require('./blacklist');
6714
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6764
6715
 
6765
- var _blacklist2 = _interopRequireDefault(_blacklist);
6716
+ var _blacklist = _interopRequireDefault(require("./blacklist"));
6766
6717
 
6767
6718
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6768
6719
 
6769
6720
  function stripLow(str, keep_new_lines) {
6770
- (0, _assertString2.default)(str);
6721
+ (0, _assertString.default)(str);
6771
6722
  var chars = keep_new_lines ? '\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F' : '\\x00-\\x1F\\x7F';
6772
- return (0, _blacklist2.default)(str, chars);
6723
+ return (0, _blacklist.default)(str, chars);
6773
6724
  }
6774
- module.exports = exports['default'];
6775
- },{"./blacklist":57,"./util/assertString":127}],121:[function(require,module,exports){
6776
- 'use strict';
6725
+
6726
+ module.exports = exports.default;
6727
+ },{"./blacklist":57,"./util/assertString":128}],122:[function(require,module,exports){
6728
+ "use strict";
6777
6729
 
6778
6730
  Object.defineProperty(exports, "__esModule", {
6779
6731
  value: true
6780
6732
  });
6781
6733
  exports.default = toBoolean;
6782
6734
 
6783
- var _assertString = require('./util/assertString');
6784
-
6785
- var _assertString2 = _interopRequireDefault(_assertString);
6735
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6786
6736
 
6787
6737
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6788
6738
 
6789
6739
  function toBoolean(str, strict) {
6790
- (0, _assertString2.default)(str);
6740
+ (0, _assertString.default)(str);
6741
+
6791
6742
  if (strict) {
6792
6743
  return str === '1' || str === 'true';
6793
6744
  }
6745
+
6794
6746
  return str !== '0' && str !== 'false' && str !== '';
6795
6747
  }
6796
- module.exports = exports['default'];
6797
- },{"./util/assertString":127}],122:[function(require,module,exports){
6798
- 'use strict';
6748
+
6749
+ module.exports = exports.default;
6750
+ },{"./util/assertString":128}],123:[function(require,module,exports){
6751
+ "use strict";
6799
6752
 
6800
6753
  Object.defineProperty(exports, "__esModule", {
6801
6754
  value: true
6802
6755
  });
6803
6756
  exports.default = toDate;
6804
6757
 
6805
- var _assertString = require('./util/assertString');
6806
-
6807
- var _assertString2 = _interopRequireDefault(_assertString);
6758
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6808
6759
 
6809
6760
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6810
6761
 
6811
6762
  function toDate(date) {
6812
- (0, _assertString2.default)(date);
6763
+ (0, _assertString.default)(date);
6813
6764
  date = Date.parse(date);
6814
6765
  return !isNaN(date) ? new Date(date) : null;
6815
6766
  }
6816
- module.exports = exports['default'];
6817
- },{"./util/assertString":127}],123:[function(require,module,exports){
6818
- 'use strict';
6767
+
6768
+ module.exports = exports.default;
6769
+ },{"./util/assertString":128}],124:[function(require,module,exports){
6770
+ "use strict";
6819
6771
 
6820
6772
  Object.defineProperty(exports, "__esModule", {
6821
6773
  value: true
6822
6774
  });
6823
6775
  exports.default = toFloat;
6824
6776
 
6825
- var _assertString = require('./util/assertString');
6826
-
6827
- var _assertString2 = _interopRequireDefault(_assertString);
6777
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6828
6778
 
6829
6779
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6830
6780
 
6831
6781
  function toFloat(str) {
6832
- (0, _assertString2.default)(str);
6782
+ (0, _assertString.default)(str);
6833
6783
  return parseFloat(str);
6834
6784
  }
6835
- module.exports = exports['default'];
6836
- },{"./util/assertString":127}],124:[function(require,module,exports){
6837
- 'use strict';
6785
+
6786
+ module.exports = exports.default;
6787
+ },{"./util/assertString":128}],125:[function(require,module,exports){
6788
+ "use strict";
6838
6789
 
6839
6790
  Object.defineProperty(exports, "__esModule", {
6840
6791
  value: true
6841
6792
  });
6842
6793
  exports.default = toInt;
6843
6794
 
6844
- var _assertString = require('./util/assertString');
6845
-
6846
- var _assertString2 = _interopRequireDefault(_assertString);
6795
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6847
6796
 
6848
6797
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6849
6798
 
6850
6799
  function toInt(str, radix) {
6851
- (0, _assertString2.default)(str);
6800
+ (0, _assertString.default)(str);
6852
6801
  return parseInt(str, radix || 10);
6853
6802
  }
6854
- module.exports = exports['default'];
6855
- },{"./util/assertString":127}],125:[function(require,module,exports){
6856
- 'use strict';
6803
+
6804
+ module.exports = exports.default;
6805
+ },{"./util/assertString":128}],126:[function(require,module,exports){
6806
+ "use strict";
6857
6807
 
6858
6808
  Object.defineProperty(exports, "__esModule", {
6859
6809
  value: true
6860
6810
  });
6861
6811
  exports.default = trim;
6862
6812
 
6863
- var _rtrim = require('./rtrim');
6864
-
6865
- var _rtrim2 = _interopRequireDefault(_rtrim);
6813
+ var _rtrim = _interopRequireDefault(require("./rtrim"));
6866
6814
 
6867
- var _ltrim = require('./ltrim');
6868
-
6869
- var _ltrim2 = _interopRequireDefault(_ltrim);
6815
+ var _ltrim = _interopRequireDefault(require("./ltrim"));
6870
6816
 
6871
6817
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6872
6818
 
6873
6819
  function trim(str, chars) {
6874
- return (0, _rtrim2.default)((0, _ltrim2.default)(str, chars), chars);
6820
+ return (0, _rtrim.default)((0, _ltrim.default)(str, chars), chars);
6875
6821
  }
6876
- module.exports = exports['default'];
6877
- },{"./ltrim":116,"./rtrim":119}],126:[function(require,module,exports){
6878
- 'use strict';
6822
+
6823
+ module.exports = exports.default;
6824
+ },{"./ltrim":117,"./rtrim":120}],127:[function(require,module,exports){
6825
+ "use strict";
6879
6826
 
6880
6827
  Object.defineProperty(exports, "__esModule", {
6881
6828
  value: true
6882
6829
  });
6883
6830
  exports.default = unescape;
6884
6831
 
6885
- var _assertString = require('./util/assertString');
6886
-
6887
- var _assertString2 = _interopRequireDefault(_assertString);
6832
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6888
6833
 
6889
6834
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6890
6835
 
6891
6836
  function unescape(str) {
6892
- (0, _assertString2.default)(str);
6837
+ (0, _assertString.default)(str);
6893
6838
  return str.replace(/&amp;/g, '&').replace(/&quot;/g, '"').replace(/&#x27;/g, "'").replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&#x2F;/g, '/').replace(/&#x5C;/g, '\\').replace(/&#96;/g, '`');
6894
6839
  }
6895
- module.exports = exports['default'];
6896
- },{"./util/assertString":127}],127:[function(require,module,exports){
6897
- 'use strict';
6840
+
6841
+ module.exports = exports.default;
6842
+ },{"./util/assertString":128}],128:[function(require,module,exports){
6843
+ "use strict";
6898
6844
 
6899
6845
  Object.defineProperty(exports, "__esModule", {
6900
6846
  value: true
6901
6847
  });
6902
6848
  exports.default = assertString;
6849
+
6850
+ 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); }
6851
+
6903
6852
  function assertString(input) {
6904
6853
  var isString = typeof input === 'string' || input instanceof String;
6905
6854
 
6906
6855
  if (!isString) {
6907
- throw new TypeError('This library (validator.js) validates strings only');
6856
+ var invalidType;
6857
+
6858
+ if (input === null) {
6859
+ invalidType = 'null';
6860
+ } else {
6861
+ invalidType = _typeof(input);
6862
+
6863
+ if (invalidType === 'object' && input.constructor && input.constructor.hasOwnProperty('name')) {
6864
+ invalidType = input.constructor.name;
6865
+ } else {
6866
+ invalidType = "a ".concat(invalidType);
6867
+ }
6868
+ }
6869
+
6870
+ throw new TypeError("Expected string but received ".concat(invalidType, "."));
6908
6871
  }
6909
6872
  }
6910
- module.exports = exports['default'];
6911
- },{}],128:[function(require,module,exports){
6873
+
6874
+ module.exports = exports.default;
6875
+ },{}],129:[function(require,module,exports){
6912
6876
  "use strict";
6913
6877
 
6914
6878
  Object.defineProperty(exports, "__esModule", {
6915
6879
  value: true
6916
6880
  });
6881
+ exports.default = void 0;
6882
+
6917
6883
  var includes = function includes(arr, val) {
6918
6884
  return arr.some(function (arrVal) {
6919
6885
  return val === arrVal;
6920
6886
  });
6921
6887
  };
6922
6888
 
6923
- exports.default = includes;
6924
- module.exports = exports["default"];
6925
- },{}],129:[function(require,module,exports){
6926
- 'use strict';
6889
+ var _default = includes;
6890
+ exports.default = _default;
6891
+ module.exports = exports.default;
6892
+ },{}],130:[function(require,module,exports){
6893
+ "use strict";
6927
6894
 
6928
6895
  Object.defineProperty(exports, "__esModule", {
6929
6896
  value: true
6930
6897
  });
6931
6898
  exports.default = merge;
6899
+
6932
6900
  function merge() {
6933
6901
  var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6934
- var defaults = arguments[1];
6902
+ var defaults = arguments.length > 1 ? arguments[1] : undefined;
6935
6903
 
6936
6904
  for (var key in defaults) {
6937
6905
  if (typeof obj[key] === 'undefined') {
6938
6906
  obj[key] = defaults[key];
6939
6907
  }
6940
6908
  }
6909
+
6941
6910
  return obj;
6942
6911
  }
6943
- module.exports = exports['default'];
6944
- },{}],130:[function(require,module,exports){
6945
- 'use strict';
6912
+
6913
+ module.exports = exports.default;
6914
+ },{}],131:[function(require,module,exports){
6915
+ "use strict";
6946
6916
 
6947
6917
  Object.defineProperty(exports, "__esModule", {
6948
6918
  value: true
6949
6919
  });
6920
+ exports.default = toString;
6950
6921
 
6951
- 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; };
6922
+ 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); }
6952
6923
 
6953
- exports.default = toString;
6954
6924
  function toString(input) {
6955
- if ((typeof input === 'undefined' ? 'undefined' : _typeof(input)) === 'object' && input !== null) {
6925
+ if (_typeof(input) === 'object' && input !== null) {
6956
6926
  if (typeof input.toString === 'function') {
6957
6927
  input = input.toString();
6958
6928
  } else {
@@ -6961,29 +6931,30 @@ function toString(input) {
6961
6931
  } else if (input === null || typeof input === 'undefined' || isNaN(input) && !input.length) {
6962
6932
  input = '';
6963
6933
  }
6934
+
6964
6935
  return String(input);
6965
6936
  }
6966
- module.exports = exports['default'];
6967
- },{}],131:[function(require,module,exports){
6968
- 'use strict';
6937
+
6938
+ module.exports = exports.default;
6939
+ },{}],132:[function(require,module,exports){
6940
+ "use strict";
6969
6941
 
6970
6942
  Object.defineProperty(exports, "__esModule", {
6971
6943
  value: true
6972
6944
  });
6973
6945
  exports.default = whitelist;
6974
6946
 
6975
- var _assertString = require('./util/assertString');
6976
-
6977
- var _assertString2 = _interopRequireDefault(_assertString);
6947
+ var _assertString = _interopRequireDefault(require("./util/assertString"));
6978
6948
 
6979
6949
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6980
6950
 
6981
6951
  function whitelist(str, chars) {
6982
- (0, _assertString2.default)(str);
6983
- return str.replace(new RegExp('[^' + chars + ']+', 'g'), '');
6952
+ (0, _assertString.default)(str);
6953
+ return str.replace(new RegExp("[^".concat(chars, "]+"), 'g'), '');
6984
6954
  }
6985
- module.exports = exports['default'];
6986
- },{"./util/assertString":127}],132:[function(require,module,exports){
6955
+
6956
+ module.exports = exports.default;
6957
+ },{"./util/assertString":128}],133:[function(require,module,exports){
6987
6958
  "use strict";
6988
6959
 
6989
6960
  module.exports = {
@@ -7045,7 +7016,7 @@ module.exports = {
7045
7016
 
7046
7017
  };
7047
7018
 
7048
- },{}],133:[function(require,module,exports){
7019
+ },{}],134:[function(require,module,exports){
7049
7020
  /*jshint maxlen: false*/
7050
7021
 
7051
7022
  var validator = require("validator");
@@ -7176,7 +7147,7 @@ var FormatValidators = {
7176
7147
 
7177
7148
  module.exports = FormatValidators;
7178
7149
 
7179
- },{"validator":55}],134:[function(require,module,exports){
7150
+ },{"validator":55}],135:[function(require,module,exports){
7180
7151
  "use strict";
7181
7152
 
7182
7153
  var FormatValidators = require("./FormatValidators"),
@@ -7386,8 +7357,11 @@ var JsonValidators = {
7386
7357
  }
7387
7358
  }
7388
7359
  }
7389
- if (s.length > 0) {
7390
- report.addError("OBJECT_ADDITIONAL_PROPERTIES", [s], null, schema);
7360
+ var idx4 = s.length;
7361
+ if (idx4) {
7362
+ while (idx4--) {
7363
+ report.addError("OBJECT_ADDITIONAL_PROPERTIES", [s[idx4]], null, schema);
7364
+ }
7391
7365
  }
7392
7366
  }
7393
7367
  }
@@ -7516,10 +7490,14 @@ var JsonValidators = {
7516
7490
  var formatValidatorFn = FormatValidators[schema.format];
7517
7491
  if (typeof formatValidatorFn === "function") {
7518
7492
  if (formatValidatorFn.length === 2) {
7519
- // async
7493
+ // async - need to clone the path here, because it will change by the time async function reports back
7494
+ var pathBeforeAsync = Utils.clone(report.path);
7520
7495
  report.addAsyncTask(formatValidatorFn, [json], function (result) {
7521
7496
  if (result !== true) {
7497
+ var backup = report.path;
7498
+ report.path = pathBeforeAsync;
7522
7499
  report.addError("INVALID_FORMAT", [schema.format, json], null, schema);
7500
+ report.path = backup;
7523
7501
  }
7524
7502
  });
7525
7503
  } else {
@@ -7634,6 +7612,8 @@ var recurseObject = function (report, schema, json) {
7634
7612
  }
7635
7613
  };
7636
7614
 
7615
+ exports.JsonValidators = JsonValidators;
7616
+
7637
7617
  /**
7638
7618
  *
7639
7619
  * @param {Report} report
@@ -7726,7 +7706,7 @@ exports.validate = function (report, schema, json) {
7726
7706
 
7727
7707
  };
7728
7708
 
7729
- },{"./FormatValidators":133,"./Report":136,"./Utils":140}],135:[function(require,module,exports){
7709
+ },{"./FormatValidators":134,"./Report":137,"./Utils":141}],136:[function(require,module,exports){
7730
7710
  // Number.isFinite polyfill
7731
7711
  // http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite
7732
7712
  if (typeof Number.isFinite !== "function") {
@@ -7744,7 +7724,7 @@ if (typeof Number.isFinite !== "function") {
7744
7724
  };
7745
7725
  }
7746
7726
 
7747
- },{}],136:[function(require,module,exports){
7727
+ },{}],137:[function(require,module,exports){
7748
7728
  (function (process){
7749
7729
  "use strict";
7750
7730
 
@@ -8036,7 +8016,7 @@ Report.prototype.addCustomError = function (errorCode, errorMessage, params, sub
8036
8016
  module.exports = Report;
8037
8017
 
8038
8018
  }).call(this,require('_process'))
8039
- },{"./Errors":132,"./Utils":140,"_process":54,"lodash.get":52}],137:[function(require,module,exports){
8019
+ },{"./Errors":133,"./Utils":141,"_process":54,"lodash.get":52}],138:[function(require,module,exports){
8040
8020
  "use strict";
8041
8021
 
8042
8022
  var isequal = require("lodash.isequal");
@@ -8219,7 +8199,7 @@ exports.getSchemaByUri = function (report, uri, root) {
8219
8199
 
8220
8200
  exports.getRemotePath = getRemotePath;
8221
8201
 
8222
- },{"./Report":136,"./SchemaCompilation":138,"./SchemaValidation":139,"./Utils":140,"lodash.isequal":53}],138:[function(require,module,exports){
8202
+ },{"./Report":137,"./SchemaCompilation":139,"./SchemaValidation":140,"./Utils":141,"lodash.isequal":53}],139:[function(require,module,exports){
8223
8203
  "use strict";
8224
8204
 
8225
8205
  var Report = require("./Report");
@@ -8520,7 +8500,7 @@ exports.compileSchema = function (report, schema) {
8520
8500
 
8521
8501
  };
8522
8502
 
8523
- },{"./Report":136,"./SchemaCache":137,"./Utils":140}],139:[function(require,module,exports){
8503
+ },{"./Report":137,"./SchemaCache":138,"./Utils":141}],140:[function(require,module,exports){
8524
8504
  "use strict";
8525
8505
 
8526
8506
  var FormatValidators = require("./FormatValidators"),
@@ -9141,7 +9121,7 @@ exports.validateSchema = function (report, schema) {
9141
9121
  return isValid;
9142
9122
  };
9143
9123
 
9144
- },{"./FormatValidators":133,"./JsonValidation":134,"./Report":136,"./Utils":140}],140:[function(require,module,exports){
9124
+ },{"./FormatValidators":134,"./JsonValidation":135,"./Report":137,"./Utils":141}],141:[function(require,module,exports){
9145
9125
  "use strict";
9146
9126
 
9147
9127
  require("core-js/es6/symbol");
@@ -9419,7 +9399,7 @@ exports.ucs2decode = function (string) {
9419
9399
  };
9420
9400
  /*jshint +W016*/
9421
9401
 
9422
- },{"core-js/es6/symbol":1}],141:[function(require,module,exports){
9402
+ },{"core-js/es6/symbol":1}],142:[function(require,module,exports){
9423
9403
  (function (process){
9424
9404
  "use strict";
9425
9405
 
@@ -9832,7 +9812,7 @@ ZSchema.jsonSymbol = Utils.jsonSymbol;
9832
9812
  module.exports = ZSchema;
9833
9813
 
9834
9814
  }).call(this,require('_process'))
9835
- },{"./FormatValidators":133,"./JsonValidation":134,"./Polyfills":135,"./Report":136,"./SchemaCache":137,"./SchemaCompilation":138,"./SchemaValidation":139,"./Utils":140,"./schemas/hyper-schema.json":142,"./schemas/schema.json":143,"_process":54,"lodash.get":52}],142:[function(require,module,exports){
9815
+ },{"./FormatValidators":134,"./JsonValidation":135,"./Polyfills":136,"./Report":137,"./SchemaCache":138,"./SchemaCompilation":139,"./SchemaValidation":140,"./Utils":141,"./schemas/hyper-schema.json":143,"./schemas/schema.json":144,"_process":54,"lodash.get":52}],143:[function(require,module,exports){
9836
9816
  module.exports={
9837
9817
  "$schema": "http://json-schema.org/draft-04/hyper-schema#",
9838
9818
  "id": "http://json-schema.org/draft-04/hyper-schema#",
@@ -9992,7 +9972,7 @@ module.exports={
9992
9972
  }
9993
9973
 
9994
9974
 
9995
- },{}],143:[function(require,module,exports){
9975
+ },{}],144:[function(require,module,exports){
9996
9976
  module.exports={
9997
9977
  "id": "http://json-schema.org/draft-04/schema#",
9998
9978
  "$schema": "http://json-schema.org/draft-04/schema#",
@@ -10145,5 +10125,5 @@ module.exports={
10145
10125
  "default": {}
10146
10126
  }
10147
10127
 
10148
- },{}]},{},[132,133,134,135,136,137,138,139,140,141])(141)
10128
+ },{}]},{},[133,134,135,136,137,138,139,140,141,142])(142)
10149
10129
  });