UNPKG

nerve-sdk-js

Version:
77 lines (65 loc) 2.65 kB
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } var fch = require('fch-sdk'); var { BitcoinRechargeData } = require('../../model/BitcoinRechargeData'); var { acc0, acc1, acc2, acc3, acc4 } = require('../testAcc'); var BigNumber = require('bignumber.js'); function computerBtc(amount) { var totalInputAmount = new BigNumber(amount); return totalInputAmount.div(100000000).toString(); } function computerSatoshi(amount) { var totalInputAmount = new BigNumber(amount); return totalInputAmount.times(100000000).toNumber(); } function test() { var txData = new BitcoinRechargeData(); txData.to = 'TNVTdTSPMvHcrsgCsGKxsbjQn66W4QN2Azo4r'; txData.value = computerSatoshi('0.002'); var opReturnBuffer = txData.serialize(); console.log(opReturnBuffer.length); console.log(opReturnBuffer.toString('hex')); var { pri } = acc4(); var pubkeyHex = fch.getPublicKey(pri); var senderAddress = fch.getAddress(pubkeyHex); console.log(senderAddress); } /** * Legacy地址跨链转入NERVE */ function createLegacyTxTest() { return _createLegacyTxTest.apply(this, arguments); } function _createLegacyTxTest() { _createLegacyTxTest = _asyncToGenerator(function* () { var { pri } = acc4(); var pubkeyHex = fch.getPublicKey(pri); var senderAddress = fch.getAddress(pubkeyHex); console.log(senderAddress); var sendAmount = "0.93"; var txData = new BitcoinRechargeData(); txData.to = 'NERVEepb6CwyEWh9mhnmPTJcuWpRzmYvoS7tLm'; txData.value = computerSatoshi(sendAmount); var opReturnBuffer = txData.serialize(); var msg = opReturnBuffer.toString('hex'); var utxos = yield fch.getAccountUTXOs(senderAddress); var feeAndUTXO = fch.calcFeeAndUTXO(utxos, sendAmount, msg); var receiveAddress = "35nAXxa7CtTk1dRZGYga3cBfn7mHRB4qS8"; var hash = yield fch.sendTransaction(pri, feeAndUTXO.utxo, receiveAddress, sendAmount, msg); console.log('hash', hash); }); return _createLegacyTxTest.apply(this, arguments); } createLegacyTxTest(); // test()