@ledgerhq/coin-celo 1.6.0-nightly.9 → 1.6.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 (75) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +30 -94
  3. package/lib/__tests__/bridge/buildOptimisticOperation.test.d.ts +2 -0
  4. package/lib/__tests__/bridge/buildOptimisticOperation.test.d.ts.map +1 -0
  5. package/lib/__tests__/bridge/buildOptimisticOperation.test.js +23 -0
  6. package/lib/__tests__/bridge/buildOptimisticOperation.test.js.map +1 -0
  7. package/lib/__tests__/bridge/buildTransaction.test.d.ts +2 -0
  8. package/lib/__tests__/bridge/buildTransaction.test.d.ts.map +1 -0
  9. package/lib/__tests__/bridge/buildTransaction.test.js +412 -0
  10. package/lib/__tests__/bridge/buildTransaction.test.js.map +1 -0
  11. package/lib/__tests__/bridge/createTransaction.test.d.ts +2 -0
  12. package/lib/__tests__/bridge/createTransaction.test.d.ts.map +1 -0
  13. package/lib/__tests__/bridge/createTransaction.test.js +22 -0
  14. package/lib/__tests__/bridge/createTransaction.test.js.map +1 -0
  15. package/lib/__tests__/bridge/deviceTransactionConfig.test.d.ts +2 -0
  16. package/lib/__tests__/bridge/deviceTransactionConfig.test.d.ts.map +1 -0
  17. package/lib/__tests__/bridge/deviceTransactionConfig.test.js +21 -0
  18. package/lib/__tests__/bridge/deviceTransactionConfig.test.js.map +1 -0
  19. package/lib/__tests__/bridge/estimateMaxSpendable.test.d.ts +2 -0
  20. package/lib/__tests__/bridge/estimateMaxSpendable.test.d.ts.map +1 -0
  21. package/lib/__tests__/bridge/estimateMaxSpendable.test.js +108 -0
  22. package/lib/__tests__/bridge/estimateMaxSpendable.test.js.map +1 -0
  23. package/lib/__tests__/bridge/getFeesForTransaction.test.d.ts +2 -0
  24. package/lib/__tests__/bridge/getFeesForTransaction.test.d.ts.map +1 -0
  25. package/lib/__tests__/bridge/getFeesForTransaction.test.js +212 -0
  26. package/lib/__tests__/bridge/getFeesForTransaction.test.js.map +1 -0
  27. package/lib/__tests__/bridge/getTransactionStatus.test.d.ts +2 -0
  28. package/lib/__tests__/bridge/getTransactionStatus.test.d.ts.map +1 -0
  29. package/lib/__tests__/bridge/getTransactionStatus.test.js +214 -0
  30. package/lib/__tests__/bridge/getTransactionStatus.test.js.map +1 -0
  31. package/lib/__tests__/bridge/logic.test.d.ts +2 -0
  32. package/lib/__tests__/bridge/logic.test.d.ts.map +1 -0
  33. package/lib/__tests__/bridge/logic.test.js +490 -0
  34. package/lib/__tests__/bridge/logic.test.js.map +1 -0
  35. package/lib/__tests__/bridge/prepareTransaction.test.d.ts +2 -0
  36. package/lib/__tests__/bridge/prepareTransaction.test.d.ts.map +1 -0
  37. package/lib/__tests__/bridge/prepareTransaction.test.js +233 -0
  38. package/lib/__tests__/bridge/prepareTransaction.test.js.map +1 -0
  39. package/lib-es/__tests__/bridge/buildOptimisticOperation.test.d.ts +2 -0
  40. package/lib-es/__tests__/bridge/buildOptimisticOperation.test.d.ts.map +1 -0
  41. package/lib-es/__tests__/bridge/buildOptimisticOperation.test.js +18 -0
  42. package/lib-es/__tests__/bridge/buildOptimisticOperation.test.js.map +1 -0
  43. package/lib-es/__tests__/bridge/buildTransaction.test.d.ts +2 -0
  44. package/lib-es/__tests__/bridge/buildTransaction.test.d.ts.map +1 -0
  45. package/lib-es/__tests__/bridge/buildTransaction.test.js +407 -0
  46. package/lib-es/__tests__/bridge/buildTransaction.test.js.map +1 -0
  47. package/lib-es/__tests__/bridge/createTransaction.test.d.ts +2 -0
  48. package/lib-es/__tests__/bridge/createTransaction.test.d.ts.map +1 -0
  49. package/lib-es/__tests__/bridge/createTransaction.test.js +17 -0
  50. package/lib-es/__tests__/bridge/createTransaction.test.js.map +1 -0
  51. package/lib-es/__tests__/bridge/deviceTransactionConfig.test.d.ts +2 -0
  52. package/lib-es/__tests__/bridge/deviceTransactionConfig.test.d.ts.map +1 -0
  53. package/lib-es/__tests__/bridge/deviceTransactionConfig.test.js +16 -0
  54. package/lib-es/__tests__/bridge/deviceTransactionConfig.test.js.map +1 -0
  55. package/lib-es/__tests__/bridge/estimateMaxSpendable.test.d.ts +2 -0
  56. package/lib-es/__tests__/bridge/estimateMaxSpendable.test.d.ts.map +1 -0
  57. package/lib-es/__tests__/bridge/estimateMaxSpendable.test.js +103 -0
  58. package/lib-es/__tests__/bridge/estimateMaxSpendable.test.js.map +1 -0
  59. package/lib-es/__tests__/bridge/getFeesForTransaction.test.d.ts +2 -0
  60. package/lib-es/__tests__/bridge/getFeesForTransaction.test.d.ts.map +1 -0
  61. package/lib-es/__tests__/bridge/getFeesForTransaction.test.js +207 -0
  62. package/lib-es/__tests__/bridge/getFeesForTransaction.test.js.map +1 -0
  63. package/lib-es/__tests__/bridge/getTransactionStatus.test.d.ts +2 -0
  64. package/lib-es/__tests__/bridge/getTransactionStatus.test.d.ts.map +1 -0
  65. package/lib-es/__tests__/bridge/getTransactionStatus.test.js +209 -0
  66. package/lib-es/__tests__/bridge/getTransactionStatus.test.js.map +1 -0
  67. package/lib-es/__tests__/bridge/logic.test.d.ts +2 -0
  68. package/lib-es/__tests__/bridge/logic.test.d.ts.map +1 -0
  69. package/lib-es/__tests__/bridge/logic.test.js +485 -0
  70. package/lib-es/__tests__/bridge/logic.test.js.map +1 -0
  71. package/lib-es/__tests__/bridge/prepareTransaction.test.d.ts +2 -0
  72. package/lib-es/__tests__/bridge/prepareTransaction.test.d.ts.map +1 -0
  73. package/lib-es/__tests__/bridge/prepareTransaction.test.js +228 -0
  74. package/lib-es/__tests__/bridge/prepareTransaction.test.js.map +1 -0
  75. package/package.json +11 -11
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
7
+ const fixtures_1 = require("../../bridge/fixtures");
8
+ const prepareTransaction_1 = __importDefault(require("../../bridge/prepareTransaction"));
9
+ const chainIdMock = jest.fn();
10
+ const nonceMock = jest.fn();
11
+ jest.mock("../../network/sdk", () => {
12
+ return {
13
+ celoKit: jest.fn(() => ({
14
+ contracts: {
15
+ getLockedGold: jest.fn(async () => ({
16
+ address: "address",
17
+ lock: jest.fn(() => ({
18
+ txo: {
19
+ encodeABI: jest.fn(() => "0x6C6F636B5F64617461"), // lock_data
20
+ estimateGas: jest.fn(async () => 2),
21
+ },
22
+ })),
23
+ unlock: jest.fn(() => ({
24
+ txo: {
25
+ encodeABI: jest.fn(() => "0x756E6C6F636B5F64617461"), // unlock_data
26
+ estimateGas: jest.fn(async () => 3),
27
+ },
28
+ })),
29
+ withdraw: jest.fn(() => ({
30
+ txo: {
31
+ encodeABI: jest.fn(() => "0x77697468647261775F64617461"), // withdraw_data
32
+ estimateGas: jest.fn(async () => 3),
33
+ },
34
+ })),
35
+ vote: jest.fn(() => ({
36
+ txo: {
37
+ encodeABI: jest.fn(() => "0x766F74655F64617461"), // vote_data
38
+ estimateGas: jest.fn(async () => 3),
39
+ },
40
+ })),
41
+ getAccountNonvotingLockedGold: jest.fn(() => (0, bignumber_js_1.default)(0)),
42
+ })),
43
+ getGoldToken: jest.fn(async () => ({
44
+ address: "gold_token_address",
45
+ transfer: jest.fn(() => ({
46
+ txo: {
47
+ encodeABI: jest.fn(() => "0x73656E645F64617461"), // send_data
48
+ },
49
+ })),
50
+ })),
51
+ getStableToken: jest.fn(async () => ({
52
+ address: "stable_token_address",
53
+ transfer: jest.fn(() => ({
54
+ txo: {
55
+ encodeABI: jest.fn(() => "0x73656E645F746F6B656E5F64617461"), // stable_token_data
56
+ },
57
+ })),
58
+ })),
59
+ getErc20: jest.fn(async () => ({
60
+ address: "erc20_token_address",
61
+ transfer: jest.fn(() => ({
62
+ txo: {
63
+ encodeABI: jest.fn(() => "0x73656E645F65726332305F746F6B656E5F64617461"), // send_erc20_token_data
64
+ },
65
+ })),
66
+ })),
67
+ },
68
+ connection: {
69
+ chainId: chainIdMock,
70
+ nonce: nonceMock,
71
+ estimateGasWithInflationFactor: jest.fn().mockReturnValue(3),
72
+ gasPrice: jest.fn(async () => (0, bignumber_js_1.default)(2)),
73
+ web3: { eth: { getBlock: jest.fn().mockResolvedValue({ baseFeePerGas: 10 }) } },
74
+ getMaxPriorityFeePerGas: jest.fn().mockReturnValue(1),
75
+ },
76
+ })),
77
+ };
78
+ });
79
+ describe("prepareTransaction", () => {
80
+ it("should return the transaction if the address is invalid", async () => {
81
+ const transaction = await (0, prepareTransaction_1.default)(fixtures_1.accountFixture, fixtures_1.transactionFixture);
82
+ expect(transaction).toMatchObject({
83
+ amount: (0, bignumber_js_1.default)(10),
84
+ recipient: "recipient",
85
+ useAllAmount: false,
86
+ family: "celo",
87
+ mode: "send",
88
+ index: 0,
89
+ fees: null,
90
+ });
91
+ });
92
+ it("should return the transaction if it doesn't have a recipient", async () => {
93
+ const transaction = await (0, prepareTransaction_1.default)(fixtures_1.accountFixture, {
94
+ ...fixtures_1.transactionFixture,
95
+ recipient: "",
96
+ });
97
+ expect(transaction).toMatchObject({
98
+ amount: (0, bignumber_js_1.default)(10),
99
+ recipient: "",
100
+ useAllAmount: false,
101
+ family: "celo",
102
+ mode: "send",
103
+ index: 0,
104
+ fees: null,
105
+ });
106
+ });
107
+ it("should return the vote transaction if it doesn't have a recipient", async () => {
108
+ const transaction = await (0, prepareTransaction_1.default)(fixtures_1.accountFixture, {
109
+ ...fixtures_1.transactionFixture,
110
+ recipient: "",
111
+ mode: "vote",
112
+ });
113
+ expect(transaction).toMatchObject({
114
+ amount: (0, bignumber_js_1.default)(10),
115
+ recipient: "",
116
+ useAllAmount: false,
117
+ family: "celo",
118
+ mode: "vote",
119
+ index: 0,
120
+ fees: null,
121
+ });
122
+ });
123
+ it("should return the vote transaction if the amount is less than or equal to zero", async () => {
124
+ const transaction = await (0, prepareTransaction_1.default)(fixtures_1.accountFixture, {
125
+ ...fixtures_1.transactionFixture,
126
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
127
+ mode: "vote",
128
+ amount: (0, bignumber_js_1.default)(0),
129
+ });
130
+ expect(transaction).toMatchObject({
131
+ amount: (0, bignumber_js_1.default)(0),
132
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
133
+ useAllAmount: false,
134
+ family: "celo",
135
+ mode: "vote",
136
+ index: 0,
137
+ fees: null,
138
+ });
139
+ });
140
+ it("should return the prepared transaction", async () => {
141
+ const transaction = await (0, prepareTransaction_1.default)({ ...fixtures_1.accountFixture, balance: (0, bignumber_js_1.default)(222222), spendableBalance: (0, bignumber_js_1.default)(222222) }, {
142
+ ...fixtures_1.transactionFixture,
143
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
144
+ amount: (0, bignumber_js_1.default)(22),
145
+ });
146
+ expect(transaction).toMatchObject({
147
+ amount: (0, bignumber_js_1.default)(22),
148
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
149
+ useAllAmount: false,
150
+ family: "celo",
151
+ mode: "send",
152
+ index: 0,
153
+ fees: (0, bignumber_js_1.default)(24),
154
+ });
155
+ });
156
+ it("should return the prepared stable token transaction", async () => {
157
+ const transaction = await (0, prepareTransaction_1.default)({
158
+ ...fixtures_1.accountWithTokenAccountFixture,
159
+ balance: (0, bignumber_js_1.default)(222222),
160
+ spendableBalance: (0, bignumber_js_1.default)(222222),
161
+ subAccounts: [
162
+ {
163
+ ...fixtures_1.accountWithTokenAccountFixture.subAccounts[0],
164
+ token: {
165
+ ...fixtures_1.accountWithTokenAccountFixture.subAccounts[0].token,
166
+ id: "cEUR",
167
+ },
168
+ },
169
+ ],
170
+ }, {
171
+ ...fixtures_1.tokenTransactionFixture,
172
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
173
+ amount: (0, bignumber_js_1.default)(22),
174
+ });
175
+ expect(transaction).toMatchObject({
176
+ amount: (0, bignumber_js_1.default)(22),
177
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
178
+ useAllAmount: false,
179
+ family: "celo",
180
+ mode: "send",
181
+ index: 0,
182
+ fees: (0, bignumber_js_1.default)(24),
183
+ subAccountId: "subAccountId",
184
+ data: Buffer.from("0x73656E645F746F6B656E5F64617461"),
185
+ });
186
+ });
187
+ it("should return the prepared token transaction", async () => {
188
+ const transaction = await (0, prepareTransaction_1.default)({
189
+ ...fixtures_1.accountWithTokenAccountFixture,
190
+ balance: (0, bignumber_js_1.default)(222222),
191
+ spendableBalance: (0, bignumber_js_1.default)(222222),
192
+ }, {
193
+ ...fixtures_1.tokenTransactionFixture,
194
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
195
+ amount: (0, bignumber_js_1.default)(22),
196
+ });
197
+ expect(transaction).toMatchObject({
198
+ amount: (0, bignumber_js_1.default)(22),
199
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
200
+ useAllAmount: false,
201
+ family: "celo",
202
+ mode: "send",
203
+ index: 0,
204
+ fees: (0, bignumber_js_1.default)(24),
205
+ subAccountId: "subAccountId",
206
+ data: Buffer.from("0x73656E645F65726332305F746F6B656E5F64617461"),
207
+ });
208
+ });
209
+ it("should return the prepared token transaction with useAllAmount", async () => {
210
+ const transaction = await (0, prepareTransaction_1.default)({
211
+ ...fixtures_1.accountWithTokenAccountFixture,
212
+ balance: (0, bignumber_js_1.default)(222222),
213
+ spendableBalance: (0, bignumber_js_1.default)(222222),
214
+ }, {
215
+ ...fixtures_1.tokenTransactionFixture,
216
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
217
+ amount: (0, bignumber_js_1.default)(22),
218
+ useAllAmount: true,
219
+ });
220
+ expect(transaction).toMatchObject({
221
+ amount: (0, bignumber_js_1.default)(212),
222
+ recipient: "0x79D5A290D7ba4b99322d91b577589e8d0BF87072",
223
+ useAllAmount: true,
224
+ family: "celo",
225
+ mode: "send",
226
+ index: 0,
227
+ fees: (0, bignumber_js_1.default)(24),
228
+ subAccountId: "subAccountId",
229
+ data: Buffer.from("0x73656E645F65726332305F746F6B656E5F64617461"),
230
+ });
231
+ });
232
+ });
233
+ //# sourceMappingURL=prepareTransaction.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareTransaction.test.js","sourceRoot":"","sources":["../../../src/__tests__/bridge/prepareTransaction.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=buildOptimisticOperation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildOptimisticOperation.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/bridge/buildOptimisticOperation.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { buildOptimisticOperation } from "../../bridge/buildOptimisticOperation";
3
+ import { accountFixture, transactionFixture } from "../../bridge/fixtures";
4
+ describe("buildOptimisticOperation", () => {
5
+ it("should build a proper send operation", () => {
6
+ const optimisticOperation = buildOptimisticOperation(accountFixture, { ...transactionFixture, mode: "send" }, BigNumber(2));
7
+ expect(optimisticOperation.value).toEqual(BigNumber(12));
8
+ expect(optimisticOperation.type).toEqual("OUT");
9
+ expect(optimisticOperation.extra.celoSourceValidator).toEqual(undefined);
10
+ });
11
+ it("should build a proper vote operation", () => {
12
+ const optimisticOperation = buildOptimisticOperation(accountFixture, { ...transactionFixture, mode: "vote" }, BigNumber(2));
13
+ expect(optimisticOperation.value).toEqual(BigNumber(10));
14
+ expect(optimisticOperation.type).toEqual("VOTE");
15
+ expect(optimisticOperation.extra.celoSourceValidator).toEqual("recipient");
16
+ });
17
+ });
18
+ //# sourceMappingURL=buildOptimisticOperation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildOptimisticOperation.test.js","sourceRoot":"","sources":["../../../src/__tests__/bridge/buildOptimisticOperation.test.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3E,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,mBAAmB,GAAG,wBAAwB,CAClD,cAAc,EACd,EAAE,GAAG,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE,EACvC,SAAS,CAAC,CAAC,CAAC,CACb,CAAC;QAEF,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACzD,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,mBAAmB,GAAG,wBAAwB,CAClD,cAAc,EACd,EAAE,GAAG,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE,EACvC,SAAS,CAAC,CAAC,CAAC,CACb,CAAC;QAEF,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACzD,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=buildTransaction.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildTransaction.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/bridge/buildTransaction.test.ts"],"names":[],"mappings":""}