@ledgerhq/coin-hedera 1.10.1 → 1.10.2-nightly.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/.eslintrc.js +1 -0
  2. package/CHANGELOG.md +10 -0
  3. package/lib/api/mirror.d.ts +3 -20
  4. package/lib/api/mirror.d.ts.map +1 -1
  5. package/lib/api/mirror.js +32 -90
  6. package/lib/api/mirror.js.map +1 -1
  7. package/lib/api/mirror.test.js +59 -4
  8. package/lib/api/mirror.test.js.map +1 -1
  9. package/lib/api/network.d.ts +3 -3
  10. package/lib/api/network.d.ts.map +1 -1
  11. package/lib/api/network.js +46 -3
  12. package/lib/api/network.js.map +1 -1
  13. package/lib/api/types.d.ts +44 -0
  14. package/lib/api/types.d.ts.map +1 -0
  15. package/lib/api/types.js +3 -0
  16. package/lib/api/types.js.map +1 -0
  17. package/lib/api/utils.d.ts +8 -0
  18. package/lib/api/utils.d.ts.map +1 -0
  19. package/lib/api/utils.js +132 -0
  20. package/lib/api/utils.js.map +1 -0
  21. package/lib/bridge/broadcast.d.ts.map +1 -1
  22. package/lib/bridge/broadcast.js +2 -0
  23. package/lib/bridge/broadcast.js.map +1 -1
  24. package/lib/bridge/buildOptimisticOperation.d.ts +2 -2
  25. package/lib/bridge/buildOptimisticOperation.d.ts.map +1 -1
  26. package/lib/bridge/buildOptimisticOperation.integration.test.d.ts +2 -0
  27. package/lib/bridge/buildOptimisticOperation.integration.test.d.ts.map +1 -0
  28. package/lib/bridge/buildOptimisticOperation.integration.test.js +82 -0
  29. package/lib/bridge/buildOptimisticOperation.integration.test.js.map +1 -0
  30. package/lib/bridge/buildOptimisticOperation.js +87 -5
  31. package/lib/bridge/buildOptimisticOperation.js.map +1 -1
  32. package/lib/bridge/estimateMaxSpendable.d.ts.map +1 -1
  33. package/lib/bridge/estimateMaxSpendable.js +8 -2
  34. package/lib/bridge/estimateMaxSpendable.js.map +1 -1
  35. package/lib/bridge/getTransactionStatus.d.ts +3 -3
  36. package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
  37. package/lib/bridge/getTransactionStatus.js +116 -23
  38. package/lib/bridge/getTransactionStatus.js.map +1 -1
  39. package/lib/bridge/getTransactionStatus.test.d.ts +2 -0
  40. package/lib/bridge/getTransactionStatus.test.d.ts.map +1 -0
  41. package/lib/bridge/getTransactionStatus.test.js +176 -0
  42. package/lib/bridge/getTransactionStatus.test.js.map +1 -0
  43. package/lib/bridge/index.d.ts +4 -4
  44. package/lib/bridge/index.d.ts.map +1 -1
  45. package/lib/bridge/index.js +9 -6
  46. package/lib/bridge/index.js.map +1 -1
  47. package/lib/bridge/js-estimateMaxSpendable.integration.test.js +28 -44
  48. package/lib/bridge/js-estimateMaxSpendable.integration.test.js.map +1 -1
  49. package/lib/bridge/js-transaction.test.js +10 -49
  50. package/lib/bridge/js-transaction.test.js.map +1 -1
  51. package/lib/bridge/prepareTransaction.d.ts +0 -1
  52. package/lib/bridge/prepareTransaction.d.ts.map +1 -1
  53. package/lib/bridge/prepareTransaction.js +0 -1
  54. package/lib/bridge/prepareTransaction.js.map +1 -1
  55. package/lib/bridge/serialization.d.ts +7 -0
  56. package/lib/bridge/serialization.d.ts.map +1 -0
  57. package/lib/bridge/serialization.js +36 -0
  58. package/lib/bridge/serialization.js.map +1 -0
  59. package/lib/bridge/serialization.test.d.ts +2 -0
  60. package/lib/bridge/serialization.test.d.ts.map +1 -0
  61. package/lib/bridge/serialization.test.js +27 -0
  62. package/lib/bridge/serialization.test.js.map +1 -0
  63. package/lib/bridge/synchronisation.d.ts +3 -3
  64. package/lib/bridge/synchronisation.d.ts.map +1 -1
  65. package/lib/bridge/synchronisation.js +37 -15
  66. package/lib/bridge/synchronisation.js.map +1 -1
  67. package/lib/bridge/transaction.test.js +18 -59
  68. package/lib/bridge/transaction.test.js.map +1 -1
  69. package/lib/bridge/utils.d.ts +22 -8
  70. package/lib/bridge/utils.d.ts.map +1 -1
  71. package/lib/bridge/utils.integration.test.js +415 -73
  72. package/lib/bridge/utils.integration.test.js.map +1 -1
  73. package/lib/bridge/utils.js +300 -15
  74. package/lib/bridge/utils.js.map +1 -1
  75. package/lib/constants.d.ts +32 -0
  76. package/lib/constants.d.ts.map +1 -0
  77. package/lib/constants.js +37 -0
  78. package/lib/constants.js.map +1 -0
  79. package/lib/deviceTransactionConfig.d.ts.map +1 -1
  80. package/lib/deviceTransactionConfig.js +17 -15
  81. package/lib/deviceTransactionConfig.js.map +1 -1
  82. package/lib/logic.d.ts +9 -3
  83. package/lib/logic.d.ts.map +1 -1
  84. package/lib/logic.js +31 -3
  85. package/lib/logic.js.map +1 -1
  86. package/lib/logic.test.js +103 -50
  87. package/lib/logic.test.js.map +1 -1
  88. package/lib/test/fixtures/account.fixture.d.ts +19 -0
  89. package/lib/test/fixtures/account.fixture.d.ts.map +1 -0
  90. package/lib/test/fixtures/account.fixture.js +116 -0
  91. package/lib/test/fixtures/account.fixture.js.map +1 -0
  92. package/lib/test/fixtures/currency.fixture.d.ts +5 -0
  93. package/lib/test/fixtures/currency.fixture.d.ts.map +1 -0
  94. package/lib/test/fixtures/currency.fixture.js +67 -0
  95. package/lib/test/fixtures/currency.fixture.js.map +1 -0
  96. package/lib/test/fixtures/mirror.fixture.d.ts +3 -0
  97. package/lib/test/fixtures/mirror.fixture.d.ts.map +1 -0
  98. package/lib/test/fixtures/mirror.fixture.js +17 -0
  99. package/lib/test/fixtures/mirror.fixture.js.map +1 -0
  100. package/lib/test/fixtures/operation.fixture.d.ts +3 -0
  101. package/lib/test/fixtures/operation.fixture.d.ts.map +1 -0
  102. package/lib/test/fixtures/operation.fixture.js +26 -0
  103. package/lib/test/fixtures/operation.fixture.js.map +1 -0
  104. package/lib/test/fixtures/transaction.fixture.d.ts +4 -0
  105. package/lib/test/fixtures/transaction.fixture.d.ts.map +1 -0
  106. package/lib/test/fixtures/transaction.fixture.js +28 -0
  107. package/lib/test/fixtures/transaction.fixture.js.map +1 -0
  108. package/lib/types/bridge.d.ts +25 -1
  109. package/lib/types/bridge.d.ts.map +1 -1
  110. package/lib-es/api/mirror.d.ts +3 -20
  111. package/lib-es/api/mirror.d.ts.map +1 -1
  112. package/lib-es/api/mirror.js +29 -88
  113. package/lib-es/api/mirror.js.map +1 -1
  114. package/lib-es/api/mirror.test.js +60 -5
  115. package/lib-es/api/mirror.test.js.map +1 -1
  116. package/lib-es/api/network.d.ts +3 -3
  117. package/lib-es/api/network.d.ts.map +1 -1
  118. package/lib-es/api/network.js +44 -4
  119. package/lib-es/api/network.js.map +1 -1
  120. package/lib-es/api/types.d.ts +44 -0
  121. package/lib-es/api/types.d.ts.map +1 -0
  122. package/lib-es/api/types.js +2 -0
  123. package/lib-es/api/types.js.map +1 -0
  124. package/lib-es/api/utils.d.ts +8 -0
  125. package/lib-es/api/utils.d.ts.map +1 -0
  126. package/lib-es/api/utils.js +124 -0
  127. package/lib-es/api/utils.js.map +1 -0
  128. package/lib-es/bridge/broadcast.d.ts.map +1 -1
  129. package/lib-es/bridge/broadcast.js +2 -0
  130. package/lib-es/bridge/broadcast.js.map +1 -1
  131. package/lib-es/bridge/buildOptimisticOperation.d.ts +2 -2
  132. package/lib-es/bridge/buildOptimisticOperation.d.ts.map +1 -1
  133. package/lib-es/bridge/buildOptimisticOperation.integration.test.d.ts +2 -0
  134. package/lib-es/bridge/buildOptimisticOperation.integration.test.d.ts.map +1 -0
  135. package/lib-es/bridge/buildOptimisticOperation.integration.test.js +77 -0
  136. package/lib-es/bridge/buildOptimisticOperation.integration.test.js.map +1 -0
  137. package/lib-es/bridge/buildOptimisticOperation.js +84 -5
  138. package/lib-es/bridge/buildOptimisticOperation.js.map +1 -1
  139. package/lib-es/bridge/estimateMaxSpendable.d.ts.map +1 -1
  140. package/lib-es/bridge/estimateMaxSpendable.js +8 -2
  141. package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
  142. package/lib-es/bridge/getTransactionStatus.d.ts +3 -3
  143. package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
  144. package/lib-es/bridge/getTransactionStatus.js +114 -24
  145. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  146. package/lib-es/bridge/getTransactionStatus.test.d.ts +2 -0
  147. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +1 -0
  148. package/lib-es/bridge/getTransactionStatus.test.js +148 -0
  149. package/lib-es/bridge/getTransactionStatus.test.js.map +1 -0
  150. package/lib-es/bridge/index.d.ts +4 -4
  151. package/lib-es/bridge/index.d.ts.map +1 -1
  152. package/lib-es/bridge/index.js +9 -6
  153. package/lib-es/bridge/index.js.map +1 -1
  154. package/lib-es/bridge/js-estimateMaxSpendable.integration.test.js +28 -44
  155. package/lib-es/bridge/js-estimateMaxSpendable.integration.test.js.map +1 -1
  156. package/lib-es/bridge/js-transaction.test.js +10 -49
  157. package/lib-es/bridge/js-transaction.test.js.map +1 -1
  158. package/lib-es/bridge/prepareTransaction.d.ts +0 -1
  159. package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
  160. package/lib-es/bridge/prepareTransaction.js +0 -1
  161. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  162. package/lib-es/bridge/serialization.d.ts +7 -0
  163. package/lib-es/bridge/serialization.d.ts.map +1 -0
  164. package/lib-es/bridge/serialization.js +29 -0
  165. package/lib-es/bridge/serialization.js.map +1 -0
  166. package/lib-es/bridge/serialization.test.d.ts +2 -0
  167. package/lib-es/bridge/serialization.test.d.ts.map +1 -0
  168. package/lib-es/bridge/serialization.test.js +25 -0
  169. package/lib-es/bridge/serialization.test.js.map +1 -0
  170. package/lib-es/bridge/synchronisation.d.ts +3 -3
  171. package/lib-es/bridge/synchronisation.d.ts.map +1 -1
  172. package/lib-es/bridge/synchronisation.js +39 -17
  173. package/lib-es/bridge/synchronisation.js.map +1 -1
  174. package/lib-es/bridge/transaction.test.js +18 -59
  175. package/lib-es/bridge/transaction.test.js.map +1 -1
  176. package/lib-es/bridge/utils.d.ts +22 -8
  177. package/lib-es/bridge/utils.d.ts.map +1 -1
  178. package/lib-es/bridge/utils.integration.test.js +416 -74
  179. package/lib-es/bridge/utils.integration.test.js.map +1 -1
  180. package/lib-es/bridge/utils.js +295 -15
  181. package/lib-es/bridge/utils.js.map +1 -1
  182. package/lib-es/constants.d.ts +32 -0
  183. package/lib-es/constants.d.ts.map +1 -0
  184. package/lib-es/constants.js +34 -0
  185. package/lib-es/constants.js.map +1 -0
  186. package/lib-es/deviceTransactionConfig.d.ts.map +1 -1
  187. package/lib-es/deviceTransactionConfig.js +17 -15
  188. package/lib-es/deviceTransactionConfig.js.map +1 -1
  189. package/lib-es/logic.d.ts +9 -3
  190. package/lib-es/logic.d.ts.map +1 -1
  191. package/lib-es/logic.js +26 -3
  192. package/lib-es/logic.js.map +1 -1
  193. package/lib-es/logic.test.js +104 -51
  194. package/lib-es/logic.test.js.map +1 -1
  195. package/lib-es/test/fixtures/account.fixture.d.ts +19 -0
  196. package/lib-es/test/fixtures/account.fixture.d.ts.map +1 -0
  197. package/lib-es/test/fixtures/account.fixture.js +107 -0
  198. package/lib-es/test/fixtures/account.fixture.js.map +1 -0
  199. package/lib-es/test/fixtures/currency.fixture.d.ts +5 -0
  200. package/lib-es/test/fixtures/currency.fixture.d.ts.map +1 -0
  201. package/lib-es/test/fixtures/currency.fixture.js +58 -0
  202. package/lib-es/test/fixtures/currency.fixture.js.map +1 -0
  203. package/lib-es/test/fixtures/mirror.fixture.d.ts +3 -0
  204. package/lib-es/test/fixtures/mirror.fixture.d.ts.map +1 -0
  205. package/lib-es/test/fixtures/mirror.fixture.js +13 -0
  206. package/lib-es/test/fixtures/mirror.fixture.js.map +1 -0
  207. package/lib-es/test/fixtures/operation.fixture.d.ts +3 -0
  208. package/lib-es/test/fixtures/operation.fixture.d.ts.map +1 -0
  209. package/lib-es/test/fixtures/operation.fixture.js +19 -0
  210. package/lib-es/test/fixtures/operation.fixture.js.map +1 -0
  211. package/lib-es/test/fixtures/transaction.fixture.d.ts +4 -0
  212. package/lib-es/test/fixtures/transaction.fixture.d.ts.map +1 -0
  213. package/lib-es/test/fixtures/transaction.fixture.js +20 -0
  214. package/lib-es/test/fixtures/transaction.fixture.js.map +1 -0
  215. package/lib-es/types/bridge.d.ts +25 -1
  216. package/lib-es/types/bridge.d.ts.map +1 -1
  217. package/package.json +11 -9
  218. package/src/api/mirror.test.ts +79 -5
  219. package/src/api/mirror.ts +30 -111
  220. package/src/api/network.ts +71 -4
  221. package/src/api/types.ts +48 -0
  222. package/src/api/utils.ts +150 -0
  223. package/src/bridge/broadcast.ts +2 -0
  224. package/src/bridge/buildOptimisticOperation.integration.test.ts +88 -0
  225. package/src/bridge/buildOptimisticOperation.ts +118 -7
  226. package/src/bridge/estimateMaxSpendable.ts +8 -2
  227. package/src/bridge/getTransactionStatus.test.ts +200 -0
  228. package/src/bridge/getTransactionStatus.ts +166 -32
  229. package/src/bridge/index.ts +13 -10
  230. package/src/bridge/js-estimateMaxSpendable.integration.test.ts +37 -46
  231. package/src/bridge/js-transaction.test.ts +13 -54
  232. package/src/bridge/prepareTransaction.ts +1 -2
  233. package/src/bridge/serialization.test.ts +39 -0
  234. package/src/bridge/serialization.ts +43 -0
  235. package/src/bridge/synchronisation.ts +65 -27
  236. package/src/bridge/transaction.test.ts +22 -64
  237. package/src/bridge/utils.integration.test.ts +525 -76
  238. package/src/bridge/utils.ts +423 -24
  239. package/src/constants.ts +35 -0
  240. package/src/deviceTransactionConfig.ts +16 -15
  241. package/src/logic.test.ts +147 -57
  242. package/src/logic.ts +58 -7
  243. package/src/test/fixtures/account.fixture.ts +123 -0
  244. package/src/test/fixtures/currency.fixture.ts +66 -0
  245. package/src/test/fixtures/mirror.fixture.ts +14 -0
  246. package/src/test/fixtures/operation.fixture.ts +20 -0
  247. package/src/test/fixtures/transaction.fixture.ts +22 -0
  248. package/src/types/bridge.ts +33 -0
@@ -1,56 +1,109 @@
1
- import { BigNumber } from "bignumber.js";
2
1
  import { getCryptoCurrencyById } from "@ledgerhq/cryptoassets";
3
- import { getTransactionExplorer } from "./logic";
4
- describe("getTransactionExplorer", () => {
5
- test("Tx explorer URL is converted from hash to consensus timestamp", async () => {
6
- const explorerView = getCryptoCurrencyById("hedera").explorerViews[0];
7
- expect(explorerView).toEqual({
8
- tx: expect.any(String),
9
- address: expect.any(String),
10
- });
11
- const mockOperation = {
12
- extra: {
13
- consensusTimestamp: "1.2.3.4",
14
- },
15
- id: "",
16
- hash: "",
17
- type: "IN",
18
- value: new BigNumber(0),
19
- fee: new BigNumber(0),
20
- senders: [],
21
- recipients: [],
22
- blockHeight: undefined,
23
- blockHash: undefined,
24
- accountId: "",
25
- date: new Date(),
26
- };
27
- const newUrl = getTransactionExplorer(explorerView, mockOperation);
28
- expect(newUrl).toBe("https://hashscan.io/mainnet/transaction/1.2.3.4");
2
+ import { getTransactionExplorer, isAutoTokenAssociationEnabled, isTokenAssociateTransaction, isTokenAssociationRequired, isValidExtra, sendRecipientCanNext, } from "./logic";
3
+ import { getMockedAccount, getMockedTokenAccount } from "./test/fixtures/account.fixture";
4
+ import { getMockedOperation } from "./test/fixtures/operation.fixture";
5
+ import { getMockedTokenCurrency } from "./test/fixtures/currency.fixture";
6
+ import { HEDERA_TRANSACTION_KINDS } from "./constants";
7
+ describe("logic", () => {
8
+ describe("getTransactionExplorer", () => {
9
+ test("Tx explorer URL is converted from hash to consensus timestamp", async () => {
10
+ const explorerView = getCryptoCurrencyById("hedera").explorerViews[0];
11
+ expect(explorerView).toEqual({
12
+ tx: expect.any(String),
13
+ address: expect.any(String),
14
+ });
15
+ const mockedOperation = getMockedOperation({
16
+ extra: { consensusTimestamp: "1.2.3.4" },
17
+ });
18
+ const newUrl = getTransactionExplorer(explorerView, mockedOperation);
19
+ expect(newUrl).toBe("https://hashscan.io/mainnet/transaction/1.2.3.4");
20
+ });
21
+ test("Tx explorer URL is based on transaction id if consensus timestamp is not available", async () => {
22
+ const explorerView = getCryptoCurrencyById("hedera").explorerViews[0];
23
+ expect(explorerView).toEqual({
24
+ tx: expect.any(String),
25
+ address: expect.any(String),
26
+ });
27
+ const mockedOperation = getMockedOperation({
28
+ extra: { transactionId: "0.0.1234567-123-123" },
29
+ });
30
+ const newUrl = getTransactionExplorer(explorerView, mockedOperation);
31
+ expect(newUrl).toBe("https://hashscan.io/mainnet/transaction/0.0.1234567-123-123");
32
+ });
33
+ });
34
+ describe("isTokenAssociateTransaction", () => {
35
+ test("returns correct value based on tx.properties", () => {
36
+ expect(isTokenAssociateTransaction({
37
+ properties: { name: HEDERA_TRANSACTION_KINDS.TokenAssociate.name },
38
+ })).toBe(true);
39
+ expect(isTokenAssociateTransaction({
40
+ properties: { name: "transfer" },
41
+ })).toBe(false);
42
+ expect(isTokenAssociateTransaction({})).toBe(false);
43
+ });
29
44
  });
30
- test("Tx explorer URL is based on transaction id if consensus timestamp is not available", async () => {
31
- const explorerView = getCryptoCurrencyById("hedera").explorerViews[0];
32
- expect(explorerView).toEqual({
33
- tx: expect.any(String),
34
- address: expect.any(String),
35
- });
36
- const mockOperation = {
37
- extra: {
38
- transactionId: "0.0.1234567-123-123",
39
- },
40
- id: "",
41
- hash: "",
42
- type: "IN",
43
- value: new BigNumber(0),
44
- fee: new BigNumber(0),
45
- senders: [],
46
- recipients: [],
47
- blockHeight: undefined,
48
- blockHash: undefined,
49
- accountId: "",
50
- date: new Date(),
51
- };
52
- const newUrl = getTransactionExplorer(explorerView, mockOperation);
53
- expect(newUrl).toBe("https://hashscan.io/mainnet/transaction/0.0.1234567-123-123");
45
+ describe("isAutoTokenAssociationEnabled", () => {
46
+ test("returns value based on isAutoTokenAssociationEnabled flag", () => {
47
+ expect(isAutoTokenAssociationEnabled({
48
+ hederaResources: { isAutoTokenAssociationEnabled: true },
49
+ })).toBe(true);
50
+ expect(isAutoTokenAssociationEnabled({
51
+ hederaResources: { isAutoTokenAssociationEnabled: false },
52
+ })).toBe(false);
53
+ expect(isAutoTokenAssociationEnabled({})).toBe(false);
54
+ });
55
+ });
56
+ describe("isTokenAssociationRequired", () => {
57
+ test("should return false if token is already associated (token account exists)", () => {
58
+ const mockedTokenCurrency = getMockedTokenCurrency();
59
+ const mockedTokenAccount = getMockedTokenAccount(mockedTokenCurrency);
60
+ const mockedAccount = getMockedAccount({ subAccounts: [mockedTokenAccount] });
61
+ expect(isTokenAssociationRequired(mockedAccount, mockedTokenCurrency)).toBe(false);
62
+ });
63
+ test("should return false if auto token associations are enabled", () => {
64
+ const mockedTokenCurrency = getMockedTokenCurrency();
65
+ const mockedAccount = getMockedAccount({
66
+ subAccounts: [],
67
+ hederaResources: {
68
+ maxAutomaticTokenAssociations: -1,
69
+ isAutoTokenAssociationEnabled: true,
70
+ },
71
+ });
72
+ expect(isTokenAssociationRequired(mockedAccount, mockedTokenCurrency)).toBe(false);
73
+ });
74
+ test("should return true if token is not associated and auto associations are disabled", () => {
75
+ const mockedTokenCurrency = getMockedTokenCurrency();
76
+ const mockedAccount = getMockedAccount({ subAccounts: [] });
77
+ expect(isTokenAssociationRequired(mockedAccount, mockedTokenCurrency)).toBe(true);
78
+ });
79
+ test("should return false if token is undefined", () => {
80
+ const mockedAccount = getMockedAccount({ subAccounts: [] });
81
+ expect(isTokenAssociationRequired(mockedAccount, undefined)).toBe(false);
82
+ });
83
+ test("should return false for legacy accounts without subAccounts or hederaResources", () => {
84
+ const mockedTokenCurrency = getMockedTokenCurrency();
85
+ const mockedAccount = getMockedAccount();
86
+ delete mockedAccount.subAccounts;
87
+ delete mockedAccount.hederaResources;
88
+ expect(isTokenAssociationRequired(mockedAccount, mockedTokenCurrency)).toBe(true);
89
+ });
90
+ });
91
+ describe("isValidExtra", () => {
92
+ test("returns true for object and false for invalid types", () => {
93
+ expect(isValidExtra({ some: "value" })).toBe(true);
94
+ expect(isValidExtra(null)).toBe(false);
95
+ expect(isValidExtra(undefined)).toBe(false);
96
+ expect(isValidExtra("string")).toBe(false);
97
+ expect(isValidExtra(123)).toBe(false);
98
+ expect(isValidExtra([])).toBe(false);
99
+ });
100
+ });
101
+ describe("sendRecipientCanNext", () => {
102
+ test("handles association warnings", () => {
103
+ expect(sendRecipientCanNext({ warnings: {} })).toBe(true);
104
+ expect(sendRecipientCanNext({ warnings: { missingAssociation: new Error() } })).toBe(false);
105
+ expect(sendRecipientCanNext({ warnings: { unverifiedAssociation: new Error() } })).toBe(false);
106
+ });
54
107
  });
55
108
  });
56
109
  //# sourceMappingURL=logic.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logic.test.js","sourceRoot":"","sources":["../src/logic.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjD,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;SAC5B,CAAC,CAAC;QAEH,MAAM,aAAa,GAAc;YAC/B,KAAK,EAAE;gBACL,kBAAkB,EAAE,SAAS;aAC9B;YACD,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;YACvB,GAAG,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;YACrB,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,EAAE;YACd,WAAW,EAAE,SAAS;YACtB,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,IAAI,IAAI,EAAE;SACjB,CAAC;QAEF,MAAM,MAAM,GAAG,sBAAsB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;QACpG,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;SAC5B,CAAC,CAAC;QAEH,MAAM,aAAa,GAAc;YAC/B,KAAK,EAAE;gBACL,aAAa,EAAE,qBAAqB;aACrC;YACD,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;YACvB,GAAG,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;YACrB,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,EAAE;YACd,WAAW,EAAE,SAAS;YACtB,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,IAAI,IAAI,EAAE;SACjB,CAAC;QAEF,MAAM,MAAM,GAAG,sBAAsB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"logic.test.js","sourceRoot":"","sources":["../src/logic.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,2BAA2B,EAC3B,0BAA0B,EAC1B,YAAY,EACZ,oBAAoB,GACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;gBAC3B,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aAC5B,CAAC,CAAC;YAEH,MAAM,eAAe,GAAG,kBAAkB,CAAC;gBACzC,KAAK,EAAE,EAAE,kBAAkB,EAAE,SAAS,EAAE;aACzC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,sBAAsB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;YACpG,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;gBAC3B,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aAC5B,CAAC,CAAC;YAEH,MAAM,eAAe,GAAG,kBAAkB,CAAC;gBACzC,KAAK,EAAE,EAAE,aAAa,EAAE,qBAAqB,EAAE;aAChD,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,sBAAsB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACxD,MAAM,CACJ,2BAA2B,CAAC;gBAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,wBAAwB,CAAC,cAAc,CAAC,IAAI,EAAE;aAC5D,CAAC,CACV,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,MAAM,CACJ,2BAA2B,CAAC;gBAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;aAC1B,CAAC,CACV,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEd,MAAM,CAAC,2BAA2B,CAAC,EAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACrE,MAAM,CACJ,6BAA6B,CAAC;gBAC5B,eAAe,EAAE,EAAE,6BAA6B,EAAE,IAAI,EAAE;aAClD,CAAC,CACV,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,MAAM,CACJ,6BAA6B,CAAC;gBAC5B,eAAe,EAAE,EAAE,6BAA6B,EAAE,KAAK,EAAE;aACnD,CAAC,CACV,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEd,MAAM,CAAC,6BAA6B,CAAC,EAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,IAAI,CAAC,2EAA2E,EAAE,GAAG,EAAE;YACrF,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;YACrD,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAE9E,MAAM,CAAC,0BAA0B,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACtE,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;YACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC;gBACrC,WAAW,EAAE,EAAE;gBACf,eAAe,EAAE;oBACf,6BAA6B,EAAE,CAAC,CAAC;oBACjC,6BAA6B,EAAE,IAAI;iBACpC;aACF,CAAC,CAAC;YAEH,MAAM,CAAC,0BAA0B,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kFAAkF,EAAE,GAAG,EAAE;YAC5F,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;YACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAE5D,MAAM,CAAC,0BAA0B,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAE5D,MAAM,CAAC,0BAA0B,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gFAAgF,EAAE,GAAG,EAAE;YAC1F,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;YACrD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;YAEzC,OAAO,aAAa,CAAC,WAAW,CAAC;YACjC,OAAO,aAAa,CAAC,eAAe,CAAC;YAErC,MAAM,CAAC,0BAA0B,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC/D,MAAM,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACxC,MAAM,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjE,MAAM,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,kBAAkB,EAAE,IAAI,KAAK,EAAE,EAAE,EAAS,CAAC,CAAC,CAAC,IAAI,CACzF,KAAK,CACN,CAAC;YACF,MAAM,CACJ,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,qBAAqB,EAAE,IAAI,KAAK,EAAE,EAAE,EAAS,CAAC,CAClF,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { HederaAccount, HederaAccountRaw, HederaResources, HederaResourcesRaw } from "../../types";
2
+ import type { TokenAccount } from "@ledgerhq/types-live";
3
+ import { TokenCurrency } from "@ledgerhq/types-cryptoassets";
4
+ export declare const mockHederaResources: HederaResources;
5
+ export declare const mockHederaResourcesRaw: HederaResourcesRaw;
6
+ /**
7
+ * default settings:
8
+ * - account balance is 1 HBAR
9
+ * - auto token association is disabled
10
+ * - subAccounts array is empty (no tokens account are used)
11
+ */
12
+ export declare const getMockedAccount: (overrides?: Partial<HederaAccount>) => HederaAccount;
13
+ export declare const getMockedAccountRaw: (overrides?: Partial<HederaAccountRaw>) => HederaAccountRaw;
14
+ /**
15
+ * default settings:
16
+ * - balance is 10
17
+ */
18
+ export declare const getMockedTokenAccount: (token: TokenCurrency, overrides?: Partial<TokenAccount>) => TokenAccount;
19
+ //# sourceMappingURL=account.fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/account.fixture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAS7D,eAAO,MAAM,mBAAmB,EAAE,eAGjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,kBAGpC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,eAAgB,QAAQ,aAAa,CAAC,KAAG,aA6BrE,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAAgB,QAAQ,gBAAgB,CAAC,KAAG,gBA4B3E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,UACzB,aAAa,cACR,QAAQ,YAAY,CAAC,KAChC,YAoBF,CAAC"}
@@ -0,0 +1,107 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { getMockedCurrency, getMockedTokenCurrency } from "./currency.fixture";
3
+ const defaultMockedCurrency = getMockedCurrency();
4
+ const defaultMockedTokenCurrency = getMockedTokenCurrency();
5
+ const defaultMockAccountId = "js:2:hedera:0.0.1234567:hederaBip44";
6
+ const defaultMockTokenAccountId = `${defaultMockAccountId}+${defaultMockedTokenCurrency.id}`;
7
+ const defaultBalance = new BigNumber(100000000);
8
+ const defaultTokenBalance = new BigNumber(10);
9
+ export const mockHederaResources = {
10
+ maxAutomaticTokenAssociations: 0,
11
+ isAutoTokenAssociationEnabled: false,
12
+ };
13
+ export const mockHederaResourcesRaw = {
14
+ maxAutomaticTokenAssociations: 0,
15
+ isAutoTokenAssociationEnabled: false,
16
+ };
17
+ /**
18
+ * default settings:
19
+ * - account balance is 1 HBAR
20
+ * - auto token association is disabled
21
+ * - subAccounts array is empty (no tokens account are used)
22
+ */
23
+ export const getMockedAccount = (overrides) => {
24
+ return {
25
+ type: "Account",
26
+ id: defaultMockAccountId,
27
+ seedIdentifier: "",
28
+ derivationMode: "",
29
+ index: 0,
30
+ freshAddress: "0.0.12345",
31
+ freshAddressPath: "44/3030",
32
+ used: false,
33
+ balance: defaultBalance,
34
+ spendableBalance: defaultBalance,
35
+ creationDate: new Date(),
36
+ blockHeight: 0,
37
+ currency: defaultMockedCurrency,
38
+ operationsCount: 0,
39
+ operations: [],
40
+ pendingOperations: [],
41
+ lastSyncDate: new Date(),
42
+ balanceHistoryCache: {
43
+ HOUR: { latestDate: null, balances: [] },
44
+ DAY: { latestDate: null, balances: [] },
45
+ WEEK: { latestDate: null, balances: [] },
46
+ },
47
+ swapHistory: [],
48
+ subAccounts: [],
49
+ hederaResources: mockHederaResources,
50
+ ...overrides,
51
+ };
52
+ };
53
+ export const getMockedAccountRaw = (overrides) => {
54
+ return {
55
+ id: defaultMockAccountId,
56
+ seedIdentifier: "",
57
+ derivationMode: "",
58
+ index: 0,
59
+ freshAddress: "0.0.12345",
60
+ freshAddressPath: "44/3030",
61
+ used: false,
62
+ balance: defaultBalance.toString(),
63
+ spendableBalance: defaultBalance.toString(),
64
+ creationDate: new Date().toISOString(),
65
+ blockHeight: 0,
66
+ currencyId: defaultMockedCurrency.id,
67
+ operationsCount: 0,
68
+ operations: [],
69
+ pendingOperations: [],
70
+ lastSyncDate: new Date().toISOString(),
71
+ balanceHistoryCache: {
72
+ HOUR: { latestDate: null, balances: [] },
73
+ DAY: { latestDate: null, balances: [] },
74
+ WEEK: { latestDate: null, balances: [] },
75
+ },
76
+ swapHistory: [],
77
+ subAccounts: [],
78
+ hederaResources: mockHederaResourcesRaw,
79
+ ...overrides,
80
+ };
81
+ };
82
+ /**
83
+ * default settings:
84
+ * - balance is 10
85
+ */
86
+ export const getMockedTokenAccount = (token, overrides) => {
87
+ return {
88
+ type: "TokenAccount",
89
+ id: defaultMockTokenAccountId,
90
+ parentId: defaultMockAccountId,
91
+ token,
92
+ balance: defaultTokenBalance,
93
+ spendableBalance: defaultTokenBalance,
94
+ creationDate: new Date(),
95
+ operations: [],
96
+ operationsCount: 0,
97
+ pendingOperations: [],
98
+ swapHistory: [],
99
+ balanceHistoryCache: {
100
+ HOUR: { latestDate: null, balances: [] },
101
+ DAY: { latestDate: null, balances: [] },
102
+ WEEK: { latestDate: null, balances: [] },
103
+ },
104
+ ...overrides,
105
+ };
106
+ };
107
+ //# sourceMappingURL=account.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.fixture.js","sourceRoot":"","sources":["../../../src/test/fixtures/account.fixture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { CryptoCurrency, TokenCurrency } from "@ledgerhq/types-cryptoassets";
2
+ export declare const getMockedCurrency: (overrides?: Partial<CryptoCurrency>) => CryptoCurrency;
3
+ export declare const getTokenCurrencyFromCAL: (index: number, overrides?: Partial<TokenCurrency>) => TokenCurrency;
4
+ export declare const getMockedTokenCurrency: (overrides?: Partial<TokenCurrency>) => TokenCurrency;
5
+ //# sourceMappingURL=currency.fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/currency.fixture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAGlF,eAAO,MAAM,iBAAiB,eAAgB,QAAQ,cAAc,CAAC,KAAG,cA0BvE,CAAC;AAEF,eAAO,MAAM,uBAAuB,UAC3B,MAAM,cACD,QAAQ,aAAa,CAAC,KACjC,aAUF,CAAC;AAEF,eAAO,MAAM,sBAAsB,eAAgB,QAAQ,aAAa,CAAC,KAAG,aAkB3E,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { getCryptoCurrencyById, listTokensForCryptoCurrency } from "@ledgerhq/cryptoassets";
2
+ import invariant from "invariant";
3
+ export const getMockedCurrency = (overrides) => {
4
+ return {
5
+ type: "CryptoCurrency",
6
+ id: "hedera",
7
+ managerAppName: "Hedera",
8
+ coinType: 3030,
9
+ scheme: "hedera",
10
+ color: "#000",
11
+ family: "hedera",
12
+ explorerViews: [
13
+ {
14
+ tx: "https://hashscan.io/mainnet/transaction/$hash",
15
+ address: "https://hashscan.io/mainnet/account/$address",
16
+ },
17
+ ],
18
+ name: "Hedera",
19
+ ticker: "HBAR",
20
+ units: [
21
+ {
22
+ name: "HBAR",
23
+ code: "HBAR",
24
+ magnitude: 8,
25
+ },
26
+ ],
27
+ ...overrides,
28
+ };
29
+ };
30
+ export const getTokenCurrencyFromCAL = (index, overrides) => {
31
+ const hedera = getCryptoCurrencyById("hedera");
32
+ const token = listTokensForCryptoCurrency(hedera)[index];
33
+ invariant(token, `token not found in CAL list on ${index} position`);
34
+ return {
35
+ ...token,
36
+ ...overrides,
37
+ };
38
+ };
39
+ export const getMockedTokenCurrency = (overrides) => {
40
+ return {
41
+ id: "hedera/hts/test_0.0.1234567",
42
+ contractAddress: "0.0.1001",
43
+ parentCurrency: getMockedCurrency(),
44
+ tokenType: "hts",
45
+ name: "Test token",
46
+ ticker: "TEST",
47
+ type: "TokenCurrency",
48
+ units: [
49
+ {
50
+ name: "Test",
51
+ code: "TEST",
52
+ magnitude: 8,
53
+ },
54
+ ],
55
+ ...overrides,
56
+ };
57
+ };
58
+ //# sourceMappingURL=currency.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.fixture.js","sourceRoot":"","sources":["../../../src/test/fixtures/currency.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE5F,OAAO,SAAS,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,SAAmC,EAAkB,EAAE;IACvF,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,EAAE,EAAE,QAAQ;QACZ,cAAc,EAAE,QAAQ;QACxB,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE;YACb;gBACE,EAAE,EAAE,+CAA+C;gBACnD,OAAO,EAAE,8CAA8C;aACxD;SACF;QACD,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,MAAM;QACd,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,CAAC;aACb;SACF;QACD,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,KAAa,EACb,SAAkC,EACnB,EAAE;IACjB,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IAEzD,SAAS,CAAC,KAAK,EAAE,kCAAkC,KAAK,WAAW,CAAC,CAAC;IAErE,OAAO;QACL,GAAG,KAAK;QACR,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,SAAkC,EAAiB,EAAE;IAC1F,OAAO;QACL,EAAE,EAAE,6BAA6B;QACjC,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE,iBAAiB,EAAE;QACnC,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,CAAC;aACb;SACF;QACD,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { HederaMirrorToken } from "../../api/types";
2
+ export declare const getMockedMirrorToken: (overrides?: Partial<HederaMirrorToken>) => HederaMirrorToken;
3
+ //# sourceMappingURL=mirror.fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mirror.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/mirror.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,eAAO,MAAM,oBAAoB,eAAgB,QAAQ,iBAAiB,CAAC,KAAG,iBAW7E,CAAC"}
@@ -0,0 +1,13 @@
1
+ export const getMockedMirrorToken = (overrides) => {
2
+ return {
3
+ token_id: "",
4
+ created_timestamp: "123",
5
+ automatic_association: false,
6
+ balance: 0,
7
+ decimals: 0,
8
+ freeze_status: "NOT_APPLICABLE",
9
+ kyc_status: "NOT_APPLICABLE",
10
+ ...overrides,
11
+ };
12
+ };
13
+ //# sourceMappingURL=mirror.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mirror.fixture.js","sourceRoot":"","sources":["../../../src/test/fixtures/mirror.fixture.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,SAAsC,EAAqB,EAAE;IAChG,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,iBAAiB,EAAE,KAAK;QACxB,qBAAqB,EAAE,KAAK;QAC5B,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;QACX,aAAa,EAAE,gBAAgB;QAC/B,UAAU,EAAE,gBAAgB;QAC5B,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HederaOperation } from "../../types";
2
+ export declare const getMockedOperation: (overrides?: Partial<HederaOperation>) => HederaOperation;
3
+ //# sourceMappingURL=operation.fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/operation.fixture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,eAAgB,QAAQ,eAAe,CAAC,KAAG,eAgBzE,CAAC"}
@@ -0,0 +1,19 @@
1
+ import BigNumber from "bignumber.js";
2
+ export const getMockedOperation = (overrides) => {
3
+ return {
4
+ id: "",
5
+ hash: "",
6
+ type: "IN",
7
+ value: new BigNumber(0),
8
+ fee: new BigNumber(0),
9
+ senders: [],
10
+ recipients: [],
11
+ blockHeight: undefined,
12
+ blockHash: undefined,
13
+ accountId: "",
14
+ date: new Date(),
15
+ extra: {},
16
+ ...overrides,
17
+ };
18
+ };
19
+ //# sourceMappingURL=operation.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation.fixture.js","sourceRoot":"","sources":["../../../src/test/fixtures/operation.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,SAAoC,EAAmB,EAAE;IAC1F,OAAO;QACL,EAAE,EAAE,EAAE;QACN,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;QACvB,GAAG,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;QACrB,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,EAAE;QACb,IAAI,EAAE,IAAI,IAAI,EAAE;QAChB,KAAK,EAAE,EAAE;QACT,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Transaction, TransactionRaw } from "../../types";
2
+ export declare const getMockedTransaction: (overrides?: Partial<Transaction>) => Transaction;
3
+ export declare const getMockedTransactionRaw: (overrides?: Partial<TransactionRaw>) => TransactionRaw;
4
+ //# sourceMappingURL=transaction.fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/transaction.fixture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/D,eAAO,MAAM,oBAAoB,eAAgB,QAAQ,WAAW,CAAC,KAAG,WAQvE,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAAgB,QAAQ,cAAc,CAAC,KAAG,cAQ7E,CAAC"}
@@ -0,0 +1,20 @@
1
+ import BigNumber from "bignumber.js";
2
+ export const getMockedTransaction = (overrides) => {
3
+ return {
4
+ family: "hedera",
5
+ amount: new BigNumber(0),
6
+ recipient: "",
7
+ useAllAmount: false,
8
+ ...overrides,
9
+ };
10
+ };
11
+ export const getMockedTransactionRaw = (overrides) => {
12
+ return {
13
+ family: "hedera",
14
+ amount: "0",
15
+ recipient: "",
16
+ useAllAmount: false,
17
+ ...overrides,
18
+ };
19
+ };
20
+ //# sourceMappingURL=transaction.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.fixture.js","sourceRoot":"","sources":["../../../src/test/fixtures/transaction.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,SAAgC,EAAe,EAAE;IACpF,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;QACxB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,KAAK;QACnB,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAmC,EAAkB,EAAE;IAC7F,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,GAAG;QACX,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,KAAK;QACnB,GAAG,SAAS;KACb,CAAC;AACJ,CAAC,CAAC"}
@@ -1,22 +1,46 @@
1
- import type { TransactionCommon, TransactionCommonRaw, TransactionStatusCommon, TransactionStatusCommonRaw } from "@ledgerhq/types-live";
1
+ import { TokenCurrency } from "@ledgerhq/types-cryptoassets";
2
+ import type { Account, AccountRaw, Operation, TransactionCommon, TransactionCommonRaw, TransactionStatusCommon, TransactionStatusCommonRaw } from "@ledgerhq/types-live";
3
+ import { HEDERA_TRANSACTION_KINDS } from "../constants";
2
4
  export type NetworkInfo = {
3
5
  family: "hedera";
4
6
  };
5
7
  export type NetworkInfoRaw = {
6
8
  family: "hedera";
7
9
  };
10
+ export type TokenAssociateProperties = {
11
+ name: typeof HEDERA_TRANSACTION_KINDS.TokenAssociate.name;
12
+ token: TokenCurrency;
13
+ };
8
14
  export type Transaction = TransactionCommon & {
9
15
  family: "hedera";
10
16
  memo?: string | undefined;
17
+ properties?: TokenAssociateProperties;
11
18
  };
12
19
  export type TransactionRaw = TransactionCommonRaw & {
13
20
  family: "hedera";
14
21
  memo?: string | undefined;
22
+ properties?: TokenAssociateProperties;
15
23
  };
16
24
  export type TransactionStatus = TransactionStatusCommon;
17
25
  export type TransactionStatusRaw = TransactionStatusCommonRaw;
26
+ export interface HederaResources {
27
+ maxAutomaticTokenAssociations: number;
28
+ isAutoTokenAssociationEnabled: boolean;
29
+ }
30
+ export interface HederaResourcesRaw {
31
+ maxAutomaticTokenAssociations: number;
32
+ isAutoTokenAssociationEnabled: boolean;
33
+ }
34
+ export type HederaAccount = Account & {
35
+ hederaResources?: HederaResources;
36
+ };
37
+ export type HederaAccountRaw = AccountRaw & {
38
+ hederaResources?: HederaResourcesRaw;
39
+ };
18
40
  export type HederaOperationExtra = {
19
41
  consensusTimestamp?: string;
20
42
  transactionId?: string;
43
+ associatedTokenId?: string;
21
44
  };
45
+ export type HederaOperation = Operation<HederaOperationExtra>;
22
46
  //# sourceMappingURL=bridge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/types/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAExD,MAAM,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,MAAM,oBAAoB,GAAG;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/types/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,OAAO,wBAAwB,CAAC,cAAc,CAAC,IAAI,CAAC;IAC1D,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,wBAAwB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,wBAAwB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAExD,MAAM,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,WAAW,eAAe;IAC9B,6BAA6B,EAAE,MAAM,CAAC;IACtC,6BAA6B,EAAE,OAAO,CAAC;CACxC;AAED,MAAM,WAAW,kBAAkB;IACjC,6BAA6B,EAAE,MAAM,CAAC;IACtC,6BAA6B,EAAE,OAAO,CAAC;CACxC;AAED,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG;IACpC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IAC1C,eAAe,CAAC,EAAE,kBAAkB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC,oBAAoB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-hedera",
3
- "version": "1.10.1",
3
+ "version": "1.10.2-nightly.0",
4
4
  "description": "Ledger Hedera Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -78,19 +78,21 @@
78
78
  "@hashgraph/sdk": "2.14.2",
79
79
  "bignumber.js": "^9.1.2",
80
80
  "expect": "^27.4.6",
81
+ "imurmurhash": "^0.1.4",
81
82
  "invariant": "^2.2.2",
82
83
  "lodash": "^4.17.21",
83
84
  "rxjs": "^7.8.1",
84
- "@ledgerhq/coin-framework": "^6.2.0",
85
- "@ledgerhq/cryptoassets": "^13.26.0",
86
- "@ledgerhq/devices": "8.5.0",
87
- "@ledgerhq/errors": "^6.24.0",
88
- "@ledgerhq/live-countervalues": "^0.6.2",
89
- "@ledgerhq/live-env": "^2.14.0",
90
- "@ledgerhq/live-network": "^2.0.15",
85
+ "@ledgerhq/coin-framework": "^6.2.1-nightly.0",
86
+ "@ledgerhq/cryptoassets": "^13.27.0-nightly.0",
87
+ "@ledgerhq/devices": "8.5.1-nightly.0",
88
+ "@ledgerhq/errors": "^6.25.0-nightly.0",
89
+ "@ledgerhq/live-countervalues": "^0.6.3-nightly.0",
90
+ "@ledgerhq/live-env": "^2.15.0-nightly.1",
91
+ "@ledgerhq/live-network": "^2.0.16-nightly.1",
91
92
  "@ledgerhq/types-live": "^6.82.0"
92
93
  },
93
94
  "devDependencies": {
95
+ "@types/imurmurhash": "^0.1.4",
94
96
  "@types/invariant": "^2.2.2",
95
97
  "@types/jest": "^29.5.10",
96
98
  "@types/lodash": "^4.14.191",
@@ -98,7 +100,7 @@
98
100
  "jest": "^29.7.0",
99
101
  "ts-jest": "^29.1.1",
100
102
  "@ledgerhq/disable-network-setup": "^0.0.0",
101
- "@ledgerhq/types-cryptoassets": "^7.25.0"
103
+ "@ledgerhq/types-cryptoassets": "^7.26.0-nightly.1"
102
104
  },
103
105
  "scripts": {
104
106
  "clean": "rimraf lib lib-es",