@ledgerhq/coin-tron
Version:
Ledger Tron Coin integration
25 lines • 1.39 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.craftTransaction = craftTransaction;
const format_1 = require("../network/format");
const bignumber_js_1 = __importDefault(require("bignumber.js"));
const network_1 = require("../network");
async function craftTransaction(transactionIntent) {
const { asset, recipient, sender, amount } = transactionIntent;
const recipientAddress = (0, format_1.decode58Check)(recipient);
const senderAddress = (0, format_1.decode58Check)(sender);
if (asset?.standard === "trc20" && asset.contractAddress) {
const { raw_data_hex: rawDataHex } = await (0, network_1.craftTrc20Transaction)(asset.contractAddress, recipientAddress, senderAddress, new bignumber_js_1.default(amount.toString()));
return rawDataHex;
}
else {
const isTransferAsset = asset?.standard === "trc10";
const tokenId = asset?.standard === "trc10" ? asset.tokenId : undefined;
const { raw_data_hex: rawDataHex } = await (0, network_1.craftStandardTransaction)(tokenId, recipientAddress, senderAddress, new bignumber_js_1.default(amount.toString()), isTransferAsset);
return rawDataHex;
}
}
//# sourceMappingURL=craftTransaction.js.map