@bitgo-beta/utxo-lib 8.0.3-beta.5 → 8.0.3-beta.500

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.
Files changed (116) hide show
  1. package/README.md +19 -16
  2. package/dist/src/address.js +5 -5
  3. package/dist/src/addressFormat.d.ts +1 -1
  4. package/dist/src/addressFormat.d.ts.map +1 -1
  5. package/dist/src/addressFormat.js +9 -9
  6. package/dist/src/bitgo/Musig2.d.ts +5 -10
  7. package/dist/src/bitgo/Musig2.d.ts.map +1 -1
  8. package/dist/src/bitgo/Musig2.js +41 -66
  9. package/dist/src/bitgo/PsbtUtil.d.ts +71 -0
  10. package/dist/src/bitgo/PsbtUtil.d.ts.map +1 -0
  11. package/dist/src/bitgo/PsbtUtil.js +133 -0
  12. package/dist/src/bitgo/Unspent.d.ts +2 -2
  13. package/dist/src/bitgo/Unspent.d.ts.map +1 -1
  14. package/dist/src/bitgo/Unspent.js +3 -3
  15. package/dist/src/bitgo/UtxoPsbt.d.ts +26 -39
  16. package/dist/src/bitgo/UtxoPsbt.d.ts.map +1 -1
  17. package/dist/src/bitgo/UtxoPsbt.js +200 -169
  18. package/dist/src/bitgo/UtxoTransaction.d.ts.map +1 -1
  19. package/dist/src/bitgo/UtxoTransaction.js +9 -9
  20. package/dist/src/bitgo/bitcoincash/address.js +6 -6
  21. package/dist/src/bitgo/bitcoincash/index.js +6 -2
  22. package/dist/src/bitgo/dash/DashTransaction.js +3 -3
  23. package/dist/src/bitgo/dash/index.js +6 -2
  24. package/dist/src/bitgo/index.d.ts +10 -0
  25. package/dist/src/bitgo/index.d.ts.map +1 -1
  26. package/dist/src/bitgo/index.js +10 -3
  27. package/dist/src/bitgo/keyutil.d.ts +9 -0
  28. package/dist/src/bitgo/keyutil.d.ts.map +1 -1
  29. package/dist/src/bitgo/keyutil.js +24 -2
  30. package/dist/src/bitgo/legacysafe/index.d.ts +15 -0
  31. package/dist/src/bitgo/legacysafe/index.d.ts.map +1 -0
  32. package/dist/src/bitgo/legacysafe/index.js +61 -0
  33. package/dist/src/bitgo/litecoin/LitecoinTransaction.d.ts +1 -1
  34. package/dist/src/bitgo/litecoin/LitecoinTransaction.d.ts.map +1 -1
  35. package/dist/src/bitgo/litecoin/LitecoinTransaction.js +2 -2
  36. package/dist/src/bitgo/litecoin/index.js +6 -2
  37. package/dist/src/bitgo/outputScripts.d.ts +7 -6
  38. package/dist/src/bitgo/outputScripts.d.ts.map +1 -1
  39. package/dist/src/bitgo/outputScripts.js +29 -14
  40. package/dist/src/bitgo/parseInput.d.ts +11 -7
  41. package/dist/src/bitgo/parseInput.d.ts.map +1 -1
  42. package/dist/src/bitgo/parseInput.js +23 -7
  43. package/dist/src/bitgo/psbt/fromHalfSigned.js +5 -5
  44. package/dist/src/bitgo/signature.d.ts +4 -4
  45. package/dist/src/bitgo/signature.d.ts.map +1 -1
  46. package/dist/src/bitgo/signature.js +24 -9
  47. package/dist/src/bitgo/transaction.d.ts +31 -3
  48. package/dist/src/bitgo/transaction.d.ts.map +1 -1
  49. package/dist/src/bitgo/transaction.js +38 -16
  50. package/dist/src/bitgo/transactionAmounts.d.ts +9 -0
  51. package/dist/src/bitgo/transactionAmounts.d.ts.map +1 -0
  52. package/dist/src/bitgo/transactionAmounts.js +33 -0
  53. package/dist/src/bitgo/types.d.ts +9 -2
  54. package/dist/src/bitgo/types.d.ts.map +1 -1
  55. package/dist/src/bitgo/types.js +11 -2
  56. package/dist/src/bitgo/wallet/Psbt.d.ts +90 -26
  57. package/dist/src/bitgo/wallet/Psbt.d.ts.map +1 -1
  58. package/dist/src/bitgo/wallet/Psbt.js +241 -101
  59. package/dist/src/bitgo/wallet/Unspent.d.ts +43 -9
  60. package/dist/src/bitgo/wallet/Unspent.d.ts.map +1 -1
  61. package/dist/src/bitgo/wallet/Unspent.js +168 -74
  62. package/dist/src/bitgo/wallet/WalletKeys.d.ts +1 -1
  63. package/dist/src/bitgo/wallet/WalletKeys.d.ts.map +1 -1
  64. package/dist/src/bitgo/wallet/WalletOutput.d.ts +17 -1
  65. package/dist/src/bitgo/wallet/WalletOutput.d.ts.map +1 -1
  66. package/dist/src/bitgo/wallet/WalletOutput.js +68 -27
  67. package/dist/src/bitgo/wallet/WalletScripts.js +2 -2
  68. package/dist/src/bitgo/wallet/WalletUnspentSigner.js +7 -7
  69. package/dist/src/bitgo/wallet/chains.d.ts +2 -2
  70. package/dist/src/bitgo/wallet/chains.d.ts.map +1 -1
  71. package/dist/src/bitgo/wallet/index.d.ts +2 -0
  72. package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
  73. package/dist/src/bitgo/wallet/index.js +8 -2
  74. package/dist/src/bitgo/wallet/psbt/PsbtOutputs.d.ts +50 -0
  75. package/dist/src/bitgo/wallet/psbt/PsbtOutputs.d.ts.map +1 -0
  76. package/dist/src/bitgo/wallet/psbt/PsbtOutputs.js +87 -0
  77. package/dist/src/bitgo/wallet/psbt/RootNodes.d.ts +32 -0
  78. package/dist/src/bitgo/wallet/psbt/RootNodes.d.ts.map +1 -0
  79. package/dist/src/bitgo/wallet/psbt/RootNodes.js +125 -0
  80. package/dist/src/bitgo/zcash/ZcashPsbt.d.ts +0 -1
  81. package/dist/src/bitgo/zcash/ZcashPsbt.d.ts.map +1 -1
  82. package/dist/src/bitgo/zcash/ZcashPsbt.js +8 -16
  83. package/dist/src/bitgo/zcash/ZcashTransaction.d.ts +1 -1
  84. package/dist/src/bitgo/zcash/ZcashTransaction.d.ts.map +1 -1
  85. package/dist/src/bitgo/zcash/ZcashTransaction.js +15 -15
  86. package/dist/src/bitgo/zcash/ZcashTransactionBuilder.js +4 -4
  87. package/dist/src/bitgo/zcash/address.js +3 -3
  88. package/dist/src/bitgo/zcash/hashZip0244.d.ts +1 -1
  89. package/dist/src/bitgo/zcash/hashZip0244.d.ts.map +1 -1
  90. package/dist/src/bitgo/zcash/hashZip0244.js +3 -3
  91. package/dist/src/bitgo/zcash/index.js +6 -2
  92. package/dist/src/index.js +6 -2
  93. package/dist/src/networks.d.ts +2 -2
  94. package/dist/src/networks.d.ts.map +1 -1
  95. package/dist/src/networks.js +47 -1
  96. package/dist/src/noble_ecc.d.ts +7 -7
  97. package/dist/src/noble_ecc.d.ts.map +1 -1
  98. package/dist/src/noble_ecc.js +4 -4
  99. package/dist/src/testutil/index.d.ts +1 -0
  100. package/dist/src/testutil/index.d.ts.map +1 -1
  101. package/dist/src/testutil/index.js +7 -2
  102. package/dist/src/testutil/keys.d.ts +4 -1
  103. package/dist/src/testutil/keys.d.ts.map +1 -1
  104. package/dist/src/testutil/keys.js +18 -3
  105. package/dist/src/testutil/mock.d.ts +2 -2
  106. package/dist/src/testutil/mock.d.ts.map +1 -1
  107. package/dist/src/testutil/mock.js +25 -17
  108. package/dist/src/testutil/psbt.d.ts +38 -16
  109. package/dist/src/testutil/psbt.d.ts.map +1 -1
  110. package/dist/src/testutil/psbt.js +42 -31
  111. package/dist/src/testutil/transaction.d.ts +18 -7
  112. package/dist/src/testutil/transaction.d.ts.map +1 -1
  113. package/dist/src/testutil/transaction.js +27 -20
  114. package/dist/src/transaction_builder.d.ts.map +1 -1
  115. package/dist/src/transaction_builder.js +12 -17
  116. package/package.json +8 -8
package/README.md CHANGED
@@ -3,12 +3,13 @@
3
3
  This library is a wrapper around [bitcoinjs-lib](https://github.com/bitcoinjs/bitcoinjs-lib) adding altcoin support.
4
4
 
5
5
  ## Features
6
+
6
7
  - Multicoin support: Configurable behaviour based on [network](https://github.com/BitGo/bitgo-utxo-lib/blob/master/src/networks.js) objects.
7
8
  - Backed by [BitGo](https://www.bitgo.com/info/)
8
9
 
9
10
  ## Installation
10
11
 
11
- ``` bash
12
+ ```bash
12
13
  # using npm
13
14
  npm install @bitgo/utxo-lib
14
15
 
@@ -19,20 +20,22 @@ yarn add @bitgo/utxo-lib
19
20
  ## Setup
20
21
 
21
22
  JavaScript (ESM)
22
- ``` javascript
23
- import * as utxolib from '@bitgo/utxo-lib'
23
+
24
+ ```javascript
25
+ import * as utxolib from '@bitgo/utxo-lib';
24
26
  ```
25
27
 
26
28
  NodeJS (CJS)
27
- ``` javascript
28
- const utxolib = require('@bitgo/utxo-lib')
29
+
30
+ ```javascript
31
+ const utxolib = require('@bitgo/utxo-lib');
29
32
  ```
30
33
 
31
34
  ## Usage
32
35
 
33
36
  Support for parsing and building altcoin transactions is provided by the following methods
34
37
 
35
- ``` typescript
38
+ ```typescript
36
39
  utxolib.bitgo.createTransactionFromBuffer(buffer, network): UtxoTransaction
37
40
  // (similarly `createTransactionFromHex(string, network)`)
38
41
 
@@ -45,15 +48,15 @@ The `UtxoTransaction(Builder)` classes have the same interface as the `Transacti
45
48
 
46
49
  ## Supported coins
47
50
 
48
- |Network|Mainnet|Testnet|
49
- |---|---|---|
50
- |Bitcoin|`utxolib.networks.bitcoin`|`utxolib.networks.testnet`|
51
- |Bitcoin Cash|`utxolib.networks.bitcoincash`|`utxolib.networks.bitcoincashTestnet`|
52
- |Bitcoin Gold|`utxolib.networks.bitcoingold`|`utxolib.networks.bitcoingoldTestnet`|
53
- |Bitcoin SV (Satoshi Vision)|`utxolib.networks.bitcoinsv`|`utxolib.networks.bitcoinsvTestnet`|
54
- |Dash|`utxolib.networks.dash`|`utxolib.networks.dash`|
55
- |eCash|`utxolib.networks.ecash`|`utxolib.networks.ecashTestnet`|
56
- |Litecoin|`utxolib.networks.litecoin`|`utxolib.networks.litecoinTest`|
57
- |Zcash|`utxolib.networks.zcash`|`utxolib.networks.zcashTest`|
51
+ | Network | Mainnet | Testnet |
52
+ | --------------------------- | ------------------------------ | ------------------------------------- |
53
+ | Bitcoin | `utxolib.networks.bitcoin` | `utxolib.networks.testnet` |
54
+ | Bitcoin Cash | `utxolib.networks.bitcoincash` | `utxolib.networks.bitcoincashTestnet` |
55
+ | Bitcoin Gold | `utxolib.networks.bitcoingold` | `utxolib.networks.bitcoingoldTestnet` |
56
+ | Bitcoin SV (Satoshi Vision) | `utxolib.networks.bitcoinsv` | `utxolib.networks.bitcoinsvTestnet` |
57
+ | Dash | `utxolib.networks.dash` | `utxolib.networks.dash` |
58
+ | eCash | `utxolib.networks.ecash` | `utxolib.networks.ecashTestnet` |
59
+ | Litecoin | `utxolib.networks.litecoin` | `utxolib.networks.litecoinTest` |
60
+ | Zcash | `utxolib.networks.zcash` | `utxolib.networks.zcashTest` |
58
61
 
59
62
  > [Bitcoin SV](https://blog.bitgo.com/bsv-deprecation-6b3fff4df34c) no longer supports sending funds to BitGo wallets. Existing customers with Bitcoin SV in BitGo wallets will still be able to access and sweep funds to an external Bitcoin SV wallet.
@@ -7,7 +7,7 @@ const zcashAddress = require("../src/bitgo/zcash/address");
7
7
  const networks_1 = require("./networks");
8
8
  const index_1 = require("./index");
9
9
  function fromOutputScript(outputScript, network) {
10
- if (networks_1.isValidNetwork(network) && networks_1.isZcash(network)) {
10
+ if ((0, networks_1.isValidNetwork)(network) && (0, networks_1.isZcash)(network)) {
11
11
  return zcashAddress.fromOutputScript(outputScript, network);
12
12
  }
13
13
  // We added p2tr payments from our forked bitcoinjs-lib to utxo-lib instead. Our bitcoinjs fork will no longer have
@@ -23,25 +23,25 @@ function fromOutputScript(outputScript, network) {
23
23
  }
24
24
  exports.fromOutputScript = fromOutputScript;
25
25
  function toOutputScript(address, network) {
26
- if (networks_1.isValidNetwork(network) && networks_1.isZcash(network)) {
26
+ if ((0, networks_1.isValidNetwork)(network) && (0, networks_1.isZcash)(network)) {
27
27
  return zcashAddress.toOutputScript(address, network);
28
28
  }
29
29
  return bitcoinjs.address.toOutputScript(address, network);
30
30
  }
31
31
  exports.toOutputScript = toOutputScript;
32
32
  function toBase58Check(hash, version, network) {
33
- if (networks_1.isValidNetwork(network) && networks_1.isZcash(network)) {
33
+ if ((0, networks_1.isValidNetwork)(network) && (0, networks_1.isZcash)(network)) {
34
34
  return zcashAddress.toBase58Check(hash, version);
35
35
  }
36
36
  return bitcoinjs.address.toBase58Check(hash, version);
37
37
  }
38
38
  exports.toBase58Check = toBase58Check;
39
39
  function fromBase58Check(address, network) {
40
- if (networks_1.isValidNetwork(network) && networks_1.isZcash(network)) {
40
+ if ((0, networks_1.isValidNetwork)(network) && (0, networks_1.isZcash)(network)) {
41
41
  return zcashAddress.fromBase58Check(address);
42
42
  }
43
43
  return bitcoinjs.address.fromBase58Check(address);
44
44
  }
45
45
  exports.fromBase58Check = fromBase58Check;
46
46
  _a = bitcoinjs.address, exports.fromBech32 = _a.fromBech32, exports.toBech32 = _a.toBech32;
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGRyZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyQ0FBMkM7QUFHM0MsMkRBQTJEO0FBQzNELHlDQUE4RDtBQUM5RCxtQ0FBdUM7QUFFdkMsU0FBZ0IsZ0JBQWdCLENBQUMsWUFBb0IsRUFBRSxPQUFnQjtJQUNyRSxJQUFJLHlCQUFjLENBQUMsT0FBTyxDQUFDLElBQUksa0JBQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUMvQyxPQUFPLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDN0Q7SUFFRCxtSEFBbUg7SUFDbkgsaUhBQWlIO0lBQ2pILHFDQUFxQztJQUNyQyxJQUFJO1FBQ0YsT0FBTyxvQkFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFpQixDQUFDO0tBQy9FO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixpQ0FBaUM7S0FDbEM7SUFFRCxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLE9BQTRCLENBQUMsQ0FBQztBQUN4RixDQUFDO0FBZkQsNENBZUM7QUFFRCxTQUFnQixjQUFjLENBQUMsT0FBZSxFQUFFLE9BQWdCO0lBQzlELElBQUkseUJBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxrQkFBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQy9DLE9BQU8sWUFBWSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDdEQ7SUFDRCxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxPQUE0QixDQUFDLENBQUM7QUFDakYsQ0FBQztBQUxELHdDQUtDO0FBRUQsU0FBZ0IsYUFBYSxDQUFDLElBQVksRUFBRSxPQUFlLEVBQUUsT0FBZ0I7SUFDM0UsSUFBSSx5QkFBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLGtCQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDL0MsT0FBTyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztLQUNsRDtJQUNELE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFMRCxzQ0FLQztBQUVELFNBQWdCLGVBQWUsQ0FBQyxPQUFlLEVBQUUsT0FBZ0I7SUFDL0QsSUFBSSx5QkFBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLGtCQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDL0MsT0FBTyxZQUFZLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQzlDO0lBQ0QsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBTEQsMENBS0M7QUFFWSxLQUEyQixTQUFTLENBQUMsT0FBTyxFQUExQyxrQkFBVSxrQkFBRSxnQkFBUSxlQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGJpdGNvaW5qcyBmcm9tICdiaXRjb2luanMtbGliJztcbmltcG9ydCB7IEJhc2U1OENoZWNrUmVzdWx0LCBCZWNoMzJSZXN1bHQgfSBmcm9tICdiaXRjb2luanMtbGliL3NyYy9hZGRyZXNzJztcblxuaW1wb3J0ICogYXMgemNhc2hBZGRyZXNzIGZyb20gJy4uL3NyYy9iaXRnby96Y2FzaC9hZGRyZXNzJztcbmltcG9ydCB7IGlzVmFsaWROZXR3b3JrLCBpc1pjYXNoLCBOZXR3b3JrIH0gZnJvbSAnLi9uZXR3b3Jrcyc7XG5pbXBvcnQgeyBwMnRyUGF5bWVudHMgfSBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21PdXRwdXRTY3JpcHQob3V0cHV0U2NyaXB0OiBCdWZmZXIsIG5ldHdvcms6IE5ldHdvcmspOiBzdHJpbmcge1xuICBpZiAoaXNWYWxpZE5ldHdvcmsobmV0d29yaykgJiYgaXNaY2FzaChuZXR3b3JrKSkge1xuICAgIHJldHVybiB6Y2FzaEFkZHJlc3MuZnJvbU91dHB1dFNjcmlwdChvdXRwdXRTY3JpcHQsIG5ldHdvcmspO1xuICB9XG5cbiAgLy8gV2UgYWRkZWQgcDJ0ciBwYXltZW50cyBmcm9tIG91ciBmb3JrZWQgYml0Y29pbmpzLWxpYiB0byB1dHhvLWxpYiBpbnN0ZWFkLiBPdXIgYml0Y29pbmpzIGZvcmsgd2lsbCBubyBsb25nZXIgaGF2ZVxuICAvLyBwMnRyIHN1cHBvcnQgc28gdXR4by1saWIgc2hvdWxkIHRha2UgY2FyZSBvZiByZXRyaWV2aW5nIGEgcDJ0ciBhZGRyZXNzIGZyb20gb3V0cHV0U2NyaXB0IGFuZCBiaXRjb2luanMtbGliIGNhblxuICAvLyBoYW5kbGUgdGhlIG90aGVyIHR5cGUgb2YgcGF5bWVudHMuXG4gIHRyeSB7XG4gICAgcmV0dXJuIHAydHJQYXltZW50cy5wMnRyKHsgb3V0cHV0OiBvdXRwdXRTY3JpcHQsIG5ldHdvcmsgfSkuYWRkcmVzcyBhcyBzdHJpbmc7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyBub29wLiB0cnkgdGhlIGJpdGNvaW5qcyBtZXRob2RcbiAgfVxuXG4gIHJldHVybiBiaXRjb2luanMuYWRkcmVzcy5mcm9tT3V0cHV0U2NyaXB0KG91dHB1dFNjcmlwdCwgbmV0d29yayBhcyBiaXRjb2luanMuTmV0d29yayk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b091dHB1dFNjcmlwdChhZGRyZXNzOiBzdHJpbmcsIG5ldHdvcms6IE5ldHdvcmspOiBCdWZmZXIge1xuICBpZiAoaXNWYWxpZE5ldHdvcmsobmV0d29yaykgJiYgaXNaY2FzaChuZXR3b3JrKSkge1xuICAgIHJldHVybiB6Y2FzaEFkZHJlc3MudG9PdXRwdXRTY3JpcHQoYWRkcmVzcywgbmV0d29yayk7XG4gIH1cbiAgcmV0dXJuIGJpdGNvaW5qcy5hZGRyZXNzLnRvT3V0cHV0U2NyaXB0KGFkZHJlc3MsIG5ldHdvcmsgYXMgYml0Y29pbmpzLk5ldHdvcmspO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9CYXNlNThDaGVjayhoYXNoOiBCdWZmZXIsIHZlcnNpb246IG51bWJlciwgbmV0d29yazogTmV0d29yayk6IHN0cmluZyB7XG4gIGlmIChpc1ZhbGlkTmV0d29yayhuZXR3b3JrKSAmJiBpc1pjYXNoKG5ldHdvcmspKSB7XG4gICAgcmV0dXJuIHpjYXNoQWRkcmVzcy50b0Jhc2U1OENoZWNrKGhhc2gsIHZlcnNpb24pO1xuICB9XG4gIHJldHVybiBiaXRjb2luanMuYWRkcmVzcy50b0Jhc2U1OENoZWNrKGhhc2gsIHZlcnNpb24pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJvbUJhc2U1OENoZWNrKGFkZHJlc3M6IHN0cmluZywgbmV0d29yazogTmV0d29yayk6IEJhc2U1OENoZWNrUmVzdWx0IHtcbiAgaWYgKGlzVmFsaWROZXR3b3JrKG5ldHdvcmspICYmIGlzWmNhc2gobmV0d29yaykpIHtcbiAgICByZXR1cm4gemNhc2hBZGRyZXNzLmZyb21CYXNlNThDaGVjayhhZGRyZXNzKTtcbiAgfVxuICByZXR1cm4gYml0Y29pbmpzLmFkZHJlc3MuZnJvbUJhc2U1OENoZWNrKGFkZHJlc3MpO1xufVxuXG5leHBvcnQgY29uc3QgeyBmcm9tQmVjaDMyLCB0b0JlY2gzMiB9ID0gYml0Y29pbmpzLmFkZHJlc3M7XG5cbmV4cG9ydCB7IEJhc2U1OENoZWNrUmVzdWx0LCBCZWNoMzJSZXN1bHQgfTtcbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGRyZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyQ0FBMkM7QUFHM0MsMkRBQTJEO0FBQzNELHlDQUE4RDtBQUM5RCxtQ0FBdUM7QUFFdkMsU0FBZ0IsZ0JBQWdCLENBQUMsWUFBb0IsRUFBRSxPQUFnQjtJQUNyRSxJQUFJLElBQUEseUJBQWMsRUFBQyxPQUFPLENBQUMsSUFBSSxJQUFBLGtCQUFPLEVBQUMsT0FBTyxDQUFDLEVBQUU7UUFDL0MsT0FBTyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQzdEO0lBRUQsbUhBQW1IO0lBQ25ILGlIQUFpSDtJQUNqSCxxQ0FBcUM7SUFDckMsSUFBSTtRQUNGLE9BQU8sb0JBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBaUIsQ0FBQztLQUMvRTtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsaUNBQWlDO0tBQ2xDO0lBRUQsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxPQUE0QixDQUFDLENBQUM7QUFDeEYsQ0FBQztBQWZELDRDQWVDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLE9BQWUsRUFBRSxPQUFnQjtJQUM5RCxJQUFJLElBQUEseUJBQWMsRUFBQyxPQUFPLENBQUMsSUFBSSxJQUFBLGtCQUFPLEVBQUMsT0FBTyxDQUFDLEVBQUU7UUFDL0MsT0FBTyxZQUFZLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztLQUN0RDtJQUNELE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLE9BQTRCLENBQUMsQ0FBQztBQUNqRixDQUFDO0FBTEQsd0NBS0M7QUFFRCxTQUFnQixhQUFhLENBQUMsSUFBWSxFQUFFLE9BQWUsRUFBRSxPQUFnQjtJQUMzRSxJQUFJLElBQUEseUJBQWMsRUFBQyxPQUFPLENBQUMsSUFBSSxJQUFBLGtCQUFPLEVBQUMsT0FBTyxDQUFDLEVBQUU7UUFDL0MsT0FBTyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztLQUNsRDtJQUNELE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFMRCxzQ0FLQztBQUVELFNBQWdCLGVBQWUsQ0FBQyxPQUFlLEVBQUUsT0FBZ0I7SUFDL0QsSUFBSSxJQUFBLHlCQUFjLEVBQUMsT0FBTyxDQUFDLElBQUksSUFBQSxrQkFBTyxFQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQy9DLE9BQU8sWUFBWSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUM5QztJQUNELE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUxELDBDQUtDO0FBRVksS0FBMkIsU0FBUyxDQUFDLE9BQU8sRUFBMUMsa0JBQVUsa0JBQUUsZ0JBQVEsZUFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBiaXRjb2luanMgZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgeyBCYXNlNThDaGVja1Jlc3VsdCwgQmVjaDMyUmVzdWx0IH0gZnJvbSAnYml0Y29pbmpzLWxpYi9zcmMvYWRkcmVzcyc7XG5cbmltcG9ydCAqIGFzIHpjYXNoQWRkcmVzcyBmcm9tICcuLi9zcmMvYml0Z28vemNhc2gvYWRkcmVzcyc7XG5pbXBvcnQgeyBpc1ZhbGlkTmV0d29yaywgaXNaY2FzaCwgTmV0d29yayB9IGZyb20gJy4vbmV0d29ya3MnO1xuaW1wb3J0IHsgcDJ0clBheW1lbnRzIH0gZnJvbSAnLi9pbmRleCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tT3V0cHV0U2NyaXB0KG91dHB1dFNjcmlwdDogQnVmZmVyLCBuZXR3b3JrOiBOZXR3b3JrKTogc3RyaW5nIHtcbiAgaWYgKGlzVmFsaWROZXR3b3JrKG5ldHdvcmspICYmIGlzWmNhc2gobmV0d29yaykpIHtcbiAgICByZXR1cm4gemNhc2hBZGRyZXNzLmZyb21PdXRwdXRTY3JpcHQob3V0cHV0U2NyaXB0LCBuZXR3b3JrKTtcbiAgfVxuXG4gIC8vIFdlIGFkZGVkIHAydHIgcGF5bWVudHMgZnJvbSBvdXIgZm9ya2VkIGJpdGNvaW5qcy1saWIgdG8gdXR4by1saWIgaW5zdGVhZC4gT3VyIGJpdGNvaW5qcyBmb3JrIHdpbGwgbm8gbG9uZ2VyIGhhdmVcbiAgLy8gcDJ0ciBzdXBwb3J0IHNvIHV0eG8tbGliIHNob3VsZCB0YWtlIGNhcmUgb2YgcmV0cmlldmluZyBhIHAydHIgYWRkcmVzcyBmcm9tIG91dHB1dFNjcmlwdCBhbmQgYml0Y29pbmpzLWxpYiBjYW5cbiAgLy8gaGFuZGxlIHRoZSBvdGhlciB0eXBlIG9mIHBheW1lbnRzLlxuICB0cnkge1xuICAgIHJldHVybiBwMnRyUGF5bWVudHMucDJ0cih7IG91dHB1dDogb3V0cHV0U2NyaXB0LCBuZXR3b3JrIH0pLmFkZHJlc3MgYXMgc3RyaW5nO1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gbm9vcC4gdHJ5IHRoZSBiaXRjb2luanMgbWV0aG9kXG4gIH1cblxuICByZXR1cm4gYml0Y29pbmpzLmFkZHJlc3MuZnJvbU91dHB1dFNjcmlwdChvdXRwdXRTY3JpcHQsIG5ldHdvcmsgYXMgYml0Y29pbmpzLk5ldHdvcmspO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9PdXRwdXRTY3JpcHQoYWRkcmVzczogc3RyaW5nLCBuZXR3b3JrOiBOZXR3b3JrKTogQnVmZmVyIHtcbiAgaWYgKGlzVmFsaWROZXR3b3JrKG5ldHdvcmspICYmIGlzWmNhc2gobmV0d29yaykpIHtcbiAgICByZXR1cm4gemNhc2hBZGRyZXNzLnRvT3V0cHV0U2NyaXB0KGFkZHJlc3MsIG5ldHdvcmspO1xuICB9XG4gIHJldHVybiBiaXRjb2luanMuYWRkcmVzcy50b091dHB1dFNjcmlwdChhZGRyZXNzLCBuZXR3b3JrIGFzIGJpdGNvaW5qcy5OZXR3b3JrKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRvQmFzZTU4Q2hlY2soaGFzaDogQnVmZmVyLCB2ZXJzaW9uOiBudW1iZXIsIG5ldHdvcms6IE5ldHdvcmspOiBzdHJpbmcge1xuICBpZiAoaXNWYWxpZE5ldHdvcmsobmV0d29yaykgJiYgaXNaY2FzaChuZXR3b3JrKSkge1xuICAgIHJldHVybiB6Y2FzaEFkZHJlc3MudG9CYXNlNThDaGVjayhoYXNoLCB2ZXJzaW9uKTtcbiAgfVxuICByZXR1cm4gYml0Y29pbmpzLmFkZHJlc3MudG9CYXNlNThDaGVjayhoYXNoLCB2ZXJzaW9uKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21CYXNlNThDaGVjayhhZGRyZXNzOiBzdHJpbmcsIG5ldHdvcms6IE5ldHdvcmspOiBCYXNlNThDaGVja1Jlc3VsdCB7XG4gIGlmIChpc1ZhbGlkTmV0d29yayhuZXR3b3JrKSAmJiBpc1pjYXNoKG5ldHdvcmspKSB7XG4gICAgcmV0dXJuIHpjYXNoQWRkcmVzcy5mcm9tQmFzZTU4Q2hlY2soYWRkcmVzcyk7XG4gIH1cbiAgcmV0dXJuIGJpdGNvaW5qcy5hZGRyZXNzLmZyb21CYXNlNThDaGVjayhhZGRyZXNzKTtcbn1cblxuZXhwb3J0IGNvbnN0IHsgZnJvbUJlY2gzMiwgdG9CZWNoMzIgfSA9IGJpdGNvaW5qcy5hZGRyZXNzO1xuXG5leHBvcnQgeyBCYXNlNThDaGVja1Jlc3VsdCwgQmVjaDMyUmVzdWx0IH07XG4iXX0=
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import { Network } from './networks';
9
9
  export declare const addressFormats: readonly ["default", "cashaddr"];
10
- export declare type AddressFormat = (typeof addressFormats)[number];
10
+ export type AddressFormat = (typeof addressFormats)[number];
11
11
  /**
12
12
  * @param format
13
13
  * @param network
@@ -1 +1 @@
1
- {"version":3,"file":"addressFormat.d.ts","sourceRoot":"","sources":["../../src/addressFormat.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AACH,OAAO,EAA8B,OAAO,EAAY,MAAM,YAAY,CAAC;AAK3E,eAAO,MAAM,cAAc,kCAAmC,CAAC;AAE/D,oBAAY,aAAa,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAQzF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAYhH;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAYzG;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,aAAa,EAAE,GACxB,CAAC,aAAa,EAAE,MAAM,CAAC,CAczB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,GAAG,MAAM,CAG7G;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAE3E"}
1
+ {"version":3,"file":"addressFormat.d.ts","sourceRoot":"","sources":["../../src/addressFormat.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AACH,OAAO,EAA8B,OAAO,EAAY,MAAM,YAAY,CAAC;AAK3E,eAAO,MAAM,cAAc,kCAAmC,CAAC;AAE/D,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAQzF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAYhH;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAYzG;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,aAAa,EAAE,GACxB,CAAC,aAAa,EAAE,MAAM,CAAC,CAczB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,GAAG,MAAM,CAG7G;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAE3E"}
@@ -21,7 +21,7 @@ function isSupportedAddressFormat(format, network) {
21
21
  case 'default':
22
22
  return true;
23
23
  case 'cashaddr':
24
- return [networks_1.networks.bitcoincash, networks_1.networks.ecash].includes(networks_1.getMainnet(network));
24
+ return [networks_1.networks.bitcoincash, networks_1.networks.ecash].includes((0, networks_1.getMainnet)(network));
25
25
  }
26
26
  throw new Error(`unknown address format ${format}`);
27
27
  }
@@ -34,14 +34,14 @@ exports.isSupportedAddressFormat = isSupportedAddressFormat;
34
34
  */
35
35
  function fromOutputScriptWithFormat(outputScript, format, network) {
36
36
  if (!isSupportedAddressFormat(format, network)) {
37
- throw new Error(`unsupported address format ${format} for network ${networks_1.getNetworkName(network)}`);
37
+ throw new Error(`unsupported address format ${format} for network ${(0, networks_1.getNetworkName)(network)}`);
38
38
  }
39
- switch (networks_1.getMainnet(network)) {
39
+ switch ((0, networks_1.getMainnet)(network)) {
40
40
  case networks_1.networks.bitcoincash:
41
41
  case networks_1.networks.ecash:
42
42
  return bitgo_1.bcashAddress.fromOutputScriptWithFormat(outputScript, format, network);
43
43
  default:
44
- return address_1.fromOutputScript(outputScript, network);
44
+ return (0, address_1.fromOutputScript)(outputScript, network);
45
45
  }
46
46
  }
47
47
  exports.fromOutputScriptWithFormat = fromOutputScriptWithFormat;
@@ -53,14 +53,14 @@ exports.fromOutputScriptWithFormat = fromOutputScriptWithFormat;
53
53
  */
54
54
  function toOutputScriptWithFormat(address, format, network) {
55
55
  if (!isSupportedAddressFormat(format, network)) {
56
- throw new Error(`unsupported address format ${format} for network ${networks_1.getNetworkName(network)}`);
56
+ throw new Error(`unsupported address format ${format} for network ${(0, networks_1.getNetworkName)(network)}`);
57
57
  }
58
- switch (networks_1.getMainnet(network)) {
58
+ switch ((0, networks_1.getMainnet)(network)) {
59
59
  case networks_1.networks.bitcoincash:
60
60
  case networks_1.networks.ecash:
61
61
  return bitgo_1.bcashAddress.toOutputScriptWithFormat(address, format, network);
62
62
  default:
63
- return address_1.toOutputScript(address, network);
63
+ return (0, address_1.toOutputScript)(address, network);
64
64
  }
65
65
  }
66
66
  exports.toOutputScriptWithFormat = toOutputScriptWithFormat;
@@ -104,7 +104,7 @@ exports.toOutputScriptTryFormats = toOutputScriptTryFormats;
104
104
  * @return address in canonical format
105
105
  */
106
106
  function toCanonicalFormat(address, network) {
107
- return address_1.fromOutputScript(toOutputScriptTryFormats(address, network), network);
107
+ return (0, address_1.fromOutputScript)(toOutputScriptTryFormats(address, network), network);
108
108
  }
109
109
  exports.toCanonicalFormat = toCanonicalFormat;
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0Zvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGRyZXNzRm9ybWF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7OztHQUtHO0FBQ0gseUNBQTJFO0FBQzNFLHVDQUE2RDtBQUU3RCxtQ0FBdUM7QUFFMUIsUUFBQSxjQUFjLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFVLENBQUM7QUFJL0Q7Ozs7R0FJRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE1BQXFCLEVBQUUsT0FBZ0I7SUFDOUUsUUFBUSxNQUFNLEVBQUU7UUFDZCxLQUFLLFNBQVM7WUFDWixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssVUFBVTtZQUNiLE9BQU8sQ0FBQyxtQkFBUSxDQUFDLFdBQVcsRUFBRSxtQkFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxxQkFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7S0FDL0U7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQ3RELENBQUM7QUFSRCw0REFRQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBZ0IsMEJBQTBCLENBQUMsWUFBb0IsRUFBRSxNQUFxQixFQUFFLE9BQWdCO0lBQ3RHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUU7UUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsTUFBTSxnQkFBZ0IseUJBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDaEc7SUFFRCxRQUFRLHFCQUFVLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDM0IsS0FBSyxtQkFBUSxDQUFDLFdBQVcsQ0FBQztRQUMxQixLQUFLLG1CQUFRLENBQUMsS0FBSztZQUNqQixPQUFPLG9CQUFZLENBQUMsMEJBQTBCLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRjtZQUNFLE9BQU8sMEJBQWdCLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ2xEO0FBQ0gsQ0FBQztBQVpELGdFQVlDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQix3QkFBd0IsQ0FBQyxPQUFlLEVBQUUsTUFBcUIsRUFBRSxPQUFnQjtJQUMvRixJQUFJLENBQUMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1FBQzlDLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLE1BQU0sZ0JBQWdCLHlCQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ2hHO0lBRUQsUUFBUSxxQkFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzNCLEtBQUssbUJBQVEsQ0FBQyxXQUFXLENBQUM7UUFDMUIsS0FBSyxtQkFBUSxDQUFDLEtBQUs7WUFDakIsT0FBTyxvQkFBWSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekU7WUFDRSxPQUFPLHdCQUFjLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQzNDO0FBQ0gsQ0FBQztBQVpELDREQVlDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsU0FBZ0IsdUJBQXVCLENBQ3JDLE9BQWUsRUFDZixPQUFnQixFQUNoQixPQUF5QjtJQUV6QixJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ1osT0FBTyxHQUFHLHNCQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztLQUM5RTtJQUVELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLElBQUk7WUFDRixPQUFPLENBQUMsTUFBTSxFQUFFLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNyRTtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsV0FBVztTQUNaO0tBQ0Y7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFsQkQsMERBa0JDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsT0FBZSxFQUFFLE9BQWdCLEVBQUUsT0FBeUI7SUFDbkcsTUFBTSxDQUFDLEVBQUUsWUFBWSxDQUFDLEdBQUcsdUJBQXVCLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1RSxPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDO0FBSEQsNERBR0M7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsaUJBQWlCLENBQUMsT0FBZSxFQUFFLE9BQWdCO0lBQ2pFLE9BQU8sMEJBQWdCLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9FLENBQUM7QUFGRCw4Q0FFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSW1wbGVtZW50cyBtZXRob2RzIGZvciBub25zdGFuZGFyZCAobm9uLWNhbm9uaWNhbCkgYWRkcmVzcyBmb3JtYXRzLlxuICpcbiAqIFVzZSBgdG9PdXRwdXRTY3JpcHRUcnlGb3JtYXRzKClgIGluc3RlYWQgb2YgYHRvT3V0cHV0U2NyaXB0KClgIHRvIHBhcnNlIGFkZHJlc3NlcyBpblxuICogbm9uLWNhbm9uaWNhbCBmb3JtYXRzXG4gKi9cbmltcG9ydCB7IGdldE1haW5uZXQsIGdldE5ldHdvcmtOYW1lLCBOZXR3b3JrLCBuZXR3b3JrcyB9IGZyb20gJy4vbmV0d29ya3MnO1xuaW1wb3J0IHsgZnJvbU91dHB1dFNjcmlwdCwgdG9PdXRwdXRTY3JpcHQgfSBmcm9tICcuL2FkZHJlc3MnO1xuXG5pbXBvcnQgeyBiY2FzaEFkZHJlc3MgfSBmcm9tICcuL2JpdGdvJztcblxuZXhwb3J0IGNvbnN0IGFkZHJlc3NGb3JtYXRzID0gWydkZWZhdWx0JywgJ2Nhc2hhZGRyJ10gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIEFkZHJlc3NGb3JtYXQgPSAodHlwZW9mIGFkZHJlc3NGb3JtYXRzKVtudW1iZXJdO1xuXG4vKipcbiAqIEBwYXJhbSBmb3JtYXRcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJuIHRydWUgaWZmIGZvcm1hdCBpcyBzdXBwb3J0ZWQgZm9yIG5ldHdvcmtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU3VwcG9ydGVkQWRkcmVzc0Zvcm1hdChmb3JtYXQ6IEFkZHJlc3NGb3JtYXQsIG5ldHdvcms6IE5ldHdvcmspOiBib29sZWFuIHtcbiAgc3dpdGNoIChmb3JtYXQpIHtcbiAgICBjYXNlICdkZWZhdWx0JzpcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIGNhc2UgJ2Nhc2hhZGRyJzpcbiAgICAgIHJldHVybiBbbmV0d29ya3MuYml0Y29pbmNhc2gsIG5ldHdvcmtzLmVjYXNoXS5pbmNsdWRlcyhnZXRNYWlubmV0KG5ldHdvcmspKTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYHVua25vd24gYWRkcmVzcyBmb3JtYXQgJHtmb3JtYXR9YCk7XG59XG5cbi8qKlxuICogQHBhcmFtIG91dHB1dFNjcmlwdFxuICogQHBhcmFtIGZvcm1hdFxuICogQHBhcmFtIG5ldHdvcmtcbiAqIEByZXR1cm4gYWRkcmVzcyBmb3JtYXR0ZWQgdXNpbmcgcHJvdmlkZWQgQWRkcmVzc0Zvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbU91dHB1dFNjcmlwdFdpdGhGb3JtYXQob3V0cHV0U2NyaXB0OiBCdWZmZXIsIGZvcm1hdDogQWRkcmVzc0Zvcm1hdCwgbmV0d29yazogTmV0d29yayk6IHN0cmluZyB7XG4gIGlmICghaXNTdXBwb3J0ZWRBZGRyZXNzRm9ybWF0KGZvcm1hdCwgbmV0d29yaykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHVuc3VwcG9ydGVkIGFkZHJlc3MgZm9ybWF0ICR7Zm9ybWF0fSBmb3IgbmV0d29yayAke2dldE5ldHdvcmtOYW1lKG5ldHdvcmspfWApO1xuICB9XG5cbiAgc3dpdGNoIChnZXRNYWlubmV0KG5ldHdvcmspKSB7XG4gICAgY2FzZSBuZXR3b3Jrcy5iaXRjb2luY2FzaDpcbiAgICBjYXNlIG5ldHdvcmtzLmVjYXNoOlxuICAgICAgcmV0dXJuIGJjYXNoQWRkcmVzcy5mcm9tT3V0cHV0U2NyaXB0V2l0aEZvcm1hdChvdXRwdXRTY3JpcHQsIGZvcm1hdCwgbmV0d29yayk7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBmcm9tT3V0cHV0U2NyaXB0KG91dHB1dFNjcmlwdCwgbmV0d29yayk7XG4gIH1cbn1cblxuLyoqXG4gKiBAcGFyYW0gYWRkcmVzc1xuICogQHBhcmFtIGZvcm1hdFxuICogQHBhcmFtIG5ldHdvcmtcbiAqIEByZXR1cm4gb3V0cHV0IHNjcmlwdCBwYXJzZWQgd2l0aCBwcm92aWRlZCBBZGRyZXNzRm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b091dHB1dFNjcmlwdFdpdGhGb3JtYXQoYWRkcmVzczogc3RyaW5nLCBmb3JtYXQ6IEFkZHJlc3NGb3JtYXQsIG5ldHdvcms6IE5ldHdvcmspOiBCdWZmZXIge1xuICBpZiAoIWlzU3VwcG9ydGVkQWRkcmVzc0Zvcm1hdChmb3JtYXQsIG5ldHdvcmspKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGB1bnN1cHBvcnRlZCBhZGRyZXNzIGZvcm1hdCAke2Zvcm1hdH0gZm9yIG5ldHdvcmsgJHtnZXROZXR3b3JrTmFtZShuZXR3b3JrKX1gKTtcbiAgfVxuXG4gIHN3aXRjaCAoZ2V0TWFpbm5ldChuZXR3b3JrKSkge1xuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbmNhc2g6XG4gICAgY2FzZSBuZXR3b3Jrcy5lY2FzaDpcbiAgICAgIHJldHVybiBiY2FzaEFkZHJlc3MudG9PdXRwdXRTY3JpcHRXaXRoRm9ybWF0KGFkZHJlc3MsIGZvcm1hdCwgbmV0d29yayk7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB0b091dHB1dFNjcmlwdChhZGRyZXNzLCBuZXR3b3JrKTtcbiAgfVxufVxuXG4vKipcbiAqIEF0dGVtcHRzIHRvIHBhcnNlIGFkZHJlc3Mgd2l0aCBkaWZmZXJlbnQgYWRkcmVzcyBmb3JtYXRzLCByZXR1cm5zIGZpcnN0IGhpdC5cbiAqIEBwYXJhbSBhZGRyZXNzXG4gKiBAcGFyYW0gbmV0d29ya1xuICogQHBhcmFtIGZvcm1hdHMgLSBkZWZhdWx0cyB0byBhbGwgc3VwcG9ydGVkIGFkZHJlc3MgZm9ybWF0cyBmb3IgbmV0d29ya1xuICogQHJldHVybiB0dXBsZSB3aXRoIFtBZGRyZXNzRm9ybWF0LCBCdWZmZXJdIGNvbnRhaW5pbmcgZm9ybWF0IGFuZCBwYXJzZWQgb3V0cHV0IHNjcmlwdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9PdXRwdXRTY3JpcHRBbmRGb3JtYXQoXG4gIGFkZHJlc3M6IHN0cmluZyxcbiAgbmV0d29yazogTmV0d29yayxcbiAgZm9ybWF0cz86IEFkZHJlc3NGb3JtYXRbXVxuKTogW0FkZHJlc3NGb3JtYXQsIEJ1ZmZlcl0ge1xuICBpZiAoIWZvcm1hdHMpIHtcbiAgICBmb3JtYXRzID0gYWRkcmVzc0Zvcm1hdHMuZmlsdGVyKChmKSA9PiBpc1N1cHBvcnRlZEFkZHJlc3NGb3JtYXQoZiwgbmV0d29yaykpO1xuICB9XG5cbiAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gW2Zvcm1hdCwgdG9PdXRwdXRTY3JpcHRXaXRoRm9ybWF0KGFkZHJlc3MsIGZvcm1hdCwgbmV0d29yayldO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIHRyeSBuZXh0XG4gICAgfVxuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKGBjb3VsZCBub3QgcGFyc2Ugb3V0cHV0U2NyaXB0IFtmb3JtYXRzPSR7Zm9ybWF0c31dYCk7XG59XG5cbi8qKlxuICogU2FtZSBhcyBgdG9PdXRwdXRTY3JpcHRBbmRGb3JtYXRgLCBvbmx5IHJldHVybmluZyBzY3JpcHRcbiAqIEBwYXJhbSBhZGRyZXNzIC0ge0BzZWUgdG9PdXRwdXRTY3JpcHRBbmRGb3JtYXR9XG4gKiBAcGFyYW0gbmV0d29yayAtIHtAc2VlIHRvT3V0cHV0U2NyaXB0QW5kRm9ybWF0fVxuICogQHBhcmFtIGZvcm1hdHMgLSB7QHNlZSB0b091dHB1dFNjcmlwdEFuZEZvcm1hdH1cbiAqIEByZXR1cm4gcGFyc2VkIG91dHB1dCBzY3JpcHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvT3V0cHV0U2NyaXB0VHJ5Rm9ybWF0cyhhZGRyZXNzOiBzdHJpbmcsIG5ldHdvcms6IE5ldHdvcmssIGZvcm1hdHM/OiBBZGRyZXNzRm9ybWF0W10pOiBCdWZmZXIge1xuICBjb25zdCBbLCBvdXRwdXRTY3JpcHRdID0gdG9PdXRwdXRTY3JpcHRBbmRGb3JtYXQoYWRkcmVzcywgbmV0d29yaywgZm9ybWF0cyk7XG4gIHJldHVybiBvdXRwdXRTY3JpcHQ7XG59XG5cbi8qKlxuICogQHBhcmFtIGFkZHJlc3NcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJuIGFkZHJlc3MgaW4gY2Fub25pY2FsIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9DYW5vbmljYWxGb3JtYXQoYWRkcmVzczogc3RyaW5nLCBuZXR3b3JrOiBOZXR3b3JrKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZyb21PdXRwdXRTY3JpcHQodG9PdXRwdXRTY3JpcHRUcnlGb3JtYXRzKGFkZHJlc3MsIG5ldHdvcmspLCBuZXR3b3JrKTtcbn1cbiJdfQ==
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0Zvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGRyZXNzRm9ybWF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7OztHQUtHO0FBQ0gseUNBQTJFO0FBQzNFLHVDQUE2RDtBQUU3RCxtQ0FBdUM7QUFFMUIsUUFBQSxjQUFjLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFVLENBQUM7QUFJL0Q7Ozs7R0FJRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE1BQXFCLEVBQUUsT0FBZ0I7SUFDOUUsUUFBUSxNQUFNLEVBQUU7UUFDZCxLQUFLLFNBQVM7WUFDWixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssVUFBVTtZQUNiLE9BQU8sQ0FBQyxtQkFBUSxDQUFDLFdBQVcsRUFBRSxtQkFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFBLHFCQUFVLEVBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztLQUMvRTtJQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLE1BQU0sRUFBRSxDQUFDLENBQUM7QUFDdEQsQ0FBQztBQVJELDREQVFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQiwwQkFBMEIsQ0FBQyxZQUFvQixFQUFFLE1BQXFCLEVBQUUsT0FBZ0I7SUFDdEcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRTtRQUM5QyxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixNQUFNLGdCQUFnQixJQUFBLHlCQUFjLEVBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ2hHO0lBRUQsUUFBUSxJQUFBLHFCQUFVLEVBQUMsT0FBTyxDQUFDLEVBQUU7UUFDM0IsS0FBSyxtQkFBUSxDQUFDLFdBQVcsQ0FBQztRQUMxQixLQUFLLG1CQUFRLENBQUMsS0FBSztZQUNqQixPQUFPLG9CQUFZLENBQUMsMEJBQTBCLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRjtZQUNFLE9BQU8sSUFBQSwwQkFBZ0IsRUFBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDbEQ7QUFDSCxDQUFDO0FBWkQsZ0VBWUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE9BQWUsRUFBRSxNQUFxQixFQUFFLE9BQWdCO0lBQy9GLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUU7UUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsTUFBTSxnQkFBZ0IsSUFBQSx5QkFBYyxFQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUNoRztJQUVELFFBQVEsSUFBQSxxQkFBVSxFQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzNCLEtBQUssbUJBQVEsQ0FBQyxXQUFXLENBQUM7UUFDMUIsS0FBSyxtQkFBUSxDQUFDLEtBQUs7WUFDakIsT0FBTyxvQkFBWSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekU7WUFDRSxPQUFPLElBQUEsd0JBQWMsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDM0M7QUFDSCxDQUFDO0FBWkQsNERBWUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQix1QkFBdUIsQ0FDckMsT0FBZSxFQUNmLE9BQWdCLEVBQ2hCLE9BQXlCO0lBRXpCLElBQUksQ0FBQyxPQUFPLEVBQUU7UUFDWixPQUFPLEdBQUcsc0JBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0tBQzlFO0lBRUQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsSUFBSTtZQUNGLE9BQU8sQ0FBQyxNQUFNLEVBQUUsd0JBQXdCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQ3JFO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixXQUFXO1NBQ1o7S0FDRjtJQUVELE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLE9BQU8sR0FBRyxDQUFDLENBQUM7QUFDdkUsQ0FBQztBQWxCRCwwREFrQkM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQix3QkFBd0IsQ0FBQyxPQUFlLEVBQUUsT0FBZ0IsRUFBRSxPQUF5QjtJQUNuRyxNQUFNLENBQUMsRUFBRSxZQUFZLENBQUMsR0FBRyx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzVFLE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUM7QUFIRCw0REFHQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixpQkFBaUIsQ0FBQyxPQUFlLEVBQUUsT0FBZ0I7SUFDakUsT0FBTyxJQUFBLDBCQUFnQixFQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUMvRSxDQUFDO0FBRkQsOENBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEltcGxlbWVudHMgbWV0aG9kcyBmb3Igbm9uc3RhbmRhcmQgKG5vbi1jYW5vbmljYWwpIGFkZHJlc3MgZm9ybWF0cy5cbiAqXG4gKiBVc2UgYHRvT3V0cHV0U2NyaXB0VHJ5Rm9ybWF0cygpYCBpbnN0ZWFkIG9mIGB0b091dHB1dFNjcmlwdCgpYCB0byBwYXJzZSBhZGRyZXNzZXMgaW5cbiAqIG5vbi1jYW5vbmljYWwgZm9ybWF0c1xuICovXG5pbXBvcnQgeyBnZXRNYWlubmV0LCBnZXROZXR3b3JrTmFtZSwgTmV0d29yaywgbmV0d29ya3MgfSBmcm9tICcuL25ldHdvcmtzJztcbmltcG9ydCB7IGZyb21PdXRwdXRTY3JpcHQsIHRvT3V0cHV0U2NyaXB0IH0gZnJvbSAnLi9hZGRyZXNzJztcblxuaW1wb3J0IHsgYmNhc2hBZGRyZXNzIH0gZnJvbSAnLi9iaXRnbyc7XG5cbmV4cG9ydCBjb25zdCBhZGRyZXNzRm9ybWF0cyA9IFsnZGVmYXVsdCcsICdjYXNoYWRkciddIGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBBZGRyZXNzRm9ybWF0ID0gKHR5cGVvZiBhZGRyZXNzRm9ybWF0cylbbnVtYmVyXTtcblxuLyoqXG4gKiBAcGFyYW0gZm9ybWF0XG4gKiBAcGFyYW0gbmV0d29ya1xuICogQHJldHVybiB0cnVlIGlmZiBmb3JtYXQgaXMgc3VwcG9ydGVkIGZvciBuZXR3b3JrXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1N1cHBvcnRlZEFkZHJlc3NGb3JtYXQoZm9ybWF0OiBBZGRyZXNzRm9ybWF0LCBuZXR3b3JrOiBOZXR3b3JrKTogYm9vbGVhbiB7XG4gIHN3aXRjaCAoZm9ybWF0KSB7XG4gICAgY2FzZSAnZGVmYXVsdCc6XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICBjYXNlICdjYXNoYWRkcic6XG4gICAgICByZXR1cm4gW25ldHdvcmtzLmJpdGNvaW5jYXNoLCBuZXR3b3Jrcy5lY2FzaF0uaW5jbHVkZXMoZ2V0TWFpbm5ldChuZXR3b3JrKSk7XG4gIH1cbiAgdGhyb3cgbmV3IEVycm9yKGB1bmtub3duIGFkZHJlc3MgZm9ybWF0ICR7Zm9ybWF0fWApO1xufVxuXG4vKipcbiAqIEBwYXJhbSBvdXRwdXRTY3JpcHRcbiAqIEBwYXJhbSBmb3JtYXRcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJuIGFkZHJlc3MgZm9ybWF0dGVkIHVzaW5nIHByb3ZpZGVkIEFkZHJlc3NGb3JtYXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21PdXRwdXRTY3JpcHRXaXRoRm9ybWF0KG91dHB1dFNjcmlwdDogQnVmZmVyLCBmb3JtYXQ6IEFkZHJlc3NGb3JtYXQsIG5ldHdvcms6IE5ldHdvcmspOiBzdHJpbmcge1xuICBpZiAoIWlzU3VwcG9ydGVkQWRkcmVzc0Zvcm1hdChmb3JtYXQsIG5ldHdvcmspKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGB1bnN1cHBvcnRlZCBhZGRyZXNzIGZvcm1hdCAke2Zvcm1hdH0gZm9yIG5ldHdvcmsgJHtnZXROZXR3b3JrTmFtZShuZXR3b3JrKX1gKTtcbiAgfVxuXG4gIHN3aXRjaCAoZ2V0TWFpbm5ldChuZXR3b3JrKSkge1xuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbmNhc2g6XG4gICAgY2FzZSBuZXR3b3Jrcy5lY2FzaDpcbiAgICAgIHJldHVybiBiY2FzaEFkZHJlc3MuZnJvbU91dHB1dFNjcmlwdFdpdGhGb3JtYXQob3V0cHV0U2NyaXB0LCBmb3JtYXQsIG5ldHdvcmspO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gZnJvbU91dHB1dFNjcmlwdChvdXRwdXRTY3JpcHQsIG5ldHdvcmspO1xuICB9XG59XG5cbi8qKlxuICogQHBhcmFtIGFkZHJlc3NcbiAqIEBwYXJhbSBmb3JtYXRcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJuIG91dHB1dCBzY3JpcHQgcGFyc2VkIHdpdGggcHJvdmlkZWQgQWRkcmVzc0Zvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9PdXRwdXRTY3JpcHRXaXRoRm9ybWF0KGFkZHJlc3M6IHN0cmluZywgZm9ybWF0OiBBZGRyZXNzRm9ybWF0LCBuZXR3b3JrOiBOZXR3b3JrKTogQnVmZmVyIHtcbiAgaWYgKCFpc1N1cHBvcnRlZEFkZHJlc3NGb3JtYXQoZm9ybWF0LCBuZXR3b3JrKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgdW5zdXBwb3J0ZWQgYWRkcmVzcyBmb3JtYXQgJHtmb3JtYXR9IGZvciBuZXR3b3JrICR7Z2V0TmV0d29ya05hbWUobmV0d29yayl9YCk7XG4gIH1cblxuICBzd2l0Y2ggKGdldE1haW5uZXQobmV0d29yaykpIHtcbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5jYXNoOlxuICAgIGNhc2UgbmV0d29ya3MuZWNhc2g6XG4gICAgICByZXR1cm4gYmNhc2hBZGRyZXNzLnRvT3V0cHV0U2NyaXB0V2l0aEZvcm1hdChhZGRyZXNzLCBmb3JtYXQsIG5ldHdvcmspO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdG9PdXRwdXRTY3JpcHQoYWRkcmVzcywgbmV0d29yayk7XG4gIH1cbn1cblxuLyoqXG4gKiBBdHRlbXB0cyB0byBwYXJzZSBhZGRyZXNzIHdpdGggZGlmZmVyZW50IGFkZHJlc3MgZm9ybWF0cywgcmV0dXJucyBmaXJzdCBoaXQuXG4gKiBAcGFyYW0gYWRkcmVzc1xuICogQHBhcmFtIG5ldHdvcmtcbiAqIEBwYXJhbSBmb3JtYXRzIC0gZGVmYXVsdHMgdG8gYWxsIHN1cHBvcnRlZCBhZGRyZXNzIGZvcm1hdHMgZm9yIG5ldHdvcmtcbiAqIEByZXR1cm4gdHVwbGUgd2l0aCBbQWRkcmVzc0Zvcm1hdCwgQnVmZmVyXSBjb250YWluaW5nIGZvcm1hdCBhbmQgcGFyc2VkIG91dHB1dCBzY3JpcHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvT3V0cHV0U2NyaXB0QW5kRm9ybWF0KFxuICBhZGRyZXNzOiBzdHJpbmcsXG4gIG5ldHdvcms6IE5ldHdvcmssXG4gIGZvcm1hdHM/OiBBZGRyZXNzRm9ybWF0W11cbik6IFtBZGRyZXNzRm9ybWF0LCBCdWZmZXJdIHtcbiAgaWYgKCFmb3JtYXRzKSB7XG4gICAgZm9ybWF0cyA9IGFkZHJlc3NGb3JtYXRzLmZpbHRlcigoZikgPT4gaXNTdXBwb3J0ZWRBZGRyZXNzRm9ybWF0KGYsIG5ldHdvcmspKTtcbiAgfVxuXG4gIGZvciAoY29uc3QgZm9ybWF0IG9mIGZvcm1hdHMpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIFtmb3JtYXQsIHRvT3V0cHV0U2NyaXB0V2l0aEZvcm1hdChhZGRyZXNzLCBmb3JtYXQsIG5ldHdvcmspXTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAvLyB0cnkgbmV4dFxuICAgIH1cbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihgY291bGQgbm90IHBhcnNlIG91dHB1dFNjcmlwdCBbZm9ybWF0cz0ke2Zvcm1hdHN9XWApO1xufVxuXG4vKipcbiAqIFNhbWUgYXMgYHRvT3V0cHV0U2NyaXB0QW5kRm9ybWF0YCwgb25seSByZXR1cm5pbmcgc2NyaXB0XG4gKiBAcGFyYW0gYWRkcmVzcyAtIHtAc2VlIHRvT3V0cHV0U2NyaXB0QW5kRm9ybWF0fVxuICogQHBhcmFtIG5ldHdvcmsgLSB7QHNlZSB0b091dHB1dFNjcmlwdEFuZEZvcm1hdH1cbiAqIEBwYXJhbSBmb3JtYXRzIC0ge0BzZWUgdG9PdXRwdXRTY3JpcHRBbmRGb3JtYXR9XG4gKiBAcmV0dXJuIHBhcnNlZCBvdXRwdXQgc2NyaXB0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b091dHB1dFNjcmlwdFRyeUZvcm1hdHMoYWRkcmVzczogc3RyaW5nLCBuZXR3b3JrOiBOZXR3b3JrLCBmb3JtYXRzPzogQWRkcmVzc0Zvcm1hdFtdKTogQnVmZmVyIHtcbiAgY29uc3QgWywgb3V0cHV0U2NyaXB0XSA9IHRvT3V0cHV0U2NyaXB0QW5kRm9ybWF0KGFkZHJlc3MsIG5ldHdvcmssIGZvcm1hdHMpO1xuICByZXR1cm4gb3V0cHV0U2NyaXB0O1xufVxuXG4vKipcbiAqIEBwYXJhbSBhZGRyZXNzXG4gKiBAcGFyYW0gbmV0d29ya1xuICogQHJldHVybiBhZGRyZXNzIGluIGNhbm9uaWNhbCBmb3JtYXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQ2Fub25pY2FsRm9ybWF0KGFkZHJlc3M6IHN0cmluZywgbmV0d29yazogTmV0d29yayk6IHN0cmluZyB7XG4gIHJldHVybiBmcm9tT3V0cHV0U2NyaXB0KHRvT3V0cHV0U2NyaXB0VHJ5Rm9ybWF0cyhhZGRyZXNzLCBuZXR3b3JrKSwgbmV0d29yayk7XG59XG4iXX0=
@@ -1,9 +1,8 @@
1
1
  /// <reference types="node" />
2
- import { TxInput } from 'bitcoinjs-lib';
3
2
  import { SessionKey } from '@brandonblack/musig';
4
- import { ProprietaryKeyValue, UtxoPsbt } from './UtxoPsbt';
5
3
  import { Tuple } from './types';
6
- import { UtxoTransaction } from './UtxoTransaction';
4
+ import { PsbtInput } from 'bip174/src/lib/interfaces';
5
+ import { ProprietaryKeyValue } from './PsbtUtil';
7
6
  /**
8
7
  * Participant key value object.
9
8
  */
@@ -107,17 +106,17 @@ export declare function createMusig2SigningSession(sessionArgs: {
107
106
  * @returns psbt proprietary key for musig2 participant key value data
108
107
  * If no key value exists, undefined is returned.
109
108
  */
110
- export declare function parsePsbtMusig2Participants(psbt: UtxoPsbt, inputIndex: number): PsbtMusig2Participants | undefined;
109
+ export declare function parsePsbtMusig2Participants(input: PsbtInput): PsbtMusig2Participants | undefined;
111
110
  /**
112
111
  * @returns psbt proprietary key for musig2 public nonce key value data
113
112
  * If no key value exists, undefined is returned.
114
113
  */
115
- export declare function parsePsbtMusig2Nonces(psbt: UtxoPsbt, inputIndex: number): PsbtMusig2PubNonce[] | undefined;
114
+ export declare function parsePsbtMusig2Nonces(input: PsbtInput): PsbtMusig2PubNonce[] | undefined;
116
115
  /**
117
116
  * @returns psbt proprietary key for musig2 partial sig key value data
118
117
  * If no key value exists, undefined is returned.
119
118
  */
120
- export declare function parsePsbtMusig2PartialSigs(psbt: UtxoPsbt, inputIndex: number): PsbtMusig2PartialSig[] | undefined;
119
+ export declare function parsePsbtMusig2PartialSigs(input: PsbtInput): PsbtMusig2PartialSig[] | undefined;
121
120
  /**
122
121
  * Assert musig2 participant key value data with tapInternalKey and tapMerkleRoot.
123
122
  * <tapOutputKey><tapInputKey> => <participantKey1><participantKey2>
@@ -147,8 +146,4 @@ export declare function musig2DeterministicSign(params: PsbtMusig2DeterministicP
147
146
  sessionKey: SessionKey;
148
147
  publicNonce: Buffer;
149
148
  };
150
- /**
151
- * @returns true iff given psbt/transaction/tx-input-array contains at least one taproot key path spend input
152
- */
153
- export declare function isTransactionWithKeyPathSpendInput(data: UtxoPsbt | UtxoTransaction<bigint | number> | TxInput[]): boolean;
154
149
  //# sourceMappingURL=Musig2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Musig2.d.ts","sourceRoot":"","sources":["../../../src/bitgo/Musig2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Musig2.d.ts","sourceRoot":"","sources":["../../../src/bitgo/Musig2.ts"],"names":[],"mappings":"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"}