@ledgerhq/coin-stellar
Version:
Ledger Stellar Coin integration
27 lines • 1.5 kB
JavaScript
;
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 bignumber_js_1 = __importDefault(require("bignumber.js"));
const account_1 = require("@ledgerhq/coin-framework/account");
const getTransactionStatus_1 = require("./getTransactionStatus");
const prepareTransaction_1 = require("./prepareTransaction");
const createTransaction_1 = require("./createTransaction");
const notCreatedStellarMockAddress = "GAW46JE3SHIAYLNNNQCAZFQ437WB5ZH7LDRDWR5LVDWHCTHCKYB6RCCH";
const estimateMaxSpendable = async ({ account, parentAccount, transaction, }) => {
const mainAccount = (0, account_1.getMainAccount)(account, parentAccount);
const preparedTransaction = await (0, prepareTransaction_1.prepareTransaction)(mainAccount, {
...(0, createTransaction_1.createTransaction)(account),
...transaction,
recipient: transaction?.recipient || notCreatedStellarMockAddress,
// not used address
useAllAmount: true,
});
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mainAccount, preparedTransaction);
return status.amount.gte(0) ? status.amount : new bignumber_js_1.default(0);
};
exports.estimateMaxSpendable = estimateMaxSpendable;
exports.default = exports.estimateMaxSpendable;
//# sourceMappingURL=estimateMaxSpendable.js.map