UNPKG

@liskhq/lisk-validator

Version:
49 lines 2.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.lisk32 = exports.oddInteger = exports.ipOrFQDN = exports.ip = exports.encryptedPassphrase = exports.path = exports.networkVersion = exports.version = exports.camelCase = exports.uint32 = exports.uint64 = exports.int64 = exports.bytes = exports.hex = void 0; const lisk_cryptography_1 = require("@liskhq/lisk-cryptography"); const validation_1 = require("./validation"); const constants_1 = require("./constants"); exports.hex = validation_1.isHexString; exports.bytes = validation_1.isBytes; const int64 = (data) => (0, validation_1.isNumberString)(data) && (0, validation_1.isSInt64)(BigInt(data)); exports.int64 = int64; const uint64 = (data) => (0, validation_1.isNumberString)(data) && (0, validation_1.isUInt64)(BigInt(data)); exports.uint64 = uint64; exports.uint32 = { type: 'number', validate: (value) => Number.isInteger(value) && value >= 0 && value <= constants_1.MAX_UINT32, }; const camelCaseRegex = /^[a-z][0-9]*([A-Z][a-z]*[a-zA-Z0-9]*|[a-z][a-z]*[a-zA-Z0-9]*)?$/; const camelCase = (data) => camelCaseRegex.exec(data) !== null; exports.camelCase = camelCase; exports.version = validation_1.isSemVer; const networkVersion = (data) => /^(\d|[1-9]\d{1,2})\.(\d|[1-9]\d{1,2})$/.test(data); exports.networkVersion = networkVersion; const path = (data) => /^(.?)(\/[^/]+)+(\/?)$/.test(data); exports.path = path; exports.encryptedPassphrase = validation_1.isEncryptedPassphrase; exports.ip = validation_1.isIP; const ipOrFQDN = (data) => { const hostnameRegex = /^[a-zA-Z](([-0-9a-zA-Z]+)?[0-9a-zA-Z])?(\.[a-zA-Z](([-0-9a-zA-Z]+)?[0-9a-zA-Z])?)*$/; return (0, validation_1.isIPV4)(data) || hostnameRegex.test(data); }; exports.ipOrFQDN = ipOrFQDN; const oddInteger = (data) => { if (typeof data === 'number') { return Number.isInteger(data) && data % 2 === 1; } return /^\d*[13579]$/.test(data); }; exports.oddInteger = oddInteger; const lisk32 = (data) => { try { lisk_cryptography_1.address.validateLisk32Address(data); return true; } catch (error) { return false; } }; exports.lisk32 = lisk32; //# sourceMappingURL=formats.js.map