UNPKG

@ledgerhq/coin-hedera

Version:
49 lines 1.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAccountBalance = exports.buildUnsignedTransaction = exports.broadcastTransaction = void 0; const sdk_1 = require("@hashgraph/sdk"); const errors_1 = require("../errors"); function broadcastTransaction(transaction) { return transaction.execute(getClient()); } exports.broadcastTransaction = broadcastTransaction; async function buildUnsignedTransaction({ account, transaction, }) { const hbarAmount = sdk_1.Hbar.fromTinybars(transaction.amount); const accountId = account.freshAddress; return new sdk_1.TransferTransaction() .setNodeAccountIds([new sdk_1.AccountId(3)]) .setTransactionId(sdk_1.TransactionId.generate(accountId)) .setTransactionMemo(transaction.memo ?? "") .addHbarTransfer(accountId, hbarAmount.negated()) .addHbarTransfer(transaction.recipient, hbarAmount) .freeze(); } exports.buildUnsignedTransaction = buildUnsignedTransaction; async function getAccountBalance(address) { const accountId = sdk_1.AccountId.fromString(address); let accountBalance; try { accountBalance = await new sdk_1.AccountBalanceQuery({ accountId, }).execute(getBalanceClient()); } catch { throw new errors_1.HederaAddAccountError(); } return { balance: accountBalance.hbars.to(sdk_1.HbarUnit.Tinybar), }; } exports.getAccountBalance = getAccountBalance; let _hederaClient = null; let _hederaBalanceClient = null; function getClient() { _hederaClient ??= sdk_1.Client.forMainnet().setMaxNodesPerTransaction(1); //_hederaClient.setNetwork({ mainnet: "https://hedera.coin.ledger.com" }); return _hederaClient; } function getBalanceClient() { _hederaBalanceClient ??= sdk_1.Client.forMainnet(); return _hederaBalanceClient; } //# sourceMappingURL=network.js.map