1 | "use strict";
|
2 | var __importDefault = (this && this.__importDefault) || function (mod) {
|
3 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
4 | };
|
5 | Object.defineProperty(exports, "__esModule", { value: true });
|
6 | exports.IsIP = exports.isIP = exports.IS_IP = void 0;
|
7 | const ValidateBy_1 = require("../common/ValidateBy");
|
8 | const isIP_1 = __importDefault(require("validator/lib/isIP"));
|
9 | exports.IS_IP = 'isIp';
|
10 |
|
11 |
|
12 |
|
13 |
|
14 | function isIP(value, version) {
|
15 |
|
16 | const versionStr = version ? `${version}` : undefined;
|
17 | return typeof value === 'string' && (0, isIP_1.default)(value, versionStr);
|
18 | }
|
19 | exports.isIP = isIP;
|
20 |
|
21 |
|
22 |
|
23 |
|
24 | function IsIP(version, validationOptions) {
|
25 | return (0, ValidateBy_1.ValidateBy)({
|
26 | name: exports.IS_IP,
|
27 | constraints: [version],
|
28 | validator: {
|
29 | validate: (value, args) => isIP(value, args.constraints[0]),
|
30 | defaultMessage: (0, ValidateBy_1.buildMessage)(eachPrefix => eachPrefix + '$property must be an ip address', validationOptions),
|
31 | },
|
32 | }, validationOptions);
|
33 | }
|
34 | exports.IsIP = IsIP;
|
35 |
|
\ | No newline at end of file |