@swaptoshi/utils
Version:
Library containing generic utility functions for use with Swaptoshi-related software
73 lines • 2.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.verifyString = verifyString;
exports.verifyToken = verifyToken;
exports.verifyCollectionId = verifyCollectionId;
exports.verifyAddress = verifyAddress;
exports.verifyPositiveNumber = verifyPositiveNumber;
exports.verifyNumberString = verifyNumberString;
exports.verifyKlayer32Address = verifyKlayer32Address;
exports.verifyNumber = verifyNumber;
exports.verifyBoolean = verifyBoolean;
exports.verifyBuffer = verifyBuffer;
const cryptography = require("@klayr/cryptography");
const POOL_ADDRESS_LENGTH = 20;
const TOKEN_ID_LENGTH = 8;
const COLLECTION_ID_LENGTH = 4;
function verifyString(name, string) {
if (string.length === 0) {
throw new Error(`${name}, cant be an empty string`);
}
}
function verifyToken(name, token) {
if (token.length !== TOKEN_ID_LENGTH) {
throw new Error(`${name}, needs to be exactly ${TOKEN_ID_LENGTH} bytes`);
}
}
function verifyCollectionId(name, collectionId) {
if (collectionId.length !== COLLECTION_ID_LENGTH) {
throw new Error(`${name}, needs to be exactly ${COLLECTION_ID_LENGTH} bytes`);
}
}
function verifyAddress(name, address) {
if (address.length !== POOL_ADDRESS_LENGTH) {
throw new Error(`${name}, needs to be exactly ${POOL_ADDRESS_LENGTH} bytes`);
}
}
function verifyPositiveNumber(name, number) {
if (BigInt(number) < BigInt(0)) {
throw new Error(`${name}, must be a positive number`);
}
}
function verifyNumberString(name, value) {
try {
BigInt(value);
}
catch {
throw new Error(`${name} needs to be in number string format`);
}
}
function verifyKlayer32Address(name, value) {
try {
cryptography.address.validateKlayr32Address(value);
}
catch {
throw new Error(`${name} needs to be in Klayr32 string format`);
}
}
function verifyNumber(name, value) {
if (typeof value !== 'number') {
throw new Error(`${name}, needs to be a number`);
}
}
function verifyBoolean(name, value) {
if (typeof value !== 'boolean') {
throw new Error(`${name}, needs to be a boolean`);
}
}
function verifyBuffer(name, buffer) {
if (buffer.length === 0) {
throw new Error(`${name}, cant be an empty buffer`);
}
}
//# sourceMappingURL=verify.js.map