@ledgerhq/live-common 34.35.1 → 34.35.2-nightly.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/lib/apps/support.d.ts +1 -0
  2. package/lib/apps/support.d.ts.map +1 -1
  3. package/lib/apps/support.js +10 -1
  4. package/lib/apps/support.js.map +1 -1
  5. package/lib/e2e/enum/Account.d.ts +64 -58
  6. package/lib/e2e/enum/Account.d.ts.map +1 -1
  7. package/lib/e2e/enum/Account.js +80 -59
  8. package/lib/e2e/enum/Account.js.map +1 -1
  9. package/lib/e2e/enum/Device.d.ts +8 -0
  10. package/lib/e2e/enum/Device.d.ts.map +1 -0
  11. package/lib/e2e/enum/Device.js +14 -0
  12. package/lib/e2e/enum/Device.js.map +1 -0
  13. package/lib/e2e/enum/Swap.d.ts +2 -1
  14. package/lib/e2e/enum/Swap.d.ts.map +1 -1
  15. package/lib/e2e/enum/Swap.js +12 -10
  16. package/lib/e2e/enum/Swap.js.map +1 -1
  17. package/lib/e2e/families/cardano.d.ts.map +1 -1
  18. package/lib/e2e/families/cardano.js +55 -26
  19. package/lib/e2e/families/cardano.js.map +1 -1
  20. package/lib/e2e/families/evm.d.ts.map +1 -1
  21. package/lib/e2e/families/evm.js +2 -1
  22. package/lib/e2e/families/evm.js.map +1 -1
  23. package/lib/e2e/families/solana.d.ts.map +1 -1
  24. package/lib/e2e/families/solana.js +5 -2
  25. package/lib/e2e/families/solana.js.map +1 -1
  26. package/lib/e2e/index.d.ts +2 -0
  27. package/lib/e2e/index.d.ts.map +1 -1
  28. package/lib/e2e/models/BuySell.d.ts +11 -0
  29. package/lib/e2e/models/BuySell.d.ts.map +1 -0
  30. package/lib/{index.js → e2e/models/BuySell.js} +1 -1
  31. package/lib/e2e/models/BuySell.js.map +1 -0
  32. package/lib/e2e/models/Transaction.d.ts +5 -5
  33. package/lib/e2e/models/Transaction.d.ts.map +1 -1
  34. package/lib/e2e/models/Transaction.js.map +1 -1
  35. package/lib/e2e/speculos.d.ts +6 -1
  36. package/lib/e2e/speculos.d.ts.map +1 -1
  37. package/lib/e2e/speculos.js +72 -40
  38. package/lib/e2e/speculos.js.map +1 -1
  39. package/lib/e2e/speculosCI.d.ts +5 -0
  40. package/lib/e2e/speculosCI.d.ts.map +1 -0
  41. package/lib/e2e/speculosCI.js +129 -0
  42. package/lib/e2e/speculosCI.js.map +1 -0
  43. package/lib/families/hedera/logic.d.ts +2 -0
  44. package/lib/families/hedera/logic.d.ts.map +1 -0
  45. package/lib/families/hedera/logic.js +19 -0
  46. package/lib/families/hedera/logic.js.map +1 -0
  47. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
  48. package/lib/featureFlags/defaultFeatures.js +1 -0
  49. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  50. package/lib/featureFlags/useFeature.d.ts +1 -1
  51. package/lib/featureFlags/useFeature.d.ts.map +1 -1
  52. package/lib/hw/actions/manager.d.ts +1 -1
  53. package/lib/hw/actions/manager.d.ts.map +1 -1
  54. package/lib/hw/connectApp.d.ts.map +1 -1
  55. package/lib/hw/connectApp.js +56 -5
  56. package/lib/hw/connectApp.js.map +1 -1
  57. package/lib/hw/connectAppEventMapper.d.ts +29 -0
  58. package/lib/hw/connectAppEventMapper.d.ts.map +1 -0
  59. package/lib/hw/connectAppEventMapper.js +300 -0
  60. package/lib/hw/connectAppEventMapper.js.map +1 -0
  61. package/lib/hw/connectManager.d.ts +3 -2
  62. package/lib/hw/connectManager.d.ts.map +1 -1
  63. package/lib/hw/connectManager.js +34 -3
  64. package/lib/hw/connectManager.js.map +1 -1
  65. package/lib/hw/connectManagerEventMapper.d.ts +16 -0
  66. package/lib/hw/connectManagerEventMapper.d.ts.map +1 -0
  67. package/lib/hw/connectManagerEventMapper.js +78 -0
  68. package/lib/hw/connectManagerEventMapper.js.map +1 -0
  69. package/lib/market/hooks/useLargeMoverChartData.d.ts +18 -0
  70. package/lib/market/hooks/useLargeMoverChartData.d.ts.map +1 -0
  71. package/lib/market/hooks/useLargeMoverChartData.js +28 -0
  72. package/lib/market/hooks/useLargeMoverChartData.js.map +1 -0
  73. package/lib/market/hooks/useLargeMoverCurrencies.d.ts +13 -0
  74. package/lib/market/hooks/useLargeMoverCurrencies.d.ts.map +1 -0
  75. package/lib/market/hooks/useLargeMoverCurrencies.js +29 -0
  76. package/lib/market/hooks/useLargeMoverCurrencies.js.map +1 -0
  77. package/lib/notifications/AnnouncementProvider/index.d.ts.map +1 -1
  78. package/lib/notifications/AnnouncementProvider/index.js +12 -10
  79. package/lib/notifications/AnnouncementProvider/index.js.map +1 -1
  80. package/lib/notifications/AnnouncementProvider/machine.d.ts +1 -4
  81. package/lib/notifications/AnnouncementProvider/machine.d.ts.map +1 -1
  82. package/lib/notifications/AnnouncementProvider/machine.js +9 -8
  83. package/lib/notifications/AnnouncementProvider/machine.js.map +1 -1
  84. package/lib/notifications/ServiceStatusProvider/index.d.ts.map +1 -1
  85. package/lib/notifications/ServiceStatusProvider/index.js +5 -4
  86. package/lib/notifications/ServiceStatusProvider/index.js.map +1 -1
  87. package/lib/notifications/ServiceStatusProvider/machine.d.ts +1 -4
  88. package/lib/notifications/ServiceStatusProvider/machine.d.ts.map +1 -1
  89. package/lib/notifications/ServiceStatusProvider/machine.js +4 -4
  90. package/lib/notifications/ServiceStatusProvider/machine.js.map +1 -1
  91. package/lib/wallet-api/ModularDrawer/types.d.ts +63 -0
  92. package/lib/wallet-api/ModularDrawer/types.d.ts.map +1 -0
  93. package/lib/wallet-api/ModularDrawer/types.js +25 -0
  94. package/lib/wallet-api/ModularDrawer/types.js.map +1 -0
  95. package/lib/wallet-api/ModularDrawer/utils.d.ts +5 -0
  96. package/lib/wallet-api/ModularDrawer/utils.d.ts.map +1 -0
  97. package/lib/wallet-api/ModularDrawer/utils.js +30 -0
  98. package/lib/wallet-api/ModularDrawer/utils.js.map +1 -0
  99. package/lib/wallet-api/react.d.ts +2 -0
  100. package/lib/wallet-api/react.d.ts.map +1 -1
  101. package/lib/wallet-api/react.js +2 -1
  102. package/lib/wallet-api/react.js.map +1 -1
  103. package/lib-es/apps/support.d.ts +1 -0
  104. package/lib-es/apps/support.d.ts.map +1 -1
  105. package/lib-es/apps/support.js +8 -0
  106. package/lib-es/apps/support.js.map +1 -1
  107. package/lib-es/e2e/enum/Account.d.ts +64 -58
  108. package/lib-es/e2e/enum/Account.d.ts.map +1 -1
  109. package/lib-es/e2e/enum/Account.js +76 -58
  110. package/lib-es/e2e/enum/Account.js.map +1 -1
  111. package/lib-es/e2e/enum/Device.d.ts +8 -0
  112. package/lib-es/e2e/enum/Device.d.ts.map +1 -0
  113. package/lib-es/e2e/enum/Device.js +10 -0
  114. package/lib-es/e2e/enum/Device.js.map +1 -0
  115. package/lib-es/e2e/enum/Swap.d.ts +2 -1
  116. package/lib-es/e2e/enum/Swap.d.ts.map +1 -1
  117. package/lib-es/e2e/enum/Swap.js +12 -10
  118. package/lib-es/e2e/enum/Swap.js.map +1 -1
  119. package/lib-es/e2e/families/cardano.d.ts.map +1 -1
  120. package/lib-es/e2e/families/cardano.js +56 -27
  121. package/lib-es/e2e/families/cardano.js.map +1 -1
  122. package/lib-es/e2e/families/evm.d.ts.map +1 -1
  123. package/lib-es/e2e/families/evm.js +2 -1
  124. package/lib-es/e2e/families/evm.js.map +1 -1
  125. package/lib-es/e2e/families/solana.d.ts.map +1 -1
  126. package/lib-es/e2e/families/solana.js +5 -2
  127. package/lib-es/e2e/families/solana.js.map +1 -1
  128. package/lib-es/e2e/index.d.ts +2 -0
  129. package/lib-es/e2e/index.d.ts.map +1 -1
  130. package/lib-es/e2e/models/BuySell.d.ts +11 -0
  131. package/lib-es/e2e/models/BuySell.d.ts.map +1 -0
  132. package/lib-es/e2e/models/BuySell.js +2 -0
  133. package/lib-es/e2e/models/BuySell.js.map +1 -0
  134. package/lib-es/e2e/models/Transaction.d.ts +5 -5
  135. package/lib-es/e2e/models/Transaction.d.ts.map +1 -1
  136. package/lib-es/e2e/models/Transaction.js.map +1 -1
  137. package/lib-es/e2e/speculos.d.ts +6 -1
  138. package/lib-es/e2e/speculos.d.ts.map +1 -1
  139. package/lib-es/e2e/speculos.js +69 -39
  140. package/lib-es/e2e/speculos.js.map +1 -1
  141. package/lib-es/e2e/speculosCI.d.ts +5 -0
  142. package/lib-es/e2e/speculosCI.d.ts.map +1 -0
  143. package/lib-es/e2e/speculosCI.js +121 -0
  144. package/lib-es/e2e/speculosCI.js.map +1 -0
  145. package/lib-es/families/hedera/logic.d.ts +2 -0
  146. package/lib-es/families/hedera/logic.d.ts.map +1 -0
  147. package/lib-es/families/hedera/logic.js +3 -0
  148. package/lib-es/families/hedera/logic.js.map +1 -0
  149. package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
  150. package/lib-es/featureFlags/defaultFeatures.js +1 -0
  151. package/lib-es/featureFlags/defaultFeatures.js.map +1 -1
  152. package/lib-es/featureFlags/useFeature.d.ts +1 -1
  153. package/lib-es/featureFlags/useFeature.d.ts.map +1 -1
  154. package/lib-es/hw/actions/manager.d.ts +1 -1
  155. package/lib-es/hw/actions/manager.d.ts.map +1 -1
  156. package/lib-es/hw/connectApp.d.ts.map +1 -1
  157. package/lib-es/hw/connectApp.js +57 -6
  158. package/lib-es/hw/connectApp.js.map +1 -1
  159. package/lib-es/hw/connectAppEventMapper.d.ts +29 -0
  160. package/lib-es/hw/connectAppEventMapper.d.ts.map +1 -0
  161. package/lib-es/hw/connectAppEventMapper.js +296 -0
  162. package/lib-es/hw/connectAppEventMapper.js.map +1 -0
  163. package/lib-es/hw/connectManager.d.ts +3 -2
  164. package/lib-es/hw/connectManager.d.ts.map +1 -1
  165. package/lib-es/hw/connectManager.js +34 -4
  166. package/lib-es/hw/connectManager.js.map +1 -1
  167. package/lib-es/hw/connectManagerEventMapper.d.ts +16 -0
  168. package/lib-es/hw/connectManagerEventMapper.d.ts.map +1 -0
  169. package/lib-es/hw/connectManagerEventMapper.js +74 -0
  170. package/lib-es/hw/connectManagerEventMapper.js.map +1 -0
  171. package/lib-es/market/hooks/useLargeMoverChartData.d.ts +18 -0
  172. package/lib-es/market/hooks/useLargeMoverChartData.d.ts.map +1 -0
  173. package/lib-es/market/hooks/useLargeMoverChartData.js +24 -0
  174. package/lib-es/market/hooks/useLargeMoverChartData.js.map +1 -0
  175. package/lib-es/market/hooks/useLargeMoverCurrencies.d.ts +13 -0
  176. package/lib-es/market/hooks/useLargeMoverCurrencies.d.ts.map +1 -0
  177. package/lib-es/market/hooks/useLargeMoverCurrencies.js +25 -0
  178. package/lib-es/market/hooks/useLargeMoverCurrencies.js.map +1 -0
  179. package/lib-es/notifications/AnnouncementProvider/index.d.ts.map +1 -1
  180. package/lib-es/notifications/AnnouncementProvider/index.js +12 -10
  181. package/lib-es/notifications/AnnouncementProvider/index.js.map +1 -1
  182. package/lib-es/notifications/AnnouncementProvider/machine.d.ts +1 -4
  183. package/lib-es/notifications/AnnouncementProvider/machine.d.ts.map +1 -1
  184. package/lib-es/notifications/AnnouncementProvider/machine.js +9 -8
  185. package/lib-es/notifications/AnnouncementProvider/machine.js.map +1 -1
  186. package/lib-es/notifications/ServiceStatusProvider/index.d.ts.map +1 -1
  187. package/lib-es/notifications/ServiceStatusProvider/index.js +5 -4
  188. package/lib-es/notifications/ServiceStatusProvider/index.js.map +1 -1
  189. package/lib-es/notifications/ServiceStatusProvider/machine.d.ts +1 -4
  190. package/lib-es/notifications/ServiceStatusProvider/machine.d.ts.map +1 -1
  191. package/lib-es/notifications/ServiceStatusProvider/machine.js +4 -4
  192. package/lib-es/notifications/ServiceStatusProvider/machine.js.map +1 -1
  193. package/lib-es/wallet-api/ModularDrawer/types.d.ts +63 -0
  194. package/lib-es/wallet-api/ModularDrawer/types.d.ts.map +1 -0
  195. package/lib-es/wallet-api/ModularDrawer/types.js +22 -0
  196. package/lib-es/wallet-api/ModularDrawer/types.js.map +1 -0
  197. package/lib-es/wallet-api/ModularDrawer/utils.d.ts +5 -0
  198. package/lib-es/wallet-api/ModularDrawer/utils.d.ts.map +1 -0
  199. package/lib-es/wallet-api/ModularDrawer/utils.js +25 -0
  200. package/lib-es/wallet-api/ModularDrawer/utils.js.map +1 -0
  201. package/lib-es/wallet-api/react.d.ts +2 -0
  202. package/lib-es/wallet-api/react.d.ts.map +1 -1
  203. package/lib-es/wallet-api/react.js +2 -1
  204. package/lib-es/wallet-api/react.js.map +1 -1
  205. package/package.json +50 -49
  206. package/src/apps/support.ts +11 -0
  207. package/src/e2e/enum/Account.ts +363 -362
  208. package/src/e2e/enum/Device.ts +7 -0
  209. package/src/e2e/enum/Swap.ts +10 -9
  210. package/src/e2e/families/cardano.ts +63 -28
  211. package/src/e2e/families/evm.ts +2 -1
  212. package/src/e2e/families/solana.ts +5 -2
  213. package/src/e2e/models/BuySell.ts +12 -0
  214. package/src/e2e/models/Transaction.ts +5 -5
  215. package/src/e2e/speculos.ts +75 -41
  216. package/src/e2e/speculosCI.ts +161 -0
  217. package/src/families/hedera/logic.ts +2 -0
  218. package/src/featureFlags/defaultFeatures.ts +1 -0
  219. package/src/hw/actions/manager.ts +1 -1
  220. package/src/hw/connectApp.ts +245 -178
  221. package/src/hw/connectAppEventMapper.ts +364 -0
  222. package/src/hw/connectManager.ts +116 -74
  223. package/src/hw/connectManagerEventMapper.ts +109 -0
  224. package/src/market/hooks/useLargeMoverChartData.ts +38 -0
  225. package/src/market/hooks/useLargeMoverCurrencies.ts +36 -0
  226. package/src/notifications/AnnouncementProvider/index.tsx +21 -17
  227. package/src/notifications/AnnouncementProvider/machine.ts +9 -8
  228. package/src/notifications/ServiceStatusProvider/index.tsx +11 -8
  229. package/src/notifications/ServiceStatusProvider/machine.ts +4 -4
  230. package/src/wallet-api/ModularDrawer/types.ts +45 -0
  231. package/src/wallet-api/ModularDrawer/utils.ts +37 -0
  232. package/src/wallet-api/react.ts +37 -31
  233. package/lib/index.d.ts +0 -2
  234. package/lib/index.d.ts.map +0 -1
  235. package/lib/index.js.map +0 -1
  236. package/lib/market/hooks/useLargeMoverDataProvider.d.ts +0 -17
  237. package/lib/market/hooks/useLargeMoverDataProvider.d.ts.map +0 -1
  238. package/lib/market/hooks/useLargeMoverDataProvider.js +0 -48
  239. package/lib/market/hooks/useLargeMoverDataProvider.js.map +0 -1
  240. package/lib-es/index.d.ts +0 -1
  241. package/lib-es/index.d.ts.map +0 -1
  242. package/lib-es/index.js +0 -2
  243. package/lib-es/index.js.map +0 -1
  244. package/lib-es/market/hooks/useLargeMoverDataProvider.d.ts +0 -17
  245. package/lib-es/market/hooks/useLargeMoverDataProvider.d.ts.map +0 -1
  246. package/lib-es/market/hooks/useLargeMoverDataProvider.js +0 -44
  247. package/lib-es/market/hooks/useLargeMoverDataProvider.js.map +0 -1
  248. package/src/index.ts +0 -0
  249. package/src/market/hooks/useLargeMoverDataProvider.ts +0 -70
@@ -1,6 +1,7 @@
1
- import { Observable, concat, from, of, throwError } from "rxjs";
1
+ import { Observable, concat, concatWith, from, of, throwError } from "rxjs";
2
2
  import { concatMap, catchError, delay } from "rxjs/operators";
3
3
  import { TransportStatusError, DeviceOnDashboardExpected, StatusCodes, LockedDeviceError, } from "@ledgerhq/errors";
4
+ import { PrepareConnectManagerDeviceAction } from "@ledgerhq/live-dmk-shared";
4
5
  import { listAppsUseCase } from "../device/use-cases/listAppsUseCase";
5
6
  import { withDevice } from "./deviceAccess";
6
7
  import getDeviceInfo from "./getDeviceInfo";
@@ -8,7 +9,8 @@ import getAppAndVersion from "./getAppAndVersion";
8
9
  import { isDashboardName } from "./isDashboardName";
9
10
  import { DeviceNotOnboarded } from "../errors";
10
11
  import attemptToQuitApp from "./attemptToQuitApp";
11
- const cmd = ({ deviceId, request }) => withDevice(deviceId)(transport => new Observable(o => {
12
+ import { PrepareConnectManagerEventMapper } from "./connectManagerEventMapper";
13
+ const cmd = (transport, { request }) => new Observable(o => {
12
14
  const timeoutSub = of({
13
15
  type: "unresponsiveDevice",
14
16
  })
@@ -67,6 +69,34 @@ const cmd = ({ deviceId, request }) => withDevice(deviceId)(transport => new Obs
67
69
  timeoutSub.unsubscribe();
68
70
  sub.unsubscribe();
69
71
  };
70
- }));
71
- export default cmd;
72
+ });
73
+ const isDmkTransport = (transport) => {
74
+ return ("dmk" in transport &&
75
+ transport.dmk !== undefined &&
76
+ "sessionId" in transport &&
77
+ transport.sessionId !== undefined);
78
+ };
79
+ export default function connectManagerFactory({ isLdmkConnectAppEnabled, } = { isLdmkConnectAppEnabled: false }) {
80
+ if (!isLdmkConnectAppEnabled) {
81
+ return ({ deviceId, request }) => withDevice(deviceId)(transport => cmd(transport, { deviceId, request }));
82
+ }
83
+ return ({ deviceId, request }) => withDevice(deviceId)(transport => {
84
+ if (!isDmkTransport(transport)) {
85
+ return cmd(transport, { deviceId, request });
86
+ }
87
+ const { dmk, sessionId } = transport;
88
+ const deviceAction = new PrepareConnectManagerDeviceAction({
89
+ input: {
90
+ unlockTimeout: 0, // Expect to fail immediately when device is locked
91
+ },
92
+ });
93
+ const observable = dmk.executeDeviceAction({
94
+ sessionId,
95
+ deviceAction,
96
+ });
97
+ return new PrepareConnectManagerEventMapper(observable)
98
+ .map()
99
+ .pipe(concatWith(cmd(transport, { deviceId, request })));
100
+ });
101
+ }
72
102
  //# sourceMappingURL=connectManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connectManager.js","sourceRoot":"","sources":["../../src/hw/connectManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connectManager.js","sourceRoot":"","sources":["../../src/hw/connectManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Observable } from "rxjs";
2
+ import type { ExecuteDeviceActionReturnType } from "@ledgerhq/device-management-kit";
3
+ import type { PrepareConnectManagerDAOutput, PrepareConnectManagerDAError, PrepareConnectManagerDAIntermediateValue } from "@ledgerhq/live-dmk-shared";
4
+ import { LockedDeviceEvent } from "./actions/types";
5
+ export declare class PrepareConnectManagerEventMapper {
6
+ private events;
7
+ private eventSubject;
8
+ constructor(events: ExecuteDeviceActionReturnType<PrepareConnectManagerDAOutput, PrepareConnectManagerDAError, PrepareConnectManagerDAIntermediateValue>);
9
+ map(): Observable<LockedDeviceEvent>;
10
+ private handleEvent;
11
+ private handlePendingEvent;
12
+ private handleCompletedEvent;
13
+ private handleErrorEvent;
14
+ private handleError;
15
+ }
16
+ //# sourceMappingURL=connectManagerEventMapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectManagerEventMapper.d.ts","sourceRoot":"","sources":["../../src/hw/connectManagerEventMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA0B,MAAM,MAAM,CAAC;AAE1D,OAAO,KAAK,EAEV,6BAA6B,EAC9B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,KAAK,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,wCAAwC,EACzC,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,qBAAa,gCAAgC;IAIzC,OAAO,CAAC,MAAM;IAHhB,OAAO,CAAC,YAAY,CAAoC;gBAG9C,MAAM,EAAE,6BAA6B,CAC3C,6BAA6B,EAC7B,4BAA4B,EAC5B,wCAAwC,CACzC;IAGH,GAAG,IAAI,UAAU,CAAC,iBAAiB,CAAC;IAuBpC,OAAO,CAAC,WAAW;IAwBnB,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,WAAW;CAIpB"}
@@ -0,0 +1,74 @@
1
+ import { Observable, Subject, of, takeUntil } from "rxjs";
2
+ import { catchError, tap } from "rxjs/operators";
3
+ import { DeviceActionStatus, DeviceLockedError, UserInteractionRequired, } from "@ledgerhq/device-management-kit";
4
+ import { DisconnectedDevice } from "@ledgerhq/errors";
5
+ export class PrepareConnectManagerEventMapper {
6
+ events;
7
+ eventSubject = new Subject();
8
+ constructor(events) {
9
+ this.events = events;
10
+ }
11
+ map() {
12
+ const cancelAction = this.events.cancel;
13
+ const unsubscribe = new Subject();
14
+ // Subscribe to device action events
15
+ this.events.observable
16
+ .pipe(tap(event => this.handleEvent(event)), takeUntil(unsubscribe), catchError(error => this.handleError(error)))
17
+ .subscribe();
18
+ return new Observable(observer => {
19
+ const sub = this.eventSubject.subscribe(observer);
20
+ return () => {
21
+ sub.unsubscribe();
22
+ cancelAction();
23
+ unsubscribe.next();
24
+ };
25
+ });
26
+ }
27
+ handleEvent(event) {
28
+ switch (event.status) {
29
+ case DeviceActionStatus.Pending:
30
+ this.handlePendingEvent(event.intermediateValue);
31
+ break;
32
+ case DeviceActionStatus.Completed:
33
+ this.handleCompletedEvent(event.output);
34
+ break;
35
+ case DeviceActionStatus.Error:
36
+ this.handleErrorEvent(event.error);
37
+ break;
38
+ case DeviceActionStatus.NotStarted:
39
+ case DeviceActionStatus.Stopped:
40
+ this.eventSubject.error(new Error("Unexpected device action status"));
41
+ break;
42
+ }
43
+ }
44
+ handlePendingEvent(intermediateValue) {
45
+ switch (intermediateValue.requiredUserInteraction) {
46
+ case UserInteractionRequired.UnlockDevice:
47
+ this.eventSubject.next({ type: "lockedDevice" });
48
+ break;
49
+ case UserInteractionRequired.None:
50
+ // Nothing to do
51
+ break;
52
+ }
53
+ }
54
+ handleCompletedEvent(_output) {
55
+ this.eventSubject.complete();
56
+ }
57
+ handleErrorEvent(error) {
58
+ if (error instanceof DeviceLockedError) {
59
+ this.eventSubject.next({ type: "lockedDevice" });
60
+ this.eventSubject.complete();
61
+ }
62
+ else if ("_tag" in error && error._tag === "WebHidSendReportError") {
63
+ this.eventSubject.error(new DisconnectedDevice());
64
+ }
65
+ else {
66
+ this.eventSubject.error(error);
67
+ }
68
+ }
69
+ handleError(error) {
70
+ this.eventSubject.error(error);
71
+ return of();
72
+ }
73
+ }
74
+ //# sourceMappingURL=connectManagerEventMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectManagerEventMapper.js","sourceRoot":"","sources":["../../src/hw/connectManagerEventMapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { MarketCoinDataChart } from "../utils/types";
2
+ type UseLargeMoverChartDataParams = {
3
+ ids: string[];
4
+ counterCurrency: string;
5
+ range: string;
6
+ };
7
+ export declare const useLargeMoverChartData: ({ ids, counterCurrency, range, }: UseLargeMoverChartDataParams) => {
8
+ chartDataArray: {
9
+ idChartData: string;
10
+ chartData: MarketCoinDataChart | undefined;
11
+ isLoading: boolean;
12
+ isError: boolean;
13
+ }[];
14
+ loadingChart: boolean;
15
+ errorChart: boolean;
16
+ };
17
+ export {};
18
+ //# sourceMappingURL=useLargeMoverChartData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLargeMoverChartData.d.ts","sourceRoot":"","sources":["../../../src/market/hooks/useLargeMoverChartData.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,KAAK,4BAA4B,GAAG;IAClC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,sBAAsB,qCAIhC,4BAA4B;;;;;;;;;CAqB9B,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { useQueries } from "@tanstack/react-query";
2
+ import { fetchCurrencyChartData } from "../api";
3
+ import { QUERY_KEY } from "../utils/queryKeys";
4
+ import { REFETCH_TIME_ONE_MINUTE, BASIC_REFETCH } from "../utils/timers";
5
+ export const useLargeMoverChartData = ({ ids, counterCurrency, range, }) => {
6
+ const chartQueries = useQueries({
7
+ queries: ids.map(id => ({
8
+ queryKey: [QUERY_KEY.CurrencyChartData, id, counterCurrency, range],
9
+ queryFn: () => fetchCurrencyChartData({ id, counterCurrency, range }),
10
+ refetchInterval: REFETCH_TIME_ONE_MINUTE * BASIC_REFETCH,
11
+ staleTime: REFETCH_TIME_ONE_MINUTE * BASIC_REFETCH,
12
+ })),
13
+ });
14
+ const loadingChart = chartQueries.some(query => query.isLoading);
15
+ const errorChart = chartQueries.every(query => query.isError);
16
+ const chartDataArray = ids.map((id, index) => ({
17
+ idChartData: id,
18
+ chartData: chartQueries[index]?.data,
19
+ isLoading: chartQueries[index]?.isLoading || false,
20
+ isError: chartQueries[index]?.isError || false,
21
+ }));
22
+ return { chartDataArray, loadingChart, errorChart };
23
+ };
24
+ //# sourceMappingURL=useLargeMoverChartData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLargeMoverChartData.js","sourceRoot":"","sources":["../../../src/market/hooks/useLargeMoverChartData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AASzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,GAAG,EACH,eAAe,EACf,KAAK,GACwB,EAAE,EAAE;IACjC,MAAM,YAAY,GAAG,UAAU,CAAC;QAC9B,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtB,QAAQ,EAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC;YACnE,OAAO,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;YACrE,eAAe,EAAE,uBAAuB,GAAG,aAAa;YACxD,SAAS,EAAE,uBAAuB,GAAG,aAAa;SACnD,CAAC,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE9D,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7C,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,IAAuC;QACvE,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,KAAK;QAClD,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI,KAAK;KAC/C,CAAC,CAAC,CAAC;IAEJ,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACtD,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { CurrencyData } from "../utils/types";
2
+ type UseLargeMoverCurrenciesParams = {
3
+ ids: string[];
4
+ counterCurrency: string;
5
+ };
6
+ export declare const useLargeMoverCurrencies: ({ ids, counterCurrency, }: UseLargeMoverCurrenciesParams) => {
7
+ id: string;
8
+ data: CurrencyData | undefined;
9
+ isLoading: boolean;
10
+ isError: boolean;
11
+ }[];
12
+ export {};
13
+ //# sourceMappingURL=useLargeMoverCurrencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLargeMoverCurrencies.d.ts","sourceRoot":"","sources":["../../../src/market/hooks/useLargeMoverCurrencies.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAMlE,KAAK,6BAA6B,GAAG;IACnC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,uBAAuB,8BAGjC,6BAA6B;;;;;GAiB/B,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { useQueries } from "@tanstack/react-query";
2
+ import { fetchCurrency } from "../api";
3
+ import { QUERY_KEY } from "../utils/queryKeys";
4
+ import { REFETCH_TIME_ONE_MINUTE, BASIC_REFETCH } from "../utils/timers";
5
+ import { format } from "../utils/currencyFormatter";
6
+ import { listCryptoCurrencies } from "@ledgerhq/cryptoassets/currencies";
7
+ const cryptoCurrenciesList = [...listCryptoCurrencies()];
8
+ export const useLargeMoverCurrencies = ({ ids, counterCurrency, }) => {
9
+ const currencyQueries = useQueries({
10
+ queries: ids.map(id => ({
11
+ queryKey: [QUERY_KEY.CurrencyDataRaw, id, counterCurrency],
12
+ queryFn: () => fetchCurrency({ id, counterCurrency }),
13
+ refetchInterval: REFETCH_TIME_ONE_MINUTE * BASIC_REFETCH,
14
+ staleTime: REFETCH_TIME_ONE_MINUTE * BASIC_REFETCH,
15
+ select: (data) => format(data, cryptoCurrenciesList),
16
+ })),
17
+ });
18
+ return ids.map((id, index) => ({
19
+ id,
20
+ data: currencyQueries[index]?.data,
21
+ isLoading: currencyQueries[index]?.isLoading || false,
22
+ isError: currencyQueries[index]?.isError || false,
23
+ }));
24
+ };
25
+ //# sourceMappingURL=useLargeMoverCurrencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLargeMoverCurrencies.js","sourceRoot":"","sources":["../../../src/market/hooks/useLargeMoverCurrencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAEzE,MAAM,oBAAoB,GAAG,CAAC,GAAG,oBAAoB,EAAE,CAAC,CAAC;AAOzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACtC,GAAG,EACH,eAAe,GACe,EAAE,EAAE;IAClC,MAAM,eAAe,GAAG,UAAU,CAAC;QACjC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtB,QAAQ,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,EAAE,eAAe,CAAC;YAC1D,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC;YACrD,eAAe,EAAE,uBAAuB,GAAG,aAAa;YACxD,SAAS,EAAE,uBAAuB,GAAG,aAAa;YAClD,MAAM,EAAE,CAAC,IAAwB,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC;SACzE,CAAC,CAAC;KACJ,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7B,EAAE;QACF,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,IAAgC;QAC9D,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,KAAK;QACrD,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI,KAAK;KAClD,CAAC,CAAC,CAAC;AACN,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAmD,YAAY,EAAE,MAAM,OAAO,CAAC;AAG7F,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAyB,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAOhG,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,EAAE,MAAM,OAAO,CAAC;QACxB,aAAa,EAAE,YAAY,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,UAAU,EAAE,CAAC,IAAI,EAAE;QACjB,aAAa,EAAE,YAAY,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACxB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,EAAE,yBAAyB,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AACF,KAAK,GAAG,GAAG;IACT,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAAC;AACF,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,GAAG,CAAC;AAWlD,wBAAgB,gBAAgB,IAAI,uBAAuB,CAE1D;AACD,eAAO,MAAM,oBAAoB,qHAS9B,KAAK,KAAG,YAuFV,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAmD,YAAY,EAAE,MAAM,OAAO,CAAC;AAI7F,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAyB,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAOhG,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,EAAE,MAAM,OAAO,CAAC;QACxB,aAAa,EAAE,YAAY,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,UAAU,EAAE,CAAC,IAAI,EAAE;QACjB,aAAa,EAAE,YAAY,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACxB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,EAAE,yBAAyB,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AACF,KAAK,GAAG,GAAG;IACT,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAAC;AACF,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,GAAG,CAAC;AAWlD,wBAAgB,gBAAgB,IAAI,uBAAuB,CAE1D;AACD,eAAO,MAAM,oBAAoB,qHAS9B,KAAK,KAAG,YA0FV,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import React, { createContext, useMemo, useCallback, useContext } from "react";
2
2
  import differenceBy from "lodash/differenceBy";
3
+ import { fromPromise } from "xstate";
3
4
  import { useMachine } from "@xstate/react";
4
5
  import { localizeAnnouncements, filterAnnouncements } from "./logic";
5
6
  import defaultFetchApi from "./api";
@@ -18,7 +19,8 @@ export function useAnnouncements() {
18
19
  return useContext(AnnouncementsContext);
19
20
  }
20
21
  export const AnnouncementProvider = ({ children, context, handleLoad, handleSave, autoUpdateDelay, onNewAnnouncement, onAnnouncementRead, fetchApi = defaultFetchApi, }) => {
21
- const fetchData = useCallback(async ({ allIds, cache }) => {
22
+ const fetchData = useCallback(async (arg0) => {
23
+ const { allIds, cache } = arg0.input;
22
24
  const rawAnnouncements = await fetchApi.fetchAnnouncements();
23
25
  const localizedAnnouncements = localizeAnnouncements(rawAnnouncements, context);
24
26
  const announcements = filterAnnouncements(localizedAnnouncements, context);
@@ -34,9 +36,9 @@ export const AnnouncementProvider = ({ children, context, handleLoad, handleSave
34
36
  updateTime: Date.now(),
35
37
  };
36
38
  }, [context, onNewAnnouncement, fetchApi]);
37
- const emitNewAnnouncement = useCallback(({ cache }, { seenId }) => {
39
+ const emitNewAnnouncement = useCallback(({ context }) => {
38
40
  if (onAnnouncementRead) {
39
- onAnnouncementRead(cache[seenId]);
41
+ onAnnouncementRead(context.cache[context.seenId]);
40
42
  }
41
43
  }, [onAnnouncementRead]);
42
44
  const loadData = useCallback(async () => {
@@ -47,7 +49,7 @@ export const AnnouncementProvider = ({ children, context, handleLoad, handleSave
47
49
  seenIds,
48
50
  };
49
51
  }, [handleLoad]);
50
- const saveData = useCallback(context => {
52
+ const saveData = useCallback(({ context }) => {
51
53
  const { cache, lastUpdateTime, seenIds, allIds } = context;
52
54
  const announcements = allIds.map((id) => cache[id]);
53
55
  handleSave({
@@ -56,19 +58,19 @@ export const AnnouncementProvider = ({ children, context, handleLoad, handleSave
56
58
  lastUpdateTime,
57
59
  });
58
60
  }, [handleSave]);
59
- const [state, send] = useMachine(announcementMachine, {
61
+ const [state, send] = useMachine(announcementMachine.provide({
60
62
  actions: {
61
63
  saveData,
62
- emitNewAnnouncement: emitNewAnnouncement,
64
+ emitNewAnnouncement,
63
65
  },
64
- services: {
65
- loadData,
66
- fetchData,
66
+ actors: {
67
+ loadData: fromPromise(loadData),
68
+ fetchData: fromPromise(fetchData),
67
69
  },
68
70
  delays: {
69
71
  AUTO_UPDATE_DELAY: autoUpdateDelay,
70
72
  },
71
- });
73
+ }));
72
74
  const api = useMemo(() => ({
73
75
  updateCache: async () => {
74
76
  send({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/index.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,3 @@
1
1
  import type { State } from "./types";
2
- export declare const announcementMachine: import("xstate").StateMachine<State, any, import("xstate").AnyEventObject, {
3
- value: any;
4
- context: State;
5
- }, import("xstate").BaseActionObject, import("xstate").ServiceMap, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, import("xstate").AnyEventObject, import("xstate").BaseActionObject, import("xstate").ServiceMap>>;
2
+ export declare const announcementMachine: import("xstate").StateMachine<State, import("xstate").AnyEventObject, Record<string, import("xstate").AnyActorRef>, import("xstate").ProvidedActor, import("xstate").ParameterizedObject, import("xstate").ParameterizedObject, string, import("xstate").StateValue, string, unknown, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, any>;
6
3
  //# sourceMappingURL=machine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/machine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AASrC,eAAO,MAAM,mBAAmB;;;0OA4F/B,CAAC"}
1
+ {"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/machine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AASrC,eAAO,MAAM,mBAAmB,6XA6F/B,CAAC"}
@@ -18,8 +18,8 @@ export const announcementMachine = createMachine({
18
18
  src: "loadData",
19
19
  onDone: {
20
20
  target: "updating",
21
- actions: assign((_, { data }) => {
22
- const { announcements, seenIds, lastUpdateTime } = data;
21
+ actions: assign(({ event }) => {
22
+ const { announcements, seenIds, lastUpdateTime } = event.output;
23
23
  const cache = {};
24
24
  announcements.forEach(announcement => {
25
25
  cache[announcement.uuid] = announcement;
@@ -54,11 +54,12 @@ export const announcementMachine = createMachine({
54
54
  updating: {
55
55
  invoke: {
56
56
  src: "fetchData",
57
+ input: ({ context }) => ({ allIds: context.allIds, cache: context.cache }),
57
58
  onDone: {
58
59
  target: "idle",
59
60
  actions: [
60
- assign((context, { data }) => {
61
- const { announcements, updateTime } = data;
61
+ assign(({ context, event }) => {
62
+ const { announcements, updateTime } = event.output;
62
63
  const cache = {};
63
64
  announcements.forEach(announcement => {
64
65
  cache[announcement.uuid] = announcement;
@@ -78,8 +79,8 @@ export const announcementMachine = createMachine({
78
79
  },
79
80
  onError: {
80
81
  target: "idle",
81
- actions: assign((_, { data }) => ({
82
- error: data,
82
+ actions: assign(({ event }) => ({
83
+ error: event.error,
83
84
  })),
84
85
  },
85
86
  },
@@ -87,13 +88,13 @@ export const announcementMachine = createMachine({
87
88
  },
88
89
  on: {
89
90
  SET_AS_SEEN: {
90
- cond: (context, event) => !context.seenIds.includes(event.seenId),
91
+ guard: ({ context, event }) => !context.seenIds.includes(event.seenId),
91
92
  actions: ["setAsSeen", "saveData", "emitNewAnnouncement"],
92
93
  },
93
94
  },
94
95
  }, {
95
96
  actions: {
96
- setAsSeen: assign((context, event) => ({
97
+ setAsSeen: assign(({ context, event }) => ({
97
98
  seenIds: [...context.seenIds, event.seenId],
98
99
  })),
99
100
  },
@@ -1 +1 @@
1
- {"version":3,"file":"machine.js","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/machine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"machine.js","sourceRoot":"","sources":["../../../src/notifications/AnnouncementProvider/machine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAmD,YAAY,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAI5F,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,yBAAyB,CAAC;CACrC,CAAC;AAEF,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,GAAG,CAAC;AAU5C,wBAAgB,gBAAgB,IAAI,iBAAiB,CAEpD;AAMD,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,QAAQ,EAAE,EACrB,OAAO,GAAE,MAAM,EAAO,GACrB,QAAQ,EAAE,CAYZ;AAGD,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,iBAAiB,CAQ/F;AAED,eAAO,MAAM,qBAAqB,wDAK/B,KAAK,KAAG,YA6BV,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAmD,YAAY,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAK5F,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,yBAAyB,CAAC;CACrC,CAAC;AAEF,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,GAAG,CAAC;AAU5C,wBAAgB,gBAAgB,IAAI,iBAAiB,CAEpD;AAMD,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,QAAQ,EAAE,EACrB,OAAO,GAAE,MAAM,EAAO,GACrB,QAAQ,EAAE,CAYZ;AAGD,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,iBAAiB,CAQ/F;AAED,eAAO,MAAM,qBAAqB,wDAK/B,KAAK,KAAG,YA+BV,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import React, { createContext, useContext, useMemo, useCallback } from "react";
2
2
  import defaultNetworkApi from "./api";
3
+ import { fromPromise } from "xstate";
3
4
  import { useMachine } from "@xstate/react";
4
5
  import { serviceStatusMachine } from "./machine";
5
6
  const ServiceStatusContext = createContext({
@@ -42,14 +43,14 @@ export const ServiceStatusProvider = ({ children, autoUpdateDelay, networkApi =
42
43
  updateTime: Date.now(),
43
44
  };
44
45
  }, [networkApi]);
45
- const [state, send] = useMachine(serviceStatusMachine, {
46
- services: {
47
- fetchData,
46
+ const [state, send] = useMachine(serviceStatusMachine.provide({
47
+ actors: {
48
+ fetchData: fromPromise(fetchData),
48
49
  },
49
50
  delays: {
50
51
  AUTO_UPDATE_DELAY: autoUpdateDelay,
51
52
  },
52
- });
53
+ }));
53
54
  const api = useMemo(() => ({
54
55
  updateData: async () => {
55
56
  send({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/index.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,3 @@
1
1
  import type { State } from "./types";
2
- export declare const serviceStatusMachine: import("xstate").StateMachine<State, any, import("xstate").AnyEventObject, {
3
- value: any;
4
- context: State;
5
- }, import("xstate").BaseActionObject, import("xstate").ServiceMap, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, import("xstate").AnyEventObject, import("xstate").BaseActionObject, import("xstate").ServiceMap>>;
2
+ export declare const serviceStatusMachine: import("xstate").StateMachine<State, import("xstate").AnyEventObject, Record<string, import("xstate").AnyActorRef>, import("xstate").ProvidedActor, import("xstate").ParameterizedObject, import("xstate").ParameterizedObject, string, import("xstate").StateValue, string, unknown, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, any>;
6
3
  //# sourceMappingURL=machine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/machine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAQrC,eAAO,MAAM,oBAAoB;;;0OA6C/B,CAAC"}
1
+ {"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/machine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAQrC,eAAO,MAAM,oBAAoB,6XA6C/B,CAAC"}
@@ -32,8 +32,8 @@ export const serviceStatusMachine = createMachine({
32
32
  src: "fetchData",
33
33
  onDone: {
34
34
  target: "idle",
35
- actions: assign((_context, { data }) => {
36
- const { incidents, updateTime } = data;
35
+ actions: assign(({ event }) => {
36
+ const { incidents, updateTime } = event.output;
37
37
  return {
38
38
  incidents,
39
39
  lastUpdateTime: updateTime,
@@ -44,8 +44,8 @@ export const serviceStatusMachine = createMachine({
44
44
  },
45
45
  onError: {
46
46
  target: "idle",
47
- actions: assign((_, { data }) => ({
48
- error: data,
47
+ actions: assign(({ event }) => ({
48
+ error: event.error,
49
49
  })),
50
50
  },
51
51
  },
@@ -1 +1 @@
1
- {"version":3,"file":"machine.js","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/machine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE/C,MAAM,YAAY,GAAU;IAC1B,SAAS,EAAE,EAAE;IACb,KAAK,EAAE,IAAI;IACX,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,KAAK;IAChB,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;CACzB,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC;IAChD,EAAE,EAAE,eAAe;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,KAAK,EAAE;gBACL,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;aACF;YACD,EAAE,EAAE;gBACF,WAAW,EAAE;oBACX,MAAM,EAAE,UAAU;oBAClB,OAAO,EAAE,MAAM,CAAC;wBACd,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,IAAI;qBACZ,CAAC;iBACH;aACF;SACF;QACD,QAAQ,EAAE;YACR,MAAM,EAAE;gBACN,GAAG,EAAE,WAAW;gBAChB,MAAM,EAAE;oBACN,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,MAAM,CAAC,CAAC,QAAa,EAAE,EAAE,IAAI,EAAO,EAAE,EAAE;wBAC/C,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;wBACvC,OAAO;4BACL,SAAS;4BACT,cAAc,EAAE,UAAU;4BAC1B,SAAS,EAAE,KAAK;4BAChB,KAAK,EAAE,IAAI;yBACZ,CAAC;oBACJ,CAAC,CAAC;iBACH;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,IAAI,EAAO,EAAE,EAAE,CAAC,CAAC;wBAC1C,KAAK,EAAE,IAAI;qBACZ,CAAC,CAAC;iBACJ;aACF;SACF;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"machine.js","sourceRoot":"","sources":["../../../src/notifications/ServiceStatusProvider/machine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE/C,MAAM,YAAY,GAAU;IAC1B,SAAS,EAAE,EAAE;IACb,KAAK,EAAE,IAAI;IACX,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,KAAK;IAChB,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;CACzB,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC;IAChD,EAAE,EAAE,eAAe;IACnB,OAAO,EAAE,UAAU;IACnB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,KAAK,EAAE;gBACL,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;aACF;YACD,EAAE,EAAE;gBACF,WAAW,EAAE;oBACX,MAAM,EAAE,UAAU;oBAClB,OAAO,EAAE,MAAM,CAAC;wBACd,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,IAAI;qBACZ,CAAC;iBACH;aACF;SACF;QACD,QAAQ,EAAE;YACR,MAAM,EAAE;gBACN,GAAG,EAAE,WAAW;gBAChB,MAAM,EAAE;oBACN,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;wBAC5B,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;wBAC/C,OAAO;4BACL,SAAS;4BACT,cAAc,EAAE,UAAU;4BAC1B,SAAS,EAAE,KAAK;4BAChB,KAAK,EAAE,IAAI;yBACZ,CAAC;oBACJ,CAAC,CAAC;iBACH;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;wBAC9B,KAAK,EAAE,KAAK,CAAC,KAAc;qBAC5B,CAAC,CAAC;iBACJ;aACF;SACF;KACF;CACF,CAAC,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { z } from "zod";
2
+ export type ModularDrawerConfiguration = {
3
+ assets?: {
4
+ filter?: string;
5
+ leftElement?: string;
6
+ rightElement?: string;
7
+ };
8
+ networks?: {
9
+ rightElement?: string;
10
+ leftElement?: string;
11
+ };
12
+ };
13
+ export declare const EnhancedModularDrawerConfigurationSchema: z.ZodObject<{
14
+ assets: z.ZodOptional<z.ZodObject<{
15
+ filter: z.ZodOptional<z.ZodEnum<["topNetworks"]>>;
16
+ leftElement: z.ZodOptional<z.ZodEnum<["apy", "priceVariation"]>>;
17
+ rightElement: z.ZodOptional<z.ZodEnum<["balance", "marketTrend"]>>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ filter?: "topNetworks" | undefined;
20
+ leftElement?: "apy" | "priceVariation" | undefined;
21
+ rightElement?: "balance" | "marketTrend" | undefined;
22
+ }, {
23
+ filter?: "topNetworks" | undefined;
24
+ leftElement?: "apy" | "priceVariation" | undefined;
25
+ rightElement?: "balance" | "marketTrend" | undefined;
26
+ }>>;
27
+ networks: z.ZodOptional<z.ZodObject<{
28
+ leftElement: z.ZodOptional<z.ZodEnum<["numberOfAccounts", "numberOfAccountsAndApy"]>>;
29
+ rightElement: z.ZodOptional<z.ZodEnum<["balance"]>>;
30
+ }, "strip", z.ZodTypeAny, {
31
+ leftElement?: "numberOfAccounts" | "numberOfAccountsAndApy" | undefined;
32
+ rightElement?: "balance" | undefined;
33
+ }, {
34
+ leftElement?: "numberOfAccounts" | "numberOfAccountsAndApy" | undefined;
35
+ rightElement?: "balance" | undefined;
36
+ }>>;
37
+ }, "strip", z.ZodTypeAny, {
38
+ networks?: {
39
+ leftElement?: "numberOfAccounts" | "numberOfAccountsAndApy" | undefined;
40
+ rightElement?: "balance" | undefined;
41
+ } | undefined;
42
+ assets?: {
43
+ filter?: "topNetworks" | undefined;
44
+ leftElement?: "apy" | "priceVariation" | undefined;
45
+ rightElement?: "balance" | "marketTrend" | undefined;
46
+ } | undefined;
47
+ }, {
48
+ networks?: {
49
+ leftElement?: "numberOfAccounts" | "numberOfAccountsAndApy" | undefined;
50
+ rightElement?: "balance" | undefined;
51
+ } | undefined;
52
+ assets?: {
53
+ filter?: "topNetworks" | undefined;
54
+ leftElement?: "apy" | "priceVariation" | undefined;
55
+ rightElement?: "balance" | "marketTrend" | undefined;
56
+ } | undefined;
57
+ }>;
58
+ /**
59
+ * Enhanced configuration for the modular drawer.
60
+ * Extends the base configuration by allowing customization of `assets` and `networks` properties.
61
+ */
62
+ export type EnhancedModularDrawerConfiguration = Omit<ModularDrawerConfiguration, "assets" | "networks"> & z.infer<typeof EnhancedModularDrawerConfigurationSchema>;
63
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/wallet-api/ModularDrawer/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAQF,eAAO,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcnD,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG,IAAI,CACnD,0BAA0B,EAC1B,QAAQ,GAAG,UAAU,CACtB,GACC,CAAC,CAAC,KAAK,CAAC,OAAO,wCAAwC,CAAC,CAAC"}