@ledgerhq/coin-tron
Version:
Ledger Tron Coin integration
28 lines • 1.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.broadcast = broadcast;
const network_1 = require("../network");
const utils_1 = require("./utils");
async function broadcast(transaction) {
if (typeof transaction === "string") {
const { rawTx, signature } = extractTxAndSignature(transaction);
const { txID, raw_data } = await (0, utils_1.decodeTransaction)(rawTx);
const signedTxPayload = {
txID,
raw_data,
raw_data_hex: rawTx,
signature: [signature],
};
return (0, network_1.broadcastTron)(signedTxPayload);
}
else {
return (0, network_1.broadcastTron)(transaction);
}
}
function extractTxAndSignature(transaction) {
const txLength = parseInt(transaction.slice(0, 4), 16);
const rawTx = transaction.slice(4, txLength + 4);
const signature = transaction.slice(4 + txLength);
return { rawTx, signature };
}
//# sourceMappingURL=broadcast.js.map