@fileverse-dev/formulajs 4.4.11-mod-15-patch-1 → 4.4.11-mod-15-patch-2
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/browser/formula.js +197 -161
- package/lib/browser/formula.min.js +2 -2
- package/lib/browser/formula.min.js.map +1 -1
- package/lib/cjs/index.cjs +68 -25
- package/lib/esm/crypto-constants.mjs +3 -24
- package/lib/esm/index.mjs +68 -25
- package/package.json +1 -1
- package/types/cjs/index.d.cts +1 -1
- package/types/esm/index.d.mts +1 -1
package/lib/browser/formula.js
CHANGED
|
@@ -1,38 +1,4 @@
|
|
|
1
|
-
/* @fileverse-dev/formulajs v4.4.11-mod-15-patch-
|
|
2
|
-
function _slicedToArray(r, e) {
|
|
3
|
-
return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
function _nonIterableRest() {
|
|
7
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
function _iterableToArrayLimit(r, l) {
|
|
11
|
-
var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
|
|
12
|
-
if (null != t) {
|
|
13
|
-
var e, n, i, u, a = [], f = !0, o = !1;
|
|
14
|
-
try {
|
|
15
|
-
if (i = (t = t.call(r)).next, 0 === l) {
|
|
16
|
-
if (Object(t) !== t) return;
|
|
17
|
-
f = !1;
|
|
18
|
-
} else for (;!(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0) ;
|
|
19
|
-
} catch (r) {
|
|
20
|
-
o = !0, n = r;
|
|
21
|
-
} finally {
|
|
22
|
-
try {
|
|
23
|
-
if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
|
|
24
|
-
} finally {
|
|
25
|
-
if (o) throw n;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return a;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function _arrayWithHoles(r) {
|
|
33
|
-
if (Array.isArray(r)) return r;
|
|
34
|
-
}
|
|
35
|
-
|
|
1
|
+
/* @fileverse-dev/formulajs v4.4.11-mod-15-patch-2 */
|
|
36
2
|
function _regeneratorRuntime() {
|
|
37
3
|
"use strict";
|
|
38
4
|
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() {
|
|
@@ -323,6 +289,40 @@ function _asyncToGenerator(n) {
|
|
|
323
289
|
};
|
|
324
290
|
}
|
|
325
291
|
|
|
292
|
+
function _slicedToArray(r, e) {
|
|
293
|
+
return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
function _nonIterableRest() {
|
|
297
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
function _iterableToArrayLimit(r, l) {
|
|
301
|
+
var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
|
|
302
|
+
if (null != t) {
|
|
303
|
+
var e, n, i, u, a = [], f = !0, o = !1;
|
|
304
|
+
try {
|
|
305
|
+
if (i = (t = t.call(r)).next, 0 === l) {
|
|
306
|
+
if (Object(t) !== t) return;
|
|
307
|
+
f = !1;
|
|
308
|
+
} else for (;!(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0) ;
|
|
309
|
+
} catch (r) {
|
|
310
|
+
o = !0, n = r;
|
|
311
|
+
} finally {
|
|
312
|
+
try {
|
|
313
|
+
if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
|
|
314
|
+
} finally {
|
|
315
|
+
if (o) throw n;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
return a;
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
function _arrayWithHoles(r) {
|
|
323
|
+
if (Array.isArray(r)) return r;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
326
|
function _toConsumableArray(r) {
|
|
327
327
|
return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
|
|
328
328
|
}
|
|
@@ -6581,12 +6581,39 @@ function _typeof(o) {
|
|
|
6581
6581
|
var n = array.length;
|
|
6582
6582
|
return 1 - NORM.S.DIST((AVERAGE(array) - x) / (sigma / Math.sqrt(n)), true);
|
|
6583
6583
|
};
|
|
6584
|
-
function
|
|
6585
|
-
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
}
|
|
6589
|
-
|
|
6584
|
+
function PNL() {
|
|
6585
|
+
var _argsToArray = argsToArray(arguments), _argsToArray2 = _slicedToArray(_argsToArray, 2), A = _argsToArray2[0], B = _argsToArray2[1];
|
|
6586
|
+
if (typeof A === "number" && typeof B === "number") {
|
|
6587
|
+
return A - B;
|
|
6588
|
+
}
|
|
6589
|
+
if (Array.isArray(A) && Array.isArray(B) && typeof A[0] === "number") {
|
|
6590
|
+
if (A.length !== B.length) throw new Error("1D arrays must match in length");
|
|
6591
|
+
return A.reduce((function(sum, val, i) {
|
|
6592
|
+
return sum + (val - B[i]);
|
|
6593
|
+
}), 0);
|
|
6594
|
+
}
|
|
6595
|
+
if (Array.isArray(A[0]) && typeof A[0][0] === "number") {
|
|
6596
|
+
var total = 0;
|
|
6597
|
+
for (var i = 0; i < A.length; i++) {
|
|
6598
|
+
if (A[i].length !== B[i].length) throw new Error("Row ".concat(i, " length mismatch"));
|
|
6599
|
+
for (var j = 0; j < A[i].length; j++) {
|
|
6600
|
+
total += A[i][j] - B[i][j];
|
|
6601
|
+
}
|
|
6602
|
+
}
|
|
6603
|
+
return total;
|
|
6604
|
+
}
|
|
6605
|
+
if (Array.isArray(A[0][0])) {
|
|
6606
|
+
var _total = 0;
|
|
6607
|
+
for (var _i5 = 0; _i5 < A.length; _i5++) {
|
|
6608
|
+
for (var _j = 0; _j < A[_i5].length; _j++) {
|
|
6609
|
+
for (var k = 0; k < A[_i5][_j].length; k++) {
|
|
6610
|
+
_total += A[_i5][_j][k] - B[_i5][_j][k];
|
|
6611
|
+
}
|
|
6612
|
+
}
|
|
6613
|
+
}
|
|
6614
|
+
return _total;
|
|
6615
|
+
}
|
|
6616
|
+
throw new Error("Unsupported or mismatched structure");
|
|
6590
6617
|
}
|
|
6591
6618
|
function ABS(number) {
|
|
6592
6619
|
number = parseNumber(number);
|
|
@@ -7448,6 +7475,9 @@ function _typeof(o) {
|
|
|
7448
7475
|
}
|
|
7449
7476
|
function SUM() {
|
|
7450
7477
|
var result = 0;
|
|
7478
|
+
console.log("LLLLO", argsToArray(arguments), {
|
|
7479
|
+
arguments: arguments
|
|
7480
|
+
});
|
|
7451
7481
|
arrayEach(argsToArray(arguments), (function(value) {
|
|
7452
7482
|
if (result instanceof Error) {
|
|
7453
7483
|
return false;
|
|
@@ -8053,17 +8083,17 @@ function _typeof(o) {
|
|
|
8053
8083
|
} else if (!(holidays instanceof Array)) {
|
|
8054
8084
|
holidays = [ holidays ];
|
|
8055
8085
|
}
|
|
8056
|
-
for (var
|
|
8057
|
-
var h = parseDate(holidays[
|
|
8086
|
+
for (var _i6 = 0; _i6 < holidays.length; _i6++) {
|
|
8087
|
+
var h = parseDate(holidays[_i6]);
|
|
8058
8088
|
if (h instanceof Error) {
|
|
8059
8089
|
return h;
|
|
8060
8090
|
}
|
|
8061
|
-
holidays[
|
|
8091
|
+
holidays[_i6] = h;
|
|
8062
8092
|
}
|
|
8063
8093
|
var days = Math.round((end_date - start_date) / (1e3 * 60 * 60 * 24)) + 1;
|
|
8064
8094
|
var total = days;
|
|
8065
8095
|
var day = start_date;
|
|
8066
|
-
for (var
|
|
8096
|
+
for (var _i7 = 0; _i7 < days; _i7++) {
|
|
8067
8097
|
var d = (new Date).getTimezoneOffset() > 0 ? day.getUTCDay() : day.getDay();
|
|
8068
8098
|
var dec = isMask ? maskDays.includes(d) : d === weekend[0] || d === weekend[1];
|
|
8069
8099
|
for (var j = 0; j < holidays.length; j++) {
|
|
@@ -9460,9 +9490,9 @@ function _typeof(o) {
|
|
|
9460
9490
|
matches[i] = true;
|
|
9461
9491
|
}
|
|
9462
9492
|
var maxCriteriaLength = criterias[0].length;
|
|
9463
|
-
for (var
|
|
9464
|
-
if (criterias[
|
|
9465
|
-
maxCriteriaLength = criterias[
|
|
9493
|
+
for (var _i8 = 1; _i8 < criterias.length; ++_i8) {
|
|
9494
|
+
if (criterias[_i8].length > maxCriteriaLength) {
|
|
9495
|
+
maxCriteriaLength = criterias[_i8].length;
|
|
9466
9496
|
}
|
|
9467
9497
|
}
|
|
9468
9498
|
for (var k = 1; k < database.length; ++k) {
|
|
@@ -10111,9 +10141,9 @@ function _typeof(o) {
|
|
|
10111
10141
|
var result = cashFlows[0];
|
|
10112
10142
|
var r = 1 + rate;
|
|
10113
10143
|
var factor = 1;
|
|
10114
|
-
for (var
|
|
10144
|
+
for (var _i9 = 1; _i9 < cashFlows.length; _i9++) {
|
|
10115
10145
|
factor *= r;
|
|
10116
|
-
result += cashFlows[
|
|
10146
|
+
result += cashFlows[_i9] / factor;
|
|
10117
10147
|
}
|
|
10118
10148
|
return result;
|
|
10119
10149
|
};
|
|
@@ -10179,7 +10209,7 @@ function _typeof(o) {
|
|
|
10179
10209
|
if (a <= -.99999999) return rate;
|
|
10180
10210
|
}
|
|
10181
10211
|
var c;
|
|
10182
|
-
for (var
|
|
10212
|
+
for (var _i0 = 0; _i0 < maxIterations; _i0++) {
|
|
10183
10213
|
c = (a + b) / 2;
|
|
10184
10214
|
var npvC = cachedNpv(c);
|
|
10185
10215
|
if (Math.abs(npvC) < epsMax || Math.abs(b - a) < epsMax) {
|
|
@@ -10715,65 +10745,113 @@ function _typeof(o) {
|
|
|
10715
10745
|
Gnosisscan: "GNOSISSSCAN",
|
|
10716
10746
|
BASESCAN: "Basescan"
|
|
10717
10747
|
};
|
|
10718
|
-
|
|
10748
|
+
var CHAIN_API_BASE = {
|
|
10749
|
+
ethereum: "https://api.etherscan.io/api",
|
|
10750
|
+
gnosis: "https://api.gnosisscan.io/api",
|
|
10751
|
+
base: "https://api.basescan.org/api"
|
|
10752
|
+
};
|
|
10753
|
+
var fromTimeStampToBlock = function() {
|
|
10754
|
+
var _ref = _asyncToGenerator(_regeneratorRuntime().mark((function _callee(timestamp, chain, apiKey) {
|
|
10755
|
+
var baseUrl, url, res, json;
|
|
10756
|
+
return _regeneratorRuntime().wrap((function _callee$(_context) {
|
|
10757
|
+
while (1) switch (_context.prev = _context.next) {
|
|
10758
|
+
case 0:
|
|
10759
|
+
baseUrl = CHAIN_API_BASE[chain];
|
|
10760
|
+
if (baseUrl) {
|
|
10761
|
+
_context.next = 3;
|
|
10762
|
+
break;
|
|
10763
|
+
}
|
|
10764
|
+
throw new Error("Unsupported Chain");
|
|
10765
|
+
|
|
10766
|
+
case 3:
|
|
10767
|
+
_context.prev = 3;
|
|
10768
|
+
url = "".concat(baseUrl, "?module=block&action=getblocknobytime×tamp=").concat(timestamp, "&closest=before&apikey=").concat(apiKey);
|
|
10769
|
+
_context.next = 7;
|
|
10770
|
+
return fetch(url);
|
|
10771
|
+
|
|
10772
|
+
case 7:
|
|
10773
|
+
res = _context.sent;
|
|
10774
|
+
_context.next = 10;
|
|
10775
|
+
return res.json();
|
|
10776
|
+
|
|
10777
|
+
case 10:
|
|
10778
|
+
json = _context.sent;
|
|
10779
|
+
return _context.abrupt("return", parseInt(json.result));
|
|
10780
|
+
|
|
10781
|
+
case 14:
|
|
10782
|
+
_context.prev = 14;
|
|
10783
|
+
_context.t0 = _context["catch"](3);
|
|
10784
|
+
return _context.abrupt("return", 0);
|
|
10785
|
+
|
|
10786
|
+
case 17:
|
|
10787
|
+
case "end":
|
|
10788
|
+
return _context.stop();
|
|
10789
|
+
}
|
|
10790
|
+
}), _callee, null, [ [ 3, 14 ] ]);
|
|
10791
|
+
})));
|
|
10792
|
+
return function fromTimeStampToBlock(_x, _x2, _x3) {
|
|
10793
|
+
return _ref.apply(this, arguments);
|
|
10794
|
+
};
|
|
10795
|
+
}();
|
|
10796
|
+
function ETHERSCAN(_x4, _x5, _x6) {
|
|
10719
10797
|
return _ETHERSCAN.apply(this, arguments);
|
|
10720
10798
|
}
|
|
10721
10799
|
function _ETHERSCAN() {
|
|
10722
|
-
_ETHERSCAN = _asyncToGenerator(_regeneratorRuntime().mark((function
|
|
10800
|
+
_ETHERSCAN = _asyncToGenerator(_regeneratorRuntime().mark((function _callee2(address, page, offset) {
|
|
10723
10801
|
var API_KEY, url, response, json;
|
|
10724
|
-
return _regeneratorRuntime().wrap((function
|
|
10725
|
-
while (1) switch (
|
|
10802
|
+
return _regeneratorRuntime().wrap((function _callee2$(_context2) {
|
|
10803
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
10726
10804
|
case 0:
|
|
10727
10805
|
API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Etherscan);
|
|
10728
10806
|
url = "https://api.etherscan.io/api?module=account&action=txlist&address=".concat(address, "&startblock=0&endblock=99999999&page=").concat(page, "&offset=").concat(offset, "&sort=asc&apikey=").concat(API_KEY);
|
|
10729
|
-
|
|
10730
|
-
|
|
10807
|
+
_context2.prev = 2;
|
|
10808
|
+
_context2.next = 5;
|
|
10731
10809
|
return fetch(url);
|
|
10732
10810
|
|
|
10733
10811
|
case 5:
|
|
10734
|
-
response =
|
|
10812
|
+
response = _context2.sent;
|
|
10735
10813
|
if (response.ok) {
|
|
10736
|
-
|
|
10814
|
+
_context2.next = 8;
|
|
10737
10815
|
break;
|
|
10738
10816
|
}
|
|
10739
10817
|
throw new Error("HTTP error! Status: ".concat(response.status));
|
|
10740
10818
|
|
|
10741
10819
|
case 8:
|
|
10742
|
-
|
|
10820
|
+
_context2.next = 10;
|
|
10743
10821
|
return response.json();
|
|
10744
10822
|
|
|
10745
10823
|
case 10:
|
|
10746
|
-
json =
|
|
10824
|
+
json = _context2.sent;
|
|
10747
10825
|
if (!json.result.includes("Invalid API Key")) {
|
|
10748
|
-
|
|
10826
|
+
_context2.next = 13;
|
|
10749
10827
|
break;
|
|
10750
10828
|
}
|
|
10751
|
-
return
|
|
10829
|
+
return _context2.abrupt("return", "".concat(SERVICE_API_KEY.Etherscan, "_MISSING"));
|
|
10752
10830
|
|
|
10753
10831
|
case 13:
|
|
10754
|
-
return
|
|
10832
|
+
return _context2.abrupt("return", json.result);
|
|
10755
10833
|
|
|
10756
10834
|
case 16:
|
|
10757
|
-
|
|
10758
|
-
|
|
10759
|
-
return
|
|
10835
|
+
_context2.prev = 16;
|
|
10836
|
+
_context2.t0 = _context2["catch"](2);
|
|
10837
|
+
return _context2.abrupt("return", "ERROR IN FETCHING");
|
|
10760
10838
|
|
|
10761
10839
|
case 19:
|
|
10762
10840
|
case "end":
|
|
10763
|
-
return
|
|
10841
|
+
return _context2.stop();
|
|
10764
10842
|
}
|
|
10765
|
-
}),
|
|
10843
|
+
}), _callee2, null, [ [ 2, 16 ] ]);
|
|
10766
10844
|
})));
|
|
10767
10845
|
return _ETHERSCAN.apply(this, arguments);
|
|
10768
10846
|
}
|
|
10769
|
-
function GETPRICE(
|
|
10847
|
+
function GETPRICE(_x7, _x8) {
|
|
10770
10848
|
return _GETPRICE.apply(this, arguments);
|
|
10771
10849
|
}
|
|
10772
10850
|
function _GETPRICE() {
|
|
10773
|
-
_GETPRICE = _asyncToGenerator(_regeneratorRuntime().mark((function
|
|
10774
|
-
var API_KEY, url, options, response, json, jsonResponse, output,
|
|
10775
|
-
return _regeneratorRuntime().wrap((function
|
|
10776
|
-
while (1) switch (
|
|
10851
|
+
_GETPRICE = _asyncToGenerator(_regeneratorRuntime().mark((function _callee3(token, vs_currencies) {
|
|
10852
|
+
var API_KEY, url, options, response, json, jsonResponse, output, _i1, _Object$entries, _Object$entries$_i, coin, prices, _i10, _Object$entries2, _Object$entries2$_i, currency, _value5, key;
|
|
10853
|
+
return _regeneratorRuntime().wrap((function _callee3$(_context3) {
|
|
10854
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
10777
10855
|
case 0:
|
|
10778
10856
|
API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Coingecko);
|
|
10779
10857
|
url = "https://api.coingecko.com/api/v3/simple/price?vs_currencies=".concat(vs_currencies, "&ids=").concat(token);
|
|
@@ -10784,65 +10862,65 @@ function _typeof(o) {
|
|
|
10784
10862
|
"x-cg-demo-api-key": "".concat(API_KEY)
|
|
10785
10863
|
}
|
|
10786
10864
|
};
|
|
10787
|
-
|
|
10788
|
-
|
|
10865
|
+
_context3.prev = 3;
|
|
10866
|
+
_context3.next = 6;
|
|
10789
10867
|
return fetch(url, options);
|
|
10790
10868
|
|
|
10791
10869
|
case 6:
|
|
10792
|
-
response =
|
|
10870
|
+
response = _context3.sent;
|
|
10793
10871
|
if (response.ok) {
|
|
10794
|
-
|
|
10872
|
+
_context3.next = 13;
|
|
10795
10873
|
break;
|
|
10796
10874
|
}
|
|
10797
|
-
|
|
10875
|
+
_context3.next = 10;
|
|
10798
10876
|
return response.json();
|
|
10799
10877
|
|
|
10800
10878
|
case 10:
|
|
10801
|
-
json =
|
|
10879
|
+
json = _context3.sent;
|
|
10802
10880
|
if (!json.status.error_message.includes("API Key Missing")) {
|
|
10803
|
-
|
|
10881
|
+
_context3.next = 13;
|
|
10804
10882
|
break;
|
|
10805
10883
|
}
|
|
10806
|
-
return
|
|
10884
|
+
return _context3.abrupt("return", "".concat(SERVICE_API_KEY.Coingecko, "_MISSING"));
|
|
10807
10885
|
|
|
10808
10886
|
case 13:
|
|
10809
|
-
|
|
10887
|
+
_context3.next = 15;
|
|
10810
10888
|
return response.json();
|
|
10811
10889
|
|
|
10812
10890
|
case 15:
|
|
10813
|
-
jsonResponse =
|
|
10891
|
+
jsonResponse = _context3.sent;
|
|
10814
10892
|
output = {};
|
|
10815
|
-
for (
|
|
10816
|
-
_Object$entries$_i = _slicedToArray(_Object$entries[
|
|
10893
|
+
for (_i1 = 0, _Object$entries = Object.entries(jsonResponse); _i1 < _Object$entries.length; _i1++) {
|
|
10894
|
+
_Object$entries$_i = _slicedToArray(_Object$entries[_i1], 2), coin = _Object$entries$_i[0],
|
|
10817
10895
|
prices = _Object$entries$_i[1];
|
|
10818
|
-
for (
|
|
10819
|
-
_Object$entries2$_i = _slicedToArray(_Object$entries2[
|
|
10896
|
+
for (_i10 = 0, _Object$entries2 = Object.entries(prices); _i10 < _Object$entries2.length; _i10++) {
|
|
10897
|
+
_Object$entries2$_i = _slicedToArray(_Object$entries2[_i10], 2), currency = _Object$entries2$_i[0],
|
|
10820
10898
|
_value5 = _Object$entries2$_i[1];
|
|
10821
10899
|
key = "".concat(coin.charAt(0).toUpperCase() + coin.slice(1), "_").concat(currency.toUpperCase());
|
|
10822
10900
|
output[key] = _value5;
|
|
10823
10901
|
}
|
|
10824
10902
|
}
|
|
10825
|
-
return
|
|
10903
|
+
return _context3.abrupt("return", [ output ]);
|
|
10826
10904
|
|
|
10827
10905
|
case 21:
|
|
10828
|
-
|
|
10829
|
-
|
|
10830
|
-
return
|
|
10906
|
+
_context3.prev = 21;
|
|
10907
|
+
_context3.t0 = _context3["catch"](3);
|
|
10908
|
+
return _context3.abrupt("return", "ERROR IN FETCHING");
|
|
10831
10909
|
|
|
10832
10910
|
case 24:
|
|
10833
10911
|
case "end":
|
|
10834
|
-
return
|
|
10912
|
+
return _context3.stop();
|
|
10835
10913
|
}
|
|
10836
|
-
}),
|
|
10914
|
+
}), _callee3, null, [ [ 3, 21 ] ]);
|
|
10837
10915
|
})));
|
|
10838
10916
|
return _GETPRICE.apply(this, arguments);
|
|
10839
10917
|
}
|
|
10840
|
-
function OX(
|
|
10918
|
+
function OX(_x9, _x0, _x1, _x10, _x11) {
|
|
10841
10919
|
return _OX.apply(this, arguments);
|
|
10842
10920
|
}
|
|
10843
10921
|
function _OX() {
|
|
10844
10922
|
_OX = _asyncToGenerator(_regeneratorRuntime().mark((function _callee4(address, categories, chain, startTime, endTime) {
|
|
10845
|
-
var API_KEYS,
|
|
10923
|
+
var API_KEYS, apiKey, baseUrl, startBlock, endBlock, action, url, _json$result, _json$result$includes, response, json;
|
|
10846
10924
|
return _regeneratorRuntime().wrap((function _callee4$(_context4) {
|
|
10847
10925
|
while (1) switch (_context4.prev = _context4.next) {
|
|
10848
10926
|
case 0:
|
|
@@ -10851,105 +10929,63 @@ function _typeof(o) {
|
|
|
10851
10929
|
gnosis: window.localStorage.getItem(SERVICE_API_KEY.Gnosisscan),
|
|
10852
10930
|
base: window.localStorage.getItem(SERVICE_API_KEY.Basescan)
|
|
10853
10931
|
};
|
|
10854
|
-
CHAIN_API_BASE = {
|
|
10855
|
-
ethereum: "https://api.etherscan.io/api",
|
|
10856
|
-
gnosis: "https://api.gnosisscan.io/api",
|
|
10857
|
-
base: "https://api.basescan.org/api"
|
|
10858
|
-
};
|
|
10859
10932
|
apiKey = API_KEYS[chain];
|
|
10860
10933
|
baseUrl = CHAIN_API_BASE[chain];
|
|
10861
|
-
|
|
10862
|
-
|
|
10863
|
-
var _url, res, json;
|
|
10864
|
-
return _regeneratorRuntime().wrap((function _callee3$(_context3) {
|
|
10865
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
10866
|
-
case 0:
|
|
10867
|
-
_context3.prev = 0;
|
|
10868
|
-
_url = "".concat(baseUrl, "?module=block&action=getblocknobytime×tamp=").concat(timestamp, "&closest=before&apikey=").concat(apiKey);
|
|
10869
|
-
_context3.next = 4;
|
|
10870
|
-
return fetch(_url);
|
|
10934
|
+
_context4.next = 5;
|
|
10935
|
+
return fromTimeStampToBlock(startTime, chain, apiKey);
|
|
10871
10936
|
|
|
10872
|
-
|
|
10873
|
-
res = _context3.sent;
|
|
10874
|
-
_context3.next = 7;
|
|
10875
|
-
return res.json();
|
|
10876
|
-
|
|
10877
|
-
case 7:
|
|
10878
|
-
json = _context3.sent;
|
|
10879
|
-
return _context3.abrupt("return", parseInt(json.result));
|
|
10880
|
-
|
|
10881
|
-
case 11:
|
|
10882
|
-
_context3.prev = 11;
|
|
10883
|
-
_context3.t0 = _context3["catch"](0);
|
|
10884
|
-
return _context3.abrupt("return", 0);
|
|
10885
|
-
|
|
10886
|
-
case 14:
|
|
10887
|
-
case "end":
|
|
10888
|
-
return _context3.stop();
|
|
10889
|
-
}
|
|
10890
|
-
}), _callee3, null, [ [ 0, 11 ] ]);
|
|
10891
|
-
})));
|
|
10892
|
-
return function timeToBlock(_x11) {
|
|
10893
|
-
return _ref.apply(this, arguments);
|
|
10894
|
-
};
|
|
10895
|
-
}();
|
|
10896
|
-
_context4.next = 7;
|
|
10897
|
-
return timeToBlock(startTime);
|
|
10898
|
-
|
|
10899
|
-
case 7:
|
|
10937
|
+
case 5:
|
|
10900
10938
|
startBlock = _context4.sent;
|
|
10901
|
-
_context4.next =
|
|
10902
|
-
return
|
|
10939
|
+
_context4.next = 8;
|
|
10940
|
+
return fromTimeStampToBlock(endTime);
|
|
10903
10941
|
|
|
10904
|
-
case
|
|
10942
|
+
case 8:
|
|
10905
10943
|
endBlock = _context4.sent;
|
|
10906
10944
|
action = "";
|
|
10907
10945
|
if (categories === "txns") action = "txlist"; else if (categories === "balances") action = "balance"; else if (categories === "portfolio") action = "tokentx";
|
|
10908
10946
|
url = "".concat(baseUrl, "?module=account&action=").concat(action, "&address=").concat(address, "&startblock=").concat(startBlock, "&endblock=").concat(endBlock, "&sort=asc&apikey=").concat(apiKey);
|
|
10909
|
-
_context4.prev =
|
|
10910
|
-
_context4.next =
|
|
10947
|
+
_context4.prev = 12;
|
|
10948
|
+
_context4.next = 15;
|
|
10911
10949
|
return fetch(url);
|
|
10912
10950
|
|
|
10913
|
-
case
|
|
10951
|
+
case 15:
|
|
10914
10952
|
response = _context4.sent;
|
|
10915
10953
|
if (response.ok) {
|
|
10916
|
-
_context4.next =
|
|
10954
|
+
_context4.next = 18;
|
|
10917
10955
|
break;
|
|
10918
10956
|
}
|
|
10919
10957
|
throw new Error("HTTP error! Status: ".concat(response.status));
|
|
10920
10958
|
|
|
10921
|
-
case
|
|
10922
|
-
_context4.next =
|
|
10959
|
+
case 18:
|
|
10960
|
+
_context4.next = 20;
|
|
10923
10961
|
return response.json();
|
|
10924
10962
|
|
|
10925
|
-
case
|
|
10963
|
+
case 20:
|
|
10926
10964
|
json = _context4.sent;
|
|
10927
10965
|
if (!((_json$result = json.result) !== null && _json$result !== void 0 && (_json$result$includes = _json$result.includes) !== null && _json$result$includes !== void 0 && _json$result$includes.call(_json$result, "Invalid API Key"))) {
|
|
10928
|
-
_context4.next =
|
|
10966
|
+
_context4.next = 23;
|
|
10929
10967
|
break;
|
|
10930
10968
|
}
|
|
10931
10969
|
return _context4.abrupt("return", "".concat(SERVICE_API_KEY[chain.charAt(0).toUpperCase() + chain.slice(1)], "_MISSING"));
|
|
10932
10970
|
|
|
10933
|
-
case
|
|
10934
|
-
console.log({
|
|
10935
|
-
ANSWER: json.result
|
|
10936
|
-
});
|
|
10971
|
+
case 23:
|
|
10937
10972
|
return _context4.abrupt("return", json.result);
|
|
10938
10973
|
|
|
10939
|
-
case
|
|
10940
|
-
_context4.prev =
|
|
10941
|
-
_context4.t0 = _context4["catch"](
|
|
10974
|
+
case 26:
|
|
10975
|
+
_context4.prev = 26;
|
|
10976
|
+
_context4.t0 = _context4["catch"](12);
|
|
10977
|
+
console.log(_context4.t0);
|
|
10942
10978
|
return _context4.abrupt("return", "ERROR IN FETCHING");
|
|
10943
10979
|
|
|
10944
|
-
case
|
|
10980
|
+
case 30:
|
|
10945
10981
|
case "end":
|
|
10946
10982
|
return _context4.stop();
|
|
10947
10983
|
}
|
|
10948
|
-
}), _callee4, null, [ [
|
|
10984
|
+
}), _callee4, null, [ [ 12, 26 ] ]);
|
|
10949
10985
|
})));
|
|
10950
10986
|
return _OX.apply(this, arguments);
|
|
10951
10987
|
}
|
|
10952
|
-
function FLVURL(
|
|
10988
|
+
function FLVURL(_x12, _x13) {
|
|
10953
10989
|
return _FLVURL.apply(this, arguments);
|
|
10954
10990
|
}
|
|
10955
10991
|
function _FLVURL() {
|
|
@@ -11261,6 +11297,7 @@ function _typeof(o) {
|
|
|
11261
11297
|
exports.PHI = PHI;
|
|
11262
11298
|
exports.PI = PI;
|
|
11263
11299
|
exports.PMT = PMT;
|
|
11300
|
+
exports.PNL = PNL;
|
|
11264
11301
|
exports.POISSON = POISSON;
|
|
11265
11302
|
exports.POISSONDIST = POISSONDIST;
|
|
11266
11303
|
exports.POWER = POWER;
|
|
@@ -11270,7 +11307,6 @@ function _typeof(o) {
|
|
|
11270
11307
|
exports.PRODUCT = PRODUCT;
|
|
11271
11308
|
exports.PROPER = PROPER;
|
|
11272
11309
|
exports.PV = PV;
|
|
11273
|
-
exports.PnL = PnL;
|
|
11274
11310
|
exports.QUARTILE = QUARTILE;
|
|
11275
11311
|
exports.QUARTILEEXC = QUARTILEEXC;
|
|
11276
11312
|
exports.QUARTILEINC = QUARTILEINC;
|