@ledgerhq/live-wallet 0.6.2-nightly.0 → 0.6.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.
@@ -1,4 +1,4 @@
1
1
 
2
- > @ledgerhq/live-wallet@0.6.1 build /home/runner/work/ledger-live/ledger-live/libs/live-wallet
2
+ > @ledgerhq/live-wallet@0.6.2 build /home/runner/work/ledger-live/ledger-live/libs/live-wallet
3
3
  > tsc && tsc -m ES6 --outDir lib-es
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,11 +1,30 @@
1
1
  # @ledgerhq/live-wallet
2
2
 
3
- ## 0.6.2-nightly.0
3
+ ## 0.6.2
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - Updated dependencies [[`a47e68b`](https://github.com/LedgerHQ/ledger-live/commit/a47e68b568a3b888a241c30345b4935557404215)]:
8
- - @ledgerhq/trustchain@0.4.1-nightly.0
7
+ - [#7929](https://github.com/LedgerHQ/ledger-live/pull/7929) [`92df3b4`](https://github.com/LedgerHQ/ledger-live/commit/92df3b415e765dc26bc69438ca26b6308e98aa26) Thanks [@cgrellard-ledger](https://github.com/cgrellard-ledger)! - Ledger Sync - Fixed side effect that caused the synchronization to stop working
8
+
9
+ - Updated dependencies [[`c83af75`](https://github.com/LedgerHQ/ledger-live/commit/c83af756fb388043c9f5a3862cae1231ec99a02c), [`a47e68b`](https://github.com/LedgerHQ/ledger-live/commit/a47e68b568a3b888a241c30345b4935557404215)]:
10
+ - @ledgerhq/types-cryptoassets@7.16.0
11
+ - @ledgerhq/cryptoassets@13.6.0
12
+ - @ledgerhq/types-live@6.52.0
13
+ - @ledgerhq/trustchain@0.4.1
14
+ - @ledgerhq/coin-framework@0.18.2
15
+
16
+ ## 0.6.2-next.0
17
+
18
+ ### Patch Changes
19
+
20
+ - [#7929](https://github.com/LedgerHQ/ledger-live/pull/7929) [`92df3b4`](https://github.com/LedgerHQ/ledger-live/commit/92df3b415e765dc26bc69438ca26b6308e98aa26) Thanks [@cgrellard-ledger](https://github.com/cgrellard-ledger)! - Ledger Sync - Fixed side effect that caused the synchronization to stop working
21
+
22
+ - Updated dependencies [[`c83af75`](https://github.com/LedgerHQ/ledger-live/commit/c83af756fb388043c9f5a3862cae1231ec99a02c), [`a47e68b`](https://github.com/LedgerHQ/ledger-live/commit/a47e68b568a3b888a241c30345b4935557404215)]:
23
+ - @ledgerhq/types-cryptoassets@7.16.0-next.0
24
+ - @ledgerhq/cryptoassets@13.6.0-next.0
25
+ - @ledgerhq/types-live@6.52.0-next.0
26
+ - @ledgerhq/trustchain@0.4.1-next.0
27
+ - @ledgerhq/coin-framework@0.18.2-next.0
9
28
 
10
29
  ## 0.6.1
11
30
 
@@ -2,10 +2,11 @@ import { DistantState, LocalState } from ".";
2
2
  import { UpdateEvent } from "../cloudsync/sdk";
3
3
  import { WalletSyncDataManagerResolutionContext } from "./types";
4
4
  import { WSState } from "../store";
5
- export declare function makeSaveNewUpdate<S>({ ctx, getState, latestDistantStateSelector, localStateSelector, saveUpdate, }: {
5
+ export declare function makeSaveNewUpdate<S>({ ctx, getState, latestDistantStateSelector, latestDistantVersionSelector, localStateSelector, saveUpdate, }: {
6
6
  ctx: WalletSyncDataManagerResolutionContext;
7
7
  getState: () => S;
8
8
  latestDistantStateSelector: (state: S) => DistantState | null;
9
+ latestDistantVersionSelector: (state: S) => number;
9
10
  localStateSelector: (state: S) => LocalState;
10
11
  saveUpdate: (data: DistantState | null, version: number, newLocalState: LocalState | null) => Promise<void>;
11
12
  }): (event: UpdateEvent<DistantState>) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"incrementalUpdates.d.ts","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sCAAsC,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,EACnC,GAAG,EACH,QAAQ,EACR,0BAA0B,EAC1B,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,0BAA0B,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,GAAG,IAAI,CAAC;IAC9D,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAiCtD;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,EAC5C,GAAG,EACH,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,yBAAyB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;IACjD,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAetB"}
1
+ {"version":3,"file":"incrementalUpdates.d.ts","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sCAAsC,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,EACnC,GAAG,EACH,QAAQ,EACR,0BAA0B,EAC1B,4BAA4B,EAC5B,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,0BAA0B,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,GAAG,IAAI,CAAC;IAC9D,4BAA4B,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC;IACnD,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAqCtD;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,EAC5C,GAAG,EACH,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,yBAAyB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;IACjD,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAetB"}
@@ -15,13 +15,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.makeLocalIncrementalUpdate = exports.makeSaveNewUpdate = void 0;
16
16
  const logs_1 = require("@ledgerhq/logs");
17
17
  const _1 = __importDefault(require("."));
18
- function makeSaveNewUpdate({ ctx, getState, latestDistantStateSelector, localStateSelector, saveUpdate, }) {
18
+ function makeSaveNewUpdate({ ctx, getState, latestDistantStateSelector, latestDistantVersionSelector, localStateSelector, saveUpdate, }) {
19
19
  return (event) => __awaiter(this, void 0, void 0, function* () {
20
20
  (0, logs_1.log)("walletsync", "saveNewUpdate", { event });
21
21
  switch (event.type) {
22
22
  case "new-data": {
23
23
  // we resolve incoming distant state changes
24
24
  const state = getState();
25
+ const latestVersion = latestDistantVersionSelector(state);
25
26
  const latest = latestDistantStateSelector(state);
26
27
  const local = localStateSelector(state);
27
28
  const data = event.data;
@@ -36,6 +37,9 @@ function makeSaveNewUpdate({ ctx, getState, latestDistantStateSelector, localSta
36
37
  else {
37
38
  (0, logs_1.log)("walletsync", "resolved. no changes to apply.");
38
39
  }
40
+ if (event.version !== latestVersion) {
41
+ yield saveUpdate(data, event.version, null);
42
+ }
39
43
  break;
40
44
  }
41
45
  case "pushed-data": {
@@ -1 +1 @@
1
- {"version":3,"file":"incrementalUpdates.js","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incrementalUpdates.js","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,11 @@ import { DistantState, LocalState } from ".";
2
2
  import { UpdateEvent } from "../cloudsync/sdk";
3
3
  import { WalletSyncDataManagerResolutionContext } from "./types";
4
4
  import { WSState } from "../store";
5
- export declare function makeSaveNewUpdate<S>({ ctx, getState, latestDistantStateSelector, localStateSelector, saveUpdate, }: {
5
+ export declare function makeSaveNewUpdate<S>({ ctx, getState, latestDistantStateSelector, latestDistantVersionSelector, localStateSelector, saveUpdate, }: {
6
6
  ctx: WalletSyncDataManagerResolutionContext;
7
7
  getState: () => S;
8
8
  latestDistantStateSelector: (state: S) => DistantState | null;
9
+ latestDistantVersionSelector: (state: S) => number;
9
10
  localStateSelector: (state: S) => LocalState;
10
11
  saveUpdate: (data: DistantState | null, version: number, newLocalState: LocalState | null) => Promise<void>;
11
12
  }): (event: UpdateEvent<DistantState>) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"incrementalUpdates.d.ts","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sCAAsC,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,EACnC,GAAG,EACH,QAAQ,EACR,0BAA0B,EAC1B,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,0BAA0B,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,GAAG,IAAI,CAAC;IAC9D,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAiCtD;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,EAC5C,GAAG,EACH,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,yBAAyB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;IACjD,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAetB"}
1
+ {"version":3,"file":"incrementalUpdates.d.ts","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sCAAsC,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,EACnC,GAAG,EACH,QAAQ,EACR,0BAA0B,EAC1B,4BAA4B,EAC5B,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,0BAA0B,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,GAAG,IAAI,CAAC;IAC9D,4BAA4B,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC;IACnD,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAqCtD;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,EAC5C,GAAG,EACH,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,UAAU,GACX,EAAE;IACD,GAAG,EAAE,sCAAsC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,yBAAyB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;IACjD,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC;IAC7C,UAAU,EAAE,CACV,IAAI,EAAE,YAAY,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,UAAU,GAAG,IAAI,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAetB"}
@@ -9,13 +9,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { log } from "@ledgerhq/logs";
11
11
  import walletsync from ".";
12
- export function makeSaveNewUpdate({ ctx, getState, latestDistantStateSelector, localStateSelector, saveUpdate, }) {
12
+ export function makeSaveNewUpdate({ ctx, getState, latestDistantStateSelector, latestDistantVersionSelector, localStateSelector, saveUpdate, }) {
13
13
  return (event) => __awaiter(this, void 0, void 0, function* () {
14
14
  log("walletsync", "saveNewUpdate", { event });
15
15
  switch (event.type) {
16
16
  case "new-data": {
17
17
  // we resolve incoming distant state changes
18
18
  const state = getState();
19
+ const latestVersion = latestDistantVersionSelector(state);
19
20
  const latest = latestDistantStateSelector(state);
20
21
  const local = localStateSelector(state);
21
22
  const data = event.data;
@@ -30,6 +31,9 @@ export function makeSaveNewUpdate({ ctx, getState, latestDistantStateSelector, l
30
31
  else {
31
32
  log("walletsync", "resolved. no changes to apply.");
32
33
  }
34
+ if (event.version !== latestVersion) {
35
+ yield saveUpdate(data, event.version, null);
36
+ }
33
37
  break;
34
38
  }
35
39
  case "pushed-data": {
@@ -1 +1 @@
1
- {"version":3,"file":"incrementalUpdates.js","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incrementalUpdates.js","sourceRoot":"","sources":["../../src/walletsync/incrementalUpdates.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/live-wallet",
3
- "version": "0.6.2-nightly.0",
3
+ "version": "0.6.2",
4
4
  "description": "Ledger Live wallet",
5
5
  "keywords": [
6
6
  "Ledger"
@@ -29,16 +29,16 @@
29
29
  "pako": "^2.0.4",
30
30
  "rxjs": "7",
31
31
  "zod": "^3.22.4",
32
- "@ledgerhq/coin-framework": "0.18.1",
33
- "@ledgerhq/cryptoassets": "13.5.0",
32
+ "@ledgerhq/coin-framework": "0.18.2",
33
+ "@ledgerhq/cryptoassets": "13.6.0",
34
34
  "@ledgerhq/devices": "8.4.4",
35
35
  "@ledgerhq/live-env": "2.3.0",
36
36
  "@ledgerhq/live-network": "2.0.1",
37
37
  "@ledgerhq/live-promise": "0.1.0",
38
38
  "@ledgerhq/logs": "6.12.0",
39
- "@ledgerhq/trustchain": "0.4.1-nightly.0",
40
- "@ledgerhq/types-cryptoassets": "7.15.2",
41
- "@ledgerhq/types-live": "6.51.1"
39
+ "@ledgerhq/trustchain": "0.4.1",
40
+ "@ledgerhq/types-cryptoassets": "7.16.0",
41
+ "@ledgerhq/types-live": "6.52.0"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@types/jest": "^29.5.10",
@@ -8,12 +8,14 @@ export function makeSaveNewUpdate<S>({
8
8
  ctx,
9
9
  getState,
10
10
  latestDistantStateSelector,
11
+ latestDistantVersionSelector,
11
12
  localStateSelector,
12
13
  saveUpdate,
13
14
  }: {
14
15
  ctx: WalletSyncDataManagerResolutionContext;
15
16
  getState: () => S;
16
17
  latestDistantStateSelector: (state: S) => DistantState | null;
18
+ latestDistantVersionSelector: (state: S) => number;
17
19
  localStateSelector: (state: S) => LocalState;
18
20
  saveUpdate: (
19
21
  data: DistantState | null,
@@ -27,6 +29,7 @@ export function makeSaveNewUpdate<S>({
27
29
  case "new-data": {
28
30
  // we resolve incoming distant state changes
29
31
  const state = getState();
32
+ const latestVersion = latestDistantVersionSelector(state);
30
33
  const latest = latestDistantStateSelector(state);
31
34
  const local = localStateSelector(state);
32
35
  const data = event.data;
@@ -41,6 +44,9 @@ export function makeSaveNewUpdate<S>({
41
44
  } else {
42
45
  log("walletsync", "resolved. no changes to apply.");
43
46
  }
47
+ if (event.version !== latestVersion) {
48
+ await saveUpdate(data, event.version, null);
49
+ }
44
50
  break;
45
51
  }
46
52
  case "pushed-data": {