UNPKG

minter-js-sdk

Version:
64 lines (58 loc) 1.92 kB
'use strict'; var minterjsTx = require('minterjs-tx'); var minterjsUtil = require('minterjs-util'); var utils = require('../utils.js'); /** * @param {object} txData * @param {string} txData.version * @param {string} txData.publicKey * @param {number|string} txData.height * @param {TxOptions} [options] * @constructor */ function VoteUpdateTxData(_ref) { var version = _ref.version, publicKey = _ref.publicKey, height = _ref.height; var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; if (!options.disableValidation) { utils.validatePublicKey(publicKey, 'publicKey'); utils.validateUint(height, 'height'); } this.version = version; this.publicKey = publicKey; this.height = height; this.txData = new minterjsTx.TxDataVoteUpdate({ version: Buffer.from(version.toString(), 'utf8'), publicKey: minterjsUtil.toBuffer(publicKey), height: utils.integerToHexString(height) }); utils.proxyNestedTxData(this); } /** * @param {object} txTata * @param {Buffer|string} txTata.version * @param {Buffer|string} txTata.publicKey * @param {Buffer|string|number} txTata.height * @param {TxOptions} [options] * @return {VoteUpdateTxData} */ VoteUpdateTxData.fromBufferFields = function fromBufferFields(_ref2) { var version = _ref2.version, publicKey = _ref2.publicKey, height = _ref2.height; var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; return new VoteUpdateTxData({ version: minterjsUtil.toBuffer(version).toString('utf8'), publicKey: utils.dataToPublicKey(publicKey), height: utils.dataToInteger(height) }, options); }; /** * @param {Buffer|string} data * @return {VoteUpdateTxData} */ VoteUpdateTxData.fromRlp = function fromRlp(data) { return VoteUpdateTxData.fromBufferFields(new minterjsTx.TxDataVoteUpdate(data)); }; module.exports = VoteUpdateTxData;