@bitgo-beta/utxo-lib 8.0.3-beta.55 → 8.0.3-beta.551
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/dist/src/address.d.ts +1 -0
- package/dist/src/address.d.ts.map +1 -1
- package/dist/src/address.js +5 -5
- package/dist/src/addressFormat.d.ts +2 -1
- package/dist/src/addressFormat.d.ts.map +1 -1
- package/dist/src/addressFormat.js +9 -9
- package/dist/src/bitgo/Musig2.d.ts +1 -0
- package/dist/src/bitgo/Musig2.d.ts.map +1 -1
- package/dist/src/bitgo/Musig2.js +19 -19
- package/dist/src/bitgo/PsbtUtil.d.ts +18 -0
- package/dist/src/bitgo/PsbtUtil.d.ts.map +1 -1
- package/dist/src/bitgo/PsbtUtil.js +57 -3
- package/dist/src/bitgo/Unspent.d.ts +3 -2
- package/dist/src/bitgo/Unspent.d.ts.map +1 -1
- package/dist/src/bitgo/Unspent.js +3 -3
- package/dist/src/bitgo/UtxoPsbt.d.ts +17 -4
- package/dist/src/bitgo/UtxoPsbt.d.ts.map +1 -1
- package/dist/src/bitgo/UtxoPsbt.js +118 -76
- package/dist/src/bitgo/UtxoTransaction.d.ts +1 -0
- package/dist/src/bitgo/UtxoTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/UtxoTransaction.js +9 -9
- package/dist/src/bitgo/UtxoTransactionBuilder.d.ts +1 -0
- package/dist/src/bitgo/UtxoTransactionBuilder.d.ts.map +1 -1
- package/dist/src/bitgo/bitcoincash/address.d.ts +1 -0
- package/dist/src/bitgo/bitcoincash/address.d.ts.map +1 -1
- package/dist/src/bitgo/bitcoincash/address.js +6 -6
- package/dist/src/bitgo/bitcoincash/index.js +6 -2
- package/dist/src/bitgo/dash/DashPsbt.d.ts +1 -0
- package/dist/src/bitgo/dash/DashPsbt.d.ts.map +1 -1
- package/dist/src/bitgo/dash/DashTransaction.d.ts +1 -0
- package/dist/src/bitgo/dash/DashTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/dash/DashTransaction.js +3 -3
- package/dist/src/bitgo/dash/DashTransactionBuilder.d.ts +1 -0
- package/dist/src/bitgo/dash/DashTransactionBuilder.d.ts.map +1 -1
- package/dist/src/bitgo/dash/index.js +6 -2
- package/dist/src/bitgo/index.d.ts +3 -1
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +9 -3
- package/dist/src/bitgo/keyutil.d.ts +10 -0
- package/dist/src/bitgo/keyutil.d.ts.map +1 -1
- package/dist/src/bitgo/keyutil.js +24 -2
- package/dist/src/bitgo/legacysafe/index.d.ts +16 -0
- package/dist/src/bitgo/legacysafe/index.d.ts.map +1 -0
- package/dist/src/bitgo/legacysafe/index.js +61 -0
- package/dist/src/bitgo/litecoin/LitecoinPsbt.d.ts +1 -0
- package/dist/src/bitgo/litecoin/LitecoinPsbt.d.ts.map +1 -1
- package/dist/src/bitgo/litecoin/LitecoinTransaction.d.ts +2 -1
- package/dist/src/bitgo/litecoin/LitecoinTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/litecoin/LitecoinTransaction.js +2 -2
- package/dist/src/bitgo/litecoin/index.js +6 -2
- package/dist/src/bitgo/outputScripts.d.ts +8 -6
- package/dist/src/bitgo/outputScripts.d.ts.map +1 -1
- package/dist/src/bitgo/outputScripts.js +29 -14
- package/dist/src/bitgo/parseInput.d.ts +12 -7
- package/dist/src/bitgo/parseInput.d.ts.map +1 -1
- package/dist/src/bitgo/parseInput.js +23 -7
- package/dist/src/bitgo/psbt/fromHalfSigned.d.ts +1 -0
- package/dist/src/bitgo/psbt/fromHalfSigned.d.ts.map +1 -1
- package/dist/src/bitgo/psbt/fromHalfSigned.js +5 -5
- package/dist/src/bitgo/psbt/scriptTypes.d.ts +1 -0
- package/dist/src/bitgo/psbt/scriptTypes.d.ts.map +1 -1
- package/dist/src/bitgo/signature.d.ts +3 -2
- package/dist/src/bitgo/signature.d.ts.map +1 -1
- package/dist/src/bitgo/signature.js +17 -8
- package/dist/src/bitgo/transaction.d.ts +14 -0
- package/dist/src/bitgo/transaction.d.ts.map +1 -1
- package/dist/src/bitgo/transaction.js +31 -11
- package/dist/src/bitgo/transactionAmounts.d.ts +9 -0
- package/dist/src/bitgo/transactionAmounts.d.ts.map +1 -0
- package/dist/src/bitgo/transactionAmounts.js +33 -0
- package/dist/src/bitgo/types.d.ts +10 -2
- package/dist/src/bitgo/types.d.ts.map +1 -1
- package/dist/src/bitgo/types.js +11 -2
- package/dist/src/bitgo/wallet/Psbt.d.ts +49 -18
- package/dist/src/bitgo/wallet/Psbt.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/Psbt.js +129 -29
- package/dist/src/bitgo/wallet/Unspent.d.ts +24 -15
- package/dist/src/bitgo/wallet/Unspent.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/Unspent.js +59 -54
- package/dist/src/bitgo/wallet/WalletKeys.d.ts +2 -1
- package/dist/src/bitgo/wallet/WalletKeys.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/WalletOutput.d.ts +17 -1
- package/dist/src/bitgo/wallet/WalletOutput.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/WalletOutput.js +68 -27
- package/dist/src/bitgo/wallet/WalletScripts.js +2 -2
- package/dist/src/bitgo/wallet/WalletUnspentSigner.js +7 -7
- package/dist/src/bitgo/wallet/chains.d.ts +2 -2
- package/dist/src/bitgo/wallet/chains.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/index.d.ts +2 -0
- package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/index.js +8 -2
- package/dist/src/bitgo/wallet/psbt/PsbtOutputs.d.ts +50 -0
- package/dist/src/bitgo/wallet/psbt/PsbtOutputs.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/psbt/PsbtOutputs.js +87 -0
- package/dist/src/bitgo/wallet/psbt/RootNodes.d.ts +32 -0
- package/dist/src/bitgo/wallet/psbt/RootNodes.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/psbt/RootNodes.js +125 -0
- package/dist/src/bitgo/zcash/ZcashBufferutils.d.ts +1 -0
- package/dist/src/bitgo/zcash/ZcashBufferutils.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/ZcashPsbt.d.ts +1 -1
- package/dist/src/bitgo/zcash/ZcashPsbt.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/ZcashPsbt.js +5 -14
- package/dist/src/bitgo/zcash/ZcashTransaction.d.ts +2 -1
- package/dist/src/bitgo/zcash/ZcashTransaction.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/ZcashTransaction.js +15 -15
- package/dist/src/bitgo/zcash/ZcashTransactionBuilder.d.ts +1 -0
- package/dist/src/bitgo/zcash/ZcashTransactionBuilder.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/ZcashTransactionBuilder.js +4 -4
- package/dist/src/bitgo/zcash/address.d.ts +1 -0
- package/dist/src/bitgo/zcash/address.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/address.js +3 -3
- package/dist/src/bitgo/zcash/hashZip0244.d.ts +2 -1
- package/dist/src/bitgo/zcash/hashZip0244.d.ts.map +1 -1
- package/dist/src/bitgo/zcash/hashZip0244.js +3 -3
- package/dist/src/bitgo/zcash/index.js +6 -2
- package/dist/src/classify.d.ts +1 -0
- package/dist/src/classify.d.ts.map +1 -1
- package/dist/src/index.js +6 -2
- package/dist/src/networks.d.ts +2 -2
- package/dist/src/networks.d.ts.map +1 -1
- package/dist/src/networks.js +47 -1
- package/dist/src/noble_ecc.d.ts +7 -7
- package/dist/src/noble_ecc.d.ts.map +1 -1
- package/dist/src/noble_ecc.js +4 -4
- package/dist/src/taproot.d.ts +1 -0
- package/dist/src/taproot.d.ts.map +1 -1
- package/dist/src/templates/multisig/input.d.ts +1 -0
- package/dist/src/templates/multisig/input.d.ts.map +1 -1
- package/dist/src/templates/multisig/output.d.ts +1 -0
- package/dist/src/templates/multisig/output.d.ts.map +1 -1
- package/dist/src/templates/nulldata.d.ts +1 -0
- package/dist/src/templates/nulldata.d.ts.map +1 -1
- package/dist/src/templates/pubkey/input.d.ts +1 -0
- package/dist/src/templates/pubkey/input.d.ts.map +1 -1
- package/dist/src/templates/pubkey/output.d.ts +1 -0
- package/dist/src/templates/pubkey/output.d.ts.map +1 -1
- package/dist/src/templates/pubkeyhash/input.d.ts +1 -0
- package/dist/src/templates/pubkeyhash/input.d.ts.map +1 -1
- package/dist/src/templates/pubkeyhash/output.d.ts +1 -0
- package/dist/src/templates/pubkeyhash/output.d.ts.map +1 -1
- package/dist/src/templates/scripthash/input.d.ts +1 -0
- package/dist/src/templates/scripthash/input.d.ts.map +1 -1
- package/dist/src/templates/scripthash/output.d.ts +1 -0
- package/dist/src/templates/scripthash/output.d.ts.map +1 -1
- package/dist/src/templates/taproot/input.d.ts +1 -0
- package/dist/src/templates/taproot/input.d.ts.map +1 -1
- package/dist/src/templates/taproot/output.d.ts +1 -0
- package/dist/src/templates/taproot/output.d.ts.map +1 -1
- package/dist/src/templates/taprootnofn/input.d.ts +1 -0
- package/dist/src/templates/taprootnofn/input.d.ts.map +1 -1
- package/dist/src/templates/taprootnofn/output.d.ts +1 -0
- package/dist/src/templates/taprootnofn/output.d.ts.map +1 -1
- package/dist/src/templates/witnesscommitment/output.d.ts +1 -0
- package/dist/src/templates/witnesscommitment/output.d.ts.map +1 -1
- package/dist/src/templates/witnesspubkeyhash/input.d.ts +1 -0
- package/dist/src/templates/witnesspubkeyhash/input.d.ts.map +1 -1
- package/dist/src/templates/witnesspubkeyhash/output.d.ts +1 -0
- package/dist/src/templates/witnesspubkeyhash/output.d.ts.map +1 -1
- package/dist/src/templates/witnessscripthash/input.d.ts +1 -0
- package/dist/src/templates/witnessscripthash/input.d.ts.map +1 -1
- package/dist/src/templates/witnessscripthash/output.d.ts +1 -0
- package/dist/src/templates/witnessscripthash/output.d.ts.map +1 -1
- package/dist/src/testutil/index.js +6 -2
- package/dist/src/testutil/keys.d.ts +4 -1
- package/dist/src/testutil/keys.d.ts.map +1 -1
- package/dist/src/testutil/keys.js +18 -3
- package/dist/src/testutil/mock.d.ts +2 -1
- package/dist/src/testutil/mock.d.ts.map +1 -1
- package/dist/src/testutil/mock.js +15 -15
- package/dist/src/testutil/psbt.d.ts +39 -15
- package/dist/src/testutil/psbt.d.ts.map +1 -1
- package/dist/src/testutil/psbt.js +46 -32
- package/dist/src/testutil/transaction.d.ts +15 -6
- package/dist/src/testutil/transaction.d.ts.map +1 -1
- package/dist/src/testutil/transaction.js +20 -20
- package/dist/src/transaction_builder.d.ts +1 -0
- package/dist/src/transaction_builder.d.ts.map +1 -1
- package/dist/src/transaction_builder.js +12 -17
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nulldata.d.ts","sourceRoot":"","sources":["../../../src/templates/nulldata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nulldata.d.ts","sourceRoot":"","sources":["../../../src/templates/nulldata.ts"],"names":[],"mappings":";;AAIA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAItE;yBAJe,KAAK;;;AASrB,QAAA,MAAM,MAAM;;CAAY,CAAC;AAEzB,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkey/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkey/input.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAG/B,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAIrD;yBAJe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkey/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkey/output.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAI/B,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAIrD;yBAJe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkeyhash/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkeyhash/input.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAG/B,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAQrD;yBARe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkeyhash/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/pubkeyhash/output.ts"],"names":[],"mappings":";;AAKA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAWtE;yBAXe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/scripthash/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/scripthash/input.ts"],"names":[],"mappings":";;AASA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CA6BjG;yBA7Be,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/scripthash/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/scripthash/output.ts"],"names":[],"mappings":";;AAKA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAMtE;yBANe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/taproot/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/taproot/input.ts"],"names":[],"mappings":";;AAMA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAS/C;yBATe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/taproot/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/taproot/output.ts"],"names":[],"mappings":";;AAKA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAItE;yBAJe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/taprootnofn/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/taprootnofn/input.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAQ/B,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAUhF;yBAVe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/taprootnofn/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/taprootnofn/output.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAK/B,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAahF;yBAbe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnesscommitment/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnesscommitment/output.ts"],"names":[],"mappings":";;AAUA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAMtE;yBANe,KAAK;;;AAYrB,wBAAgB,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAQjD;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAI7C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnesspubkeyhash/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnesspubkeyhash/input.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAO/B,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAQrD;yBARe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnesspubkeyhash/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnesspubkeyhash/output.ts"],"names":[],"mappings":";;AAKA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAItE;yBAJe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnessscripthash/input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnessscripthash/input.ts"],"names":[],"mappings":";;AASA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAsB1E;yBAtBe,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnessscripthash/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../../src/templates/witnessscripthash/output.ts"],"names":[],"mappings":";;AAKA,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAItE;yBAJe,KAAK"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -14,4 +18,4 @@ __exportStar(require("./keys"), exports);
|
|
|
14
18
|
__exportStar(require("./mock"), exports);
|
|
15
19
|
__exportStar(require("./psbt"), exports);
|
|
16
20
|
__exportStar(require("./transaction"), exports);
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdHV0aWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQUF1QjtBQUN2Qix5Q0FBdUI7QUFDdkIseUNBQXVCO0FBQ3ZCLGdEQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4va2V5cyc7XG5leHBvcnQgKiBmcm9tICcuL21vY2snO1xuZXhwb3J0ICogZnJvbSAnLi9wc2J0JztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuIl19
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { BIP32Interface } from 'bip32';
|
|
2
2
|
import { Triple } from '../bitgo';
|
|
3
3
|
import { RootWalletKeys } from '../bitgo';
|
|
4
|
-
|
|
4
|
+
import { ECPairInterface } from '../noble_ecc';
|
|
5
|
+
export type KeyTriple = Triple<BIP32Interface>;
|
|
6
|
+
export type UncompressedKeyTriple = Triple<ECPairInterface>;
|
|
5
7
|
export declare function getKey(seed: string): BIP32Interface;
|
|
6
8
|
export declare function getKeyTriple(seed: string): KeyTriple;
|
|
9
|
+
export declare function getUncompressedKeyTriple(inputs: Triple<number>): UncompressedKeyTriple;
|
|
7
10
|
export declare function getKeyName(triple: Triple<BIP32Interface>, k: BIP32Interface): string | undefined;
|
|
8
11
|
export declare function getDefaultCosigner<T>(keyset: Triple<T>, signer: T): T;
|
|
9
12
|
export declare function getDefaultWalletKeys(): RootWalletKeys;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/testutil/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,cAAc,EAAE,MAAM,OAAO,CAAC;AAG/D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/testutil/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,cAAc,EAAE,MAAM,OAAO,CAAC;AAG/D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAe,eAAe,EAAE,MAAM,cAAc,CAAC;AAK5D,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAC/C,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAE5D,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAEnD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAEpD;AAaD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,qBAAqB,CAEtF;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAEhG;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAarE;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAErD"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDefaultWalletKeys = exports.getDefaultCosigner = exports.getKeyName = exports.getKeyTriple = exports.getKey = void 0;
|
|
3
|
+
exports.getDefaultWalletKeys = exports.getDefaultCosigner = exports.getKeyName = exports.getUncompressedKeyTriple = exports.getKeyTriple = exports.getKey = void 0;
|
|
4
4
|
const bip32_1 = require("bip32");
|
|
5
5
|
const crypto = require("crypto");
|
|
6
6
|
const bitgo_1 = require("../bitgo");
|
|
7
7
|
const noble_ecc_1 = require("../noble_ecc");
|
|
8
|
-
const
|
|
8
|
+
const networks_1 = require("../networks");
|
|
9
|
+
const bip32 = (0, bip32_1.BIP32Factory)(noble_ecc_1.ecc);
|
|
9
10
|
function getKey(seed) {
|
|
10
11
|
return bip32.fromSeed(crypto.createHash('sha256').update(seed).digest());
|
|
11
12
|
}
|
|
@@ -14,6 +15,20 @@ function getKeyTriple(seed) {
|
|
|
14
15
|
return [getKey(seed + '.0'), getKey(seed + '.1'), getKey(seed + '.2')];
|
|
15
16
|
}
|
|
16
17
|
exports.getKeyTriple = getKeyTriple;
|
|
18
|
+
function getUncompressedKey(input) {
|
|
19
|
+
// Using input for deterministic randomness
|
|
20
|
+
return noble_ecc_1.ECPair.makeRandom({
|
|
21
|
+
compressed: false,
|
|
22
|
+
network: networks_1.networks.testnet,
|
|
23
|
+
rng: () => {
|
|
24
|
+
return Buffer.alloc(32, input);
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function getUncompressedKeyTriple(inputs) {
|
|
29
|
+
return [getUncompressedKey(inputs[0]), getUncompressedKey(inputs[1]), getUncompressedKey(inputs[2])];
|
|
30
|
+
}
|
|
31
|
+
exports.getUncompressedKeyTriple = getUncompressedKeyTriple;
|
|
17
32
|
function getKeyName(triple, k) {
|
|
18
33
|
return ['user', 'backup', 'bitgo'][triple.indexOf(k)];
|
|
19
34
|
}
|
|
@@ -37,4 +52,4 @@ function getDefaultWalletKeys() {
|
|
|
37
52
|
return new bitgo_1.RootWalletKeys(getKeyTriple('default'));
|
|
38
53
|
}
|
|
39
54
|
exports.getDefaultWalletKeys = getDefaultWalletKeys;
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0dXRpbC9rZXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlDQUErRDtBQUMvRCxpQ0FBaUM7QUFHakMsb0NBQTBDO0FBQzFDLDRDQUE0RDtBQUM1RCwwQ0FBdUM7QUFFdkMsTUFBTSxLQUFLLEdBQWEsSUFBQSxvQkFBWSxFQUFDLGVBQUcsQ0FBQyxDQUFDO0FBSzFDLFNBQWdCLE1BQU0sQ0FBQyxJQUFZO0lBQ2pDLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQzNFLENBQUM7QUFGRCx3QkFFQztBQUVELFNBQWdCLFlBQVksQ0FBQyxJQUFZO0lBQ3ZDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3pFLENBQUM7QUFGRCxvQ0FFQztBQUVELFNBQVMsa0JBQWtCLENBQUMsS0FBSztJQUMvQiwyQ0FBMkM7SUFDM0MsT0FBTyxrQkFBTSxDQUFDLFVBQVUsQ0FBQztRQUN2QixVQUFVLEVBQUUsS0FBSztRQUNqQixPQUFPLEVBQUUsbUJBQVEsQ0FBQyxPQUFPO1FBQ3pCLEdBQUcsRUFBRSxHQUFXLEVBQUU7WUFDaEIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqQyxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQWdCLHdCQUF3QixDQUFDLE1BQXNCO0lBQzdELE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZHLENBQUM7QUFGRCw0REFFQztBQUVELFNBQWdCLFVBQVUsQ0FBQyxNQUE4QixFQUFFLENBQWlCO0lBQzFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN4RCxDQUFDO0FBRkQsZ0NBRUM7QUFFRCxTQUFnQixrQkFBa0IsQ0FBSSxNQUFpQixFQUFFLE1BQVM7SUFDaEUsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFJLEVBQUUsQ0FBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUM7SUFDckMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxJQUFJLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDdEIsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELElBQUksRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRTtRQUNyQixPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFiRCxnREFhQztBQUVELFNBQWdCLG9CQUFvQjtJQUNsQyxPQUFPLElBQUksc0JBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztBQUNyRCxDQUFDO0FBRkQsb0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCSVAzMkFQSSwgQklQMzJGYWN0b3J5LCBCSVAzMkludGVyZmFjZSB9IGZyb20gJ2JpcDMyJztcbmltcG9ydCAqIGFzIGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5pbXBvcnQgeyBUcmlwbGUgfSBmcm9tICcuLi9iaXRnbyc7XG5pbXBvcnQgeyBSb290V2FsbGV0S2V5cyB9IGZyb20gJy4uL2JpdGdvJztcbmltcG9ydCB7IGVjYywgRUNQYWlyLCBFQ1BhaXJJbnRlcmZhY2UgfSBmcm9tICcuLi9ub2JsZV9lY2MnO1xuaW1wb3J0IHsgbmV0d29ya3MgfSBmcm9tICcuLi9uZXR3b3Jrcyc7XG5cbmNvbnN0IGJpcDMyOiBCSVAzMkFQSSA9IEJJUDMyRmFjdG9yeShlY2MpO1xuXG5leHBvcnQgdHlwZSBLZXlUcmlwbGUgPSBUcmlwbGU8QklQMzJJbnRlcmZhY2U+O1xuZXhwb3J0IHR5cGUgVW5jb21wcmVzc2VkS2V5VHJpcGxlID0gVHJpcGxlPEVDUGFpckludGVyZmFjZT47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRLZXkoc2VlZDogc3RyaW5nKTogQklQMzJJbnRlcmZhY2Uge1xuICByZXR1cm4gYmlwMzIuZnJvbVNlZWQoY3J5cHRvLmNyZWF0ZUhhc2goJ3NoYTI1NicpLnVwZGF0ZShzZWVkKS5kaWdlc3QoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRLZXlUcmlwbGUoc2VlZDogc3RyaW5nKTogS2V5VHJpcGxlIHtcbiAgcmV0dXJuIFtnZXRLZXkoc2VlZCArICcuMCcpLCBnZXRLZXkoc2VlZCArICcuMScpLCBnZXRLZXkoc2VlZCArICcuMicpXTtcbn1cblxuZnVuY3Rpb24gZ2V0VW5jb21wcmVzc2VkS2V5KGlucHV0KSB7XG4gIC8vIFVzaW5nIGlucHV0IGZvciBkZXRlcm1pbmlzdGljIHJhbmRvbW5lc3NcbiAgcmV0dXJuIEVDUGFpci5tYWtlUmFuZG9tKHtcbiAgICBjb21wcmVzc2VkOiBmYWxzZSxcbiAgICBuZXR3b3JrOiBuZXR3b3Jrcy50ZXN0bmV0LFxuICAgIHJuZzogKCk6IEJ1ZmZlciA9PiB7XG4gICAgICByZXR1cm4gQnVmZmVyLmFsbG9jKDMyLCBpbnB1dCk7XG4gICAgfSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVbmNvbXByZXNzZWRLZXlUcmlwbGUoaW5wdXRzOiBUcmlwbGU8bnVtYmVyPik6IFVuY29tcHJlc3NlZEtleVRyaXBsZSB7XG4gIHJldHVybiBbZ2V0VW5jb21wcmVzc2VkS2V5KGlucHV0c1swXSksIGdldFVuY29tcHJlc3NlZEtleShpbnB1dHNbMV0pLCBnZXRVbmNvbXByZXNzZWRLZXkoaW5wdXRzWzJdKV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRLZXlOYW1lKHRyaXBsZTogVHJpcGxlPEJJUDMySW50ZXJmYWNlPiwgazogQklQMzJJbnRlcmZhY2UpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICByZXR1cm4gWyd1c2VyJywgJ2JhY2t1cCcsICdiaXRnbyddW3RyaXBsZS5pbmRleE9mKGspXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRDb3NpZ25lcjxUPihrZXlzZXQ6IFRyaXBsZTxUPiwgc2lnbmVyOiBUKTogVCB7XG4gIGNvbnN0IGVxID0gKGE6IFQsIGI6IFQpID0+IGEgPT09IGIgfHwgKEJ1ZmZlci5pc0J1ZmZlcihhKSAmJiBCdWZmZXIuaXNCdWZmZXIoYikgJiYgYS5lcXVhbHMoYikpO1xuICBjb25zdCBbdXNlciwgYmFja3VwLCBiaXRnb10gPSBrZXlzZXQ7XG4gIGlmIChlcShzaWduZXIsIHVzZXIpKSB7XG4gICAgcmV0dXJuIGJpdGdvO1xuICB9XG4gIGlmIChlcShzaWduZXIsIGJhY2t1cCkpIHtcbiAgICByZXR1cm4gYml0Z287XG4gIH1cbiAgaWYgKGVxKHNpZ25lciwgYml0Z28pKSB7XG4gICAgcmV0dXJuIHVzZXI7XG4gIH1cbiAgdGhyb3cgbmV3IEVycm9yKGBzaWduZXIgbm90IGluIHB1YmtleXNgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRXYWxsZXRLZXlzKCk6IFJvb3RXYWxsZXRLZXlzIHtcbiAgcmV0dXJuIG5ldyBSb290V2FsbGV0S2V5cyhnZXRLZXlUcmlwbGUoJ2RlZmF1bHQnKSk7XG59XG4iXX0=
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import { BIP32Interface } from 'bip32';
|
|
3
4
|
import { Network } from '../networks';
|
|
4
5
|
import { ChainCode, NonWitnessWalletUnspent, outputScripts, RootWalletKeys, Unspent, UnspentWithPrevTx, UtxoTransaction, WalletUnspent } from '../bitgo';
|
|
5
|
-
export
|
|
6
|
+
export type InputType = outputScripts.ScriptType2Of3;
|
|
6
7
|
export declare function mockPrevTx(vout: number, outputScript: Buffer, value: bigint, network: Network): UtxoTransaction<bigint>;
|
|
7
8
|
export declare const replayProtectionKeyPair: BIP32Interface;
|
|
8
9
|
export declare function isReplayProtectionUnspent<TNumber extends bigint | number>(u: Unspent<TNumber>, network: Network): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../../src/testutil/mock.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../../src/testutil/mock.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAc,OAAO,EAAY,MAAM,aAAa,CAAC;AAE5D,OAAO,EACL,SAAS,EAMT,uBAAuB,EACvB,aAAa,EACb,cAAc,EAEd,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,aAAa,EACd,MAAM,UAAU,CAAC;AAMlB,MAAM,MAAM,SAAS,GAAG,aAAa,CAAC,cAAc,CAAC;AAErD,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,eAAe,CAAC,MAAM,CAAC,CA8BzB;AAED,eAAO,MAAM,uBAAuB,gBAA8B,CAAC;AAGnE,wBAAgB,yBAAyB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACvE,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EACnB,OAAO,EAAE,OAAO,GACf,OAAO,CAET;AAED,wBAAgB,2BAA2B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACzE,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,EACd,EAAE,GAA6B,EAAE,IAAQ,EAAE,GAAE;IAAE,GAAG,CAAC,EAAE,cAAc,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GACxF,iBAAiB,CAAC,OAAO,CAAC,CAI5B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/D,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,EACd,EACE,KAAS,EACT,KAAS,EACT,IAA6B,EAC7B,IAAQ,EACR,EAAE,GACH,GAAE;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/F,aAAa,CAAC,OAAO,CAAC,GAAG,uBAAuB,CAAC,OAAO,CAAC,CA0B3D;AAED,wBAAgB,YAAY,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC1D,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,CAAC,SAAS,GAAG,aAAa,CAAC,kBAAkB,CAAC,EAAE,EAClE,gBAAgB,EAAE,OAAO,EACzB,OAAO,EAAE,OAAO,GACf,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,CAgB/C"}
|
|
@@ -10,8 +10,8 @@ const address_1 = require("../address");
|
|
|
10
10
|
const outputScripts_1 = require("../bitgo/outputScripts");
|
|
11
11
|
const keys_1 = require("./keys");
|
|
12
12
|
function mockPrevTx(vout, outputScript, value, network) {
|
|
13
|
-
const psbtFromNetwork = bitgo_1.createPsbtForNetwork({ network });
|
|
14
|
-
const keypair = keys_1.getKey('mock-prev-tx');
|
|
13
|
+
const psbtFromNetwork = (0, bitgo_1.createPsbtForNetwork)({ network });
|
|
14
|
+
const keypair = (0, keys_1.getKey)('mock-prev-tx');
|
|
15
15
|
const pubkey = keypair.publicKey;
|
|
16
16
|
assert(keypair.privateKey);
|
|
17
17
|
const payment = utxolib.payments.p2wpkh({ pubkey });
|
|
@@ -40,29 +40,29 @@ function mockPrevTx(vout, outputScript, value, network) {
|
|
|
40
40
|
return psbtFromNetwork.extractTransaction();
|
|
41
41
|
}
|
|
42
42
|
exports.mockPrevTx = mockPrevTx;
|
|
43
|
-
exports.replayProtectionKeyPair = keys_1.getKey('replay-protection');
|
|
44
|
-
const replayProtectionScriptPubKey = outputScripts_1.createOutputScriptP2shP2pk(exports.replayProtectionKeyPair.publicKey).scriptPubKey;
|
|
43
|
+
exports.replayProtectionKeyPair = (0, keys_1.getKey)('replay-protection');
|
|
44
|
+
const replayProtectionScriptPubKey = (0, outputScripts_1.createOutputScriptP2shP2pk)(exports.replayProtectionKeyPair.publicKey).scriptPubKey;
|
|
45
45
|
function isReplayProtectionUnspent(u, network) {
|
|
46
|
-
return u.address === address_1.fromOutputScript(replayProtectionScriptPubKey, network);
|
|
46
|
+
return u.address === (0, address_1.fromOutputScript)(replayProtectionScriptPubKey, network);
|
|
47
47
|
}
|
|
48
48
|
exports.isReplayProtectionUnspent = isReplayProtectionUnspent;
|
|
49
49
|
function mockReplayProtectionUnspent(network, value, { key = exports.replayProtectionKeyPair, vout = 0 } = {}) {
|
|
50
|
-
const outputScript = outputScripts_1.createOutputScriptP2shP2pk(key.publicKey).scriptPubKey;
|
|
50
|
+
const outputScript = (0, outputScripts_1.createOutputScriptP2shP2pk)(key.publicKey).scriptPubKey;
|
|
51
51
|
const prevTransaction = mockPrevTx(vout, outputScript, BigInt(value), network);
|
|
52
|
-
return { ...bitgo_1.fromOutputWithPrevTx(prevTransaction, vout), value };
|
|
52
|
+
return { ...(0, bitgo_1.fromOutputWithPrevTx)(prevTransaction, vout), value };
|
|
53
53
|
}
|
|
54
54
|
exports.mockReplayProtectionUnspent = mockReplayProtectionUnspent;
|
|
55
|
-
function mockWalletUnspent(network, value, { chain = 0, index = 0, keys = keys_1.getDefaultWalletKeys(), vout = 0, id, } = {}) {
|
|
55
|
+
function mockWalletUnspent(network, value, { chain = 0, index = 0, keys = (0, keys_1.getDefaultWalletKeys)(), vout = 0, id, } = {}) {
|
|
56
56
|
const derivedKeys = keys.deriveForChainAndIndex(chain, index);
|
|
57
|
-
const address = address_1.fromOutputScript(outputScripts_1.createOutputScript2of3(derivedKeys.publicKeys, bitgo_1.scriptTypeForChain(chain)).scriptPubKey, network);
|
|
57
|
+
const address = (0, address_1.fromOutputScript)((0, outputScripts_1.createOutputScript2of3)(derivedKeys.publicKeys, (0, bitgo_1.scriptTypeForChain)(chain)).scriptPubKey, network);
|
|
58
58
|
if (id && typeof id === 'string') {
|
|
59
59
|
return { id, address, chain, index, value };
|
|
60
60
|
}
|
|
61
61
|
else {
|
|
62
|
-
const prevTransaction = mockPrevTx(vout, outputScripts_1.createOutputScript2of3(derivedKeys.publicKeys, bitgo_1.scriptTypeForChain(chain), network).scriptPubKey, BigInt(value), network);
|
|
63
|
-
const unspent = bitgo_1.isSegwit(chain) || networks_1.getMainnet(network) === networks_1.networks.zcash
|
|
64
|
-
? bitgo_1.fromOutput(prevTransaction, vout)
|
|
65
|
-
: bitgo_1.fromOutputWithPrevTx(prevTransaction, vout);
|
|
62
|
+
const prevTransaction = mockPrevTx(vout, (0, outputScripts_1.createOutputScript2of3)(derivedKeys.publicKeys, (0, bitgo_1.scriptTypeForChain)(chain), network).scriptPubKey, BigInt(value), network);
|
|
63
|
+
const unspent = (0, bitgo_1.isSegwit)(chain) || (0, networks_1.getMainnet)(network) === networks_1.networks.zcash
|
|
64
|
+
? (0, bitgo_1.fromOutput)(prevTransaction, vout)
|
|
65
|
+
: (0, bitgo_1.fromOutputWithPrevTx)(prevTransaction, vout);
|
|
66
66
|
return {
|
|
67
67
|
...unspent,
|
|
68
68
|
chain,
|
|
@@ -77,7 +77,7 @@ function mockUnspents(rootWalletKeys, inputScriptTypes, testOutputAmount, networ
|
|
|
77
77
|
if (bitgo_1.outputScripts.isScriptType2Of3(t)) {
|
|
78
78
|
return mockWalletUnspent(network, testOutputAmount, {
|
|
79
79
|
keys: rootWalletKeys,
|
|
80
|
-
chain: bitgo_1.getExternalChainCode(t),
|
|
80
|
+
chain: (0, bitgo_1.getExternalChainCode)(t),
|
|
81
81
|
vout: i,
|
|
82
82
|
});
|
|
83
83
|
}
|
|
@@ -91,4 +91,4 @@ function mockUnspents(rootWalletKeys, inputScriptTypes, testOutputAmount, networ
|
|
|
91
91
|
});
|
|
92
92
|
}
|
|
93
93
|
exports.mockUnspents = mockUnspents;
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0dXRpbC9tb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlDQUFpQztBQUVqQywwQ0FBMEM7QUFDMUMsOEJBQThCO0FBQzlCLDBDQUE0RDtBQUU1RCxvQ0Fla0I7QUFDbEIsd0NBQThDO0FBQzlDLDBEQUE0RjtBQUU1RixpQ0FBc0Q7QUFJdEQsU0FBZ0IsVUFBVSxDQUN4QixJQUFZLEVBQ1osWUFBb0IsRUFDcEIsS0FBYSxFQUNiLE9BQWdCO0lBRWhCLE1BQU0sZUFBZSxHQUFHLDRCQUFvQixDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUUxRCxNQUFNLE9BQU8sR0FBRyxhQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztJQUNqQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNCLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNwRCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQ2xDLElBQUksQ0FBQyxVQUFVO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO0lBRTFGLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDMUMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7U0FDNUQ7YUFBTTtZQUNMLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7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Q0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFyQkQsb0NBcUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBCSVAzMkludGVyZmFjZSB9IGZyb20gJ2JpcDMyJztcbmltcG9ydCAqIGFzIG5vYmxlIGZyb20gJ0Bub2JsZS9zZWNwMjU2azEnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICcuLic7XG5pbXBvcnQgeyBnZXRNYWlubmV0LCBOZXR3b3JrLCBuZXR3b3JrcyB9IGZyb20gJy4uL25ldHdvcmtzJztcblxuaW1wb3J0IHtcbiAgQ2hhaW5Db2RlLFxuICBjcmVhdGVQc2J0Rm9yTmV0d29yayxcbiAgZnJvbU91dHB1dCxcbiAgZnJvbU91dHB1dFdpdGhQcmV2VHgsXG4gIGdldEV4dGVybmFsQ2hhaW5Db2RlLFxuICBpc1NlZ3dpdCxcbiAgTm9uV2l0bmVzc1dhbGxldFVuc3BlbnQsXG4gIG91dHB1dFNjcmlwdHMsXG4gIFJvb3RXYWxsZXRLZXlzLFxuICBzY3JpcHRUeXBlRm9yQ2hhaW4sXG4gIFVuc3BlbnQsXG4gIFVuc3BlbnRXaXRoUHJldlR4LFxuICBVdHhvVHJhbnNhY3Rpb24sXG4gIFdhbGxldFVuc3BlbnQsXG59IGZyb20gJy4uL2JpdGdvJztcbmltcG9ydCB7IGZyb21PdXRwdXRTY3JpcHQgfSBmcm9tICcuLi9hZGRyZXNzJztcbmltcG9ydCB7IGNyZWF0ZU91dHB1dFNjcmlwdDJvZjMsIGNyZWF0ZU91dHB1dFNjcmlwdFAyc2hQMnBrIH0gZnJvbSAnLi4vYml0Z28vb3V0cHV0U2NyaXB0cyc7XG5cbmltcG9ydCB7IGdldERlZmF1bHRXYWxsZXRLZXlzLCBnZXRLZXkgfSBmcm9tICcuL2tleXMnO1xuXG5leHBvcnQgdHlwZSBJbnB1dFR5cGUgPSBvdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGUyT2YzO1xuXG5leHBvcnQgZnVuY3Rpb24gbW9ja1ByZXZUeChcbiAgdm91dDogbnVtYmVyLFxuICBvdXRwdXRTY3JpcHQ6IEJ1ZmZlcixcbiAgdmFsdWU6IGJpZ2ludCxcbiAgbmV0d29yazogTmV0d29ya1xuKTogVXR4b1RyYW5zYWN0aW9uPGJpZ2ludD4ge1xuICBjb25zdCBwc2J0RnJvbU5ldHdvcmsgPSBjcmVhdGVQc2J0Rm9yTmV0d29yayh7IG5ldHdvcmsgfSk7XG5cbiAgY29uc3Qga2V5cGFpciA9IGdldEtleSgnbW9jay1wcmV2LXR4Jyk7XG4gIGNvbnN0IHB1YmtleSA9IGtleXBhaXIucHVibGljS2V5O1xuICBhc3NlcnQoa2V5cGFpci5wcml2YXRlS2V5KTtcbiAgY29uc3QgcGF5bWVudCA9IHV0eG9saWIucGF5bWVudHMucDJ3cGtoKHsgcHVia2V5IH0pO1xuICBjb25zdCBkZXN0T3V0cHV0ID0gcGF5bWVudC5vdXRwdXQ7XG4gIGlmICghZGVzdE91dHB1dCkgdGhyb3cgbmV3IEVycm9yKCdJbXBvc3NpYmxlLCBwYXltZW50IHdlIGp1c3QgY29uc3RydWN0ZWQgaGFzIG5vIG91dHB1dCcpO1xuXG4gIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPD0gdm91dDsgaW5kZXgrKykge1xuICAgIGlmIChpbmRleCA9PT0gdm91dCkge1xuICAgICAgcHNidEZyb21OZXR3b3JrLmFkZE91dHB1dCh7IHNjcmlwdDogb3V0cHV0U2NyaXB0LCB2YWx1ZSB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHNidEZyb21OZXR3b3JrLmFkZE91dHB1dCh7IHNjcmlwdDogZGVzdE91dHB1dCwgdmFsdWUgfSk7XG4gICAgfVxuICB9XG4gIHBzYnRGcm9tTmV0d29yay5hZGRJbnB1dCh7XG4gICAgaGFzaDogQnVmZmVyLmFsbG9jKDMyLCAweDAxKSxcbiAgICBpbmRleDogMCxcbiAgICB3aXRuZXNzVXR4bzogeyBzY3JpcHQ6IGRlc3RPdXRwdXQsIHZhbHVlOiB2YWx1ZSAqIChCaWdJbnQodm91dCkgKyBCaWdJbnQoMSkpICsgQmlnSW50KDEwMDApIH0sXG4gIH0pO1xuICBwc2J0RnJvbU5ldHdvcmsuc2lnbklucHV0KDAsIHtcbiAgICBwdWJsaWNLZXk6IHB1YmtleSxcbiAgICBzaWduOiAoaGFzaDogQnVmZmVyLCBsb3dSPzogYm9vbGVhbikgPT5cbiAgICAgIEJ1ZmZlci5mcm9tKG5vYmxlLnNpZ25TeW5jKGhhc2gsIGtleXBhaXIucHJpdmF0ZUtleSBhcyBCdWZmZXIsIHsgY2Fub25pY2FsOiAhbG93UiwgZGVyOiBmYWxzZSB9KSksXG4gIH0pO1xuICBwc2J0RnJvbU5ldHdvcmsudmFsaWRhdGVTaWduYXR1cmVzT2ZBbGxJbnB1dHMoKTtcbiAgcHNidEZyb21OZXR3b3JrLmZpbmFsaXplQWxsSW5wdXRzKCk7XG4gIHJldHVybiBwc2J0RnJvbU5ldHdvcmsuZXh0cmFjdFRyYW5zYWN0aW9uKCk7XG59XG5cbmV4cG9ydCBjb25zdCByZXBsYXlQcm90ZWN0aW9uS2V5UGFpciA9IGdldEtleSgncmVwbGF5LXByb3RlY3Rpb24nKTtcbmNvbnN0IHJlcGxheVByb3RlY3Rpb25TY3JpcHRQdWJLZXkgPSBjcmVhdGVPdXRwdXRTY3JpcHRQMnNoUDJwayhyZXBsYXlQcm90ZWN0aW9uS2V5UGFpci5wdWJsaWNLZXkpLnNjcmlwdFB1YktleTtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzUmVwbGF5UHJvdGVjdGlvblVuc3BlbnQ8VE51bWJlciBleHRlbmRzIGJpZ2ludCB8IG51bWJlcj4oXG4gIHU6IFVuc3BlbnQ8VE51bWJlcj4sXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IGJvb2xlYW4ge1xuICByZXR1cm4gdS5hZGRyZXNzID09PSBmcm9tT3V0cHV0U2NyaXB0KHJlcGxheVByb3RlY3Rpb25TY3JpcHRQdWJLZXksIG5ldHdvcmspO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9ja1JlcGxheVByb3RlY3Rpb25VbnNwZW50PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICBuZXR3b3JrOiBOZXR3b3JrLFxuICB2YWx1ZTogVE51bWJlcixcbiAgeyBrZXkgPSByZXBsYXlQcm90ZWN0aW9uS2V5UGFpciwgdm91dCA9IDAgfTogeyBrZXk/OiBCSVAzMkludGVyZmFjZTsgdm91dD86IG51bWJlciB9ID0ge31cbik6IFVuc3BlbnRXaXRoUHJldlR4PFROdW1iZXI+IHtcbiAgY29uc3Qgb3V0cHV0U2NyaXB0ID0gY3JlYXRlT3V0cHV0U2NyaXB0UDJzaFAycGsoa2V5LnB1YmxpY0tleSkuc2NyaXB0UHViS2V5O1xuICBjb25zdCBwcmV2VHJhbnNhY3Rpb24gPSBtb2NrUHJldlR4KHZvdXQsIG91dHB1dFNjcmlwdCwgQmlnSW50KHZhbHVlKSwgbmV0d29yayk7XG4gIHJldHVybiB7IC4uLmZyb21PdXRwdXRXaXRoUHJldlR4KHByZXZUcmFuc2FjdGlvbiwgdm91dCksIHZhbHVlIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2NrV2FsbGV0VW5zcGVudDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgbmV0d29yazogTmV0d29yayxcbiAgdmFsdWU6IFROdW1iZXIsXG4gIHtcbiAgICBjaGFpbiA9IDAsXG4gICAgaW5kZXggPSAwLFxuICAgIGtleXMgPSBnZXREZWZhdWx0V2FsbGV0S2V5cygpLFxuICAgIHZvdXQgPSAwLFxuICAgIGlkLFxuICB9OiB7IGNoYWluPzogQ2hhaW5Db2RlOyBpbmRleD86IG51bWJlcjsga2V5cz86IFJvb3RXYWxsZXRLZXlzOyB2b3V0PzogbnVtYmVyOyBpZD86IHN0cmluZyB9ID0ge31cbik6IFdhbGxldFVuc3BlbnQ8VE51bWJlcj4gfCBOb25XaXRuZXNzV2FsbGV0VW5zcGVudDxUTnVtYmVyPiB7XG4gIGNvbnN0IGRlcml2ZWRLZXlzID0ga2V5cy5kZXJpdmVGb3JDaGFpbkFuZEluZGV4KGNoYWluLCBpbmRleCk7XG4gIGNvbnN0IGFkZHJlc3MgPSBmcm9tT3V0cHV0U2NyaXB0KFxuICAgIGNyZWF0ZU91dHB1dFNjcmlwdDJvZjMoZGVyaXZlZEtleXMucHVibGljS2V5cywgc2NyaXB0VHlwZUZvckNoYWluKGNoYWluKSkuc2NyaXB0UHViS2V5LFxuICAgIG5ldHdvcmtcbiAgKTtcbiAgaWYgKGlkICYmIHR5cGVvZiBpZCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4geyBpZCwgYWRkcmVzcywgY2hhaW4sIGluZGV4LCB2YWx1ZSB9O1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHByZXZUcmFuc2FjdGlvbiA9IG1vY2tQcmV2VHgoXG4gICAgICB2b3V0LFxuICAgICAgY3JlYXRlT3V0cHV0U2NyaXB0Mm9mMyhkZXJpdmVkS2V5cy5wdWJsaWNLZXlzLCBzY3JpcHRUeXBlRm9yQ2hhaW4oY2hhaW4pLCBuZXR3b3JrKS5zY3JpcHRQdWJLZXksXG4gICAgICBCaWdJbnQodmFsdWUpLFxuICAgICAgbmV0d29ya1xuICAgICk7XG4gICAgY29uc3QgdW5zcGVudCA9XG4gICAgICBpc1NlZ3dpdChjaGFpbikgfHwgZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuemNhc2hcbiAgICAgICAgPyBmcm9tT3V0cHV0KHByZXZUcmFuc2FjdGlvbiwgdm91dClcbiAgICAgICAgOiBmcm9tT3V0cHV0V2l0aFByZXZUeChwcmV2VHJhbnNhY3Rpb24sIHZvdXQpO1xuICAgIHJldHVybiB7XG4gICAgICAuLi51bnNwZW50LFxuICAgICAgY2hhaW4sXG4gICAgICBpbmRleCxcbiAgICAgIHZhbHVlLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vY2tVbnNwZW50czxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgcm9vdFdhbGxldEtleXM6IFJvb3RXYWxsZXRLZXlzLFxuICBpbnB1dFNjcmlwdFR5cGVzOiAoSW5wdXRUeXBlIHwgb3V0cHV0U2NyaXB0cy5TY3JpcHRUeXBlUDJzaFAycGspW10sXG4gIHRlc3RPdXRwdXRBbW91bnQ6IFROdW1iZXIsXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IChVbnNwZW50PFROdW1iZXI+IHwgV2FsbGV0VW5zcGVudDxUTnVtYmVyPilbXSB7XG4gIHJldHVybiBpbnB1dFNjcmlwdFR5cGVzLm1hcCgodCwgaSk6IFVuc3BlbnQ8VE51bWJlcj4gPT4ge1xuICAgIGlmIChvdXRwdXRTY3JpcHRzLmlzU2NyaXB0VHlwZTJPZjModCkpIHtcbiAgICAgIHJldHVybiBtb2NrV2FsbGV0VW5zcGVudChuZXR3b3JrLCB0ZXN0T3V0cHV0QW1vdW50LCB7XG4gICAgICAgIGtleXM6IHJvb3RXYWxsZXRLZXlzLFxuICAgICAgICBjaGFpbjogZ2V0RXh0ZXJuYWxDaGFpbkNvZGUodCksXG4gICAgICAgIHZvdXQ6IGksXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHQgPT09IG91dHB1dFNjcmlwdHMuc2NyaXB0VHlwZVAyc2hQMnBrKSB7XG4gICAgICByZXR1cm4gbW9ja1JlcGxheVByb3RlY3Rpb25VbnNwZW50KG5ldHdvcmssIHRlc3RPdXRwdXRBbW91bnQsIHtcbiAgICAgICAga2V5OiByZXBsYXlQcm90ZWN0aW9uS2V5UGFpcixcbiAgICAgICAgdm91dDogaSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgaW5wdXQgdHlwZSAke3R9YCk7XG4gIH0pO1xufVxuIl19
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0dXRpbC9tb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlDQUFpQztBQUVqQywwQ0FBMEM7QUFDMUMsOEJBQThCO0FBQzlCLDBDQUE0RDtBQUU1RCxvQ0Fla0I7QUFDbEIsd0NBQThDO0FBQzlDLDBEQUE0RjtBQUU1RixpQ0FBc0Q7QUFJdEQsU0FBZ0IsVUFBVSxDQUN4QixJQUFZLEVBQ1osWUFBb0IsRUFDcEIsS0FBYSxFQUNiLE9BQWdCO0lBRWhCLE1BQU0sZUFBZSxHQUFHLElBQUEsNEJBQW9CLEVBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBRTFELE1BQU0sT0FBTyxHQUFHLElBQUEsYUFBTSxFQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDakMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDcEQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUNsQyxJQUFJLENBQUMsVUFBVTtRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsdURBQXVELENBQUMsQ0FBQztJQUUxRixLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLElBQUksSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQzFDLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNsQixlQUFlLENBQUMsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQzVEO2FBQU07WUFDTCxlQUFlLENBQUMsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUs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QUFHLEVBQUUsK0JBQXVCO2dCQUM1QixJQUFJLEVBQUUsQ0FBQzthQUNSLENBQUMsQ0FBQztTQUNKO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFyQkQsb0NBcUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBCSVAzMkludGVyZmFjZSB9IGZyb20gJ2JpcDMyJztcbmltcG9ydCAqIGFzIG5vYmxlIGZyb20gJ0Bub2JsZS9zZWNwMjU2azEnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICcuLic7XG5pbXBvcnQgeyBnZXRNYWlubmV0LCBOZXR3b3JrLCBuZXR3b3JrcyB9IGZyb20gJy4uL25ldHdvcmtzJztcblxuaW1wb3J0IHtcbiAgQ2hhaW5Db2RlLFxuICBjcmVhdGVQc2J0Rm9yTmV0d29yayxcbiAgZnJvbU91dHB1dCxcbiAgZnJvbU91dHB1dFdpdGhQcmV2VHgsXG4gIGdldEV4dGVybmFsQ2hhaW5Db2RlLFxuICBpc1NlZ3dpdCxcbiAgTm9uV2l0bmVzc1dhbGxldFVuc3BlbnQsXG4gIG91dHB1dFNjcmlwdHMsXG4gIFJvb3RXYWxsZXRLZXlzLFxuICBzY3JpcHRUeXBlRm9yQ2hhaW4sXG4gIFVuc3BlbnQsXG4gIFVuc3BlbnRXaXRoUHJldlR4LFxuICBVdHhvVHJhbnNhY3Rpb24sXG4gIFdhbGxldFVuc3BlbnQsXG59IGZyb20gJy4uL2JpdGdvJztcbmltcG9ydCB7IGZyb21PdXRwdXRTY3JpcHQgfSBmcm9tICcuLi9hZGRyZXNzJztcbmltcG9ydCB7IGNyZWF0ZU91dHB1dFNjcmlwdDJvZjMsIGNyZWF0ZU91dHB1dFNjcmlwdFAyc2hQMnBrIH0gZnJvbSAnLi4vYml0Z28vb3V0cHV0U2NyaXB0cyc7XG5cbmltcG9ydCB7IGdldERlZmF1bHRXYWxsZXRLZXlzLCBnZXRLZXkgfSBmcm9tICcuL2tleXMnO1xuXG5leHBvcnQgdHlwZSBJbnB1dFR5cGUgPSBvdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGUyT2YzO1xuXG5leHBvcnQgZnVuY3Rpb24gbW9ja1ByZXZUeChcbiAgdm91dDogbnVtYmVyLFxuICBvdXRwdXRTY3JpcHQ6IEJ1ZmZlcixcbiAgdmFsdWU6IGJpZ2ludCxcbiAgbmV0d29yazogTmV0d29ya1xuKTogVXR4b1RyYW5zYWN0aW9uPGJpZ2ludD4ge1xuICBjb25zdCBwc2J0RnJvbU5ldHdvcmsgPSBjcmVhdGVQc2J0Rm9yTmV0d29yayh7IG5ldHdvcmsgfSk7XG5cbiAgY29uc3Qga2V5cGFpciA9IGdldEtleSgnbW9jay1wcmV2LXR4Jyk7XG4gIGNvbnN0IHB1YmtleSA9IGtleXBhaXIucHVibGljS2V5O1xuICBhc3NlcnQoa2V5cGFpci5wcml2YXRlS2V5KTtcbiAgY29uc3QgcGF5bWVudCA9IHV0eG9saWIucGF5bWVudHMucDJ3cGtoKHsgcHVia2V5IH0pO1xuICBjb25zdCBkZXN0T3V0cHV0ID0gcGF5bWVudC5vdXRwdXQ7XG4gIGlmICghZGVzdE91dHB1dCkgdGhyb3cgbmV3IEVycm9yKCdJbXBvc3NpYmxlLCBwYXltZW50IHdlIGp1c3QgY29uc3RydWN0ZWQgaGFzIG5vIG91dHB1dCcpO1xuXG4gIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPD0gdm91dDsgaW5kZXgrKykge1xuICAgIGlmIChpbmRleCA9PT0gdm91dCkge1xuICAgICAgcHNidEZyb21OZXR3b3JrLmFkZE91dHB1dCh7IHNjcmlwdDogb3V0cHV0U2NyaXB0LCB2YWx1ZSB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHNidEZyb21OZXR3b3JrLmFkZE91dHB1dCh7IHNjcmlwdDogZGVzdE91dHB1dCwgdmFsdWUgfSk7XG4gICAgfVxuICB9XG4gIHBzYnRGcm9tTmV0d29yay5hZGRJbnB1dCh7XG4gICAgaGFzaDogQnVmZmVyLmFsbG9jKDMyLCAweDAxKSxcbiAgICBpbmRleDogMCxcbiAgICB3aXRuZXNzVXR4bzogeyBzY3JpcHQ6IGRlc3RPdXRwdXQsIHZhbHVlOiB2YWx1ZSAqIChCaWdJbnQodm91dCkgKyBCaWdJbnQoMSkpICsgQmlnSW50KDEwMDApIH0sXG4gIH0pO1xuICBwc2J0RnJvbU5ldHdvcmsuc2lnbklucHV0KDAsIHtcbiAgICBwdWJsaWNLZXk6IHB1YmtleSxcbiAgICBzaWduOiAoaGFzaDogQnVmZmVyLCBsb3dSPzogYm9vbGVhbikgPT5cbiAgICAgIEJ1ZmZlci5mcm9tKG5vYmxlLnNpZ25TeW5jKGhhc2gsIGtleXBhaXIucHJpdmF0ZUtleSBhcyBCdWZmZXIsIHsgY2Fub25pY2FsOiAhbG93UiwgZGVyOiBmYWxzZSB9KSksXG4gIH0pO1xuICBwc2J0RnJvbU5ldHdvcmsudmFsaWRhdGVTaWduYXR1cmVzT2ZBbGxJbnB1dHMoKTtcbiAgcHNidEZyb21OZXR3b3JrLmZpbmFsaXplQWxsSW5wdXRzKCk7XG4gIHJldHVybiBwc2J0RnJvbU5ldHdvcmsuZXh0cmFjdFRyYW5zYWN0aW9uKCk7XG59XG5cbmV4cG9ydCBjb25zdCByZXBsYXlQcm90ZWN0aW9uS2V5UGFpciA9IGdldEtleSgncmVwbGF5LXByb3RlY3Rpb24nKTtcbmNvbnN0IHJlcGxheVByb3RlY3Rpb25TY3JpcHRQdWJLZXkgPSBjcmVhdGVPdXRwdXRTY3JpcHRQMnNoUDJwayhyZXBsYXlQcm90ZWN0aW9uS2V5UGFpci5wdWJsaWNLZXkpLnNjcmlwdFB1YktleTtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzUmVwbGF5UHJvdGVjdGlvblVuc3BlbnQ8VE51bWJlciBleHRlbmRzIGJpZ2ludCB8IG51bWJlcj4oXG4gIHU6IFVuc3BlbnQ8VE51bWJlcj4sXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IGJvb2xlYW4ge1xuICByZXR1cm4gdS5hZGRyZXNzID09PSBmcm9tT3V0cHV0U2NyaXB0KHJlcGxheVByb3RlY3Rpb25TY3JpcHRQdWJLZXksIG5ldHdvcmspO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9ja1JlcGxheVByb3RlY3Rpb25VbnNwZW50PFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+KFxuICBuZXR3b3JrOiBOZXR3b3JrLFxuICB2YWx1ZTogVE51bWJlcixcbiAgeyBrZXkgPSByZXBsYXlQcm90ZWN0aW9uS2V5UGFpciwgdm91dCA9IDAgfTogeyBrZXk/OiBCSVAzMkludGVyZmFjZTsgdm91dD86IG51bWJlciB9ID0ge31cbik6IFVuc3BlbnRXaXRoUHJldlR4PFROdW1iZXI+IHtcbiAgY29uc3Qgb3V0cHV0U2NyaXB0ID0gY3JlYXRlT3V0cHV0U2NyaXB0UDJzaFAycGsoa2V5LnB1YmxpY0tleSkuc2NyaXB0UHViS2V5O1xuICBjb25zdCBwcmV2VHJhbnNhY3Rpb24gPSBtb2NrUHJldlR4KHZvdXQsIG91dHB1dFNjcmlwdCwgQmlnSW50KHZhbHVlKSwgbmV0d29yayk7XG4gIHJldHVybiB7IC4uLmZyb21PdXRwdXRXaXRoUHJldlR4KHByZXZUcmFuc2FjdGlvbiwgdm91dCksIHZhbHVlIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2NrV2FsbGV0VW5zcGVudDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgbmV0d29yazogTmV0d29yayxcbiAgdmFsdWU6IFROdW1iZXIsXG4gIHtcbiAgICBjaGFpbiA9IDAsXG4gICAgaW5kZXggPSAwLFxuICAgIGtleXMgPSBnZXREZWZhdWx0V2FsbGV0S2V5cygpLFxuICAgIHZvdXQgPSAwLFxuICAgIGlkLFxuICB9OiB7IGNoYWluPzogQ2hhaW5Db2RlOyBpbmRleD86IG51bWJlcjsga2V5cz86IFJvb3RXYWxsZXRLZXlzOyB2b3V0PzogbnVtYmVyOyBpZD86IHN0cmluZyB9ID0ge31cbik6IFdhbGxldFVuc3BlbnQ8VE51bWJlcj4gfCBOb25XaXRuZXNzV2FsbGV0VW5zcGVudDxUTnVtYmVyPiB7XG4gIGNvbnN0IGRlcml2ZWRLZXlzID0ga2V5cy5kZXJpdmVGb3JDaGFpbkFuZEluZGV4KGNoYWluLCBpbmRleCk7XG4gIGNvbnN0IGFkZHJlc3MgPSBmcm9tT3V0cHV0U2NyaXB0KFxuICAgIGNyZWF0ZU91dHB1dFNjcmlwdDJvZjMoZGVyaXZlZEtleXMucHVibGljS2V5cywgc2NyaXB0VHlwZUZvckNoYWluKGNoYWluKSkuc2NyaXB0UHViS2V5LFxuICAgIG5ldHdvcmtcbiAgKTtcbiAgaWYgKGlkICYmIHR5cGVvZiBpZCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4geyBpZCwgYWRkcmVzcywgY2hhaW4sIGluZGV4LCB2YWx1ZSB9O1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHByZXZUcmFuc2FjdGlvbiA9IG1vY2tQcmV2VHgoXG4gICAgICB2b3V0LFxuICAgICAgY3JlYXRlT3V0cHV0U2NyaXB0Mm9mMyhkZXJpdmVkS2V5cy5wdWJsaWNLZXlzLCBzY3JpcHRUeXBlRm9yQ2hhaW4oY2hhaW4pLCBuZXR3b3JrKS5zY3JpcHRQdWJLZXksXG4gICAgICBCaWdJbnQodmFsdWUpLFxuICAgICAgbmV0d29ya1xuICAgICk7XG4gICAgY29uc3QgdW5zcGVudCA9XG4gICAgICBpc1NlZ3dpdChjaGFpbikgfHwgZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuemNhc2hcbiAgICAgICAgPyBmcm9tT3V0cHV0KHByZXZUcmFuc2FjdGlvbiwgdm91dClcbiAgICAgICAgOiBmcm9tT3V0cHV0V2l0aFByZXZUeChwcmV2VHJhbnNhY3Rpb24sIHZvdXQpO1xuICAgIHJldHVybiB7XG4gICAgICAuLi51bnNwZW50LFxuICAgICAgY2hhaW4sXG4gICAgICBpbmRleCxcbiAgICAgIHZhbHVlLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vY2tVbnNwZW50czxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50PihcbiAgcm9vdFdhbGxldEtleXM6IFJvb3RXYWxsZXRLZXlzLFxuICBpbnB1dFNjcmlwdFR5cGVzOiAoSW5wdXRUeXBlIHwgb3V0cHV0U2NyaXB0cy5TY3JpcHRUeXBlUDJzaFAycGspW10sXG4gIHRlc3RPdXRwdXRBbW91bnQ6IFROdW1iZXIsXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IChVbnNwZW50PFROdW1iZXI+IHwgV2FsbGV0VW5zcGVudDxUTnVtYmVyPilbXSB7XG4gIHJldHVybiBpbnB1dFNjcmlwdFR5cGVzLm1hcCgodCwgaSk6IFVuc3BlbnQ8VE51bWJlcj4gPT4ge1xuICAgIGlmIChvdXRwdXRTY3JpcHRzLmlzU2NyaXB0VHlwZTJPZjModCkpIHtcbiAgICAgIHJldHVybiBtb2NrV2FsbGV0VW5zcGVudChuZXR3b3JrLCB0ZXN0T3V0cHV0QW1vdW50LCB7XG4gICAgICAgIGtleXM6IHJvb3RXYWxsZXRLZXlzLFxuICAgICAgICBjaGFpbjogZ2V0RXh0ZXJuYWxDaGFpbkNvZGUodCksXG4gICAgICAgIHZvdXQ6IGksXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHQgPT09IG91dHB1dFNjcmlwdHMuc2NyaXB0VHlwZVAyc2hQMnBrKSB7XG4gICAgICByZXR1cm4gbW9ja1JlcGxheVByb3RlY3Rpb25VbnNwZW50KG5ldHdvcmssIHRlc3RPdXRwdXRBbW91bnQsIHtcbiAgICAgICAga2V5OiByZXBsYXlQcm90ZWN0aW9uS2V5UGFpcixcbiAgICAgICAgdm91dDogaSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgaW5wdXQgdHlwZSAke3R9YCk7XG4gIH0pO1xufVxuIl19
|
|
@@ -1,30 +1,33 @@
|
|
|
1
1
|
import { ScriptType, ScriptType2Of3 } from '../bitgo/outputScripts';
|
|
2
|
-
import { KeyName, RootWalletKeys, Unspent, UtxoPsbt, UtxoTransaction
|
|
2
|
+
import { KeyName, RootWalletKeys, Unspent, UtxoPsbt, UtxoTransaction } from '../bitgo';
|
|
3
3
|
import { Network } from '../networks';
|
|
4
4
|
/**
|
|
5
5
|
* input script type and value.
|
|
6
6
|
* use p2trMusig2 for p2trMusig2 script path.
|
|
7
7
|
* use taprootKeyPathSpend for p2trMusig2 key path.
|
|
8
8
|
*/
|
|
9
|
-
export
|
|
10
|
-
export
|
|
9
|
+
export type InputScriptType = ScriptType | 'taprootKeyPathSpend';
|
|
10
|
+
export type OutputScriptType = ScriptType2Of3;
|
|
11
11
|
/**
|
|
12
12
|
* input script type and value
|
|
13
13
|
*/
|
|
14
|
-
export
|
|
14
|
+
export type Input = {
|
|
15
15
|
scriptType: InputScriptType;
|
|
16
16
|
value: bigint;
|
|
17
|
-
}
|
|
17
|
+
};
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
20
|
-
* set isInternalAddress=true for internal output address
|
|
19
|
+
* Set isInternalAddress=true for internal output address
|
|
21
20
|
*/
|
|
22
|
-
export
|
|
23
|
-
address?: string;
|
|
24
|
-
scriptType?: OutputScriptType;
|
|
21
|
+
export type Output = {
|
|
25
22
|
value: bigint;
|
|
26
23
|
isInternalAddress?: boolean;
|
|
27
|
-
}
|
|
24
|
+
} & ({
|
|
25
|
+
scriptType: OutputScriptType;
|
|
26
|
+
} | {
|
|
27
|
+
address: string;
|
|
28
|
+
} | {
|
|
29
|
+
script: string;
|
|
30
|
+
});
|
|
28
31
|
/**
|
|
29
32
|
* array of supported input script types.
|
|
30
33
|
* use p2trMusig2 for p2trMusig2 script path.
|
|
@@ -53,19 +56,40 @@ export declare function getSigners(inputType: InputScriptType): {
|
|
|
53
56
|
* signs with first or second signature for single input.
|
|
54
57
|
* p2shP2pk is signed only with first sign.
|
|
55
58
|
*/
|
|
56
|
-
export declare function signPsbtInput(psbt: UtxoPsbt, input: Input, inputIndex: number, rootWalletKeys: RootWalletKeys, sign: 'halfsigned' | 'fullsigned'
|
|
59
|
+
export declare function signPsbtInput(psbt: UtxoPsbt, input: Input, inputIndex: number, rootWalletKeys: RootWalletKeys, sign: 'halfsigned' | 'fullsigned', params?: {
|
|
60
|
+
signers?: {
|
|
61
|
+
signerName: KeyName;
|
|
62
|
+
cosignerName?: KeyName;
|
|
63
|
+
};
|
|
64
|
+
deterministic?: boolean;
|
|
65
|
+
skipNonWitnessUtxo?: boolean;
|
|
66
|
+
}): void;
|
|
57
67
|
/**
|
|
58
68
|
* signs with first or second signature for all inputs.
|
|
59
69
|
* p2shP2pk is signed only with first sign.
|
|
60
70
|
*/
|
|
61
|
-
export declare function signAllPsbtInputs(psbt: UtxoPsbt, inputs: Input[], rootWalletKeys: RootWalletKeys, sign: 'halfsigned' | 'fullsigned'
|
|
71
|
+
export declare function signAllPsbtInputs(psbt: UtxoPsbt, inputs: Input[], rootWalletKeys: RootWalletKeys, sign: 'halfsigned' | 'fullsigned', params?: {
|
|
72
|
+
signers?: {
|
|
73
|
+
signerName: KeyName;
|
|
74
|
+
cosignerName?: KeyName;
|
|
75
|
+
};
|
|
76
|
+
deterministic?: boolean;
|
|
77
|
+
skipNonWitnessUtxo?: boolean;
|
|
78
|
+
}): void;
|
|
62
79
|
/**
|
|
63
80
|
* construct psbt for given inputs, outputs, network and root wallet keys.
|
|
64
81
|
*/
|
|
65
|
-
export declare function constructPsbt(inputs: Input[], outputs: Output[], network: Network, rootWalletKeys: RootWalletKeys, sign: 'unsigned' | 'halfsigned' | 'fullsigned'
|
|
82
|
+
export declare function constructPsbt(inputs: Input[], outputs: Output[], network: Network, rootWalletKeys: RootWalletKeys, sign: 'unsigned' | 'halfsigned' | 'fullsigned', params?: {
|
|
83
|
+
signers?: {
|
|
84
|
+
signerName: KeyName;
|
|
85
|
+
cosignerName?: KeyName;
|
|
86
|
+
};
|
|
87
|
+
deterministic?: boolean;
|
|
88
|
+
skipNonWitnessUtxo?: boolean;
|
|
89
|
+
}): UtxoPsbt;
|
|
66
90
|
/**
|
|
67
91
|
* Verifies signatures of fully signed tx (with taproot key path support).
|
|
68
92
|
* NOTE: taproot key path tx can only be built and signed with PSBT.
|
|
69
93
|
*/
|
|
70
|
-
export declare function verifyFullySignedSignatures(tx: UtxoTransaction<bigint>, unspents:
|
|
94
|
+
export declare function verifyFullySignedSignatures(tx: UtxoTransaction<bigint>, unspents: Unspent<bigint>[], walletKeys: RootWalletKeys, signer: KeyName, cosigner: KeyName): boolean;
|
|
71
95
|
//# sourceMappingURL=psbt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"psbt.d.ts","sourceRoot":"","sources":["../../../src/testutil/psbt.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,UAAU,EACV,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAChC,OAAO,
|
|
1
|
+
{"version":3,"file":"psbt.d.ts","sourceRoot":"","sources":["../../../src/testutil/psbt.ts"],"names":[],"mappings":"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"}
|