@ledgerhq/coin-sui 0.16.0 → 0.16.1-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 (291) hide show
  1. package/.unimportedrc.json +2 -1
  2. package/CHANGELOG.md +9 -0
  3. package/lib/logic/estimateFees.d.ts +4 -1
  4. package/lib/logic/estimateFees.d.ts.map +1 -1
  5. package/lib/logic/estimateFees.js +2 -1
  6. package/lib/logic/estimateFees.js.map +1 -1
  7. package/lib/network/sdk.d.ts.map +1 -1
  8. package/lib/network/sdk.js +18 -13
  9. package/lib/network/sdk.js.map +1 -1
  10. package/lib/{bridge/bridge.integration.test.d.ts → test/bridge.dataset.d.ts} +1 -1
  11. package/lib/test/bridge.dataset.d.ts.map +1 -0
  12. package/lib/{bridge/bridge.integration.test.js → test/bridge.dataset.js} +2 -2
  13. package/lib/test/bridge.dataset.js.map +1 -0
  14. package/lib-es/logic/estimateFees.d.ts +4 -1
  15. package/lib-es/logic/estimateFees.d.ts.map +1 -1
  16. package/lib-es/logic/estimateFees.js +2 -1
  17. package/lib-es/logic/estimateFees.js.map +1 -1
  18. package/lib-es/network/sdk.d.ts.map +1 -1
  19. package/lib-es/network/sdk.js +18 -13
  20. package/lib-es/network/sdk.js.map +1 -1
  21. package/lib-es/{bridge/bridge.integration.test.d.ts → test/bridge.dataset.d.ts} +1 -1
  22. package/lib-es/test/bridge.dataset.d.ts.map +1 -0
  23. package/lib-es/{bridge/bridge.integration.test.js → test/bridge.dataset.js} +2 -2
  24. package/lib-es/test/bridge.dataset.js.map +1 -0
  25. package/package.json +5 -9
  26. package/src/api/index.integration.test.ts +44 -7
  27. package/src/logic/estimateFees.test.ts +22 -16
  28. package/src/logic/estimateFees.ts +6 -1
  29. package/src/network/sdk.test.ts +44 -4
  30. package/src/network/sdk.ts +21 -13
  31. package/src/{bridge/bridge.integration.test.ts → test/bridge.dataset.ts} +1 -1
  32. package/lib/api/index.integration.test.d.ts +0 -2
  33. package/lib/api/index.integration.test.d.ts.map +0 -1
  34. package/lib/api/index.integration.test.js +0 -173
  35. package/lib/api/index.integration.test.js.map +0 -1
  36. package/lib/api/index.test.d.ts +0 -2
  37. package/lib/api/index.test.d.ts.map +0 -1
  38. package/lib/api/index.test.js +0 -173
  39. package/lib/api/index.test.js.map +0 -1
  40. package/lib/bridge/bridge.integration.test.d.ts.map +0 -1
  41. package/lib/bridge/bridge.integration.test.js.map +0 -1
  42. package/lib/bridge/broadcast.test.d.ts +0 -2
  43. package/lib/bridge/broadcast.test.d.ts.map +0 -1
  44. package/lib/bridge/broadcast.test.js +0 -48
  45. package/lib/bridge/broadcast.test.js.map +0 -1
  46. package/lib/bridge/buildOptimisticOperation.test.d.ts +0 -2
  47. package/lib/bridge/buildOptimisticOperation.test.d.ts.map +0 -1
  48. package/lib/bridge/buildOptimisticOperation.test.js +0 -52
  49. package/lib/bridge/buildOptimisticOperation.test.js.map +0 -1
  50. package/lib/bridge/buildTransaction.integration.test.d.ts +0 -2
  51. package/lib/bridge/buildTransaction.integration.test.d.ts.map +0 -1
  52. package/lib/bridge/buildTransaction.integration.test.js +0 -72
  53. package/lib/bridge/buildTransaction.integration.test.js.map +0 -1
  54. package/lib/bridge/buildTransaction.test.d.ts +0 -2
  55. package/lib/bridge/buildTransaction.test.d.ts.map +0 -1
  56. package/lib/bridge/buildTransaction.test.js +0 -231
  57. package/lib/bridge/buildTransaction.test.js.map +0 -1
  58. package/lib/bridge/estimateMaxSpendable.test.d.ts +0 -2
  59. package/lib/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
  60. package/lib/bridge/estimateMaxSpendable.test.js +0 -52
  61. package/lib/bridge/estimateMaxSpendable.test.js.map +0 -1
  62. package/lib/bridge/formatters.test.d.ts +0 -2
  63. package/lib/bridge/formatters.test.d.ts.map +0 -1
  64. package/lib/bridge/formatters.test.js +0 -18
  65. package/lib/bridge/formatters.test.js.map +0 -1
  66. package/lib/bridge/getFeesForTransaction.test.d.ts +0 -2
  67. package/lib/bridge/getFeesForTransaction.test.d.ts.map +0 -1
  68. package/lib/bridge/getFeesForTransaction.test.js +0 -35
  69. package/lib/bridge/getFeesForTransaction.test.js.map +0 -1
  70. package/lib/bridge/getTransactionStatus.test.d.ts +0 -2
  71. package/lib/bridge/getTransactionStatus.test.d.ts.map +0 -1
  72. package/lib/bridge/getTransactionStatus.test.js +0 -69
  73. package/lib/bridge/getTransactionStatus.test.js.map +0 -1
  74. package/lib/bridge/index.test.d.ts +0 -2
  75. package/lib/bridge/index.test.d.ts.map +0 -1
  76. package/lib/bridge/index.test.js +0 -265
  77. package/lib/bridge/index.test.js.map +0 -1
  78. package/lib/bridge/preload.test.d.ts +0 -2
  79. package/lib/bridge/preload.test.d.ts.map +0 -1
  80. package/lib/bridge/preload.test.js +0 -52
  81. package/lib/bridge/preload.test.js.map +0 -1
  82. package/lib/bridge/prepareTransaction.test.d.ts +0 -2
  83. package/lib/bridge/prepareTransaction.test.d.ts.map +0 -1
  84. package/lib/bridge/prepareTransaction.test.js +0 -97
  85. package/lib/bridge/prepareTransaction.test.js.map +0 -1
  86. package/lib/bridge/serialization.test.d.ts +0 -2
  87. package/lib/bridge/serialization.test.d.ts.map +0 -1
  88. package/lib/bridge/serialization.test.js +0 -131
  89. package/lib/bridge/serialization.test.js.map +0 -1
  90. package/lib/bridge/signOperation.integration.test.d.ts +0 -2
  91. package/lib/bridge/signOperation.integration.test.d.ts.map +0 -1
  92. package/lib/bridge/signOperation.integration.test.js +0 -80
  93. package/lib/bridge/signOperation.integration.test.js.map +0 -1
  94. package/lib/bridge/signOperation.test.d.ts +0 -2
  95. package/lib/bridge/signOperation.test.d.ts.map +0 -1
  96. package/lib/bridge/signOperation.test.js +0 -445
  97. package/lib/bridge/signOperation.test.js.map +0 -1
  98. package/lib/bridge/synchronisation.test.d.ts +0 -2
  99. package/lib/bridge/synchronisation.test.d.ts.map +0 -1
  100. package/lib/bridge/synchronisation.test.js +0 -505
  101. package/lib/bridge/synchronisation.test.js.map +0 -1
  102. package/lib/bridge/transaction.test.d.ts +0 -2
  103. package/lib/bridge/transaction.test.d.ts.map +0 -1
  104. package/lib/bridge/transaction.test.js +0 -68
  105. package/lib/bridge/transaction.test.js.map +0 -1
  106. package/lib/logic/broadcast.test.d.ts +0 -2
  107. package/lib/logic/broadcast.test.d.ts.map +0 -1
  108. package/lib/logic/broadcast.test.js +0 -62
  109. package/lib/logic/broadcast.test.js.map +0 -1
  110. package/lib/logic/combine.test.d.ts +0 -2
  111. package/lib/logic/combine.test.d.ts.map +0 -1
  112. package/lib/logic/combine.test.js +0 -37
  113. package/lib/logic/combine.test.js.map +0 -1
  114. package/lib/logic/craftTransaction.integration.test.d.ts +0 -2
  115. package/lib/logic/craftTransaction.integration.test.d.ts.map +0 -1
  116. package/lib/logic/craftTransaction.integration.test.js +0 -98
  117. package/lib/logic/craftTransaction.integration.test.js.map +0 -1
  118. package/lib/logic/craftTransaction.test.d.ts +0 -2
  119. package/lib/logic/craftTransaction.test.d.ts.map +0 -1
  120. package/lib/logic/craftTransaction.test.js +0 -127
  121. package/lib/logic/craftTransaction.test.js.map +0 -1
  122. package/lib/logic/estimateFees.integration.test.d.ts +0 -2
  123. package/lib/logic/estimateFees.integration.test.d.ts.map +0 -1
  124. package/lib/logic/estimateFees.integration.test.js +0 -82
  125. package/lib/logic/estimateFees.integration.test.js.map +0 -1
  126. package/lib/logic/estimateFees.test.d.ts +0 -2
  127. package/lib/logic/estimateFees.test.d.ts.map +0 -1
  128. package/lib/logic/estimateFees.test.js +0 -70
  129. package/lib/logic/estimateFees.test.js.map +0 -1
  130. package/lib/logic/getBalance.integration.test.d.ts +0 -2
  131. package/lib/logic/getBalance.integration.test.d.ts.map +0 -1
  132. package/lib/logic/getBalance.integration.test.js +0 -56
  133. package/lib/logic/getBalance.integration.test.js.map +0 -1
  134. package/lib/logic/getBalance.test.d.ts +0 -2
  135. package/lib/logic/getBalance.test.d.ts.map +0 -1
  136. package/lib/logic/getBalance.test.js +0 -64
  137. package/lib/logic/getBalance.test.js.map +0 -1
  138. package/lib/logic/lastBlock.test.d.ts +0 -2
  139. package/lib/logic/lastBlock.test.d.ts.map +0 -1
  140. package/lib/logic/lastBlock.test.js +0 -27
  141. package/lib/logic/lastBlock.test.js.map +0 -1
  142. package/lib/logic/listOperations.test.d.ts +0 -2
  143. package/lib/logic/listOperations.test.d.ts.map +0 -1
  144. package/lib/logic/listOperations.test.js +0 -79
  145. package/lib/logic/listOperations.test.js.map +0 -1
  146. package/lib/network/sdk.integration.test.d.ts +0 -2
  147. package/lib/network/sdk.integration.test.d.ts.map +0 -1
  148. package/lib/network/sdk.integration.test.js +0 -215
  149. package/lib/network/sdk.integration.test.js.map +0 -1
  150. package/lib/network/sdk.test.d.ts +0 -2
  151. package/lib/network/sdk.test.d.ts.map +0 -1
  152. package/lib/network/sdk.test.js +0 -1784
  153. package/lib/network/sdk.test.js.map +0 -1
  154. package/lib/signer/getAddress.test.d.ts +0 -2
  155. package/lib/signer/getAddress.test.d.ts.map +0 -1
  156. package/lib/signer/getAddress.test.js +0 -106
  157. package/lib/signer/getAddress.test.js.map +0 -1
  158. package/lib/test/config.test.d.ts +0 -2
  159. package/lib/test/config.test.d.ts.map +0 -1
  160. package/lib/test/config.test.js +0 -44
  161. package/lib/test/config.test.js.map +0 -1
  162. package/lib-es/api/index.integration.test.d.ts +0 -2
  163. package/lib-es/api/index.integration.test.d.ts.map +0 -1
  164. package/lib-es/api/index.integration.test.js +0 -171
  165. package/lib-es/api/index.integration.test.js.map +0 -1
  166. package/lib-es/api/index.test.d.ts +0 -2
  167. package/lib-es/api/index.test.d.ts.map +0 -1
  168. package/lib-es/api/index.test.js +0 -148
  169. package/lib-es/api/index.test.js.map +0 -1
  170. package/lib-es/bridge/bridge.integration.test.d.ts.map +0 -1
  171. package/lib-es/bridge/bridge.integration.test.js.map +0 -1
  172. package/lib-es/bridge/broadcast.test.d.ts +0 -2
  173. package/lib-es/bridge/broadcast.test.d.ts.map +0 -1
  174. package/lib-es/bridge/broadcast.test.js +0 -46
  175. package/lib-es/bridge/broadcast.test.js.map +0 -1
  176. package/lib-es/bridge/buildOptimisticOperation.test.d.ts +0 -2
  177. package/lib-es/bridge/buildOptimisticOperation.test.d.ts.map +0 -1
  178. package/lib-es/bridge/buildOptimisticOperation.test.js +0 -47
  179. package/lib-es/bridge/buildOptimisticOperation.test.js.map +0 -1
  180. package/lib-es/bridge/buildTransaction.integration.test.d.ts +0 -2
  181. package/lib-es/bridge/buildTransaction.integration.test.d.ts.map +0 -1
  182. package/lib-es/bridge/buildTransaction.integration.test.js +0 -67
  183. package/lib-es/bridge/buildTransaction.integration.test.js.map +0 -1
  184. package/lib-es/bridge/buildTransaction.test.d.ts +0 -2
  185. package/lib-es/bridge/buildTransaction.test.d.ts.map +0 -1
  186. package/lib-es/bridge/buildTransaction.test.js +0 -229
  187. package/lib-es/bridge/buildTransaction.test.js.map +0 -1
  188. package/lib-es/bridge/estimateMaxSpendable.test.d.ts +0 -2
  189. package/lib-es/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
  190. package/lib-es/bridge/estimateMaxSpendable.test.js +0 -50
  191. package/lib-es/bridge/estimateMaxSpendable.test.js.map +0 -1
  192. package/lib-es/bridge/formatters.test.d.ts +0 -2
  193. package/lib-es/bridge/formatters.test.d.ts.map +0 -1
  194. package/lib-es/bridge/formatters.test.js +0 -16
  195. package/lib-es/bridge/formatters.test.js.map +0 -1
  196. package/lib-es/bridge/getFeesForTransaction.test.d.ts +0 -2
  197. package/lib-es/bridge/getFeesForTransaction.test.d.ts.map +0 -1
  198. package/lib-es/bridge/getFeesForTransaction.test.js +0 -30
  199. package/lib-es/bridge/getFeesForTransaction.test.js.map +0 -1
  200. package/lib-es/bridge/getTransactionStatus.test.d.ts +0 -2
  201. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +0 -1
  202. package/lib-es/bridge/getTransactionStatus.test.js +0 -64
  203. package/lib-es/bridge/getTransactionStatus.test.js.map +0 -1
  204. package/lib-es/bridge/index.test.d.ts +0 -2
  205. package/lib-es/bridge/index.test.d.ts.map +0 -1
  206. package/lib-es/bridge/index.test.js +0 -260
  207. package/lib-es/bridge/index.test.js.map +0 -1
  208. package/lib-es/bridge/preload.test.d.ts +0 -2
  209. package/lib-es/bridge/preload.test.d.ts.map +0 -1
  210. package/lib-es/bridge/preload.test.js +0 -50
  211. package/lib-es/bridge/preload.test.js.map +0 -1
  212. package/lib-es/bridge/prepareTransaction.test.d.ts +0 -2
  213. package/lib-es/bridge/prepareTransaction.test.d.ts.map +0 -1
  214. package/lib-es/bridge/prepareTransaction.test.js +0 -92
  215. package/lib-es/bridge/prepareTransaction.test.js.map +0 -1
  216. package/lib-es/bridge/serialization.test.d.ts +0 -2
  217. package/lib-es/bridge/serialization.test.d.ts.map +0 -1
  218. package/lib-es/bridge/serialization.test.js +0 -126
  219. package/lib-es/bridge/serialization.test.js.map +0 -1
  220. package/lib-es/bridge/signOperation.integration.test.d.ts +0 -2
  221. package/lib-es/bridge/signOperation.integration.test.d.ts.map +0 -1
  222. package/lib-es/bridge/signOperation.integration.test.js +0 -75
  223. package/lib-es/bridge/signOperation.integration.test.js.map +0 -1
  224. package/lib-es/bridge/signOperation.test.d.ts +0 -2
  225. package/lib-es/bridge/signOperation.test.d.ts.map +0 -1
  226. package/lib-es/bridge/signOperation.test.js +0 -440
  227. package/lib-es/bridge/signOperation.test.js.map +0 -1
  228. package/lib-es/bridge/synchronisation.test.d.ts +0 -2
  229. package/lib-es/bridge/synchronisation.test.d.ts.map +0 -1
  230. package/lib-es/bridge/synchronisation.test.js +0 -477
  231. package/lib-es/bridge/synchronisation.test.js.map +0 -1
  232. package/lib-es/bridge/transaction.test.d.ts +0 -2
  233. package/lib-es/bridge/transaction.test.d.ts.map +0 -1
  234. package/lib-es/bridge/transaction.test.js +0 -66
  235. package/lib-es/bridge/transaction.test.js.map +0 -1
  236. package/lib-es/logic/broadcast.test.d.ts +0 -2
  237. package/lib-es/logic/broadcast.test.d.ts.map +0 -1
  238. package/lib-es/logic/broadcast.test.js +0 -57
  239. package/lib-es/logic/broadcast.test.js.map +0 -1
  240. package/lib-es/logic/combine.test.d.ts +0 -2
  241. package/lib-es/logic/combine.test.d.ts.map +0 -1
  242. package/lib-es/logic/combine.test.js +0 -35
  243. package/lib-es/logic/combine.test.js.map +0 -1
  244. package/lib-es/logic/craftTransaction.integration.test.d.ts +0 -2
  245. package/lib-es/logic/craftTransaction.integration.test.d.ts.map +0 -1
  246. package/lib-es/logic/craftTransaction.integration.test.js +0 -93
  247. package/lib-es/logic/craftTransaction.integration.test.js.map +0 -1
  248. package/lib-es/logic/craftTransaction.test.d.ts +0 -2
  249. package/lib-es/logic/craftTransaction.test.d.ts.map +0 -1
  250. package/lib-es/logic/craftTransaction.test.js +0 -122
  251. package/lib-es/logic/craftTransaction.test.js.map +0 -1
  252. package/lib-es/logic/estimateFees.integration.test.d.ts +0 -2
  253. package/lib-es/logic/estimateFees.integration.test.d.ts.map +0 -1
  254. package/lib-es/logic/estimateFees.integration.test.js +0 -77
  255. package/lib-es/logic/estimateFees.integration.test.js.map +0 -1
  256. package/lib-es/logic/estimateFees.test.d.ts +0 -2
  257. package/lib-es/logic/estimateFees.test.d.ts.map +0 -1
  258. package/lib-es/logic/estimateFees.test.js +0 -65
  259. package/lib-es/logic/estimateFees.test.js.map +0 -1
  260. package/lib-es/logic/getBalance.integration.test.d.ts +0 -2
  261. package/lib-es/logic/getBalance.integration.test.d.ts.map +0 -1
  262. package/lib-es/logic/getBalance.integration.test.js +0 -51
  263. package/lib-es/logic/getBalance.integration.test.js.map +0 -1
  264. package/lib-es/logic/getBalance.test.d.ts +0 -2
  265. package/lib-es/logic/getBalance.test.d.ts.map +0 -1
  266. package/lib-es/logic/getBalance.test.js +0 -62
  267. package/lib-es/logic/getBalance.test.js.map +0 -1
  268. package/lib-es/logic/lastBlock.test.d.ts +0 -2
  269. package/lib-es/logic/lastBlock.test.d.ts.map +0 -1
  270. package/lib-es/logic/lastBlock.test.js +0 -25
  271. package/lib-es/logic/lastBlock.test.js.map +0 -1
  272. package/lib-es/logic/listOperations.test.d.ts +0 -2
  273. package/lib-es/logic/listOperations.test.d.ts.map +0 -1
  274. package/lib-es/logic/listOperations.test.js +0 -77
  275. package/lib-es/logic/listOperations.test.js.map +0 -1
  276. package/lib-es/network/sdk.integration.test.d.ts +0 -2
  277. package/lib-es/network/sdk.integration.test.d.ts.map +0 -1
  278. package/lib-es/network/sdk.integration.test.js +0 -210
  279. package/lib-es/network/sdk.integration.test.js.map +0 -1
  280. package/lib-es/network/sdk.test.d.ts +0 -2
  281. package/lib-es/network/sdk.test.d.ts.map +0 -1
  282. package/lib-es/network/sdk.test.js +0 -1756
  283. package/lib-es/network/sdk.test.js.map +0 -1
  284. package/lib-es/signer/getAddress.test.d.ts +0 -2
  285. package/lib-es/signer/getAddress.test.d.ts.map +0 -1
  286. package/lib-es/signer/getAddress.test.js +0 -101
  287. package/lib-es/signer/getAddress.test.js.map +0 -1
  288. package/lib-es/test/config.test.d.ts +0 -2
  289. package/lib-es/test/config.test.d.ts.map +0 -1
  290. package/lib-es/test/config.test.js +0 -39
  291. package/lib-es/test/config.test.js.map +0 -1
@@ -1,50 +0,0 @@
1
- import { BigNumber } from "bignumber.js";
2
- import { estimateMaxSpendable } from "./estimateMaxSpendable";
3
- import { createFixtureAccount, createFixtureTransaction } from "../types/bridge.fixture";
4
- const mockEstimateFees = jest.fn();
5
- jest.mock("../logic", () => ({
6
- estimateFees: () => mockEstimateFees(),
7
- }));
8
- describe("estimateMaxSpendable", () => {
9
- it("should return the correct spendable amount when fees are deducted", async () => {
10
- // GIVEN
11
- const balance = new BigNumber(100);
12
- const account = createFixtureAccount({ spendableBalance: balance });
13
- const transaction = createFixtureTransaction();
14
- const fees = new BigNumber(10);
15
- mockEstimateFees.mockResolvedValue(fees);
16
- // WHEN
17
- const result = await estimateMaxSpendable({ account, transaction });
18
- // THEN
19
- expect(mockEstimateFees).toHaveBeenCalledTimes(1);
20
- expect(result).toEqual(balance.minus(fees));
21
- });
22
- it("should apply delegation-specific constraints and gas reservation", async () => {
23
- // GIVEN
24
- const balance = new BigNumber("5000000000"); // 5 SUI
25
- const account = createFixtureAccount({ spendableBalance: balance });
26
- const transaction = createFixtureTransaction({ mode: "delegate" });
27
- const fees = new BigNumber("100000000"); // 0.1 SUI
28
- mockEstimateFees.mockResolvedValue(fees);
29
- // WHEN
30
- const result = await estimateMaxSpendable({ account, transaction });
31
- // THEN
32
- // Should deduct fees (0.1 SUI) = 0.1 SUI from 5 SUI = 4.9 SUI
33
- const expectedAmount = balance.minus(fees); // 4.8 SUI
34
- expect(result).toEqual(expectedAmount);
35
- });
36
- it("should return 0 for delegation when balance is below minimum threshold", async () => {
37
- // GIVEN
38
- const balance = new BigNumber("800000000"); // 0.8 SUI (below 1 SUI minimum after fees/reserve)
39
- const account = createFixtureAccount({ spendableBalance: balance });
40
- const transaction = createFixtureTransaction({ mode: "delegate" });
41
- const fees = new BigNumber("100000000"); // 0.1 SUI
42
- mockEstimateFees.mockResolvedValue(fees);
43
- // WHEN
44
- const result = await estimateMaxSpendable({ account, transaction });
45
- // THEN
46
- // After deducting fees (0.1) + gas reserve (0.1) = 0.6 SUI, which is < 1 SUI minimum
47
- expect(result).toEqual(new BigNumber(0));
48
- });
49
- });
50
- //# sourceMappingURL=estimateMaxSpendable.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"estimateMaxSpendable.test.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=formatters.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatters.test.d.ts","sourceRoot":"","sources":["../../src/bridge/formatters.test.ts"],"names":[],"mappings":""}
@@ -1,16 +0,0 @@
1
- import { fromOperationExtraRaw, toOperationExtraRaw } from "./formatters";
2
- describe("formatters", () => {
3
- describe("fromOperationExtraRaw", () => {
4
- it("should return an empty object when no extraRaw is provided", () => {
5
- const result = fromOperationExtraRaw(undefined);
6
- expect(result).toEqual({});
7
- });
8
- });
9
- describe("toOperationExtraRaw", () => {
10
- it("should return an empty object when no extra is provided", () => {
11
- const result = toOperationExtraRaw(undefined);
12
- expect(result).toEqual({});
13
- });
14
- });
15
- });
16
- //# sourceMappingURL=formatters.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatters.test.js","sourceRoot":"","sources":["../../src/bridge/formatters.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAE1E,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACpE,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;YACjE,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=getFeesForTransaction.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFeesForTransaction.test.d.ts","sourceRoot":"","sources":["../../src/bridge/getFeesForTransaction.test.ts"],"names":[],"mappings":""}
@@ -1,30 +0,0 @@
1
- import getEstimatedFees from "./getFeesForTransaction";
2
- import { createFixtureAccount, createFixtureTransaction } from "../types/bridge.fixture";
3
- const estimateFees = jest.fn();
4
- jest.mock("../logic", () => {
5
- return {
6
- estimateFees: (arg) => estimateFees(arg),
7
- };
8
- });
9
- describe("getEstimatedFees", () => {
10
- const transaction = createFixtureTransaction();
11
- beforeEach(() => {
12
- estimateFees.mockClear();
13
- });
14
- it("returns fees estimation by sui sdk", async () => {
15
- // GIVEN
16
- const account = createFixtureAccount();
17
- const gasBudget = BigInt("3976000");
18
- estimateFees.mockResolvedValue(gasBudget);
19
- // WHEN
20
- const result = await getEstimatedFees({
21
- account,
22
- transaction,
23
- });
24
- // THEN
25
- expect(estimateFees).toHaveBeenCalledTimes(1);
26
- expect(estimateFees.mock.lastCall).not.toBeNull();
27
- expect(result.toString()).toEqual(gasBudget.toString());
28
- });
29
- });
30
- //# sourceMappingURL=getFeesForTransaction.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFeesForTransaction.test.js","sourceRoot":"","sources":["../../src/bridge/getFeesForTransaction.test.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AAE/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,OAAO;QACL,YAAY,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;KAC9C,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,MAAM,WAAW,GAAG,wBAAwB,EAAE,CAAC;IAE/C,UAAU,CAAC,GAAG,EAAE;QACd,YAAY,CAAC,SAAS,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,QAAQ;QACR,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAE1C,OAAO;QACP,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;YACpC,OAAO;YACP,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO;QACP,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=getTransactionStatus.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getTransactionStatus.test.d.ts","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.test.ts"],"names":[],"mappings":""}
@@ -1,64 +0,0 @@
1
- import { NotEnoughBalance, NotEnoughBalanceInParentAccount, RecipientRequired, InvalidAddress, InvalidAddressBecauseDestinationIsAlsoSource, AmountRequired, FeeNotLoaded, } from "@ledgerhq/errors";
2
- import { createFixtureAccount, createFixtureTransaction } from "../types/bridge.fixture";
3
- import getTransactionStatus from "./getTransactionStatus";
4
- import BigNumber from "bignumber.js";
5
- const account = createFixtureAccount();
6
- describe("getTransactionStatus", () => {
7
- it("should return errors if recipient empty", async () => {
8
- const transaction = createFixtureTransaction({ recipient: null });
9
- const result = await getTransactionStatus(account, transaction);
10
- const expected = { recipient: new RecipientRequired() };
11
- expect(result.errors).toEqual(expected);
12
- });
13
- it("should return errors if recipient is invalid sui adress", async () => {
14
- const transaction = createFixtureTransaction({ recipient: "notValidSuiAddress" });
15
- const result = await getTransactionStatus(account, transaction);
16
- const expected = { recipient: new InvalidAddress() };
17
- expect(result.errors).toEqual(expected);
18
- });
19
- it("should return errors if recipient equals to sender", async () => {
20
- const transaction = createFixtureTransaction({ recipient: account.freshAddress });
21
- const result = await getTransactionStatus(account, transaction);
22
- const expected = { recipient: new InvalidAddressBecauseDestinationIsAlsoSource() };
23
- expect(result.errors).toEqual(expected);
24
- });
25
- it("should return errors if amount not provided", async () => {
26
- const transaction = createFixtureTransaction({ amount: null });
27
- const result = await getTransactionStatus(account, transaction);
28
- const expected = { amount: new AmountRequired() };
29
- expect(result.errors).toEqual(expected);
30
- });
31
- it("should return errors if amount exceeds balance", async () => {
32
- const transaction = createFixtureTransaction({ amount: account.balance.plus(1) });
33
- const result = await getTransactionStatus(account, transaction);
34
- const expected = { amount: new NotEnoughBalance() };
35
- expect(result.errors).toEqual(expected);
36
- });
37
- it("should return errors fees not loaded", async () => {
38
- const transaction = createFixtureTransaction({ fees: null });
39
- const result = await getTransactionStatus(account, transaction);
40
- const expected = { fees: new FeeNotLoaded() };
41
- expect(result.errors).toEqual(expected);
42
- });
43
- it("should return errors if not enought balance for fees", async () => {
44
- const transaction = createFixtureTransaction({
45
- subAccountId: "subAccountId",
46
- });
47
- const account = createFixtureAccount({
48
- id: "parentAccountId",
49
- balance: BigNumber(0),
50
- spendableBalance: BigNumber(0),
51
- subAccounts: [
52
- createFixtureAccount({
53
- id: "subAccountId",
54
- parentId: "parentAccountId",
55
- type: "TokenAccount",
56
- }),
57
- ],
58
- });
59
- const result = await getTransactionStatus(account, transaction);
60
- const expected = { amount: new NotEnoughBalanceInParentAccount() };
61
- expect(result.errors).toEqual(expected);
62
- });
63
- });
64
- //# sourceMappingURL=getTransactionStatus.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getTransactionStatus.test.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/bridge/index.test.ts"],"names":[],"mappings":""}
@@ -1,260 +0,0 @@
1
- import { BigNumber } from "bignumber.js";
2
- import { createBridges } from "./index";
3
- import suiConfig from "../config";
4
- import signerGetAddress from "../signer";
5
- import { buildSignOperation } from "./signOperation";
6
- import { getAccountShape, sync } from "./synchronisation";
7
- import { broadcast } from "./broadcast";
8
- import { createTransaction } from "./createTransaction";
9
- import { estimateMaxSpendable } from "./estimateMaxSpendable";
10
- import { getTransactionStatus } from "./getTransactionStatus";
11
- import { getPreloadStrategy, hydrate, preload } from "./preload";
12
- import { prepareTransaction } from "./prepareTransaction";
13
- import { assignFromAccountRaw, assignToAccountRaw } from "./serialization";
14
- import { fromOperationExtraRaw, toOperationExtraRaw } from "./formatters";
15
- // Mock all dependencies
16
- jest.mock("../config");
17
- jest.mock("../signer");
18
- jest.mock("./signOperation");
19
- jest.mock("./synchronisation");
20
- jest.mock("./broadcast");
21
- jest.mock("./createTransaction");
22
- jest.mock("./estimateMaxSpendable");
23
- jest.mock("./getTransactionStatus");
24
- jest.mock("./preload");
25
- jest.mock("./prepareTransaction");
26
- jest.mock("./serialization");
27
- jest.mock("./formatters");
28
- const mockSuiConfig = suiConfig;
29
- const mockSignerGetAddress = signerGetAddress;
30
- const mockBuildSignOperation = buildSignOperation;
31
- const mockGetAccountShape = getAccountShape;
32
- const mockSync = sync;
33
- const mockBroadcast = broadcast;
34
- const mockCreateTransaction = createTransaction;
35
- const mockEstimateMaxSpendable = estimateMaxSpendable;
36
- const mockGetTransactionStatus = getTransactionStatus;
37
- const mockGetPreloadStrategy = getPreloadStrategy;
38
- const mockHydrate = hydrate;
39
- const mockPreload = preload;
40
- const mockPrepareTransaction = prepareTransaction;
41
- const mockAssignFromAccountRaw = assignFromAccountRaw;
42
- const mockAssignToAccountRaw = assignToAccountRaw;
43
- const mockFromOperationExtraRaw = fromOperationExtraRaw;
44
- const mockToOperationExtraRaw = toOperationExtraRaw;
45
- describe("bridge/index", () => {
46
- let mockSignerContext;
47
- let mockCoinConfig;
48
- let mockCurrency;
49
- beforeEach(() => {
50
- jest.clearAllMocks();
51
- // Setup mock signer context
52
- mockSignerContext = jest.fn();
53
- // Setup mock coin config as a function
54
- mockCoinConfig = jest.fn(() => ({
55
- node: { url: "http://localhost:1234" },
56
- status: { type: "active" },
57
- }));
58
- // Setup mock currency
59
- mockCurrency = {
60
- id: "sui",
61
- name: "Sui",
62
- family: "sui",
63
- units: [],
64
- type: "CryptoCurrency",
65
- ticker: "SUI",
66
- managerAppName: "Sui",
67
- coinType: 784,
68
- scheme: "sui",
69
- color: "#000000",
70
- explorerViews: [],
71
- };
72
- // Setup mock functions
73
- mockSignerGetAddress.mockReturnValue(jest.fn());
74
- mockBuildSignOperation.mockReturnValue(jest.fn());
75
- mockGetAccountShape.mockResolvedValue({});
76
- mockSync.mockReturnValue({});
77
- mockBroadcast.mockResolvedValue({});
78
- mockCreateTransaction.mockReturnValue({});
79
- mockEstimateMaxSpendable.mockResolvedValue(new BigNumber("1000000"));
80
- mockGetTransactionStatus.mockReturnValue({});
81
- mockGetPreloadStrategy.mockReturnValue({});
82
- mockHydrate.mockReturnValue(undefined);
83
- mockPreload.mockResolvedValue({});
84
- mockPrepareTransaction.mockResolvedValue({});
85
- mockAssignFromAccountRaw.mockReturnValue(undefined);
86
- mockAssignToAccountRaw.mockReturnValue(undefined);
87
- mockFromOperationExtraRaw.mockReturnValue({});
88
- mockToOperationExtraRaw.mockReturnValue({});
89
- });
90
- describe("createBridges", () => {
91
- it("should set coin config and return bridges", () => {
92
- const result = createBridges(mockSignerContext, mockCoinConfig);
93
- expect(mockSuiConfig.setCoinConfig).toHaveBeenCalledWith(mockCoinConfig);
94
- expect(result).toHaveProperty("currencyBridge");
95
- expect(result).toHaveProperty("accountBridge");
96
- expect(typeof result.currencyBridge).toBe("object");
97
- expect(typeof result.accountBridge).toBe("object");
98
- });
99
- it("should call signerGetAddress with signer context", () => {
100
- createBridges(mockSignerContext, mockCoinConfig);
101
- expect(mockSignerGetAddress).toHaveBeenCalledWith(mockSignerContext);
102
- });
103
- it("should call buildSignOperation with signer context", () => {
104
- createBridges(mockSignerContext, mockCoinConfig);
105
- expect(mockBuildSignOperation).toHaveBeenCalledWith(mockSignerContext);
106
- });
107
- });
108
- describe("currencyBridge", () => {
109
- let currencyBridge;
110
- beforeEach(() => {
111
- const bridges = createBridges(mockSignerContext, mockCoinConfig);
112
- currencyBridge = bridges.currencyBridge;
113
- });
114
- it("should have all required currency bridge methods", () => {
115
- expect(currencyBridge).toHaveProperty("getPreloadStrategy");
116
- expect(currencyBridge).toHaveProperty("preload");
117
- expect(currencyBridge).toHaveProperty("hydrate");
118
- expect(currencyBridge).toHaveProperty("scanAccounts");
119
- });
120
- it("should return getPreloadStrategy from preload module", () => {
121
- const strategy = currencyBridge.getPreloadStrategy?.(mockCurrency);
122
- expect(mockGetPreloadStrategy).toHaveBeenCalled();
123
- expect(strategy).toBeDefined();
124
- });
125
- it("should return preload from preload module", async () => {
126
- const result = await currencyBridge.preload(mockCurrency);
127
- expect(mockPreload).toHaveBeenCalled();
128
- expect(result).toBeDefined();
129
- });
130
- it("should return hydrate from preload module", () => {
131
- const data = { some: "data" };
132
- currencyBridge.hydrate(data, mockCurrency);
133
- expect(mockHydrate).toHaveBeenCalledWith(data, mockCurrency);
134
- });
135
- it("should have scanAccounts function", () => {
136
- expect(typeof currencyBridge.scanAccounts).toBe("function");
137
- });
138
- });
139
- describe("accountBridge", () => {
140
- let accountBridge;
141
- beforeEach(() => {
142
- const bridges = createBridges(mockSignerContext, mockCoinConfig);
143
- accountBridge = bridges.accountBridge;
144
- });
145
- it("should have all required account bridge methods", () => {
146
- const expectedMethods = [
147
- "estimateMaxSpendable",
148
- "createTransaction",
149
- "updateTransaction",
150
- "getTransactionStatus",
151
- "prepareTransaction",
152
- "sync",
153
- "receive",
154
- "signOperation",
155
- "broadcast",
156
- "assignFromAccountRaw",
157
- "assignToAccountRaw",
158
- "fromOperationExtraRaw",
159
- "toOperationExtraRaw",
160
- "getSerializedAddressParameters",
161
- ];
162
- expectedMethods.forEach(method => {
163
- expect(accountBridge).toHaveProperty(method);
164
- });
165
- });
166
- it("should call estimateMaxSpendable from estimateMaxSpendable module", async () => {
167
- const account = {};
168
- const transaction = {};
169
- const result = await accountBridge.estimateMaxSpendable({ account, transaction });
170
- expect(mockEstimateMaxSpendable).toHaveBeenCalledWith({ account, transaction });
171
- expect(result).toBeDefined();
172
- });
173
- it("should call createTransaction from createTransaction module", () => {
174
- const account = {};
175
- const result = accountBridge.createTransaction(account);
176
- expect(mockCreateTransaction).toHaveBeenCalledWith(account);
177
- expect(result).toBeDefined();
178
- });
179
- it("should call getTransactionStatus from getTransactionStatus module", () => {
180
- const transaction = {};
181
- const result = accountBridge.getTransactionStatus({}, transaction);
182
- expect(mockGetTransactionStatus).toHaveBeenCalledWith({}, transaction);
183
- expect(result).toBeDefined();
184
- });
185
- it("should call prepareTransaction from prepareTransaction module", async () => {
186
- const account = {};
187
- const transaction = {};
188
- const result = await accountBridge.prepareTransaction(account, transaction);
189
- expect(mockPrepareTransaction).toHaveBeenCalledWith(account, transaction);
190
- expect(result).toBeDefined();
191
- });
192
- it("should call sync from synchronisation module", () => {
193
- const account = {};
194
- const result = accountBridge.sync(account, { paginationConfig: {} });
195
- expect(mockSync).toHaveBeenCalledWith(account, { paginationConfig: {} });
196
- expect(result).toBeDefined();
197
- });
198
- it("should call broadcast from broadcast module", async () => {
199
- const account = {};
200
- const signedOperation = {};
201
- const result = await accountBridge.broadcast({ account, signedOperation });
202
- expect(mockBroadcast).toHaveBeenCalledWith({ account, signedOperation });
203
- expect(result).toBeDefined();
204
- });
205
- it("should call assignFromAccountRaw from serialization module", () => {
206
- const accountRaw = {};
207
- const account = {};
208
- accountBridge.assignFromAccountRaw?.(accountRaw, account);
209
- expect(mockAssignFromAccountRaw).toHaveBeenCalledWith(accountRaw, account);
210
- });
211
- it("should call assignToAccountRaw from serialization module", () => {
212
- const account = {};
213
- const accountRaw = {};
214
- accountBridge.assignToAccountRaw?.(account, accountRaw);
215
- expect(mockAssignToAccountRaw).toHaveBeenCalledWith(account, accountRaw);
216
- });
217
- it("should call fromOperationExtraRaw from formatters module", () => {
218
- const operationExtraRaw = {};
219
- const result = accountBridge.fromOperationExtraRaw?.(operationExtraRaw);
220
- expect(mockFromOperationExtraRaw).toHaveBeenCalledWith(operationExtraRaw);
221
- expect(result).toBeDefined();
222
- });
223
- it("should call toOperationExtraRaw from formatters module", () => {
224
- const operationExtra = {};
225
- const result = accountBridge.toOperationExtraRaw?.(operationExtra);
226
- expect(mockToOperationExtraRaw).toHaveBeenCalledWith(operationExtra);
227
- expect(result).toBeDefined();
228
- });
229
- it("should have receive function", () => {
230
- expect(typeof accountBridge.receive).toBe("function");
231
- });
232
- it("should have signOperation function", () => {
233
- expect(typeof accountBridge.signOperation).toBe("function");
234
- });
235
- it("should have updateTransaction function", () => {
236
- expect(typeof accountBridge.updateTransaction).toBe("function");
237
- });
238
- it("should have getSerializedAddressParameters function", () => {
239
- expect(typeof accountBridge.getSerializedAddressParameters).toBe("function");
240
- });
241
- });
242
- describe("error handling", () => {
243
- it("should handle errors in createBridges gracefully", () => {
244
- mockSuiConfig.setCoinConfig.mockImplementation(() => {
245
- throw new Error("Config error");
246
- });
247
- expect(() => createBridges(mockSignerContext, mockCoinConfig)).toThrow("Config error");
248
- });
249
- it("should handle errors in signerGetAddress gracefully", () => {
250
- // Reset the mock to clear previous error
251
- mockSuiConfig.setCoinConfig.mockReset();
252
- mockSuiConfig.setCoinConfig.mockImplementation(() => { });
253
- mockSignerGetAddress.mockImplementation(() => {
254
- throw new Error("Signer error");
255
- });
256
- expect(() => createBridges(mockSignerContext, mockCoinConfig)).toThrow("Signer error");
257
- });
258
- });
259
- });
260
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/bridge/index.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=preload.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"preload.test.d.ts","sourceRoot":"","sources":["../../src/bridge/preload.test.ts"],"names":[],"mappings":""}
@@ -1,50 +0,0 @@
1
- import { Observable } from "rxjs";
2
- import { take } from "rxjs/operators";
3
- import { getCurrentSuiPreloadData, setSuiPreloadData, getSuiPreloadDataUpdates, getPreloadStrategy, } from "./preload";
4
- // Mock the log function
5
- jest.mock("@ledgerhq/logs", () => ({
6
- log: jest.fn(),
7
- }));
8
- describe("Sui Preload Functions", () => {
9
- beforeEach(() => {
10
- // Reset the preload data before each test
11
- setSuiPreloadData({ validators: [], tokens: [] });
12
- });
13
- describe("getCurrentSuiPreloadData", () => {
14
- it("should return the current preloaded data", () => {
15
- const testData = { validators: [], tokens: [] };
16
- setSuiPreloadData(testData);
17
- const data = getCurrentSuiPreloadData();
18
- expect(data).toEqual(testData);
19
- });
20
- });
21
- describe("getSuiPreloadDataUpdates", () => {
22
- it("should return an Observable", () => {
23
- const updates = getSuiPreloadDataUpdates();
24
- expect(updates).toBeInstanceOf(Observable);
25
- });
26
- it("should emit updates when data is set", done => {
27
- const testData = { validators: [], tokens: [] };
28
- const updates = getSuiPreloadDataUpdates();
29
- updates.pipe(take(1)).subscribe(data => {
30
- expect(data).toEqual(testData);
31
- done();
32
- });
33
- setSuiPreloadData(testData);
34
- });
35
- describe("getPreloadStrategy", () => {
36
- it("should return preload strategy with correct max age", () => {
37
- const strategy = getPreloadStrategy();
38
- expect(strategy).toHaveProperty("preloadMaxAge");
39
- expect(strategy.preloadMaxAge).toBe(30 * 60 * 1000); // 30 minutes in milliseconds
40
- });
41
- it("should return consistent strategy object", () => {
42
- const strategy1 = getPreloadStrategy();
43
- const strategy2 = getPreloadStrategy();
44
- expect(strategy1).toEqual(strategy2);
45
- expect(strategy1.preloadMaxAge).toBe(30 * 60 * 1000);
46
- });
47
- });
48
- });
49
- });
50
- //# sourceMappingURL=preload.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"preload.test.js","sourceRoot":"","sources":["../../src/bridge/preload.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,WAAW,CAAC;AAGnB,wBAAwB;AACxB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;IACjC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;CACf,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,UAAU,CAAC,GAAG,EAAE;QACd,0CAA0C;QAC1C,iBAAiB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,QAAQ,GAAmB,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAChE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAE5B,MAAM,IAAI,GAAG,wBAAwB,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;YAC3C,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,IAAI,CAAC,EAAE;YAChD,MAAM,QAAQ,GAAmB,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAChE,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;YAE3C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBACrC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC/B,IAAI,EAAE,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAClC,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;gBAC7D,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;gBAEtC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;gBACjD,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,6BAA6B;YACpF,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;gBAClD,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;gBACvC,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;gBAEvC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=prepareTransaction.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prepareTransaction.test.d.ts","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.test.ts"],"names":[],"mappings":""}