@defillama/sdk 2.3.49 → 2.3.52
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/LICENSE +661 -661
- package/README.md +16 -16
- package/build/abi/cachedABIs.d.ts +4 -4
- package/build/abi/cachedABIs.js +70 -70
- package/build/abi/convertResults.d.ts +2 -2
- package/build/abi/convertResults.js +56 -56
- package/build/abi/index.d.ts +26 -26
- package/build/abi/index.js +185 -185
- package/build/abi/index.test.d.ts +1 -1
- package/build/abi/index.test.js +651 -651
- package/build/abi/multicall.d.ts +21 -13
- package/build/abi/multicall.js +234 -210
- package/build/api.d.ts +10 -10
- package/build/api.js +32 -32
- package/build/cdp/compoundTokens.d.ts +68 -68
- package/build/cdp/compoundTokens.js +69 -69
- package/build/cdp/index.d.ts +29 -29
- package/build/cdp/index.js +124 -124
- package/build/cdp/index.test.d.ts +1 -1
- package/build/cdp/index.test.js +82 -82
- package/build/cdp/makerTokens.d.ts +10 -10
- package/build/cdp/makerTokens.js +244 -244
- package/build/cli.d.ts +2 -2
- package/build/cli.js +95 -95
- package/build/computeTVL/blocks.d.ts +18 -18
- package/build/computeTVL/blocks.js +138 -138
- package/build/computeTVL/blocks.test.d.ts +1 -1
- package/build/computeTVL/blocks.test.js +56 -56
- package/build/computeTVL/humanizeNumber.d.ts +1 -1
- package/build/computeTVL/humanizeNumber.js +18 -18
- package/build/computeTVL/index.d.ts +56 -55
- package/build/computeTVL/index.js +367 -366
- package/build/computeTVL/index.test.d.ts +1 -1
- package/build/computeTVL/index.test.js +107 -107
- package/build/computeTVL/prices.d.ts +9 -9
- package/build/computeTVL/prices.js +163 -163
- package/build/erc20/index.d.ts +31 -31
- package/build/erc20/index.js +144 -144
- package/build/erc20/index.test.d.ts +1 -1
- package/build/erc20/index.test.js +124 -124
- package/build/eth/index.d.ts +21 -21
- package/build/eth/index.js +90 -90
- package/build/eth/index.test.d.ts +1 -1
- package/build/eth/index.test.js +122 -122
- package/build/general.d.ts +10 -10
- package/build/general.js +107 -105
- package/build/general.test.d.ts +1 -1
- package/build/general.test.js +73 -73
- package/build/generalUtil.d.ts +19 -19
- package/build/generalUtil.js +117 -117
- package/build/generalUtil.test.d.ts +1 -1
- package/build/generalUtil.test.js +59 -59
- package/build/index.d.ts +2 -2
- package/build/index.js +24 -24
- package/build/index.test.js +69 -69
- package/build/types.d.ts +5 -5
- package/build/types.js +2 -2
- package/build/util/index.d.ts +57 -57
- package/build/util/index.js +354 -354
- package/build/util/index.test.d.ts +1 -1
- package/build/util/index.test.js +314 -314
- package/build/util/tokenList.d.ts +14 -14
- package/build/util/tokenList.js +3631 -3631
- package/package.json +41 -41
package/build/abi/index.js
CHANGED
|
@@ -1,185 +1,185 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (_) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
|
-
};
|
|
52
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
-
exports.multiCall = exports.call = void 0;
|
|
54
|
-
var cachedABIs_1 = __importDefault(require("./cachedABIs"));
|
|
55
|
-
var ethers_1 = require("ethers");
|
|
56
|
-
var general_1 = require("../general");
|
|
57
|
-
var multicall_1 = __importDefault(require("./multicall"));
|
|
58
|
-
var convertResults_1 = __importDefault(require("./convertResults"));
|
|
59
|
-
function resolveABI(providedAbi) {
|
|
60
|
-
var abi = providedAbi;
|
|
61
|
-
if (typeof abi === "string") {
|
|
62
|
-
abi = cachedABIs_1.default[abi];
|
|
63
|
-
if (abi === undefined) {
|
|
64
|
-
throw new Error("ABI method undefined");
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
// If type is omitted DP's sdk processes it fine but we don't, so we need to add it
|
|
68
|
-
return __assign({ type: "function" }, abi);
|
|
69
|
-
}
|
|
70
|
-
function normalizeParams(params) {
|
|
71
|
-
if (params === undefined) {
|
|
72
|
-
return [];
|
|
73
|
-
}
|
|
74
|
-
else if (typeof params === "object") {
|
|
75
|
-
return params;
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
return [params];
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
function call(params) {
|
|
82
|
-
var _a;
|
|
83
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
84
|
-
var abi, callParams, contractInterface, functionABI, callData, result, decodedResult;
|
|
85
|
-
return __generator(this, function (_b) {
|
|
86
|
-
switch (_b.label) {
|
|
87
|
-
case 0:
|
|
88
|
-
abi = resolveABI(params.abi);
|
|
89
|
-
callParams = normalizeParams(params.params);
|
|
90
|
-
contractInterface = new ethers_1.ethers.utils.Interface([abi]);
|
|
91
|
-
functionABI = ethers_1.ethers.utils.FunctionFragment.from(abi);
|
|
92
|
-
callData = contractInterface.encodeFunctionData(functionABI, callParams);
|
|
93
|
-
return [4 /*yield*/, general_1.getProvider(params.chain).call({
|
|
94
|
-
to: params.target,
|
|
95
|
-
data: callData,
|
|
96
|
-
}, (_a = params.block) !== null && _a !== void 0 ? _a : "latest")];
|
|
97
|
-
case 1:
|
|
98
|
-
result = _b.sent();
|
|
99
|
-
decodedResult = contractInterface.decodeFunctionResult(functionABI, result);
|
|
100
|
-
return [2 /*return*/, {
|
|
101
|
-
output: convertResults_1.default(decodedResult),
|
|
102
|
-
}];
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
exports.call = call;
|
|
108
|
-
function multiCall(params) {
|
|
109
|
-
var _a;
|
|
110
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
111
|
-
var abi, contractCalls, multicallCalls, result, _loop_1, i, flatResults, failed, newResults_1;
|
|
112
|
-
return __generator(this, function (_b) {
|
|
113
|
-
switch (_b.label) {
|
|
114
|
-
case 0:
|
|
115
|
-
abi = resolveABI(params.abi);
|
|
116
|
-
contractCalls = params.calls.map(function (call, index) {
|
|
117
|
-
var _a;
|
|
118
|
-
var callParams = normalizeParams(call.params);
|
|
119
|
-
return {
|
|
120
|
-
params: callParams,
|
|
121
|
-
contract: (_a = call.target) !== null && _a !== void 0 ? _a : params.target,
|
|
122
|
-
};
|
|
123
|
-
});
|
|
124
|
-
multicallCalls = [];
|
|
125
|
-
result = [];
|
|
126
|
-
_loop_1 = function (i) {
|
|
127
|
-
var pendingResult;
|
|
128
|
-
return __generator(this, function (_c) {
|
|
129
|
-
switch (_c.label) {
|
|
130
|
-
case 0:
|
|
131
|
-
pendingResult = multicall_1.default(abi, contractCalls.slice(i, i + 500), (_a = params.chain) !== null && _a !== void 0 ? _a : "ethereum", params.block).then(function (partialCalls) {
|
|
132
|
-
result[i / 500] = partialCalls;
|
|
133
|
-
});
|
|
134
|
-
multicallCalls.push(pendingResult);
|
|
135
|
-
if (!(i % 20000)) return [3 /*break*/, 2];
|
|
136
|
-
return [4 /*yield*/, Promise.all(multicallCalls)];
|
|
137
|
-
case 1:
|
|
138
|
-
_c.sent(); // It would be faster to just await on all of them, but if we do that at some point node crashes without error message, so to prevent that we have to periodically await smaller sets of calls
|
|
139
|
-
multicallCalls = []; // Clear them from memory
|
|
140
|
-
_c.label = 2;
|
|
141
|
-
case 2: return [2 /*return*/];
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
};
|
|
145
|
-
i = 0;
|
|
146
|
-
_b.label = 1;
|
|
147
|
-
case 1:
|
|
148
|
-
if (!(i < contractCalls.length)) return [3 /*break*/, 4];
|
|
149
|
-
return [5 /*yield**/, _loop_1(i)];
|
|
150
|
-
case 2:
|
|
151
|
-
_b.sent();
|
|
152
|
-
_b.label = 3;
|
|
153
|
-
case 3:
|
|
154
|
-
i += 500;
|
|
155
|
-
return [3 /*break*/, 1];
|
|
156
|
-
case 4: return [4 /*yield*/, Promise.all(multicallCalls)];
|
|
157
|
-
case 5:
|
|
158
|
-
_b.sent();
|
|
159
|
-
flatResults = [].concat.apply([], result);
|
|
160
|
-
if (!(params.requery === true && flatResults.some(function (r) { return !r.success; }))) return [3 /*break*/, 7];
|
|
161
|
-
failed = flatResults.map(function (r, i) { return [r, i]; }).filter(function (r) { return !r[0].success; });
|
|
162
|
-
return [4 /*yield*/, multiCall({
|
|
163
|
-
abi: params.abi,
|
|
164
|
-
chain: params.chain,
|
|
165
|
-
calls: failed.map(function (f) { return f[0].input; }),
|
|
166
|
-
block: params.block,
|
|
167
|
-
requery: params.requery,
|
|
168
|
-
}).then(function (_a) {
|
|
169
|
-
var output = _a.output;
|
|
170
|
-
return output;
|
|
171
|
-
})];
|
|
172
|
-
case 6:
|
|
173
|
-
newResults_1 = _b.sent();
|
|
174
|
-
failed.forEach(function (f, i) {
|
|
175
|
-
flatResults[f[1]] = newResults_1[i];
|
|
176
|
-
});
|
|
177
|
-
_b.label = 7;
|
|
178
|
-
case 7: return [2 /*return*/, {
|
|
179
|
-
output: flatResults, // flatten array
|
|
180
|
-
}];
|
|
181
|
-
}
|
|
182
|
-
});
|
|
183
|
-
});
|
|
184
|
-
}
|
|
185
|
-
exports.multiCall = multiCall;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (_) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
|
+
};
|
|
52
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
exports.multiCall = exports.call = void 0;
|
|
54
|
+
var cachedABIs_1 = __importDefault(require("./cachedABIs"));
|
|
55
|
+
var ethers_1 = require("ethers");
|
|
56
|
+
var general_1 = require("../general");
|
|
57
|
+
var multicall_1 = __importDefault(require("./multicall"));
|
|
58
|
+
var convertResults_1 = __importDefault(require("./convertResults"));
|
|
59
|
+
function resolveABI(providedAbi) {
|
|
60
|
+
var abi = providedAbi;
|
|
61
|
+
if (typeof abi === "string") {
|
|
62
|
+
abi = cachedABIs_1.default[abi];
|
|
63
|
+
if (abi === undefined) {
|
|
64
|
+
throw new Error("ABI method undefined");
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
// If type is omitted DP's sdk processes it fine but we don't, so we need to add it
|
|
68
|
+
return __assign({ type: "function" }, abi);
|
|
69
|
+
}
|
|
70
|
+
function normalizeParams(params) {
|
|
71
|
+
if (params === undefined) {
|
|
72
|
+
return [];
|
|
73
|
+
}
|
|
74
|
+
else if (typeof params === "object") {
|
|
75
|
+
return params;
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
return [params];
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
function call(params) {
|
|
82
|
+
var _a;
|
|
83
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
84
|
+
var abi, callParams, contractInterface, functionABI, callData, result, decodedResult;
|
|
85
|
+
return __generator(this, function (_b) {
|
|
86
|
+
switch (_b.label) {
|
|
87
|
+
case 0:
|
|
88
|
+
abi = resolveABI(params.abi);
|
|
89
|
+
callParams = normalizeParams(params.params);
|
|
90
|
+
contractInterface = new ethers_1.ethers.utils.Interface([abi]);
|
|
91
|
+
functionABI = ethers_1.ethers.utils.FunctionFragment.from(abi);
|
|
92
|
+
callData = contractInterface.encodeFunctionData(functionABI, callParams);
|
|
93
|
+
return [4 /*yield*/, general_1.getProvider(params.chain).call({
|
|
94
|
+
to: params.target,
|
|
95
|
+
data: callData,
|
|
96
|
+
}, (_a = params.block) !== null && _a !== void 0 ? _a : "latest")];
|
|
97
|
+
case 1:
|
|
98
|
+
result = _b.sent();
|
|
99
|
+
decodedResult = contractInterface.decodeFunctionResult(functionABI, result);
|
|
100
|
+
return [2 /*return*/, {
|
|
101
|
+
output: convertResults_1.default(decodedResult),
|
|
102
|
+
}];
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
exports.call = call;
|
|
108
|
+
function multiCall(params) {
|
|
109
|
+
var _a;
|
|
110
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
111
|
+
var abi, contractCalls, multicallCalls, result, _loop_1, i, flatResults, failed, newResults_1;
|
|
112
|
+
return __generator(this, function (_b) {
|
|
113
|
+
switch (_b.label) {
|
|
114
|
+
case 0:
|
|
115
|
+
abi = resolveABI(params.abi);
|
|
116
|
+
contractCalls = params.calls.map(function (call, index) {
|
|
117
|
+
var _a;
|
|
118
|
+
var callParams = normalizeParams(call.params);
|
|
119
|
+
return {
|
|
120
|
+
params: callParams,
|
|
121
|
+
contract: (_a = call.target) !== null && _a !== void 0 ? _a : params.target,
|
|
122
|
+
};
|
|
123
|
+
});
|
|
124
|
+
multicallCalls = [];
|
|
125
|
+
result = [];
|
|
126
|
+
_loop_1 = function (i) {
|
|
127
|
+
var pendingResult;
|
|
128
|
+
return __generator(this, function (_c) {
|
|
129
|
+
switch (_c.label) {
|
|
130
|
+
case 0:
|
|
131
|
+
pendingResult = multicall_1.default(abi, contractCalls.slice(i, i + 500), (_a = params.chain) !== null && _a !== void 0 ? _a : "ethereum", params.block).then(function (partialCalls) {
|
|
132
|
+
result[i / 500] = partialCalls;
|
|
133
|
+
});
|
|
134
|
+
multicallCalls.push(pendingResult);
|
|
135
|
+
if (!(i % 20000)) return [3 /*break*/, 2];
|
|
136
|
+
return [4 /*yield*/, Promise.all(multicallCalls)];
|
|
137
|
+
case 1:
|
|
138
|
+
_c.sent(); // It would be faster to just await on all of them, but if we do that at some point node crashes without error message, so to prevent that we have to periodically await smaller sets of calls
|
|
139
|
+
multicallCalls = []; // Clear them from memory
|
|
140
|
+
_c.label = 2;
|
|
141
|
+
case 2: return [2 /*return*/];
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
};
|
|
145
|
+
i = 0;
|
|
146
|
+
_b.label = 1;
|
|
147
|
+
case 1:
|
|
148
|
+
if (!(i < contractCalls.length)) return [3 /*break*/, 4];
|
|
149
|
+
return [5 /*yield**/, _loop_1(i)];
|
|
150
|
+
case 2:
|
|
151
|
+
_b.sent();
|
|
152
|
+
_b.label = 3;
|
|
153
|
+
case 3:
|
|
154
|
+
i += 500;
|
|
155
|
+
return [3 /*break*/, 1];
|
|
156
|
+
case 4: return [4 /*yield*/, Promise.all(multicallCalls)];
|
|
157
|
+
case 5:
|
|
158
|
+
_b.sent();
|
|
159
|
+
flatResults = [].concat.apply([], result);
|
|
160
|
+
if (!(params.requery === true && flatResults.some(function (r) { return !r.success; }))) return [3 /*break*/, 7];
|
|
161
|
+
failed = flatResults.map(function (r, i) { return [r, i]; }).filter(function (r) { return !r[0].success; });
|
|
162
|
+
return [4 /*yield*/, multiCall({
|
|
163
|
+
abi: params.abi,
|
|
164
|
+
chain: params.chain,
|
|
165
|
+
calls: failed.map(function (f) { return f[0].input; }),
|
|
166
|
+
block: params.block,
|
|
167
|
+
requery: params.requery,
|
|
168
|
+
}).then(function (_a) {
|
|
169
|
+
var output = _a.output;
|
|
170
|
+
return output;
|
|
171
|
+
})];
|
|
172
|
+
case 6:
|
|
173
|
+
newResults_1 = _b.sent();
|
|
174
|
+
failed.forEach(function (f, i) {
|
|
175
|
+
flatResults[f[1]] = newResults_1[i];
|
|
176
|
+
});
|
|
177
|
+
_b.label = 7;
|
|
178
|
+
case 7: return [2 /*return*/, {
|
|
179
|
+
output: flatResults, // flatten array
|
|
180
|
+
}];
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
exports.multiCall = multiCall;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|