vasku
Version:
TVM-Solidity contract development framework
22 lines (21 loc) • 671 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validate = void 0;
const suffixes_1 = require("../../../utils/suffixes");
function validate(options) {
if (!isAddress(options.to))
throw new Error(`Invalid address: "${options.to}"`);
if (!isFloat(options.value))
throw new Error(`Invalid value: "${options.value}"`);
return {
to: options.to,
value: BigInt(parseFloat(options.value) * suffixes_1.B)
};
}
exports.validate = validate;
function isAddress(address) {
return /^\d:[0-9a-fA-F]{64}$/.test(address);
}
function isFloat(number) {
return !Number.isNaN(parseFloat(number));
}