diff options
| -rw-r--r-- | routes/liquid/fee.js | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/routes/liquid/fee.js b/routes/liquid/fee.js index 54ecf5f8..9dbb7e0a 100644 --- a/routes/liquid/fee.js +++ b/routes/liquid/fee.js @@ -17,10 +17,14 @@ module.exports = async (req, res) => { if (feeRate) params.feeRate = (feeRate / SATS).toFixed(8); tx = await lq.fundRawTransaction(tx, params); - let decoded = await lq.decodeRawTransaction(tx.hex); - /* TODO: figure out why this multiplier seems necessary */ - feeRate = parseInt(tx.fee * SATS * 1000 / decoded.size); - l.info(decoded.weight, decoded.size, decoded.vsize, params.feeRate * SATS, feeRate); + + if (config.liquid.walletpass) + await lq.walletPassphrase(config.liquid.walletpass, 300); + + let signed = (await lq.signRawTransactionWithWallet(tx.hex)); + decoded = await lq.decodeRawTransaction(signed.hex); + feeRate = parseInt(tx.fee * SATS * 1000 / decoded.vsize); + res.send({ feeRate, tx }); } catch (e) { l.error("error estimating liquid fee", e); |
