TransactionBuilder.fromTransaction constructor
TransactionBuilder.fromTransaction(
- Transaction transaction, [
- NetworkType? network
Implementation
factory TransactionBuilder.fromTransaction(Transaction transaction, [NetworkType? network]) {
final txb = TransactionBuilder(network: network);
// Copy transaction fields
txb.setVersion(transaction.version!);
txb.setLockTime(transaction.locktime!);
// Copy outputs (done first to avoid signature invalidation)
transaction.outs.forEach((txOut) {
txb.addOutput(txOut.script, txOut.value);
});
transaction.ins.forEach((txIn) {
txb._addInputUnsafe(txIn.hash!, txIn.index, Input(sequence: txIn.sequence, script: txIn.script, witness: txIn.witness));
});
// fix some things not possible through the public API
// print(txb.toString());
// txb.__INPUTS.forEach((input, i) => {
// fixMultisigOrder(input, transaction, i);
// });
return txb;
}