essential-eth 0.2.2 → 0.3.3

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 (114) hide show
  1. package/lib/cjs/classes/Contract.d.ts +69 -0
  2. package/lib/cjs/classes/Contract.js +122 -0
  3. package/lib/cjs/{rpc → classes}/get-block.test.d.ts +0 -0
  4. package/lib/cjs/{rpc → classes}/get-block.test.js +5 -5
  5. package/lib/cjs/classes/test/Contract/crv-abi.d.ts +2 -0
  6. package/lib/cjs/classes/test/Contract/crv-abi.js +488 -0
  7. package/lib/{esm/rpc/get-block.test.d.ts → cjs/classes/test/Contract/crv.test.d.ts} +0 -0
  8. package/lib/cjs/classes/test/Contract/crv.test.js +48 -0
  9. package/lib/cjs/classes/test/Contract/fei-abi.d.ts +2 -0
  10. package/lib/cjs/classes/test/Contract/fei-abi.js +526 -0
  11. package/lib/cjs/classes/test/Contract/fei.test.d.ts +1 -0
  12. package/lib/cjs/classes/test/Contract/fei.test.js +62 -0
  13. package/lib/cjs/classes/test/Contract/foo-abi.d.ts +2 -0
  14. package/lib/cjs/classes/test/Contract/foo-abi.js +42 -0
  15. package/lib/cjs/classes/test/Contract/foo.test.d.ts +1 -0
  16. package/lib/cjs/classes/test/Contract/foo.test.js +25 -0
  17. package/lib/cjs/classes/test/Contract/uni.test.d.ts +1 -0
  18. package/lib/cjs/classes/test/Contract/uni.test.js +67 -0
  19. package/lib/cjs/classes/test/Contract/uniswap-abi.d.ts +2 -0
  20. package/lib/cjs/classes/test/Contract/uniswap-abi.js +121 -0
  21. package/lib/cjs/{rpc → classes}/utils/clean-block.d.ts +0 -0
  22. package/lib/cjs/{rpc → classes}/utils/clean-block.js +0 -0
  23. package/lib/cjs/{rpc → classes}/utils/clean-transaction.d.ts +0 -0
  24. package/lib/cjs/{rpc → classes}/utils/clean-transaction.js +0 -0
  25. package/lib/cjs/classes/utils/encode-decode-transaction.d.ts +3 -0
  26. package/lib/cjs/classes/utils/encode-decode-transaction.js +100 -0
  27. package/lib/cjs/classes/utils/fetchers.d.ts +9 -0
  28. package/lib/cjs/{rpc → classes}/utils/fetchers.js +8 -1
  29. package/lib/cjs/{rpc → classes}/utils/hex-to-decimal.d.ts +0 -0
  30. package/lib/cjs/{rpc → classes}/utils/hex-to-decimal.js +0 -0
  31. package/lib/cjs/index.d.ts +10 -6
  32. package/lib/cjs/index.js +12 -9
  33. package/lib/cjs/{rpc/index.d.ts → providers/JsonRpcProvider.d.ts} +5 -1
  34. package/lib/cjs/{rpc/index.js → providers/JsonRpcProvider.js} +14 -7
  35. package/lib/cjs/shared/tiny-big/tiny-big.d.ts +2 -2
  36. package/lib/cjs/types/Contract.types.d.ts +22 -0
  37. package/lib/cjs/types/Contract.types.js +2 -0
  38. package/lib/cjs/{ether-to-wei.d.ts → utils/ether-to-wei.d.ts} +3 -2
  39. package/lib/cjs/{ether-to-wei.js → utils/ether-to-wei.js} +4 -8
  40. package/lib/cjs/{is-address.d.ts → utils/is-address.d.ts} +0 -0
  41. package/lib/cjs/{is-address.js → utils/is-address.js} +3 -3
  42. package/lib/cjs/utils/tests/ether-to-wei.test.d.ts +1 -0
  43. package/lib/cjs/utils/tests/ether-to-wei.test.js +66 -0
  44. package/lib/cjs/utils/tests/is-address.test.d.ts +1 -0
  45. package/lib/cjs/utils/tests/is-address.test.js +56 -0
  46. package/lib/cjs/utils/tests/to-checksum-address.test.d.ts +1 -0
  47. package/lib/cjs/utils/tests/to-checksum-address.test.js +43 -0
  48. package/lib/cjs/utils/tests/wei-to-ether.test.d.ts +1 -0
  49. package/lib/cjs/utils/tests/wei-to-ether.test.js +69 -0
  50. package/lib/cjs/{to-checksum-address.d.ts → utils/to-checksum-address.d.ts} +0 -0
  51. package/lib/cjs/{to-checksum-address.js → utils/to-checksum-address.js} +1 -1
  52. package/lib/cjs/{wei-to-ether.d.ts → utils/wei-to-ether.d.ts} +3 -1
  53. package/lib/cjs/{wei-to-ether.js → utils/wei-to-ether.js} +4 -8
  54. package/lib/esm/classes/Contract.d.ts +12 -0
  55. package/lib/esm/classes/Contract.js +63 -0
  56. package/lib/esm/classes/get-block.test.d.ts +1 -0
  57. package/lib/esm/{rpc → classes}/get-block.test.js +5 -5
  58. package/lib/esm/classes/test/Contract/crv-abi.d.ts +2 -0
  59. package/lib/esm/classes/test/Contract/crv-abi.js +470 -0
  60. package/lib/esm/classes/test/Contract/crv.test.d.ts +1 -0
  61. package/lib/esm/classes/test/Contract/crv.test.js +43 -0
  62. package/lib/esm/classes/test/Contract/fei-abi.d.ts +2 -0
  63. package/lib/esm/classes/test/Contract/fei-abi.js +521 -0
  64. package/lib/esm/classes/test/Contract/fei.test.d.ts +1 -0
  65. package/lib/esm/classes/test/Contract/fei.test.js +46 -0
  66. package/lib/esm/classes/test/Contract/foo-abi.d.ts +2 -0
  67. package/lib/esm/classes/test/Contract/foo-abi.js +33 -0
  68. package/lib/esm/classes/test/Contract/foo.test.d.ts +1 -0
  69. package/lib/esm/classes/test/Contract/foo.test.js +14 -0
  70. package/lib/esm/classes/test/Contract/uni.test.d.ts +1 -0
  71. package/lib/esm/classes/test/Contract/uni.test.js +59 -0
  72. package/lib/esm/classes/test/Contract/uniswap-abi.d.ts +2 -0
  73. package/lib/esm/classes/test/Contract/uniswap-abi.js +116 -0
  74. package/lib/esm/{rpc → classes}/utils/clean-block.d.ts +0 -0
  75. package/lib/esm/{rpc → classes}/utils/clean-block.js +0 -0
  76. package/lib/esm/{rpc → classes}/utils/clean-transaction.d.ts +0 -0
  77. package/lib/esm/{rpc → classes}/utils/clean-transaction.js +0 -0
  78. package/lib/esm/classes/utils/encode-decode-transaction.d.ts +3 -0
  79. package/lib/esm/classes/utils/encode-decode-transaction.js +85 -0
  80. package/lib/esm/classes/utils/fetchers.d.ts +9 -0
  81. package/lib/esm/{rpc → classes}/utils/fetchers.js +8 -1
  82. package/lib/esm/{rpc → classes}/utils/hex-to-decimal.d.ts +0 -0
  83. package/lib/esm/{rpc → classes}/utils/hex-to-decimal.js +0 -0
  84. package/lib/esm/index.d.ts +10 -6
  85. package/lib/esm/index.js +7 -6
  86. package/lib/esm/{rpc/index.d.ts → providers/JsonRpcProvider.d.ts} +2 -1
  87. package/lib/esm/{rpc/index.js → providers/JsonRpcProvider.js} +8 -5
  88. package/lib/esm/shared/tiny-big/tiny-big.d.ts +2 -2
  89. package/lib/esm/types/Contract.types.d.ts +22 -0
  90. package/lib/esm/types/Contract.types.js +1 -0
  91. package/lib/esm/utils/ether-to-wei.d.ts +3 -0
  92. package/lib/esm/utils/ether-to-wei.js +7 -0
  93. package/lib/esm/{is-address.d.ts → utils/is-address.d.ts} +0 -0
  94. package/lib/esm/{is-address.js → utils/is-address.js} +2 -2
  95. package/lib/esm/utils/tests/ether-to-wei.test.d.ts +1 -0
  96. package/lib/esm/utils/tests/ether-to-wei.test.js +36 -0
  97. package/lib/esm/utils/tests/is-address.test.d.ts +1 -0
  98. package/lib/esm/utils/tests/is-address.test.js +49 -0
  99. package/lib/esm/utils/tests/to-checksum-address.test.d.ts +1 -0
  100. package/lib/esm/utils/tests/to-checksum-address.test.js +36 -0
  101. package/lib/esm/utils/tests/wei-to-ether.test.d.ts +1 -0
  102. package/lib/esm/utils/tests/wei-to-ether.test.js +38 -0
  103. package/lib/esm/{to-checksum-address.d.ts → utils/to-checksum-address.d.ts} +0 -0
  104. package/lib/esm/{to-checksum-address.js → utils/to-checksum-address.js} +1 -1
  105. package/lib/esm/utils/wei-to-ether.d.ts +3 -0
  106. package/lib/esm/utils/wei-to-ether.js +7 -0
  107. package/package.json +11 -11
  108. package/readme.md +68 -5
  109. package/lib/cjs/rpc/utils/fetchers.d.ts +0 -7
  110. package/lib/esm/ether-to-wei.d.ts +0 -2
  111. package/lib/esm/ether-to-wei.js +0 -8
  112. package/lib/esm/rpc/utils/fetchers.d.ts +0 -7
  113. package/lib/esm/wei-to-ether.d.ts +0 -1
  114. package/lib/esm/wei-to-ether.js +0 -8
@@ -0,0 +1,470 @@
1
+ export const abi = [
2
+ {
3
+ name: 'Fund',
4
+ inputs: [
5
+ {
6
+ type: 'address',
7
+ name: 'recipient',
8
+ indexed: true,
9
+ },
10
+ {
11
+ type: 'uint256',
12
+ name: 'amount',
13
+ indexed: false,
14
+ },
15
+ ],
16
+ anonymous: false,
17
+ type: 'event',
18
+ },
19
+ {
20
+ name: 'Claim',
21
+ inputs: [
22
+ {
23
+ type: 'address',
24
+ name: 'recipient',
25
+ indexed: true,
26
+ },
27
+ {
28
+ type: 'uint256',
29
+ name: 'claimed',
30
+ indexed: false,
31
+ },
32
+ ],
33
+ anonymous: false,
34
+ type: 'event',
35
+ },
36
+ {
37
+ name: 'ToggleDisable',
38
+ inputs: [
39
+ {
40
+ type: 'address',
41
+ name: 'recipient',
42
+ indexed: false,
43
+ },
44
+ {
45
+ type: 'bool',
46
+ name: 'disabled',
47
+ indexed: false,
48
+ },
49
+ ],
50
+ anonymous: false,
51
+ type: 'event',
52
+ },
53
+ {
54
+ name: 'CommitOwnership',
55
+ inputs: [
56
+ {
57
+ type: 'address',
58
+ name: 'admin',
59
+ indexed: false,
60
+ },
61
+ ],
62
+ anonymous: false,
63
+ type: 'event',
64
+ },
65
+ {
66
+ name: 'ApplyOwnership',
67
+ inputs: [
68
+ {
69
+ type: 'address',
70
+ name: 'admin',
71
+ indexed: false,
72
+ },
73
+ ],
74
+ anonymous: false,
75
+ type: 'event',
76
+ },
77
+ {
78
+ outputs: [],
79
+ inputs: [
80
+ {
81
+ type: 'address',
82
+ name: '_token',
83
+ },
84
+ {
85
+ type: 'uint256',
86
+ name: '_start_time',
87
+ },
88
+ {
89
+ type: 'uint256',
90
+ name: '_end_time',
91
+ },
92
+ {
93
+ type: 'bool',
94
+ name: '_can_disable',
95
+ },
96
+ {
97
+ type: 'address[4]',
98
+ name: '_fund_admins',
99
+ },
100
+ ],
101
+ stateMutability: 'nonpayable',
102
+ type: 'constructor',
103
+ },
104
+ {
105
+ name: 'add_tokens',
106
+ outputs: [],
107
+ inputs: [
108
+ {
109
+ type: 'uint256',
110
+ name: '_amount',
111
+ },
112
+ ],
113
+ stateMutability: 'nonpayable',
114
+ type: 'function',
115
+ gas: 39108,
116
+ },
117
+ {
118
+ name: 'fund',
119
+ outputs: [],
120
+ inputs: [
121
+ {
122
+ type: 'address[100]',
123
+ name: '_recipients',
124
+ },
125
+ {
126
+ type: 'uint256[100]',
127
+ name: '_amounts',
128
+ },
129
+ ],
130
+ stateMutability: 'nonpayable',
131
+ type: 'function',
132
+ gas: 3962646,
133
+ },
134
+ {
135
+ name: 'toggle_disable',
136
+ outputs: [],
137
+ inputs: [
138
+ {
139
+ type: 'address',
140
+ name: '_recipient',
141
+ },
142
+ ],
143
+ stateMutability: 'nonpayable',
144
+ type: 'function',
145
+ gas: 40280,
146
+ },
147
+ {
148
+ name: 'disable_can_disable',
149
+ outputs: [],
150
+ inputs: [],
151
+ stateMutability: 'nonpayable',
152
+ type: 'function',
153
+ gas: 21295,
154
+ },
155
+ {
156
+ name: 'disable_fund_admins',
157
+ outputs: [],
158
+ inputs: [],
159
+ stateMutability: 'nonpayable',
160
+ type: 'function',
161
+ gas: 21325,
162
+ },
163
+ {
164
+ name: 'vestedSupply',
165
+ outputs: [
166
+ {
167
+ type: 'uint256',
168
+ name: '',
169
+ },
170
+ ],
171
+ inputs: [],
172
+ stateMutability: 'view',
173
+ type: 'function',
174
+ gas: 4468,
175
+ },
176
+ {
177
+ name: 'lockedSupply',
178
+ outputs: [
179
+ {
180
+ type: 'uint256',
181
+ name: '',
182
+ },
183
+ ],
184
+ inputs: [],
185
+ stateMutability: 'view',
186
+ type: 'function',
187
+ gas: 5465,
188
+ },
189
+ {
190
+ name: 'vestedOf',
191
+ outputs: [
192
+ {
193
+ type: 'uint256',
194
+ name: '',
195
+ },
196
+ ],
197
+ inputs: [
198
+ {
199
+ type: 'address',
200
+ name: '_recipient',
201
+ },
202
+ ],
203
+ stateMutability: 'view',
204
+ type: 'function',
205
+ gas: 5163,
206
+ },
207
+ {
208
+ name: 'balanceOf',
209
+ outputs: [
210
+ {
211
+ type: 'uint256',
212
+ name: '',
213
+ },
214
+ ],
215
+ inputs: [
216
+ {
217
+ type: 'address',
218
+ name: '_recipient',
219
+ },
220
+ ],
221
+ stateMutability: 'view',
222
+ type: 'function',
223
+ gas: 6275,
224
+ },
225
+ {
226
+ name: 'lockedOf',
227
+ outputs: [
228
+ {
229
+ type: 'uint256',
230
+ name: '',
231
+ },
232
+ ],
233
+ inputs: [
234
+ {
235
+ type: 'address',
236
+ name: '_recipient',
237
+ },
238
+ ],
239
+ stateMutability: 'view',
240
+ type: 'function',
241
+ gas: 6305,
242
+ },
243
+ {
244
+ name: 'claim',
245
+ outputs: [],
246
+ inputs: [],
247
+ stateMutability: 'nonpayable',
248
+ type: 'function',
249
+ },
250
+ {
251
+ name: 'commit_transfer_ownership',
252
+ outputs: [
253
+ {
254
+ type: 'bool',
255
+ name: '',
256
+ },
257
+ ],
258
+ inputs: [
259
+ {
260
+ type: 'address',
261
+ name: 'addr',
262
+ },
263
+ ],
264
+ stateMutability: 'nonpayable',
265
+ type: 'function',
266
+ gas: 38032,
267
+ },
268
+ {
269
+ name: 'apply_transfer_ownership',
270
+ outputs: [
271
+ {
272
+ type: 'bool',
273
+ name: '',
274
+ },
275
+ ],
276
+ inputs: [],
277
+ stateMutability: 'nonpayable',
278
+ type: 'function',
279
+ gas: 38932,
280
+ },
281
+ {
282
+ name: 'token',
283
+ outputs: [
284
+ {
285
+ type: 'address',
286
+ name: '',
287
+ },
288
+ ],
289
+ inputs: [],
290
+ stateMutability: 'view',
291
+ type: 'function',
292
+ gas: 1601,
293
+ },
294
+ {
295
+ name: 'start_time',
296
+ outputs: [
297
+ {
298
+ type: 'uint256',
299
+ name: '',
300
+ },
301
+ ],
302
+ inputs: [],
303
+ stateMutability: 'view',
304
+ type: 'function',
305
+ gas: 1631,
306
+ },
307
+ {
308
+ name: 'end_time',
309
+ outputs: [
310
+ {
311
+ type: 'uint256',
312
+ name: '',
313
+ },
314
+ ],
315
+ inputs: [],
316
+ stateMutability: 'view',
317
+ type: 'function',
318
+ gas: 1661,
319
+ },
320
+ {
321
+ name: 'initial_locked',
322
+ outputs: [
323
+ {
324
+ type: 'uint256',
325
+ name: '',
326
+ },
327
+ ],
328
+ inputs: [
329
+ {
330
+ type: 'address',
331
+ name: 'arg0',
332
+ },
333
+ ],
334
+ stateMutability: 'view',
335
+ type: 'function',
336
+ gas: 1845,
337
+ },
338
+ {
339
+ name: 'total_claimed',
340
+ outputs: [
341
+ {
342
+ type: 'uint256',
343
+ name: '',
344
+ },
345
+ ],
346
+ inputs: [
347
+ {
348
+ type: 'address',
349
+ name: 'arg0',
350
+ },
351
+ ],
352
+ stateMutability: 'view',
353
+ type: 'function',
354
+ gas: 1875,
355
+ },
356
+ {
357
+ name: 'initial_locked_supply',
358
+ outputs: [
359
+ {
360
+ type: 'uint256',
361
+ name: '',
362
+ },
363
+ ],
364
+ inputs: [],
365
+ stateMutability: 'view',
366
+ type: 'function',
367
+ gas: 1751,
368
+ },
369
+ {
370
+ name: 'unallocated_supply',
371
+ outputs: [
372
+ {
373
+ type: 'uint256',
374
+ name: '',
375
+ },
376
+ ],
377
+ inputs: [],
378
+ stateMutability: 'view',
379
+ type: 'function',
380
+ gas: 1781,
381
+ },
382
+ {
383
+ name: 'can_disable',
384
+ outputs: [
385
+ {
386
+ type: 'bool',
387
+ name: '',
388
+ },
389
+ ],
390
+ inputs: [],
391
+ stateMutability: 'view',
392
+ type: 'function',
393
+ gas: 1811,
394
+ },
395
+ {
396
+ name: 'disabled_at',
397
+ outputs: [
398
+ {
399
+ type: 'uint256',
400
+ name: '',
401
+ },
402
+ ],
403
+ inputs: [
404
+ {
405
+ type: 'address',
406
+ name: 'arg0',
407
+ },
408
+ ],
409
+ stateMutability: 'view',
410
+ type: 'function',
411
+ gas: 1995,
412
+ },
413
+ {
414
+ name: 'admin',
415
+ outputs: [
416
+ {
417
+ type: 'address',
418
+ name: '',
419
+ },
420
+ ],
421
+ inputs: [],
422
+ stateMutability: 'view',
423
+ type: 'function',
424
+ gas: 1871,
425
+ },
426
+ {
427
+ name: 'future_admin',
428
+ outputs: [
429
+ {
430
+ type: 'address',
431
+ name: '',
432
+ },
433
+ ],
434
+ inputs: [],
435
+ stateMutability: 'view',
436
+ type: 'function',
437
+ gas: 1901,
438
+ },
439
+ {
440
+ name: 'fund_admins_enabled',
441
+ outputs: [
442
+ {
443
+ type: 'bool',
444
+ name: '',
445
+ },
446
+ ],
447
+ inputs: [],
448
+ stateMutability: 'view',
449
+ type: 'function',
450
+ gas: 1931,
451
+ },
452
+ {
453
+ name: 'fund_admins',
454
+ outputs: [
455
+ {
456
+ type: 'bool',
457
+ name: '',
458
+ },
459
+ ],
460
+ inputs: [
461
+ {
462
+ type: 'address',
463
+ name: 'arg0',
464
+ },
465
+ ],
466
+ stateMutability: 'view',
467
+ type: 'function',
468
+ gas: 2115,
469
+ },
470
+ ];
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,43 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { Contract as EthersContract } from '@ethersproject/contracts';
11
+ import { getDefaultProvider } from 'ethers';
12
+ import { JsonRpcProvider } from '../../../providers/JsonRpcProvider';
13
+ import { Contract as EssentialEthContract } from '../../Contract';
14
+ import { abi } from './crv-abi';
15
+ const JSONABI = abi;
16
+ const rpcURL = 'https://free-eth-node.com/api/eth';
17
+ const ethersProvider = getDefaultProvider(rpcURL);
18
+ const essentialEthProvider = new JsonRpcProvider(rpcURL);
19
+ const contractAddress = '0x575CCD8e2D300e2377B43478339E364000318E2c';
20
+ const ethersContract = new EthersContract(contractAddress, JSONABI, ethersProvider);
21
+ const essentialEthContract = new EssentialEthContract(contractAddress, JSONABI, essentialEthProvider);
22
+ describe('CRV contract', () => {
23
+ const address = '0xf8cd644baf494d13406187cf8628754dca0a10c2';
24
+ it('should fetch "uint256" balanceOf', () => __awaiter(void 0, void 0, void 0, function* () {
25
+ const [ethersBalanceOf, essentialEthBalanceOf] = yield Promise.all([
26
+ ethersContract.balanceOf(address, {
27
+ gasLimit: 40955,
28
+ }),
29
+ essentialEthContract.balanceOf(address, {
30
+ gasLimit: 40955,
31
+ }),
32
+ ]);
33
+ expect(ethersBalanceOf.toString()).toStrictEqual(essentialEthBalanceOf.toString());
34
+ }));
35
+ it('should fetch "uint256" total_claimed', () => __awaiter(void 0, void 0, void 0, function* () {
36
+ const [ethersTotalClaimed, essentialEthTotalClaimed] = yield Promise.all([
37
+ ethersContract.total_claimed(address, {}),
38
+ essentialEthContract.total_claimed(address, {}),
39
+ ]);
40
+ expect(ethersTotalClaimed.toString()).toStrictEqual(essentialEthTotalClaimed.toString());
41
+ expect(ethersTotalClaimed.toNumber()).toStrictEqual(essentialEthTotalClaimed.toNumber());
42
+ }));
43
+ });
@@ -0,0 +1,2 @@
1
+ import { JSONABI } from '../../../types/Contract.types';
2
+ export declare const feiABI: JSONABI;