@ledgerhq/live-common 21.32.0 → 21.32.4

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 (183) hide show
  1. package/lib/__tests__/families/bitcoin/wallet-btc/wallet.integration.test.js +1 -0
  2. package/lib/__tests__/families/bitcoin/wallet-btc/wallet.integration.test.js.map +1 -1
  3. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts +2 -0
  4. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts.map +1 -0
  5. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js +126 -0
  6. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js.map +1 -0
  7. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.js +0 -10
  8. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.js.map +1 -1
  9. package/lib/api/Ethereum.d.ts.map +1 -1
  10. package/lib/api/Ethereum.js +1 -0
  11. package/lib/api/Ethereum.js.map +1 -1
  12. package/lib/apps/logic.d.ts.map +1 -1
  13. package/lib/apps/logic.js +7 -5
  14. package/lib/apps/logic.js.map +1 -1
  15. package/lib/apps/polyfill.d.ts.map +1 -1
  16. package/lib/apps/polyfill.js +1 -0
  17. package/lib/apps/polyfill.js.map +1 -1
  18. package/lib/bot/engine.d.ts.map +1 -1
  19. package/lib/bot/engine.js +3 -0
  20. package/lib/bot/engine.js.map +1 -1
  21. package/lib/env.d.ts +10 -5
  22. package/lib/env.d.ts.map +1 -1
  23. package/lib/env.js +5 -0
  24. package/lib/env.js.map +1 -1
  25. package/lib/env.react.d.ts +1 -1
  26. package/lib/env.react.d.ts.map +1 -1
  27. package/lib/errors.d.ts +3 -0
  28. package/lib/errors.d.ts.map +1 -1
  29. package/lib/errors.js +3 -2
  30. package/lib/errors.js.map +1 -1
  31. package/lib/exchange/platform/transfer/index.d.ts.map +1 -1
  32. package/lib/exchange/platform/transfer/index.js +15 -1
  33. package/lib/exchange/platform/transfer/index.js.map +1 -1
  34. package/lib/families/algorand/buildTransaction.d.ts +2 -2
  35. package/lib/families/algorand/buildTransaction.d.ts.map +1 -1
  36. package/lib/families/algorand/buildTransaction.js +13 -19
  37. package/lib/families/algorand/buildTransaction.js.map +1 -1
  38. package/lib/families/algorand/js-getFeesForTransaction.js +4 -6
  39. package/lib/families/algorand/js-getFeesForTransaction.js.map +1 -1
  40. package/lib/families/algorand/js-signOperation.js +3 -7
  41. package/lib/families/algorand/js-signOperation.js.map +1 -1
  42. package/lib/families/algorand/js-synchronization.d.ts.map +1 -1
  43. package/lib/families/algorand/js-synchronization.js +1 -0
  44. package/lib/families/algorand/js-synchronization.js.map +1 -1
  45. package/lib/families/bitcoin/js-signOperation.d.ts.map +1 -1
  46. package/lib/families/bitcoin/js-signOperation.js +3 -5
  47. package/lib/families/bitcoin/js-signOperation.js.map +1 -1
  48. package/lib/families/bitcoin/js-synchronisation.js +4 -4
  49. package/lib/families/bitcoin/js-synchronisation.js.map +1 -1
  50. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts +4 -3
  51. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
  52. package/lib/families/bitcoin/wallet-btc/crypto/base.js +8 -7
  53. package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
  54. package/lib/families/bitcoin/wallet-btc/crypto/bip32.js +2 -2
  55. package/lib/families/bitcoin/wallet-btc/crypto/bip32.js.map +1 -1
  56. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts +1 -1
  57. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts.map +1 -1
  58. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js +3 -7
  59. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js.map +1 -1
  60. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts +3 -4
  61. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
  62. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +27 -53
  63. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
  64. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts +1 -1
  65. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
  66. package/lib/families/bitcoin/wallet-btc/crypto/decred.js +2 -7
  67. package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
  68. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts +1 -6
  69. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
  70. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +0 -51
  71. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
  72. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts +1 -0
  73. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts.map +1 -1
  74. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts +5 -6
  75. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
  76. package/lib/families/bitcoin/wallet-btc/crypto/zec.js +63 -33
  77. package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
  78. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts +3 -5
  79. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
  80. package/lib/families/bitcoin/wallet-btc/crypto/zen.js +77 -46
  81. package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
  82. package/lib/families/bitcoin/wallet-btc/explorer/index.d.ts.map +1 -1
  83. package/lib/families/bitcoin/wallet-btc/explorer/index.js +20 -0
  84. package/lib/families/bitcoin/wallet-btc/explorer/index.js.map +1 -1
  85. package/lib/families/bitcoin/wallet-btc/storage/types.d.ts +0 -1
  86. package/lib/families/bitcoin/wallet-btc/storage/types.d.ts.map +1 -1
  87. package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -1
  88. package/lib/families/celo/speculos-deviceActions.js +1 -2
  89. package/lib/families/celo/speculos-deviceActions.js.map +1 -1
  90. package/lib/families/ethereum/signOperation.d.ts.map +1 -1
  91. package/lib/families/ethereum/signOperation.js +26 -15
  92. package/lib/families/ethereum/signOperation.js.map +1 -1
  93. package/lib/families/ethereum/specs.d.ts.map +1 -1
  94. package/lib/families/ethereum/specs.js +2 -4
  95. package/lib/families/ethereum/specs.js.map +1 -1
  96. package/lib/families/ethereum/transaction.d.ts +4 -1
  97. package/lib/families/ethereum/transaction.d.ts.map +1 -1
  98. package/lib/families/ethereum/transaction.js +15 -27
  99. package/lib/families/ethereum/transaction.js.map +1 -1
  100. package/lib/families/solana/api/chain/instruction/token/types.d.ts +1 -1
  101. package/lib/families/solana/specs.js +1 -1
  102. package/lib/families/solana/specs.js.map +1 -1
  103. package/lib/families/solana/test-dataset.d.ts.map +1 -1
  104. package/lib/families/solana/test-dataset.js +1 -2
  105. package/lib/families/solana/test-dataset.js.map +1 -1
  106. package/lib/families/tezos/bakers.whitelist-default.d.ts.map +1 -1
  107. package/lib/families/tezos/bakers.whitelist-default.js +1 -1
  108. package/lib/families/tezos/bakers.whitelist-default.js.map +1 -1
  109. package/lib/families/tezos/bridge/js.d.ts.map +1 -1
  110. package/lib/families/tezos/bridge/js.js +2 -1
  111. package/lib/families/tezos/bridge/js.js.map +1 -1
  112. package/lib/families/tezos/synchronisation.d.ts.map +1 -1
  113. package/lib/families/tezos/synchronisation.js +2 -0
  114. package/lib/families/tezos/synchronisation.js.map +1 -1
  115. package/lib/families/tezos/test-specifics.d.ts.map +1 -1
  116. package/lib/families/tezos/test-specifics.js +1 -0
  117. package/lib/families/tezos/test-specifics.js.map +1 -1
  118. package/lib/families/tron/synchronisation.test.js +1 -0
  119. package/lib/families/tron/synchronisation.test.js.map +1 -1
  120. package/lib/featureFlags/FeatureToggle.js +2 -2
  121. package/lib/featureFlags/FeatureToggle.js.map +1 -1
  122. package/lib/featureFlags/defaultFeatures.js +1 -1
  123. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  124. package/lib/featureFlags/types.d.ts +1 -1
  125. package/lib/featureFlags/types.d.ts.map +1 -1
  126. package/lib/load/speculos.d.ts +7 -0
  127. package/lib/load/speculos.d.ts.map +1 -1
  128. package/lib/load/speculos.js +27 -11
  129. package/lib/load/speculos.js.map +1 -1
  130. package/lib/platform/PlatformAppProvider/helpers.d.ts +1 -0
  131. package/lib/platform/PlatformAppProvider/helpers.d.ts.map +1 -1
  132. package/lib/platform/PlatformAppProvider/helpers.js +23 -1
  133. package/lib/platform/PlatformAppProvider/helpers.js.map +1 -1
  134. package/lib/platform/PlatformAppProvider/index.d.ts.map +1 -1
  135. package/lib/platform/PlatformAppProvider/index.js +2 -1
  136. package/lib/platform/PlatformAppProvider/index.js.map +1 -1
  137. package/package.json +21 -21
  138. package/src/__tests__/__snapshots__/all.libcore.ts.snap +109 -23
  139. package/src/__tests__/families/bitcoin/wallet-btc/wallet.integration.test.ts +2 -0
  140. package/src/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.ts +78 -0
  141. package/src/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.ts +0 -11
  142. package/src/api/Ethereum.ts +1 -0
  143. package/src/apps/logic.ts +6 -3
  144. package/src/apps/polyfill.ts +1 -0
  145. package/src/bot/engine.ts +3 -0
  146. package/src/env.ts +5 -0
  147. package/src/errors.ts +3 -0
  148. package/src/exchange/platform/transfer/index.ts +21 -1
  149. package/src/families/algorand/buildTransaction.ts +4 -8
  150. package/src/families/algorand/js-getFeesForTransaction.ts +1 -1
  151. package/src/families/algorand/js-signOperation.ts +2 -2
  152. package/src/families/algorand/js-synchronization.ts +1 -0
  153. package/src/families/bitcoin/js-signOperation.ts +3 -5
  154. package/src/families/bitcoin/js-synchronisation.ts +4 -4
  155. package/src/families/bitcoin/wallet-btc/crypto/base.ts +31 -18
  156. package/src/families/bitcoin/wallet-btc/crypto/bip32.ts +2 -2
  157. package/src/families/bitcoin/wallet-btc/crypto/bitcoin.ts +3 -17
  158. package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +5 -39
  159. package/src/families/bitcoin/wallet-btc/crypto/decred.ts +2 -15
  160. package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +1 -71
  161. package/src/families/bitcoin/wallet-btc/crypto/types.ts +7 -0
  162. package/src/families/bitcoin/wallet-btc/crypto/zec.ts +23 -41
  163. package/src/families/bitcoin/wallet-btc/crypto/zen.ts +30 -49
  164. package/src/families/bitcoin/wallet-btc/explorer/index.ts +20 -0
  165. package/src/families/bitcoin/wallet-btc/storage/types.ts +0 -1
  166. package/src/families/celo/speculos-deviceActions.ts +0 -1
  167. package/src/families/ethereum/signOperation.ts +21 -20
  168. package/src/families/ethereum/specs.ts +0 -2
  169. package/src/families/ethereum/transaction.ts +10 -24
  170. package/src/families/solana/specs.ts +1 -1
  171. package/src/families/solana/test-dataset.ts +3 -4
  172. package/src/families/tezos/bakers.whitelist-default.ts +0 -2
  173. package/src/families/tezos/bridge/js.ts +6 -1
  174. package/src/families/tezos/synchronisation.ts +2 -0
  175. package/src/families/tezos/test-specifics.ts +1 -0
  176. package/src/families/tron/synchronisation.test.ts +2 -0
  177. package/src/featureFlags/FeatureToggle.tsx +2 -2
  178. package/src/featureFlags/defaultFeatures.ts +1 -1
  179. package/src/featureFlags/types.ts +1 -1
  180. package/src/load/speculos.ts +23 -10
  181. package/src/platform/PlatformAppProvider/helpers.ts +29 -0
  182. package/src/platform/PlatformAppProvider/index.tsx +3 -2
  183. package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +0 -6195
@@ -1 +1 @@
1
- {"version":3,"file":"decred.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decred.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,10 @@
1
1
  import { DerivationModes } from "../types";
2
- import { ICrypto } from "./types";
3
2
  import Base from "./base";
4
- declare class Litecoin extends Base implements ICrypto {
3
+ declare class Litecoin extends Base {
5
4
  network: any;
6
5
  constructor({ network }: {
7
6
  network: any;
8
7
  });
9
- getLegacyAddress(xpub: string, account: number, index: number): string;
10
- getSegWitAddress(xpub: string, account: number, index: number): string;
11
- getNativeSegWitAddress(xpub: string, account: number, index: number): string;
12
- getAddress(derivationMode: DerivationModes, xpub: string, account: number, index: number): string;
13
8
  getDerivationMode(address: string): DerivationModes.LEGACY | DerivationModes.NATIVE_SEGWIT | DerivationModes.SEGWIT;
14
9
  toOutputScript(address: string): any;
15
10
  validateAddress(address: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"litecoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,cAAM,QAAS,SAAQ,IAAK,YAAW,OAAO;IAE5C,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAOzC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAStE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAatE,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAU5E,UAAU,CACR,cAAc,EAAE,eAAe,EAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IA+BT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAejC,cAAc,CAAC,OAAO,EAAE,MAAM;IAK9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAU1C;AAED,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"litecoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,cAAM,QAAS,SAAQ,IAAI;IAEzB,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAQzC,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAejC,cAAc,CAAC,OAAO,EAAE,MAAM;IAK9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAU1C;AAED,eAAe,QAAQ,CAAC"}
@@ -37,8 +37,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
38
  };
39
39
  exports.__esModule = true;
40
- var bjs = __importStar(require("bitcoinjs-lib"));
41
- var bip32 = __importStar(require("bip32"));
42
40
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
43
41
  // @ts-ignore
44
42
  var address_1 = require("bitcoinjs-lib/src/address");
@@ -57,55 +55,6 @@ var Litecoin = /** @class */ (function (_super) {
57
55
  _this.network.usesTimestampedTransaction = false;
58
56
  return _this;
59
57
  }
60
- Litecoin.prototype.getLegacyAddress = function (xpub, account, index) {
61
- var address = bjs.payments.p2pkh({
62
- pubkey: bip32.fromBase58(xpub, this.network).derive(account).derive(index)
63
- .publicKey,
64
- network: this.network
65
- }).address;
66
- return String(address);
67
- };
68
- Litecoin.prototype.getSegWitAddress = function (xpub, account, index) {
69
- var address = bjs.payments.p2sh({
70
- redeem: bjs.payments.p2wpkh({
71
- pubkey: bip32
72
- .fromBase58(xpub, this.network)
73
- .derive(account)
74
- .derive(index).publicKey,
75
- network: this.network
76
- })
77
- }).address;
78
- return String(address);
79
- };
80
- Litecoin.prototype.getNativeSegWitAddress = function (xpub, account, index) {
81
- var address = bjs.payments.p2wpkh({
82
- pubkey: bip32.fromBase58(xpub, this.network).derive(account).derive(index)
83
- .publicKey,
84
- network: this.network
85
- }).address;
86
- return String(address);
87
- };
88
- Litecoin.prototype.getAddress = function (derivationMode, xpub, account, index) {
89
- if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
90
- return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
91
- }
92
- var address;
93
- switch (derivationMode) {
94
- case types_1.DerivationModes.LEGACY:
95
- address = this.getLegacyAddress(xpub, account, index);
96
- break;
97
- case types_1.DerivationModes.SEGWIT:
98
- address = this.getSegWitAddress(xpub, account, index);
99
- break;
100
- case types_1.DerivationModes.NATIVE_SEGWIT:
101
- address = this.getNativeSegWitAddress(xpub, account, index);
102
- break;
103
- default:
104
- throw new Error("Should not be reachable");
105
- }
106
- base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
107
- return address;
108
- };
109
58
  // infer address type from its syntax
110
59
  Litecoin.prototype.getDerivationMode = function (address) {
111
60
  if (address.match("^(ltc1).*")) {
@@ -1 +1 @@
1
- {"version":3,"file":"litecoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"litecoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAA6D;AAC7D,aAAa;AACb,qDAA2D;AAC3D,6CAAiC;AACjC,kCAA2C;AAC3C,gDAA0B;AAE1B,2DAA2D;AAC3D;IAAuB,4BAAI;IAIzB,8DAA8D;IAC9D,kBAAY,EAA6B;YAA3B,OAAO,aAAA;QAArB,YACE,kBAAM,EAAE,OAAO,SAAA,EAAE,CAAC,SAInB;QAHC,KAAI,CAAC,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QACnC,KAAI,CAAC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;QAClC,KAAI,CAAC,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC;;IAClD,CAAC;IAED,qCAAqC;IACrC,oCAAiB,GAAjB,UAAkB,OAAe;QAC/B,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE;YAC9B,OAAO,uBAAe,CAAC,aAAa,CAAC;SACtC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YAC/B,OAAO,uBAAe,CAAC,MAAM,CAAC;SAC/B;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;YACjC,OAAO,uBAAe,CAAC,MAAM,CAAC;SAC/B;QACD,MAAM,IAAI,KAAK,CACb,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAAC,CACtE,CAAC;IACJ,CAAC;IAED,iCAAc,GAAd,UAAe,OAAe;QAC5B,OAAO,IAAA,wBAAc,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,kDAAkD;IAClD,kCAAe,GAAf,UAAgB,OAAe;QAC7B,iBAAiB;QACjB,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,EAAE;YACrC,IAAI,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;gBAChC,OAAO,IAAI,CAAC;aACb;SACF;QACD,eAAe;QACf,OAAO,iBAAM,eAAe,YAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IACH,eAAC;AAAD,CAAC,AA3CD,CAAuB,iBAAI,GA2C1B;AAED,qBAAe,QAAQ,CAAC"}
@@ -2,6 +2,7 @@
2
2
  export interface ICrypto {
3
3
  network: any;
4
4
  getAddress(derivationMode: string, xpub: string, account: number, index: number): string;
5
+ customGetAddress(derivationMode: string, xpub: string, account: number, index: number): string;
5
6
  getDerivationMode(address: string): string;
6
7
  toOutputScript(address: string): Buffer;
7
8
  validateAddress(address: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/types.ts"],"names":[],"mappings":";AAAA,MAAM,WAAW,OAAO;IAEtB,OAAO,EAAE,GAAG,CAAC;IACb,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC;IACV,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACxC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5C;AAED,oBAAY,QAAQ,GAChB,SAAS,GACT,cAAc,GACd,UAAU,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,cAAc,GACd,UAAU,GACV,UAAU,GACV,QAAQ,GACR,MAAM,GACN,SAAS,GACT,UAAU,GACV,UAAU,GACV,SAAS,GACT,UAAU,GACV,aAAa,GACb,QAAQ,GACR,iBAAiB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/types.ts"],"names":[],"mappings":";AAAA,MAAM,WAAW,OAAO;IAEtB,OAAO,EAAE,GAAG,CAAC;IACb,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC;IACV,gBAAgB,CACd,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC;IAEV,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACxC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5C;AAED,oBAAY,QAAQ,GAChB,SAAS,GACT,cAAc,GACd,UAAU,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,cAAc,GACd,UAAU,GACV,UAAU,GACV,QAAQ,GACR,MAAM,GACN,SAAS,GACT,UAAU,GACV,UAAU,GACV,SAAS,GACT,UAAU,GACV,aAAa,GACb,QAAQ,GACR,iBAAiB,CAAC"}
@@ -1,18 +1,17 @@
1
+ /// <reference types="node" />
1
2
  import { DerivationModes } from "../types";
2
- import { ICrypto } from "./types";
3
- declare class ZCash implements ICrypto {
3
+ import Base from "./base";
4
+ declare class ZCash extends Base {
4
5
  network: any;
5
6
  constructor({ network }: {
6
7
  network: any;
7
8
  });
8
9
  baddrToTaddr(baddrStr: string): string;
9
- private static toBitcoinAddr;
10
10
  getLegacyAddress(xpub: string, account: number, index: number): string;
11
- getAddress(derivationMode: string, xpub: string, account: number, index: number): string;
11
+ customGetAddress(derivationMode: string, xpub: string, account: number, index: number): string;
12
12
  getDerivationMode(address: string): DerivationModes;
13
- toOutputScript(address: string): any;
13
+ toOutputScript(address: string): Buffer;
14
14
  validateAddress(address: string): boolean;
15
- isTaprootAddress(address: string): boolean;
16
15
  }
17
16
  export default ZCash;
18
17
  //# sourceMappingURL=zec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zec.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,cAAM,KAAM,YAAW,OAAO;IAE5B,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAQzC,YAAY,CAAC,QAAQ,EAAE,MAAM;IAQ7B,OAAO,CAAC,MAAM,CAAC,aAAa;IAQ5B,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAOtE,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAkBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAY9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"zec.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAE1B,cAAM,KAAM,SAAQ,IAAI;IAEtB,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IASzC,YAAY,CAAC,QAAQ,EAAE,MAAM;IAS7B,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAQtE,gBAAgB,CACd,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAKT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAqB9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG1C;AAED,eAAe,KAAK,CAAC"}
@@ -1,27 +1,61 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
2
36
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
38
  };
5
39
  exports.__esModule = true;
6
40
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
7
41
  // @ts-ignore
8
- var address_1 = require("bitcoinjs-lib/src/address");
9
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
10
- // @ts-ignore
11
42
  var zcash_bitcore_lib_1 = __importDefault(require("zcash-bitcore-lib"));
12
43
  var bs58check_1 = __importDefault(require("bs58check"));
13
- var coininfo_1 = __importDefault(require("coininfo"));
44
+ var bjs = __importStar(require("bitcoinjs-lib"));
14
45
  var errors_1 = require("@ledgerhq/errors");
15
46
  var types_1 = require("../types");
16
47
  var base_1 = __importDefault(require("./base"));
17
- var ZCash = /** @class */ (function () {
48
+ var ZCash = /** @class */ (function (_super) {
49
+ __extends(ZCash, _super);
18
50
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
51
  function ZCash(_a) {
20
52
  var network = _a.network;
21
- this.network = network;
22
- this.network.dustThreshold = 10000;
23
- this.network.dustPolicy = "FIXED";
24
- this.network.usesTimestampedTransaction = false;
53
+ var _this = _super.call(this, { network: network }) || this;
54
+ _this.network = network;
55
+ _this.network.dustThreshold = 10000;
56
+ _this.network.dustPolicy = "FIXED";
57
+ _this.network.usesTimestampedTransaction = false;
58
+ return _this;
25
59
  }
26
60
  // eslint-disable-next-line
27
61
  ZCash.prototype.baddrToTaddr = function (baddrStr) {
@@ -31,26 +65,16 @@ var ZCash = /** @class */ (function () {
31
65
  taddr.set([0x1c, 0xb8], 0);
32
66
  return bs58check_1["default"].encode(Buffer.from(taddr));
33
67
  };
34
- ZCash.toBitcoinAddr = function (taddr) {
35
- // refer to https://runkitcdn.com/gojomo/baddr2taddr/1.0.2
36
- var baddr = new Uint8Array(21);
37
- baddr.set(bs58check_1["default"].decode(taddr).slice(2), 1);
38
- return bs58check_1["default"].encode(Buffer.from(baddr));
39
- };
40
68
  // eslint-disable-next-line
41
69
  ZCash.prototype.getLegacyAddress = function (xpub, account, index) {
42
- var pubkey = new zcash_bitcore_lib_1["default"].HDPublicKey(xpub);
43
- var child = pubkey.derive(account).derive(index);
44
- var address = new zcash_bitcore_lib_1["default"].Address(child.publicKey, zcash_bitcore_lib_1["default"].Networks.livenet);
45
- return address.toString();
70
+ var pk = bjs.crypto.hash160(this.getPubkeyAt(xpub, account, index));
71
+ var payload = Buffer.allocUnsafe(22);
72
+ payload.writeUInt16BE(this.network.pubKeyHash, 0);
73
+ pk.copy(payload, 2);
74
+ return bs58check_1["default"].encode(payload);
46
75
  };
47
- ZCash.prototype.getAddress = function (derivationMode, xpub, account, index) {
48
- if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
49
- return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
50
- }
51
- var address = this.getLegacyAddress(xpub, account, index);
52
- base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
53
- return address;
76
+ ZCash.prototype.customGetAddress = function (derivationMode, xpub, account, index) {
77
+ return this.getLegacyAddress(xpub, account, index);
54
78
  };
55
79
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
56
80
  ZCash.prototype.getDerivationMode = function (address) {
@@ -60,18 +84,24 @@ var ZCash = /** @class */ (function () {
60
84
  if (!this.validateAddress(address)) {
61
85
  throw new errors_1.InvalidAddress();
62
86
  }
63
- // TODO find a better way to calculate the script from zec address instead of converting to bitcoin address
64
- return (0, address_1.toOutputScript)(ZCash.toBitcoinAddr(address), coininfo_1["default"].bitcoin.main.toBitcoinJS());
87
+ var version = Number("0x" + bs58check_1["default"].decode(address).slice(0, 2).toString("hex"));
88
+ if (version === this.network.pubKeyHash) {
89
+ //Pay-to-PubkeyHash
90
+ return bjs.payments.p2pkh({ hash: bs58check_1["default"].decode(address).slice(2) })
91
+ .output;
92
+ }
93
+ if (version === this.network.scriptHash) {
94
+ //Pay-to-Script-Hash
95
+ return bjs.payments.p2sh({ hash: bs58check_1["default"].decode(address).slice(2) })
96
+ .output;
97
+ }
98
+ throw new errors_1.InvalidAddress();
65
99
  };
66
100
  // eslint-disable-next-line class-methods-use-this
67
101
  ZCash.prototype.validateAddress = function (address) {
68
102
  return zcash_bitcore_lib_1["default"].Address.isValid(address, "livenet");
69
103
  };
70
- // eslint-disable-next-line
71
- ZCash.prototype.isTaprootAddress = function (address) {
72
- return false;
73
- };
74
104
  return ZCash;
75
- }());
105
+ }(base_1["default"]));
76
106
  exports["default"] = ZCash;
77
107
  //# sourceMappingURL=zec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zec.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zec.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,17 @@
1
1
  /// <reference types="node" />
2
2
  import { DerivationModes } from "../types";
3
- import { ICrypto } from "./types";
4
- declare class Zen implements ICrypto {
3
+ import Base from "./base";
4
+ declare class Zen extends Base {
5
5
  network: any;
6
6
  constructor({ network }: {
7
7
  network: any;
8
8
  });
9
9
  baddrToTaddr(baddrStr: string): string;
10
- private static toBitcoinAddr;
11
10
  getLegacyAddress(xpub: string, account: number, index: number): string;
12
- getAddress(derivationMode: string, xpub: string, account: number, index: number): string;
11
+ customGetAddress(derivationMode: string, xpub: string, account: number, index: number): string;
13
12
  getDerivationMode(address: string): DerivationModes;
14
13
  toOutputScript(address: string): Buffer;
15
14
  validateAddress(address: string): boolean;
16
- isTaprootAddress(address: string): boolean;
17
15
  }
18
16
  export default Zen;
19
17
  //# sourceMappingURL=zen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zen.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zen.ts"],"names":[],"mappings":";AASA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,cAAM,GAAI,YAAW,OAAO;IAE1B,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAyBzC,YAAY,CAAC,QAAQ,EAAE,MAAM;IAS7B,OAAO,CAAC,MAAM,CAAC,aAAa;IAQ5B,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAStE,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAkBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAiB9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"zen.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zen.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,cAAM,GAAI,SAAQ,IAAI;IAEpB,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IA0BzC,YAAY,CAAC,QAAQ,EAAE,MAAM;IAU7B,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAQtE,gBAAgB,CACd,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAKT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IA8B9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAW1C;AAED,eAAe,GAAG,CAAC"}
@@ -1,44 +1,75 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
2
36
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
38
  };
5
39
  exports.__esModule = true;
6
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
7
- // @ts-ignore
8
- var address_1 = require("bitcoinjs-lib/src/address");
9
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
10
- // @ts-ignore
11
- var zcash_bitcore_lib_1 = __importDefault(require("zcash-bitcore-lib"));
12
40
  var bs58check_1 = __importDefault(require("bs58check"));
13
- var coininfo_1 = __importDefault(require("coininfo"));
14
41
  var errors_1 = require("@ledgerhq/errors");
15
42
  var types_1 = require("../types");
16
43
  var base_1 = __importDefault(require("./base"));
17
- var Zen = /** @class */ (function () {
44
+ var bjs = __importStar(require("bitcoinjs-lib"));
45
+ var Zen = /** @class */ (function (_super) {
46
+ __extends(Zen, _super);
18
47
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
48
  function Zen(_a) {
20
49
  var network = _a.network;
50
+ var _this = _super.call(this, { network: network }) || this;
21
51
  // refer to https://github.com/HorizenOfficial/zen/blob/master/src/chainparams.cpp for the blockchain params
22
- this.network = network;
23
- this.network.versions = {
52
+ _this.network = network;
53
+ _this.network.versions = {
24
54
  bip32: {
25
55
  public: 0x043587cf,
26
56
  private: 0x04358394
27
57
  },
28
58
  bip44: 121,
29
59
  private: 0x80,
30
- public: 0x2096,
31
- scripthash: 0x2089
60
+ public: 0x2089,
61
+ scripthash: 0x2096
32
62
  };
33
- this.network.name = "Zencash";
34
- this.network.unit = "ZEN";
35
- this.network.messagePrefix = "Zencash Signed Message:\n";
36
- this.network.wif = 0x80;
37
- this.network.pubKeyHash = 0x2096;
38
- this.network.scriptHash = 0x2089;
39
- this.network.dustThreshold = 10000;
40
- this.network.dustPolicy = "FIXED";
41
- this.network.usesTimestampedTransaction = false;
63
+ _this.network.name = "Zencash";
64
+ _this.network.unit = "ZEN";
65
+ _this.network.messagePrefix = "Zencash Signed Message:\n";
66
+ _this.network.wif = 0x80;
67
+ _this.network.pubKeyHash = 0x2089;
68
+ _this.network.scriptHash = 0x2096;
69
+ _this.network.dustThreshold = 10000;
70
+ _this.network.dustPolicy = "FIXED";
71
+ _this.network.usesTimestampedTransaction = false;
72
+ return _this;
42
73
  }
43
74
  // eslint-disable-next-line
44
75
  Zen.prototype.baddrToTaddr = function (baddrStr) {
@@ -49,28 +80,16 @@ var Zen = /** @class */ (function () {
49
80
  taddr.set([0x20, 0x89], 0);
50
81
  return bs58check_1["default"].encode(Buffer.from(taddr));
51
82
  };
52
- Zen.toBitcoinAddr = function (taddr) {
53
- // refer to https://runkitcdn.com/gojomo/baddr2taddr/1.0.2
54
- var baddr = new Uint8Array(21);
55
- baddr.set(bs58check_1["default"].decode(taddr).slice(2), 1);
56
- return bs58check_1["default"].encode(Buffer.from(baddr));
57
- };
58
83
  // eslint-disable-next-line
59
84
  Zen.prototype.getLegacyAddress = function (xpub, account, index) {
60
- var pubkey = new zcash_bitcore_lib_1["default"].HDPublicKey(xpub);
61
- var child = pubkey.derive(account).derive(index);
62
- var address = new zcash_bitcore_lib_1["default"].Address(child.publicKey, zcash_bitcore_lib_1["default"].Networks.livenet);
63
- var baddr = new Uint8Array(21);
64
- baddr.set(bs58check_1["default"].decode(address.toString()).slice(2), 1);
65
- return this.baddrToTaddr(bs58check_1["default"].encode(Buffer.from(baddr)));
85
+ var pk = bjs.crypto.hash160(this.getPubkeyAt(xpub, account, index));
86
+ var payload = Buffer.allocUnsafe(22);
87
+ payload.writeUInt16BE(this.network.pubKeyHash, 0);
88
+ pk.copy(payload, 2);
89
+ return bs58check_1["default"].encode(payload);
66
90
  };
67
- Zen.prototype.getAddress = function (derivationMode, xpub, account, index) {
68
- if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
69
- return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
70
- }
71
- var address = this.getLegacyAddress(xpub, account, index);
72
- base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
73
- return address;
91
+ Zen.prototype.customGetAddress = function (derivationMode, xpub, account, index) {
92
+ return this.getLegacyAddress(xpub, account, index);
74
93
  };
75
94
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
76
95
  Zen.prototype.getDerivationMode = function (address) {
@@ -80,7 +99,23 @@ var Zen = /** @class */ (function () {
80
99
  if (!this.validateAddress(address)) {
81
100
  throw new errors_1.InvalidAddress();
82
101
  }
83
- var outputScript = (0, address_1.toOutputScript)(Zen.toBitcoinAddr(address), coininfo_1["default"].bitcoin.main.toBitcoinJS());
102
+ var outputScript;
103
+ var version = Number("0x" + bs58check_1["default"].decode(address).slice(0, 2).toString("hex"));
104
+ if (version === this.network.pubKeyHash) {
105
+ //Pay-to-PubkeyHash
106
+ outputScript = bjs.payments.p2pkh({
107
+ hash: bs58check_1["default"].decode(address).slice(2)
108
+ }).output;
109
+ }
110
+ else if (version === this.network.scriptHash) {
111
+ //Pay-to-Script-Hash
112
+ outputScript = bjs.payments.p2sh({
113
+ hash: bs58check_1["default"].decode(address).slice(2)
114
+ }).output;
115
+ }
116
+ else {
117
+ throw new errors_1.InvalidAddress();
118
+ }
84
119
  // refer to https://github.com/LedgerHQ/lib-ledger-core/blob/fc9d762b83fc2b269d072b662065747a64ab2816/core/src/wallet/bitcoin/scripts/BitcoinLikeScript.cpp#L139 and https://github.com/LedgerHQ/lib-ledger-core/blob/fc9d762b83fc2b269d072b662065747a64ab2816/core/src/wallet/bitcoin/networks.cpp#L39 for bip115 Script and its network parameters
85
120
  var bip115Script = Buffer.from("209ec9845acb02fab24e1c0368b3b517c1a4488fba97f0e3459ac053ea0100000003c01f02b4", "hex");
86
121
  return Buffer.concat([outputScript, bip115Script]);
@@ -96,11 +131,7 @@ var Zen = /** @class */ (function () {
96
131
  res[0] === 0x20 &&
97
132
  (res[1] === 0x89 || res[1] === 0x96));
98
133
  };
99
- // eslint-disable-next-line
100
- Zen.prototype.isTaprootAddress = function (address) {
101
- return false;
102
- };
103
134
  return Zen;
104
- }());
135
+ }(base_1["default"]));
105
136
  exports["default"] = Zen;
106
137
  //# sourceMappingURL=zen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zen.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zen.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zen.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAkC;AAClC,2CAAkD;AAClD,kCAA2C;AAC3C,gDAA0B;AAC1B,iDAAqC;AAErC;IAAkB,uBAAI;IAIpB,8DAA8D;IAC9D,aAAY,EAA6B;YAA3B,OAAO,aAAA;QAArB,YACE,kBAAM,EAAE,OAAO,SAAA,EAAE,CAAC,SAsBnB;QArBC,4GAA4G;QAC5G,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,KAAI,CAAC,OAAO,CAAC,QAAQ,GAAG;YACtB,KAAK,EAAE;gBACL,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,UAAU;aACpB;YACD,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,MAAM;SACnB,CAAC;QACF,KAAI,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;QAC9B,KAAI,CAAC,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC;QAC1B,KAAI,CAAC,OAAO,CAAC,aAAa,GAAG,2BAA2B,CAAC;QACzD,KAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;QACxB,KAAI,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC;QACjC,KAAI,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC;QACjC,KAAI,CAAC,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QACnC,KAAI,CAAC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;QAClC,KAAI,CAAC,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC;;IAClD,CAAC;IAED,2BAA2B;IAC3B,0BAAY,GAAZ,UAAa,QAAgB;QAC3B,IAAM,KAAK,GAAG,sBAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,IAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;QACjC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACpB,yHAAyH;QACzH,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,OAAO,sBAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,2BAA2B;IAC3B,8BAAgB,GAAhB,UAAiB,IAAY,EAAE,OAAe,EAAE,KAAa;QAC3D,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACtE,IAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAClD,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACpB,OAAO,sBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,8BAAgB,GAAhB,UACE,cAAsB,EACtB,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,6DAA6D;IAC7D,+BAAiB,GAAjB,UAAkB,OAAe;QAC/B,OAAO,uBAAe,CAAC,MAAM,CAAC;IAChC,CAAC;IAED,4BAAc,GAAd,UAAe,OAAe;QAC5B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;YAClC,MAAM,IAAI,uBAAc,EAAE,CAAC;SAC5B;QACD,IAAI,YAAoB,CAAC;QACzB,IAAM,OAAO,GAAG,MAAM,CACpB,IAAI,GAAG,sBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC7D,CAAC;QACF,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvC,mBAAmB;YACnB,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAChC,IAAI,EAAE,sBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aACzC,CAAC,CAAC,MAAgB,CAAC;SACrB;aAAM,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAC9C,oBAAoB;YACpB,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC/B,IAAI,EAAE,sBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aACzC,CAAC,CAAC,MAAgB,CAAC;SACrB;aAAM;YACL,MAAM,IAAI,uBAAc,EAAE,CAAC;SAC5B;QACD,oVAAoV;QACpV,IAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAC9B,8EAA8E,EAC9E,KAAK,CACN,CAAC;QACF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,kDAAkD;IAClD,6BAAe,GAAf,UAAgB,OAAe;QAC7B,IAAM,GAAG,GAAG,sBAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC;QACvB,+IAA+I;QAC/I,OAAO,CACL,GAAG;YACH,GAAG,CAAC,MAAM,GAAG,CAAC;YACd,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI;YACf,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CACrC,CAAC;IACJ,CAAC;IACH,UAAC;AAAD,CAAC,AAxGD,CAAkB,iBAAI,GAwGrB;AAED,qBAAe,GAAG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/explorer/index.ts"],"names":[],"mappings":"AACA,OAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG7C,OAAoB,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC,cAAM,mBAAoB,SAAQ,YAAa,YAAW,SAAS;IACjE,MAAM,EAAE,IAAI,CAAC;QAAE,MAAM,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;IAExC,gBAAgB,EAAE,aAAa,CAAC;IAEhC,gBAAgB,UAAS;IAEzB,eAAe,EAAE,IAAI,GAAG,IAAI,CAAC;gBAEjB,EACV,WAAW,EACX,eAAe,EACf,gBAAgB,GACjB,EAAE;QACD,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,IAAI,GAAG,IAAI,CAAC;QAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B;IAmDK,SAAS,CAAC,EAAE,EAAE,MAAM;IAQpB,QAAQ,CAAC,IAAI,EAAE,MAAM;IAerB,eAAe;IAwBf,gBAAgB,CAAC,MAAM,EAAE,MAAM;IAwB/B,OAAO;IAeP,WAAW;IAOX,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM;IAyB5C,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG;aAwBzB,EAAE,EAAE;;IASvB,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE;IAuB5B,6BAA6B,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,EAAE,GAAG,SAAS;CAuCzB;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/explorer/index.ts"],"names":[],"mappings":"AACA,OAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG7C,OAAoB,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC,cAAM,mBAAoB,SAAQ,YAAa,YAAW,SAAS;IACjE,MAAM,EAAE,IAAI,CAAC;QAAE,MAAM,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;IAExC,gBAAgB,EAAE,aAAa,CAAC;IAEhC,gBAAgB,UAAS;IAEzB,eAAe,EAAE,IAAI,GAAG,IAAI,CAAC;gBAEjB,EACV,WAAW,EACX,eAAe,EACf,gBAAgB,GACjB,EAAE;QACD,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,IAAI,GAAG,IAAI,CAAC;QAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B;IAmDK,SAAS,CAAC,EAAE,EAAE,MAAM;IAQpB,QAAQ,CAAC,IAAI,EAAE,MAAM;IAerB,eAAe;IAwBf,gBAAgB,CAAC,MAAM,EAAE,MAAM;IAwB/B,OAAO;IAeP,WAAW;IAOX,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM;IAyB5C,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG;aAwBzB,EAAE,EAAE;;IASvB,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE;IA2C5B,6BAA6B,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,EAAE,GAAG,SAAS;CAuCzB;AAED,eAAe,mBAAmB,CAAC"}
@@ -347,13 +347,33 @@ var BitcoinLikeExplorer = /** @class */ (function (_super) {
347
347
  // @ts-ignore
348
348
  // eslint-disable-next-line no-param-reassign
349
349
  delete tx.confirmations;
350
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
351
+ // @ts-ignore
352
+ delete tx.id;
353
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
354
+ // @ts-ignore
355
+ delete tx.lock_time;
350
356
  // eslint-disable-next-line no-param-reassign
351
357
  tx.account = address.account;
352
358
  // eslint-disable-next-line no-param-reassign
353
359
  tx.index = address.index;
354
360
  // eslint-disable-next-line no-param-reassign
355
361
  tx.address = address.address;
362
+ tx.inputs.forEach(function (input) {
363
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
364
+ // @ts-ignore
365
+ delete input.txinwitness;
366
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
367
+ // @ts-ignore
368
+ delete input.script_signature;
369
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
370
+ // @ts-ignore
371
+ delete input.input_index;
372
+ });
356
373
  tx.outputs.forEach(function (output) {
374
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
375
+ // @ts-ignore
376
+ delete output.script_hex;
357
377
  // eslint-disable-next-line no-param-reassign
358
378
  output.output_hash = tx.hash;
359
379
  // eslint-disable-next-line no-param-reassign