@bitgo/abstract-utxo 10.0.1 → 10.2.0

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 (113) hide show
  1. package/README.md +76 -0
  2. package/dist/src/abstractUtxoCoin.d.ts +3 -19
  3. package/dist/src/abstractUtxoCoin.d.ts.map +1 -1
  4. package/dist/src/abstractUtxoCoin.js +50 -102
  5. package/dist/src/address/fixedScript.d.ts +51 -0
  6. package/dist/src/address/fixedScript.d.ts.map +1 -0
  7. package/dist/src/address/fixedScript.js +143 -0
  8. package/dist/src/address/index.d.ts +2 -0
  9. package/dist/src/address/index.d.ts.map +1 -0
  10. package/dist/src/address/index.js +8 -0
  11. package/dist/src/impl/bch/bch.d.ts +20 -0
  12. package/dist/src/impl/bch/bch.d.ts.map +1 -0
  13. package/dist/src/impl/bch/bch.js +70 -0
  14. package/dist/src/impl/bch/index.d.ts +3 -0
  15. package/dist/src/impl/bch/index.d.ts.map +1 -0
  16. package/dist/src/impl/bch/index.js +19 -0
  17. package/dist/src/impl/bch/tbch.d.ts +10 -0
  18. package/dist/src/impl/bch/tbch.d.ts.map +1 -0
  19. package/dist/src/impl/bch/tbch.js +48 -0
  20. package/dist/src/impl/bcha/bcha.d.ts +9 -0
  21. package/dist/src/impl/bcha/bcha.d.ts.map +1 -0
  22. package/dist/src/impl/bcha/bcha.js +58 -0
  23. package/dist/src/impl/bcha/index.d.ts +3 -0
  24. package/dist/src/impl/bcha/index.d.ts.map +1 -0
  25. package/dist/src/impl/bcha/index.js +19 -0
  26. package/dist/src/impl/bcha/tbcha.d.ts +10 -0
  27. package/dist/src/impl/bcha/tbcha.d.ts.map +1 -0
  28. package/dist/src/impl/bcha/tbcha.js +48 -0
  29. package/dist/src/impl/bsv/bsv.d.ts +8 -0
  30. package/dist/src/impl/bsv/bsv.d.ts.map +1 -0
  31. package/dist/src/impl/bsv/bsv.js +48 -0
  32. package/dist/src/impl/bsv/index.d.ts +3 -0
  33. package/dist/src/impl/bsv/index.d.ts.map +1 -0
  34. package/dist/src/impl/bsv/index.js +19 -0
  35. package/dist/src/impl/bsv/tbsv.d.ts +10 -0
  36. package/dist/src/impl/bsv/tbsv.d.ts.map +1 -0
  37. package/dist/src/impl/bsv/tbsv.js +48 -0
  38. package/dist/src/impl/btc/btc.d.ts +13 -0
  39. package/dist/src/impl/btc/btc.d.ts.map +1 -0
  40. package/dist/src/impl/btc/btc.js +55 -0
  41. package/dist/src/impl/btc/index.d.ts +7 -0
  42. package/dist/src/impl/btc/index.d.ts.map +1 -0
  43. package/dist/src/impl/btc/index.js +23 -0
  44. package/dist/src/impl/btc/inscriptionBuilder.d.ts +51 -0
  45. package/dist/src/impl/btc/inscriptionBuilder.d.ts.map +1 -0
  46. package/dist/src/impl/btc/inscriptionBuilder.js +183 -0
  47. package/dist/src/impl/btc/tbtc.d.ts +10 -0
  48. package/dist/src/impl/btc/tbtc.d.ts.map +1 -0
  49. package/dist/src/impl/btc/tbtc.js +48 -0
  50. package/dist/src/impl/btc/tbtc4.d.ts +10 -0
  51. package/dist/src/impl/btc/tbtc4.d.ts.map +1 -0
  52. package/dist/src/impl/btc/tbtc4.js +48 -0
  53. package/dist/src/impl/btc/tbtcbgsig.d.ts +10 -0
  54. package/dist/src/impl/btc/tbtcbgsig.d.ts.map +1 -0
  55. package/dist/src/impl/btc/tbtcbgsig.js +48 -0
  56. package/dist/src/impl/btc/tbtcsig.d.ts +10 -0
  57. package/dist/src/impl/btc/tbtcsig.d.ts.map +1 -0
  58. package/dist/src/impl/btc/tbtcsig.js +48 -0
  59. package/dist/src/impl/btg/btg.d.ts +7 -0
  60. package/dist/src/impl/btg/btg.d.ts.map +1 -0
  61. package/dist/src/impl/btg/btg.js +48 -0
  62. package/dist/src/impl/btg/index.d.ts +2 -0
  63. package/dist/src/impl/btg/index.d.ts.map +1 -0
  64. package/dist/src/impl/btg/index.js +18 -0
  65. package/dist/src/impl/dash/dash.d.ts +7 -0
  66. package/dist/src/impl/dash/dash.d.ts.map +1 -0
  67. package/dist/src/impl/dash/dash.js +48 -0
  68. package/dist/src/impl/dash/index.d.ts +3 -0
  69. package/dist/src/impl/dash/index.d.ts.map +1 -0
  70. package/dist/src/impl/dash/index.js +19 -0
  71. package/dist/src/impl/dash/tdash.d.ts +10 -0
  72. package/dist/src/impl/dash/tdash.d.ts.map +1 -0
  73. package/dist/src/impl/dash/tdash.js +48 -0
  74. package/dist/src/impl/doge/doge.d.ts +30 -0
  75. package/dist/src/impl/doge/doge.d.ts.map +1 -0
  76. package/dist/src/impl/doge/doge.js +79 -0
  77. package/dist/src/impl/doge/index.d.ts +3 -0
  78. package/dist/src/impl/doge/index.d.ts.map +1 -0
  79. package/dist/src/impl/doge/index.js +19 -0
  80. package/dist/src/impl/doge/tdoge.d.ts +10 -0
  81. package/dist/src/impl/doge/tdoge.d.ts.map +1 -0
  82. package/dist/src/impl/doge/tdoge.js +48 -0
  83. package/dist/src/impl/index.d.ts +10 -0
  84. package/dist/src/impl/index.d.ts.map +1 -0
  85. package/dist/src/impl/index.js +46 -0
  86. package/dist/src/impl/ltc/index.d.ts +3 -0
  87. package/dist/src/impl/ltc/index.d.ts.map +1 -0
  88. package/dist/src/impl/ltc/index.js +19 -0
  89. package/dist/src/impl/ltc/ltc.d.ts +7 -0
  90. package/dist/src/impl/ltc/ltc.d.ts.map +1 -0
  91. package/dist/src/impl/ltc/ltc.js +52 -0
  92. package/dist/src/impl/ltc/tltc.d.ts +7 -0
  93. package/dist/src/impl/ltc/tltc.d.ts.map +1 -0
  94. package/dist/src/impl/ltc/tltc.js +51 -0
  95. package/dist/src/impl/zec/index.d.ts +3 -0
  96. package/dist/src/impl/zec/index.d.ts.map +1 -0
  97. package/dist/src/impl/zec/index.js +19 -0
  98. package/dist/src/impl/zec/tzec.d.ts +7 -0
  99. package/dist/src/impl/zec/tzec.d.ts.map +1 -0
  100. package/dist/src/impl/zec/tzec.js +48 -0
  101. package/dist/src/impl/zec/zec.d.ts +10 -0
  102. package/dist/src/impl/zec/zec.d.ts.map +1 -0
  103. package/dist/src/impl/zec/zec.js +48 -0
  104. package/dist/src/index.d.ts +11 -0
  105. package/dist/src/index.d.ts.map +1 -1
  106. package/dist/src/index.js +14 -2
  107. package/dist/src/transaction/descriptor/verifyTransaction.d.ts +5 -3
  108. package/dist/src/transaction/descriptor/verifyTransaction.d.ts.map +1 -1
  109. package/dist/src/transaction/descriptor/verifyTransaction.js +5 -2
  110. package/dist/src/transaction/fixedScript/verifyTransaction.d.ts +17 -0
  111. package/dist/src/transaction/fixedScript/verifyTransaction.d.ts.map +1 -1
  112. package/dist/src/transaction/fixedScript/verifyTransaction.js +27 -5
  113. package/package.json +16 -10
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.generateAddressWithChainAndIndex = generateAddressWithChainAndIndex;
40
+ exports.generateAddress = generateAddress;
41
+ exports.assertFixedScriptWalletAddress = assertFixedScriptWalletAddress;
42
+ const lodash_1 = __importDefault(require("lodash"));
43
+ const sdk_core_1 = require("@bitgo/sdk-core");
44
+ const utxolib = __importStar(require("@bitgo/utxo-lib"));
45
+ const utxo_lib_1 = require("@bitgo/utxo-lib");
46
+ const secp256k1_1 = require("@bitgo/secp256k1");
47
+ function canonicalAddress(network, address, format) {
48
+ if (format === 'cashaddr') {
49
+ const script = utxolib.addressFormat.toOutputScriptTryFormats(address, network);
50
+ return utxolib.addressFormat.fromOutputScriptWithFormat(script, format, network);
51
+ }
52
+ // Default to canonical format (base58 for most coins)
53
+ return utxolib.addressFormat.toCanonicalFormat(address, network);
54
+ }
55
+ function supportsAddressType(network, addressType) {
56
+ return utxolib.bitgo.outputScripts.isSupportedScriptType(network, addressType);
57
+ }
58
+ function generateAddressWithChainAndIndex(network, keychains, chain, index, format) {
59
+ const path = '0/0/' + chain + '/' + index;
60
+ const hdNodes = keychains.map(({ pub }) => secp256k1_1.bip32.fromBase58(pub));
61
+ const derivedKeys = hdNodes.map((hdNode) => hdNode.derivePath((0, sdk_core_1.sanitizeLegacyPath)(path)).publicKey);
62
+ const addressType = utxo_lib_1.bitgo.scriptTypeForChain(chain);
63
+ const { scriptPubKey: outputScript } = utxolib.bitgo.outputScripts.createOutputScript2of3(derivedKeys, addressType);
64
+ const address = utxolib.address.fromOutputScript(outputScript, network);
65
+ return canonicalAddress(network, address, format);
66
+ }
67
+ /**
68
+ * Generate an address for a wallet based on a set of configurations
69
+ * @param params.addressType {string} Deprecated
70
+ * @param params.keychains {[object]} Array of objects with xpubs
71
+ * @param params.threshold {number} Minimum number of signatures
72
+ * @param params.chain {number} Derivation chain (see https://github.com/BitGo/unspents/blob/master/src/codes.ts for
73
+ * the corresponding address type of a given chain code)
74
+ * @param params.index {number} Derivation index
75
+ * @param params.segwit {boolean} Deprecated
76
+ * @param params.bech32 {boolean} Deprecated
77
+ * @returns {string} The generated address
78
+ */
79
+ function generateAddress(network, params) {
80
+ let derivationIndex = 0;
81
+ if (lodash_1.default.isInteger(params.index) && params.index > 0) {
82
+ derivationIndex = params.index;
83
+ }
84
+ const { keychains, chain, segwit = false, bech32 = false } = params;
85
+ let derivationChain = utxo_lib_1.bitgo.getExternalChainCode('p2sh');
86
+ if (lodash_1.default.isNumber(chain) && lodash_1.default.isInteger(chain) && utxo_lib_1.bitgo.isChainCode(chain)) {
87
+ derivationChain = chain;
88
+ }
89
+ function convertFlagsToAddressType() {
90
+ if (utxo_lib_1.bitgo.isChainCode(chain)) {
91
+ return utxo_lib_1.bitgo.scriptTypeForChain(chain);
92
+ }
93
+ if (lodash_1.default.isBoolean(segwit) && segwit) {
94
+ return 'p2shP2wsh';
95
+ }
96
+ else if (lodash_1.default.isBoolean(bech32) && bech32) {
97
+ return 'p2wsh';
98
+ }
99
+ else {
100
+ return 'p2sh';
101
+ }
102
+ }
103
+ const addressType = params.addressType || convertFlagsToAddressType();
104
+ if (addressType !== utxolib.bitgo.scriptTypeForChain(derivationChain)) {
105
+ throw new sdk_core_1.AddressTypeChainMismatchError(addressType, derivationChain);
106
+ }
107
+ if (!supportsAddressType(network, addressType)) {
108
+ switch (addressType) {
109
+ case 'p2sh':
110
+ throw new Error(`internal error: p2sh should always be supported`);
111
+ case 'p2shP2wsh':
112
+ throw new sdk_core_1.P2shP2wshUnsupportedError();
113
+ case 'p2wsh':
114
+ throw new sdk_core_1.P2wshUnsupportedError();
115
+ case 'p2tr':
116
+ throw new sdk_core_1.P2trUnsupportedError();
117
+ case 'p2trMusig2':
118
+ throw new sdk_core_1.P2trMusig2UnsupportedError();
119
+ default:
120
+ throw new sdk_core_1.UnsupportedAddressTypeError();
121
+ }
122
+ }
123
+ return generateAddressWithChainAndIndex(network, keychains, derivationChain, derivationIndex, params.format);
124
+ }
125
+ function assertFixedScriptWalletAddress(network, { chain, index, keychains, format, addressType, address, }) {
126
+ if ((lodash_1.default.isUndefined(chain) && lodash_1.default.isUndefined(index)) || !(lodash_1.default.isFinite(chain) && lodash_1.default.isFinite(index))) {
127
+ throw new sdk_core_1.InvalidAddressDerivationPropertyError(`address validation failure: invalid chain (${chain}) or index (${index})`);
128
+ }
129
+ if (!keychains) {
130
+ throw new Error('missing required param keychains');
131
+ }
132
+ const expectedAddress = generateAddress(network, {
133
+ format,
134
+ addressType: addressType,
135
+ keychains,
136
+ chain,
137
+ index,
138
+ });
139
+ if (expectedAddress !== address) {
140
+ throw new sdk_core_1.UnexpectedAddressError(`address validation failure: expected ${expectedAddress} but got ${address}`);
141
+ }
142
+ }
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWRTY3JpcHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRkcmVzcy9maXhlZFNjcmlwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1EQSw0RUFpQkM7QUFjRCwwQ0FrREM7QUFNRCx3RUF1Q0M7QUFqTEQsb0RBQXVCO0FBQ3ZCLDhDQVd5QjtBQUN6Qix5REFBMkM7QUFDM0MsOENBQXdDO0FBQ3hDLGdEQUF5QztBQXVCekMsU0FBUyxnQkFBZ0IsQ0FBQyxPQUF3QixFQUFFLE9BQWUsRUFBRSxNQUE0QjtJQUMvRixJQUFJLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUMxQixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRixPQUFPLE9BQU8sQ0FBQyxhQUFhLENBQUMsMEJBQTBCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBQ0Qsc0RBQXNEO0lBQ3RELE9BQU8sT0FBTyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDbkUsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsT0FBd0IsRUFBRSxXQUEyQjtJQUNoRixPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztBQUNqRixDQUFDO0FBRUQsU0FBZ0IsZ0NBQWdDLENBQzlDLE9BQXdCLEVBQ3hCLFNBQTRCLEVBQzVCLEtBQXNCLEVBQ3RCLEtBQWEsRUFDYixNQUF1QztJQUV2QyxNQUFNLElBQUksR0FBRyxNQUFNLEdBQUcsS0FBSyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7SUFDMUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLGlCQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbEUsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFBLDZCQUFrQixFQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbkcsTUFBTSxXQUFXLEdBQUcsZ0JBQUssQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVwRCxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUVwSCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUV4RSxPQUFPLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsU0FBZ0IsZUFBZSxDQUFDLE9BQXdCLEVBQUUsTUFBeUM7SUFDakcsSUFBSSxlQUFlLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLElBQUksZ0JBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFLLE1BQU0sQ0FBQyxLQUFnQixHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzlELGVBQWUsR0FBRyxNQUFNLENBQUMsS0FBZSxDQUFDO0lBQzNDLENBQUM7SUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUcsS0FBSyxFQUFFLE1BQU0sR0FBRyxLQUFLLEVBQUUsR0FBRyxNQUEyQyxDQUFDO0lBRXpHLElBQUksZUFBZSxHQUFHLGdCQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekQsSUFBSSxnQkFBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxnQkFBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxnQkFBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hFLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUVELFNBQVMseUJBQXlCO1FBQ2hDLElBQUksZ0JBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM3QixPQUFPLGdCQUFLLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELElBQUksZ0JBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDbEMsT0FBTyxXQUFXLENBQUM7UUFDckIsQ0FBQzthQUFNLElBQUksZ0JBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDekMsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUkseUJBQXlCLEVBQUUsQ0FBQztJQUV0RSxJQUFJLFdBQVcsS0FBSyxPQUFPLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7UUFDdEUsTUFBTSxJQUFJLHdDQUE2QixDQUFDLFdBQVcsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQy9DLFFBQVEsV0FBVyxFQUFFLENBQUM7WUFDcEIsS0FBSyxNQUFNO2dCQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztZQUNyRSxLQUFLLFdBQVc7Z0JBQ2QsTUFBTSxJQUFJLG9DQUF5QixFQUFFLENBQUM7WUFDeEMsS0FBSyxPQUFPO2dCQUNWLE1BQU0sSUFBSSxnQ0FBcUIsRUFBRSxDQUFDO1lBQ3BDLEtBQUssTUFBTTtnQkFDVCxNQUFNLElBQUksK0JBQW9CLEVBQUUsQ0FBQztZQUNuQyxLQUFLLFlBQVk7Z0JBQ2YsTUFBTSxJQUFJLHFDQUEwQixFQUFFLENBQUM7WUFDekM7Z0JBQ0UsTUFBTSxJQUFJLHNDQUEyQixFQUFFLENBQUM7UUFDNUMsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLGdDQUFnQyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDL0csQ0FBQztBQU1ELFNBQWdCLDhCQUE4QixDQUM1QyxPQUF3QixFQUN4QixFQUNFLEtBQUssRUFDTCxLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixXQUFXLEVBQ1gsT0FBTyxHQVFSO0lBRUQsSUFBSSxDQUFDLGdCQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLGdCQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLGdCQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNoRyxNQUFNLElBQUksZ0RBQXFDLENBQzdDLDhDQUE4QyxLQUFLLGVBQWUsS0FBSyxHQUFHLENBQzNFLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxNQUFNLGVBQWUsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFO1FBQy9DLE1BQU07UUFDTixXQUFXLEVBQUUsV0FBNkI7UUFDMUMsU0FBUztRQUNULEtBQUs7UUFDTCxLQUFLO0tBQ04sQ0FBQyxDQUFDO0lBRUgsSUFBSSxlQUFlLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDaEMsTUFBTSxJQUFJLGlDQUFzQixDQUFDLHdDQUF3QyxlQUFlLFlBQVksT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNqSCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge1xuICBBZGRyZXNzVHlwZUNoYWluTWlzbWF0Y2hFcnJvcixcbiAgQ3JlYXRlQWRkcmVzc0Zvcm1hdCxcbiAgSW52YWxpZEFkZHJlc3NEZXJpdmF0aW9uUHJvcGVydHlFcnJvcixcbiAgVW5leHBlY3RlZEFkZHJlc3NFcnJvcixcbiAgUDJzaFAyd3NoVW5zdXBwb3J0ZWRFcnJvcixcbiAgUDJ0ck11c2lnMlVuc3VwcG9ydGVkRXJyb3IsXG4gIFAydHJVbnN1cHBvcnRlZEVycm9yLFxuICBQMndzaFVuc3VwcG9ydGVkRXJyb3IsXG4gIFVuc3VwcG9ydGVkQWRkcmVzc1R5cGVFcnJvcixcbiAgc2FuaXRpemVMZWdhY3lQYXRoLFxufSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuaW1wb3J0IHsgYml0Z28gfSBmcm9tICdAYml0Z28vdXR4by1saWInO1xuaW1wb3J0IHsgYmlwMzIgfSBmcm9tICdAYml0Z28vc2VjcDI1NmsxJztcblxudHlwZSBTY3JpcHRUeXBlMk9mMyA9IGJpdGdvLm91dHB1dFNjcmlwdHMuU2NyaXB0VHlwZTJPZjM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRml4ZWRTY3JpcHRBZGRyZXNzQ29pblNwZWNpZmljIHtcbiAgb3V0cHV0U2NyaXB0Pzogc3RyaW5nO1xuICByZWRlZW1TY3JpcHQ/OiBzdHJpbmc7XG4gIHdpdG5lc3NTY3JpcHQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhdGVBZGRyZXNzT3B0aW9ucyB7XG4gIGFkZHJlc3NUeXBlPzogU2NyaXB0VHlwZTJPZjM7XG4gIGNoYWluPzogbnVtYmVyO1xuICBpbmRleD86IG51bWJlcjtcbiAgc2Vnd2l0PzogYm9vbGVhbjtcbiAgYmVjaDMyPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIEdlbmVyYXRlRml4ZWRTY3JpcHRBZGRyZXNzT3B0aW9ucyBleHRlbmRzIEdlbmVyYXRlQWRkcmVzc09wdGlvbnMge1xuICBmb3JtYXQ/OiBDcmVhdGVBZGRyZXNzRm9ybWF0O1xuICBrZXljaGFpbnM6IHsgcHViOiBzdHJpbmcgfVtdO1xufVxuXG5mdW5jdGlvbiBjYW5vbmljYWxBZGRyZXNzKG5ldHdvcms6IHV0eG9saWIuTmV0d29yaywgYWRkcmVzczogc3RyaW5nLCBmb3JtYXQ/OiBDcmVhdGVBZGRyZXNzRm9ybWF0KTogc3RyaW5nIHtcbiAgaWYgKGZvcm1hdCA9PT0gJ2Nhc2hhZGRyJykge1xuICAgIGNvbnN0IHNjcmlwdCA9IHV0eG9saWIuYWRkcmVzc0Zvcm1hdC50b091dHB1dFNjcmlwdFRyeUZvcm1hdHMoYWRkcmVzcywgbmV0d29yayk7XG4gICAgcmV0dXJuIHV0eG9saWIuYWRkcmVzc0Zvcm1hdC5mcm9tT3V0cHV0U2NyaXB0V2l0aEZvcm1hdChzY3JpcHQsIGZvcm1hdCwgbmV0d29yayk7XG4gIH1cbiAgLy8gRGVmYXVsdCB0byBjYW5vbmljYWwgZm9ybWF0IChiYXNlNTggZm9yIG1vc3QgY29pbnMpXG4gIHJldHVybiB1dHhvbGliLmFkZHJlc3NGb3JtYXQudG9DYW5vbmljYWxGb3JtYXQoYWRkcmVzcywgbmV0d29yayk7XG59XG5cbmZ1bmN0aW9uIHN1cHBvcnRzQWRkcmVzc1R5cGUobmV0d29yazogdXR4b2xpYi5OZXR3b3JrLCBhZGRyZXNzVHlwZTogU2NyaXB0VHlwZTJPZjMpOiBib29sZWFuIHtcbiAgcmV0dXJuIHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5pc1N1cHBvcnRlZFNjcmlwdFR5cGUobmV0d29yaywgYWRkcmVzc1R5cGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVBZGRyZXNzV2l0aENoYWluQW5kSW5kZXgoXG4gIG5ldHdvcms6IHV0eG9saWIuTmV0d29yayxcbiAga2V5Y2hhaW5zOiB7IHB1Yjogc3RyaW5nIH1bXSxcbiAgY2hhaW46IGJpdGdvLkNoYWluQ29kZSxcbiAgaW5kZXg6IG51bWJlcixcbiAgZm9ybWF0OiBDcmVhdGVBZGRyZXNzRm9ybWF0IHwgdW5kZWZpbmVkXG4pOiBzdHJpbmcge1xuICBjb25zdCBwYXRoID0gJzAvMC8nICsgY2hhaW4gKyAnLycgKyBpbmRleDtcbiAgY29uc3QgaGROb2RlcyA9IGtleWNoYWlucy5tYXAoKHsgcHViIH0pID0+IGJpcDMyLmZyb21CYXNlNTgocHViKSk7XG4gIGNvbnN0IGRlcml2ZWRLZXlzID0gaGROb2Rlcy5tYXAoKGhkTm9kZSkgPT4gaGROb2RlLmRlcml2ZVBhdGgoc2FuaXRpemVMZWdhY3lQYXRoKHBhdGgpKS5wdWJsaWNLZXkpO1xuICBjb25zdCBhZGRyZXNzVHlwZSA9IGJpdGdvLnNjcmlwdFR5cGVGb3JDaGFpbihjaGFpbik7XG5cbiAgY29uc3QgeyBzY3JpcHRQdWJLZXk6IG91dHB1dFNjcmlwdCB9ID0gdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLmNyZWF0ZU91dHB1dFNjcmlwdDJvZjMoZGVyaXZlZEtleXMsIGFkZHJlc3NUeXBlKTtcblxuICBjb25zdCBhZGRyZXNzID0gdXR4b2xpYi5hZGRyZXNzLmZyb21PdXRwdXRTY3JpcHQob3V0cHV0U2NyaXB0LCBuZXR3b3JrKTtcblxuICByZXR1cm4gY2Fub25pY2FsQWRkcmVzcyhuZXR3b3JrLCBhZGRyZXNzLCBmb3JtYXQpO1xufVxuXG4vKipcbiAqIEdlbmVyYXRlIGFuIGFkZHJlc3MgZm9yIGEgd2FsbGV0IGJhc2VkIG9uIGEgc2V0IG9mIGNvbmZpZ3VyYXRpb25zXG4gKiBAcGFyYW0gcGFyYW1zLmFkZHJlc3NUeXBlIHtzdHJpbmd9ICAgRGVwcmVjYXRlZFxuICogQHBhcmFtIHBhcmFtcy5rZXljaGFpbnMgICB7W29iamVjdF19IEFycmF5IG9mIG9iamVjdHMgd2l0aCB4cHVic1xuICogQHBhcmFtIHBhcmFtcy50aHJlc2hvbGQgICB7bnVtYmVyfSAgIE1pbmltdW0gbnVtYmVyIG9mIHNpZ25hdHVyZXNcbiAqIEBwYXJhbSBwYXJhbXMuY2hhaW4gICAgICAge251bWJlcn0gICBEZXJpdmF0aW9uIGNoYWluIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL0JpdEdvL3Vuc3BlbnRzL2Jsb2IvbWFzdGVyL3NyYy9jb2Rlcy50cyBmb3JcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBjb3JyZXNwb25kaW5nIGFkZHJlc3MgdHlwZSBvZiBhIGdpdmVuIGNoYWluIGNvZGUpXG4gKiBAcGFyYW0gcGFyYW1zLmluZGV4ICAgICAgIHtudW1iZXJ9ICAgRGVyaXZhdGlvbiBpbmRleFxuICogQHBhcmFtIHBhcmFtcy5zZWd3aXQgICAgICB7Ym9vbGVhbn0gIERlcHJlY2F0ZWRcbiAqIEBwYXJhbSBwYXJhbXMuYmVjaDMyICAgICAge2Jvb2xlYW59ICBEZXByZWNhdGVkXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgZ2VuZXJhdGVkIGFkZHJlc3NcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlQWRkcmVzcyhuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmssIHBhcmFtczogR2VuZXJhdGVGaXhlZFNjcmlwdEFkZHJlc3NPcHRpb25zKTogc3RyaW5nIHtcbiAgbGV0IGRlcml2YXRpb25JbmRleCA9IDA7XG4gIGlmIChfLmlzSW50ZWdlcihwYXJhbXMuaW5kZXgpICYmIChwYXJhbXMuaW5kZXggYXMgbnVtYmVyKSA+IDApIHtcbiAgICBkZXJpdmF0aW9uSW5kZXggPSBwYXJhbXMuaW5kZXggYXMgbnVtYmVyO1xuICB9XG5cbiAgY29uc3QgeyBrZXljaGFpbnMsIGNoYWluLCBzZWd3aXQgPSBmYWxzZSwgYmVjaDMyID0gZmFsc2UgfSA9IHBhcmFtcyBhcyBHZW5lcmF0ZUZpeGVkU2NyaXB0QWRkcmVzc09wdGlvbnM7XG5cbiAgbGV0IGRlcml2YXRpb25DaGFpbiA9IGJpdGdvLmdldEV4dGVybmFsQ2hhaW5Db2RlKCdwMnNoJyk7XG4gIGlmIChfLmlzTnVtYmVyKGNoYWluKSAmJiBfLmlzSW50ZWdlcihjaGFpbikgJiYgYml0Z28uaXNDaGFpbkNvZGUoY2hhaW4pKSB7XG4gICAgZGVyaXZhdGlvbkNoYWluID0gY2hhaW47XG4gIH1cblxuICBmdW5jdGlvbiBjb252ZXJ0RmxhZ3NUb0FkZHJlc3NUeXBlKCk6IFNjcmlwdFR5cGUyT2YzIHtcbiAgICBpZiAoYml0Z28uaXNDaGFpbkNvZGUoY2hhaW4pKSB7XG4gICAgICByZXR1cm4gYml0Z28uc2NyaXB0VHlwZUZvckNoYWluKGNoYWluKTtcbiAgICB9XG4gICAgaWYgKF8uaXNCb29sZWFuKHNlZ3dpdCkgJiYgc2Vnd2l0KSB7XG4gICAgICByZXR1cm4gJ3Ayc2hQMndzaCc7XG4gICAgfSBlbHNlIGlmIChfLmlzQm9vbGVhbihiZWNoMzIpICYmIGJlY2gzMikge1xuICAgICAgcmV0dXJuICdwMndzaCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAncDJzaCc7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgYWRkcmVzc1R5cGUgPSBwYXJhbXMuYWRkcmVzc1R5cGUgfHwgY29udmVydEZsYWdzVG9BZGRyZXNzVHlwZSgpO1xuXG4gIGlmIChhZGRyZXNzVHlwZSAhPT0gdXR4b2xpYi5iaXRnby5zY3JpcHRUeXBlRm9yQ2hhaW4oZGVyaXZhdGlvbkNoYWluKSkge1xuICAgIHRocm93IG5ldyBBZGRyZXNzVHlwZUNoYWluTWlzbWF0Y2hFcnJvcihhZGRyZXNzVHlwZSwgZGVyaXZhdGlvbkNoYWluKTtcbiAgfVxuXG4gIGlmICghc3VwcG9ydHNBZGRyZXNzVHlwZShuZXR3b3JrLCBhZGRyZXNzVHlwZSkpIHtcbiAgICBzd2l0Y2ggKGFkZHJlc3NUeXBlKSB7XG4gICAgICBjYXNlICdwMnNoJzpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnRlcm5hbCBlcnJvcjogcDJzaCBzaG91bGQgYWx3YXlzIGJlIHN1cHBvcnRlZGApO1xuICAgICAgY2FzZSAncDJzaFAyd3NoJzpcbiAgICAgICAgdGhyb3cgbmV3IFAyc2hQMndzaFVuc3VwcG9ydGVkRXJyb3IoKTtcbiAgICAgIGNhc2UgJ3Ayd3NoJzpcbiAgICAgICAgdGhyb3cgbmV3IFAyd3NoVW5zdXBwb3J0ZWRFcnJvcigpO1xuICAgICAgY2FzZSAncDJ0cic6XG4gICAgICAgIHRocm93IG5ldyBQMnRyVW5zdXBwb3J0ZWRFcnJvcigpO1xuICAgICAgY2FzZSAncDJ0ck11c2lnMic6XG4gICAgICAgIHRocm93IG5ldyBQMnRyTXVzaWcyVW5zdXBwb3J0ZWRFcnJvcigpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IFVuc3VwcG9ydGVkQWRkcmVzc1R5cGVFcnJvcigpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBnZW5lcmF0ZUFkZHJlc3NXaXRoQ2hhaW5BbmRJbmRleChuZXR3b3JrLCBrZXljaGFpbnMsIGRlcml2YXRpb25DaGFpbiwgZGVyaXZhdGlvbkluZGV4LCBwYXJhbXMuZm9ybWF0KTtcbn1cblxudHlwZSBLZXljaGFpbiA9IHtcbiAgcHViOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0Rml4ZWRTY3JpcHRXYWxsZXRBZGRyZXNzKFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmssXG4gIHtcbiAgICBjaGFpbixcbiAgICBpbmRleCxcbiAgICBrZXljaGFpbnMsXG4gICAgZm9ybWF0LFxuICAgIGFkZHJlc3NUeXBlLFxuICAgIGFkZHJlc3MsXG4gIH06IHtcbiAgICBjaGFpbjogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIGluZGV4OiBudW1iZXI7XG4gICAga2V5Y2hhaW5zOiBLZXljaGFpbltdO1xuICAgIGZvcm1hdDogQ3JlYXRlQWRkcmVzc0Zvcm1hdDtcbiAgICBhZGRyZXNzVHlwZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIGFkZHJlc3M6IHN0cmluZztcbiAgfVxuKTogdm9pZCB7XG4gIGlmICgoXy5pc1VuZGVmaW5lZChjaGFpbikgJiYgXy5pc1VuZGVmaW5lZChpbmRleCkpIHx8ICEoXy5pc0Zpbml0ZShjaGFpbikgJiYgXy5pc0Zpbml0ZShpbmRleCkpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRGVyaXZhdGlvblByb3BlcnR5RXJyb3IoXG4gICAgICBgYWRkcmVzcyB2YWxpZGF0aW9uIGZhaWx1cmU6IGludmFsaWQgY2hhaW4gKCR7Y2hhaW59KSBvciBpbmRleCAoJHtpbmRleH0pYFxuICAgICk7XG4gIH1cblxuICBpZiAoIWtleWNoYWlucykge1xuICAgIHRocm93IG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCBwYXJhbSBrZXljaGFpbnMnKTtcbiAgfVxuXG4gIGNvbnN0IGV4cGVjdGVkQWRkcmVzcyA9IGdlbmVyYXRlQWRkcmVzcyhuZXR3b3JrLCB7XG4gICAgZm9ybWF0LFxuICAgIGFkZHJlc3NUeXBlOiBhZGRyZXNzVHlwZSBhcyBTY3JpcHRUeXBlMk9mMyxcbiAgICBrZXljaGFpbnMsXG4gICAgY2hhaW4sXG4gICAgaW5kZXgsXG4gIH0pO1xuXG4gIGlmIChleHBlY3RlZEFkZHJlc3MgIT09IGFkZHJlc3MpIHtcbiAgICB0aHJvdyBuZXcgVW5leHBlY3RlZEFkZHJlc3NFcnJvcihgYWRkcmVzcyB2YWxpZGF0aW9uIGZhaWx1cmU6IGV4cGVjdGVkICR7ZXhwZWN0ZWRBZGRyZXNzfSBidXQgZ290ICR7YWRkcmVzc31gKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export { generateAddress, generateAddressWithChainAndIndex, assertFixedScriptWalletAddress, FixedScriptAddressCoinSpecific, } from './fixedScript';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/address/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,gCAAgC,EAChC,8BAA8B,EAC9B,8BAA8B,GAC/B,MAAM,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assertFixedScriptWalletAddress = exports.generateAddressWithChainAndIndex = exports.generateAddress = void 0;
4
+ var fixedScript_1 = require("./fixedScript");
5
+ Object.defineProperty(exports, "generateAddress", { enumerable: true, get: function () { return fixedScript_1.generateAddress; } });
6
+ Object.defineProperty(exports, "generateAddressWithChainAndIndex", { enumerable: true, get: function () { return fixedScript_1.generateAddressWithChainAndIndex; } });
7
+ Object.defineProperty(exports, "assertFixedScriptWalletAddress", { enumerable: true, get: function () { return fixedScript_1.assertFixedScriptWalletAddress; } });
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRkcmVzcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FLdUI7QUFKckIsOEdBQUEsZUFBZSxPQUFBO0FBQ2YsK0hBQUEsZ0NBQWdDLE9BQUE7QUFDaEMsNkhBQUEsOEJBQThCLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBnZW5lcmF0ZUFkZHJlc3MsXG4gIGdlbmVyYXRlQWRkcmVzc1dpdGhDaGFpbkFuZEluZGV4LFxuICBhc3NlcnRGaXhlZFNjcmlwdFdhbGxldEFkZHJlc3MsXG4gIEZpeGVkU2NyaXB0QWRkcmVzc0NvaW5TcGVjaWZpYyxcbn0gZnJvbSAnLi9maXhlZFNjcmlwdCc7XG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { BitGoBase } from '@bitgo/sdk-core';
2
+ import { AbstractUtxoCoin, UtxoNetwork } from '../../abstractUtxoCoin';
3
+ export declare class Bch extends AbstractUtxoCoin {
4
+ protected constructor(bitgo: BitGoBase, network?: UtxoNetwork);
5
+ static createInstance(bitgo: BitGoBase): Bch;
6
+ /**
7
+ * Canonicalize a Bitcoin Cash address for a specific version
8
+ *
9
+ * Starting on January 14th, 2018 Bitcoin Cash's bitcoin-abc node switched over to using cashaddr
10
+ * encoding for all of their addresses in order to distinguish them from Bitcoin Core's.
11
+ * https://www.bitcoinabc.org/cashaddr. We're sticking with the old base58 format because
12
+ * migrating over to the new format will be laborious, and we want to see how the space evolves
13
+ *
14
+ * @param address may or may not be prefixed with the network, example bitcoincash:pppkt7q2axpsm2cajyjtu6x8fsh6ywauzgxmsru962 or pppkt7q2axpsm2cajyjtu6x8fsh6ywauzgxmsru962
15
+ * @param version the version of the desired address, 'base58' or 'cashaddr', defaulting to 'base58'
16
+ * @returns {*} address string
17
+ */
18
+ canonicalAddress(address: string, version?: unknown): string;
19
+ }
20
+ //# sourceMappingURL=bch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bch.d.ts","sourceRoot":"","sources":["../../../../src/impl/bch/bch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAEvE,qBAAa,GAAI,SAAQ,gBAAgB;IACvC,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW;IAI7D,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG;IAI5C;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAkB,GAAG,MAAM;CAYvE"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Bch = void 0;
37
+ const utxolib = __importStar(require("@bitgo/utxo-lib"));
38
+ const abstractUtxoCoin_1 = require("../../abstractUtxoCoin");
39
+ class Bch extends abstractUtxoCoin_1.AbstractUtxoCoin {
40
+ constructor(bitgo, network) {
41
+ super(bitgo, network || utxolib.networks.bitcoincash);
42
+ }
43
+ static createInstance(bitgo) {
44
+ return new Bch(bitgo);
45
+ }
46
+ /**
47
+ * Canonicalize a Bitcoin Cash address for a specific version
48
+ *
49
+ * Starting on January 14th, 2018 Bitcoin Cash's bitcoin-abc node switched over to using cashaddr
50
+ * encoding for all of their addresses in order to distinguish them from Bitcoin Core's.
51
+ * https://www.bitcoinabc.org/cashaddr. We're sticking with the old base58 format because
52
+ * migrating over to the new format will be laborious, and we want to see how the space evolves
53
+ *
54
+ * @param address may or may not be prefixed with the network, example bitcoincash:pppkt7q2axpsm2cajyjtu6x8fsh6ywauzgxmsru962 or pppkt7q2axpsm2cajyjtu6x8fsh6ywauzgxmsru962
55
+ * @param version the version of the desired address, 'base58' or 'cashaddr', defaulting to 'base58'
56
+ * @returns {*} address string
57
+ */
58
+ canonicalAddress(address, version = 'base58') {
59
+ if (version === 'base58') {
60
+ return utxolib.addressFormat.toCanonicalFormat(address, this.network);
61
+ }
62
+ if (version === 'cashaddr') {
63
+ const script = utxolib.addressFormat.toOutputScriptTryFormats(address, this.network);
64
+ return utxolib.addressFormat.fromOutputScriptWithFormat(script, version, this.network);
65
+ }
66
+ throw new Error(`invalid version ${version}`);
67
+ }
68
+ }
69
+ exports.Bch = Bch;
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGwvYmNoL2JjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx5REFBMkM7QUFFM0MsNkRBQXVFO0FBRXZFLE1BQWEsR0FBSSxTQUFRLG1DQUFnQjtJQUN2QyxZQUFzQixLQUFnQixFQUFFLE9BQXFCO1FBQzNELEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxnQkFBZ0IsQ0FBQyxPQUFlLEVBQUUsVUFBbUIsUUFBUTtRQUMzRCxJQUFJLE9BQU8sS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN6QixPQUFPLE9BQU8sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBRUQsSUFBSSxPQUFPLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDM0IsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JGLE9BQU8sT0FBTyxDQUFDLGFBQWEsQ0FBQywwQkFBMEIsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6RixDQUFDO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0Y7QUFqQ0Qsa0JBaUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuaW1wb3J0IHsgQWJzdHJhY3RVdHhvQ29pbiwgVXR4b05ldHdvcmsgfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcblxuZXhwb3J0IGNsYXNzIEJjaCBleHRlbmRzIEFic3RyYWN0VXR4b0NvaW4ge1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgbmV0d29yaz86IFV0eG9OZXR3b3JrKSB7XG4gICAgc3VwZXIoYml0Z28sIG5ldHdvcmsgfHwgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luY2FzaCk7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlSW5zdGFuY2UoYml0Z286IEJpdEdvQmFzZSk6IEJjaCB7XG4gICAgcmV0dXJuIG5ldyBCY2goYml0Z28pO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbm9uaWNhbGl6ZSBhIEJpdGNvaW4gQ2FzaCBhZGRyZXNzIGZvciBhIHNwZWNpZmljIHZlcnNpb25cbiAgICpcbiAgICogU3RhcnRpbmcgb24gSmFudWFyeSAxNHRoLCAyMDE4IEJpdGNvaW4gQ2FzaCdzIGJpdGNvaW4tYWJjIG5vZGUgc3dpdGNoZWQgb3ZlciB0byB1c2luZyBjYXNoYWRkclxuICAgKiBlbmNvZGluZyBmb3IgYWxsIG9mIHRoZWlyIGFkZHJlc3NlcyBpbiBvcmRlciB0byBkaXN0aW5ndWlzaCB0aGVtIGZyb20gQml0Y29pbiBDb3JlJ3MuXG4gICAqIGh0dHBzOi8vd3d3LmJpdGNvaW5hYmMub3JnL2Nhc2hhZGRyLiBXZSdyZSBzdGlja2luZyB3aXRoIHRoZSBvbGQgYmFzZTU4IGZvcm1hdCBiZWNhdXNlXG4gICAqIG1pZ3JhdGluZyBvdmVyIHRvIHRoZSBuZXcgZm9ybWF0IHdpbGwgYmUgbGFib3Jpb3VzLCBhbmQgd2Ugd2FudCB0byBzZWUgaG93IHRoZSBzcGFjZSBldm9sdmVzXG4gICAqXG4gICAqIEBwYXJhbSBhZGRyZXNzIG1heSBvciBtYXkgbm90IGJlIHByZWZpeGVkIHdpdGggdGhlIG5ldHdvcmssIGV4YW1wbGUgYml0Y29pbmNhc2g6cHBwa3Q3cTJheHBzbTJjYWp5anR1Nng4ZnNoNnl3YXV6Z3htc3J1OTYyIG9yIHBwcGt0N3EyYXhwc20yY2FqeWp0dTZ4OGZzaDZ5d2F1emd4bXNydTk2MlxuICAgKiBAcGFyYW0gdmVyc2lvbiB0aGUgdmVyc2lvbiBvZiB0aGUgZGVzaXJlZCBhZGRyZXNzLCAnYmFzZTU4JyBvciAnY2FzaGFkZHInLCBkZWZhdWx0aW5nIHRvICdiYXNlNTgnXG4gICAqIEByZXR1cm5zIHsqfSBhZGRyZXNzIHN0cmluZ1xuICAgKi9cbiAgY2Fub25pY2FsQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcsIHZlcnNpb246IHVua25vd24gPSAnYmFzZTU4Jyk6IHN0cmluZyB7XG4gICAgaWYgKHZlcnNpb24gPT09ICdiYXNlNTgnKSB7XG4gICAgICByZXR1cm4gdXR4b2xpYi5hZGRyZXNzRm9ybWF0LnRvQ2Fub25pY2FsRm9ybWF0KGFkZHJlc3MsIHRoaXMubmV0d29yayk7XG4gICAgfVxuXG4gICAgaWYgKHZlcnNpb24gPT09ICdjYXNoYWRkcicpIHtcbiAgICAgIGNvbnN0IHNjcmlwdCA9IHV0eG9saWIuYWRkcmVzc0Zvcm1hdC50b091dHB1dFNjcmlwdFRyeUZvcm1hdHMoYWRkcmVzcywgdGhpcy5uZXR3b3JrKTtcbiAgICAgIHJldHVybiB1dHhvbGliLmFkZHJlc3NGb3JtYXQuZnJvbU91dHB1dFNjcmlwdFdpdGhGb3JtYXQoc2NyaXB0LCB2ZXJzaW9uLCB0aGlzLm5ldHdvcmspO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCB2ZXJzaW9uICR7dmVyc2lvbn1gKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './bch';
2
+ export * from './tbch';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/bch/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./bch"), exports);
18
+ __exportStar(require("./tbch"), exports);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9iY2gvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qix5Q0FBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JjaCc7XG5leHBvcnQgKiBmcm9tICcuL3RiY2gnO1xuIl19
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo/sdk-core';
5
+ import { Bch } from './bch';
6
+ export declare class Tbch extends Bch {
7
+ constructor(bitgo: BitGoBase);
8
+ static createInstance(bitgo: BitGoBase): Tbch;
9
+ }
10
+ //# sourceMappingURL=tbch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbch.d.ts","sourceRoot":"","sources":["../../../../src/impl/bch/tbch.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,qBAAa,IAAK,SAAQ,GAAG;gBACf,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAG9C"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Tbch = void 0;
37
+ const bitcoin = __importStar(require("@bitgo/utxo-lib"));
38
+ const bch_1 = require("./bch");
39
+ class Tbch extends bch_1.Bch {
40
+ constructor(bitgo) {
41
+ super(bitgo, bitcoin.networks.bitcoincashTestnet);
42
+ }
43
+ static createInstance(bitgo) {
44
+ return new Tbch(bitgo);
45
+ }
46
+ }
47
+ exports.Tbch = Tbch;
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL2JjaC90YmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlBLHlEQUEyQztBQUUzQywrQkFBNEI7QUFFNUIsTUFBYSxJQUFLLFNBQVEsU0FBRztJQUMzQixZQUFZLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCO1FBQ3BDLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBUkQsb0JBUUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgYml0Y29pbiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuXG5pbXBvcnQgeyBCY2ggfSBmcm9tICcuL2JjaCc7XG5cbmV4cG9ydCBjbGFzcyBUYmNoIGV4dGVuZHMgQmNoIHtcbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSkge1xuICAgIHN1cGVyKGJpdGdvLCBiaXRjb2luLm5ldHdvcmtzLmJpdGNvaW5jYXNoVGVzdG5ldCk7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlSW5zdGFuY2UoYml0Z286IEJpdEdvQmFzZSk6IFRiY2gge1xuICAgIHJldHVybiBuZXcgVGJjaChiaXRnbyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ import { BitGoBase } from '@bitgo/sdk-core';
2
+ import { Bch } from '../bch/bch';
3
+ import { UtxoNetwork } from '../../abstractUtxoCoin';
4
+ export declare class Bcha extends Bch {
5
+ constructor(bitgo: BitGoBase, network?: UtxoNetwork);
6
+ static createInstance(bitgo: BitGoBase): Bcha;
7
+ canonicalAddress(address: string, version?: unknown): string;
8
+ }
9
+ //# sourceMappingURL=bcha.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bcha.d.ts","sourceRoot":"","sources":["../../../../src/impl/bcha/bcha.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,qBAAa,IAAK,SAAQ,GAAG;gBACf,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW;IAInD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAI7C,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAkB,GAAG,MAAM;CAYvE"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Bcha = void 0;
37
+ const utxolib = __importStar(require("@bitgo/utxo-lib"));
38
+ const bch_1 = require("../bch/bch");
39
+ class Bcha extends bch_1.Bch {
40
+ constructor(bitgo, network) {
41
+ super(bitgo, network || utxolib.networks.ecash);
42
+ }
43
+ static createInstance(bitgo) {
44
+ return new Bcha(bitgo);
45
+ }
46
+ canonicalAddress(address, version = 'base58') {
47
+ if (version === 'base58') {
48
+ return utxolib.addressFormat.toCanonicalFormat(address, this.network);
49
+ }
50
+ if (version === 'cashaddr') {
51
+ const script = utxolib.addressFormat.toOutputScriptTryFormats(address, this.network);
52
+ return utxolib.addressFormat.fromOutputScriptWithFormat(script, version, this.network);
53
+ }
54
+ throw new Error(`invalid version ${version}`);
55
+ }
56
+ }
57
+ exports.Bcha = Bcha;
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmNoYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL2JjaGEvYmNoYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx5REFBMkM7QUFFM0Msb0NBQWlDO0FBR2pDLE1BQWEsSUFBSyxTQUFRLFNBQUc7SUFDM0IsWUFBWSxLQUFnQixFQUFFLE9BQXFCO1FBQ2pELEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBZSxFQUFFLFVBQW1CLFFBQVE7UUFDM0QsSUFBSSxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDekIsT0FBTyxPQUFPLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEUsQ0FBQztRQUVELElBQUksT0FBTyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQzNCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyRixPQUFPLE9BQU8sQ0FBQyxhQUFhLENBQUMsMEJBQTBCLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekYsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztDQUNGO0FBckJELG9CQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5cbmltcG9ydCB7IEJjaCB9IGZyb20gJy4uL2JjaC9iY2gnO1xuaW1wb3J0IHsgVXR4b05ldHdvcmsgfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcblxuZXhwb3J0IGNsYXNzIEJjaGEgZXh0ZW5kcyBCY2gge1xuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBuZXR3b3JrPzogVXR4b05ldHdvcmspIHtcbiAgICBzdXBlcihiaXRnbywgbmV0d29yayB8fCB1dHhvbGliLm5ldHdvcmtzLmVjYXNoKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlKTogQmNoYSB7XG4gICAgcmV0dXJuIG5ldyBCY2hhKGJpdGdvKTtcbiAgfVxuXG4gIGNhbm9uaWNhbEFkZHJlc3MoYWRkcmVzczogc3RyaW5nLCB2ZXJzaW9uOiB1bmtub3duID0gJ2Jhc2U1OCcpOiBzdHJpbmcge1xuICAgIGlmICh2ZXJzaW9uID09PSAnYmFzZTU4Jykge1xuICAgICAgcmV0dXJuIHV0eG9saWIuYWRkcmVzc0Zvcm1hdC50b0Nhbm9uaWNhbEZvcm1hdChhZGRyZXNzLCB0aGlzLm5ldHdvcmspO1xuICAgIH1cblxuICAgIGlmICh2ZXJzaW9uID09PSAnY2FzaGFkZHInKSB7XG4gICAgICBjb25zdCBzY3JpcHQgPSB1dHhvbGliLmFkZHJlc3NGb3JtYXQudG9PdXRwdXRTY3JpcHRUcnlGb3JtYXRzKGFkZHJlc3MsIHRoaXMubmV0d29yayk7XG4gICAgICByZXR1cm4gdXR4b2xpYi5hZGRyZXNzRm9ybWF0LmZyb21PdXRwdXRTY3JpcHRXaXRoRm9ybWF0KHNjcmlwdCwgdmVyc2lvbiwgdGhpcy5uZXR3b3JrKTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgdmVyc2lvbiAke3ZlcnNpb259YCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './bcha';
2
+ export * from './tbcha';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/bcha/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./bcha"), exports);
18
+ __exportStar(require("./tbcha"), exports);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9iY2hhL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5Q0FBdUI7QUFDdkIsMENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iY2hhJztcbmV4cG9ydCAqIGZyb20gJy4vdGJjaGEnO1xuIl19
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo/sdk-core';
5
+ import { Bcha } from './bcha';
6
+ export declare class Tbcha extends Bcha {
7
+ constructor(bitgo: BitGoBase);
8
+ static createInstance(bitgo: BitGoBase): Tbcha;
9
+ }
10
+ //# sourceMappingURL=tbcha.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbcha.d.ts","sourceRoot":"","sources":["../../../../src/impl/bcha/tbcha.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,KAAM,SAAQ,IAAI;gBACjB,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK;CAG/C"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Tbcha = void 0;
37
+ const utxolib = __importStar(require("@bitgo/utxo-lib"));
38
+ const bcha_1 = require("./bcha");
39
+ class Tbcha extends bcha_1.Bcha {
40
+ constructor(bitgo) {
41
+ super(bitgo, utxolib.networks.ecashTest);
42
+ }
43
+ static createInstance(bitgo) {
44
+ return new Tbcha(bitgo);
45
+ }
46
+ }
47
+ exports.Tbcha = Tbcha;
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJjaGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9iY2hhL3RiY2hhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlBLHlEQUEyQztBQUUzQyxpQ0FBOEI7QUFFOUIsTUFBYSxLQUFNLFNBQVEsV0FBSTtJQUM3QixZQUFZLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFnQjtRQUNwQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7Q0FDRjtBQVJELHNCQVFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuaW1wb3J0IHsgQmNoYSB9IGZyb20gJy4vYmNoYSc7XG5cbmV4cG9ydCBjbGFzcyBUYmNoYSBleHRlbmRzIEJjaGEge1xuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlKSB7XG4gICAgc3VwZXIoYml0Z28sIHV0eG9saWIubmV0d29ya3MuZWNhc2hUZXN0KTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlKTogVGJjaGEge1xuICAgIHJldHVybiBuZXcgVGJjaGEoYml0Z28pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import { BitGoBase } from '@bitgo/sdk-core';
2
+ import { UtxoNetwork } from '../../abstractUtxoCoin';
3
+ import { Bch } from '../bch/bch';
4
+ export declare class Bsv extends Bch {
5
+ constructor(bitgo: BitGoBase, network?: UtxoNetwork);
6
+ static createInstance(bitgo: BitGoBase): Bsv;
7
+ }
8
+ //# sourceMappingURL=bsv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bsv.d.ts","sourceRoot":"","sources":["../../../../src/impl/bsv/bsv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,qBAAa,GAAI,SAAQ,GAAG;gBACd,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW;IAInD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG;CAG7C"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
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);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Bsv = void 0;
37
+ const utxolib = __importStar(require("@bitgo/utxo-lib"));
38
+ const bch_1 = require("../bch/bch");
39
+ class Bsv extends bch_1.Bch {
40
+ constructor(bitgo, network) {
41
+ super(bitgo, network || utxolib.networks.bitcoinsv);
42
+ }
43
+ static createInstance(bitgo) {
44
+ return new Bsv(bitgo);
45
+ }
46
+ }
47
+ exports.Bsv = Bsv;
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnN2LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnN2L2Jzdi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx5REFBMkM7QUFHM0Msb0NBQWlDO0FBRWpDLE1BQWEsR0FBSSxTQUFRLFNBQUc7SUFDMUIsWUFBWSxLQUFnQixFQUFFLE9BQXFCO1FBQ2pELEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0Y7QUFSRCxrQkFRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5cbmltcG9ydCB7IFV0eG9OZXR3b3JrIH0gZnJvbSAnLi4vLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBCY2ggfSBmcm9tICcuLi9iY2gvYmNoJztcblxuZXhwb3J0IGNsYXNzIEJzdiBleHRlbmRzIEJjaCB7XG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIG5ldHdvcms/OiBVdHhvTmV0d29yaykge1xuICAgIHN1cGVyKGJpdGdvLCBuZXR3b3JrIHx8IHV0eG9saWIubmV0d29ya3MuYml0Y29pbnN2KTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlKTogQnN2IHtcbiAgICByZXR1cm4gbmV3IEJzdihiaXRnbyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './bsv';
2
+ export * from './tbsv';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/bsv/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}