@depup/express-validator 7.3.1-depup.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.
Files changed (70) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +32 -0
  3. package/changes.json +14 -0
  4. package/lib/base.d.ts +187 -0
  5. package/lib/base.js +8 -0
  6. package/lib/chain/context-handler-impl.d.ts +13 -0
  7. package/lib/chain/context-handler-impl.js +52 -0
  8. package/lib/chain/context-handler.d.ts +110 -0
  9. package/lib/chain/context-handler.js +2 -0
  10. package/lib/chain/context-runner-impl.d.ts +18 -0
  11. package/lib/chain/context-runner-impl.js +72 -0
  12. package/lib/chain/context-runner.d.ts +22 -0
  13. package/lib/chain/context-runner.js +2 -0
  14. package/lib/chain/index.d.ts +9 -0
  15. package/lib/chain/index.js +25 -0
  16. package/lib/chain/sanitizers-impl.d.ts +29 -0
  17. package/lib/chain/sanitizers-impl.js +80 -0
  18. package/lib/chain/sanitizers.d.ts +42 -0
  19. package/lib/chain/sanitizers.js +2 -0
  20. package/lib/chain/validation-chain.d.ts +18 -0
  21. package/lib/chain/validation-chain.js +2 -0
  22. package/lib/chain/validators-impl.d.ts +121 -0
  23. package/lib/chain/validators-impl.js +353 -0
  24. package/lib/chain/validators.d.ts +181 -0
  25. package/lib/chain/validators.js +2 -0
  26. package/lib/context-builder.d.ts +20 -0
  27. package/lib/context-builder.js +52 -0
  28. package/lib/context-items/bail.d.ts +5 -0
  29. package/lib/context-items/bail.js +13 -0
  30. package/lib/context-items/chain-condition.d.ts +9 -0
  31. package/lib/context-items/chain-condition.js +16 -0
  32. package/lib/context-items/context-item.d.ts +5 -0
  33. package/lib/context-items/context-item.js +2 -0
  34. package/lib/context-items/custom-condition.d.ts +8 -0
  35. package/lib/context-items/custom-condition.js +24 -0
  36. package/lib/context-items/custom-validation.d.ts +10 -0
  37. package/lib/context-items/custom-validation.js +34 -0
  38. package/lib/context-items/index.d.ts +5 -0
  39. package/lib/context-items/index.js +21 -0
  40. package/lib/context-items/sanitization.d.ts +12 -0
  41. package/lib/context-items/sanitization.js +34 -0
  42. package/lib/context-items/standard-validation.d.ts +13 -0
  43. package/lib/context-items/standard-validation.js +25 -0
  44. package/lib/context.d.ts +61 -0
  45. package/lib/context.js +117 -0
  46. package/lib/express-validator.d.ts +153 -0
  47. package/lib/express-validator.js +125 -0
  48. package/lib/field-selection.d.ts +22 -0
  49. package/lib/field-selection.js +221 -0
  50. package/lib/index.d.ts +9 -0
  51. package/lib/index.js +25 -0
  52. package/lib/matched-data.d.ts +26 -0
  53. package/lib/matched-data.js +45 -0
  54. package/lib/middlewares/check.d.ts +3 -0
  55. package/lib/middlewares/check.js +23 -0
  56. package/lib/middlewares/exact.d.ts +29 -0
  57. package/lib/middlewares/exact.js +68 -0
  58. package/lib/middlewares/one-of.d.ts +28 -0
  59. package/lib/middlewares/one-of.js +91 -0
  60. package/lib/middlewares/schema.d.ts +108 -0
  61. package/lib/middlewares/schema.js +112 -0
  62. package/lib/middlewares/validation-chain-builders.d.ts +43 -0
  63. package/lib/middlewares/validation-chain-builders.js +49 -0
  64. package/lib/options.d.ts +377 -0
  65. package/lib/options.js +2 -0
  66. package/lib/utils.d.ts +12 -0
  67. package/lib/utils.js +56 -0
  68. package/lib/validation-result.d.ts +67 -0
  69. package/lib/validation-result.js +80 -0
  70. package/package.json +97 -0
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SanitizersImpl = void 0;
4
+ const _ = require("lodash");
5
+ const validator = require("validator");
6
+ const sanitization_1 = require("../context-items/sanitization");
7
+ class SanitizersImpl {
8
+ constructor(builder, chain) {
9
+ this.builder = builder;
10
+ this.chain = chain;
11
+ }
12
+ // custom sanitizers
13
+ customSanitizer(sanitizer) {
14
+ this.builder.addItem(new sanitization_1.Sanitization(sanitizer, true));
15
+ return this.chain;
16
+ }
17
+ default(default_value) {
18
+ return this.customSanitizer(value => [undefined, null, NaN, ''].includes(value) ? _.cloneDeep(default_value) : value);
19
+ }
20
+ replace(values_to_replace, new_value) {
21
+ if (!Array.isArray(values_to_replace)) {
22
+ values_to_replace = [values_to_replace];
23
+ }
24
+ return this.customSanitizer(value => values_to_replace.includes(value) ? _.cloneDeep(new_value) : value);
25
+ }
26
+ // Standard sanitizers
27
+ addStandardSanitization(sanitizer, ...options) {
28
+ this.builder.addItem(new sanitization_1.Sanitization(sanitizer, false, options));
29
+ return this.chain;
30
+ }
31
+ blacklist(chars) {
32
+ return this.addStandardSanitization(validator.blacklist, chars);
33
+ }
34
+ escape() {
35
+ return this.addStandardSanitization(validator.escape);
36
+ }
37
+ unescape() {
38
+ return this.addStandardSanitization(validator.unescape);
39
+ }
40
+ ltrim(chars) {
41
+ return this.addStandardSanitization(validator.ltrim, chars);
42
+ }
43
+ normalizeEmail(options) {
44
+ return this.addStandardSanitization(validator.normalizeEmail, options);
45
+ }
46
+ rtrim(chars) {
47
+ return this.addStandardSanitization(validator.rtrim, chars);
48
+ }
49
+ stripLow(keep_new_lines) {
50
+ return this.addStandardSanitization(validator.stripLow, keep_new_lines);
51
+ }
52
+ toArray() {
53
+ return this.customSanitizer(value => (value !== undefined && ((Array.isArray(value) && value) || [value])) || []);
54
+ }
55
+ toBoolean(strict) {
56
+ return this.addStandardSanitization(validator.toBoolean, strict);
57
+ }
58
+ toDate() {
59
+ return this.addStandardSanitization(validator.toDate);
60
+ }
61
+ toFloat() {
62
+ return this.addStandardSanitization(validator.toFloat);
63
+ }
64
+ toInt(radix) {
65
+ return this.addStandardSanitization(validator.toInt, radix);
66
+ }
67
+ toLowerCase() {
68
+ return this.customSanitizer(value => (typeof value === 'string' ? value.toLowerCase() : value));
69
+ }
70
+ toUpperCase() {
71
+ return this.customSanitizer(value => (typeof value === 'string' ? value.toUpperCase() : value));
72
+ }
73
+ trim(chars) {
74
+ return this.addStandardSanitization(validator.trim, chars);
75
+ }
76
+ whitelist(chars) {
77
+ return this.addStandardSanitization(validator.whitelist, chars);
78
+ }
79
+ }
80
+ exports.SanitizersImpl = SanitizersImpl;
@@ -0,0 +1,42 @@
1
+ import { CustomSanitizer } from '../base';
2
+ import * as Options from '../options';
3
+ export interface Sanitizers<Return> {
4
+ /**
5
+ * Adds a custom sanitizer to the validation chain.
6
+ *
7
+ * @param sanitizer the custom sanitizer
8
+ * @returns the current validation chain
9
+ */
10
+ customSanitizer(sanitizer: CustomSanitizer): Return;
11
+ /**
12
+ * Replaces the value of the field if it's one of `''`, `null`, `undefined` or `NaN`.
13
+ *
14
+ * @param default_value the value to replace with
15
+ * @returns the current validation chain
16
+ */
17
+ default(default_value: any): Return;
18
+ /**
19
+ * Replaces a field's value with another value.
20
+ *
21
+ * @param values_to_replace one or more values that should be replaced
22
+ * @param new_value the value to replace with
23
+ * @returns the current validation chain
24
+ */
25
+ replace(values_to_replace: any, new_value: any): Return;
26
+ blacklist(chars: string): Return;
27
+ escape(): Return;
28
+ unescape(): Return;
29
+ ltrim(chars?: string): Return;
30
+ normalizeEmail(options?: Options.NormalizeEmailOptions): Return;
31
+ rtrim(chars?: string): Return;
32
+ stripLow(keep_new_lines?: boolean): Return;
33
+ toArray(): Return;
34
+ toBoolean(strict?: boolean): Return;
35
+ toDate(): Return;
36
+ toFloat(): Return;
37
+ toInt(radix?: number): Return;
38
+ toLowerCase(): Return;
39
+ toUpperCase(): Return;
40
+ trim(chars?: string): Return;
41
+ whitelist(chars: string): Return;
42
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,18 @@
1
+ import { Request } from '../base';
2
+ import { ContextBuilder } from '../context-builder';
3
+ import { Sanitizers } from './sanitizers';
4
+ import { Validators } from './validators';
5
+ import { ContextHandler } from './context-handler';
6
+ import { ContextRunner } from './context-runner';
7
+ export interface ValidationChain extends Validators<ValidationChain>, Sanitizers<ValidationChain>, ContextHandler<ValidationChain>, ContextRunner {
8
+ (req: Request, res: any, next: (error?: any) => void): void;
9
+ builder: ContextBuilder;
10
+ }
11
+ /**
12
+ * A copy of `ValidationChain` where methods that would return the chain itself can return any other
13
+ * value.
14
+ * Useful for typing functions which accept either standard or custom validation chains.
15
+ */
16
+ export type ValidationChainLike = {
17
+ [K in keyof ValidationChain]: ValidationChain[K] extends (...args: infer A) => ValidationChain ? (...args: A) => any : ValidationChain[K];
18
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,121 @@
1
+ import { CustomValidator, ErrorMessage, FieldMessageFactory } from '../base';
2
+ import { ContextBuilder } from '../context-builder';
3
+ import * as Options from '../options';
4
+ import { ExistsOptions, Validators } from './validators';
5
+ export declare class ValidatorsImpl<Chain> implements Validators<Chain> {
6
+ private readonly builder;
7
+ private readonly chain;
8
+ private lastValidator;
9
+ private negateNext;
10
+ constructor(builder: ContextBuilder, chain: Chain);
11
+ private addItem;
12
+ not(): Chain;
13
+ withMessage(message: FieldMessageFactory | ErrorMessage): Chain;
14
+ custom(validator: CustomValidator): Chain;
15
+ exists(options?: ExistsOptions): Chain;
16
+ isArray(options?: {
17
+ min?: number;
18
+ max?: number;
19
+ }): Chain;
20
+ isObject(options?: {
21
+ strict?: boolean;
22
+ }): Chain;
23
+ isString(): Chain;
24
+ notEmpty(options?: Options.IsEmptyOptions): Chain;
25
+ private addStandardValidation;
26
+ contains(elem: any, options?: Options.ContainsOptions): Chain;
27
+ equals(comparison: string): Chain;
28
+ isAbaRouting(): Chain;
29
+ isAfter(dateOrOptions?: string | Options.IsAfterOptions): Chain;
30
+ isAlpha(locale?: Options.AlphaLocale, options?: Options.IsAlphaOptions): Chain;
31
+ isAlphanumeric(locale?: Options.AlphanumericLocale, options?: Options.IsAlphanumericOptions): Chain;
32
+ isAscii(): Chain;
33
+ isBase32(options?: Options.IsBase32Options): Chain;
34
+ isBase58(): Chain;
35
+ isBase64(options?: Options.IsBase64Options): Chain;
36
+ isBefore(date?: string): Chain;
37
+ isBIC(): Chain;
38
+ /**
39
+ * There are basically three levels of strictness for this validator.
40
+ * Passing `{ strict: true }` as option only passes the validation if the value is a JS bool. (It also overrides the loose property of the options).
41
+ * Passing `{ loose: true|false }` along with no `strict` prop of with `strict` falsy follows the behaviour specified in validator.js docs.
42
+ */
43
+ isBoolean(options?: Options.IsBooleanOptions): Chain;
44
+ isBtcAddress(): Chain;
45
+ isByteLength(options: Options.MinMaxOptions): Chain;
46
+ isCreditCard(): Chain;
47
+ isCurrency(options?: Options.IsCurrencyOptions): Chain;
48
+ isDataURI(): Chain;
49
+ isDate(options?: Options.IsDateOptions): Chain;
50
+ isDecimal(options?: Options.IsDecimalOptions): Chain;
51
+ isDivisibleBy(number: number): Chain;
52
+ isEAN(): Chain;
53
+ isEmail(options?: Options.IsEmailOptions): Chain;
54
+ isEmpty(options?: Options.IsEmptyOptions): Chain;
55
+ isEthereumAddress(): Chain;
56
+ isFQDN(options?: Options.IsFQDNOptions): Chain;
57
+ isFloat(options?: Options.IsFloatOptions): Chain;
58
+ isFreightContainerID(): Chain;
59
+ isFullWidth(): Chain;
60
+ isHalfWidth(): Chain;
61
+ isHash(algorithm: Options.HashAlgorithm): Chain;
62
+ isHexColor(): Chain;
63
+ isHexadecimal(): Chain;
64
+ isHSL(): Chain;
65
+ isIBAN(options?: Options.IsIBANOptions): Chain;
66
+ isIdentityCard(locale: Options.IdentityCardLocale): Chain;
67
+ isIMEI(options?: Options.IsIMEIOptions): Chain;
68
+ isIP(version?: Options.IPVersion): Chain;
69
+ isIPRange(version?: Options.IPVersion): Chain;
70
+ isISBN(versionOrOptions?: number | Options.IsISBNOptions): Chain;
71
+ isISSN(options?: Options.IsISSNOptions): Chain;
72
+ isISIN(): Chain;
73
+ isISO6346(): Chain;
74
+ isISO6391(): Chain;
75
+ isISO8601(options?: Options.IsISO8601Options): Chain;
76
+ isISO31661Numeric(): Chain;
77
+ isISO31661Alpha2(): Chain;
78
+ isISO31661Alpha3(): Chain;
79
+ isISO4217(): Chain;
80
+ isISO15924(): Chain;
81
+ isISRC(): Chain;
82
+ isIn(values: readonly any[]): Chain;
83
+ isInt(options?: Options.IsIntOptions): Chain;
84
+ isJSON(options?: Options.IsJSONOptions): Chain;
85
+ isJWT(): Chain;
86
+ isLatLong(options?: Options.IsLatLongOptions): Chain;
87
+ isLength(options: Options.MinMaxOptions): Chain;
88
+ isLicensePlate(locale: Options.IsLicensePlateLocale): Chain;
89
+ isLocale(): Chain;
90
+ isLowercase(): Chain;
91
+ isLuhnNumber(): Chain;
92
+ isMagnetURI(): Chain;
93
+ isMailtoURI(options?: Options.IsEmailOptions): Chain;
94
+ isMACAddress(options?: Options.IsMACAddressOptions): Chain;
95
+ isMD5(): Chain;
96
+ isMimeType(): Chain;
97
+ isMobilePhone(locale: Options.MobilePhoneLocale | readonly Options.MobilePhoneLocale[], options?: Options.IsMobilePhoneOptions): Chain;
98
+ isMongoId(): Chain;
99
+ isMultibyte(): Chain;
100
+ isNumeric(options?: Options.IsNumericOptions): Chain;
101
+ isOctal(): Chain;
102
+ isPassportNumber(countryCode?: Options.PassportCountryCode): Chain;
103
+ isPort(): Chain;
104
+ isPostalCode(locale: Options.PostalCodeLocale): Chain;
105
+ isRFC3339(): Chain;
106
+ isRgbColor(includePercentValues?: boolean): Chain;
107
+ isSemVer(): Chain;
108
+ isSlug(): Chain;
109
+ isStrongPassword(options?: Options.IsStrongPasswordOptions): Chain;
110
+ isSurrogatePair(): Chain;
111
+ isTaxID(locale: Options.TaxIDLocale): Chain;
112
+ isTime(options?: Options.IsTimeOptions): Chain;
113
+ isURL(options?: Options.IsURLOptions): Chain;
114
+ isULID(): Chain;
115
+ isUUID(version?: Options.UUIDVersion): Chain;
116
+ isUppercase(): Chain;
117
+ isVariableWidth(): Chain;
118
+ isVAT(countryCode: Options.VATCountryCode): Chain;
119
+ isWhitelisted(chars: string | readonly string[]): Chain;
120
+ matches(pattern: RegExp | string, modifiers?: string): any;
121
+ }
@@ -0,0 +1,353 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ValidatorsImpl = void 0;
4
+ const validator = require("validator");
5
+ const context_items_1 = require("../context-items");
6
+ class ValidatorsImpl {
7
+ constructor(builder, chain) {
8
+ this.builder = builder;
9
+ this.chain = chain;
10
+ this.negateNext = false;
11
+ }
12
+ addItem(item) {
13
+ this.builder.addItem(item);
14
+ this.lastValidator = item;
15
+ // Reset this.negateNext so that next validation isn't negated too
16
+ this.negateNext = false;
17
+ return this.chain;
18
+ }
19
+ // validation manipulation
20
+ not() {
21
+ this.negateNext = true;
22
+ return this.chain;
23
+ }
24
+ withMessage(message) {
25
+ this.lastValidator.message = message;
26
+ return this.chain;
27
+ }
28
+ // custom validators
29
+ custom(validator) {
30
+ return this.addItem(new context_items_1.CustomValidation(validator, this.negateNext));
31
+ }
32
+ exists(options = {}) {
33
+ let validator;
34
+ if (options.checkFalsy || options.values === 'falsy') {
35
+ validator = value => !!value;
36
+ }
37
+ else if (options.checkNull || options.values === 'null') {
38
+ validator = value => value != null;
39
+ }
40
+ else {
41
+ validator = value => value !== undefined;
42
+ }
43
+ return this.custom(validator);
44
+ }
45
+ isArray(options = {}) {
46
+ return this.custom(value => Array.isArray(value) &&
47
+ (typeof options.min === 'undefined' || value.length >= options.min) &&
48
+ (typeof options.max === 'undefined' || value.length <= options.max));
49
+ }
50
+ isObject(options = { strict: true }) {
51
+ return this.custom(value => typeof value === 'object' &&
52
+ (options.strict == null || options.strict ? value !== null && !Array.isArray(value) : true));
53
+ }
54
+ isString() {
55
+ return this.custom(value => typeof value === 'string');
56
+ }
57
+ notEmpty(options) {
58
+ this.not();
59
+ return this.isEmpty(options);
60
+ }
61
+ // Standard validators
62
+ addStandardValidation(validator, ...options) {
63
+ return this.addItem(new context_items_1.StandardValidation(validator, this.negateNext, options));
64
+ }
65
+ contains(elem, options) {
66
+ return this.addStandardValidation(validator.contains, elem, options);
67
+ }
68
+ equals(comparison) {
69
+ return this.addStandardValidation(validator.equals, comparison);
70
+ }
71
+ isAbaRouting() {
72
+ return this.addStandardValidation(validator.isAbaRouting);
73
+ }
74
+ isAfter(dateOrOptions) {
75
+ return this.addStandardValidation(validator.isAfter, dateOrOptions);
76
+ }
77
+ isAlpha(locale, options) {
78
+ // TODO(v7): remove string[] support
79
+ const ignore = Array.isArray(options?.ignore) ? options?.ignore.join('') : options?.ignore;
80
+ return this.addStandardValidation(validator.isAlpha, locale, { ...options, ignore });
81
+ }
82
+ isAlphanumeric(locale, options) {
83
+ return this.addStandardValidation(validator.isAlphanumeric, locale, options);
84
+ }
85
+ isAscii() {
86
+ return this.addStandardValidation(validator.isAscii);
87
+ }
88
+ isBase32(options) {
89
+ return this.addStandardValidation(validator.isBase32, options);
90
+ }
91
+ isBase58() {
92
+ return this.addStandardValidation(validator.isBase58);
93
+ }
94
+ isBase64(options) {
95
+ return this.addStandardValidation(validator.isBase64, options);
96
+ }
97
+ isBefore(date) {
98
+ return this.addStandardValidation(validator.isBefore, date);
99
+ }
100
+ isBIC() {
101
+ return this.addStandardValidation(validator.isBIC);
102
+ }
103
+ /**
104
+ * There are basically three levels of strictness for this validator.
105
+ * Passing `{ strict: true }` as option only passes the validation if the value is a JS bool. (It also overrides the loose property of the options).
106
+ * Passing `{ loose: true|false }` along with no `strict` prop of with `strict` falsy follows the behaviour specified in validator.js docs.
107
+ */
108
+ isBoolean(options) {
109
+ if (options?.strict) {
110
+ return this.custom(value => {
111
+ return value === true || value === false;
112
+ });
113
+ }
114
+ return this.addStandardValidation(validator.isBoolean, options);
115
+ }
116
+ isBtcAddress() {
117
+ return this.addStandardValidation(validator.isBtcAddress);
118
+ }
119
+ isByteLength(options) {
120
+ return this.addStandardValidation(validator.isByteLength, options);
121
+ }
122
+ isCreditCard() {
123
+ return this.addStandardValidation(validator.isCreditCard);
124
+ }
125
+ isCurrency(options) {
126
+ return this.addStandardValidation(validator.isCurrency, options);
127
+ }
128
+ isDataURI() {
129
+ return this.addStandardValidation(validator.isDataURI);
130
+ }
131
+ isDate(options) {
132
+ return this.addStandardValidation(validator.isDate, options);
133
+ }
134
+ isDecimal(options) {
135
+ return this.addStandardValidation(validator.isDecimal, options);
136
+ }
137
+ isDivisibleBy(number) {
138
+ return this.addStandardValidation(validator.isDivisibleBy, number);
139
+ }
140
+ isEAN() {
141
+ return this.addStandardValidation(validator.isEAN);
142
+ }
143
+ isEmail(options) {
144
+ return this.addStandardValidation(validator.isEmail, options);
145
+ }
146
+ isEmpty(options) {
147
+ return this.addStandardValidation(validator.isEmpty, options);
148
+ }
149
+ isEthereumAddress() {
150
+ return this.addStandardValidation(validator.isEthereumAddress);
151
+ }
152
+ isFQDN(options) {
153
+ return this.addStandardValidation(validator.isFQDN, options);
154
+ }
155
+ isFloat(options) {
156
+ return this.addStandardValidation(validator.isFloat, options);
157
+ }
158
+ isFreightContainerID() {
159
+ return this.addStandardValidation(validator.isFreightContainerID);
160
+ }
161
+ isFullWidth() {
162
+ return this.addStandardValidation(validator.isFullWidth);
163
+ }
164
+ isHalfWidth() {
165
+ return this.addStandardValidation(validator.isHalfWidth);
166
+ }
167
+ isHash(algorithm) {
168
+ return this.addStandardValidation(validator.isHash, algorithm);
169
+ }
170
+ isHexColor() {
171
+ return this.addStandardValidation(validator.isHexColor);
172
+ }
173
+ isHexadecimal() {
174
+ return this.addStandardValidation(validator.isHexadecimal);
175
+ }
176
+ isHSL() {
177
+ return this.addStandardValidation(validator.isHSL);
178
+ }
179
+ isIBAN(options) {
180
+ return this.addStandardValidation(validator.isIBAN, options);
181
+ }
182
+ isIdentityCard(locale) {
183
+ return this.addStandardValidation(validator.isIdentityCard, locale);
184
+ }
185
+ isIMEI(options) {
186
+ return this.addStandardValidation(validator.isIMEI, options);
187
+ }
188
+ isIP(version) {
189
+ return this.addStandardValidation(validator.isIP, version);
190
+ }
191
+ isIPRange(version) {
192
+ return this.addStandardValidation(validator.isIPRange, version);
193
+ }
194
+ isISBN(versionOrOptions) {
195
+ return this.addStandardValidation(validator.isISBN, versionOrOptions);
196
+ }
197
+ isISSN(options) {
198
+ return this.addStandardValidation(validator.isISSN, options);
199
+ }
200
+ isISIN() {
201
+ return this.addStandardValidation(validator.isISIN);
202
+ }
203
+ isISO6346() {
204
+ return this.addStandardValidation(validator.isISO6346);
205
+ }
206
+ isISO6391() {
207
+ return this.addStandardValidation(validator.isISO6391);
208
+ }
209
+ isISO8601(options) {
210
+ return this.addStandardValidation(validator.isISO8601, options);
211
+ }
212
+ isISO31661Numeric() {
213
+ return this.addStandardValidation(validator.isISO31661Numeric);
214
+ }
215
+ isISO31661Alpha2() {
216
+ return this.addStandardValidation(validator.isISO31661Alpha2);
217
+ }
218
+ isISO31661Alpha3() {
219
+ return this.addStandardValidation(validator.isISO31661Alpha3);
220
+ }
221
+ isISO4217() {
222
+ return this.addStandardValidation(validator.isISO4217);
223
+ }
224
+ isISO15924() {
225
+ return this.addStandardValidation(validator.isISO15924);
226
+ }
227
+ isISRC() {
228
+ return this.addStandardValidation(validator.isISRC);
229
+ }
230
+ isIn(values) {
231
+ return this.addStandardValidation(validator.isIn, values);
232
+ }
233
+ isInt(options) {
234
+ return this.addStandardValidation(validator.isInt, options);
235
+ }
236
+ isJSON(options) {
237
+ return this.addStandardValidation(validator.isJSON, options);
238
+ }
239
+ isJWT() {
240
+ return this.addStandardValidation(validator.isJWT);
241
+ }
242
+ isLatLong(options) {
243
+ return this.addStandardValidation(validator.isLatLong, options);
244
+ }
245
+ isLength(options) {
246
+ return this.addStandardValidation(validator.isLength, options);
247
+ }
248
+ isLicensePlate(locale) {
249
+ return this.addStandardValidation(validator.isLicensePlate, locale);
250
+ }
251
+ isLocale() {
252
+ return this.addStandardValidation(validator.isLocale);
253
+ }
254
+ isLowercase() {
255
+ return this.addStandardValidation(validator.isLowercase);
256
+ }
257
+ isLuhnNumber() {
258
+ return this.addStandardValidation(validator.isLuhnNumber);
259
+ }
260
+ isMagnetURI() {
261
+ return this.addStandardValidation(validator.isMagnetURI);
262
+ }
263
+ isMailtoURI(options) {
264
+ return this.addStandardValidation(validator.isMailtoURI, options);
265
+ }
266
+ isMACAddress(options) {
267
+ return this.addStandardValidation(validator.isMACAddress, options);
268
+ }
269
+ isMD5() {
270
+ return this.addStandardValidation(validator.isMD5);
271
+ }
272
+ isMimeType() {
273
+ return this.addStandardValidation(validator.isMimeType);
274
+ }
275
+ isMobilePhone(locale, options) {
276
+ return this.addStandardValidation(validator.isMobilePhone, locale, options);
277
+ }
278
+ isMongoId() {
279
+ return this.addStandardValidation(validator.isMongoId);
280
+ }
281
+ isMultibyte() {
282
+ return this.addStandardValidation(validator.isMultibyte);
283
+ }
284
+ isNumeric(options) {
285
+ return this.addStandardValidation(validator.isNumeric, options);
286
+ }
287
+ isOctal() {
288
+ return this.addStandardValidation(validator.isOctal);
289
+ }
290
+ isPassportNumber(countryCode) {
291
+ return this.addStandardValidation(validator.isPassportNumber, countryCode);
292
+ }
293
+ isPort() {
294
+ return this.addStandardValidation(validator.isPort);
295
+ }
296
+ isPostalCode(locale) {
297
+ return this.addStandardValidation(validator.isPostalCode, locale);
298
+ }
299
+ isRFC3339() {
300
+ return this.addStandardValidation(validator.isRFC3339);
301
+ }
302
+ isRgbColor(includePercentValues) {
303
+ return this.addStandardValidation(validator.isRgbColor, includePercentValues);
304
+ }
305
+ isSemVer() {
306
+ return this.addStandardValidation(validator.isSemVer);
307
+ }
308
+ isSlug() {
309
+ return this.addStandardValidation(validator.isSlug);
310
+ }
311
+ isStrongPassword(options) {
312
+ return this.addStandardValidation(validator.isStrongPassword, options);
313
+ }
314
+ isSurrogatePair() {
315
+ return this.addStandardValidation(validator.isSurrogatePair);
316
+ }
317
+ isTaxID(locale) {
318
+ return this.addStandardValidation(validator.isTaxID, locale);
319
+ }
320
+ isTime(options) {
321
+ return this.addStandardValidation(validator.isTime, options);
322
+ }
323
+ isURL(options) {
324
+ return this.addStandardValidation(validator.isURL, options);
325
+ }
326
+ isULID() {
327
+ return this.addStandardValidation(validator.isULID);
328
+ }
329
+ isUUID(version) {
330
+ return this.addStandardValidation(validator.isUUID, version);
331
+ }
332
+ isUppercase() {
333
+ return this.addStandardValidation(validator.isUppercase);
334
+ }
335
+ isVariableWidth() {
336
+ return this.addStandardValidation(validator.isVariableWidth);
337
+ }
338
+ isVAT(countryCode) {
339
+ return this.addStandardValidation(validator.isVAT, countryCode);
340
+ }
341
+ isWhitelisted(chars) {
342
+ return this.addStandardValidation(validator.isWhitelisted, chars);
343
+ }
344
+ matches(pattern, modifiers) {
345
+ return this.addStandardValidation.apply(this, [
346
+ validator.matches,
347
+ ...(typeof pattern === 'string'
348
+ ? [pattern, modifiers]
349
+ : [pattern.source, [...new Set((modifiers || '') + pattern.flags)].join('')]),
350
+ ]);
351
+ }
352
+ }
353
+ exports.ValidatorsImpl = ValidatorsImpl;