@ledgerhq/live-common 34.48.0-nightly.0 → 34.48.0-nightly.1

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 (41) hide show
  1. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts +2 -2
  2. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts.map +1 -1
  3. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js +1 -1
  4. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
  5. package/lib/bridge/generic-alpaca/signOperation.js +1 -1
  6. package/lib/bridge/generic-alpaca/signOperation.js.map +1 -1
  7. package/lib/e2e/index.d.ts +1 -0
  8. package/lib/e2e/index.d.ts.map +1 -1
  9. package/lib/env.react.d.ts +1 -1
  10. package/lib/env.react.d.ts.map +1 -1
  11. package/lib/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.d.ts +2 -0
  12. package/lib/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.d.ts.map +1 -0
  13. package/lib/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.js +206 -0
  14. package/lib/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.js.map +1 -0
  15. package/lib/modularDrawer/hooks/useModularDrawerConfiguration.d.ts +13 -0
  16. package/lib/modularDrawer/hooks/useModularDrawerConfiguration.d.ts.map +1 -0
  17. package/lib/modularDrawer/hooks/useModularDrawerConfiguration.js +29 -0
  18. package/lib/modularDrawer/hooks/useModularDrawerConfiguration.js.map +1 -0
  19. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts +2 -2
  20. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts.map +1 -1
  21. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js +1 -1
  22. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
  23. package/lib-es/bridge/generic-alpaca/signOperation.js +1 -1
  24. package/lib-es/bridge/generic-alpaca/signOperation.js.map +1 -1
  25. package/lib-es/e2e/index.d.ts +1 -0
  26. package/lib-es/e2e/index.d.ts.map +1 -1
  27. package/lib-es/env.react.d.ts +1 -1
  28. package/lib-es/env.react.d.ts.map +1 -1
  29. package/lib-es/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.d.ts +2 -0
  30. package/lib-es/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.d.ts.map +1 -0
  31. package/lib-es/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.js +204 -0
  32. package/lib-es/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.js.map +1 -0
  33. package/lib-es/modularDrawer/hooks/useModularDrawerConfiguration.d.ts +13 -0
  34. package/lib-es/modularDrawer/hooks/useModularDrawerConfiguration.d.ts.map +1 -0
  35. package/lib-es/modularDrawer/hooks/useModularDrawerConfiguration.js +25 -0
  36. package/lib-es/modularDrawer/hooks/useModularDrawerConfiguration.js.map +1 -0
  37. package/package.json +45 -45
  38. package/src/bridge/generic-alpaca/alpaca/network/network-alpaca.ts +4 -3
  39. package/src/bridge/generic-alpaca/signOperation.ts +1 -1
  40. package/src/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.ts +251 -0
  41. package/src/modularDrawer/hooks/useModularDrawerConfiguration.ts +33 -0
@@ -0,0 +1,204 @@
1
+ /**
2
+ * @jest-environment jsdom
3
+ */
4
+ import { renderHook } from "@testing-library/react";
5
+ import { useFeature } from "../../../featureFlags";
6
+ import { useModularDrawerConfiguration } from "../useModularDrawerConfiguration";
7
+ jest.mock("../../../featureFlags", () => ({ useFeature: jest.fn() }));
8
+ const mockUseFeature = jest.mocked(useFeature);
9
+ describe("useModularDrawerConfiguration", () => {
10
+ beforeEach(() => {
11
+ jest.clearAllMocks();
12
+ });
13
+ describe("when modularization is disabled", () => {
14
+ beforeEach(() => {
15
+ mockUseFeature.mockReturnValue({
16
+ enabled: true,
17
+ params: {
18
+ enableModularization: false,
19
+ },
20
+ });
21
+ });
22
+ it("should return disabled configurations when no drawer configuration is provided", () => {
23
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer"));
24
+ expect(result.current.assetsConfiguration).toEqual({
25
+ rightElement: "undefined",
26
+ leftElement: "undefined",
27
+ filter: "undefined",
28
+ });
29
+ expect(result.current.networkConfiguration).toEqual({
30
+ rightElement: "undefined",
31
+ leftElement: "undefined",
32
+ });
33
+ });
34
+ it("should return disabled configurations even when drawer configuration is provided", () => {
35
+ const drawerConfiguration = {
36
+ assets: {
37
+ rightElement: "balance",
38
+ leftElement: "apy",
39
+ filter: "topNetworks",
40
+ },
41
+ networks: {
42
+ rightElement: "balance",
43
+ leftElement: "numberOfAccounts",
44
+ },
45
+ };
46
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
47
+ expect(result.current.assetsConfiguration).toEqual({
48
+ rightElement: "undefined",
49
+ leftElement: "undefined",
50
+ filter: "undefined",
51
+ });
52
+ expect(result.current.networkConfiguration).toEqual({
53
+ rightElement: "undefined",
54
+ leftElement: "undefined",
55
+ });
56
+ });
57
+ });
58
+ describe("when modularization is enabled", () => {
59
+ beforeEach(() => {
60
+ mockUseFeature.mockReturnValue({
61
+ enabled: true,
62
+ params: {
63
+ enableModularization: true,
64
+ },
65
+ });
66
+ });
67
+ it("should return undefined configurations when no drawer configuration is provided", () => {
68
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer"));
69
+ expect(result.current.assetsConfiguration).toBeUndefined();
70
+ expect(result.current.networkConfiguration).toBeUndefined();
71
+ });
72
+ it("should return the provided drawer configuration when modularization is enabled", () => {
73
+ const drawerConfiguration = {
74
+ assets: {
75
+ rightElement: "balance",
76
+ leftElement: "apy",
77
+ filter: "topNetworks",
78
+ },
79
+ networks: {
80
+ rightElement: "balance",
81
+ leftElement: "numberOfAccounts",
82
+ },
83
+ };
84
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
85
+ expect(result.current.assetsConfiguration).toEqual(drawerConfiguration.assets);
86
+ expect(result.current.networkConfiguration).toEqual(drawerConfiguration.networks);
87
+ });
88
+ it("should handle partial drawer configuration", () => {
89
+ const drawerConfiguration = {
90
+ assets: {
91
+ rightElement: "balance",
92
+ leftElement: "marketTrend",
93
+ filter: "topNetworks",
94
+ },
95
+ };
96
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
97
+ expect(result.current.assetsConfiguration).toEqual(drawerConfiguration.assets);
98
+ expect(result.current.networkConfiguration).toBeUndefined();
99
+ });
100
+ it("should handle configuration with undefined values", () => {
101
+ const drawerConfiguration = {
102
+ assets: undefined,
103
+ networks: {
104
+ rightElement: "balance",
105
+ leftElement: "numberOfAccountsAndApy",
106
+ },
107
+ };
108
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
109
+ expect(result.current.assetsConfiguration).toBeUndefined();
110
+ expect(result.current.networkConfiguration).toEqual(drawerConfiguration.networks);
111
+ });
112
+ });
113
+ describe("when feature flag is not available", () => {
114
+ beforeEach(() => {
115
+ mockUseFeature.mockReturnValue(null);
116
+ });
117
+ it("should default to disabled configuration when feature flag returns null", () => {
118
+ const drawerConfiguration = {
119
+ assets: {
120
+ rightElement: "balance",
121
+ leftElement: "apy",
122
+ filter: "topNetworks",
123
+ },
124
+ networks: {
125
+ rightElement: "balance",
126
+ leftElement: "numberOfAccounts",
127
+ },
128
+ };
129
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
130
+ expect(result.current.assetsConfiguration).toEqual({
131
+ rightElement: "undefined",
132
+ leftElement: "undefined",
133
+ filter: "undefined",
134
+ });
135
+ expect(result.current.networkConfiguration).toEqual({
136
+ rightElement: "undefined",
137
+ leftElement: "undefined",
138
+ });
139
+ });
140
+ });
141
+ describe("when feature flag params are not available", () => {
142
+ beforeEach(() => {
143
+ mockUseFeature.mockReturnValue({
144
+ enabled: true,
145
+ params: undefined,
146
+ });
147
+ });
148
+ it("should default to disabled configuration when params are undefined", () => {
149
+ const drawerConfiguration = {
150
+ assets: {
151
+ rightElement: "balance",
152
+ leftElement: "apy",
153
+ filter: "topNetworks",
154
+ },
155
+ networks: {
156
+ rightElement: "balance",
157
+ leftElement: "numberOfAccounts",
158
+ },
159
+ };
160
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
161
+ expect(result.current.assetsConfiguration).toEqual({
162
+ rightElement: "undefined",
163
+ leftElement: "undefined",
164
+ filter: "undefined",
165
+ });
166
+ expect(result.current.networkConfiguration).toEqual({
167
+ rightElement: "undefined",
168
+ leftElement: "undefined",
169
+ });
170
+ });
171
+ });
172
+ describe("when enableModularization param is not available", () => {
173
+ beforeEach(() => {
174
+ mockUseFeature.mockReturnValue({
175
+ enabled: true,
176
+ params: {},
177
+ });
178
+ });
179
+ it("should default to disabled configuration when enableModularization is not in params", () => {
180
+ const drawerConfiguration = {
181
+ assets: {
182
+ rightElement: "balance",
183
+ leftElement: "apy",
184
+ filter: "topNetworks",
185
+ },
186
+ networks: {
187
+ rightElement: "balance",
188
+ leftElement: "numberOfAccounts",
189
+ },
190
+ };
191
+ const { result } = renderHook(() => useModularDrawerConfiguration("lldModularDrawer", drawerConfiguration));
192
+ expect(result.current.assetsConfiguration).toEqual({
193
+ rightElement: "undefined",
194
+ leftElement: "undefined",
195
+ filter: "undefined",
196
+ });
197
+ expect(result.current.networkConfiguration).toEqual({
198
+ rightElement: "undefined",
199
+ leftElement: "undefined",
200
+ });
201
+ });
202
+ });
203
+ });
204
+ //# sourceMappingURL=useModularDrawerConfiguration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useModularDrawerConfiguration.test.js","sourceRoot":"","sources":["../../../../src/modularDrawer/hooks/__test__/useModularDrawerConfiguration.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { EnhancedModularDrawerConfiguration } from "../../wallet-api/ModularDrawer/types";
2
+ export declare const useModularDrawerConfiguration: (featureFlagKey: "lldModularDrawer" | "llmModularDrawer", drawerConfiguration?: EnhancedModularDrawerConfiguration) => {
3
+ assetsConfiguration: {
4
+ filter?: "undefined" | "topNetworks" | undefined;
5
+ leftElement?: "undefined" | "apy" | "marketTrend" | undefined;
6
+ rightElement?: "undefined" | "balance" | "marketTrend" | undefined;
7
+ } | undefined;
8
+ networkConfiguration: {
9
+ leftElement?: "undefined" | "numberOfAccounts" | "numberOfAccountsAndApy" | undefined;
10
+ rightElement?: "undefined" | "balance" | undefined;
11
+ } | undefined;
12
+ };
13
+ //# sourceMappingURL=useModularDrawerConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useModularDrawerConfiguration.d.ts","sourceRoot":"","sources":["../../../src/modularDrawer/hooks/useModularDrawerConfiguration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAa1F,eAAO,MAAM,6BAA6B,mBACxB,kBAAkB,GAAG,kBAAkB,wBACjC,kCAAkC;;;;;;;;;;CAgBzD,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { useFeature } from "../../featureFlags";
2
+ const assetConfigurationDisabled = {
3
+ rightElement: "undefined",
4
+ leftElement: "undefined",
5
+ filter: "undefined",
6
+ };
7
+ const networkConfigurationDisabled = {
8
+ rightElement: "undefined",
9
+ leftElement: "undefined",
10
+ };
11
+ export const useModularDrawerConfiguration = (featureFlagKey, drawerConfiguration) => {
12
+ const featureModularDrawer = useFeature(featureFlagKey);
13
+ const modularizationEnabled = featureModularDrawer?.params?.enableModularization ?? false;
14
+ const assetsConfiguration = modularizationEnabled
15
+ ? drawerConfiguration?.assets
16
+ : assetConfigurationDisabled;
17
+ const networkConfiguration = modularizationEnabled
18
+ ? drawerConfiguration?.networks
19
+ : networkConfigurationDisabled;
20
+ return {
21
+ assetsConfiguration,
22
+ networkConfiguration,
23
+ };
24
+ };
25
+ //# sourceMappingURL=useModularDrawerConfiguration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useModularDrawerConfiguration.js","sourceRoot":"","sources":["../../../src/modularDrawer/hooks/useModularDrawerConfiguration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD,MAAM,0BAA0B,GAAiD;IAC/E,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,WAAW;CACpB,CAAC;AAEF,MAAM,4BAA4B,GAAmD;IACnF,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,WAAW;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,cAAuD,EACvD,mBAAwD,EACxD,EAAE;IACF,MAAM,oBAAoB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAExD,MAAM,qBAAqB,GAAG,oBAAoB,EAAE,MAAM,EAAE,oBAAoB,IAAI,KAAK,CAAC;IAC1F,MAAM,mBAAmB,GAAG,qBAAqB;QAC/C,CAAC,CAAC,mBAAmB,EAAE,MAAM;QAC7B,CAAC,CAAC,0BAA0B,CAAC;IAC/B,MAAM,oBAAoB,GAAG,qBAAqB;QAChD,CAAC,CAAC,mBAAmB,EAAE,QAAQ;QAC/B,CAAC,CAAC,4BAA4B,CAAC;IAEjC,OAAO;QACL,mBAAmB;QACnB,oBAAoB;KACrB,CAAC;AACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ledgerhq/live-common",
3
3
  "description": "Common ground for the Ledger Live apps",
4
- "version": "34.48.0-nightly.0",
4
+ "version": "34.48.0-nightly.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/LedgerHQ/ledger-live.git"
@@ -165,44 +165,44 @@
165
165
  "xstate": "^5.19.2",
166
166
  "yargs": "^17.0.0",
167
167
  "zod": "^3.22.4",
168
- "@ledgerhq/coin-algorand": "^0.10.1-nightly.0",
169
- "@ledgerhq/coin-aptos": "^3.2.1-nightly.0",
170
- "@ledgerhq/coin-bitcoin": "^0.21.1-nightly.0",
171
- "@ledgerhq/coin-canton": "^0.4.1-nightly.0",
172
- "@ledgerhq/coin-cardano": "^0.12.1-nightly.0",
173
- "@ledgerhq/coin-casper": "^2.1.1-nightly.0",
174
- "@ledgerhq/coin-celo": "^1.3.1-nightly.0",
175
- "@ledgerhq/coin-cosmos": "^0.17.1-nightly.0",
176
- "@ledgerhq/coin-evm": "^2.29.1-nightly.0",
177
- "@ledgerhq/coin-framework": "^6.4.0-nightly.0",
178
- "@ledgerhq/coin-filecoin": "^1.11.1-nightly.0",
179
- "@ledgerhq/coin-hedera": "^1.11.1-nightly.0",
180
- "@ledgerhq/coin-icon": "^0.12.1-nightly.0",
181
- "@ledgerhq/coin-internet_computer": "^1.8.1-nightly.0",
182
- "@ledgerhq/coin-mina": "^1.2.1-nightly.0",
183
- "@ledgerhq/coin-multiversx": "^0.5.1-nightly.0",
184
- "@ledgerhq/coin-near": "^0.13.1-nightly.0",
185
- "@ledgerhq/coin-polkadot": "^6.9.1-nightly.0",
186
- "@ledgerhq/coin-solana": "^0.32.1-nightly.0",
187
- "@ledgerhq/coin-stacks": "^0.9.1-nightly.0",
188
- "@ledgerhq/coin-stellar": "^6.3.1-nightly.0",
189
- "@ledgerhq/coin-sui": "^0.12.1-nightly.0",
190
- "@ledgerhq/coin-tezos": "^6.3.1-nightly.0",
191
- "@ledgerhq/coin-ton": "^0.14.1-nightly.0",
192
- "@ledgerhq/coin-vechain": "^2.9.1-nightly.0",
193
- "@ledgerhq/coin-xrp": "^7.3.1-nightly.0",
168
+ "@ledgerhq/coin-aptos": "^3.3.0-nightly.1",
169
+ "@ledgerhq/coin-algorand": "^0.10.1-nightly.1",
170
+ "@ledgerhq/coin-bitcoin": "^0.21.1-nightly.1",
171
+ "@ledgerhq/coin-canton": "^0.5.0-nightly.1",
172
+ "@ledgerhq/coin-cardano": "^0.12.1-nightly.1",
173
+ "@ledgerhq/coin-casper": "^2.1.1-nightly.1",
174
+ "@ledgerhq/coin-celo": "^1.4.0-nightly.1",
175
+ "@ledgerhq/coin-cosmos": "^0.17.1-nightly.1",
176
+ "@ledgerhq/coin-evm": "^2.30.0-nightly.1",
177
+ "@ledgerhq/coin-filecoin": "^1.11.1-nightly.1",
178
+ "@ledgerhq/coin-framework": "^6.4.0-nightly.1",
179
+ "@ledgerhq/coin-hedera": "^1.11.1-nightly.1",
180
+ "@ledgerhq/coin-icon": "^0.12.1-nightly.1",
181
+ "@ledgerhq/coin-internet_computer": "^1.8.1-nightly.1",
182
+ "@ledgerhq/coin-mina": "^1.2.1-nightly.1",
183
+ "@ledgerhq/coin-multiversx": "^0.5.1-nightly.1",
184
+ "@ledgerhq/coin-near": "^0.13.1-nightly.1",
185
+ "@ledgerhq/coin-polkadot": "^6.10.0-nightly.1",
186
+ "@ledgerhq/coin-solana": "^0.32.1-nightly.1",
187
+ "@ledgerhq/coin-stacks": "^0.9.1-nightly.1",
188
+ "@ledgerhq/coin-stellar": "^6.4.0-nightly.1",
189
+ "@ledgerhq/coin-sui": "^0.13.0-nightly.1",
190
+ "@ledgerhq/coin-tezos": "^6.4.0-nightly.1",
191
+ "@ledgerhq/coin-ton": "^0.14.1-nightly.1",
192
+ "@ledgerhq/coin-tron": "^5.4.0-nightly.1",
193
+ "@ledgerhq/coin-vechain": "^2.9.1-nightly.1",
194
+ "@ledgerhq/coin-xrp": "^7.4.0-nightly.1",
194
195
  "@ledgerhq/crypto-icons-ui": "^1.18.0",
195
- "@ledgerhq/cryptoassets": "^13.27.0",
196
- "@ledgerhq/coin-tron": "^5.3.1-nightly.0",
197
- "@ledgerhq/device-core": "^0.6.2",
196
+ "@ledgerhq/cryptoassets": "^13.28.0-nightly.0",
197
+ "@ledgerhq/device-core": "^0.6.3-nightly.0",
198
198
  "@ledgerhq/devices": "8.5.1",
199
199
  "@ledgerhq/errors": "^6.25.0",
200
200
  "@ledgerhq/hw-app-algorand": "^6.31.6",
201
201
  "@ledgerhq/hw-app-aptos": "^6.34.6",
202
202
  "@ledgerhq/hw-app-btc": "^10.10.2",
203
- "@ledgerhq/hw-app-celo": "^6.34.2",
203
+ "@ledgerhq/hw-app-celo": "^6.34.3-nightly.0",
204
204
  "@ledgerhq/hw-app-cosmos": "^6.32.6",
205
- "@ledgerhq/hw-app-eth": "^6.45.17",
205
+ "@ledgerhq/hw-app-eth": "^6.45.18-nightly.0",
206
206
  "@ledgerhq/hw-app-exchange": "^0.13.2",
207
207
  "@ledgerhq/hw-app-hedera": "^1.2.6",
208
208
  "@ledgerhq/hw-app-icon": "^1.3.6",
@@ -213,26 +213,26 @@
213
213
  "@ledgerhq/hw-app-sui": "^1.4.0",
214
214
  "@ledgerhq/hw-app-tezos": "^6.31.6",
215
215
  "@ledgerhq/hw-app-trx": "^6.31.6",
216
- "@ledgerhq/hw-app-vet": "^0.5.15",
216
+ "@ledgerhq/hw-app-vet": "^0.5.16-nightly.0",
217
217
  "@ledgerhq/hw-app-xrp": "^6.32.4",
218
218
  "@ledgerhq/hw-transport": "^6.31.10",
219
219
  "@ledgerhq/hw-transport-mocker": "^6.29.10",
220
- "@ledgerhq/ledger-cal-service": "^1.3.1",
220
+ "@ledgerhq/ledger-cal-service": "^1.3.2-nightly.0",
221
221
  "@ledgerhq/live-config": "^3.2.0",
222
- "@ledgerhq/live-countervalues": "^0.7.1-nightly.0",
223
- "@ledgerhq/live-countervalues-react": "^0.5.2-nightly.0",
222
+ "@ledgerhq/live-countervalues": "^0.7.1-nightly.1",
223
+ "@ledgerhq/live-countervalues-react": "^0.5.2-nightly.1",
224
224
  "@ledgerhq/live-dmk-shared": "^0.12.3",
225
- "@ledgerhq/live-env": "^2.15.0",
225
+ "@ledgerhq/live-env": "^2.16.0-nightly.0",
226
226
  "@ledgerhq/live-hooks": "0.1.0",
227
- "@ledgerhq/live-network": "^2.0.16",
228
- "@ledgerhq/live-nft": "^0.8.20-nightly.0",
227
+ "@ledgerhq/live-network": "^2.0.17-nightly.0",
228
+ "@ledgerhq/live-nft": "^0.8.20-nightly.1",
229
229
  "@ledgerhq/live-promise": "^0.1.1",
230
- "@ledgerhq/live-signer-canton": "^0.2.4-nightly.0",
231
- "@ledgerhq/live-signer-evm": "^0.7.5-nightly.0",
232
- "@ledgerhq/live-signer-solana": "^0.5.5-nightly.0",
233
- "@ledgerhq/live-wallet": "^0.13.1-nightly.0",
230
+ "@ledgerhq/live-signer-canton": "^0.2.4-nightly.1",
231
+ "@ledgerhq/live-signer-evm": "^0.7.5-nightly.1",
232
+ "@ledgerhq/live-signer-solana": "^0.5.5-nightly.1",
233
+ "@ledgerhq/live-wallet": "^0.13.1-nightly.1",
234
234
  "@ledgerhq/logs": "^6.13.0",
235
- "@ledgerhq/speculos-transport": "^0.2.9",
235
+ "@ledgerhq/speculos-transport": "^0.2.10-nightly.0",
236
236
  "@ledgerhq/wallet-api-acre-module": "^0.6.0",
237
237
  "@ledgerhq/wallet-api-exchange-module": "^0.16.0"
238
238
  },
@@ -282,7 +282,7 @@
282
282
  "undici": "6.19.2",
283
283
  "uuid": "^8.3.2",
284
284
  "ws": "7",
285
- "@ledgerhq/device-react": "^0.2.43",
285
+ "@ledgerhq/device-react": "^0.2.44-nightly.0",
286
286
  "@ledgerhq/types-cryptoassets": "^7.26.0",
287
287
  "@ledgerhq/types-devices": "^6.27.0",
288
288
  "@ledgerhq/types-live": "^6.83.0"
@@ -13,6 +13,7 @@ import type {
13
13
  Page,
14
14
  Stake,
15
15
  Reward,
16
+ CraftedTransaction,
16
17
  } from "@ledgerhq/coin-framework/api/index";
17
18
  import network from "@ledgerhq/live-network";
18
19
 
@@ -160,8 +161,8 @@ const buildLastBlock = networkFamily =>
160
161
  };
161
162
 
162
163
  const buildCraftTransaction = networkFamily =>
163
- async function craftTransaction(intent: TransactionIntent<any>): Promise<string> {
164
- const { data } = await network<any, unknown>({
164
+ async function craftTransaction(intent: TransactionIntent<any>): Promise<CraftedTransaction> {
165
+ const { data } = await network<CraftedTransaction, unknown>({
165
166
  method: "POST",
166
167
  url: `${ALPACA_URL}/${networkFamily}/transaction/encode`,
167
168
  data: {
@@ -171,7 +172,7 @@ const buildCraftTransaction = networkFamily =>
171
172
  },
172
173
  },
173
174
  });
174
- return data.rawTransaction;
175
+ return data;
175
176
  };
176
177
 
177
178
  export const getNetworkAlpacaApi = (networkFamily: string) =>
@@ -123,7 +123,7 @@ export const genericSignOperation =
123
123
  transactionIntent.sequence = sequenceNumber;
124
124
 
125
125
  /* Craft unsigned blob via Alpaca */
126
- const unsigned: string = await getAlpacaApi(network, kind).craftTransaction(
126
+ const { transaction: unsigned } = await getAlpacaApi(network, kind).craftTransaction(
127
127
  transactionIntent,
128
128
  { value: fees },
129
129
  );