@pioneer-platform/eth-network 8.3.1 → 8.4.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.
package/lib/index.js CHANGED
@@ -97,6 +97,7 @@ var wait = require('wait-promise');
97
97
  var sleep = wait.sleep;
98
98
  //
99
99
  var web3;
100
+ var web3Base;
100
101
  var ETHERSCAN;
101
102
  var ETHPLORER;
102
103
  var PROVIDER;
@@ -105,6 +106,8 @@ var NODE_URL;
105
106
  var BASE = 1000000000000000000;
106
107
  var abi_1 = require("@ethersproject/abi");
107
108
  var constant_1 = require("./constant"); // Replace with your actual module file path
109
+ var BASE_NODE = 'https://base.llamarpc.com';
110
+ var NODES = [];
108
111
  module.exports = {
109
112
  init: function (settings) {
110
113
  //blockbook.init()
@@ -112,6 +115,7 @@ module.exports = {
112
115
  if (!settings) {
113
116
  //use default
114
117
  web3 = new Web3(process.env['PARITY_ARCHIVE_NODE']);
118
+ web3Base = new Web3(process.env['BASE_NODE'] || 'https://base.llamarpc.com');
115
119
  ETHERSCAN = new providers_1.EtherscanProvider('mainnet', process.env['ETHERSCAN_API_KEY']);
116
120
  PROVIDER = new ethers_1.ethers.providers.InfuraProvider('mainnet', process.env['INFURA_API_KEY']);
117
121
  NODE_URL = process.env['PARITY_ARCHIVE_NODE'];
@@ -136,6 +140,26 @@ module.exports = {
136
140
  web3 = new Web3(process.env['PARITY_ARCHIVE_NODE']);
137
141
  }
138
142
  },
143
+ getNodes: function () {
144
+ return NODES;
145
+ },
146
+ addNode: function (node) {
147
+ if (!node.networkId)
148
+ throw Error('missing networkId');
149
+ if (!node.service)
150
+ throw Error('missing networkId');
151
+ return NODES.push(node);
152
+ },
153
+ addNodes: function (nodes) {
154
+ for (var i = 0; i < nodes.length; i++) {
155
+ var node = nodes[i];
156
+ if (!node.networkId)
157
+ throw Error('missing networkId');
158
+ if (!node.service)
159
+ throw Error('missing networkId');
160
+ return NODES.push(node);
161
+ }
162
+ },
139
163
  decodeTx: function (tx) {
140
164
  return decode_tx(tx);
141
165
  },
@@ -175,6 +199,9 @@ module.exports = {
175
199
  getAllPioneers: function () {
176
200
  return get_all_pioneers();
177
201
  },
202
+ getAllPioneersBase: function () {
203
+ return get_all_pioneers_base();
204
+ },
178
205
  getAllTokensEth: function (address) {
179
206
  return get_all_tokens_blockbook(address);
180
207
  },
@@ -220,6 +247,15 @@ module.exports = {
220
247
  getBalanceTokens: function (address) {
221
248
  return get_balance_tokens(address);
222
249
  },
250
+ getBalanceAddressByNetwork: function (networkId, address) {
251
+ return get_balance_by_network(networkId, address);
252
+ },
253
+ getBalanceTokenByNetwork: function (networkId, address, token) {
254
+ return get_balance_token_by_network(networkId, address, token);
255
+ },
256
+ getBalanceTokensByNetwork: function (networkId, address) {
257
+ return get_balance_tokens_by_network(networkId, address);
258
+ },
223
259
  broadcast: function (tx) {
224
260
  return broadcast_transaction(tx);
225
261
  }
@@ -282,6 +318,66 @@ var get_all_pioneers = function () {
282
318
  });
283
319
  });
284
320
  };
321
+ var get_all_pioneers_base = function () {
322
+ return __awaiter(this, void 0, void 0, function () {
323
+ var tag, output, nftContract, metadataContract, totalSupply, i, owner, imageInfo, imageName, baseImageUrl, fullImageUrl, e_3, e_4;
324
+ return __generator(this, function (_a) {
325
+ switch (_a.label) {
326
+ case 0:
327
+ tag = TAG + " | get_all_pioneers_base | ";
328
+ _a.label = 1;
329
+ case 1:
330
+ _a.trys.push([1, 10, , 11]);
331
+ output = {};
332
+ log.info(tag, "PIONEER_CONTRACT_ADDRESS_BASE: ", constant_1.PIONEER_CONTRACT_ADDRESS_BASE);
333
+ nftContract = new web3Base.eth.Contract(constant_1.ERC721_ABI, constant_1.PIONEER_CONTRACT_ADDRESS_BASE);
334
+ metadataContract = new web3Base.eth.Contract(constant_1.METADATA_ABI, constant_1.PIONEER_METADATA_CONTRACT_ADDRESS_BASE);
335
+ return [4 /*yield*/, nftContract.methods.totalSupply().call()];
336
+ case 2:
337
+ totalSupply = _a.sent();
338
+ log.info("totalSupply: ", totalSupply);
339
+ output['totalSupply'] = totalSupply;
340
+ output['owners'] = [];
341
+ output['images'] = []; // add an images array to output
342
+ i = 0;
343
+ _a.label = 3;
344
+ case 3:
345
+ if (!(i < totalSupply)) return [3 /*break*/, 9];
346
+ _a.label = 4;
347
+ case 4:
348
+ _a.trys.push([4, 7, , 8]);
349
+ return [4 /*yield*/, nftContract.methods.ownerOf(i).call()];
350
+ case 5:
351
+ owner = _a.sent();
352
+ log.info(tag, "owner: ", owner);
353
+ output['owners'].push(owner.toLowerCase());
354
+ return [4 /*yield*/, metadataContract.methods.getAttributes(i).call()];
355
+ case 6:
356
+ imageInfo = _a.sent();
357
+ log.info(tag, "imageInfo: ", imageInfo);
358
+ imageName = JSON.parse(imageInfo['0'])["0-backgrounds"];
359
+ baseImageUrl = "https://ipfs.io/ipfs/bafybeiezdzjofkcpiwy5hlvxwzkgcztxc6xtodh3q7eddfjmqsguqs47aa/0-backgrounds/";
360
+ fullImageUrl = baseImageUrl + imageName + ".png";
361
+ // Add this image URL to the images array in output
362
+ output['images'].push({ address: owner.toLowerCase(), image: fullImageUrl });
363
+ return [3 /*break*/, 8];
364
+ case 7:
365
+ e_3 = _a.sent();
366
+ log.debug("no image for: ", i);
367
+ return [3 /*break*/, 8];
368
+ case 8:
369
+ i++;
370
+ return [3 /*break*/, 3];
371
+ case 9: return [2 /*return*/, output];
372
+ case 10:
373
+ e_4 = _a.sent();
374
+ console.error(tag, e_4);
375
+ return [3 /*break*/, 11];
376
+ case 11: return [2 /*return*/];
377
+ }
378
+ });
379
+ });
380
+ };
285
381
  var decode_tx = function (tx) {
286
382
  return __awaiter(this, void 0, void 0, function () {
287
383
  var tag, data;
@@ -300,7 +396,7 @@ var decode_tx = function (tx) {
300
396
  };
301
397
  var build_airdrop_claim = function (address) {
302
398
  return __awaiter(this, void 0, void 0, function () {
303
- var tag, airdropContract, accountInfo, AirDropInterface, data, e_3;
399
+ var tag, airdropContract, accountInfo, AirDropInterface, data, e_5;
304
400
  return __generator(this, function (_a) {
305
401
  switch (_a.label) {
306
402
  case 0:
@@ -326,8 +422,8 @@ var build_airdrop_claim = function (address) {
326
422
  ]);
327
423
  return [2 /*return*/, data];
328
424
  case 3:
329
- e_3 = _a.sent();
330
- console.error(tag, e_3);
425
+ e_5 = _a.sent();
426
+ console.error(tag, e_5);
331
427
  return [3 /*break*/, 4];
332
428
  case 4: return [2 /*return*/];
333
429
  }
@@ -336,7 +432,7 @@ var build_airdrop_claim = function (address) {
336
432
  };
337
433
  var check_airdrop_claim = function (address) {
338
434
  return __awaiter(this, void 0, void 0, function () {
339
- var tag, accountInfo, output, airdropContract, isClaimed, e_4;
435
+ var tag, accountInfo, output, airdropContract, isClaimed, e_6;
340
436
  return __generator(this, function (_a) {
341
437
  switch (_a.label) {
342
438
  case 0:
@@ -364,8 +460,8 @@ var check_airdrop_claim = function (address) {
364
460
  _a.label = 5;
365
461
  case 5: return [2 /*return*/, output];
366
462
  case 6:
367
- e_4 = _a.sent();
368
- console.error(tag, e_4);
463
+ e_6 = _a.sent();
464
+ console.error(tag, e_6);
369
465
  return [3 /*break*/, 7];
370
466
  case 7: return [2 /*return*/];
371
467
  }
@@ -484,7 +580,7 @@ var check_airdrop_claim = function (address) {
484
580
  // }
485
581
  var get_token_transfer_data = function (toAddress, amount, contract) {
486
582
  return __awaiter(this, void 0, void 0, function () {
487
- var tag, minABI, newContract, decimalPlaces, amountInSmallestUnit, amountHex, amountHexPadded, tokenData, e_5;
583
+ var tag, minABI, newContract, decimalPlaces, amountInSmallestUnit, amountHex, amountHexPadded, tokenData, e_7;
488
584
  return __generator(this, function (_a) {
489
585
  switch (_a.label) {
490
586
  case 0:
@@ -533,8 +629,8 @@ var get_token_transfer_data = function (toAddress, amount, contract) {
533
629
  }, [toAddress, amountInSmallestUnit.toString()]);
534
630
  return [2 /*return*/, tokenData];
535
631
  case 3:
536
- e_5 = _a.sent();
537
- console.error(tag, e_5);
632
+ e_7 = _a.sent();
633
+ console.error(tag, e_7);
538
634
  return [3 /*break*/, 4];
539
635
  case 4: return [2 /*return*/];
540
636
  }
@@ -607,7 +703,7 @@ var get_token_transfer_data = function (toAddress, amount, contract) {
607
703
  // }
608
704
  var get_symbol_from_contract = function (address) {
609
705
  return __awaiter(this, void 0, void 0, function () {
610
- var tag, contract, tokenName, e_6;
706
+ var tag, contract, tokenName, e_8;
611
707
  return __generator(this, function (_a) {
612
708
  switch (_a.label) {
613
709
  case 0:
@@ -624,8 +720,8 @@ var get_symbol_from_contract = function (address) {
624
720
  //log.debug(tag,"tokenName: ",tokenName)
625
721
  return [2 /*return*/, tokenName];
626
722
  case 3:
627
- e_6 = _a.sent();
628
- console.error(tag, e_6);
723
+ e_8 = _a.sent();
724
+ console.error(tag, e_8);
629
725
  return [3 /*break*/, 4];
630
726
  case 4: return [2 /*return*/];
631
727
  }
@@ -634,7 +730,7 @@ var get_symbol_from_contract = function (address) {
634
730
  };
635
731
  var get_stream = function (streamId) {
636
732
  return __awaiter(this, void 0, void 0, function () {
637
- var tag, sablierContract, totalFox, e_7;
733
+ var tag, sablierContract, totalFox, e_9;
638
734
  return __generator(this, function (_a) {
639
735
  switch (_a.label) {
640
736
  case 0:
@@ -654,8 +750,8 @@ var get_stream = function (streamId) {
654
750
  //log.debug(tag,"totalFox: ",totalFox)
655
751
  return [2 /*return*/, totalFox];
656
752
  case 3:
657
- e_7 = _a.sent();
658
- console.error(tag, e_7);
753
+ e_9 = _a.sent();
754
+ console.error(tag, e_9);
659
755
  return [3 /*break*/, 4];
660
756
  case 4: return [2 /*return*/];
661
757
  }
@@ -664,7 +760,7 @@ var get_stream = function (streamId) {
664
760
  };
665
761
  var get_tx_count = function (address, options) {
666
762
  return __awaiter(this, void 0, void 0, function () {
667
- var tag, txsConfirmed, txsWithPending, pending, e_8;
763
+ var tag, txsConfirmed, txsWithPending, pending, e_10;
668
764
  return __generator(this, function (_a) {
669
765
  switch (_a.label) {
670
766
  case 0:
@@ -692,8 +788,8 @@ var get_tx_count = function (address, options) {
692
788
  pending: pending
693
789
  }];
694
790
  case 4:
695
- e_8 = _a.sent();
696
- console.error(tag, e_8);
791
+ e_10 = _a.sent();
792
+ console.error(tag, e_10);
697
793
  return [3 /*break*/, 5];
698
794
  case 5: return [2 /*return*/];
699
795
  }
@@ -702,7 +798,7 @@ var get_tx_count = function (address, options) {
702
798
  };
703
799
  var get_pool_percent = function (amountFox, amountEth, poolAddress) {
704
800
  return __awaiter(this, void 0, void 0, function () {
705
- var tag, lpContract, foxContract, wethContract, totalSupply, totalFox, totalEth, result, lpTokens, percent, e_9;
801
+ var tag, lpContract, foxContract, wethContract, totalSupply, totalFox, totalEth, result, lpTokens, percent, e_11;
706
802
  return __generator(this, function (_a) {
707
803
  switch (_a.label) {
708
804
  case 0:
@@ -736,8 +832,8 @@ var get_pool_percent = function (amountFox, amountEth, poolAddress) {
736
832
  log.debug("percent: ", percent);
737
833
  return [2 /*return*/, percent];
738
834
  case 5:
739
- e_9 = _a.sent();
740
- console.error(tag, e_9);
835
+ e_11 = _a.sent();
836
+ console.error(tag, e_11);
741
837
  return [3 /*break*/, 6];
742
838
  case 6: return [2 /*return*/];
743
839
  }
@@ -746,7 +842,7 @@ var get_pool_percent = function (amountFox, amountEth, poolAddress) {
746
842
  };
747
843
  var get_balances = function (addresses) {
748
844
  return __awaiter(this, void 0, void 0, function () {
749
- var tag, actions, i, address, action, result, output, i, entry, balance, e_10;
845
+ var tag, actions, i, address, action, result, output, i, entry, balance, e_12;
750
846
  return __generator(this, function (_a) {
751
847
  switch (_a.label) {
752
848
  case 0:
@@ -778,8 +874,8 @@ var get_balances = function (addresses) {
778
874
  }
779
875
  return [2 /*return*/, output];
780
876
  case 3:
781
- e_10 = _a.sent();
782
- console.error(tag, e_10);
877
+ e_12 = _a.sent();
878
+ console.error(tag, e_12);
783
879
  return [3 /*break*/, 4];
784
880
  case 4: return [2 /*return*/];
785
881
  }
@@ -830,7 +926,7 @@ var rpcCallBatch = function (actions) { return __awaiter(void 0, void 0, void 0,
830
926
  //get_approval_status
831
927
  var get_allowance = function (tokenAddress, spender, sender) {
832
928
  return __awaiter(this, void 0, void 0, function () {
833
- var tag, contract, allowance, e_11;
929
+ var tag, contract, allowance, e_13;
834
930
  return __generator(this, function (_a) {
835
931
  switch (_a.label) {
836
932
  case 0:
@@ -844,8 +940,8 @@ var get_allowance = function (tokenAddress, spender, sender) {
844
940
  allowance = _a.sent();
845
941
  return [2 /*return*/, allowance];
846
942
  case 3:
847
- e_11 = _a.sent();
848
- console.error(tag, e_11);
943
+ e_13 = _a.sent();
944
+ console.error(tag, e_13);
849
945
  return [3 /*break*/, 4];
850
946
  case 4: return [2 /*return*/];
851
947
  }
@@ -854,7 +950,7 @@ var get_allowance = function (tokenAddress, spender, sender) {
854
950
  };
855
951
  var get_all_tokens_blockbook = function (address) {
856
952
  return __awaiter(this, void 0, void 0, function () {
857
- var tag, ethInto, e_12;
953
+ var tag, ethInto, e_14;
858
954
  return __generator(this, function (_a) {
859
955
  switch (_a.label) {
860
956
  case 0:
@@ -868,8 +964,8 @@ var get_all_tokens_blockbook = function (address) {
868
964
  log.debug(tag, "ethInto: ", ethInto);
869
965
  return [2 /*return*/, true];
870
966
  case 3:
871
- e_12 = _a.sent();
872
- console.error(tag, e_12);
967
+ e_14 = _a.sent();
968
+ console.error(tag, e_14);
873
969
  return [3 /*break*/, 4];
874
970
  case 4: return [2 /*return*/];
875
971
  }
@@ -878,7 +974,7 @@ var get_all_tokens_blockbook = function (address) {
878
974
  };
879
975
  var get_nfts = function (address) {
880
976
  return __awaiter(this, void 0, void 0, function () {
881
- var tag, ethInfo, e_13;
977
+ var tag, ethInfo, e_15;
882
978
  return __generator(this, function (_a) {
883
979
  switch (_a.label) {
884
980
  case 0:
@@ -895,8 +991,8 @@ var get_nfts = function (address) {
895
991
  log.debug(tag, "ethInfo: ", ethInfo);
896
992
  return [2 /*return*/, ethInfo];
897
993
  case 3:
898
- e_13 = _a.sent();
899
- console.error(tag, e_13);
994
+ e_15 = _a.sent();
995
+ console.error(tag, e_15);
900
996
  return [3 /*break*/, 4];
901
997
  case 4: return [2 /*return*/];
902
998
  }
@@ -905,7 +1001,7 @@ var get_nfts = function (address) {
905
1001
  };
906
1002
  var get_pool_positions = function (address) {
907
1003
  return __awaiter(this, void 0, void 0, function () {
908
- var tag, ethInfo, e_14;
1004
+ var tag, ethInfo, e_16;
909
1005
  return __generator(this, function (_a) {
910
1006
  switch (_a.label) {
911
1007
  case 0:
@@ -922,8 +1018,8 @@ var get_pool_positions = function (address) {
922
1018
  log.debug(tag, "ethInfo: ", ethInfo);
923
1019
  return [2 /*return*/, ethInfo];
924
1020
  case 3:
925
- e_14 = _a.sent();
926
- console.error(tag, e_14);
1021
+ e_16 = _a.sent();
1022
+ console.error(tag, e_16);
927
1023
  return [3 /*break*/, 4];
928
1024
  case 4: return [2 /*return*/];
929
1025
  }
@@ -979,7 +1075,7 @@ var get_memo_data = function (swap) {
979
1075
  */
980
1076
  var estimate_fee = function (sourceAsset, params) {
981
1077
  return __awaiter(this, void 0, void 0, function () {
982
- var tag, checkSummedAddress, decimal, provider, contract, estimateGas, entry, fees, minimumWeiCost, e_15;
1078
+ var tag, checkSummedAddress, decimal, provider, contract, estimateGas, entry, fees, minimumWeiCost, e_17;
983
1079
  var _a;
984
1080
  return __generator(this, function (_b) {
985
1081
  switch (_b.label) {
@@ -1028,9 +1124,9 @@ var estimate_fee = function (sourceAsset, params) {
1028
1124
  minimumWeiCost = minimumWeiCost.mul(estimateGas.toNumber());
1029
1125
  return [2 /*return*/, minimumWeiCost];
1030
1126
  case 4:
1031
- e_15 = _b.sent();
1032
- log.error(tag, e_15);
1033
- throw e_15;
1127
+ e_17 = _b.sent();
1128
+ log.error(tag, e_17);
1129
+ throw e_17;
1034
1130
  case 5: return [2 /*return*/];
1035
1131
  }
1036
1132
  });
@@ -1039,7 +1135,7 @@ var estimate_fee = function (sourceAsset, params) {
1039
1135
  var get_gas_limit = function (_a) {
1040
1136
  var asset = _a.asset, recipient = _a.recipient, amount = _a.amount, memo = _a.memo;
1041
1137
  return __awaiter(this, void 0, void 0, function () {
1042
- var tag, txAmount, assetAddress, estimate, contract, transactionRequest, e_16;
1138
+ var tag, txAmount, assetAddress, estimate, contract, transactionRequest, e_18;
1043
1139
  return __generator(this, function (_b) {
1044
1140
  switch (_b.label) {
1045
1141
  case 0:
@@ -1064,7 +1160,7 @@ var get_gas_limit = function (_a) {
1064
1160
  return [3 /*break*/, 5];
1065
1161
  case 3:
1066
1162
  transactionRequest = {
1067
- from: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
1163
+ from: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", //address with lots of eth
1068
1164
  to: recipient,
1069
1165
  value: txAmount,
1070
1166
  data: memo ? (0, utils_2.toUtf8Bytes)(memo) : undefined,
@@ -1075,9 +1171,9 @@ var get_gas_limit = function (_a) {
1075
1171
  _b.label = 5;
1076
1172
  case 5: return [2 /*return*/, estimate];
1077
1173
  case 6:
1078
- e_16 = _b.sent();
1079
- log.error(tag, e_16);
1080
- throw e_16;
1174
+ e_18 = _b.sent();
1175
+ log.error(tag, e_18);
1176
+ throw e_18;
1081
1177
  case 7: return [2 /*return*/];
1082
1178
  }
1083
1179
  });
@@ -1086,7 +1182,7 @@ var get_gas_limit = function (_a) {
1086
1182
  var get_fees = function (params) {
1087
1183
  var _a;
1088
1184
  return __awaiter(this, void 0, void 0, function () {
1089
- var tag, response, averageWei, fastWei, fastestWei, gasPrices, fastGP, fastestGP, averageGP, gasLimit, output, e_17;
1185
+ var tag, response, averageWei, fastWei, fastestWei, gasPrices, fastGP, fastestGP, averageGP, gasLimit, output, e_19;
1090
1186
  return __generator(this, function (_b) {
1091
1187
  switch (_b.label) {
1092
1188
  case 0:
@@ -1141,9 +1237,9 @@ var get_fees = function (params) {
1141
1237
  };
1142
1238
  return [2 /*return*/, output];
1143
1239
  case 4:
1144
- e_17 = _b.sent();
1145
- log.error(tag, e_17);
1146
- throw e_17;
1240
+ e_19 = _b.sent();
1241
+ log.error(tag, e_19);
1242
+ throw e_19;
1147
1243
  case 5: return [2 /*return*/];
1148
1244
  }
1149
1245
  });
@@ -1151,7 +1247,7 @@ var get_fees = function (params) {
1151
1247
  };
1152
1248
  var broadcast_transaction = function (tx) {
1153
1249
  return __awaiter(this, void 0, void 0, function () {
1154
- var tag, output, resp, e_18;
1250
+ var tag, output, resp, e_20;
1155
1251
  return __generator(this, function (_a) {
1156
1252
  switch (_a.label) {
1157
1253
  case 0:
@@ -1194,17 +1290,34 @@ var broadcast_transaction = function (tx) {
1194
1290
  output.txid = resp.result;
1195
1291
  return [2 /*return*/, output];
1196
1292
  case 3:
1197
- e_18 = _a.sent();
1198
- log.error(tag, e_18);
1199
- throw e_18;
1293
+ e_20 = _a.sent();
1294
+ log.error(tag, e_20);
1295
+ throw e_20;
1200
1296
  case 4: return [2 /*return*/];
1201
1297
  }
1202
1298
  });
1203
1299
  });
1204
1300
  };
1301
+ var get_balance_tokens_by_network = function (networkId, address) {
1302
+ return __awaiter(this, void 0, void 0, function () {
1303
+ var tag, output;
1304
+ return __generator(this, function (_a) {
1305
+ tag = TAG + " | get_balance_tokens_by_network | ";
1306
+ try {
1307
+ output = {};
1308
+ //@TODO zapper? covalent?
1309
+ return [2 /*return*/, ""];
1310
+ }
1311
+ catch (e) {
1312
+ console.error(tag, e);
1313
+ }
1314
+ return [2 /*return*/];
1315
+ });
1316
+ });
1317
+ };
1205
1318
  var get_balance_tokens = function (address) {
1206
1319
  return __awaiter(this, void 0, void 0, function () {
1207
- var tag, balances, valueUsds, coinInfo, resp, tokenInfo, i, info, symbol, rate, balance, e_19;
1320
+ var tag, balances, valueUsds, coinInfo, resp, tokenInfo, i, info, symbol, rate, balance, e_21;
1208
1321
  return __generator(this, function (_a) {
1209
1322
  switch (_a.label) {
1210
1323
  case 0:
@@ -1249,17 +1362,54 @@ var get_balance_tokens = function (address) {
1249
1362
  }
1250
1363
  return [2 /*return*/, { balances: balances, valueUsds: valueUsds, coinInfo: coinInfo }];
1251
1364
  case 3:
1252
- e_19 = _a.sent();
1253
- console.error(tag, e_19);
1365
+ e_21 = _a.sent();
1366
+ console.error(tag, e_21);
1254
1367
  return [3 /*break*/, 4];
1255
1368
  case 4: return [2 /*return*/];
1256
1369
  }
1257
1370
  });
1258
1371
  });
1259
1372
  };
1373
+ var get_balance_token_by_network = function (networkId, address, token) {
1374
+ return __awaiter(this, void 0, void 0, function () {
1375
+ var tag, output, node, web3_2, contract, decimals, balance, e_22;
1376
+ return __generator(this, function (_a) {
1377
+ switch (_a.label) {
1378
+ case 0:
1379
+ tag = TAG + " | get_balance_token_by_network | ";
1380
+ _a.label = 1;
1381
+ case 1:
1382
+ _a.trys.push([1, 4, , 5]);
1383
+ output = {};
1384
+ node = NODES.find(function (n) { return n.networkId == networkId; });
1385
+ if (!node)
1386
+ throw Error("101: missing node! for network " + networkId);
1387
+ web3_2 = new Web3(node.service);
1388
+ contract = new web3_2.eth.Contract(constant_1.ERC20ABI, token);
1389
+ return [4 /*yield*/, contract.methods.decimals().call()
1390
+ //log.debug(tag,"decimals: ",decimals)
1391
+ ];
1392
+ case 2:
1393
+ decimals = _a.sent();
1394
+ return [4 /*yield*/, contract.methods.balanceOf(address).call()
1395
+ //log.debug(tag,"balance: ",balance)
1396
+ ];
1397
+ case 3:
1398
+ balance = _a.sent();
1399
+ //log.debug(tag,"balance: ",balance)
1400
+ return [2 /*return*/, balance / Math.pow(10, decimals)];
1401
+ case 4:
1402
+ e_22 = _a.sent();
1403
+ console.error(tag, e_22);
1404
+ return [3 /*break*/, 5];
1405
+ case 5: return [2 /*return*/];
1406
+ }
1407
+ });
1408
+ });
1409
+ };
1260
1410
  var get_balance_token = function (address, token) {
1261
1411
  return __awaiter(this, void 0, void 0, function () {
1262
- var tag, contract, decimals, balance, e_20;
1412
+ var tag, contract, decimals, balance, e_23;
1263
1413
  return __generator(this, function (_a) {
1264
1414
  switch (_a.label) {
1265
1415
  case 0:
@@ -1281,17 +1431,46 @@ var get_balance_token = function (address, token) {
1281
1431
  //log.debug(tag,"balance: ",balance)
1282
1432
  return [2 /*return*/, balance / Math.pow(10, decimals)];
1283
1433
  case 4:
1284
- e_20 = _a.sent();
1285
- console.error(tag, e_20);
1434
+ e_23 = _a.sent();
1435
+ console.error(tag, e_23);
1286
1436
  return [3 /*break*/, 5];
1287
1437
  case 5: return [2 /*return*/];
1288
1438
  }
1289
1439
  });
1290
1440
  });
1291
1441
  };
1442
+ var get_balance_by_network = function (networkId, address) {
1443
+ return __awaiter(this, void 0, void 0, function () {
1444
+ var tag, output, node, web3_3, e_24;
1445
+ return __generator(this, function (_a) {
1446
+ switch (_a.label) {
1447
+ case 0:
1448
+ tag = TAG + " | get_balance_by_network | ";
1449
+ _a.label = 1;
1450
+ case 1:
1451
+ _a.trys.push([1, 3, , 4]);
1452
+ output = {};
1453
+ node = NODES.find(function (n) { return n.networkId == networkId; });
1454
+ if (!node)
1455
+ throw Error("101: missing node! for network " + networkId);
1456
+ web3_3 = new Web3(node.service);
1457
+ return [4 /*yield*/, web3_3.eth.getBalance(address)];
1458
+ case 2:
1459
+ //normal tx info
1460
+ output = (_a.sent()) / BASE;
1461
+ return [2 /*return*/, output];
1462
+ case 3:
1463
+ e_24 = _a.sent();
1464
+ console.error(tag, e_24);
1465
+ return [3 /*break*/, 4];
1466
+ case 4: return [2 /*return*/];
1467
+ }
1468
+ });
1469
+ });
1470
+ };
1292
1471
  var get_balance = function (address) {
1293
1472
  return __awaiter(this, void 0, void 0, function () {
1294
- var tag, output, e_21;
1473
+ var tag, output, e_25;
1295
1474
  return __generator(this, function (_a) {
1296
1475
  switch (_a.label) {
1297
1476
  case 0:
@@ -1306,8 +1485,8 @@ var get_balance = function (address) {
1306
1485
  output = (_a.sent()) / BASE;
1307
1486
  return [2 /*return*/, output];
1308
1487
  case 3:
1309
- e_21 = _a.sent();
1310
- console.error(tag, e_21);
1488
+ e_25 = _a.sent();
1489
+ console.error(tag, e_25);
1311
1490
  return [3 /*break*/, 4];
1312
1491
  case 4: return [2 /*return*/];
1313
1492
  }
@@ -1316,7 +1495,7 @@ var get_balance = function (address) {
1316
1495
  };
1317
1496
  var get_transactions = function (address, options) {
1318
1497
  return __awaiter(this, void 0, void 0, function () {
1319
- var tag, output, ethInfo, e_22;
1498
+ var tag, output, ethInfo, e_26;
1320
1499
  return __generator(this, function (_a) {
1321
1500
  switch (_a.label) {
1322
1501
  case 0:
@@ -1330,8 +1509,8 @@ var get_transactions = function (address, options) {
1330
1509
  ethInfo = _a.sent();
1331
1510
  return [2 /*return*/, ethInfo];
1332
1511
  case 3:
1333
- e_22 = _a.sent();
1334
- console.error(tag, e_22);
1512
+ e_26 = _a.sent();
1513
+ console.error(tag, e_26);
1335
1514
  return [3 /*break*/, 4];
1336
1515
  case 4: return [2 /*return*/];
1337
1516
  }
@@ -1340,7 +1519,7 @@ var get_transactions = function (address, options) {
1340
1519
  };
1341
1520
  var get_transaction = function (txid) {
1342
1521
  return __awaiter(this, void 0, void 0, function () {
1343
- var tag, output, _a, _b, e_23;
1522
+ var tag, output, _a, _b, e_27;
1344
1523
  return __generator(this, function (_c) {
1345
1524
  switch (_c.label) {
1346
1525
  case 0:
@@ -1365,8 +1544,8 @@ var get_transaction = function (txid) {
1365
1544
  _b.receipt = _c.sent();
1366
1545
  return [2 /*return*/, output];
1367
1546
  case 4:
1368
- e_23 = _c.sent();
1369
- console.error(tag, e_23);
1547
+ e_27 = _c.sent();
1548
+ console.error(tag, e_27);
1370
1549
  return [3 /*break*/, 5];
1371
1550
  case 5: return [2 /*return*/];
1372
1551
  }
@@ -1375,7 +1554,7 @@ var get_transaction = function (txid) {
1375
1554
  };
1376
1555
  var check_online_status = function () {
1377
1556
  return __awaiter(this, void 0, void 0, function () {
1378
- var tag, output, _a, _b, _c, _d, networkName, _e, _f, e_24;
1557
+ var tag, output, _a, _b, _c, _d, networkName, _e, _f, e_28;
1379
1558
  return __generator(this, function (_g) {
1380
1559
  switch (_g.label) {
1381
1560
  case 0:
@@ -1443,8 +1622,8 @@ var check_online_status = function () {
1443
1622
  _f.syncing = _g.sent();
1444
1623
  return [2 /*return*/, output];
1445
1624
  case 8:
1446
- e_24 = _g.sent();
1447
- console.error(tag, e_24);
1625
+ e_28 = _g.sent();
1626
+ console.error(tag, e_28);
1448
1627
  return [3 /*break*/, 9];
1449
1628
  case 9: return [2 /*return*/];
1450
1629
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pioneer-platform/eth-network",
3
- "version": "8.3.1",
3
+ "version": "8.4.0",
4
4
  "main": "./lib/index.js",
5
5
  "types": "./lib/index.d.ts",
6
6
  "scripts": {
@@ -39,5 +39,5 @@
39
39
  ],
40
40
  "author": "Bithighlander <pioneer@gmail.com>",
41
41
  "license": "GPL",
42
- "gitHead": "bb1ba4da55a6b00c29e335c6680a591cf319ce6b"
42
+ "gitHead": "aeae28273014ab69b42f22abec159c6693a56c40"
43
43
  }