UNPKG

nowjs-core

Version:

NowCanDo Javascript Core [nowjs-core] is a library written by TypeScript code maintains under Apache 2.0 licence

25 lines (24 loc) 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const index_1 = require("../index"); const index_2 = require("./index"); exports.VALIDATOR_IP_METADATA_KEY = Symbol('validation:validator:isIP'); function isIP(options, errorMessage) { return (target, propertyKey, descriptor) => { const original = descriptor.value; Reflect.defineMetadata(exports.VALIDATOR_IP_METADATA_KEY, null, target, propertyKey); Reflect.defineMetadata(index_1.VALIDATOR_METADATA_KEY, new IPValidator(options, errorMessage), target, propertyKey); }; } exports.isIP = isIP; exports.PATTERN_IP_UNIVERSAL = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/gi; class IPValidator extends index_2.PatternValidatorBase { constructor(options, errorMessage = 'The value of ${DisplayName} must have ip pattern : ${Pattern} .') { super('IP', exports.PATTERN_IP_UNIVERSAL, errorMessage); options = options || { NetMask: false, Version: ['v4'], }; } } exports.IPValidator = IPValidator;