UNPKG

@ledgerhq/coin-canton

Version:
25 lines 1.41 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.estimateMaxSpendable = void 0; const index_1 = require("@ledgerhq/ledger-wallet-framework/account/index"); const bignumber_js_1 = __importDefault(require("bignumber.js")); const constants_1 = require("../constants"); const createTransaction_1 = require("./createTransaction"); const getTransactionStatus_1 = require("./getTransactionStatus"); const prepareTransaction_1 = require("./prepareTransaction"); const estimateMaxSpendable = async ({ account, parentAccount, transaction }) => { const mainAccount = (0, index_1.getMainAccount)(account, parentAccount); const newTransaction = await (0, prepareTransaction_1.prepareTransaction)(mainAccount, { ...(0, createTransaction_1.createTransaction)(account), ...transaction, recipient: transaction?.recipient || constants_1.CANTON_UNSET_RECIPIENT, amount: new bignumber_js_1.default(0), }); const status = await (0, getTransactionStatus_1.getTransactionStatus)(mainAccount, newTransaction); return bignumber_js_1.default.max(0, account.spendableBalance.minus(status.estimatedFees)); }; exports.estimateMaxSpendable = estimateMaxSpendable; //# sourceMappingURL=estimateMaxSpendable.js.map