@ledgerhq/live-common 21.32.1 → 21.32.2

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 (100) 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 +100 -0
  4. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js.map +1 -0
  5. package/lib/bot/engine.d.ts.map +1 -1
  6. package/lib/bot/engine.js +3 -0
  7. package/lib/bot/engine.js.map +1 -1
  8. package/lib/exchange/platform/transfer/index.d.ts.map +1 -1
  9. package/lib/exchange/platform/transfer/index.js +15 -1
  10. package/lib/exchange/platform/transfer/index.js.map +1 -1
  11. package/lib/families/algorand/buildTransaction.d.ts +2 -2
  12. package/lib/families/algorand/buildTransaction.d.ts.map +1 -1
  13. package/lib/families/algorand/buildTransaction.js +13 -19
  14. package/lib/families/algorand/buildTransaction.js.map +1 -1
  15. package/lib/families/algorand/js-getFeesForTransaction.js +4 -6
  16. package/lib/families/algorand/js-getFeesForTransaction.js.map +1 -1
  17. package/lib/families/algorand/js-signOperation.js +3 -7
  18. package/lib/families/algorand/js-signOperation.js.map +1 -1
  19. package/lib/families/algorand/js-synchronization.d.ts.map +1 -1
  20. package/lib/families/algorand/js-synchronization.js +1 -0
  21. package/lib/families/algorand/js-synchronization.js.map +1 -1
  22. package/lib/families/bitcoin/js-signOperation.d.ts.map +1 -1
  23. package/lib/families/bitcoin/js-signOperation.js +3 -5
  24. package/lib/families/bitcoin/js-signOperation.js.map +1 -1
  25. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts +4 -3
  26. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
  27. package/lib/families/bitcoin/wallet-btc/crypto/base.js +8 -7
  28. package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
  29. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts +1 -1
  30. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts.map +1 -1
  31. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js +3 -7
  32. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js.map +1 -1
  33. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts +3 -4
  34. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
  35. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +27 -53
  36. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
  37. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts +1 -1
  38. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
  39. package/lib/families/bitcoin/wallet-btc/crypto/decred.js +2 -7
  40. package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
  41. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts +1 -6
  42. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
  43. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +0 -51
  44. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
  45. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts +1 -0
  46. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts.map +1 -1
  47. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts +3 -4
  48. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
  49. package/lib/families/bitcoin/wallet-btc/crypto/zec.js +26 -17
  50. package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
  51. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts +3 -4
  52. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
  53. package/lib/families/bitcoin/wallet-btc/crypto/zen.js +33 -24
  54. package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
  55. package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -1
  56. package/lib/families/celo/speculos-deviceActions.js +1 -2
  57. package/lib/families/celo/speculos-deviceActions.js.map +1 -1
  58. package/lib/families/ethereum/signOperation.d.ts.map +1 -1
  59. package/lib/families/ethereum/signOperation.js +26 -15
  60. package/lib/families/ethereum/signOperation.js.map +1 -1
  61. package/lib/families/ethereum/specs.d.ts.map +1 -1
  62. package/lib/families/ethereum/specs.js +2 -4
  63. package/lib/families/ethereum/specs.js.map +1 -1
  64. package/lib/families/ethereum/transaction.d.ts +4 -1
  65. package/lib/families/ethereum/transaction.d.ts.map +1 -1
  66. package/lib/families/ethereum/transaction.js +15 -27
  67. package/lib/families/ethereum/transaction.js.map +1 -1
  68. package/lib/families/solana/api/chain/instruction/token/types.d.ts +1 -1
  69. package/lib/families/tezos/bridge/js.d.ts.map +1 -1
  70. package/lib/families/tezos/bridge/js.js +2 -1
  71. package/lib/families/tezos/bridge/js.js.map +1 -1
  72. package/lib/load/speculos.d.ts +7 -0
  73. package/lib/load/speculos.d.ts.map +1 -1
  74. package/lib/load/speculos.js +27 -11
  75. package/lib/load/speculos.js.map +1 -1
  76. package/package.json +20 -21
  77. package/src/__tests__/__snapshots__/all.libcore.ts.snap +0 -23
  78. package/src/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.ts +47 -0
  79. package/src/bot/engine.ts +3 -0
  80. package/src/exchange/platform/transfer/index.ts +21 -1
  81. package/src/families/algorand/buildTransaction.ts +4 -8
  82. package/src/families/algorand/js-getFeesForTransaction.ts +1 -1
  83. package/src/families/algorand/js-signOperation.ts +2 -2
  84. package/src/families/algorand/js-synchronization.ts +1 -0
  85. package/src/families/bitcoin/js-signOperation.ts +3 -5
  86. package/src/families/bitcoin/wallet-btc/crypto/base.ts +31 -18
  87. package/src/families/bitcoin/wallet-btc/crypto/bitcoin.ts +3 -17
  88. package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +5 -39
  89. package/src/families/bitcoin/wallet-btc/crypto/decred.ts +2 -15
  90. package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +1 -71
  91. package/src/families/bitcoin/wallet-btc/crypto/types.ts +7 -0
  92. package/src/families/bitcoin/wallet-btc/crypto/zec.ts +4 -22
  93. package/src/families/bitcoin/wallet-btc/crypto/zen.ts +4 -22
  94. package/src/families/celo/speculos-deviceActions.ts +0 -1
  95. package/src/families/ethereum/signOperation.ts +21 -20
  96. package/src/families/ethereum/specs.ts +0 -2
  97. package/src/families/ethereum/transaction.ts +10 -24
  98. package/src/families/tezos/bridge/js.ts +6 -1
  99. package/src/load/speculos.ts +23 -10
  100. package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +0 -6195
@@ -30,4 +30,11 @@ export declare type AppSearch = {
30
30
  };
31
31
  export declare function appCandidatesMatches(appCandidate: AppCandidate, search: AppSearch): boolean;
32
32
  export declare const findAppCandidate: (appCandidates: AppCandidate[], search: AppSearch, picker?: (arg0: AppCandidate[]) => AppCandidate) => AppCandidate | null | undefined;
33
+ export declare function createImplicitSpeculos(query: string): Promise<{
34
+ device: {
35
+ transport: SpeculosTransport;
36
+ id: string;
37
+ };
38
+ appCandidate: AppCandidate;
39
+ } | null>;
33
40
  //# sourceMappingURL=speculos.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"speculos.d.ts","sourceRoot":"","sources":["../../src/load/speculos.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AAarE,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,MAAM,iBAOrD;AAED,wBAAgB,uBAAuB,oBAEtC;AAED,wBAAsB,oBAAoB,CACxC,GAAG,EAAE;IACH,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,MAAM,CAAC;CAClB,EACD,QAAQ,SAAI,GACX,OAAO,CAAC;IACT,SAAS,EAAE,iBAAiB,CAAC;IAC7B,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC,CA0JD;AACD,oBAAY,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AA0BF,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAuD5E;AACD,oBAAY,SAAS,GAAG;IACtB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAMF,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,SAAS,GAChB,OAAO,CAiBT;AACD,eAAO,MAAM,gBAAgB,kBACZ,YAAY,EAAE,UACrB,SAAS,kBACF,YAAY,EAAE,KAAK,YAAY,KAC7C,YAAY,GAAG,IAAI,GAAG,SAsBxB,CAAC"}
1
+ {"version":3,"file":"speculos.d.ts","sourceRoot":"","sources":["../../src/load/speculos.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AAarE,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,MAAM,iBAOrD;AAED,wBAAgB,uBAAuB,oBAEtC;AAED,wBAAsB,oBAAoB,CACxC,GAAG,EAAE;IACH,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,MAAM,CAAC;CAClB,EACD,QAAQ,SAAI,GACX,OAAO,CAAC;IACT,SAAS,EAAE,iBAAiB,CAAC;IAC7B,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC,CA0JD;AACD,oBAAY,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AA0BF,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAuD5E;AACD,oBAAY,SAAS,GAAG;IACtB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAMF,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,SAAS,GAChB,OAAO,CAiBT;AACD,eAAO,MAAM,gBAAgB,kBACZ,YAAY,EAAE,UACrB,SAAS,kBACF,YAAY,EAAE,KAAK,YAAY,KAC7C,YAAY,GAAG,IAAI,GAAG,SAsBxB,CAAC;AA8DF,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACnE,MAAM,EAAE;QACN,SAAS,EAAE,iBAAiB,CAAC;QAC7B,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,YAAY,EAAE,YAAY,CAAC;CAC5B,GAAG,IAAI,CAAC,CAsCR"}
@@ -86,7 +86,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
86
86
  return (mod && mod.__esModule) ? mod : { "default": mod };
87
87
  };
88
88
  exports.__esModule = true;
89
- exports.findAppCandidate = exports.appCandidatesMatches = exports.listAppCandidates = exports.createSpeculosDevice = exports.closeAllSpeculosDevices = exports.releaseSpeculosDevice = void 0;
89
+ exports.createImplicitSpeculos = exports.findAppCandidate = exports.appCandidatesMatches = exports.listAppCandidates = exports.createSpeculosDevice = exports.closeAllSpeculosDevices = exports.releaseSpeculosDevice = void 0;
90
90
  // Ledger internal speculos testing framework.
91
91
  // loading this file have side effects and is only for Node.
92
92
  var sample_1 = __importDefault(require("lodash/sample"));
@@ -513,11 +513,12 @@ function parseAppSearch(query) {
513
513
  dependency: dependency
514
514
  };
515
515
  }
516
- function openImplicitSpeculos(query) {
516
+ function createImplicitSpeculos(query) {
517
517
  return __awaiter(this, void 0, void 0, function () {
518
- var coinapps, seed, apps, match, _a, search, dependency, appName, appCandidate, device, _b;
519
- return __generator(this, function (_c) {
520
- switch (_c.label) {
518
+ var coinapps, seed, apps, match, _a, search, dependency, appName, appCandidate, _b;
519
+ var _c;
520
+ return __generator(this, function (_d) {
521
+ switch (_d.label) {
521
522
  case 0:
522
523
  coinapps = (0, env_1.getEnv)("COINAPPS");
523
524
  (0, invariant_1["default"])(coinapps, "COINAPPS folder is missing!");
@@ -525,7 +526,7 @@ function openImplicitSpeculos(query) {
525
526
  (0, invariant_1["default"])(seed, "SEED is missing!");
526
527
  return [4 /*yield*/, listAppCandidates(coinapps)];
527
528
  case 1:
528
- apps = _c.sent();
529
+ apps = _d.sent();
529
530
  match = parseAppSearch(query);
530
531
  (0, invariant_1["default"])(match, "speculos: invalid format of '%s'. Usage example: speculos:nanoS:bitcoin@1.3.x", query);
531
532
  _a = match, search = _a.search, dependency = _a.dependency, appName = _a.appName;
@@ -533,16 +534,31 @@ function openImplicitSpeculos(query) {
533
534
  (0, invariant_1["default"])(appCandidate, "could not find an app that matches '%s'", query);
534
535
  (0, logs_1.log)("speculos", "using app " + (0, formatters_1.formatAppCandidate)(appCandidate));
535
536
  if (!appCandidate) return [3 /*break*/, 3];
537
+ _c = {};
536
538
  return [4 /*yield*/, createSpeculosDevice(__assign(__assign({}, appCandidate), { coinapps: coinapps, appName: appName, dependency: dependency, seed: seed }))];
537
539
  case 2:
538
- _b = _c.sent();
540
+ _b = (_c.device = _d.sent(),
541
+ _c.appCandidate = appCandidate,
542
+ _c);
539
543
  return [3 /*break*/, 4];
540
544
  case 3:
541
545
  _b = null;
542
- _c.label = 4;
543
- case 4:
544
- device = _b;
545
- return [2 /*return*/, device === null || device === void 0 ? void 0 : device.transport];
546
+ _d.label = 4;
547
+ case 4: return [2 /*return*/, _b];
548
+ }
549
+ });
550
+ });
551
+ }
552
+ exports.createImplicitSpeculos = createImplicitSpeculos;
553
+ function openImplicitSpeculos(query) {
554
+ return __awaiter(this, void 0, void 0, function () {
555
+ var r;
556
+ return __generator(this, function (_a) {
557
+ switch (_a.label) {
558
+ case 0: return [4 /*yield*/, createImplicitSpeculos(query)];
559
+ case 1:
560
+ r = _a.sent();
561
+ return [2 /*return*/, r === null || r === void 0 ? void 0 : r.device.transport];
546
562
  }
547
563
  });
548
564
  });
@@ -1 +1 @@
1
- {"version":3,"file":"speculos.js","sourceRoot":"","sources":["../../src/load/speculos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speculos.js","sourceRoot":"","sources":["../../src/load/speculos.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "type": "git",
9
9
  "url": "https://github.com/LedgerHQ/ledger-live-common"
10
10
  },
11
- "version": "21.32.1",
11
+ "version": "21.32.2",
12
12
  "main": "lib/index.js",
13
13
  "types": "lib/index.d.ts",
14
14
  "license": "Apache-2.0",
@@ -46,28 +46,30 @@
46
46
  "@celo/wallet-base": "^1.5.1",
47
47
  "@celo/wallet-ledger": "^1.5.1",
48
48
  "@crypto-com/chain-jslib": "0.0.19",
49
+ "@ethereumjs/common": "^2.6.0",
50
+ "@ethereumjs/tx": "^3.4.0",
49
51
  "@ledgerhq/compressjs": "1.3.2",
50
- "@ledgerhq/cryptoassets": "6.24.0",
51
- "@ledgerhq/devices": "6.20.2",
52
+ "@ledgerhq/cryptoassets": "6.24.1",
53
+ "@ledgerhq/devices": "6.24.1",
52
54
  "@ledgerhq/errors": "6.10.0",
53
- "@ledgerhq/hw-app-algorand": "6.24.0",
54
- "@ledgerhq/hw-app-btc": "6.24.0",
55
- "@ledgerhq/hw-app-cosmos": "6.20.0",
56
- "@ledgerhq/hw-app-eth": "6.24.0",
57
- "@ledgerhq/hw-app-polkadot": "6.20.0",
58
- "@ledgerhq/hw-app-solana": "^6.20.0",
59
- "@ledgerhq/hw-app-str": "6.20.0",
60
- "@ledgerhq/hw-app-tezos": "6.20.0",
61
- "@ledgerhq/hw-app-trx": "6.20.0",
62
- "@ledgerhq/hw-app-xrp": "6.20.0",
63
- "@ledgerhq/hw-transport": "6.20.0",
64
- "@ledgerhq/hw-transport-mocker": "6.20.0",
65
- "@ledgerhq/hw-transport-node-speculos": "6.20.0",
55
+ "@ledgerhq/hw-app-algorand": "6.24.1",
56
+ "@ledgerhq/hw-app-btc": "6.24.1",
57
+ "@ledgerhq/hw-app-cosmos": "6.24.1",
58
+ "@ledgerhq/hw-app-eth": "6.24.1",
59
+ "@ledgerhq/hw-app-polkadot": "6.24.1",
60
+ "@ledgerhq/hw-app-solana": "^6.24.1",
61
+ "@ledgerhq/hw-app-str": "6.24.1",
62
+ "@ledgerhq/hw-app-tezos": "6.24.1",
63
+ "@ledgerhq/hw-app-trx": "6.24.1",
64
+ "@ledgerhq/hw-app-xrp": "6.24.1",
65
+ "@ledgerhq/hw-transport": "6.24.1",
66
+ "@ledgerhq/hw-transport-mocker": "6.24.1",
67
+ "@ledgerhq/hw-transport-node-speculos": "6.24.1",
66
68
  "@ledgerhq/json-bignumber": "^1.1.0",
67
69
  "@ledgerhq/live-app-sdk": "^0.2.0",
68
70
  "@ledgerhq/logs": "6.10.0",
69
- "@polkadot/types": "6.11.1",
70
- "@polkadot/types-known": "6.11.1",
71
+ "@polkadot/types": "7.4.1",
72
+ "@polkadot/types-known": "7.4.1",
71
73
  "@solana/spl-token": "^0.1.8",
72
74
  "@solana/web3.js": "^1.32.0",
73
75
  "@taquito/ledger-signer": "stablelib",
@@ -89,7 +91,6 @@
89
91
  "bip32-path": "^0.4.2",
90
92
  "bip39": "^3.0.4",
91
93
  "bitcoinjs-lib": "^5.2.0",
92
- "bitcore-lib-cash": "^8.25.25",
93
94
  "blake-hash": "^2.0.0",
94
95
  "bs58": "^4.0.1",
95
96
  "bs58check": "^2.1.2",
@@ -101,8 +102,6 @@
101
102
  "eip55": "^2.1.0",
102
103
  "eth-sig-util": "3.0.1",
103
104
  "ethereumjs-abi": "^0.6.8",
104
- "ethereumjs-common": "^1.5.2",
105
- "ethereumjs-tx": "^2.1.2",
106
105
  "ethereumjs-util": "^7.1.3",
107
106
  "expect": "^27.4.6",
108
107
  "generic-pool": "^3.8.2",
@@ -852,7 +852,6 @@ Array [
852
852
  "bc1q73ngvy3pxn92d5zx8pwdxwelczqk5r9ceyka8a",
853
853
  "bc1qhzzzm86w9j5fvhr4pql303ehrhqnzk63npc0ge",
854
854
  "bc1qyanx2ql0yjxuzhaqe7tkqj5spx548sv04mpyfq",
855
- "bc1qyanx2ql0yjxuzhaqe7tkqj5spx548sv04mpyfq",
856
855
  ],
857
856
  "standard": undefined,
858
857
  "tokenId": undefined,
@@ -1176,7 +1175,6 @@ Array [
1176
1175
  ],
1177
1176
  "senders": Array [
1178
1177
  "bc1q9m02yv9c53enxk247lxkgj5dgn6hm27f0rc34p",
1179
- "bc1q9m02yv9c53enxk247lxkgj5dgn6hm27f0rc34p",
1180
1178
  ],
1181
1179
  "standard": undefined,
1182
1180
  "tokenId": undefined,
@@ -1670,7 +1668,6 @@ Array [
1670
1668
  "bc1qkq3uad6kyje3sh4eqvlgudnzp2xc4y27maep7e",
1671
1669
  "bc1qsckgz236lhuh42v6nfrky4fn3hs9crhguw3cyl",
1672
1670
  "bc1q38wn8h2rxn56f02lulkyjantegnr7906ej0gdh",
1673
- "bc1q38wn8h2rxn56f02lulkyjantegnr7906ej0gdh",
1674
1671
  "bc1qff6tj478qzr6gl30pmfvy3h09ev20ta4x6y8sd",
1675
1672
  ],
1676
1673
  "standard": undefined,
@@ -2958,7 +2955,6 @@ Array [
2958
2955
  "bc1qwqfns0rs5zxrrwf80k4xlp4lpnuyc69feh2r3d",
2959
2956
  "bc1qpjgn3l5g6j8ry3jkfdwytxdd022ss4gxsll2pp",
2960
2957
  "bc1qq42nl3tdcl7zfgkvpa6fm7r899emv7n5ap7tup",
2961
- "bc1qq42nl3tdcl7zfgkvpa6fm7r899emv7n5ap7tup",
2962
2958
  ],
2963
2959
  "standard": undefined,
2964
2960
  "tokenId": undefined,
@@ -5710,7 +5706,6 @@ Array [
5710
5706
  ],
5711
5707
  "senders": Array [
5712
5708
  "bc1q9m02yv9c53enxk247lxkgj5dgn6hm27f0rc34p",
5713
- "bc1q9m02yv9c53enxk247lxkgj5dgn6hm27f0rc34p",
5714
5709
  ],
5715
5710
  "standard": undefined,
5716
5711
  "tokenId": undefined,
@@ -7133,8 +7128,6 @@ Array [
7133
7128
  "senders": Array [
7134
7129
  "1B9ib6VK7ZoZ74nCHjktFnV7G1tdrXEd41",
7135
7130
  "1Q8hwXu7Tw551AR3zYf72gZ8pAJpUXFNDY",
7136
- "1B9ib6VK7ZoZ74nCHjktFnV7G1tdrXEd41",
7137
- "1B9ib6VK7ZoZ74nCHjktFnV7G1tdrXEd41",
7138
7131
  "19zHW8VQ6MZsKWQfzwgPca4qfVLaKgDY4Q",
7139
7132
  "1NhBVwi2tWFh3yWmTUSG73NnTXiBbunoig",
7140
7133
  ],
@@ -9694,7 +9687,6 @@ Array [
9694
9687
  "bc1qwqfns0rs5zxrrwf80k4xlp4lpnuyc69feh2r3d",
9695
9688
  "bc1qpjgn3l5g6j8ry3jkfdwytxdd022ss4gxsll2pp",
9696
9689
  "bc1qq42nl3tdcl7zfgkvpa6fm7r899emv7n5ap7tup",
9697
- "bc1qq42nl3tdcl7zfgkvpa6fm7r899emv7n5ap7tup",
9698
9690
  ],
9699
9691
  "standard": undefined,
9700
9692
  "tokenId": undefined,
@@ -9991,8 +9983,6 @@ Array [
9991
9983
  "senders": Array [
9992
9984
  "1B9ib6VK7ZoZ74nCHjktFnV7G1tdrXEd41",
9993
9985
  "1Q8hwXu7Tw551AR3zYf72gZ8pAJpUXFNDY",
9994
- "1B9ib6VK7ZoZ74nCHjktFnV7G1tdrXEd41",
9995
- "1B9ib6VK7ZoZ74nCHjktFnV7G1tdrXEd41",
9996
9986
  "19zHW8VQ6MZsKWQfzwgPca4qfVLaKgDY4Q",
9997
9987
  "1NhBVwi2tWFh3yWmTUSG73NnTXiBbunoig",
9998
9988
  ],
@@ -11209,7 +11199,6 @@ Array [
11209
11199
  "bc1qkq3uad6kyje3sh4eqvlgudnzp2xc4y27maep7e",
11210
11200
  "bc1qsckgz236lhuh42v6nfrky4fn3hs9crhguw3cyl",
11211
11201
  "bc1q38wn8h2rxn56f02lulkyjantegnr7906ej0gdh",
11212
- "bc1q38wn8h2rxn56f02lulkyjantegnr7906ej0gdh",
11213
11202
  "bc1qff6tj478qzr6gl30pmfvy3h09ev20ta4x6y8sd",
11214
11203
  ],
11215
11204
  "standard": undefined,
@@ -13465,7 +13454,6 @@ Array [
13465
13454
  ],
13466
13455
  "senders": Array [
13467
13456
  "SfbEne7vYyByW6XAcHDJCqFGHAHp9XUUnk",
13468
- "SfbEne7vYyByW6XAcHDJCqFGHAHp9XUUnk",
13469
13457
  ],
13470
13458
  "standard": undefined,
13471
13459
  "tokenId": undefined,
@@ -18477,7 +18465,6 @@ Array [
18477
18465
  "RJXH5iiDG9GGP3uFN4y9nZznWm4H7WRpZr",
18478
18466
  "RNBip2PqrD9xhkoK613VptMqjfS1Sdwa2p",
18479
18467
  "RQeZqrkJuGpv3nCF3QriSUt7b7zRaE2WDj",
18480
- "RQeZqrkJuGpv3nCF3QriSUt7b7zRaE2WDj",
18481
18468
  "RHQeF3BUrN1ub5PqdQhWTAbJB2pv7xukML",
18482
18469
  "RKSuhHTzgmc5gnFDCdSJt3U8HWeNYnPuK6",
18483
18470
  "RRmshus5KvRKRY1oT56imffSFuxPUPS7s1",
@@ -18975,7 +18962,6 @@ Array [
18975
18962
  "senders": Array [
18976
18963
  "RLYGtUx7btUCBVZXu7NNYWZ7b8sBAuPrYw",
18977
18964
  "RSwtr8GTRhb7DaMxLxsHpJtSwKVvgQykMV",
18978
- "RSwtr8GTRhb7DaMxLxsHpJtSwKVvgQykMV",
18979
18965
  "RWcX7eETAYi5kY6tdnFUnB2Ym91ys8nDS3",
18980
18966
  "RL9A3qSt1sFmN53CFhgmgVfbqNcEQr3vb9",
18981
18967
  "RSLN3e8R5EAxxpQrTo7DnA28GS1vWWdMrg",
@@ -21624,7 +21610,6 @@ Array [
21624
21610
  "RJXH5iiDG9GGP3uFN4y9nZznWm4H7WRpZr",
21625
21611
  "RNBip2PqrD9xhkoK613VptMqjfS1Sdwa2p",
21626
21612
  "RQeZqrkJuGpv3nCF3QriSUt7b7zRaE2WDj",
21627
- "RQeZqrkJuGpv3nCF3QriSUt7b7zRaE2WDj",
21628
21613
  "RHQeF3BUrN1ub5PqdQhWTAbJB2pv7xukML",
21629
21614
  "RKSuhHTzgmc5gnFDCdSJt3U8HWeNYnPuK6",
21630
21615
  "RRmshus5KvRKRY1oT56imffSFuxPUPS7s1",
@@ -23091,7 +23076,6 @@ Array [
23091
23076
  ],
23092
23077
  "senders": Array [
23093
23078
  "ltc1qpx9fcj5qht64vymj469cfyun73tllcch7qeuwq",
23094
- "ltc1qpx9fcj5qht64vymj469cfyun73tllcch7qeuwq",
23095
23079
  ],
23096
23080
  "standard": undefined,
23097
23081
  "tokenId": undefined,
@@ -23115,7 +23099,6 @@ Array [
23115
23099
  ],
23116
23100
  "senders": Array [
23117
23101
  "ltc1qpx9fcj5qht64vymj469cfyun73tllcch7qeuwq",
23118
- "ltc1qpx9fcj5qht64vymj469cfyun73tllcch7qeuwq",
23119
23102
  ],
23120
23103
  "standard": undefined,
23121
23104
  "tokenId": undefined,
@@ -24010,7 +23993,6 @@ Array [
24010
23993
  "LRSwoGzTUJicczVJq9UzGG5GAdFg7BkDRn",
24011
23994
  ],
24012
23995
  "senders": Array [
24013
- "MFjxjn5xQxwyaq6TG8iTsQtDuYxrRoFNUP",
24014
23996
  "MFjxjn5xQxwyaq6TG8iTsQtDuYxrRoFNUP",
24015
23997
  "MGzg47wRQzhznkqa2zfFMeP6pgtnBx5jox",
24016
23998
  ],
@@ -24947,7 +24929,6 @@ Array [
24947
24929
  "LRSwoGzTUJicczVJq9UzGG5GAdFg7BkDRn",
24948
24930
  ],
24949
24931
  "senders": Array [
24950
- "MFjxjn5xQxwyaq6TG8iTsQtDuYxrRoFNUP",
24951
24932
  "MFjxjn5xQxwyaq6TG8iTsQtDuYxrRoFNUP",
24952
24933
  "MGzg47wRQzhznkqa2zfFMeP6pgtnBx5jox",
24953
24934
  ],
@@ -26644,7 +26625,6 @@ Array [
26644
26625
  "QandudfUt26efFQJ8KkUgadiiWUBEbFmtb",
26645
26626
  "QUte92ZdeDrscFk369jJNWMeUyMwj6fz21",
26646
26627
  "QgFuPJMkucK8mvFdMi2hUENpCervNY9dBt",
26647
- "QgFuPJMkucK8mvFdMi2hUENpCervNY9dBt",
26648
26628
  "QUMmwEdDC2ps2HRetdaboLeakSCWyCK4ja",
26649
26629
  ],
26650
26630
  "standard": undefined,
@@ -28598,7 +28578,6 @@ Array [
28598
28578
  "QandudfUt26efFQJ8KkUgadiiWUBEbFmtb",
28599
28579
  "QUte92ZdeDrscFk369jJNWMeUyMwj6fz21",
28600
28580
  "QgFuPJMkucK8mvFdMi2hUENpCervNY9dBt",
28601
- "QgFuPJMkucK8mvFdMi2hUENpCervNY9dBt",
28602
28581
  "QUMmwEdDC2ps2HRetdaboLeakSCWyCK4ja",
28603
28582
  ],
28604
28583
  "standard": undefined,
@@ -31722,7 +31701,6 @@ Array [
31722
31701
  ],
31723
31702
  "senders": Array [
31724
31703
  "Vhbc9ZzzH89S8fkEbqRWuatEzwPCRf3Uyp",
31725
- "Vhbc9ZzzH89S8fkEbqRWuatEzwPCRf3Uyp",
31726
31704
  ],
31727
31705
  "standard": undefined,
31728
31706
  "tokenId": undefined,
@@ -32003,7 +31981,6 @@ Array [
32003
31981
  ],
32004
31982
  "senders": Array [
32005
31983
  "Vhbc9ZzzH89S8fkEbqRWuatEzwPCRf3Uyp",
32006
- "Vhbc9ZzzH89S8fkEbqRWuatEzwPCRf3Uyp",
32007
31984
  ],
32008
31985
  "standard": undefined,
32009
31986
  "tokenId": undefined,
@@ -0,0 +1,47 @@
1
+ import { DerivationModes } from "../../../../families/bitcoin/wallet-btc";
2
+ import BitcoinLikeStorage from "../../../../families/bitcoin/wallet-btc/storage";
3
+ import BitcoinLikeExplorer from "../../../../families/bitcoin/wallet-btc/explorer";
4
+ import Xpub from "../../../../families/bitcoin/wallet-btc/xpub";
5
+ import coininfo from "coininfo";
6
+ import BCHCrypto from "../../../../families/bitcoin/wallet-btc/crypto/bitcoincash";
7
+ import BTCCrypto from "../../../../families/bitcoin/wallet-btc/crypto/bitcoin";
8
+
9
+ describe("Unit tests for getAddress", () => {
10
+ it("Test getAddress for bch and btc", async () => {
11
+ const bchCrypto = new BCHCrypto({
12
+ network: coininfo.bitcoincash.main.toBitcoinJS(),
13
+ });
14
+ const btcCrypto = new BTCCrypto({
15
+ network: coininfo.bitcoin.main.toBitcoinJS(),
16
+ });
17
+ const bchxpub = new Xpub({
18
+ storage: new BitcoinLikeStorage(),
19
+ explorer: new BitcoinLikeExplorer({
20
+ explorerURI: "https://explorers.api.vault.ledger.com/blockchain/v3/bch",
21
+ explorerVersion: "v3",
22
+ }),
23
+ crypto: bchCrypto,
24
+ xpub: "xpub6BtWBf3Pu6hYwJBKvEwG7JtrTxxDrSGy39HaTgZz6GTSaFWFdoCtuEXSQtoKGaYdz1emg8xTXKYwjhu3xXRPzFnYS1z4yjKj7hLDQyNeDZr",
25
+ derivationMode: DerivationModes.LEGACY,
26
+ });
27
+ await bchxpub.syncAddress(0, 0);
28
+ let addresses = await bchxpub.getXpubAddresses();
29
+ expect(addresses[0].address).toEqual(
30
+ "bitcoincash:qrgwhfg7tn4xs9pg2vu5rhkud490j9yfnqd63uk64m"
31
+ );
32
+
33
+ const btcxpub = new Xpub({
34
+ storage: new BitcoinLikeStorage(),
35
+ explorer: new BitcoinLikeExplorer({
36
+ explorerURI: "https://explorers.api.vault.ledger.com/blockchain/v3/btc",
37
+ explorerVersion: "v3",
38
+ }),
39
+ crypto: btcCrypto,
40
+ xpub: "xpub6BtWBf3Pu6hYwJBKvEwG7JtrTxxDrSGy39HaTgZz6GTSaFWFdoCtuEXSQtoKGaYdz1emg8xTXKYwjhu3xXRPzFnYS1z4yjKj7hLDQyNeDZr",
41
+ derivationMode: DerivationModes.LEGACY,
42
+ });
43
+ await btcxpub.syncAddress(0, 0);
44
+ addresses = await btcxpub.getXpubAddresses();
45
+ expect(addresses[0].address).toEqual("1L3fqoWstvLqEA6TgXkuLoXX8xG1xhirG3");
46
+ }, 60000);
47
+ });
package/src/bot/engine.ts CHANGED
@@ -81,6 +81,9 @@ export async function runWithAppSpec<T extends Transaction>(
81
81
  const mutationReports: MutationReport<T>[] = [];
82
82
  const { appQuery, currency, dependency } = spec;
83
83
  const appCandidate = findAppCandidate(appCandidates, appQuery);
84
+ if (!appCandidate) {
85
+ console.warn("no app found for " + spec.name, { appQuery, appCandidates });
86
+ }
84
87
  invariant(
85
88
  appCandidate,
86
89
  "%s: no app found. Are you sure your COINAPPS is up to date?",
@@ -32,7 +32,27 @@ const fundProviders: Record<
32
32
  curve: string;
33
33
  }
34
34
  > = {
35
- // FIXME: no prod provider for now
35
+ baanx: {
36
+ /**
37
+ * nameAndPubkey is the concatenation of:
38
+ * - an empty buffer of the size of the partner name
39
+ * - a buffer created from the partner name string in ascii encoding
40
+ * - a buffer created from the hexadecimal version of the partner public key
41
+ */
42
+ nameAndPubkey: Buffer.concat([
43
+ Buffer.from([5]),
44
+ Buffer.from("Baanx", "ascii"),
45
+ Buffer.from(
46
+ "04551878b446b6a711949fa51cc5a8685602f8ffb1dfd08f6ab869019d7c125d7737a79e8b5022d860ec7dfbe062d510fec3b5fe0f6ebb1f5e55a074bb7e5dbc4e",
47
+ "hex"
48
+ ),
49
+ ]),
50
+ signature: Buffer.from(
51
+ "304402200345c39e93a22c5ac3f1e70f8b9938b3a60d3a4906067443cf11095af0e685a502201ee5d88dd5539ce36341e49e2505c2a1659e26d8ff08801ed33c50a9126aedd1",
52
+ "hex"
53
+ ),
54
+ curve: "secp256r1",
55
+ },
36
56
  };
37
57
 
38
58
  const getProvider = (
@@ -1,6 +1,5 @@
1
1
  import { encode as msgpackEncode } from "algo-msgpack-with-bigint";
2
2
  import type {
3
- SuggestedParams as AlgoSuggestedParams,
4
3
  Transaction as AlgoTransaction,
5
4
  EncodedTransaction as AlgoTransactionPayload,
6
5
  EncodedSignedTransaction as AlgoSignedTransactionPayload,
@@ -28,8 +27,7 @@ export const buildTransactionPayload = async (
28
27
 
29
28
  const note = memo ? new TextEncoder().encode(memo) : undefined;
30
29
 
31
- // Minor hack: cast the result as a algosdk.SuggestedParams, while it's actually a TransactionParametersResponse
32
- const params = (await getTransactionParams()) as AlgoSuggestedParams;
30
+ const params = await getTransactionParams();
33
31
 
34
32
  let algoTxn: AlgoTransaction;
35
33
  if (subAccount || (assetId && mode === "optIn")) {
@@ -78,18 +76,16 @@ export const buildTransactionPayload = async (
78
76
  return sorted;
79
77
  };
80
78
 
81
- export const encodeToSign = async (
82
- payload: AlgoTransactionPayload
83
- ): Promise<string> => {
79
+ export const encodeToSign = (payload: AlgoTransactionPayload): string => {
84
80
  const msgPackEncoded = msgpackEncode(payload);
85
81
 
86
82
  return Buffer.from(msgPackEncoded).toString("hex");
87
83
  };
88
84
 
89
- export const encodeToBroadcast = async (
85
+ export const encodeToBroadcast = (
90
86
  payload: AlgoTransactionPayload,
91
87
  signature: Buffer
92
- ): Promise<Buffer> => {
88
+ ): Buffer => {
93
89
  const signedPayload: AlgoSignedTransactionPayload = {
94
90
  sig: signature,
95
91
  txn: payload,
@@ -17,7 +17,7 @@ export const getEstimatedFees = async (
17
17
  let suggestedFees = 0;
18
18
  if (params.fee) {
19
19
  const payload = await buildTransactionPayload(account, transaction);
20
- const encoded = await encodeToSign(payload);
20
+ const encoded = encodeToSign(payload);
21
21
  suggestedFees =
22
22
  params.fee * (Buffer.from(encoded, "hex").length + SINGLE_SIGNATURE_SIZE);
23
23
  }
@@ -36,7 +36,7 @@ export const signOperation = ({
36
36
 
37
37
  const algoTx = await buildTransactionPayload(account, transaction);
38
38
 
39
- const toSign = await encodeToSign(algoTx);
39
+ const toSign = encodeToSign(algoTx);
40
40
 
41
41
  const hwApp = new Algorand(transport);
42
42
  const { freshAddressPath } = account;
@@ -53,7 +53,7 @@ export const signOperation = ({
53
53
  throw new Error("No signature");
54
54
  }
55
55
 
56
- const toBroadcast = await encodeToBroadcast(algoTx, signature);
56
+ const toBroadcast = encodeToBroadcast(algoTx, signature);
57
57
 
58
58
  const operation = buildOptimisticOperation(account, transaction);
59
59
 
@@ -291,6 +291,7 @@ const getAccountShape: GetAccountShape = async (
291
291
 
292
292
  const shape = {
293
293
  id: accountId,
294
+ xpub: address,
294
295
  blockHeight: round,
295
296
  balance,
296
297
  spendableBalance,
@@ -32,7 +32,7 @@ const signOperation = ({
32
32
  try {
33
33
  log("hw", `signTransaction ${currency.id} for account ${account.id}`);
34
34
  const txInfo = await buildTransaction(account, transaction);
35
- let senders: string[] = [];
35
+ let senders = new Set<string>();
36
36
  let recipients: string[] = [];
37
37
  let fee = new BigNumber(0);
38
38
  // Maybe better not re-calculate these fields here, instead include them
@@ -41,9 +41,7 @@ const signOperation = ({
41
41
  account,
42
42
  transaction,
43
43
  }).then((res) => {
44
- senders = res.txInputs
45
- .map((i) => i.address)
46
- .filter(Boolean) as string[];
44
+ senders = new Set(res.txInputs.map((i) => i.address).filter(Boolean));
47
45
  recipients = res.txOutputs
48
46
  .filter((o) => o.address && !o.isChange)
49
47
  .map((o) => o.address) as string[];
@@ -140,7 +138,7 @@ const signOperation = ({
140
138
  fee,
141
139
  blockHash: null,
142
140
  blockHeight: null,
143
- senders,
141
+ senders: Array.from(senders),
144
142
  recipients,
145
143
  accountId: account.id,
146
144
  date: new Date(),