@ledgerhq/live-common 21.25.2 → 21.26.3-hotfix.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 (84) hide show
  1. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts +2 -0
  2. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts.map +1 -0
  3. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js +126 -0
  4. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js.map +1 -0
  5. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js +9 -7
  6. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js.map +1 -1
  7. package/lib/account/support.d.ts.map +1 -1
  8. package/lib/account/support.js +1 -25
  9. package/lib/account/support.js.map +1 -1
  10. package/lib/api/Ethereum.d.ts.map +1 -1
  11. package/lib/api/Ethereum.js +1 -4
  12. package/lib/api/Ethereum.js.map +1 -1
  13. package/lib/api/explorerConfig/index.d.ts.map +1 -1
  14. package/lib/api/explorerConfig/index.js +0 -4
  15. package/lib/api/explorerConfig/index.js.map +1 -1
  16. package/lib/errors.d.ts +3 -0
  17. package/lib/errors.d.ts.map +1 -1
  18. package/lib/errors.js +3 -2
  19. package/lib/errors.js.map +1 -1
  20. package/lib/families/bitcoin/test-dataset.js +1 -1
  21. package/lib/families/bitcoin/test-dataset.js.map +1 -1
  22. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
  23. package/lib/families/bitcoin/wallet-btc/crypto/base.js +19 -20
  24. package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
  25. package/lib/families/bitcoin/wallet-btc/crypto/bip32.js +2 -2
  26. package/lib/families/bitcoin/wallet-btc/crypto/bip32.js.map +1 -1
  27. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts.map +1 -1
  28. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js +4 -5
  29. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js.map +1 -1
  30. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
  31. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +3 -4
  32. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
  33. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
  34. package/lib/families/bitcoin/wallet-btc/crypto/decred.js +3 -4
  35. package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
  36. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
  37. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +3 -4
  38. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
  39. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts +4 -4
  40. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
  41. package/lib/families/bitcoin/wallet-btc/crypto/zec.js +64 -26
  42. package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
  43. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts +2 -3
  44. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
  45. package/lib/families/bitcoin/wallet-btc/crypto/zen.js +78 -39
  46. package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
  47. package/lib/families/bitcoin/wallet-btc/xpub.js +1 -1
  48. package/lib/families/bitcoin/wallet-btc/xpub.js.map +1 -1
  49. package/lib/families/ethereum/modules/send.d.ts.map +1 -1
  50. package/lib/families/ethereum/modules/send.js +3 -1
  51. package/lib/families/ethereum/modules/send.js.map +1 -1
  52. package/lib/families/tezos/bridge/js.d.ts.map +1 -1
  53. package/lib/families/tezos/bridge/js.js +19 -20
  54. package/lib/families/tezos/bridge/js.js.map +1 -1
  55. package/lib/families/tezos/hw-getAddress.d.ts.map +1 -1
  56. package/lib/families/tezos/hw-getAddress.js +1 -3
  57. package/lib/families/tezos/hw-getAddress.js.map +1 -1
  58. package/lib/families/tezos/synchronisation.d.ts.map +1 -1
  59. package/lib/families/tezos/synchronisation.js +1 -1
  60. package/lib/families/tezos/synchronisation.js.map +1 -1
  61. package/package.json +3 -3
  62. package/src/.DS_Store +0 -0
  63. package/src/__tests__/.DS_Store +0 -0
  64. package/src/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.ts +78 -0
  65. package/src/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.ts +2 -0
  66. package/src/account/support.ts +1 -25
  67. package/src/api/Ethereum.ts +1 -4
  68. package/src/api/explorerConfig/index.ts +0 -4
  69. package/src/errors.ts +3 -0
  70. package/src/families/bitcoin/test-dataset.ts +1 -1
  71. package/src/families/bitcoin/wallet-btc/crypto/base.ts +41 -20
  72. package/src/families/bitcoin/wallet-btc/crypto/bip32.ts +2 -2
  73. package/src/families/bitcoin/wallet-btc/crypto/bitcoin.ts +12 -5
  74. package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +11 -4
  75. package/src/families/bitcoin/wallet-btc/crypto/decred.ts +11 -4
  76. package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +11 -4
  77. package/src/families/bitcoin/wallet-btc/crypto/zec.ts +32 -25
  78. package/src/families/bitcoin/wallet-btc/crypto/zen.ts +39 -33
  79. package/src/families/bitcoin/wallet-btc/xpub.ts +1 -1
  80. package/src/families/ethereum/modules/send.ts +3 -0
  81. package/src/families/tezos/bridge/js.ts +41 -40
  82. package/src/families/tezos/hw-getAddress.ts +1 -3
  83. package/src/families/tezos/synchronisation.ts +4 -3
  84. package/src/currencies/__snapshots__/.DS_Store +0 -0
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  exports.__esModule = true;
6
- var tiny_secp256k1_1 = __importDefault(require("tiny-secp256k1"));
6
+ var secp256k1_1 = require("secp256k1");
7
7
  var create_hmac_1 = __importDefault(require("create-hmac"));
8
8
  // the BIP32 class is inspired from https://github.com/bitcoinjs/bip32/blob/master/src/bip32.js
9
9
  var BIP32 = /** @class */ (function () {
@@ -23,7 +23,7 @@ var BIP32 = /** @class */ (function () {
23
23
  var I = (0, create_hmac_1["default"])("sha512", this.chainCode).update(data).digest();
24
24
  var IL = I.slice(0, 32);
25
25
  var IR = I.slice(32);
26
- var Ki = tiny_secp256k1_1["default"].pointAddScalar(this.publicKey, IL, true);
26
+ var Ki = Buffer.from((0, secp256k1_1.publicKeyTweakAdd)(this.publicKey, IL));
27
27
  return new BIP32(Ki, IR, this.network, this.depth + 1, index);
28
28
  };
29
29
  return BIP32;
@@ -1 +1 @@
1
- {"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bip32.ts"],"names":[],"mappings":";;;;;AAAA,kEAAiC;AACjC,4DAAqC;AAErC,+FAA+F;AAC/F;IAME,eACE,SAAc,EACd,SAAc,EACd,OAAY,EACZ,KAAS,EACT,KAAS;QADT,sBAAA,EAAA,SAAS;QACT,sBAAA,EAAA,SAAS;QAET,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,sBAAM,GAAN,UAAO,KAAa;QAClB,IAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAM,CAAC,GAAG,IAAA,wBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACrE,IAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,IAAM,EAAE,GAAG,2BAAG,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACxD,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACH,YAAC;AAAD,CAAC,AA7BD,IA6BC;AAED,qBAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bip32.ts"],"names":[],"mappings":";;;;;AAAA,uCAA8C;AAC9C,4DAAqC;AAErC,+FAA+F;AAC/F;IAME,eACE,SAAc,EACd,SAAc,EACd,OAAY,EACZ,KAAS,EACT,KAAS;QADT,sBAAA,EAAA,SAAS;QACT,sBAAA,EAAA,SAAS;QAET,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,sBAAM,GAAN,UAAO,KAAa;QAClB,IAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAM,CAAC,GAAG,IAAA,wBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACrE,IAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,IAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACH,YAAC;AAAD,CAAC,AA7BD,IA6BC;AAED,qBAAe,KAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":";AAQA,OAAO,IAAI,MAAM,QAAQ,CAAC;AA6E1B,cAAM,OAAQ,SAAQ,IAAI;IACxB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAkBzC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAgBT,OAAO,CAAC,SAAS;IAyBjB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IA4BzB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAY3C;AAED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":";AAQA,OAAO,IAAI,MAAM,QAAQ,CAAC;AA6E1B,cAAM,OAAQ,SAAQ,IAAI;IACxB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAkBzC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAuBT,OAAO,CAAC,SAAS;IAyBjB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IA4BzB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAY3C;AAED,eAAe,OAAO,CAAC"}
@@ -152,14 +152,13 @@ var Bitcoin = /** @class */ (function (_super) {
152
152
  };
153
153
  // get address given an address type
154
154
  Bitcoin.prototype.getAddress = function (derivationMode, xpub, account, index) {
155
- if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
156
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
155
+ if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
156
+ return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
157
157
  }
158
158
  switch (derivationMode) {
159
159
  case types_1.DerivationModes.TAPROOT:
160
- base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
161
- this.getTaprootAddress(xpub, account, index);
162
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
160
+ base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = this.getTaprootAddress(xpub, account, index);
161
+ return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
163
162
  default:
164
163
  return _super.prototype.getAddress.call(this, derivationMode, xpub, account, index);
165
164
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":";AAAA,wFAAwF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAExF,6CAAiC;AACjC,yCAAwC;AACxC,iDAAqC;AACrC,uCAA8C;AAC9C,2CAAkD;AAClD,kCAA2C;AAC3C,gDAA0B;AAE1B;;;;;;;;;;;GAWG;AACH,oBAAoB;AACpB,SAAS,UAAU,CAAC,OAAe;IAKjC,IAAI,MAAM,CAAC;IACX,IAAI,OAAO,CAAC;IACZ,IAAI;QACF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACjC;IAAC,OAAO,CAAC,EAAE,GAAE;IAEd,IAAI,MAAM,EAAE;QACV,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;KAC1E;SAAM;QACL,MAAM,GAAG,iBAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;KAC1E;IAED,IAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,OAAO;QACL,OAAO,SAAA;QACP,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,OAAe,EAAE,MAAc;IAC7D,IAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvB,OAAO,OAAO,KAAK,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAC9B,CAAC,CAAC,iBAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AACD,mBAAmB;AAEnB,+DAA+D;AAC/D,0BAA0B;AAC1B,SAAS,uBAAuB,CAC9B,YAAoB,EACpB,OAAoB;IAEpB,IAAI;QACF,IAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,YAAY,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU;YAC7C,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAgB,CAAC;QAC1E,IAAI,YAAY,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU;YAC7C,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAgB,CAAC;KAC1E;IAAC,OAAO,CAAC,EAAE;QACV,sDAAsD;KACvD;IACD,IAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QACxB,8FAA8F;QAC9F,YAAY,CAAC,OAAO,GAAG,CAAC,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,YAAY,CAAC,IAAI;KAClB,CAAC,CAAC;AACL,CAAC;AAED;IAAsB,2BAAI;IAA1B;;IA4IA,CAAC;IA3IC,gCAAc,GAAd,UAAe,OAAe;QAC5B,iDAAiD;QACjD,mDAAmD;QACnD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;YAClC,MAAM,IAAI,uBAAc,EAAE,CAAC;SAC5B;QACD,2EAA2E;QAC3E,sEAAsE;QACtE,uEAAuE;QACvE,iBAAiB;QACjB,gEAAgE;QAChE,2DAA2D;QAC3D,wCAAwC;QACxC,OAAO,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,kDAAkD;IAClD,iCAAe,GAAf,UAAgB,OAAe;QAC7B,IAAI;YACF,mGAAmG;YACnG,+DAA+D;YAC/D,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAG,IAAI,CAAC,OAAO,CAAC,MAAM,MAAG,CAAC,EAAE;gBAC/D,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;aAChC;SACF;QAAC,WAAM;YACN,wBAAwB;SACzB;QACD,IAAI;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SAChC;QAAC,WAAM;YACN,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,oCAAoC;IACpC,4BAAU,GAAV,UACE,cAAsB,EACtB,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,IAAI,iBAAI,CAAC,YAAY,CAAC,UAAG,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CAAC,EAAE;YACtE,OAAO,iBAAI,CAAC,YAAY,CAAC,UAAG,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CAAC,CAAC;SAC3E;QACD,QAAQ,cAAc,EAAE;YACtB,KAAK,uBAAe,CAAC,OAAO;gBAC1B,iBAAI,CAAC,YAAY,CAAC,UAAG,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CAAC;oBAChE,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC/C,OAAO,iBAAI,CAAC,YAAY,CACtB,UAAG,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CAChD,CAAC;YACJ;gBACE,OAAO,iBAAM,UAAU,YAAC,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;SACjE;IACH,CAAC;IAEO,2BAAS,GAAjB,UAAkB,OAAe;QAC/B,IAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE;YACzC,yEAAyE;YACzE,OAAO,KAAK,CAAC;SACd;QACD,IAAI,MAAM,CAAC,OAAO,GAAG,EAAE,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE;YAC7C,8BAA8B;YAC9B,OAAO,KAAK,CAAC;SACd;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE;YACrD,kCAAkC;YAClC,OAAO,KAAK,CAAC;SACd;QACD,IACE,MAAM,CAAC,OAAO,KAAK,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE;YACzB,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,EACzB;YACA,2DAA2D;YAC3D,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,2BAAS,GAAjB,UAAkB,OAAe;QAC/B,IAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACpD,IACE,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,MAAM,CAAC,OAAO;YAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,MAAM,CAAC,OAAO,EAC1C;YACA,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,8BAAY,GAApB,UAAqB,CAAS;QAC5B,oEAAoE;QACpE,mFAAmF;QACnF,IAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IAEO,mCAAiB,GAAzB,UACE,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,IAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC3D,uEAAuE;QACvE,uEAAuE;QACvE,oBAAoB;QACpB,uFAAuF;QACvF,IAAM,qBAAqB,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEnD,IAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YACnB,qBAAqB;SACtB,CAAC,CAAC;QACH,IAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QAEvD,wCAAwC;QACxC,IAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAChC,IAAA,6BAAiB,EAAC,eAAe,EAAE,KAAK,CAAC,CAC1C,CAAC;QACF,sBAAsB;QACtB,IAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD,iBAAiB;QACjB,OAAO,QAAQ,CAAC,gBAAgB,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,kCAAgB,GAAhB,UAAiB,OAAe;QAC9B,mGAAmG;QACnG,+DAA+D;QAC/D,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAG,IAAI,CAAC,OAAO,CAAC,MAAM,MAAG,CAAC,EAAE;YAC/D,IAAI;gBACF,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;aACjC;YAAC,WAAM;gBACN,OAAO,IAAI,CAAC;aACb;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACH,cAAC;AAAD,CAAC,AA5ID,CAAsB,iBAAI,GA4IzB;AAED,qBAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoincash.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIlC,cAAM,WAAY,YAAW,OAAO;IAElC,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IASzC,2BAA2B,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAYT,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAgBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAS9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"bitcoincash.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIlC,cAAM,WAAY,YAAW,OAAO;IAElC,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IASzC,2BAA2B,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAYT,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAuBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAS9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,WAAW,CAAC"}
@@ -56,12 +56,11 @@ var BitcoinCash = /** @class */ (function () {
56
56
  };
57
57
  // get address given an address type
58
58
  BitcoinCash.prototype.getAddress = function (derivationMode, xpub, account, index) {
59
- if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
60
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
59
+ if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
60
+ return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
61
61
  }
62
62
  var address = this.getLegacyBitcoinCashAddress(xpub, account, index);
63
- base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
64
- address;
63
+ base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
65
64
  return address;
66
65
  };
67
66
  // infer address type from its syntax
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoincash.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bitcoincash.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decred.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAU1B,cAAM,MAAO,SAAQ,IAAI;gBAEX,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAMzC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IASvC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAUlD,MAAM,CAAC,QAAQ,CAAC,WAAW,WAAY,MAAM,KAAG,MAAM,CACX;IAC3C,MAAM,CAAC,QAAQ,CAAC,SAAS,MAAqC;IAC9D,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;CAqBV;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"decred.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAU1B,cAAM,MAAO,SAAQ,IAAI;gBAEX,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAMzC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IASvC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAUlD,MAAM,CAAC,QAAQ,CAAC,WAAW,WAAY,MAAM,KAAG,MAAM,CACX;IAC3C,MAAM,CAAC,QAAQ,CAAC,SAAS,MAAqC;IAC9D,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;CA4BV;AAED,eAAe,MAAM,CAAC"}
@@ -105,8 +105,8 @@ var Decred = /** @class */ (function (_super) {
105
105
  };
106
106
  // get address given an address type
107
107
  Decred.prototype.getAddress = function (derivationMode, xpub, account, index) {
108
- if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
109
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
108
+ if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
109
+ return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
110
110
  }
111
111
  var buffer;
112
112
  try {
@@ -122,8 +122,7 @@ var Decred = /** @class */ (function (_super) {
122
122
  var hd = new bip32_1["default"](X, chainCode, this.network, depth, i);
123
123
  var publicKey = hd.derive(account).derive(index).publicKey;
124
124
  var address = Decred.getAddressFromPk(publicKey);
125
- base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
126
- address;
125
+ base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
127
126
  return address;
128
127
  };
129
128
  Decred._blake256x2 = function (buffer) {
@@ -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 +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;IAwBT,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":"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"}
@@ -86,8 +86,8 @@ var Litecoin = /** @class */ (function (_super) {
86
86
  return String(address);
87
87
  };
88
88
  Litecoin.prototype.getAddress = function (derivationMode, xpub, account, index) {
89
- if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
90
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(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
91
  }
92
92
  var address;
93
93
  switch (derivationMode) {
@@ -103,8 +103,7 @@ var Litecoin = /** @class */ (function (_super) {
103
103
  default:
104
104
  throw new Error("Should not be reachable");
105
105
  }
106
- base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
107
- address;
106
+ base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
108
107
  return address;
109
108
  };
110
109
  // infer address type from its syntax
@@ -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,iDAAqC;AACrC,2CAA+B;AAC/B,6DAA6D;AAC7D,aAAa;AACb,qDAA2D;AAC3D,6CAAiC;AACjC,kCAA2C;AAE3C,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,mCAAgB,GAAhB,UAAiB,IAAY,EAAE,OAAe,EAAE,KAAa;QACnD,IAAA,OAAO,GAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACrC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACvE,SAAS;YACZ,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,QAJa,CAIZ;QACH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,mCAAgB,GAAhB,UAAiB,IAAY,EAAE,OAAe,EAAE,KAAa;QACnD,IAAA,OAAO,GAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC1B,MAAM,EAAE,KAAK;qBACV,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;qBAC9B,MAAM,CAAC,OAAO,CAAC;qBACf,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS;gBAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC;SACH,CAAC,QARa,CAQZ;QACH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,yCAAsB,GAAtB,UAAuB,IAAY,EAAE,OAAe,EAAE,KAAa;QACzD,IAAA,OAAO,GAAK,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YACtC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACvE,SAAS;YACZ,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,QAJa,CAIZ;QAEH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,6BAAU,GAAV,UACE,cAA+B,EAC/B,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,IACE,iBAAI,CAAC,YAAY,CACf,UAAG,IAAI,CAAC,OAAO,CAAC,IAAI,cAAI,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CACrE,EACD;YACA,OAAO,iBAAI,CAAC,YAAY,CACtB,UAAG,IAAI,CAAC,OAAO,CAAC,IAAI,cAAI,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CACrE,CAAC;SACH;QACD,IAAI,OAAe,CAAC;QACpB,QAAQ,cAAc,EAAE;YACtB,KAAK,uBAAe,CAAC,MAAM;gBACzB,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACtD,MAAM;YACR,KAAK,uBAAe,CAAC,MAAM;gBACzB,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACtD,MAAM;YACR,KAAK,uBAAe,CAAC,aAAa;gBAChC,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC5D,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC9C;QACD,iBAAI,CAAC,YAAY,CACf,UAAG,IAAI,CAAC,OAAO,CAAC,IAAI,cAAI,cAAc,cAAI,IAAI,cAAI,OAAO,cAAI,KAAK,CAAE,CACrE,GAAG,OAAO,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,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,AA9GD,CAAuB,iBAAI,GA8G1B;AAED,qBAAe,QAAQ,CAAC"}
@@ -1,16 +1,16 @@
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
11
  getAddress(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
15
  isTaprootAddress(address: string): boolean;
16
16
  }
@@ -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;IAWT,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,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;IAqB9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;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,20 @@ 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
76
  ZCash.prototype.getAddress = function (derivationMode, xpub, account, index) {
48
- if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
49
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
77
+ if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
78
+ return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
50
79
  }
51
80
  var address = this.getLegacyAddress(xpub, account, index);
52
- base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
53
- address;
81
+ base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
54
82
  return address;
55
83
  };
56
84
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -61,8 +89,18 @@ var ZCash = /** @class */ (function () {
61
89
  if (!this.validateAddress(address)) {
62
90
  throw new errors_1.InvalidAddress();
63
91
  }
64
- // TODO find a better way to calculate the script from zec address instead of converting to bitcoin address
65
- return (0, address_1.toOutputScript)(ZCash.toBitcoinAddr(address), coininfo_1["default"].bitcoin.main.toBitcoinJS());
92
+ var version = Number("0x" + bs58check_1["default"].decode(address).slice(0, 2).toString("hex"));
93
+ if (version === this.network.pubKeyHash) {
94
+ //Pay-to-PubkeyHash
95
+ return bjs.payments.p2pkh({ hash: bs58check_1["default"].decode(address).slice(2) })
96
+ .output;
97
+ }
98
+ if (version === this.network.scriptHash) {
99
+ //Pay-to-Script-Hash
100
+ return bjs.payments.p2sh({ hash: bs58check_1["default"].decode(address).slice(2) })
101
+ .output;
102
+ }
103
+ throw new errors_1.InvalidAddress();
66
104
  };
67
105
  // eslint-disable-next-line class-methods-use-this
68
106
  ZCash.prototype.validateAddress = function (address) {
@@ -73,6 +111,6 @@ var ZCash = /** @class */ (function () {
73
111
  return false;
74
112
  };
75
113
  return ZCash;
76
- }());
114
+ }(base_1["default"]));
77
115
  exports["default"] = ZCash;
78
116
  //# 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,13 +1,12 @@
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
11
  getAddress(derivationMode: string, xpub: string, account: number, index: number): string;
13
12
  getDerivationMode(address: string): DerivationModes;
@@ -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;IAWT,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,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;IA8B9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;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,20 @@ 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
91
  Zen.prototype.getAddress = function (derivationMode, xpub, account, index) {
68
- if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
69
- return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
92
+ if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
93
+ return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
70
94
  }
71
95
  var address = this.getLegacyAddress(xpub, account, index);
72
- base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
73
- address;
96
+ base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
74
97
  return address;
75
98
  };
76
99
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -81,7 +104,23 @@ var Zen = /** @class */ (function () {
81
104
  if (!this.validateAddress(address)) {
82
105
  throw new errors_1.InvalidAddress();
83
106
  }
84
- var outputScript = (0, address_1.toOutputScript)(Zen.toBitcoinAddr(address), coininfo_1["default"].bitcoin.main.toBitcoinJS());
107
+ var outputScript;
108
+ var version = Number("0x" + bs58check_1["default"].decode(address).slice(0, 2).toString("hex"));
109
+ if (version === this.network.pubKeyHash) {
110
+ //Pay-to-PubkeyHash
111
+ outputScript = bjs.payments.p2pkh({
112
+ hash: bs58check_1["default"].decode(address).slice(2)
113
+ }).output;
114
+ }
115
+ else if (version === this.network.scriptHash) {
116
+ //Pay-to-Script-Hash
117
+ outputScript = bjs.payments.p2sh({
118
+ hash: bs58check_1["default"].decode(address).slice(2)
119
+ }).output;
120
+ }
121
+ else {
122
+ throw new errors_1.InvalidAddress();
123
+ }
85
124
  // 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
86
125
  var bip115Script = Buffer.from("209ec9845acb02fab24e1c0368b3b517c1a4488fba97f0e3459ac053ea0100000003c01f02b4", "hex");
87
126
  return Buffer.concat([outputScript, bip115Script]);
@@ -102,6 +141,6 @@ var Zen = /** @class */ (function () {
102
141
  return false;
103
142
  };
104
143
  return Zen;
105
- }());
144
+ }(base_1["default"]));
106
145
  exports["default"] = Zen;
107
146
  //# sourceMappingURL=zen.js.map