UNPKG

opnet

Version:

The perfect library for building Bitcoin-based applications.

32 lines (31 loc) 1.19 kB
import { fromBase64 } from '@btc-vision/bitcoin'; import { Address } from '@btc-vision/transaction'; import { TransactionBase } from '../Transaction.js'; export class InteractionTransaction extends TransactionBase { calldata; senderPubKeyHash; contractSecret; interactionPubKey; wasCompressed; from; contractAddress; contractPublicKey; constructor(transaction, network) { super(transaction, network); this.contractPublicKey = new Address(fromBase64(transaction.contractPublicKey)); if (transaction.calldata) { this.calldata = fromBase64(transaction.calldata); } this.senderPubKeyHash = fromBase64(transaction.senderPubKeyHash); this.contractSecret = fromBase64(transaction.contractSecret); this.interactionPubKey = fromBase64(transaction.interactionPubKey); this.wasCompressed = transaction.wasCompressed || false; this.contractAddress = transaction.contractAddress; try { if (transaction.from) { this.from = new Address(fromBase64(transaction.from), fromBase64(transaction.fromLegacy)); } } catch { } } }