@ledgerhq/live-common 34.53.0-nightly.20251119023741 → 34.53.0-nightly.20251120023735

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 (237) hide show
  1. package/lib/e2e/deviceInteraction/DeviceController.d.ts +41 -0
  2. package/lib/e2e/deviceInteraction/DeviceController.d.ts.map +1 -0
  3. package/lib/e2e/deviceInteraction/DeviceController.js +68 -0
  4. package/lib/e2e/deviceInteraction/DeviceController.js.map +1 -0
  5. package/lib/e2e/families/algorand.d.ts +1 -1
  6. package/lib/e2e/families/algorand.d.ts.map +1 -1
  7. package/lib/e2e/families/algorand.js +5 -5
  8. package/lib/e2e/families/algorand.js.map +1 -1
  9. package/lib/e2e/families/aptos.d.ts +2 -2
  10. package/lib/e2e/families/aptos.d.ts.map +1 -1
  11. package/lib/e2e/families/aptos.js +9 -9
  12. package/lib/e2e/families/aptos.js.map +1 -1
  13. package/lib/e2e/families/bitcoin.d.ts +2 -2
  14. package/lib/e2e/families/bitcoin.d.ts.map +1 -1
  15. package/lib/e2e/families/bitcoin.js +11 -11
  16. package/lib/e2e/families/bitcoin.js.map +1 -1
  17. package/lib/e2e/families/cardano.d.ts +6 -0
  18. package/lib/e2e/families/cardano.d.ts.map +1 -1
  19. package/lib/e2e/families/cardano.js +28 -26
  20. package/lib/e2e/families/cardano.js.map +1 -1
  21. package/lib/e2e/families/celo.d.ts +1 -1
  22. package/lib/e2e/families/celo.d.ts.map +1 -1
  23. package/lib/e2e/families/celo.js +5 -5
  24. package/lib/e2e/families/celo.js.map +1 -1
  25. package/lib/e2e/families/cosmos.d.ts +2 -2
  26. package/lib/e2e/families/cosmos.d.ts.map +1 -1
  27. package/lib/e2e/families/cosmos.js +9 -9
  28. package/lib/e2e/families/cosmos.js.map +1 -1
  29. package/lib/e2e/families/evm.d.ts +2 -0
  30. package/lib/e2e/families/evm.d.ts.map +1 -1
  31. package/lib/e2e/families/evm.js +13 -12
  32. package/lib/e2e/families/evm.js.map +1 -1
  33. package/lib/e2e/families/hedera.d.ts +1 -1
  34. package/lib/e2e/families/hedera.d.ts.map +1 -1
  35. package/lib/e2e/families/hedera.js +5 -5
  36. package/lib/e2e/families/hedera.js.map +1 -1
  37. package/lib/e2e/families/kaspa.d.ts +2 -2
  38. package/lib/e2e/families/kaspa.d.ts.map +1 -1
  39. package/lib/e2e/families/kaspa.js +9 -9
  40. package/lib/e2e/families/kaspa.js.map +1 -1
  41. package/lib/e2e/families/multiversX.d.ts +1 -1
  42. package/lib/e2e/families/multiversX.d.ts.map +1 -1
  43. package/lib/e2e/families/multiversX.js +5 -5
  44. package/lib/e2e/families/multiversX.js.map +1 -1
  45. package/lib/e2e/families/near.d.ts +1 -1
  46. package/lib/e2e/families/near.d.ts.map +1 -1
  47. package/lib/e2e/families/near.js +6 -6
  48. package/lib/e2e/families/near.js.map +1 -1
  49. package/lib/e2e/families/osmosis.d.ts +1 -1
  50. package/lib/e2e/families/osmosis.d.ts.map +1 -1
  51. package/lib/e2e/families/osmosis.js +5 -5
  52. package/lib/e2e/families/osmosis.js.map +1 -1
  53. package/lib/e2e/families/polkadot.d.ts +1 -1
  54. package/lib/e2e/families/polkadot.d.ts.map +1 -1
  55. package/lib/e2e/families/polkadot.js +5 -5
  56. package/lib/e2e/families/polkadot.js.map +1 -1
  57. package/lib/e2e/families/solana.d.ts +2 -2
  58. package/lib/e2e/families/solana.d.ts.map +1 -1
  59. package/lib/e2e/families/solana.js +9 -9
  60. package/lib/e2e/families/solana.js.map +1 -1
  61. package/lib/e2e/families/stellar.d.ts +1 -1
  62. package/lib/e2e/families/stellar.d.ts.map +1 -1
  63. package/lib/e2e/families/stellar.js +5 -5
  64. package/lib/e2e/families/stellar.js.map +1 -1
  65. package/lib/e2e/families/sui.d.ts +1 -1
  66. package/lib/e2e/families/sui.d.ts.map +1 -1
  67. package/lib/e2e/families/sui.js +5 -5
  68. package/lib/e2e/families/sui.js.map +1 -1
  69. package/lib/e2e/families/tezos.d.ts +1 -1
  70. package/lib/e2e/families/tezos.d.ts.map +1 -1
  71. package/lib/e2e/families/tezos.js +7 -8
  72. package/lib/e2e/families/tezos.js.map +1 -1
  73. package/lib/e2e/families/tron.d.ts +1 -1
  74. package/lib/e2e/families/tron.d.ts.map +1 -1
  75. package/lib/e2e/families/tron.js +5 -5
  76. package/lib/e2e/families/tron.js.map +1 -1
  77. package/lib/e2e/families/xrp.d.ts +1 -1
  78. package/lib/e2e/families/xrp.d.ts.map +1 -1
  79. package/lib/e2e/families/xrp.js +5 -5
  80. package/lib/e2e/families/xrp.js.map +1 -1
  81. package/lib/e2e/index.d.ts +6 -0
  82. package/lib/e2e/index.d.ts.map +1 -1
  83. package/lib/e2e/speculos.d.ts +11 -11
  84. package/lib/e2e/speculos.d.ts.map +1 -1
  85. package/lib/e2e/speculos.js +78 -78
  86. package/lib/e2e/speculos.js.map +1 -1
  87. package/lib/families/canton/bridge/mock.d.ts.map +1 -1
  88. package/lib/families/canton/bridge/mock.js +1 -0
  89. package/lib/families/canton/bridge/mock.js.map +1 -1
  90. package/lib/families/canton/react.d.ts +15 -0
  91. package/lib/families/canton/react.d.ts.map +1 -0
  92. package/lib/families/canton/react.js +14 -0
  93. package/lib/families/canton/react.js.map +1 -0
  94. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
  95. package/lib/featureFlags/defaultFeatures.js +2 -0
  96. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  97. package/lib/featureFlags/useFeature.d.ts +1 -1
  98. package/lib/featureFlags/useFeature.d.ts.map +1 -1
  99. package/lib/wallet-api/react.d.ts.map +1 -1
  100. package/lib/wallet-api/react.js +2 -0
  101. package/lib/wallet-api/react.js.map +1 -1
  102. package/lib-es/e2e/deviceInteraction/DeviceController.d.ts +41 -0
  103. package/lib-es/e2e/deviceInteraction/DeviceController.d.ts.map +1 -0
  104. package/lib-es/e2e/deviceInteraction/DeviceController.js +63 -0
  105. package/lib-es/e2e/deviceInteraction/DeviceController.js.map +1 -0
  106. package/lib-es/e2e/families/algorand.d.ts +1 -1
  107. package/lib-es/e2e/families/algorand.d.ts.map +1 -1
  108. package/lib-es/e2e/families/algorand.js +5 -4
  109. package/lib-es/e2e/families/algorand.js.map +1 -1
  110. package/lib-es/e2e/families/aptos.d.ts +2 -2
  111. package/lib-es/e2e/families/aptos.d.ts.map +1 -1
  112. package/lib-es/e2e/families/aptos.js +9 -7
  113. package/lib-es/e2e/families/aptos.js.map +1 -1
  114. package/lib-es/e2e/families/bitcoin.d.ts +2 -2
  115. package/lib-es/e2e/families/bitcoin.d.ts.map +1 -1
  116. package/lib-es/e2e/families/bitcoin.js +11 -9
  117. package/lib-es/e2e/families/bitcoin.js.map +1 -1
  118. package/lib-es/e2e/families/cardano.d.ts +6 -0
  119. package/lib-es/e2e/families/cardano.d.ts.map +1 -1
  120. package/lib-es/e2e/families/cardano.js +23 -21
  121. package/lib-es/e2e/families/cardano.js.map +1 -1
  122. package/lib-es/e2e/families/celo.d.ts +1 -1
  123. package/lib-es/e2e/families/celo.d.ts.map +1 -1
  124. package/lib-es/e2e/families/celo.js +5 -4
  125. package/lib-es/e2e/families/celo.js.map +1 -1
  126. package/lib-es/e2e/families/cosmos.d.ts +2 -2
  127. package/lib-es/e2e/families/cosmos.d.ts.map +1 -1
  128. package/lib-es/e2e/families/cosmos.js +9 -7
  129. package/lib-es/e2e/families/cosmos.js.map +1 -1
  130. package/lib-es/e2e/families/evm.d.ts +2 -0
  131. package/lib-es/e2e/families/evm.d.ts.map +1 -1
  132. package/lib-es/e2e/families/evm.js +10 -9
  133. package/lib-es/e2e/families/evm.js.map +1 -1
  134. package/lib-es/e2e/families/hedera.d.ts +1 -1
  135. package/lib-es/e2e/families/hedera.d.ts.map +1 -1
  136. package/lib-es/e2e/families/hedera.js +5 -4
  137. package/lib-es/e2e/families/hedera.js.map +1 -1
  138. package/lib-es/e2e/families/kaspa.d.ts +2 -2
  139. package/lib-es/e2e/families/kaspa.d.ts.map +1 -1
  140. package/lib-es/e2e/families/kaspa.js +9 -7
  141. package/lib-es/e2e/families/kaspa.js.map +1 -1
  142. package/lib-es/e2e/families/multiversX.d.ts +1 -1
  143. package/lib-es/e2e/families/multiversX.d.ts.map +1 -1
  144. package/lib-es/e2e/families/multiversX.js +5 -4
  145. package/lib-es/e2e/families/multiversX.js.map +1 -1
  146. package/lib-es/e2e/families/near.d.ts +1 -1
  147. package/lib-es/e2e/families/near.d.ts.map +1 -1
  148. package/lib-es/e2e/families/near.js +6 -5
  149. package/lib-es/e2e/families/near.js.map +1 -1
  150. package/lib-es/e2e/families/osmosis.d.ts +1 -1
  151. package/lib-es/e2e/families/osmosis.d.ts.map +1 -1
  152. package/lib-es/e2e/families/osmosis.js +5 -4
  153. package/lib-es/e2e/families/osmosis.js.map +1 -1
  154. package/lib-es/e2e/families/polkadot.d.ts +1 -1
  155. package/lib-es/e2e/families/polkadot.d.ts.map +1 -1
  156. package/lib-es/e2e/families/polkadot.js +5 -4
  157. package/lib-es/e2e/families/polkadot.js.map +1 -1
  158. package/lib-es/e2e/families/solana.d.ts +2 -2
  159. package/lib-es/e2e/families/solana.d.ts.map +1 -1
  160. package/lib-es/e2e/families/solana.js +9 -7
  161. package/lib-es/e2e/families/solana.js.map +1 -1
  162. package/lib-es/e2e/families/stellar.d.ts +1 -1
  163. package/lib-es/e2e/families/stellar.d.ts.map +1 -1
  164. package/lib-es/e2e/families/stellar.js +5 -4
  165. package/lib-es/e2e/families/stellar.js.map +1 -1
  166. package/lib-es/e2e/families/sui.d.ts +1 -1
  167. package/lib-es/e2e/families/sui.d.ts.map +1 -1
  168. package/lib-es/e2e/families/sui.js +5 -4
  169. package/lib-es/e2e/families/sui.js.map +1 -1
  170. package/lib-es/e2e/families/tezos.d.ts +1 -1
  171. package/lib-es/e2e/families/tezos.d.ts.map +1 -1
  172. package/lib-es/e2e/families/tezos.js +8 -8
  173. package/lib-es/e2e/families/tezos.js.map +1 -1
  174. package/lib-es/e2e/families/tron.d.ts +1 -1
  175. package/lib-es/e2e/families/tron.d.ts.map +1 -1
  176. package/lib-es/e2e/families/tron.js +5 -4
  177. package/lib-es/e2e/families/tron.js.map +1 -1
  178. package/lib-es/e2e/families/xrp.d.ts +1 -1
  179. package/lib-es/e2e/families/xrp.d.ts.map +1 -1
  180. package/lib-es/e2e/families/xrp.js +5 -4
  181. package/lib-es/e2e/families/xrp.js.map +1 -1
  182. package/lib-es/e2e/index.d.ts +6 -0
  183. package/lib-es/e2e/index.d.ts.map +1 -1
  184. package/lib-es/e2e/speculos.d.ts +11 -11
  185. package/lib-es/e2e/speculos.d.ts.map +1 -1
  186. package/lib-es/e2e/speculos.js +54 -43
  187. package/lib-es/e2e/speculos.js.map +1 -1
  188. package/lib-es/families/canton/bridge/mock.d.ts.map +1 -1
  189. package/lib-es/families/canton/bridge/mock.js +1 -0
  190. package/lib-es/families/canton/bridge/mock.js.map +1 -1
  191. package/lib-es/families/canton/react.d.ts +15 -0
  192. package/lib-es/families/canton/react.d.ts.map +1 -0
  193. package/lib-es/families/canton/react.js +10 -0
  194. package/lib-es/families/canton/react.js.map +1 -0
  195. package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
  196. package/lib-es/featureFlags/defaultFeatures.js +2 -0
  197. package/lib-es/featureFlags/defaultFeatures.js.map +1 -1
  198. package/lib-es/featureFlags/useFeature.d.ts +1 -1
  199. package/lib-es/featureFlags/useFeature.d.ts.map +1 -1
  200. package/lib-es/wallet-api/react.d.ts.map +1 -1
  201. package/lib-es/wallet-api/react.js +2 -0
  202. package/lib-es/wallet-api/react.js.map +1 -1
  203. package/package.json +52 -51
  204. package/src/e2e/deviceInteraction/DeviceController.ts +85 -0
  205. package/src/e2e/families/algorand.ts +20 -13
  206. package/src/e2e/families/aptos.ts +28 -16
  207. package/src/e2e/families/bitcoin.ts +53 -39
  208. package/src/e2e/families/cardano.ts +47 -36
  209. package/src/e2e/families/celo.ts +18 -12
  210. package/src/e2e/families/cosmos.ts +35 -23
  211. package/src/e2e/families/evm.ts +24 -13
  212. package/src/e2e/families/hedera.ts +6 -4
  213. package/src/e2e/families/kaspa.ts +28 -16
  214. package/src/e2e/families/multiversX.ts +16 -10
  215. package/src/e2e/families/near.ts +23 -17
  216. package/src/e2e/families/osmosis.ts +19 -13
  217. package/src/e2e/families/polkadot.ts +19 -13
  218. package/src/e2e/families/solana.ts +35 -23
  219. package/src/e2e/families/stellar.ts +18 -13
  220. package/src/e2e/families/sui.ts +15 -9
  221. package/src/e2e/families/tezos.ts +25 -18
  222. package/src/e2e/families/tron.ts +19 -13
  223. package/src/e2e/families/xrp.ts +19 -13
  224. package/src/e2e/speculos.ts +168 -140
  225. package/src/families/canton/bridge/mock.ts +1 -0
  226. package/src/families/canton/react.ts +50 -0
  227. package/src/featureFlags/defaultFeatures.ts +2 -0
  228. package/src/wallet-api/react.ts +2 -0
  229. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts +0 -3
  230. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts.map +0 -1
  231. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.js +0 -26
  232. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.js.map +0 -1
  233. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts +0 -3
  234. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts.map +0 -1
  235. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.js +0 -18
  236. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.js.map +0 -1
  237. package/src/e2e/deviceInteraction/ButtonDeviceSimulator.ts +0 -23
@@ -0,0 +1,41 @@
1
+ import { type DeviceControllerClient, type ButtonKey } from "@ledgerhq/speculos-device-controller";
2
+ type ButtonsController = {
3
+ left(): Promise<void>;
4
+ right(): Promise<void>;
5
+ both(): Promise<void>;
6
+ pressSequence(keys: ButtonKey[], delayMs?: number): Promise<void>;
7
+ };
8
+ type DeviceControllerContext = {
9
+ getDeviceController: () => DeviceControllerClient;
10
+ getButtonsController: () => ButtonsController;
11
+ };
12
+ export declare const getDeviceControllerWithMemo: () => DeviceControllerClient;
13
+ export declare const getButtonsWithMemo: (getController: () => DeviceControllerClient) => () => ButtonsController;
14
+ /**
15
+ * Wraps a function with access to speculos-device-controller via a tiny DI context.
16
+ *
17
+ * @description
18
+ * Pass a factory that receives a context exposing `getDeviceController()` and `getButtonsController()`.
19
+ * The factory returns the actual implementation. The returned wrapper preserves the implementation’s
20
+ * parameter and return types.
21
+ *
22
+ * Both accessors are lazy, they get or refresh the underlying controller only when called.
23
+ *
24
+ * @param factory - Function invoked immediately with the device context, must return the implementation.
25
+ * @returns A function with the same parameters and return type as the implementation returned by `factory`.
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * const accept = withDeviceController(({ getButtonsController }) => async (timeoutMS: number) => {
30
+ * const buttons = getButtonsController();
31
+ * await waitFor(timeoutMS);
32
+ * await buttons.both();
33
+ * });
34
+ *
35
+ * await accept(1000);
36
+ * ```
37
+ *
38
+ */
39
+ export declare function withDeviceController<A extends unknown[], R>(factory: (ctx: DeviceControllerContext) => (...args: A) => R | Promise<R>): (...args: A) => R | Promise<R>;
40
+ export {};
41
+ //# sourceMappingURL=DeviceController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceController.d.ts","sourceRoot":"","sources":["../../../src/e2e/deviceInteraction/DeviceController.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,SAAS,EACf,MAAM,sCAAsC,CAAC;AAG9C,KAAK,iBAAiB,GAAG;IACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;IAClD,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;CAC/C,CAAC;AAIF,eAAO,MAAM,2BAA2B,8BAcpC,CAAC;AAEL,eAAO,MAAM,kBAAkB,kBAAmB,MAAM,sBAAsB,4BAS7E,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EACzD,OAAO,EAAE,CAAC,GAAG,EAAE,uBAAuB,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACxE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAOhC"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.withDeviceController = exports.getButtonsWithMemo = exports.getDeviceControllerWithMemo = void 0;
4
+ const live_env_1 = require("@ledgerhq/live-env");
5
+ const speculos_1 = require("../speculos");
6
+ const speculos_device_controller_1 = require("@ledgerhq/speculos-device-controller");
7
+ const endpointKey = () => `${(0, speculos_1.getSpeculosAddress)()}:${(0, live_env_1.getEnv)("SPECULOS_API_PORT")}`;
8
+ exports.getDeviceControllerWithMemo = (() => {
9
+ let cache = null;
10
+ return () => {
11
+ const key = endpointKey();
12
+ if (!cache || cache.key !== key) {
13
+ cache = {
14
+ key,
15
+ client: (0, speculos_device_controller_1.deviceControllerClientFactory)(key, {
16
+ timeoutMs: 10000,
17
+ }),
18
+ };
19
+ }
20
+ return cache.client;
21
+ };
22
+ })();
23
+ const getButtonsWithMemo = (getController) => {
24
+ let cache = null;
25
+ return () => {
26
+ const ctrl = getController();
27
+ if (!cache || cache.ctrl !== ctrl) {
28
+ cache = { ctrl, buttons: ctrl.buttonFactory() };
29
+ }
30
+ return cache.buttons;
31
+ };
32
+ };
33
+ exports.getButtonsWithMemo = getButtonsWithMemo;
34
+ /**
35
+ * Wraps a function with access to speculos-device-controller via a tiny DI context.
36
+ *
37
+ * @description
38
+ * Pass a factory that receives a context exposing `getDeviceController()` and `getButtonsController()`.
39
+ * The factory returns the actual implementation. The returned wrapper preserves the implementation’s
40
+ * parameter and return types.
41
+ *
42
+ * Both accessors are lazy, they get or refresh the underlying controller only when called.
43
+ *
44
+ * @param factory - Function invoked immediately with the device context, must return the implementation.
45
+ * @returns A function with the same parameters and return type as the implementation returned by `factory`.
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * const accept = withDeviceController(({ getButtonsController }) => async (timeoutMS: number) => {
50
+ * const buttons = getButtonsController();
51
+ * await waitFor(timeoutMS);
52
+ * await buttons.both();
53
+ * });
54
+ *
55
+ * await accept(1000);
56
+ * ```
57
+ *
58
+ */
59
+ function withDeviceController(factory) {
60
+ const ctx = {
61
+ getDeviceController: exports.getDeviceControllerWithMemo,
62
+ getButtonsController: (0, exports.getButtonsWithMemo)(exports.getDeviceControllerWithMemo),
63
+ };
64
+ const implementation = factory(ctx);
65
+ return (...args) => implementation(...args);
66
+ }
67
+ exports.withDeviceController = withDeviceController;
68
+ //# sourceMappingURL=DeviceController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceController.js","sourceRoot":"","sources":["../../../src/e2e/deviceInteraction/DeviceController.ts"],"names":[],"mappings":";;;AAAA,iDAA4C;AAC5C,0CAAiD;AACjD,qFAI8C;AAe9C,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,IAAA,6BAAkB,GAAE,IAAI,IAAA,iBAAM,EAAC,mBAAmB,CAAC,EAAE,CAAC;AAEtE,QAAA,2BAA2B,GAAG,CAAC,GAAG,EAAE;IAC/C,IAAI,KAAK,GAA2D,IAAI,CAAC;IACzE,OAAO,GAAG,EAAE;QACV,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;YAC/B,KAAK,GAAG;gBACN,GAAG;gBACH,MAAM,EAAE,IAAA,0DAA6B,EAAC,GAAG,EAAE;oBACzC,SAAS,EAAE,KAAK;iBACjB,CAAC;aACH,CAAC;SACH;QACD,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC,CAAC;AACJ,CAAC,CAAC,EAAE,CAAC;AAEE,MAAM,kBAAkB,GAAG,CAAC,aAA2C,EAAE,EAAE;IAChF,IAAI,KAAK,GAAwE,IAAI,CAAC;IACtF,OAAO,GAAG,EAAE;QACV,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE;YACjC,KAAK,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;SACjD;QACD,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,oBAAoB,CAClC,OAAyE;IAEzE,MAAM,GAAG,GAA4B;QACnC,mBAAmB,EAAE,mCAA2B;QAChD,oBAAoB,EAAE,IAAA,0BAAkB,EAAC,mCAA2B,CAAC;KACtE,CAAC;IACF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,IAAO,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;AACjD,CAAC;AATD,oDASC"}
@@ -1,3 +1,3 @@
1
1
  import { Transaction } from "../models/Transaction";
2
- export declare function sendAlgorand(tx: Transaction): Promise<void>;
2
+ export declare const sendAlgorand: (tx: Transaction) => void | Promise<void>;
3
3
  //# sourceMappingURL=algorand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"algorand.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/algorand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAOpD,wBAAsB,YAAY,CAAC,EAAE,EAAE,WAAW,iBAWjD"}
1
+ {"version":3,"file":"algorand.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/algorand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAOpD,eAAO,MAAM,YAAY,2CAkBxB,CAAC"}
@@ -7,10 +7,11 @@ exports.sendAlgorand = void 0;
7
7
  const expect_1 = __importDefault(require("expect"));
8
8
  const speculos_1 = require("../speculos");
9
9
  const speculosAppVersion_1 = require("../speculosAppVersion");
10
- const ButtonDeviceSimulator_1 = require("../deviceInteraction/ButtonDeviceSimulator");
11
10
  const DeviceLabels_1 = require("../enum/DeviceLabels");
12
11
  const TouchDeviceSimulator_1 = require("../deviceInteraction/TouchDeviceSimulator");
13
- async function sendAlgorand(tx) {
12
+ const DeviceController_1 = require("../deviceInteraction/DeviceController");
13
+ exports.sendAlgorand = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (tx) => {
14
+ const buttons = getButtonsController();
14
15
  const events = await (0, speculos_1.getSendEvents)(tx);
15
16
  const isAmountCorrect = (0, speculos_1.containsSubstringInEvent)(tx.amount, events);
16
17
  (0, expect_1.default)(isAmountCorrect).toBeTruthy();
@@ -20,8 +21,7 @@ async function sendAlgorand(tx) {
20
21
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
21
22
  }
22
23
  else {
23
- await (0, ButtonDeviceSimulator_1.pressBoth)();
24
+ await buttons.both();
24
25
  }
25
- }
26
- exports.sendAlgorand = sendAlgorand;
26
+ });
27
27
  //# sourceMappingURL=algorand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"algorand.js","sourceRoot":"","sources":["../../../src/e2e/families/algorand.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,0CAAsE;AACtE,8DAAsD;AACtD,sFAAuE;AACvE,uDAAoD;AACpD,oFAAgF;AAEzE,KAAK,UAAU,YAAY,CAAC,EAAe;IAChD,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;IACtC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,IAAA,iCAAS,GAAE,CAAC;KACnB;AACH,CAAC;AAXD,oCAWC"}
1
+ {"version":3,"file":"algorand.js","sourceRoot":"","sources":["../../../src/e2e/families/algorand.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,0CAAsE;AACtE,8DAAsD;AACtD,uDAAoD;AACpD,oFAAgF;AAChF,4EAA6E;AAEhE,QAAA,YAAY,GAAG,IAAA,uCAAoB,EAC9C,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,EAAe,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IAErC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;IAEtC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;KACtB;AACH,CAAC,CACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Transaction } from "../models/Transaction";
2
2
  import { Delegate } from "../models/Delegate";
3
- export declare function sendAptos(tx: Transaction): Promise<void>;
4
- export declare function delegateAptos(delegatingAccount: Delegate): Promise<void>;
3
+ export declare const sendAptos: (tx: Transaction) => void | Promise<void>;
4
+ export declare const delegateAptos: (delegatingAccount: Delegate) => void | Promise<void>;
5
5
  //# sourceMappingURL=aptos.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aptos.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/aptos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG9C,wBAAsB,SAAS,CAAC,EAAE,EAAE,WAAW,iBAO9C;AAED,wBAAsB,aAAa,CAAC,iBAAiB,EAAE,QAAQ,iBAM9D"}
1
+ {"version":3,"file":"aptos.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/aptos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAI9C,eAAO,MAAM,SAAS,2CAarB,CAAC;AAEF,eAAO,MAAM,aAAa,uDAYzB,CAAC"}
@@ -7,25 +7,25 @@ exports.delegateAptos = exports.sendAptos = void 0;
7
7
  const expect_1 = __importDefault(require("expect"));
8
8
  const speculos_1 = require("../speculos");
9
9
  const speculosAppVersion_1 = require("../speculosAppVersion");
10
- const ButtonDeviceSimulator_1 = require("../deviceInteraction/ButtonDeviceSimulator");
11
10
  const DeviceLabels_1 = require("../enum/DeviceLabels");
12
11
  const TouchDeviceSimulator_1 = require("../deviceInteraction/TouchDeviceSimulator");
13
- async function sendAptos(tx) {
12
+ const DeviceController_1 = require("../deviceInteraction/DeviceController");
13
+ exports.sendAptos = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (tx) => {
14
+ const buttons = getButtonsController();
14
15
  await (0, speculos_1.getSendEvents)(tx);
15
16
  if ((0, speculosAppVersion_1.isTouchDevice)()) {
16
17
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
17
18
  }
18
19
  else {
19
- await (0, ButtonDeviceSimulator_1.pressBoth)();
20
+ await buttons.both();
20
21
  }
21
- }
22
- exports.sendAptos = sendAptos;
23
- async function delegateAptos(delegatingAccount) {
22
+ });
23
+ exports.delegateAptos = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (delegatingAccount) => {
24
+ const buttons = getButtonsController();
24
25
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.REVIEW_OPERATION);
25
26
  const events = await (0, speculos_1.pressUntilTextFound)(DeviceLabels_1.DeviceLabels.APPROVE);
26
27
  const isAmountCorrect = (0, speculos_1.containsSubstringInEvent)(delegatingAccount.amount, events);
27
28
  (0, expect_1.default)(isAmountCorrect).toBeTruthy();
28
- await (0, ButtonDeviceSimulator_1.pressBoth)();
29
- }
30
- exports.delegateAptos = delegateAptos;
29
+ await buttons.both();
30
+ });
31
31
  //# sourceMappingURL=aptos.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aptos.js","sourceRoot":"","sources":["../../../src/e2e/families/aptos.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,0CAAoG;AACpG,8DAAsD;AACtD,sFAAuE;AACvE,uDAAoD;AAEpD,oFAAgF;AAEzE,KAAK,UAAU,SAAS,CAAC,EAAe;IAC7C,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACxB,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,IAAA,iCAAS,GAAE,CAAC;KACnB;AACH,CAAC;AAPD,8BAOC;AAEM,KAAK,UAAU,aAAa,CAAC,iBAA2B;IAC7D,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,gBAAgB,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,OAAO,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnF,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,IAAA,iCAAS,GAAE,CAAC;AACpB,CAAC;AAND,sCAMC"}
1
+ {"version":3,"file":"aptos.js","sourceRoot":"","sources":["../../../src/e2e/families/aptos.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,0CAAoG;AACpG,8DAAsD;AACtD,uDAAoD;AAEpD,oFAAgF;AAChF,4EAA6E;AAEhE,QAAA,SAAS,GAAG,IAAA,uCAAoB,EAC3C,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,EAAe,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IAExB,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;KACtB;AACH,CAAC,CACJ,CAAC;AAEW,QAAA,aAAa,GAAG,IAAA,uCAAoB,EAC/C,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,iBAA2B,EAAE,EAAE;IACpC,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,gBAAgB,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,OAAO,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnF,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IAErC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC,CACJ,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { Transaction } from "../models/Transaction";
2
- export declare function sendBTCBasedCoin(tx: Transaction): Promise<void>;
3
- export declare function sendBTC(tx: Transaction): Promise<void>;
2
+ export declare const sendBTCBasedCoin: (tx: Transaction) => void | Promise<void>;
3
+ export declare const sendBTC: (tx: Transaction) => void | Promise<void>;
4
4
  //# sourceMappingURL=bitcoin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/bitcoin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AASpD,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,WAAW,iBAcrD;AAED,wBAAsB,OAAO,CAAC,EAAE,EAAE,WAAW,iBAuB5C"}
1
+ {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/bitcoin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AASpD,eAAO,MAAM,gBAAgB,2CAqB5B,CAAC;AAEF,eAAO,MAAM,OAAO,2CA8BnB,CAAC"}
@@ -7,12 +7,13 @@ exports.sendBTC = exports.sendBTCBasedCoin = void 0;
7
7
  const expect_1 = __importDefault(require("expect"));
8
8
  const speculos_1 = require("../speculos");
9
9
  const speculosAppVersion_1 = require("../speculosAppVersion");
10
- const ButtonDeviceSimulator_1 = require("../deviceInteraction/ButtonDeviceSimulator");
11
10
  const DeviceLabels_1 = require("../enum/DeviceLabels");
12
11
  const invariant_1 = __importDefault(require("invariant"));
13
12
  const types_devices_1 = require("@ledgerhq/types-devices");
14
13
  const TouchDeviceSimulator_1 = require("../deviceInteraction/TouchDeviceSimulator");
15
- async function sendBTCBasedCoin(tx) {
14
+ const DeviceController_1 = require("../deviceInteraction/DeviceController");
15
+ exports.sendBTCBasedCoin = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (tx) => {
16
+ const buttons = getButtonsController();
16
17
  const events = await (0, speculos_1.getSendEvents)(tx);
17
18
  const isAmountCorrect = (0, speculos_1.containsSubstringInEvent)(tx.amount, events);
18
19
  (0, expect_1.default)(isAmountCorrect).toBeTruthy();
@@ -22,14 +23,14 @@ async function sendBTCBasedCoin(tx) {
22
23
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
23
24
  }
24
25
  else {
25
- await (0, ButtonDeviceSimulator_1.pressBoth)();
26
+ await buttons.both();
26
27
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.CONFIRM);
27
28
  await (0, speculos_1.pressUntilTextFound)(DeviceLabels_1.DeviceLabels.ACCEPT);
28
- await (0, ButtonDeviceSimulator_1.pressBoth)();
29
+ await buttons.both();
29
30
  }
30
- }
31
- exports.sendBTCBasedCoin = sendBTCBasedCoin;
32
- async function sendBTC(tx) {
31
+ });
32
+ exports.sendBTC = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (tx) => {
33
+ const buttons = getButtonsController();
33
34
  const speculosDevice = (0, speculosAppVersion_1.getSpeculosModel)();
34
35
  try {
35
36
  const events = await (0, speculos_1.getSendEvents)(tx);
@@ -41,10 +42,10 @@ async function sendBTC(tx) {
41
42
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
42
43
  }
43
44
  else {
44
- await (0, ButtonDeviceSimulator_1.pressBoth)();
45
+ await buttons.both();
45
46
  if (speculosDevice === types_devices_1.DeviceModelId.nanoS) {
46
47
  await (0, speculos_1.pressUntilTextFound)(DeviceLabels_1.DeviceLabels.SIGN);
47
- await (0, ButtonDeviceSimulator_1.pressBoth)();
48
+ await buttons.both();
48
49
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.BITCOIN_IS_READY);
49
50
  }
50
51
  else {
@@ -55,6 +56,5 @@ async function sendBTC(tx) {
55
56
  catch (e) {
56
57
  (0, invariant_1.default)(false, `Error while sending BTC transaction: ${e}`);
57
58
  }
58
- }
59
- exports.sendBTC = sendBTC;
59
+ });
60
60
  //# sourceMappingURL=bitcoin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../src/e2e/families/bitcoin.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,0CAAoG;AACpG,8DAAwE;AACxE,sFAAuE;AACvE,uDAAoD;AACpD,0DAAkC;AAClC,2DAAwD;AACxD,oFAAgF;AAEzE,KAAK,UAAU,gBAAgB,CAAC,EAAe;IACpD,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;IACtC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,IAAA,iCAAS,GAAE,CAAC;QAClB,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,IAAA,iCAAS,GAAE,CAAC;KACnB;AACH,CAAC;AAdD,4CAcC;AAEM,KAAK,UAAU,OAAO,CAAC,EAAe;IAC3C,MAAM,cAAc,GAAG,IAAA,qCAAgB,GAAE,CAAC;IAC1C,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;QACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;QACtC,IAAI,IAAA,kCAAa,GAAE,EAAE;YACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;SACzD;aAAM;YACL,MAAM,IAAA,iCAAS,GAAE,CAAC;YAClB,IAAI,cAAc,KAAK,6BAAa,CAAC,KAAK,EAAE;gBAC1C,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,IAAA,iCAAS,GAAE,CAAC;gBAClB,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,gBAAgB,CAAC,CAAC;aAC9C;iBAAM;gBACL,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,kBAAkB,CAAC,CAAC;aAChD;SACF;KACF;IAAC,OAAO,CAAC,EAAE;QACV,IAAA,mBAAS,EAAC,KAAK,EAAE,wCAAwC,CAAC,EAAE,CAAC,CAAC;KAC/D;AACH,CAAC;AAvBD,0BAuBC"}
1
+ {"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../src/e2e/families/bitcoin.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,0CAAoG;AACpG,8DAAwE;AACxE,uDAAoD;AACpD,0DAAkC;AAClC,2DAAwD;AACxD,oFAAgF;AAChF,4EAA6E;AAEhE,QAAA,gBAAgB,GAAG,IAAA,uCAAoB,EAClD,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,EAAe,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IAErC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;IAEtC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;KACtB;AACH,CAAC,CACJ,CAAC;AAEW,QAAA,OAAO,GAAG,IAAA,uCAAoB,EACzC,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,EAAe,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,cAAc,GAAG,IAAA,qCAAgB,GAAE,CAAC;IAE1C,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;QACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;QAErC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;QAEtC,IAAI,IAAA,kCAAa,GAAE,EAAE;YACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;SACzD;aAAM;YACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,cAAc,KAAK,6BAAa,CAAC,KAAK,EAAE;gBAC1C,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,gBAAgB,CAAC,CAAC;aAC9C;iBAAM;gBACL,MAAM,IAAA,kBAAO,EAAC,2BAAY,CAAC,kBAAkB,CAAC,CAAC;aAChD;SACF;KACF;IAAC,OAAO,CAAC,EAAE;QACV,IAAA,mBAAS,EAAC,KAAK,EAAE,wCAAwC,CAAC,EAAE,CAAC,CAAC;KAC/D;AACH,CAAC,CACJ,CAAC"}
@@ -1,4 +1,10 @@
1
1
  import { Transaction } from "../models/Transaction";
2
+ import { DeviceLabels } from "../enum/DeviceLabels";
3
+ type ActionType = "both" | "right" | "tap" | "swipe" | "confirm" | "hold";
4
+ export declare const sendCardanoNanoS: (_tx: Transaction) => void | Promise<void>;
5
+ export declare const sendCardanoButtonDevice: (tx: Transaction) => void | Promise<void>;
2
6
  export declare function sendCardano(tx: Transaction): Promise<void>;
7
+ export declare const delegateNanoAction: (label: DeviceLabels, action: ActionType) => void | Promise<void>;
3
8
  export declare function delegateCardano(): Promise<void>;
9
+ export {};
4
10
  //# sourceMappingURL=cardano.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cardano.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/cardano.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AA4DpD,wBAAsB,WAAW,CAAC,EAAE,EAAE,WAAW,iBAShD;AAkFD,wBAAsB,eAAe,kBAYpC"}
1
+ {"version":3,"file":"cardano.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/cardano.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAQpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIpD,KAAK,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAoB1E,eAAO,MAAM,gBAAgB,4CAe5B,CAAC;AAEF,eAAO,MAAM,uBAAuB,2CAgBnC,CAAC;AAEF,wBAAsB,WAAW,CAAC,EAAE,EAAE,WAAW,iBAShD;AA2DD,eAAO,MAAM,kBAAkB,mEAW9B,CAAC;AAgBF,wBAAsB,eAAe,kBAYpC"}
@@ -3,15 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.delegateCardano = exports.sendCardano = void 0;
6
+ exports.delegateCardano = exports.delegateNanoAction = exports.sendCardano = exports.sendCardanoButtonDevice = exports.sendCardanoNanoS = void 0;
7
7
  const expect_1 = __importDefault(require("expect"));
8
8
  const speculos_1 = require("../speculos");
9
9
  const speculosAppVersion_1 = require("../speculosAppVersion");
10
- const ButtonDeviceSimulator_1 = require("../deviceInteraction/ButtonDeviceSimulator");
11
10
  const TouchDeviceSimulator_1 = require("../deviceInteraction/TouchDeviceSimulator");
12
11
  const DeviceLabels_1 = require("../enum/DeviceLabels");
13
12
  const types_devices_1 = require("@ledgerhq/types-devices");
14
- const speculosAppVersion_2 = require("../speculosAppVersion");
13
+ const DeviceController_1 = require("../deviceInteraction/DeviceController");
15
14
  function validateTransactionData(tx, events) {
16
15
  const isAddressCorrect = (0, speculos_1.containsSubstringInEvent)(tx.accountToCredit.address, events);
17
16
  (0, expect_1.default)(isAddressCorrect).toBeTruthy();
@@ -28,40 +27,42 @@ async function sendCardanoTouchDevices(tx) {
28
27
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.SIGN_TRANSACTION);
29
28
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
30
29
  }
31
- async function sendCardanoNanoS(_tx) {
30
+ exports.sendCardanoNanoS = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (_tx) => {
31
+ const buttons = getButtonsController();
32
32
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.NEW_ORDINARY);
33
- await (0, ButtonDeviceSimulator_1.pressRightButton)();
33
+ await buttons.right();
34
34
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.SEND_TO_ADDRESS);
35
- await (0, ButtonDeviceSimulator_1.pressBoth)();
35
+ await buttons.both();
36
36
  await (0, speculos_1.pressUntilTextFound)(DeviceLabels_1.DeviceLabels.SEND);
37
- await (0, ButtonDeviceSimulator_1.pressBoth)();
37
+ await buttons.both();
38
38
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.TRANSACTION_FEE);
39
- await (0, ButtonDeviceSimulator_1.pressBoth)();
39
+ await buttons.both();
40
40
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.CONFIRM);
41
- await (0, ButtonDeviceSimulator_1.pressRightButton)();
42
- }
43
- async function sendCardanoButtonDevice(tx) {
41
+ await buttons.right();
42
+ });
43
+ exports.sendCardanoButtonDevice = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (tx) => {
44
+ const buttons = getButtonsController();
44
45
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.NEW_ORDINARY);
45
- await (0, ButtonDeviceSimulator_1.pressBoth)();
46
+ await buttons.both();
46
47
  await (0, speculos_1.pressUntilTextFound)(DeviceLabels_1.DeviceLabels.SEND_TO_ADDRESS_2);
47
- await (0, ButtonDeviceSimulator_1.pressBoth)();
48
+ await buttons.both();
48
49
  const events = await (0, speculos_1.pressUntilTextFound)(DeviceLabels_1.DeviceLabels.SEND);
49
50
  validateTransactionData(tx, events);
50
- await (0, ButtonDeviceSimulator_1.pressBoth)();
51
+ await buttons.both();
51
52
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.TRANSACTION_FEE);
52
- await (0, ButtonDeviceSimulator_1.pressBoth)();
53
+ await buttons.both();
53
54
  await (0, speculos_1.waitFor)(DeviceLabels_1.DeviceLabels.CONFIRM);
54
- await (0, ButtonDeviceSimulator_1.pressBoth)();
55
- }
55
+ await buttons.both();
56
+ });
56
57
  async function sendCardano(tx) {
57
58
  const speculosModel = (0, speculosAppVersion_1.getSpeculosModel)();
58
- if ((0, speculosAppVersion_2.isTouchDevice)()) {
59
+ if ((0, speculosAppVersion_1.isTouchDevice)()) {
59
60
  return sendCardanoTouchDevices(tx);
60
61
  }
61
62
  if (speculosModel === types_devices_1.DeviceModelId.nanoS) {
62
- return sendCardanoNanoS(tx);
63
+ return (0, exports.sendCardanoNanoS)(tx);
63
64
  }
64
- return sendCardanoButtonDevice(tx);
65
+ return (0, exports.sendCardanoButtonDevice)(tx);
65
66
  }
66
67
  exports.sendCardano = sendCardano;
67
68
  const DELEGATE_STEPS_CONFIG = {
@@ -119,22 +120,23 @@ async function delegateTouchDevicesAction(label) {
119
120
  break;
120
121
  }
121
122
  }
122
- async function delegateNanoAction(label, action) {
123
+ exports.delegateNanoAction = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (label, action) => {
124
+ const buttons = getButtonsController();
123
125
  await (0, speculos_1.waitFor)(label);
124
126
  if (action === "both") {
125
- await (0, ButtonDeviceSimulator_1.pressBoth)();
127
+ await buttons.both();
126
128
  }
127
129
  else {
128
- await (0, ButtonDeviceSimulator_1.pressRightButton)();
130
+ await buttons.right();
129
131
  }
130
- }
132
+ });
131
133
  async function executeDelegateStep(label, action) {
132
134
  try {
133
- if ((0, speculosAppVersion_2.isTouchDevice)()) {
135
+ if ((0, speculosAppVersion_1.isTouchDevice)()) {
134
136
  await delegateTouchDevicesAction(label);
135
137
  }
136
138
  else {
137
- await delegateNanoAction(label, action);
139
+ await (0, exports.delegateNanoAction)(label, action);
138
140
  }
139
141
  }
140
142
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"cardano.js","sourceRoot":"","sources":["../../../src/e2e/families/cardano.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cardano.js","sourceRoot":"","sources":["../../../src/e2e/families/cardano.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { Delegate } from "../models/Delegate";
2
- export declare function delegateCelo(delegatingAccount: Delegate): Promise<void>;
2
+ export declare const delegateCelo: (delegatingAccount: Delegate) => void | Promise<void>;
3
3
  //# sourceMappingURL=celo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"celo.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/celo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAM9C,wBAAsB,YAAY,CAAC,iBAAiB,EAAE,QAAQ,iBAU7D"}
1
+ {"version":3,"file":"celo.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/celo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAM9C,eAAO,MAAM,YAAY,uDAgBxB,CAAC"}
@@ -7,10 +7,11 @@ exports.delegateCelo = void 0;
7
7
  const speculos_1 = require("../speculos");
8
8
  const speculosAppVersion_1 = require("../speculosAppVersion");
9
9
  const expect_1 = __importDefault(require("expect"));
10
- const ButtonDeviceSimulator_1 = require("../deviceInteraction/ButtonDeviceSimulator");
11
10
  const TouchDeviceSimulator_1 = require("../deviceInteraction/TouchDeviceSimulator");
12
11
  const DeviceLabels_1 = require("../enum/DeviceLabels");
13
- async function delegateCelo(delegatingAccount) {
12
+ const DeviceController_1 = require("../deviceInteraction/DeviceController");
13
+ exports.delegateCelo = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (delegatingAccount) => {
14
+ const buttons = getButtonsController();
14
15
  const events = await (0, speculos_1.getDelegateEvents)(delegatingAccount);
15
16
  const isAmountCorrect = (0, speculos_1.containsSubstringInEvent)(delegatingAccount.amount, events);
16
17
  (0, expect_1.default)(isAmountCorrect).toBeTruthy();
@@ -19,8 +20,7 @@ async function delegateCelo(delegatingAccount) {
19
20
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
20
21
  }
21
22
  else {
22
- await (0, ButtonDeviceSimulator_1.pressBoth)();
23
+ await buttons.both();
23
24
  }
24
- }
25
- exports.delegateCelo = delegateCelo;
25
+ });
26
26
  //# sourceMappingURL=celo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"celo.js","sourceRoot":"","sources":["../../../src/e2e/families/celo.ts"],"names":[],"mappings":";;;;;;AAAA,0CAA+F;AAC/F,8DAAsD;AAEtD,oDAA4B;AAC5B,sFAAuE;AACvE,oFAAgF;AAChF,uDAAoD;AAE7C,KAAK,UAAU,YAAY,CAAC,iBAA2B;IAC5D,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAiB,EAAC,iBAAiB,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnF,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,IAAA,iCAAS,GAAE,CAAC;KACnB;AACH,CAAC;AAVD,oCAUC"}
1
+ {"version":3,"file":"celo.js","sourceRoot":"","sources":["../../../src/e2e/families/celo.ts"],"names":[],"mappings":";;;;;;AAAA,0CAA+F;AAC/F,8DAAsD;AAEtD,oDAA4B;AAC5B,oFAAgF;AAChF,uDAAoD;AACpD,4EAA6E;AAEhE,QAAA,YAAY,GAAG,IAAA,uCAAoB,EAC9C,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,iBAA2B,EAAE,EAAE;IACpC,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAiB,EAAC,iBAAiB,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnF,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IAErC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,8BAAmB,EAAC,2BAAY,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;KACtB;AACH,CAAC,CACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Delegate } from "../models/Delegate";
2
2
  import { Transaction } from "../models/Transaction";
3
- export declare function delegateCosmos(delegatingAccount: Delegate): Promise<void>;
4
- export declare function sendCosmos(tx: Transaction): Promise<void>;
3
+ export declare const delegateCosmos: (delegatingAccount: Delegate) => void | Promise<void>;
4
+ export declare const sendCosmos: (tx: Transaction) => void | Promise<void>;
5
5
  //# sourceMappingURL=cosmos.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/cosmos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAOpD,wBAAsB,cAAc,CAAC,iBAAiB,EAAE,QAAQ,iBAS/D;AAED,wBAAsB,UAAU,CAAC,EAAE,EAAE,WAAW,iBAY/C"}
1
+ {"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/cosmos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAOpD,eAAO,MAAM,cAAc,uDAe1B,CAAC;AAEF,eAAO,MAAM,UAAU,2CAkBtB,CAAC"}
@@ -6,11 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.sendCosmos = exports.delegateCosmos = void 0;
7
7
  const expect_1 = __importDefault(require("expect"));
8
8
  const speculos_1 = require("../speculos");
9
- const ButtonDeviceSimulator_1 = require("../deviceInteraction/ButtonDeviceSimulator");
10
9
  const DeviceLabels_1 = require("../enum/DeviceLabels");
11
10
  const speculosAppVersion_1 = require("../speculosAppVersion");
12
11
  const TouchDeviceSimulator_1 = require("../deviceInteraction/TouchDeviceSimulator");
13
- async function delegateCosmos(delegatingAccount) {
12
+ const DeviceController_1 = require("../deviceInteraction/DeviceController");
13
+ exports.delegateCosmos = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (delegatingAccount) => {
14
+ const buttons = getButtonsController();
14
15
  const events = await (0, speculos_1.getDelegateEvents)(delegatingAccount);
15
16
  const isAmountCorrect = (0, speculos_1.containsSubstringInEvent)(delegatingAccount.amount, events);
16
17
  (0, expect_1.default)(isAmountCorrect).toBeTruthy();
@@ -18,11 +19,11 @@ async function delegateCosmos(delegatingAccount) {
18
19
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
19
20
  }
20
21
  else {
21
- await (0, ButtonDeviceSimulator_1.pressBoth)();
22
+ await buttons.both();
22
23
  }
23
- }
24
- exports.delegateCosmos = delegateCosmos;
25
- async function sendCosmos(tx) {
24
+ });
25
+ exports.sendCosmos = (0, DeviceController_1.withDeviceController)(({ getButtonsController }) => async (tx) => {
26
+ const buttons = getButtonsController();
26
27
  const events = await (0, speculos_1.getSendEvents)(tx);
27
28
  const isAmountCorrect = (0, speculos_1.containsSubstringInEvent)(tx.amount, events);
28
29
  (0, expect_1.default)(isAmountCorrect).toBeTruthy();
@@ -32,8 +33,7 @@ async function sendCosmos(tx) {
32
33
  await (0, TouchDeviceSimulator_1.longPressAndRelease)(DeviceLabels_1.DeviceLabels.HOLD_TO_SIGN, 3);
33
34
  }
34
35
  else {
35
- await (0, ButtonDeviceSimulator_1.pressBoth)();
36
+ await buttons.both();
36
37
  }
37
- }
38
- exports.sendCosmos = sendCosmos;
38
+ });
39
39
  //# sourceMappingURL=cosmos.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../../../src/e2e/families/cosmos.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAG5B,0CAAyF;AACzF,sFAAuE;AACvE,uDAAoD;AACpD,8DAAsD;AACtD,oFAAgF;AAEzE,KAAK,UAAU,cAAc,CAAC,iBAA2B;IAC9D,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAiB,EAAC,iBAAiB,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnF,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,IAAA,iCAAS,GAAE,CAAC;KACnB;AACH,CAAC;AATD,wCASC;AAEM,KAAK,UAAU,UAAU,CAAC,EAAe;IAC9C,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;IAEtC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,IAAA,iCAAS,GAAE,CAAC;KACnB;AACH,CAAC;AAZD,gCAYC"}
1
+ {"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../../../src/e2e/families/cosmos.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAG5B,0CAAyF;AACzF,uDAAoD;AACpD,8DAAsD;AACtD,oFAAgF;AAChF,4EAA6E;AAEhE,QAAA,cAAc,GAAG,IAAA,uCAAoB,EAChD,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,iBAA2B,EAAE,EAAE;IACpC,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAiB,EAAC,iBAAiB,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnF,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IAErC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;KACtB;AACH,CAAC,CACJ,CAAC;AAEW,QAAA,UAAU,GAAG,IAAA,uCAAoB,EAC5C,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3B,KAAK,EAAE,EAAe,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,IAAA,gBAAM,EAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IAErC,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtF,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;IAEtC,IAAI,IAAA,kCAAa,GAAE,EAAE;QACnB,MAAM,IAAA,0CAAmB,EAAC,2BAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;KACtB;AACH,CAAC,CACJ,CAAC"}
@@ -1,3 +1,5 @@
1
1
  import { Transaction } from "../models/Transaction";
2
+ export declare const sendEvmButtonDevice: (tx: Transaction) => void | Promise<void>;
3
+ export declare const sendEvmNanoS: (tx: Transaction) => void | Promise<void>;
2
4
  export declare function sendEVM(tx: Transaction): Promise<void>;
3
5
  //# sourceMappingURL=evm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/evm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAwCpD,wBAAsB,OAAO,CAAC,EAAE,EAAE,WAAW,iBAS5C"}
1
+ {"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../../src/e2e/families/evm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AA4BpD,eAAO,MAAM,mBAAmB,2CAS/B,CAAC;AAEF,eAAO,MAAM,YAAY,2CASxB,CAAC;AAEF,wBAAsB,OAAO,CAAC,EAAE,EAAE,WAAW,iBAU5C"}