@ledgerhq/live-common 27.1.0-next.4 → 27.1.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.
@@ -1 +1 @@
1
- {"version":3,"file":"useBleDevicePairing.d.ts","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicePairing.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,oBAAY,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE3C,oBAAY,yBAAyB,GAAG;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,kBAE7B,uBAAuB,KAAG,yBAsB5B,CAAC"}
1
+ {"version":3,"file":"useBleDevicePairing.d.ts","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicePairing.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,oBAAY,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE3C,oBAAY,yBAAyB,GAAG;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,kBAE7B,uBAAuB,KAAG,yBA0B5B,CAAC"}
@@ -40,7 +40,7 @@ var useBleDevicePairing = function (_a) {
40
40
  var requestObservable = (0, deviceAccess_1.withDevice)(deviceId)(function (t) {
41
41
  return (0, rxjs_1.from)((0, getVersion_1["default"])(t));
42
42
  }).pipe((0, operators_1.first)());
43
- requestObservable.subscribe({
43
+ var sub = requestObservable.subscribe({
44
44
  next: function (_value) {
45
45
  setIsPaired(true);
46
46
  setPairingError(null);
@@ -50,6 +50,9 @@ var useBleDevicePairing = function (_a) {
50
50
  setPairingError(error);
51
51
  }
52
52
  });
53
+ return function () {
54
+ sub.unsubscribe();
55
+ };
53
56
  }, [deviceId]);
54
57
  return { isPaired: isPaired, pairingError: pairingError };
55
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useBleDevicePairing.js","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicePairing.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA4C;AAC5C,6BAA4B;AAC5B,4CAAuC;AAEvC,sDAAmD;AACnD,mEAA6C;AAc7C;;;;;;GAMG;AACI,IAAM,mBAAmB,GAAG,UAAC,EAEV;QADxB,QAAQ,cAAA;IAEF,IAAA,KAAA,OAA0B,IAAA,gBAAQ,EAAU,KAAK,CAAC,IAAA,EAAjD,QAAQ,QAAA,EAAE,WAAW,QAA4B,CAAC;IACnD,IAAA,KAAA,OAAkC,IAAA,gBAAQ,EAAe,IAAI,CAAC,IAAA,EAA7D,YAAY,QAAA,EAAE,eAAe,QAAgC,CAAC;IAErE,IAAA,iBAAS,EAAC;QACR,IAAM,iBAAiB,GAAG,IAAA,yBAAU,EAAC,QAAQ,CAAC,CAAC,UAAC,CAAC;YAC/C,OAAA,IAAA,WAAI,EAAC,IAAA,uBAAU,EAAC,CAAC,CAAC,CAAC;QAAnB,CAAmB,CACpB,CAAC,IAAI,CAAC,IAAA,iBAAK,GAAE,CAAC,CAAC;QAEhB,iBAAiB,CAAC,SAAS,CAAC;YAC1B,IAAI,EAAE,UAAC,MAAoB;gBACzB,WAAW,CAAC,IAAI,CAAC,CAAC;gBAClB,eAAe,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;YACD,KAAK,EAAE,UAAC,KAAe;gBACrB,WAAW,CAAC,KAAK,CAAC,CAAC;gBACnB,eAAe,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,EAAE,QAAQ,UAAA,EAAE,YAAY,cAAA,EAAE,CAAC;AACpC,CAAC,CAAC;AAxBW,QAAA,mBAAmB,uBAwB9B"}
1
+ {"version":3,"file":"useBleDevicePairing.js","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicePairing.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA4C;AAC5C,6BAA4B;AAC5B,4CAAuC;AAEvC,sDAAmD;AACnD,mEAA6C;AAc7C;;;;;;GAMG;AACI,IAAM,mBAAmB,GAAG,UAAC,EAEV;QADxB,QAAQ,cAAA;IAEF,IAAA,KAAA,OAA0B,IAAA,gBAAQ,EAAU,KAAK,CAAC,IAAA,EAAjD,QAAQ,QAAA,EAAE,WAAW,QAA4B,CAAC;IACnD,IAAA,KAAA,OAAkC,IAAA,gBAAQ,EAAe,IAAI,CAAC,IAAA,EAA7D,YAAY,QAAA,EAAE,eAAe,QAAgC,CAAC;IAErE,IAAA,iBAAS,EAAC;QACR,IAAM,iBAAiB,GAAG,IAAA,yBAAU,EAAC,QAAQ,CAAC,CAAC,UAAC,CAAC;YAC/C,OAAA,IAAA,WAAI,EAAC,IAAA,uBAAU,EAAC,CAAC,CAAC,CAAC;QAAnB,CAAmB,CACpB,CAAC,IAAI,CAAC,IAAA,iBAAK,GAAE,CAAC,CAAC;QAEhB,IAAM,GAAG,GAAG,iBAAiB,CAAC,SAAS,CAAC;YACtC,IAAI,EAAE,UAAC,MAAoB;gBACzB,WAAW,CAAC,IAAI,CAAC,CAAC;gBAClB,eAAe,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;YACD,KAAK,EAAE,UAAC,KAAe;gBACrB,WAAW,CAAC,KAAK,CAAC,CAAC;gBACnB,eAAe,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;SACF,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,EAAE,QAAQ,UAAA,EAAE,YAAY,cAAA,EAAE,CAAC;AACpC,CAAC,CAAC;AA5BW,QAAA,mBAAmB,uBA4B9B"}
@@ -1,5 +1,6 @@
1
1
  import type { DeviceModelId } from "@ledgerhq/types-devices";
2
2
  import type { Observer as TransportObserver, Subscription as TransportSubscription, DescriptorEvent } from "@ledgerhq/hw-transport";
3
+ import { DeviceId } from "@ledgerhq/types-live";
3
4
  import { TransportBleDevice, ScannedDevice, BleError } from "../types";
4
5
  export declare type ScanningBleError = BleError | null;
5
6
  export declare type UseBleDevicesScanningResult = {
@@ -11,15 +12,17 @@ export declare type UseBleDevicesScanningDependencies = {
11
12
  };
12
13
  export declare type UseBleDevicesScanningOptions = {
13
14
  stopBleScanning?: boolean;
14
- filterByModelIds?: DeviceModelId[];
15
+ filterByDeviceModelIds?: DeviceModelId[];
16
+ filterOutDevicesByDeviceIds?: DeviceId[];
15
17
  };
16
18
  /**
17
19
  * Scans the BLE devices around the user
18
- * @param filterByModelIds An array of model ids to filter on
20
+ * @param filterByDeviceModelIds An array of device model ids to filter on
21
+ * @param filterOutDevicesByDeviceIds An array of device ids to filter out
19
22
  * @param stopBleScanning Flag to stop or continue the scanning
20
23
  * @returns An object containing:
21
24
  * - scannedDevices: list of ScannedDevice found by the scanning
22
25
  * - scanningBleError: if an error occurred, a BleError, otherwise null
23
26
  */
24
- export declare const useBleDevicesScanning: ({ bleTransportListen, stopBleScanning, filterByModelIds, }: UseBleDevicesScanningDependencies & UseBleDevicesScanningOptions) => UseBleDevicesScanningResult;
27
+ export declare const useBleDevicesScanning: ({ bleTransportListen, stopBleScanning, filterByDeviceModelIds, filterOutDevicesByDeviceIds, }: UseBleDevicesScanningDependencies & UseBleDevicesScanningOptions) => UseBleDevicesScanningResult;
25
28
  //# sourceMappingURL=useBleDevicesScanning.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useBleDevicesScanning.d.ts","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicesScanning.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,QAAQ,IAAI,iBAAiB,EAC7B,YAAY,IAAI,qBAAqB,EACrC,eAAe,EAEhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEvE,oBAAY,gBAAgB,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE/C,oBAAY,2BAA2B,GAAG;IACxC,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,oBAAY,iCAAiC,GAAG;IAC9C,kBAAkB,EAAE,CAClB,QAAQ,EAAE,iBAAiB,CAAC,eAAe,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC,KACpE,qBAAqB,CAAC;CAC5B,CAAC;AAEF,oBAAY,4BAA4B,GAAG;IACzC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,aAAa,EAAE,CAAC;CACpC,CAAC;AAIF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,+DAI/B,iCAAiC,GAClC,4BAA4B,KAAG,2BAoGhC,CAAC"}
1
+ {"version":3,"file":"useBleDevicesScanning.d.ts","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicesScanning.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,QAAQ,IAAI,iBAAiB,EAC7B,YAAY,IAAI,qBAAqB,EACrC,eAAe,EAEhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEvE,oBAAY,gBAAgB,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE/C,oBAAY,2BAA2B,GAAG;IACxC,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,oBAAY,iCAAiC,GAAG;IAC9C,kBAAkB,EAAE,CAClB,QAAQ,EAAE,iBAAiB,CAAC,eAAe,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC,KACpE,qBAAqB,CAAC;CAC5B,CAAC;AAEF,oBAAY,4BAA4B,GAAG;IACzC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,sBAAsB,CAAC,EAAE,aAAa,EAAE,CAAC;IACzC,2BAA2B,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC1C,CAAC;AAIF;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,kGAK/B,iCAAiC,GAClC,4BAA4B,KAAG,2BA8GhC,CAAC"}
@@ -33,14 +33,15 @@ var devices_1 = require("@ledgerhq/devices");
33
33
  var DEFAULT_DEVICE_NAME = "Device";
34
34
  /**
35
35
  * Scans the BLE devices around the user
36
- * @param filterByModelIds An array of model ids to filter on
36
+ * @param filterByDeviceModelIds An array of device model ids to filter on
37
+ * @param filterOutDevicesByDeviceIds An array of device ids to filter out
37
38
  * @param stopBleScanning Flag to stop or continue the scanning
38
39
  * @returns An object containing:
39
40
  * - scannedDevices: list of ScannedDevice found by the scanning
40
41
  * - scanningBleError: if an error occurred, a BleError, otherwise null
41
42
  */
42
43
  var useBleDevicesScanning = function (_a) {
43
- var bleTransportListen = _a.bleTransportListen, stopBleScanning = _a.stopBleScanning, filterByModelIds = _a.filterByModelIds;
44
+ var bleTransportListen = _a.bleTransportListen, stopBleScanning = _a.stopBleScanning, filterByDeviceModelIds = _a.filterByDeviceModelIds, filterOutDevicesByDeviceIds = _a.filterOutDevicesByDeviceIds;
44
45
  var _b = __read((0, react_1.useState)(null), 2), scanningBleError = _b[0], setScanningBleError = _b[1];
45
46
  var _c = __read((0, react_1.useState)([]), 2), scannedDevices = _c[0], setScannedDevices = _c[1];
46
47
  // To check for duplicates. The ref will persist for the full lifetime of the component
@@ -68,6 +69,10 @@ var useBleDevicesScanning = function (_a) {
68
69
  if (isScannedDeviceDuplicate) {
69
70
  return;
70
71
  }
72
+ var shouldScannedDeviceBeFilteredOut = filterOutDevicesByDeviceIds === null || filterOutDevicesByDeviceIds === void 0 ? void 0 : filterOutDevicesByDeviceIds.some(function (deviceId) { return deviceId === transportDevice_1.id; });
73
+ if (shouldScannedDeviceBeFilteredOut) {
74
+ return;
75
+ }
71
76
  if (transportDevice_1.serviceUUIDs &&
72
77
  transportDevice_1.serviceUUIDs.length > 0) {
73
78
  var bleInfo = (0, devices_1.getInfosForServiceUuid)(transportDevice_1.serviceUUIDs[0]);
@@ -75,8 +80,8 @@ var useBleDevicesScanning = function (_a) {
75
80
  return;
76
81
  }
77
82
  // Filters on the model ids, if asked
78
- if (filterByModelIds &&
79
- !filterByModelIds.includes(bleInfo.deviceModel.id)) {
83
+ if (filterByDeviceModelIds &&
84
+ !filterByDeviceModelIds.includes(bleInfo.deviceModel.id)) {
80
85
  return;
81
86
  }
82
87
  var newScannedDevice_1 = {
@@ -105,8 +110,9 @@ var useBleDevicesScanning = function (_a) {
105
110
  }, [
106
111
  bleTransportListen,
107
112
  stopBleScanning,
108
- filterByModelIds,
113
+ filterByDeviceModelIds,
109
114
  setScannedDevices,
115
+ filterOutDevicesByDeviceIds,
110
116
  ]);
111
117
  return {
112
118
  scannedDevices: scannedDevices,
@@ -1 +1 @@
1
- {"version":3,"file":"useBleDevicesScanning.js","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicesScanning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBleDevicesScanning.js","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicesScanning.ts"],"names":[],"mappings":"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"}
@@ -131,7 +131,7 @@ describe("useBleDevicesScanning", function () {
131
131
  });
132
132
  }); });
133
133
  });
134
- describe("and when filterModelIds is not null", function () {
134
+ describe("and when filterByDeviceModelIds is not null", function () {
135
135
  it("should filter the scanning result by the given model ids", function () { return __awaiter(void 0, void 0, void 0, function () {
136
136
  var result;
137
137
  return __generator(this, function (_a) {
@@ -140,7 +140,7 @@ describe("useBleDevicesScanning", function () {
140
140
  result = (0, react_hooks_1.renderHook)(function () {
141
141
  return (0, useBleDevicesScanning_1.useBleDevicesScanning)({
142
142
  bleTransportListen: setupMockBleTransportListen(mockEmitValuesByObserver),
143
- filterByModelIds: [devices_1.DeviceModelId.nanoX]
143
+ filterByDeviceModelIds: [devices_1.DeviceModelId.nanoX]
144
144
  });
145
145
  }).result;
146
146
  // The first scanned device was a nanoX
@@ -175,6 +175,46 @@ describe("useBleDevicesScanning", function () {
175
175
  });
176
176
  }); });
177
177
  });
178
+ describe("and when filterOutDevicesByDeviceIds is not null nor empty", function () {
179
+ it("should not add the scanned device if its ids is in the array", function () { return __awaiter(void 0, void 0, void 0, function () {
180
+ var result;
181
+ return __generator(this, function (_a) {
182
+ switch (_a.label) {
183
+ case 0:
184
+ result = (0, react_hooks_1.renderHook)(function () {
185
+ return (0, useBleDevicesScanning_1.useBleDevicesScanning)({
186
+ bleTransportListen: setupMockBleTransportListen(mockEmitValuesByObserver),
187
+ filterOutDevicesByDeviceIds: [deviceIdA, deviceIdC]
188
+ });
189
+ }).result;
190
+ // The first scanned device (deviceIdA) should be filtered out
191
+ expect(result.current.scannedDevices).toHaveLength(0);
192
+ return [4 /*yield*/, (0, react_hooks_1.act)(function () { return __awaiter(void 0, void 0, void 0, function () {
193
+ return __generator(this, function (_a) {
194
+ jest.advanceTimersByTime(1000);
195
+ return [2 /*return*/];
196
+ });
197
+ }); })];
198
+ case 1:
199
+ _a.sent();
200
+ // The second scanned device is deviceIdB and should be kept
201
+ expect(result.current.scannedDevices).toHaveLength(1);
202
+ expect(result.current.scannedDevices[0].deviceId).toBe(deviceIdB);
203
+ return [4 /*yield*/, (0, react_hooks_1.act)(function () { return __awaiter(void 0, void 0, void 0, function () {
204
+ return __generator(this, function (_a) {
205
+ jest.advanceTimersByTime(1000);
206
+ return [2 /*return*/];
207
+ });
208
+ }); })];
209
+ case 2:
210
+ _a.sent();
211
+ // The third scanned device (deviceIdC) should be filtered out
212
+ expect(result.current.scannedDevices).toHaveLength(1);
213
+ return [2 /*return*/];
214
+ }
215
+ });
216
+ }); });
217
+ });
178
218
  describe("and when the hook consumer stops the scanning", function () {
179
219
  it("should stop the scanning", function () { return __awaiter(void 0, void 0, void 0, function () {
180
220
  var stopBleScanning, _a, result, rerender;
@@ -1 +1 @@
1
- {"version":3,"file":"useBleDevicesScanning.test.js","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicesScanning.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBleDevicesScanning.test.js","sourceRoot":"","sources":["../../../src/ble/hooks/useBleDevicesScanning.test.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,6 @@ interface AccountBannerState {
5
5
  validatorSrcAddress: string;
6
6
  ledgerValidator: CosmosValidatorItem | undefined;
7
7
  }
8
- export declare function getAccountBannerState(account: CosmosAccount): Promise<AccountBannerState>;
8
+ export declare function getAccountBannerState(account: CosmosAccount): AccountBannerState;
9
9
  export {};
10
10
  //# sourceMappingURL=banner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/families/cosmos/banner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAElE,UAAU,kBAAkB;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAClD;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAwE7B"}
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/families/cosmos/banner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAElE,UAAU,kBAAkB;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAClD;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,aAAa,GACrB,kBAAkB,CAiEpB"}
@@ -1,40 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
2
  var __read = (this && this.__read) || function (o, n) {
39
3
  var m = typeof Symbol === "function" && o[Symbol.iterator];
40
4
  if (!m) return o;
@@ -63,71 +27,62 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
63
27
  exports.__esModule = true;
64
28
  exports.getAccountBannerState = void 0;
65
29
  var preloadedData_1 = require("./preloadedData");
66
- var bridge_1 = require("../../bridge");
67
30
  var utils_1 = require("./utils");
31
+ var logic_1 = require("./logic");
68
32
  function getAccountBannerState(account) {
69
- return __awaiter(this, void 0, void 0, function () {
70
- var cosmosResources, delegationAddresses, redelegationAddresses, validatorAdresses, validators, ledgerValidator, worstValidator, _loop_1, i, redelegate, validatorSrcAddress, display, maxSpendable;
71
- return __generator(this, function (_a) {
72
- switch (_a.label) {
73
- case 0:
74
- cosmosResources = account.cosmosResources
75
- ? account.cosmosResources
76
- : { delegations: [], redelegations: [] };
77
- delegationAddresses = cosmosResources.delegations.map(function (delegation) {
78
- return delegation.validatorAddress;
79
- });
80
- redelegationAddresses = cosmosResources.redelegations.map(function (redelegation) {
81
- return redelegation.validatorDstAddress;
82
- });
83
- validatorAdresses = __spreadArray(__spreadArray([], __read(delegationAddresses), false), __read(redelegationAddresses), false);
84
- validators = (0, preloadedData_1.getCurrentCosmosPreloadData)().validators;
85
- ledgerValidator = validators.find(function (validator) { return validator.validatorAddress === utils_1.LEDGER_VALIDATOR_ADDRESS; });
86
- worstValidator = ledgerValidator;
87
- _loop_1 = function (i) {
88
- var validatorAdress = validatorAdresses[i];
89
- var validator = validators.find(function (validator) { return validator.validatorAddress === validatorAdress; });
90
- if (worstValidator &&
91
- validator &&
92
- worstValidator.commission < validator.commission) {
93
- worstValidator = validator;
94
- }
95
- };
96
- for (i = 0; i < validatorAdresses.length; i++) {
97
- _loop_1(i);
98
- }
99
- redelegate = false;
100
- validatorSrcAddress = "";
101
- display = false;
102
- if (!worstValidator) return [3 /*break*/, 3];
103
- if (!((worstValidator === null || worstValidator === void 0 ? void 0 : worstValidator.validatorAddress) === (ledgerValidator === null || ledgerValidator === void 0 ? void 0 : ledgerValidator.validatorAddress))) return [3 /*break*/, 2];
104
- return [4 /*yield*/, (0, bridge_1.getAccountBridge)(account, undefined).estimateMaxSpendable({
105
- account: account,
106
- parentAccount: undefined,
107
- transaction: undefined
108
- })];
109
- case 1:
110
- maxSpendable = _a.sent();
111
- if (maxSpendable.gt(0)) {
112
- // Delegate remaining ATOM (not staked)
113
- display = true;
114
- }
115
- return [3 /*break*/, 3];
116
- case 2:
117
- // Redelegate to the worst validator
118
- display = true;
119
- redelegate = true;
120
- validatorSrcAddress = worstValidator.validatorAddress;
121
- _a.label = 3;
122
- case 3: return [2 /*return*/, {
123
- display: display,
124
- redelegate: redelegate,
125
- validatorSrcAddress: validatorSrcAddress,
126
- ledgerValidator: ledgerValidator
127
- }];
128
- }
129
- });
33
+ // Group current validator
34
+ var cosmosResources = account.cosmosResources
35
+ ? account.cosmosResources
36
+ : { delegations: [], redelegations: [] };
37
+ var delegationAddresses = cosmosResources.delegations.map(function (delegation) {
38
+ return delegation.validatorAddress;
39
+ });
40
+ var redelegationAddresses = cosmosResources.redelegations.map(function (redelegation) {
41
+ return redelegation.validatorDstAddress;
130
42
  });
43
+ var validatorAdresses = __spreadArray(__spreadArray([], __read(delegationAddresses), false), __read(redelegationAddresses), false);
44
+ // Get ledger validator data
45
+ var validators = (0, preloadedData_1.getCurrentCosmosPreloadData)().validators;
46
+ var ledgerValidator = validators.find(function (validator) { return validator.validatorAddress === utils_1.LEDGER_VALIDATOR_ADDRESS; });
47
+ // Find user current worst validator (default validator is ledger)
48
+ var worstValidator = ledgerValidator;
49
+ var _loop_1 = function (i) {
50
+ var validatorAdress = validatorAdresses[i];
51
+ var validator = validators.find(function (validator) { return validator.validatorAddress === validatorAdress; });
52
+ if (worstValidator &&
53
+ validator &&
54
+ worstValidator.commission < validator.commission &&
55
+ (0, logic_1.canRedelegate)(account, validator)) {
56
+ worstValidator = validator;
57
+ }
58
+ };
59
+ for (var i = 0; i < validatorAdresses.length; i++) {
60
+ _loop_1(i);
61
+ }
62
+ var redelegate = false;
63
+ var validatorSrcAddress = "";
64
+ var display = false;
65
+ if (worstValidator) {
66
+ if ((worstValidator === null || worstValidator === void 0 ? void 0 : worstValidator.validatorAddress) === (ledgerValidator === null || ledgerValidator === void 0 ? void 0 : ledgerValidator.validatorAddress)) {
67
+ // Not found worst validator than ledger
68
+ if ((0, logic_1.canDelegate)(account)) {
69
+ // Delegate remaining ATOM (not staked)
70
+ display = true;
71
+ }
72
+ }
73
+ else {
74
+ // Redelegate to the worst validator
75
+ display = true;
76
+ redelegate = true;
77
+ validatorSrcAddress = worstValidator.validatorAddress;
78
+ }
79
+ }
80
+ return {
81
+ display: display,
82
+ redelegate: redelegate,
83
+ validatorSrcAddress: validatorSrcAddress,
84
+ ledgerValidator: ledgerValidator
85
+ };
131
86
  }
132
87
  exports.getAccountBannerState = getAccountBannerState;
133
88
  //# sourceMappingURL=banner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"banner.js","sourceRoot":"","sources":["../../../src/families/cosmos/banner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA8D;AAC9D,uCAAgD;AAChD,iCAAmD;AAUnD,SAAsB,qBAAqB,CACzC,OAAsB;;;;;;oBAGhB,eAAe,GAAG,OAAO,CAAC,eAAe;wBAC7C,CAAC,CAAC,OAAO,CAAC,eAAe;wBACzB,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;oBACrC,mBAAmB,GAAG,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,UAAC,UAAU;wBACrE,OAAO,UAAU,CAAC,gBAAgB,CAAC;oBACrC,CAAC,CAAC,CAAC;oBACG,qBAAqB,GAAG,eAAe,CAAC,aAAa,CAAC,GAAG,CAC7D,UAAC,YAAY;wBACX,OAAO,YAAY,CAAC,mBAAmB,CAAC;oBAC1C,CAAC,CACF,CAAC;oBACI,iBAAiB,0CAAO,mBAAmB,kBAAK,qBAAqB,SAAC,CAAC;oBAGrE,UAAU,GAAK,IAAA,2CAA2B,GAAE,WAAlC,CAAmC;oBAC/C,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,gBAAgB,KAAK,gCAAwB,EAAvD,CAAuD,CACvE,CAAC;oBAGE,cAAc,GAAG,eAAe,CAAC;wCAC5B,CAAC;wBACR,IAAM,eAAe,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;wBAC7C,IAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAC/B,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,gBAAgB,KAAK,eAAe,EAA9C,CAA8C,CAC9D,CAAC;wBACF,IACE,cAAc;4BACd,SAAS;4BACT,cAAc,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,EAChD;4BACA,cAAc,GAAG,SAAS,CAAC;yBAC5B;;oBAXH,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE;gCAAxC,CAAC;qBAYT;oBAEG,UAAU,GAAG,KAAK,CAAC;oBACnB,mBAAmB,GAAG,EAAE,CAAC;oBACzB,OAAO,GAAG,KAAK,CAAC;yBAEhB,cAAc,EAAd,wBAAc;yBAEd,CAAA,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,gBAAgB,OAAK,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,gBAAgB,CAAA,CAAA,EAAtE,wBAAsE;oBAGjD,qBAAM,IAAA,yBAAgB,EACzC,OAAO,EACP,SAAS,CACV,CAAC,oBAAoB,CAAC;4BACrB,OAAO,SAAA;4BACP,aAAa,EAAE,SAAS;4BACxB,WAAW,EAAE,SAAS;yBACvB,CAAC,EAAA;;oBAPI,YAAY,GAAG,SAOnB;oBACF,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;wBACtB,uCAAuC;wBACvC,OAAO,GAAG,IAAI,CAAC;qBAChB;;;oBAED,oCAAoC;oBACpC,OAAO,GAAG,IAAI,CAAC;oBACf,UAAU,GAAG,IAAI,CAAC;oBAClB,mBAAmB,GAAG,cAAc,CAAC,gBAAgB,CAAC;;wBAI1D,sBAAO;wBACL,OAAO,SAAA;wBACP,UAAU,YAAA;wBACV,mBAAmB,qBAAA;wBACnB,eAAe,iBAAA;qBAChB,EAAC;;;;CACH;AA1ED,sDA0EC"}
1
+ {"version":3,"file":"banner.js","sourceRoot":"","sources":["../../../src/families/cosmos/banner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA8D;AAC9D,iCAAmD;AACnD,iCAAqD;AAUrD,SAAgB,qBAAqB,CACnC,OAAsB;IAEtB,0BAA0B;IAC1B,IAAM,eAAe,GAAG,OAAO,CAAC,eAAe;QAC7C,CAAC,CAAC,OAAO,CAAC,eAAe;QACzB,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;IAC3C,IAAM,mBAAmB,GAAG,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,UAAC,UAAU;QACrE,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACrC,CAAC,CAAC,CAAC;IACH,IAAM,qBAAqB,GAAG,eAAe,CAAC,aAAa,CAAC,GAAG,CAC7D,UAAC,YAAY;QACX,OAAO,YAAY,CAAC,mBAAmB,CAAC;IAC1C,CAAC,CACF,CAAC;IACF,IAAM,iBAAiB,0CAAO,mBAAmB,kBAAK,qBAAqB,SAAC,CAAC;IAE7E,4BAA4B;IACpB,IAAA,UAAU,GAAK,IAAA,2CAA2B,GAAE,WAAlC,CAAmC;IACrD,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,gBAAgB,KAAK,gCAAwB,EAAvD,CAAuD,CACvE,CAAC;IAEF,kEAAkE;IAClE,IAAI,cAAc,GAAG,eAAe,CAAC;4BAC5B,CAAC;QACR,IAAM,eAAe,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAC/B,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,gBAAgB,KAAK,eAAe,EAA9C,CAA8C,CAC9D,CAAC;QACF,IACE,cAAc;YACd,SAAS;YACT,cAAc,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU;YAChD,IAAA,qBAAa,EAAC,OAAO,EAAE,SAAS,CAAC,EACjC;YACA,cAAc,GAAG,SAAS,CAAC;SAC5B;;IAZH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE;gBAAxC,CAAC;KAaT;IAED,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,mBAAmB,GAAG,EAAE,CAAC;IAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,cAAc,EAAE;QAClB,IACE,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,gBAAgB,OAAK,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,gBAAgB,CAAA,EACtE;YACA,wCAAwC;YACxC,IAAI,IAAA,mBAAW,EAAC,OAAO,CAAC,EAAE;gBACxB,uCAAuC;gBACvC,OAAO,GAAG,IAAI,CAAC;aAChB;SACF;aAAM;YACL,oCAAoC;YACpC,OAAO,GAAG,IAAI,CAAC;YACf,UAAU,GAAG,IAAI,CAAC;YAClB,mBAAmB,GAAG,cAAc,CAAC,gBAAgB,CAAC;SACvD;KACF;IAED,OAAO;QACL,OAAO,SAAA;QACP,UAAU,YAAA;QACV,mBAAmB,qBAAA;QACnB,eAAe,iBAAA;KAChB,CAAC;AACJ,CAAC;AAnED,sDAmEC"}
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
2
13
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
14
  if (k2 === undefined) k2 = k;
4
15
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -64,10 +75,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
64
75
  exports.__esModule = true;
65
76
  var banner_1 = require("./banner");
66
77
  var preloadedData = __importStar(require("./preloadedData"));
67
- var bridge = __importStar(require("../../bridge"));
78
+ var logic = __importStar(require("./logic"));
68
79
  var preloadedData_mock_1 = __importDefault(require("./preloadedData.mock"));
69
80
  var utils_1 = require("./utils");
70
81
  var bignumber_js_1 = require("bignumber.js");
82
+ jest.mock("./js-prepareTransaction", function () { return ({
83
+ calculateFees: jest.fn(function () { return Promise.resolve({}); })
84
+ }); });
71
85
  var ledgerValidator = preloadedData_mock_1["default"].validators.find(function (x) { return x.validatorAddress === utils_1.LEDGER_VALIDATOR_ADDRESS; });
72
86
  var expensiveValidator = preloadedData_mock_1["default"].validators.find(function (x) {
73
87
  return x.validatorAddress ===
@@ -152,80 +166,86 @@ describe("cosmos/banner", function () {
152
166
  it("should not display the banner", function () { return __awaiter(void 0, void 0, void 0, function () {
153
167
  var result;
154
168
  return __generator(this, function (_a) {
155
- switch (_a.label) {
156
- case 0:
157
- jest
158
- .spyOn(preloadedData, "getCurrentCosmosPreloadData")
159
- .mockReturnValue({ validators: validators });
160
- jest.spyOn(bridge, "getAccountBridge").mockReturnValue({
161
- estimateMaxSpendable: function () { return Promise.resolve(new bignumber_js_1.BigNumber(0)); }
162
- });
163
- return [4 /*yield*/, (0, banner_1.getAccountBannerState)(account)];
164
- case 1:
165
- result = _a.sent();
166
- expect(1 + 1).toBe(2);
167
- expect(result).toStrictEqual({
168
- display: false,
169
- redelegate: false,
170
- validatorSrcAddress: "",
171
- ledgerValidator: ledgerValidator
172
- });
173
- return [2 /*return*/];
174
- }
169
+ jest
170
+ .spyOn(preloadedData, "getCurrentCosmosPreloadData")
171
+ .mockReturnValue({ validators: validators });
172
+ jest.spyOn(logic, "canDelegate").mockReturnValue(false);
173
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(false);
174
+ result = (0, banner_1.getAccountBannerState)(account);
175
+ expect(result).toStrictEqual({
176
+ display: false,
177
+ redelegate: false,
178
+ validatorSrcAddress: "",
179
+ ledgerValidator: ledgerValidator
180
+ });
181
+ return [2 /*return*/];
175
182
  });
176
183
  }); });
177
184
  it("should return display delegate mode", function () { return __awaiter(void 0, void 0, void 0, function () {
178
185
  var result;
179
186
  return __generator(this, function (_a) {
180
- switch (_a.label) {
181
- case 0:
182
- jest
183
- .spyOn(preloadedData, "getCurrentCosmosPreloadData")
184
- .mockReturnValue({ validators: validators });
185
- jest.spyOn(bridge, "getAccountBridge").mockReturnValue({
186
- estimateMaxSpendable: function () { return Promise.resolve(new bignumber_js_1.BigNumber(5000)); }
187
- });
188
- return [4 /*yield*/, (0, banner_1.getAccountBannerState)(account)];
189
- case 1:
190
- result = _a.sent();
191
- expect(result).toStrictEqual({
192
- display: true,
193
- redelegate: false,
194
- validatorSrcAddress: "",
195
- ledgerValidator: ledgerValidator
196
- });
197
- return [2 /*return*/];
198
- }
187
+ jest
188
+ .spyOn(preloadedData, "getCurrentCosmosPreloadData")
189
+ .mockReturnValue({ validators: validators });
190
+ jest.spyOn(logic, "canDelegate").mockReturnValue(true);
191
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(false);
192
+ result = (0, banner_1.getAccountBannerState)(account);
193
+ expect(result).toStrictEqual({
194
+ display: true,
195
+ redelegate: false,
196
+ validatorSrcAddress: "",
197
+ ledgerValidator: ledgerValidator
198
+ });
199
+ return [2 /*return*/];
199
200
  });
200
201
  }); });
201
202
  it("should return display redelegate mode", function () { return __awaiter(void 0, void 0, void 0, function () {
203
+ var accountWithSpendable5000, result;
204
+ return __generator(this, function (_a) {
205
+ jest
206
+ .spyOn(preloadedData, "getCurrentCosmosPreloadData")
207
+ .mockReturnValue({ validators: validators });
208
+ jest.spyOn(logic, "canDelegate").mockReturnValue(false);
209
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(true);
210
+ account.cosmosResources.redelegations.push({
211
+ validatorSrcAddress: "xxxx",
212
+ validatorDstAddress: expensiveValidator === null || expensiveValidator === void 0 ? void 0 : expensiveValidator.validatorAddress,
213
+ amount: new bignumber_js_1.BigNumber(1000),
214
+ completionDate: new Date()
215
+ });
216
+ accountWithSpendable5000 = __assign(__assign({}, account), { spendableBalance: new bignumber_js_1.BigNumber(5000) });
217
+ result = (0, banner_1.getAccountBannerState)(accountWithSpendable5000);
218
+ expect(result).toStrictEqual({
219
+ display: true,
220
+ redelegate: true,
221
+ validatorSrcAddress: expensiveValidator === null || expensiveValidator === void 0 ? void 0 : expensiveValidator.validatorAddress,
222
+ ledgerValidator: ledgerValidator
223
+ });
224
+ return [2 /*return*/];
225
+ });
226
+ }); });
227
+ it("should return not display redelegate mode", function () { return __awaiter(void 0, void 0, void 0, function () {
202
228
  var result;
203
229
  return __generator(this, function (_a) {
204
- switch (_a.label) {
205
- case 0:
206
- jest
207
- .spyOn(preloadedData, "getCurrentCosmosPreloadData")
208
- .mockReturnValue({ validators: validators });
209
- jest.spyOn(bridge, "getAccountBridge").mockReturnValue({
210
- estimateMaxSpendable: function () { return Promise.resolve(new bignumber_js_1.BigNumber(5000)); }
211
- });
212
- account.cosmosResources.redelegations.push({
213
- validatorSrcAddress: "xxxx",
214
- validatorDstAddress: expensiveValidator === null || expensiveValidator === void 0 ? void 0 : expensiveValidator.validatorAddress,
215
- amount: new bignumber_js_1.BigNumber(1000),
216
- completionDate: new Date()
217
- });
218
- return [4 /*yield*/, (0, banner_1.getAccountBannerState)(account)];
219
- case 1:
220
- result = _a.sent();
221
- expect(result).toStrictEqual({
222
- display: true,
223
- redelegate: true,
224
- validatorSrcAddress: expensiveValidator === null || expensiveValidator === void 0 ? void 0 : expensiveValidator.validatorAddress,
225
- ledgerValidator: ledgerValidator
226
- });
227
- return [2 /*return*/];
228
- }
230
+ jest
231
+ .spyOn(preloadedData, "getCurrentCosmosPreloadData")
232
+ .mockReturnValue({ validators: validators });
233
+ jest.spyOn(logic, "canDelegate").mockReturnValue(false);
234
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(false);
235
+ account.cosmosResources.redelegations.push({
236
+ validatorSrcAddress: "xxxx",
237
+ validatorDstAddress: expensiveValidator === null || expensiveValidator === void 0 ? void 0 : expensiveValidator.validatorAddress,
238
+ amount: new bignumber_js_1.BigNumber(1000),
239
+ completionDate: new Date()
240
+ });
241
+ result = (0, banner_1.getAccountBannerState)(account);
242
+ expect(result).toStrictEqual({
243
+ display: false,
244
+ redelegate: false,
245
+ validatorSrcAddress: "",
246
+ ledgerValidator: ledgerValidator
247
+ });
248
+ return [2 /*return*/];
229
249
  });
230
250
  }); });
231
251
  });
@@ -1 +1 @@
1
- {"version":3,"file":"banner.test.js","sourceRoot":"","sources":["../../../src/families/cosmos/banner.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAiD;AACjD,6DAAiD;AACjD,mDAAuC;AAEvC,4EAAwC;AACxC,iCAAmD;AACnD,6CAAyC;AAEzC,IAAM,eAAe,GAAoC,+BAAI,CAAC,UAAU,CAAC,IAAI,CAC3E,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,gBAAgB,KAAK,gCAAwB,EAA/C,CAA+C,CACvD,CAAC;AACF,IAAM,kBAAkB,GACtB,+BAAI,CAAC,UAAU,CAAC,IAAI,CAClB,UAAC,CAAC;IACA,OAAA,CAAC,CAAC,gBAAgB;QAClB,sDAAsD;AADtD,CACsD,CACzD,CAAC;AACJ,IAAM,cAAc,GAAoC,+BAAI,CAAC,UAAU,CAAC,IAAI,CAC1E,UAAC,CAAC;IACA,OAAA,CAAC,CAAC,gBAAgB;QAClB,sDAAsD;AADtD,CACsD,CACzD,CAAC;AAEF,IAAM,OAAO,GAAkB;IAC7B,IAAI,EAAE,SAAS;IACf,EAAE,EAAE,4DAA4D;IAChE,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,KAAK;IACX,cAAc,EACZ,oEAAoE;IACtE,cAAc,EAAE,EAAE;IAClB,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,+CAA+C;IAC7D,gBAAgB,EAAE,iBAAiB;IACnC,IAAI,EAAE,kCAAkC;IACxC,cAAc,EAAE,EAAE;IAClB,WAAW,EAAE,OAAO;IACpB,YAAY,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;IAClD,OAAO,EAAE,IAAI,wBAAS,CAAC,QAAQ,CAAC;IAChC,gBAAgB,EAAE,IAAI,wBAAS,CAAC,QAAQ,CAAC;IACzC,UAAU,EAAE,EAAE;IACd,eAAe,EAAE,CAAC;IAClB,iBAAiB,EAAE,EAAE;IACrB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE;IAClD,QAAQ,EAAE;QACR,IAAI,EAAE,gBAAgB;QACtB,EAAE,EAAE,QAAQ;QACZ,QAAQ,EAAE,GAAG;QACb,IAAI,EAAE,QAAQ;QACd,cAAc,EAAE,QAAQ;QACxB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE;YAC5C,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE;SACnD;QACD,aAAa,EAAE;YACb;gBACE,EAAE,EAAE,0CAA0C;gBAC9C,OAAO,EAAE,oDAAoD;aAC9D;SACF;KACF;IACD,YAAY,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;IAClD,WAAW,EAAE,EAAE;IACf,mBAAmB,EAAE;QACnB,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE;QAClE,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE;QACzD,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE;KAC3D;IACD,IAAI,EAAE,+CAA+C;IACrD,eAAe,EAAE;QACf,WAAW,EAAE;YACX;gBACE,MAAM,EAAE,IAAI,wBAAS,CAAC,OAAO,CAAC;gBAC9B,MAAM,EAAE,QAAQ;gBAChB,cAAc,EAAE,IAAI,wBAAS,CAAC,KAAK,CAAC;gBACpC,gBAAgB,EACd,sDAAsD;aACzD;SACF;QACD,aAAa,EAAE,EAAE;QACjB,UAAU,EAAE,EAAE;QACd,gBAAgB,EAAE,IAAI,wBAAS,CAAC,GAAG,CAAC;QACpC,qBAAqB,EAAE,IAAI,wBAAS,CAAC,GAAG,CAAC;QACzC,gBAAgB,EAAE,IAAI,wBAAS,CAAC,GAAG,CAAC;QACpC,eAAe,EAAE,EAAE;KACpB;CACF,CAAC;AAEF,IAAM,UAAU,GAAG,CAAC,kBAAkB,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;AAEzE,QAAQ,CAAC,eAAe,EAAE;IACxB,QAAQ,CAAC,+BAA+B,EAAE;QACxC,SAAS,CAAC;YACR,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,+BAA+B,EAAE;;;;;wBAClC,IAAI;6BACD,KAAK,CAAC,aAAa,EAAE,6BAA6B,CAAC;6BACnD,eAAe,CAAC,EAAE,UAAU,YAAA,EAE5B,CAAC,CAAC;wBAEL,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,eAAe,CAAC;4BACrD,oBAAoB,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,IAAI,wBAAS,CAAC,CAAC,CAAC,CAAC,EAAjC,CAAiC;yBACvD,CAAC,CAAC;wBACK,qBAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,EAAA;;wBAA7C,MAAM,GAAG,SAAoC;wBACnD,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACtB,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;4BAC3B,OAAO,EAAE,KAAK;4BACd,UAAU,EAAE,KAAK;4BACjB,mBAAmB,EAAE,EAAE;4BACvB,eAAe,iBAAA;yBAChB,CAAC,CAAC;;;;aACJ,CAAC,CAAC;QACH,EAAE,CAAC,qCAAqC,EAAE;;;;;wBACxC,IAAI;6BACD,KAAK,CAAC,aAAa,EAAE,6BAA6B,CAAC;6BACnD,eAAe,CAAC,EAAE,UAAU,YAAA,EAE5B,CAAC,CAAC;wBACL,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,eAAe,CAAC;4BACrD,oBAAoB,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,IAAI,wBAAS,CAAC,IAAI,CAAC,CAAC,EAApC,CAAoC;yBAC1D,CAAC,CAAC;wBACK,qBAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,EAAA;;wBAA7C,MAAM,GAAG,SAAoC;wBACnD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;4BAC3B,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE,KAAK;4BACjB,mBAAmB,EAAE,EAAE;4BACvB,eAAe,iBAAA;yBAChB,CAAC,CAAC;;;;aACJ,CAAC,CAAC;QACH,EAAE,CAAC,uCAAuC,EAAE;;;;;wBAC1C,IAAI;6BACD,KAAK,CAAC,aAAa,EAAE,6BAA6B,CAAC;6BACnD,eAAe,CAAC,EAAE,UAAU,YAAA,EAE5B,CAAC,CAAC;wBACL,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,eAAe,CAAC;4BACrD,oBAAoB,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,IAAI,wBAAS,CAAC,IAAI,CAAC,CAAC,EAApC,CAAoC;yBAC1D,CAAC,CAAC;wBACV,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC;4BACzC,mBAAmB,EAAE,MAAM;4BAC3B,mBAAmB,EAAE,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,gBAA0B;4BACnE,MAAM,EAAE,IAAI,wBAAS,CAAC,IAAI,CAAC;4BAC3B,cAAc,EAAE,IAAI,IAAI,EAAE;yBAC3B,CAAC,CAAC;wBACY,qBAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,EAAA;;wBAA7C,MAAM,GAAG,SAAoC;wBACnD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;4BAC3B,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE,IAAI;4BAChB,mBAAmB,EAAE,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,gBAAgB;4BACzD,eAAe,iBAAA;yBAChB,CAAC,CAAC;;;;aACJ,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"banner.test.js","sourceRoot":"","sources":["../../../src/families/cosmos/banner.test.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ export declare function getMaxDelegationAvailable(account: CosmosAccount, valida
17
17
  export declare const getMaxEstimatedBalance: (a: CosmosAccount, estimatedFees: BigNumber) => BigNumber;
18
18
  export declare function canUndelegate(account: CosmosAccount): boolean;
19
19
  export declare function canDelegate(account: CosmosAccount): boolean;
20
- export declare function canRedelegate(account: CosmosAccount, delegation: CosmosDelegation): boolean;
20
+ export declare function canRedelegate(account: CosmosAccount, delegation: CosmosDelegation | CosmosValidatorItem): boolean;
21
21
  export declare function canClaimRewards(account: CosmosAccount, delegation: CosmosDelegation): Promise<boolean>;
22
22
  export declare function getRedelegation(account: CosmosAccount, delegation: CosmosMappedDelegation): CosmosRedelegation | null | undefined;
23
23
  export declare function getRedelegationCompletionDate(account: CosmosAccount, delegation: CosmosMappedDelegation): Date | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../src/families/cosmos/logic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,KAAK,EACV,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACd,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEzD,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,eAAe,WAAwB,CAAC;AAErD,eAAO,MAAM,eAAe,WAAsB,CAAC;AAEnD,wBAAgB,cAAc,CAC5B,WAAW,EAAE,gBAAgB,EAAE,EAC/B,UAAU,EAAE,mBAAmB,EAAE,EACjC,IAAI,EAAE,IAAI,GACT,sBAAsB,EAAE,CAsB1B;AACD,wBAAgB,aAAa,CAC3B,UAAU,EAAE,eAAe,EAAE,EAC7B,UAAU,EAAE,mBAAmB,EAAE,EACjC,IAAI,EAAE,IAAI,GACT,qBAAqB,EAAE,CAiBzB;AACD,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,kBAAkB,EAAE,EACnC,UAAU,EAAE,mBAAmB,EAAE,EACjC,IAAI,EAAE,IAAI,GACT,wBAAwB,EAAE,CAmB5B;AACD,eAAO,MAAM,iBAAiB,gBACf,oBAAoB,EAAE,cACvB,mBAAmB,EAAE,QAC3B,IAAI,4CAET,0BAA0B,EAc5B,CAAC;AACF,eAAO,MAAM,WAAW,UAAW,SAAS,QAAQ,IAAI,KAAG,MAI5C,CAAC;AAChB,eAAO,MAAM,YAAY,EAAE,kBAOxB,CAAC;AACJ,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,aAAa,EACtB,gBAAgB,EAAE,MAAM,GACvB,SAAS,CASX;AACD,eAAO,MAAM,sBAAsB,MAC9B,aAAa,iBACD,SAAS,KACvB,SAmBF,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAO7D;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAG3D;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAUT;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAAC,OAAO,CAAC,CA4BlB;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,sBAAsB,GACjC,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAOvC;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,sBAAsB,GACjC,IAAI,GAAG,IAAI,GAAG,SAAS,CAGzB"}
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../src/families/cosmos/logic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,KAAK,EACV,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACd,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEzD,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,eAAe,WAAwB,CAAC;AAErD,eAAO,MAAM,eAAe,WAAsB,CAAC;AAEnD,wBAAgB,cAAc,CAC5B,WAAW,EAAE,gBAAgB,EAAE,EAC/B,UAAU,EAAE,mBAAmB,EAAE,EACjC,IAAI,EAAE,IAAI,GACT,sBAAsB,EAAE,CAsB1B;AACD,wBAAgB,aAAa,CAC3B,UAAU,EAAE,eAAe,EAAE,EAC7B,UAAU,EAAE,mBAAmB,EAAE,EACjC,IAAI,EAAE,IAAI,GACT,qBAAqB,EAAE,CAiBzB;AACD,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,kBAAkB,EAAE,EACnC,UAAU,EAAE,mBAAmB,EAAE,EACjC,IAAI,EAAE,IAAI,GACT,wBAAwB,EAAE,CAmB5B;AACD,eAAO,MAAM,iBAAiB,gBACf,oBAAoB,EAAE,cACvB,mBAAmB,EAAE,QAC3B,IAAI,4CAET,0BAA0B,EAc5B,CAAC;AACF,eAAO,MAAM,WAAW,UAAW,SAAS,QAAQ,IAAI,KAAG,MAI5C,CAAC;AAChB,eAAO,MAAM,YAAY,EAAE,kBAOxB,CAAC;AACJ,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,aAAa,EACtB,gBAAgB,EAAE,MAAM,GACvB,SAAS,CASX;AACD,eAAO,MAAM,sBAAsB,MAC9B,aAAa,iBACD,SAAS,KACvB,SAmBF,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAO7D;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAG3D;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,gBAAgB,GAAG,mBAAmB,GACjD,OAAO,CAUT;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAAC,OAAO,CAAC,CA4BlB;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,sBAAsB,GACjC,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAOvC;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,sBAAsB,GACjC,IAAI,GAAG,IAAI,GAAG,SAAS,CAGzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../src/families/cosmos/logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../src/families/cosmos/logic.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  },
5
5
  "name": "@ledgerhq/live-common",
6
6
  "description": "Common ground for the Ledger Live apps",
7
- "version": "27.1.0-next.4",
7
+ "version": "27.1.0",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "https://github.com/LedgerHQ/ledger-live.git"
@@ -111,13 +111,13 @@
111
111
  "@hashgraph/sdk": "^2.10.1",
112
112
  "@keplr-wallet/cosmos": "^0.9.16",
113
113
  "@ledgerhq/compressjs": "github:LedgerHQ/compressjs#d9e8e4d994923e0ea76a32b97289bcccfe71b82e",
114
- "@ledgerhq/cryptoassets": "^6.34.0-next.1",
114
+ "@ledgerhq/cryptoassets": "^6.34.0",
115
115
  "@ledgerhq/devices": "^7.0.0",
116
116
  "@ledgerhq/errors": "^6.10.1",
117
117
  "@ledgerhq/hw-app-algorand": "^6.27.3",
118
118
  "@ledgerhq/hw-app-btc": "^8.0.1",
119
119
  "@ledgerhq/hw-app-cosmos": "^6.27.3",
120
- "@ledgerhq/hw-app-eth": "^6.29.6-next.1",
120
+ "@ledgerhq/hw-app-eth": "^6.29.6",
121
121
  "@ledgerhq/hw-app-polkadot": "^6.27.3",
122
122
  "@ledgerhq/hw-app-solana": "^6.27.3",
123
123
  "@ledgerhq/hw-app-str": "^6.27.3",
@@ -35,7 +35,7 @@ export const useBleDevicePairing = ({
35
35
  from(getVersion(t))
36
36
  ).pipe(first());
37
37
 
38
- requestObservable.subscribe({
38
+ const sub = requestObservable.subscribe({
39
39
  next: (_value: FirmwareInfo) => {
40
40
  setIsPaired(true);
41
41
  setPairingError(null);
@@ -45,6 +45,10 @@ export const useBleDevicePairing = ({
45
45
  setPairingError(error);
46
46
  },
47
47
  });
48
+
49
+ return () => {
50
+ sub.unsubscribe();
51
+ };
48
52
  }, [deviceId]);
49
53
 
50
54
  return { isPaired, pairingError };
@@ -110,14 +110,14 @@ describe("useBleDevicesScanning", () => {
110
110
  });
111
111
  });
112
112
 
113
- describe("and when filterModelIds is not null", () => {
113
+ describe("and when filterByDeviceModelIds is not null", () => {
114
114
  it("should filter the scanning result by the given model ids", async () => {
115
115
  const { result } = renderHook(() =>
116
116
  useBleDevicesScanning({
117
117
  bleTransportListen: setupMockBleTransportListen(
118
118
  mockEmitValuesByObserver
119
119
  ),
120
- filterByModelIds: [DeviceModelId.nanoX],
120
+ filterByDeviceModelIds: [DeviceModelId.nanoX],
121
121
  })
122
122
  );
123
123
 
@@ -149,6 +149,37 @@ describe("useBleDevicesScanning", () => {
149
149
  });
150
150
  });
151
151
 
152
+ describe("and when filterOutDevicesByDeviceIds is not null nor empty", () => {
153
+ it("should not add the scanned device if its ids is in the array", async () => {
154
+ const { result } = renderHook(() =>
155
+ useBleDevicesScanning({
156
+ bleTransportListen: setupMockBleTransportListen(
157
+ mockEmitValuesByObserver
158
+ ),
159
+ filterOutDevicesByDeviceIds: [deviceIdA, deviceIdC],
160
+ })
161
+ );
162
+
163
+ // The first scanned device (deviceIdA) should be filtered out
164
+ expect(result.current.scannedDevices).toHaveLength(0);
165
+
166
+ await act(async () => {
167
+ jest.advanceTimersByTime(1000);
168
+ });
169
+
170
+ // The second scanned device is deviceIdB and should be kept
171
+ expect(result.current.scannedDevices).toHaveLength(1);
172
+ expect(result.current.scannedDevices[0].deviceId).toBe(deviceIdB);
173
+
174
+ await act(async () => {
175
+ jest.advanceTimersByTime(1000);
176
+ });
177
+
178
+ // The third scanned device (deviceIdC) should be filtered out
179
+ expect(result.current.scannedDevices).toHaveLength(1);
180
+ });
181
+ });
182
+
152
183
  describe("and when the hook consumer stops the scanning", () => {
153
184
  it("should stop the scanning", async () => {
154
185
  let stopBleScanning = false;
@@ -9,6 +9,7 @@ import type {
9
9
  DescriptorEvent,
10
10
  DescriptorEventType,
11
11
  } from "@ledgerhq/hw-transport";
12
+ import { DeviceId } from "@ledgerhq/types-live";
12
13
  import { TransportBleDevice, ScannedDevice, BleError } from "../types";
13
14
 
14
15
  export type ScanningBleError = BleError | null;
@@ -26,14 +27,16 @@ export type UseBleDevicesScanningDependencies = {
26
27
 
27
28
  export type UseBleDevicesScanningOptions = {
28
29
  stopBleScanning?: boolean;
29
- filterByModelIds?: DeviceModelId[];
30
+ filterByDeviceModelIds?: DeviceModelId[];
31
+ filterOutDevicesByDeviceIds?: DeviceId[];
30
32
  };
31
33
 
32
34
  const DEFAULT_DEVICE_NAME = "Device";
33
35
 
34
36
  /**
35
37
  * Scans the BLE devices around the user
36
- * @param filterByModelIds An array of model ids to filter on
38
+ * @param filterByDeviceModelIds An array of device model ids to filter on
39
+ * @param filterOutDevicesByDeviceIds An array of device ids to filter out
37
40
  * @param stopBleScanning Flag to stop or continue the scanning
38
41
  * @returns An object containing:
39
42
  * - scannedDevices: list of ScannedDevice found by the scanning
@@ -42,7 +45,8 @@ const DEFAULT_DEVICE_NAME = "Device";
42
45
  export const useBleDevicesScanning = ({
43
46
  bleTransportListen,
44
47
  stopBleScanning,
45
- filterByModelIds,
48
+ filterByDeviceModelIds,
49
+ filterOutDevicesByDeviceIds,
46
50
  }: UseBleDevicesScanningDependencies &
47
51
  UseBleDevicesScanningOptions): UseBleDevicesScanningResult => {
48
52
  const [scanningBleError, setScanningBleError] =
@@ -84,6 +88,15 @@ export const useBleDevicesScanning = ({
84
88
  return;
85
89
  }
86
90
 
91
+ const shouldScannedDeviceBeFilteredOut =
92
+ filterOutDevicesByDeviceIds?.some(
93
+ (deviceId) => deviceId === transportDevice.id
94
+ );
95
+
96
+ if (shouldScannedDeviceBeFilteredOut) {
97
+ return;
98
+ }
99
+
87
100
  if (
88
101
  transportDevice.serviceUUIDs &&
89
102
  transportDevice.serviceUUIDs.length > 0
@@ -98,8 +111,8 @@ export const useBleDevicesScanning = ({
98
111
 
99
112
  // Filters on the model ids, if asked
100
113
  if (
101
- filterByModelIds &&
102
- !filterByModelIds.includes(bleInfo.deviceModel.id)
114
+ filterByDeviceModelIds &&
115
+ !filterByDeviceModelIds.includes(bleInfo.deviceModel.id)
103
116
  ) {
104
117
  return;
105
118
  }
@@ -136,8 +149,9 @@ export const useBleDevicesScanning = ({
136
149
  }, [
137
150
  bleTransportListen,
138
151
  stopBleScanning,
139
- filterByModelIds,
152
+ filterByDeviceModelIds,
140
153
  setScannedDevices,
154
+ filterOutDevicesByDeviceIds,
141
155
  ]);
142
156
 
143
157
  return {
@@ -1,11 +1,15 @@
1
1
  import { getAccountBannerState } from "./banner";
2
2
  import * as preloadedData from "./preloadedData";
3
- import * as bridge from "../../bridge";
3
+ import * as logic from "./logic";
4
4
  import type { CosmosAccount, CosmosValidatorItem } from "./types";
5
5
  import data from "./preloadedData.mock";
6
6
  import { LEDGER_VALIDATOR_ADDRESS } from "./utils";
7
7
  import { BigNumber } from "bignumber.js";
8
8
 
9
+ jest.mock("./js-prepareTransaction", () => ({
10
+ calculateFees: jest.fn(() => Promise.resolve({})),
11
+ }));
12
+
9
13
  const ledgerValidator: CosmosValidatorItem | undefined = data.validators.find(
10
14
  (x) => x.validatorAddress === LEDGER_VALIDATOR_ADDRESS
11
15
  );
@@ -103,12 +107,9 @@ describe("cosmos/banner", () => {
103
107
  .mockReturnValue({ validators } as {
104
108
  validators: CosmosValidatorItem[];
105
109
  });
106
-
107
- jest.spyOn(bridge, "getAccountBridge").mockReturnValue({
108
- estimateMaxSpendable: () => Promise.resolve(new BigNumber(0)),
109
- } as any);
110
- const result = await getAccountBannerState(account);
111
- expect(1 + 1).toBe(2);
110
+ jest.spyOn(logic, "canDelegate").mockReturnValue(false);
111
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(false);
112
+ const result = getAccountBannerState(account);
112
113
  expect(result).toStrictEqual({
113
114
  display: false,
114
115
  redelegate: false,
@@ -122,10 +123,9 @@ describe("cosmos/banner", () => {
122
123
  .mockReturnValue({ validators } as {
123
124
  validators: CosmosValidatorItem[];
124
125
  });
125
- jest.spyOn(bridge, "getAccountBridge").mockReturnValue({
126
- estimateMaxSpendable: () => Promise.resolve(new BigNumber(5000)),
127
- } as any);
128
- const result = await getAccountBannerState(account);
126
+ jest.spyOn(logic, "canDelegate").mockReturnValue(true);
127
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(false);
128
+ const result = getAccountBannerState(account);
129
129
  expect(result).toStrictEqual({
130
130
  display: true,
131
131
  redelegate: false,
@@ -139,16 +139,19 @@ describe("cosmos/banner", () => {
139
139
  .mockReturnValue({ validators } as {
140
140
  validators: CosmosValidatorItem[];
141
141
  });
142
- jest.spyOn(bridge, "getAccountBridge").mockReturnValue({
143
- estimateMaxSpendable: () => Promise.resolve(new BigNumber(5000)),
144
- } as any);
142
+ jest.spyOn(logic, "canDelegate").mockReturnValue(false);
143
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(true);
145
144
  account.cosmosResources.redelegations.push({
146
145
  validatorSrcAddress: "xxxx",
147
146
  validatorDstAddress: expensiveValidator?.validatorAddress as string,
148
147
  amount: new BigNumber(1000),
149
148
  completionDate: new Date(),
150
149
  });
151
- const result = await getAccountBannerState(account);
150
+ const accountWithSpendable5000 = {
151
+ ...account,
152
+ spendableBalance: new BigNumber(5000),
153
+ };
154
+ const result = getAccountBannerState(accountWithSpendable5000);
152
155
  expect(result).toStrictEqual({
153
156
  display: true,
154
157
  redelegate: true,
@@ -156,5 +159,27 @@ describe("cosmos/banner", () => {
156
159
  ledgerValidator,
157
160
  });
158
161
  });
162
+ it("should return not display redelegate mode", async () => {
163
+ jest
164
+ .spyOn(preloadedData, "getCurrentCosmosPreloadData")
165
+ .mockReturnValue({ validators } as {
166
+ validators: CosmosValidatorItem[];
167
+ });
168
+ jest.spyOn(logic, "canDelegate").mockReturnValue(false);
169
+ jest.spyOn(logic, "canRedelegate").mockReturnValue(false);
170
+ account.cosmosResources.redelegations.push({
171
+ validatorSrcAddress: "xxxx",
172
+ validatorDstAddress: expensiveValidator?.validatorAddress as string,
173
+ amount: new BigNumber(1000),
174
+ completionDate: new Date(),
175
+ });
176
+ const result = getAccountBannerState(account);
177
+ expect(result).toStrictEqual({
178
+ display: false,
179
+ redelegate: false,
180
+ validatorSrcAddress: "",
181
+ ledgerValidator,
182
+ });
183
+ });
159
184
  });
160
185
  });
@@ -1,6 +1,6 @@
1
1
  import { getCurrentCosmosPreloadData } from "./preloadedData";
2
- import { getAccountBridge } from "../../bridge";
3
2
  import { LEDGER_VALIDATOR_ADDRESS } from "./utils";
3
+ import { canDelegate, canRedelegate } from "./logic";
4
4
  import type { CosmosAccount, CosmosValidatorItem } from "./types";
5
5
 
6
6
  interface AccountBannerState {
@@ -10,9 +10,9 @@ interface AccountBannerState {
10
10
  ledgerValidator: CosmosValidatorItem | undefined;
11
11
  }
12
12
 
13
- export async function getAccountBannerState(
13
+ export function getAccountBannerState(
14
14
  account: CosmosAccount
15
- ): Promise<AccountBannerState> {
15
+ ): AccountBannerState {
16
16
  // Group current validator
17
17
  const cosmosResources = account.cosmosResources
18
18
  ? account.cosmosResources
@@ -43,7 +43,8 @@ export async function getAccountBannerState(
43
43
  if (
44
44
  worstValidator &&
45
45
  validator &&
46
- worstValidator.commission < validator.commission
46
+ worstValidator.commission < validator.commission &&
47
+ canRedelegate(account, validator)
47
48
  ) {
48
49
  worstValidator = validator;
49
50
  }
@@ -58,15 +59,7 @@ export async function getAccountBannerState(
58
59
  worstValidator?.validatorAddress === ledgerValidator?.validatorAddress
59
60
  ) {
60
61
  // Not found worst validator than ledger
61
- const maxSpendable = await getAccountBridge(
62
- account,
63
- undefined
64
- ).estimateMaxSpendable({
65
- account,
66
- parentAccount: undefined,
67
- transaction: undefined,
68
- });
69
- if (maxSpendable.gt(0)) {
62
+ if (canDelegate(account)) {
70
63
  // Delegate remaining ATOM (not staked)
71
64
  display = true;
72
65
  }
@@ -184,7 +184,7 @@ export function canDelegate(account: CosmosAccount): boolean {
184
184
 
185
185
  export function canRedelegate(
186
186
  account: CosmosAccount,
187
- delegation: CosmosDelegation
187
+ delegation: CosmosDelegation | CosmosValidatorItem
188
188
  ): boolean {
189
189
  const { cosmosResources } = account;
190
190
  invariant(cosmosResources, "cosmosResources should exist");