@btc-vision/transaction 1.0.54 → 1.0.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitattributes +2 -2
- package/browser/_version.d.ts +1 -1
- package/browser/index.js +1 -1
- package/browser/transaction/builders/TapUnwarpTransaction.d.ts +40 -40
- package/browser/transaction/builders/UnwarpTransaction.d.ts +34 -34
- package/browser/utxo/UTXOManager.d.ts +7 -7
- package/build/_version.d.ts +1 -1
- package/build/_version.js +1 -1
- package/build/transaction/builders/UnwrapTransaction.js +2 -2
- package/gulpfile.js +152 -152
- package/package.json +2 -1
- package/src/_version.ts +1 -1
- package/src/consensus/Consensus.ts +36 -36
- package/src/consensus/ConsensusConfig.ts +39 -39
- package/src/crypto/crypto-browser.js +75 -75
- package/src/generators/AddressGenerator.ts +24 -24
- package/src/generators/Features.ts +5 -5
- package/src/generators/Generator.ts +75 -75
- package/src/generators/builders/CalldataGenerator.ts +148 -148
- package/src/generators/builders/DeploymentGenerator.ts +66 -66
- package/src/index.ts +4 -4
- package/src/keypair/AddressVerificator.ts +40 -40
- package/src/keypair/EcKeyPair.ts +282 -282
- package/src/keypair/Wallet.ts +97 -97
- package/src/keypair/interfaces/IWallet.ts +19 -19
- package/src/metadata/ContractBaseMetadata.ts +23 -23
- package/src/metadata/contracts/wBTC.ts +45 -45
- package/src/metadata/tokens.ts +7 -7
- package/src/network/NetworkInformation.ts +7 -7
- package/src/opnet.ts +84 -84
- package/src/transaction/TransactionFactory.ts +466 -466
- package/src/transaction/browser/BrowserSignerBase.ts +37 -37
- package/src/transaction/browser/Web3Provider.ts +46 -46
- package/src/transaction/browser/extensions/UnisatSigner.ts +218 -218
- package/src/transaction/browser/types/Unisat.ts +80 -80
- package/src/transaction/builders/FundingTransaction.ts +40 -40
- package/src/transaction/builders/InteractionTransaction.ts +38 -38
- package/src/transaction/builders/SharedInteractionTransaction.ts +368 -368
- package/src/transaction/builders/TransactionBuilder.ts +665 -665
- package/src/transaction/builders/UnwrapTransaction.ts +2 -2
- package/src/transaction/interfaces/ITransactionParameters.ts +55 -55
- package/src/transaction/interfaces/Tap.ts +26 -26
- package/src/transaction/psbt/PSBTTypes.ts +3 -3
- package/src/transaction/shared/TweakedTransaction.ts +537 -537
- package/src/utxo/OPNetLimitedProvider.ts +244 -244
- package/src/utxo/interfaces/BroadcastResponse.ts +10 -10
- package/src/utxo/interfaces/IUTXO.ts +29 -29
- package/src/verification/TapscriptVerificator.ts +89 -89
- package/src/wbtc/Generate.ts +40 -40
- package/src/wbtc/UnwrapGeneration.ts +13 -13
- package/src/wbtc/WrappedGenerationParameters.ts +33 -33
- package/webpack.config.js +78 -78
- package/build/Utils.d.ts +0 -0
- package/build/Utils.js +0 -1
- package/build/consensus/metadata/RoswsellConsensus.d.ts +0 -2
- package/build/consensus/metadata/RoswsellConsensus.js +0 -4
- package/build/contracts/ContractMetadataManager.d.ts +0 -0
- package/build/contracts/ContractMetadataManager.js +0 -1
- package/build/generators/OPNetAddressGenerator.d.ts +0 -0
- package/build/generators/OPNetAddressGenerator.js +0 -1
- package/build/generators/builders/UnwrapGenerator.d.ts +0 -8
- package/build/generators/builders/UnwrapGenerator.js +0 -79
- package/build/keypair/interfaces/GeneratedWallet.d.ts +0 -5
- package/build/keypair/interfaces/GeneratedWallet.js +0 -1
- package/build/metadata/CommonContracts.d.ts +0 -6
- package/build/metadata/CommonContracts.js +0 -5
- package/build/metadata/ContractMetadataManager.d.ts +0 -1
- package/build/metadata/ContractMetadataManager.js +0 -9
- package/build/metadata/contracts/ContractBase.d.ts +0 -9
- package/build/metadata/contracts/ContractBase.js +0 -13
- package/build/metadata/contracts/ContractBaseMetadata.d.ts +0 -9
- package/build/metadata/contracts/ContractBaseMetadata.js +0 -13
- package/build/metadata/contracts/ContractMetadataManager.d.ts +0 -0
- package/build/metadata/contracts/ContractMetadataManager.js +0 -1
- package/build/network/NetworkConverter.d.ts +0 -0
- package/build/network/NetworkConverter.js +0 -14
- package/build/scripts/Regtest.d.ts +0 -2
- package/build/scripts/Regtest.js +0 -15
- package/build/scripts/test.d.ts +0 -1
- package/build/scripts/test.js +0 -74
- package/build/signer/Regtest.d.ts +0 -2
- package/build/signer/Regtest.js +0 -15
- package/build/tests/Regtest.d.ts +0 -3
- package/build/tests/Regtest.js +0 -29
- package/build/tests/adaptPSBT.d.ts +0 -1
- package/build/tests/adaptPSBT.js +0 -44
- package/build/tests/btc/send.d.ts +0 -1
- package/build/tests/btc/send.js +0 -35
- package/build/tests/btc/transfer.d.ts +0 -1
- package/build/tests/btc/transfer.js +0 -35
- package/build/tests/createPairReg.d.ts +0 -1
- package/build/tests/createPairReg.js +0 -73
- package/build/tests/deploy/deployMoto.d.ts +0 -4
- package/build/tests/deploy/deployMoto.js +0 -89
- package/build/tests/deploy/deployPool.d.ts +0 -1
- package/build/tests/deploy/deployPool.js +0 -5
- package/build/tests/deploy/deployStep1.d.ts +0 -1
- package/build/tests/deploy/deployStep1.js +0 -5
- package/build/tests/deploy/deployStep2.d.ts +0 -1
- package/build/tests/deploy/deployStep2.js +0 -5
- package/build/tests/deploy/deployStep3.d.ts +0 -1
- package/build/tests/deploy/deployStep3.js +0 -5
- package/build/tests/deploy.d.ts +0 -1
- package/build/tests/deploy.js +0 -41
- package/build/tests/deployMotoRegStep1.d.ts +0 -1
- package/build/tests/deployMotoRegStep1.js +0 -85
- package/build/tests/deployReg.d.ts +0 -1
- package/build/tests/deployReg.js +0 -85
- package/build/tests/factory/createPairReg.d.ts +0 -1
- package/build/tests/factory/createPairReg.js +0 -13
- package/build/tests/gen.d.ts +0 -1
- package/build/tests/gen.js +0 -19
- package/build/tests/interaction.d.ts +0 -5
- package/build/tests/interaction.js +0 -62
- package/build/tests/massWrapReg.d.ts +0 -1
- package/build/tests/massWrapReg.js +0 -105
- package/build/tests/mineReg.d.ts +0 -1
- package/build/tests/mineReg.js +0 -19
- package/build/tests/moto/airdropToken.d.ts +0 -1
- package/build/tests/moto/airdropToken.js +0 -21
- package/build/tests/moto/airdropTokens.d.ts +0 -1
- package/build/tests/moto/airdropTokens.js +0 -60
- package/build/tests/moto/allowance.d.ts +0 -1
- package/build/tests/moto/allowance.js +0 -6
- package/build/tests/moto/approve.d.ts +0 -1
- package/build/tests/moto/approve.js +0 -10
- package/build/tests/moto/approveWBTC.d.ts +0 -1
- package/build/tests/moto/approveWBTC.js +0 -12
- package/build/tests/moto/balanceOf.d.ts +0 -1
- package/build/tests/moto/balanceOf.js +0 -12
- package/build/tests/moto/transfer.d.ts +0 -1
- package/build/tests/moto/transfer.js +0 -16
- package/build/tests/motoswap/airdropToken.d.ts +0 -11
- package/build/tests/motoswap/airdropToken.js +0 -36
- package/build/tests/motoswap/deployMoto.d.ts +0 -4
- package/build/tests/motoswap/deployMoto.js +0 -89
- package/build/tests/motoswap/deployMotoRegStep1.d.ts +0 -1
- package/build/tests/motoswap/deployMotoRegStep1.js +0 -91
- package/build/tests/motoswap/deployMotoRegStep2.d.ts +0 -1
- package/build/tests/motoswap/deployMotoRegStep2.js +0 -91
- package/build/tests/motoswap/deployPool.d.ts +0 -1
- package/build/tests/motoswap/deployPool.js +0 -5
- package/build/tests/motoswap/deployStep1.d.ts +0 -1
- package/build/tests/motoswap/deployStep1.js +0 -5
- package/build/tests/motoswap/deployStep2.d.ts +0 -1
- package/build/tests/motoswap/deployStep2.js +0 -5
- package/build/tests/motoswap/deployStep3.d.ts +0 -1
- package/build/tests/motoswap/deployStep3.js +0 -5
- package/build/tests/motoswap/interaction.d.ts +0 -3
- package/build/tests/motoswap/interaction.js +0 -63
- package/build/tests/motoswap/routerAddLiquidity.d.ts +0 -11
- package/build/tests/motoswap/routerAddLiquidity.js +0 -35
- package/build/tests/motoswap-router/addLiquidity.d.ts +0 -11
- package/build/tests/motoswap-router/addLiquidity.js +0 -35
- package/build/tests/motoswap-router/deployMoto.d.ts +0 -4
- package/build/tests/motoswap-router/deployMoto.js +0 -89
- package/build/tests/motoswap-router/deployPool.d.ts +0 -1
- package/build/tests/motoswap-router/deployPool.js +0 -5
- package/build/tests/motoswap-router/deployStep1.d.ts +0 -1
- package/build/tests/motoswap-router/deployStep1.js +0 -5
- package/build/tests/motoswap-router/deployStep2.d.ts +0 -1
- package/build/tests/motoswap-router/deployStep2.js +0 -5
- package/build/tests/motoswap-router/deployStep3.d.ts +0 -1
- package/build/tests/motoswap-router/deployStep3.js +0 -5
- package/build/tests/motoswap-router/getAmountsOut.d.ts +0 -5
- package/build/tests/motoswap-router/getAmountsOut.js +0 -34
- package/build/tests/motoswap-router/routerAddLiquidity.d.ts +0 -11
- package/build/tests/motoswap-router/routerAddLiquidity.js +0 -35
- package/build/tests/motoswap-router/swap.d.ts +0 -8
- package/build/tests/motoswap-router/swap.js +0 -24
- package/build/tests/multisign.d.ts +0 -1
- package/build/tests/multisign.js +0 -47
- package/build/tests/multisign2.d.ts +0 -1
- package/build/tests/multisign2.js +0 -27
- package/build/tests/pool/DecodePoolAddress.d.ts +0 -6
- package/build/tests/pool/DecodePoolAddress.js +0 -12
- package/build/tests/pool/decodeReserves.d.ts +0 -5
- package/build/tests/pool/decodeReserves.js +0 -13
- package/build/tests/pool/reserves.d.ts +0 -1
- package/build/tests/pool/reserves.js +0 -18
- package/build/tests/shared/Utils.d.ts +0 -2
- package/build/tests/shared/Utils.js +0 -14
- package/build/tests/shared/interaction.d.ts +0 -7
- package/build/tests/shared/interaction.js +0 -85
- package/build/tests/shared/tokens.d.ts +0 -6
- package/build/tests/shared/tokens.js +0 -5
- package/build/tests/stakeReg.d.ts +0 -1
- package/build/tests/stakeReg.js +0 -73
- package/build/tests/stakedReg.d.ts +0 -1
- package/build/tests/stakedReg.js +0 -28
- package/build/tests/test.d.ts +0 -1
- package/build/tests/test.js +0 -51
- package/build/tests/test2.d.ts +0 -1
- package/build/tests/test2.js +0 -73
- package/build/tests/testReg.d.ts +0 -1
- package/build/tests/testReg.js +0 -91
- package/build/tests/tokens.d.ts +0 -6
- package/build/tests/tokens.js +0 -5
- package/build/tests/totalRewardReg.d.ts +0 -1
- package/build/tests/totalRewardReg.js +0 -28
- package/build/tests/transfer.d.ts +0 -1
- package/build/tests/transfer.js +0 -74
- package/build/tests/transferReg.d.ts +0 -1
- package/build/tests/transferReg.js +0 -74
- package/build/tests/unStakeReg.d.ts +0 -1
- package/build/tests/unStakeReg.js +0 -72
- package/build/tests/unwrapReg.d.ts +0 -1
- package/build/tests/unwrapReg.js +0 -61
- package/build/tests/unwrapReg2.d.ts +0 -1
- package/build/tests/unwrapReg2.js +0 -56
- package/build/tests/unwrapRegSegwit.d.ts +0 -1
- package/build/tests/unwrapRegSegwit.js +0 -83
- package/build/tests/wbtc/approve.d.ts +0 -1
- package/build/tests/wbtc/approve.js +0 -6
- package/build/tests/wbtc/approveWBTC.d.ts +0 -1
- package/build/tests/wbtc/approveWBTC.js +0 -12
- package/build/tests/wbtc/massWrapReg.d.ts +0 -1
- package/build/tests/wbtc/massWrapReg.js +0 -105
- package/build/tests/wbtc/transfer.d.ts +0 -1
- package/build/tests/wbtc/transfer.js +0 -16
- package/build/tests/wbtc/transferReg.d.ts +0 -1
- package/build/tests/wbtc/transferReg.js +0 -16
- package/build/tests/wbtc/unStakeReg.d.ts +0 -1
- package/build/tests/wbtc/unStakeReg.js +0 -72
- package/build/tests/wbtc/unwrapReg.d.ts +0 -1
- package/build/tests/wbtc/unwrapReg.js +0 -60
- package/build/tests/wbtc/unwrapRegSegwit.d.ts +0 -1
- package/build/tests/wbtc/unwrapRegSegwit.js +0 -83
- package/build/tests/wbtc/withdrawalRequestReg.d.ts +0 -1
- package/build/tests/wbtc/withdrawalRequestReg.js +0 -71
- package/build/tests/wbtc/wrapReg.d.ts +0 -1
- package/build/tests/wbtc/wrapReg.js +0 -65
- package/build/tests/wbtc/wrapTest.d.ts +0 -1
- package/build/tests/wbtc/wrapTest.js +0 -66
- package/build/tests/withdrawalRequestReg.d.ts +0 -1
- package/build/tests/withdrawalRequestReg.js +0 -71
- package/build/tests/wrap.d.ts +0 -1
- package/build/tests/wrap.js +0 -65
- package/build/tests/wrapReg.d.ts +0 -1
- package/build/tests/wrapReg.js +0 -68
- package/build/tests/wrapTest.d.ts +0 -1
- package/build/tests/wrapTest.js +0 -66
- package/build/tests/wrapTestg.d.ts +0 -1
- package/build/tests/wrapTestg.js +0 -66
- package/build/tests/writers/allowance.d.ts +0 -3
- package/build/tests/writers/allowance.js +0 -10
- package/build/tests/writers/approve.d.ts +0 -4
- package/build/tests/writers/approve.js +0 -11
- package/build/transaction/TransactionBuilder.d.ts +0 -60
- package/build/transaction/TransactionBuilder.js +0 -244
- package/build/transaction/browser/BrowserSigner.d.ts +0 -11
- package/build/transaction/browser/BrowserSigner.js +0 -10
- package/build/transaction/browser/extensions/Unisat.d.ts +0 -54
- package/build/transaction/browser/extensions/Unisat.js +0 -11
- package/build/transaction/builders/GenericTransaction.d.ts +0 -11
- package/build/transaction/builders/GenericTransaction.js +0 -23
- package/build/transaction/builders/TapUnwarpTransaction.d.ts +0 -37
- package/build/transaction/builders/TapUnwarpTransaction.js +0 -201
- package/build/transaction/builders/UnwarpSegwitTransaction.d.ts +0 -34
- package/build/transaction/builders/UnwarpSegwitTransaction.js +0 -184
- package/build/transaction/builders/UnwarpTransaction.d.ts +0 -35
- package/build/transaction/builders/UnwarpTransaction.js +0 -199
- package/build/transaction/interfaces/ITransactions.d.ts +0 -32
- package/build/transaction/interfaces/ITransactions.js +0 -1
- package/build/utxo/IUTXO.d.ts +0 -0
- package/build/utxo/IUTXO.js +0 -1
- package/build/utxo/OPNetUtils.d.ts +0 -7
- package/build/utxo/OPNetUtils.js +0 -47
- package/build/utxo/UTXOManager.d.ts +0 -7
- package/build/utxo/UTXOManager.js +0 -47
- package/build/wbtc/BroadcastResponse.d.ts +0 -0
- package/build/wbtc/BroadcastResponse.js +0 -1
- /package/build/generators/{features.d.ts → Features.d.ts} +0 -0
- /package/build/generators/{features.js → Features.js} +0 -0
- /package/build/generators/builders/{MultisignGenerator.d.ts → MultiSignGenerator.d.ts} +0 -0
- /package/build/generators/builders/{MultisignGenerator.js → MultiSignGenerator.js} +0 -0
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { Taptree } from 'bitcoinjs-lib/src/types.js';
|
|
3
|
-
import { TransactionType } from '../enums/TransactionType.js';
|
|
4
|
-
import { IUnwrapParameters } from '../interfaces/ITransactionParameters.js';
|
|
5
|
-
import { SharedInteractionTransaction } from './SharedInteractionTransaction.js';
|
|
6
|
-
import bitcoin, { Payment, Psbt } from 'bitcoinjs-lib';
|
|
7
|
-
import { VaultUTXOs } from '../processor/PsbtTransaction.js';
|
|
8
|
-
import { PsbtInput } from 'bip174/src/lib/interfaces.js';
|
|
9
|
-
export declare class TapUnwrapTransaction extends SharedInteractionTransaction<TransactionType.WBTC_UNWRAP> {
|
|
10
|
-
private static readonly UNWRAP_SELECTOR;
|
|
11
|
-
type: TransactionType.WBTC_UNWRAP;
|
|
12
|
-
readonly amount: bigint;
|
|
13
|
-
protected readonly compiledTargetScript: Buffer;
|
|
14
|
-
protected readonly scriptTree: Taptree;
|
|
15
|
-
protected sighashTypes: number[];
|
|
16
|
-
protected readonly contractSecret: Buffer;
|
|
17
|
-
protected readonly vaultUTXOs: VaultUTXOs[];
|
|
18
|
-
private readonly wbtc;
|
|
19
|
-
private readonly calculatedSignHash;
|
|
20
|
-
constructor(parameters: IUnwrapParameters);
|
|
21
|
-
static generateBurnCalldata(amount: bigint): Buffer;
|
|
22
|
-
signPSBT(): Psbt;
|
|
23
|
-
mergeVaults(input: VaultUTXOs[]): void;
|
|
24
|
-
protected calculateNumEmptyWitnesses(vault: VaultUTXOs[]): bigint;
|
|
25
|
-
protected calculateNumSignatures(vault: VaultUTXOs[]): bigint;
|
|
26
|
-
protected calculateNumInputs(vault: VaultUTXOs[]): bigint;
|
|
27
|
-
protected internalPubKeyToXOnly(): Buffer;
|
|
28
|
-
protected generateTapDataForInput(pubkeys: Buffer[], minimumSignatures: number): {
|
|
29
|
-
internalPubkey: Buffer;
|
|
30
|
-
network: bitcoin.Network;
|
|
31
|
-
scriptTree: Taptree;
|
|
32
|
-
redeem: Payment;
|
|
33
|
-
};
|
|
34
|
-
protected getScriptSolution(input: PsbtInput): Buffer[];
|
|
35
|
-
protected internalBuildTransaction(transaction: Psbt): boolean;
|
|
36
|
-
private addVaultUTXO;
|
|
37
|
-
private addVaultInputs;
|
|
38
|
-
private calculateOutputLeftAmountFromVaults;
|
|
39
|
-
private getVaultTotalOutputAmount;
|
|
40
|
-
}
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Taptree } from 'bitcoinjs-lib/src/types.js';
|
|
3
|
+
import { TransactionType } from '../enums/TransactionType.js';
|
|
4
|
+
import { IUnwrapParameters } from '../interfaces/ITransactionParameters.js';
|
|
5
|
+
import { SharedInteractionTransaction } from './SharedInteractionTransaction.js';
|
|
6
|
+
import bitcoin, { Payment, Psbt } from 'bitcoinjs-lib';
|
|
7
|
+
import { VaultUTXOs } from '../processor/PsbtTransaction.js';
|
|
8
|
+
import { PsbtInput } from 'bip174/src/lib/interfaces.js';
|
|
9
|
+
export declare class TapUnwrapTransaction extends SharedInteractionTransaction<TransactionType.WBTC_UNWRAP> {
|
|
10
|
+
private static readonly UNWRAP_SELECTOR;
|
|
11
|
+
type: TransactionType.WBTC_UNWRAP;
|
|
12
|
+
readonly amount: bigint;
|
|
13
|
+
protected readonly compiledTargetScript: Buffer;
|
|
14
|
+
protected readonly scriptTree: Taptree;
|
|
15
|
+
protected sighashTypes: number[];
|
|
16
|
+
protected readonly contractSecret: Buffer;
|
|
17
|
+
protected readonly vaultUTXOs: VaultUTXOs[];
|
|
18
|
+
private readonly wbtc;
|
|
19
|
+
private readonly calculatedSignHash;
|
|
20
|
+
constructor(parameters: IUnwrapParameters);
|
|
21
|
+
static generateBurnCalldata(amount: bigint): Buffer;
|
|
22
|
+
signPSBT(): Psbt;
|
|
23
|
+
mergeVaults(input: VaultUTXOs[]): void;
|
|
24
|
+
protected calculateNumEmptyWitnesses(vault: VaultUTXOs[]): bigint;
|
|
25
|
+
protected calculateNumSignatures(vault: VaultUTXOs[]): bigint;
|
|
26
|
+
protected calculateNumInputs(vault: VaultUTXOs[]): bigint;
|
|
27
|
+
protected internalPubKeyToXOnly(): Buffer;
|
|
28
|
+
protected generateTapDataForInput(pubkeys: Buffer[], minimumSignatures: number): {
|
|
29
|
+
internalPubkey: Buffer;
|
|
30
|
+
network: bitcoin.Network;
|
|
31
|
+
scriptTree: Taptree;
|
|
32
|
+
redeem: Payment;
|
|
33
|
+
};
|
|
34
|
+
protected getScriptSolution(input: PsbtInput): Buffer[];
|
|
35
|
+
protected internalBuildTransaction(transaction: Psbt): boolean;
|
|
36
|
+
private addVaultUTXO;
|
|
37
|
+
private addVaultInputs;
|
|
38
|
+
private calculateOutputLeftAmountFromVaults;
|
|
39
|
+
private getVaultTotalOutputAmount;
|
|
40
|
+
}
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { Taptree } from 'bitcoinjs-lib/src/types.js';
|
|
3
|
-
import { TransactionType } from '../enums/TransactionType.js';
|
|
4
|
-
import { IUnwrapParameters } from '../interfaces/ITransactionParameters.js';
|
|
5
|
-
import { SharedInteractionTransaction } from './SharedInteractionTransaction.js';
|
|
6
|
-
import { Psbt } from 'bitcoinjs-lib';
|
|
7
|
-
import { VaultUTXOs } from '../processor/PsbtTransaction.js';
|
|
8
|
-
export declare class UnwrapTransaction extends SharedInteractionTransaction<TransactionType.WBTC_UNWRAP> {
|
|
9
|
-
static readonly MINIMUM_CONSOLIDATION_AMOUNT: bigint;
|
|
10
|
-
private static readonly UNWRAP_SELECTOR;
|
|
11
|
-
type: TransactionType.WBTC_UNWRAP;
|
|
12
|
-
readonly amount: bigint;
|
|
13
|
-
protected readonly compiledTargetScript: Buffer;
|
|
14
|
-
protected readonly scriptTree: Taptree;
|
|
15
|
-
protected sighashTypes: number[];
|
|
16
|
-
protected readonly contractSecret: Buffer;
|
|
17
|
-
protected readonly vaultUTXOs: VaultUTXOs[];
|
|
18
|
-
private readonly wbtc;
|
|
19
|
-
private readonly calculatedSignHash;
|
|
20
|
-
constructor(parameters: IUnwrapParameters);
|
|
21
|
-
static generateBurnCalldata(amount: bigint): Buffer;
|
|
22
|
-
signPSBT(): Psbt;
|
|
23
|
-
mergeVaults(input: VaultUTXOs[]): void;
|
|
24
|
-
protected internalBuildTransaction(transaction: Psbt): boolean;
|
|
25
|
-
protected generateMultiSignRedeemScript(publicKeys: string[], minimum: number): {
|
|
26
|
-
witnessUtxo: Buffer;
|
|
27
|
-
redeemScript: Buffer;
|
|
28
|
-
witnessScript: Buffer;
|
|
29
|
-
};
|
|
30
|
-
private addVaultUTXO;
|
|
31
|
-
private addVaultInputs;
|
|
32
|
-
private calculateOutputLeftAmountFromVaults;
|
|
33
|
-
private getVaultTotalOutputAmount;
|
|
34
|
-
}
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Taptree } from 'bitcoinjs-lib/src/types.js';
|
|
3
|
+
import { TransactionType } from '../enums/TransactionType.js';
|
|
4
|
+
import { IUnwrapParameters } from '../interfaces/ITransactionParameters.js';
|
|
5
|
+
import { SharedInteractionTransaction } from './SharedInteractionTransaction.js';
|
|
6
|
+
import { Psbt } from 'bitcoinjs-lib';
|
|
7
|
+
import { VaultUTXOs } from '../processor/PsbtTransaction.js';
|
|
8
|
+
export declare class UnwrapTransaction extends SharedInteractionTransaction<TransactionType.WBTC_UNWRAP> {
|
|
9
|
+
static readonly MINIMUM_CONSOLIDATION_AMOUNT: bigint;
|
|
10
|
+
private static readonly UNWRAP_SELECTOR;
|
|
11
|
+
type: TransactionType.WBTC_UNWRAP;
|
|
12
|
+
readonly amount: bigint;
|
|
13
|
+
protected readonly compiledTargetScript: Buffer;
|
|
14
|
+
protected readonly scriptTree: Taptree;
|
|
15
|
+
protected sighashTypes: number[];
|
|
16
|
+
protected readonly contractSecret: Buffer;
|
|
17
|
+
protected readonly vaultUTXOs: VaultUTXOs[];
|
|
18
|
+
private readonly wbtc;
|
|
19
|
+
private readonly calculatedSignHash;
|
|
20
|
+
constructor(parameters: IUnwrapParameters);
|
|
21
|
+
static generateBurnCalldata(amount: bigint): Buffer;
|
|
22
|
+
signPSBT(): Psbt;
|
|
23
|
+
mergeVaults(input: VaultUTXOs[]): void;
|
|
24
|
+
protected internalBuildTransaction(transaction: Psbt): boolean;
|
|
25
|
+
protected generateMultiSignRedeemScript(publicKeys: string[], minimum: number): {
|
|
26
|
+
witnessUtxo: Buffer;
|
|
27
|
+
redeemScript: Buffer;
|
|
28
|
+
witnessScript: Buffer;
|
|
29
|
+
};
|
|
30
|
+
private addVaultUTXO;
|
|
31
|
+
private addVaultInputs;
|
|
32
|
+
private calculateOutputLeftAmountFromVaults;
|
|
33
|
+
private getVaultTotalOutputAmount;
|
|
34
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { FetchUTXOParams, UTXO } from './interfaces/IUTXO.js';
|
|
2
|
-
export declare class UTXOManager {
|
|
3
|
-
private readonly opnetAPIUrl;
|
|
4
|
-
private readonly utxoPath;
|
|
5
|
-
constructor(opnetAPIUrl: string);
|
|
6
|
-
fetchUTXO(settings: FetchUTXOParams): Promise<UTXO[]>;
|
|
7
|
-
}
|
|
1
|
+
import { FetchUTXOParams, UTXO } from './interfaces/IUTXO.js';
|
|
2
|
+
export declare class UTXOManager {
|
|
3
|
+
private readonly opnetAPIUrl;
|
|
4
|
+
private readonly utxoPath;
|
|
5
|
+
constructor(opnetAPIUrl: string);
|
|
6
|
+
fetchUTXO(settings: FetchUTXOParams): Promise<UTXO[]>;
|
|
7
|
+
}
|
package/build/_version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "1.0.
|
|
1
|
+
export declare const version = "1.0.55";
|
package/build/_version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '1.0.
|
|
1
|
+
export const version = '1.0.55';
|
|
@@ -91,8 +91,8 @@ export class UnwrapTransaction extends SharedInteractionTransaction {
|
|
|
91
91
|
if (!bestVault) {
|
|
92
92
|
throw new Error('No vaults provided');
|
|
93
93
|
}
|
|
94
|
-
if (outputLeftAmount < currentConsensusConfig.VAULT_MINIMUM_AMOUNT) {
|
|
95
|
-
throw new Error(
|
|
94
|
+
if (outputLeftAmount !== 0n && outputLeftAmount < currentConsensusConfig.VAULT_MINIMUM_AMOUNT) {
|
|
95
|
+
throw new Error(`Output left amount is below the minimum amount: ${outputLeftAmount} below ${currentConsensusConfig.VAULT_MINIMUM_AMOUNT}`);
|
|
96
96
|
}
|
|
97
97
|
let hasConsolidation = outputLeftAmount > currentConsensusConfig.VAULT_MINIMUM_AMOUNT &&
|
|
98
98
|
outputLeftAmount - currentConsensusConfig.UNWRAP_CONSOLIDATION_PREPAID_FEES_SAT !== 0n;
|
package/gulpfile.js
CHANGED
|
@@ -1,152 +1,152 @@
|
|
|
1
|
-
process.on('uncaughtException', function (err) {
|
|
2
|
-
console.log('Caught exception: ', err);
|
|
3
|
-
});
|
|
4
|
-
|
|
5
|
-
import gulp from 'gulp';
|
|
6
|
-
import gulpcache from 'gulp-cached';
|
|
7
|
-
import logger from 'gulp-logger';
|
|
8
|
-
import ts from 'gulp-typescript';
|
|
9
|
-
|
|
10
|
-
const tsProject = ts.createProject('tsconfig.json');
|
|
11
|
-
const tsProjectCJS = ts.createProject('tsconfig.cjs.json');
|
|
12
|
-
|
|
13
|
-
function onError(e) {
|
|
14
|
-
console.log('Errored', e);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
async function build() {
|
|
18
|
-
return new Promise(async (resolve) => {
|
|
19
|
-
tsProject
|
|
20
|
-
.src()
|
|
21
|
-
.pipe(gulpcache())
|
|
22
|
-
.pipe(
|
|
23
|
-
logger({
|
|
24
|
-
before: 'Starting...',
|
|
25
|
-
after: 'Project compiled!',
|
|
26
|
-
extname: '.js',
|
|
27
|
-
showChange: true,
|
|
28
|
-
}),
|
|
29
|
-
)
|
|
30
|
-
.pipe(tsProject())
|
|
31
|
-
.on('error', onError)
|
|
32
|
-
.pipe(gulp.dest('build'))
|
|
33
|
-
.on('end', async () => {
|
|
34
|
-
resolve();
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
async function buildCJS() {
|
|
40
|
-
return new Promise(async (resolve) => {
|
|
41
|
-
tsProject
|
|
42
|
-
.src()
|
|
43
|
-
.pipe(gulpcache())
|
|
44
|
-
.pipe(
|
|
45
|
-
logger({
|
|
46
|
-
before: 'Starting...',
|
|
47
|
-
after: 'Project compiled!',
|
|
48
|
-
extname: '.js',
|
|
49
|
-
showChange: true,
|
|
50
|
-
}),
|
|
51
|
-
)
|
|
52
|
-
.pipe(tsProjectCJS())
|
|
53
|
-
.on('error', onError)
|
|
54
|
-
.pipe(gulp.dest('cjs'))
|
|
55
|
-
.on('end', async () => {
|
|
56
|
-
resolve();
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
async function buildProtoYaml() {
|
|
62
|
-
return new Promise(async (resolve) => {
|
|
63
|
-
gulp.src('./src/**/*.yaml')
|
|
64
|
-
.pipe(
|
|
65
|
-
logger({
|
|
66
|
-
before: 'Starting...',
|
|
67
|
-
after: 'Compiled yaml.',
|
|
68
|
-
extname: '.yaml',
|
|
69
|
-
showChange: true,
|
|
70
|
-
}),
|
|
71
|
-
)
|
|
72
|
-
.pipe(gulpcache())
|
|
73
|
-
.pipe(gulp.dest('./build/'))
|
|
74
|
-
.on('end', () => {
|
|
75
|
-
gulp.src('./src/**/*.proto')
|
|
76
|
-
.pipe(
|
|
77
|
-
logger({
|
|
78
|
-
before: 'Starting...',
|
|
79
|
-
after: 'Compiled protobuf.',
|
|
80
|
-
extname: '.proto',
|
|
81
|
-
showChange: true,
|
|
82
|
-
}),
|
|
83
|
-
)
|
|
84
|
-
.pipe(gulp.dest('./build/'))
|
|
85
|
-
.on('end', async () => {
|
|
86
|
-
gulp.src('./src/config/*.conf')
|
|
87
|
-
.pipe(
|
|
88
|
-
logger({
|
|
89
|
-
before: 'Starting...',
|
|
90
|
-
after: 'Compiled conf.',
|
|
91
|
-
extname: '.conf',
|
|
92
|
-
showChange: true,
|
|
93
|
-
}),
|
|
94
|
-
)
|
|
95
|
-
.pipe(gulpcache())
|
|
96
|
-
.pipe(gulp.dest('./build/config'))
|
|
97
|
-
.on('end', async () => {
|
|
98
|
-
resolve();
|
|
99
|
-
});
|
|
100
|
-
});
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
gulp.task('default', async () => {
|
|
106
|
-
await build().catch((e) => {});
|
|
107
|
-
await buildProtoYaml();
|
|
108
|
-
|
|
109
|
-
return true;
|
|
110
|
-
});
|
|
111
|
-
|
|
112
|
-
gulp.task('cjs', async () => {
|
|
113
|
-
await buildCJS().catch((e) => {});
|
|
114
|
-
await buildProtoYaml();
|
|
115
|
-
|
|
116
|
-
return true;
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
gulp.task('watch', () => {
|
|
120
|
-
gulp.watch(
|
|
121
|
-
['src/**/**/*.ts', 'src/**/*.ts', 'src/**/*.js', 'src/*.ts', 'src/*.js'],
|
|
122
|
-
async (cb) => {
|
|
123
|
-
await build().catch((e) => {
|
|
124
|
-
console.log('Errored 2', e);
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
cb();
|
|
128
|
-
},
|
|
129
|
-
);
|
|
130
|
-
|
|
131
|
-
gulp.watch(
|
|
132
|
-
[
|
|
133
|
-
'src/components/*.yaml',
|
|
134
|
-
'src/**/*.yaml',
|
|
135
|
-
'src/src/*.yaml',
|
|
136
|
-
'src/*.proto',
|
|
137
|
-
'src/**/**/*.proto',
|
|
138
|
-
'src/**/*.proto',
|
|
139
|
-
'*.proto',
|
|
140
|
-
'*.yaml',
|
|
141
|
-
'*.conf',
|
|
142
|
-
'src/config/*.conf',
|
|
143
|
-
],
|
|
144
|
-
async (cb) => {
|
|
145
|
-
await buildProtoYaml().catch((e) => {
|
|
146
|
-
console.log('Errored 2', e);
|
|
147
|
-
});
|
|
148
|
-
|
|
149
|
-
cb();
|
|
150
|
-
},
|
|
151
|
-
);
|
|
152
|
-
});
|
|
1
|
+
process.on('uncaughtException', function (err) {
|
|
2
|
+
console.log('Caught exception: ', err);
|
|
3
|
+
});
|
|
4
|
+
|
|
5
|
+
import gulp from 'gulp';
|
|
6
|
+
import gulpcache from 'gulp-cached';
|
|
7
|
+
import logger from 'gulp-logger';
|
|
8
|
+
import ts from 'gulp-typescript';
|
|
9
|
+
|
|
10
|
+
const tsProject = ts.createProject('tsconfig.json');
|
|
11
|
+
const tsProjectCJS = ts.createProject('tsconfig.cjs.json');
|
|
12
|
+
|
|
13
|
+
function onError(e) {
|
|
14
|
+
console.log('Errored', e);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async function build() {
|
|
18
|
+
return new Promise(async (resolve) => {
|
|
19
|
+
tsProject
|
|
20
|
+
.src()
|
|
21
|
+
.pipe(gulpcache())
|
|
22
|
+
.pipe(
|
|
23
|
+
logger({
|
|
24
|
+
before: 'Starting...',
|
|
25
|
+
after: 'Project compiled!',
|
|
26
|
+
extname: '.js',
|
|
27
|
+
showChange: true,
|
|
28
|
+
}),
|
|
29
|
+
)
|
|
30
|
+
.pipe(tsProject())
|
|
31
|
+
.on('error', onError)
|
|
32
|
+
.pipe(gulp.dest('build'))
|
|
33
|
+
.on('end', async () => {
|
|
34
|
+
resolve();
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
async function buildCJS() {
|
|
40
|
+
return new Promise(async (resolve) => {
|
|
41
|
+
tsProject
|
|
42
|
+
.src()
|
|
43
|
+
.pipe(gulpcache())
|
|
44
|
+
.pipe(
|
|
45
|
+
logger({
|
|
46
|
+
before: 'Starting...',
|
|
47
|
+
after: 'Project compiled!',
|
|
48
|
+
extname: '.js',
|
|
49
|
+
showChange: true,
|
|
50
|
+
}),
|
|
51
|
+
)
|
|
52
|
+
.pipe(tsProjectCJS())
|
|
53
|
+
.on('error', onError)
|
|
54
|
+
.pipe(gulp.dest('cjs'))
|
|
55
|
+
.on('end', async () => {
|
|
56
|
+
resolve();
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
async function buildProtoYaml() {
|
|
62
|
+
return new Promise(async (resolve) => {
|
|
63
|
+
gulp.src('./src/**/*.yaml')
|
|
64
|
+
.pipe(
|
|
65
|
+
logger({
|
|
66
|
+
before: 'Starting...',
|
|
67
|
+
after: 'Compiled yaml.',
|
|
68
|
+
extname: '.yaml',
|
|
69
|
+
showChange: true,
|
|
70
|
+
}),
|
|
71
|
+
)
|
|
72
|
+
.pipe(gulpcache())
|
|
73
|
+
.pipe(gulp.dest('./build/'))
|
|
74
|
+
.on('end', () => {
|
|
75
|
+
gulp.src('./src/**/*.proto')
|
|
76
|
+
.pipe(
|
|
77
|
+
logger({
|
|
78
|
+
before: 'Starting...',
|
|
79
|
+
after: 'Compiled protobuf.',
|
|
80
|
+
extname: '.proto',
|
|
81
|
+
showChange: true,
|
|
82
|
+
}),
|
|
83
|
+
)
|
|
84
|
+
.pipe(gulp.dest('./build/'))
|
|
85
|
+
.on('end', async () => {
|
|
86
|
+
gulp.src('./src/config/*.conf')
|
|
87
|
+
.pipe(
|
|
88
|
+
logger({
|
|
89
|
+
before: 'Starting...',
|
|
90
|
+
after: 'Compiled conf.',
|
|
91
|
+
extname: '.conf',
|
|
92
|
+
showChange: true,
|
|
93
|
+
}),
|
|
94
|
+
)
|
|
95
|
+
.pipe(gulpcache())
|
|
96
|
+
.pipe(gulp.dest('./build/config'))
|
|
97
|
+
.on('end', async () => {
|
|
98
|
+
resolve();
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
gulp.task('default', async () => {
|
|
106
|
+
await build().catch((e) => {});
|
|
107
|
+
await buildProtoYaml();
|
|
108
|
+
|
|
109
|
+
return true;
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
gulp.task('cjs', async () => {
|
|
113
|
+
await buildCJS().catch((e) => {});
|
|
114
|
+
await buildProtoYaml();
|
|
115
|
+
|
|
116
|
+
return true;
|
|
117
|
+
});
|
|
118
|
+
|
|
119
|
+
gulp.task('watch', () => {
|
|
120
|
+
gulp.watch(
|
|
121
|
+
['src/**/**/*.ts', 'src/**/*.ts', 'src/**/*.js', 'src/*.ts', 'src/*.js'],
|
|
122
|
+
async (cb) => {
|
|
123
|
+
await build().catch((e) => {
|
|
124
|
+
console.log('Errored 2', e);
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
cb();
|
|
128
|
+
},
|
|
129
|
+
);
|
|
130
|
+
|
|
131
|
+
gulp.watch(
|
|
132
|
+
[
|
|
133
|
+
'src/components/*.yaml',
|
|
134
|
+
'src/**/*.yaml',
|
|
135
|
+
'src/src/*.yaml',
|
|
136
|
+
'src/*.proto',
|
|
137
|
+
'src/**/**/*.proto',
|
|
138
|
+
'src/**/*.proto',
|
|
139
|
+
'*.proto',
|
|
140
|
+
'*.yaml',
|
|
141
|
+
'*.conf',
|
|
142
|
+
'src/config/*.conf',
|
|
143
|
+
],
|
|
144
|
+
async (cb) => {
|
|
145
|
+
await buildProtoYaml().catch((e) => {
|
|
146
|
+
console.log('Errored 2', e);
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
cb();
|
|
150
|
+
},
|
|
151
|
+
);
|
|
152
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.55",
|
|
4
4
|
"author": "BlobMaster41",
|
|
5
5
|
"description": "OPNet transaction library allows you to create and sign transactions for the OPNet network.",
|
|
6
6
|
"engines": {
|
|
@@ -107,6 +107,7 @@
|
|
|
107
107
|
"gulp-logger": "^0.0.2",
|
|
108
108
|
"gulp-typescript": "^6.0.0-alpha.1",
|
|
109
109
|
"gulplog": "^2.2.0",
|
|
110
|
+
"process": "^0.11.10",
|
|
110
111
|
"ts-loader": "^9.5.1",
|
|
111
112
|
"ts-node": "^10.9.2"
|
|
112
113
|
}
|
package/src/_version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '1.0.
|
|
1
|
+
export const version = '1.0.55';
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description Target consensus updates.
|
|
3
|
-
*
|
|
4
|
-
* @description For one year, there will be a new consensus update every 3 months.
|
|
5
|
-
* @description After one year, there will be a new consensus update every 6 months.
|
|
6
|
-
* @description After two years, there will be a new consensus update every year.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
export enum Consensus {
|
|
10
|
-
Roswell = 0, // Start of the network.
|
|
11
|
-
Rachel = 1,
|
|
12
|
-
Kecksburg = 2,
|
|
13
|
-
Phoenix = 3,
|
|
14
|
-
Aurora = 4, // End of first year.
|
|
15
|
-
Rendlesham = 5,
|
|
16
|
-
Lazar = 6, // End of second year.
|
|
17
|
-
ShagHarbor = 7,
|
|
18
|
-
Exeter = 8,
|
|
19
|
-
Stephenville = 9,
|
|
20
|
-
Valensole = 10,
|
|
21
|
-
Socorro = 11,
|
|
22
|
-
Pascagoula = 12,
|
|
23
|
-
Tehran = 13,
|
|
24
|
-
Westall = 14,
|
|
25
|
-
Hopkinsville = 15,
|
|
26
|
-
Belgium = 16,
|
|
27
|
-
Breeze = 17,
|
|
28
|
-
Flatwoods = 18,
|
|
29
|
-
Maury = 20,
|
|
30
|
-
Varginha = 21,
|
|
31
|
-
Trindade = 22,
|
|
32
|
-
Levelland = 23,
|
|
33
|
-
Wanaque = 24,
|
|
34
|
-
Coyame = 25,
|
|
35
|
-
Delphos = 26,
|
|
36
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @description Target consensus updates.
|
|
3
|
+
*
|
|
4
|
+
* @description For one year, there will be a new consensus update every 3 months.
|
|
5
|
+
* @description After one year, there will be a new consensus update every 6 months.
|
|
6
|
+
* @description After two years, there will be a new consensus update every year.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export enum Consensus {
|
|
10
|
+
Roswell = 0, // Start of the network.
|
|
11
|
+
Rachel = 1,
|
|
12
|
+
Kecksburg = 2,
|
|
13
|
+
Phoenix = 3,
|
|
14
|
+
Aurora = 4, // End of first year.
|
|
15
|
+
Rendlesham = 5,
|
|
16
|
+
Lazar = 6, // End of second year.
|
|
17
|
+
ShagHarbor = 7,
|
|
18
|
+
Exeter = 8,
|
|
19
|
+
Stephenville = 9,
|
|
20
|
+
Valensole = 10,
|
|
21
|
+
Socorro = 11,
|
|
22
|
+
Pascagoula = 12,
|
|
23
|
+
Tehran = 13,
|
|
24
|
+
Westall = 14,
|
|
25
|
+
Hopkinsville = 15,
|
|
26
|
+
Belgium = 16,
|
|
27
|
+
Breeze = 17,
|
|
28
|
+
Flatwoods = 18,
|
|
29
|
+
Maury = 20,
|
|
30
|
+
Varginha = 21,
|
|
31
|
+
Trindade = 22,
|
|
32
|
+
Levelland = 23,
|
|
33
|
+
Wanaque = 24,
|
|
34
|
+
Coyame = 25,
|
|
35
|
+
Delphos = 26,
|
|
36
|
+
}
|