@gearbox-protocol/sdk 1.5.28 → 1.5.30
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/utils/multicall.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ethers, Signer } from "ethers";
|
|
1
|
+
import { CallOverrides, ethers, Signer } from "ethers";
|
|
2
2
|
import { Multicall2 } from "../types";
|
|
3
3
|
export interface CallData<T extends ethers.utils.Interface> {
|
|
4
4
|
method: keyof T["functions"];
|
|
@@ -10,13 +10,13 @@ export interface MCall<T extends ethers.utils.Interface> {
|
|
|
10
10
|
method: keyof T["functions"];
|
|
11
11
|
params?: any;
|
|
12
12
|
}
|
|
13
|
-
export declare function multicall<R extends Array<any>>(calls: Array<MCall<any>>, p: Signer | ethers.providers.Provider): Promise<R>;
|
|
13
|
+
export declare function multicall<R extends Array<any>>(calls: Array<MCall<any>>, p: Signer | ethers.providers.Provider, overrides?: CallOverrides): Promise<R>;
|
|
14
14
|
export declare class MultiCallContract<T extends ethers.utils.Interface> {
|
|
15
15
|
private readonly _address;
|
|
16
16
|
private readonly _interface;
|
|
17
17
|
protected _multiCall: Multicall2;
|
|
18
18
|
constructor(address: string, intrerface: T, provider: ethers.providers.Provider | Signer);
|
|
19
|
-
call<R extends Array<any>>(data: Array<CallData<T
|
|
19
|
+
call<R extends Array<any>>(data: Array<CallData<T>>, overrides?: CallOverrides): Promise<R>;
|
|
20
20
|
get address(): string;
|
|
21
21
|
get interface(): T;
|
|
22
22
|
}
|
package/lib/utils/multicall.js
CHANGED
|
@@ -39,7 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.MultiCallContract = exports.multicall = void 0;
|
|
40
40
|
var config_1 = require("../config");
|
|
41
41
|
var types_1 = require("../types");
|
|
42
|
-
function multicall(calls, p) {
|
|
42
|
+
function multicall(calls, p, overrides) {
|
|
43
43
|
return __awaiter(this, void 0, void 0, function () {
|
|
44
44
|
var multiCallContract, returnData;
|
|
45
45
|
return __generator(this, function (_a) {
|
|
@@ -49,7 +49,7 @@ function multicall(calls, p) {
|
|
|
49
49
|
return [4 /*yield*/, multiCallContract.callStatic.aggregate(calls.map(function (c) { return ({
|
|
50
50
|
target: c.address,
|
|
51
51
|
callData: c.interface.encodeFunctionData(c.method, c.params),
|
|
52
|
-
}); }))];
|
|
52
|
+
}); }), overrides || {})];
|
|
53
53
|
case 1:
|
|
54
54
|
returnData = (_a.sent()).returnData;
|
|
55
55
|
return [2 /*return*/, returnData
|
|
@@ -68,7 +68,7 @@ var MultiCallContract = /** @class */ (function () {
|
|
|
68
68
|
this._interface = intrerface;
|
|
69
69
|
this._multiCall = types_1.Multicall2__factory.connect(config_1.MULTICALL_ADDRESS, provider);
|
|
70
70
|
}
|
|
71
|
-
MultiCallContract.prototype.call = function (data) {
|
|
71
|
+
MultiCallContract.prototype.call = function (data, overrides) {
|
|
72
72
|
return __awaiter(this, void 0, void 0, function () {
|
|
73
73
|
var returnData;
|
|
74
74
|
var _this = this;
|
|
@@ -77,7 +77,7 @@ var MultiCallContract = /** @class */ (function () {
|
|
|
77
77
|
case 0: return [4 /*yield*/, this._multiCall.callStatic.aggregate(data.map(function (c) { return ({
|
|
78
78
|
target: _this._address,
|
|
79
79
|
callData: _this._interface.encodeFunctionData(c.method, c.params),
|
|
80
|
-
}); }))];
|
|
80
|
+
}); }), overrides || {})];
|
|
81
81
|
case 1:
|
|
82
82
|
returnData = (_a.sent()).returnData;
|
|
83
83
|
return [2 /*return*/, returnData
|