@across-protocol/sdk 3.1.13 → 3.1.15
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/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +2 -2
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +2 -2
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +3 -3
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +15 -16
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/cjs/utils/common.d.ts +1 -1
- package/dist/cjs/utils/common.js +6 -6
- package/dist/cjs/utils/common.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +4 -3
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +4 -3
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +3 -3
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +15 -16
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/esm/utils/common.d.ts +2 -1
- package/dist/esm/utils/common.js +7 -6
- package/dist/esm/utils/common.js.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +4 -3
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +3 -3
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
- package/dist/types/utils/common.d.ts +2 -1
- package/dist/types/utils/common.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/relayFeeCalculator/chain-queries/baseQuery.ts +12 -3
- package/src/relayFeeCalculator/relayFeeCalculator.ts +24 -16
- package/src/utils/common.ts +11 -5
|
@@ -2,7 +2,7 @@ import { L2Provider } from "@eth-optimism/sdk/dist/interfaces/l2-provider";
|
|
|
2
2
|
import { providers } from "ethers";
|
|
3
3
|
import { Deposit } from "../../interfaces";
|
|
4
4
|
import { SpokePool } from "../../typechain";
|
|
5
|
-
import { TransactionCostEstimate } from "../../utils";
|
|
5
|
+
import { BigNumberish, TransactionCostEstimate } from "../../utils";
|
|
6
6
|
import { Logger, QueryInterface } from "../relayFeeCalculator";
|
|
7
7
|
type Provider = providers.Provider;
|
|
8
8
|
type OptimismProvider = L2Provider<Provider>;
|
|
@@ -22,7 +22,7 @@ export declare class QueryBase implements QueryInterface {
|
|
|
22
22
|
readonly coingeckoBaseCurrency: string;
|
|
23
23
|
readonly spokePool: SpokePool;
|
|
24
24
|
constructor(provider: Provider | OptimismProvider, symbolMapping: SymbolMappingType, spokePoolAddress: string, simulatedRelayerAddress: string, gasMarkup: number, logger: Logger, coingeckoProApiKey?: string | undefined, fixedGasPrice?: import("ethers").BigNumberish | undefined, coingeckoBaseCurrency?: string);
|
|
25
|
-
getGasCosts(deposit: Deposit, relayer?: string, gasPrice?: import("ethers").BigNumberish | undefined): Promise<TransactionCostEstimate>;
|
|
25
|
+
getGasCosts(deposit: Deposit, relayer?: string, gasPrice?: import("ethers").BigNumberish | undefined, gasLimit?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
26
26
|
getTokenPrice(tokenSymbol: string): Promise<number>;
|
|
27
27
|
getTokenDecimals(tokenSymbol: string): number;
|
|
28
28
|
}
|
|
@@ -20,7 +20,7 @@ var QueryBase = (function () {
|
|
|
20
20
|
this.coingeckoBaseCurrency = coingeckoBaseCurrency;
|
|
21
21
|
this.spokePool = typechain_1.SpokePool__factory.connect(spokePoolAddress, provider);
|
|
22
22
|
}
|
|
23
|
-
QueryBase.prototype.getGasCosts = function (deposit, relayer, gasPrice) {
|
|
23
|
+
QueryBase.prototype.getGasCosts = function (deposit, relayer, gasPrice, gasLimit) {
|
|
24
24
|
if (relayer === void 0) { relayer = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
25
25
|
if (gasPrice === void 0) { gasPrice = this.fixedGasPrice; }
|
|
26
26
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
@@ -30,7 +30,7 @@ var QueryBase = (function () {
|
|
|
30
30
|
case 0: return [4, (0, utils_1.populateV3Relay)(this.spokePool, deposit, relayer)];
|
|
31
31
|
case 1:
|
|
32
32
|
tx = _a.sent();
|
|
33
|
-
return [2, (0, utils_1.estimateTotalGasRequiredByUnsignedTransaction)(tx, relayer, this.provider, this.gasMarkup, gasPrice)];
|
|
33
|
+
return [2, (0, utils_1.estimateTotalGasRequiredByUnsignedTransaction)(tx, relayer, this.provider, this.gasMarkup, gasPrice, gasLimit)];
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
36
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":";;;;AAEA,6CAA4C;AAC5C,6CAA+E;AAE/E,6CAAgE;AAChE,qCAKqB;AAiBrB;IAcE,mBACW,QAAqC,EACrC,aAAgC,EAChC,gBAAwB,EACxB,uBAA+B,EAC/B,SAAiB,EACjB,MAAc,EACd,kBAA2B,EAC3B,aAA4B,EAC5B,qBAAqC;QAArC,sCAAA,EAAA,6BAAqC;QARrC,aAAQ,GAAR,QAAQ,CAA6B;QACrC,kBAAa,GAAb,aAAa,CAAmB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,4BAAuB,GAAvB,uBAAuB,CAAQ;QAC/B,cAAS,GAAT,SAAS,CAAQ;QACjB,WAAM,GAAN,MAAM,CAAQ;QACd,uBAAkB,GAAlB,kBAAkB,CAAS;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,0BAAqB,GAArB,qBAAqB,CAAgB;QAE9C,IAAI,CAAC,SAAS,GAAG,8BAAkB,CAAC,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;
|
|
1
|
+
{"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":";;;;AAEA,6CAA4C;AAC5C,6CAA+E;AAE/E,6CAAgE;AAChE,qCAKqB;AAiBrB;IAcE,mBACW,QAAqC,EACrC,aAAgC,EAChC,gBAAwB,EACxB,uBAA+B,EAC/B,SAAiB,EACjB,MAAc,EACd,kBAA2B,EAC3B,aAA4B,EAC5B,qBAAqC;QAArC,sCAAA,EAAA,6BAAqC;QARrC,aAAQ,GAAR,QAAQ,CAA6B;QACrC,kBAAa,GAAb,aAAa,CAAmB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,4BAAuB,GAAvB,uBAAuB,CAAQ;QAC/B,cAAS,GAAT,SAAS,CAAQ;QACjB,WAAM,GAAN,MAAM,CAAQ;QACd,uBAAkB,GAAlB,kBAAkB,CAAS;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,0BAAqB,GAArB,qBAAqB,CAAgB;QAE9C,IAAI,CAAC,SAAS,GAAG,8BAAkB,CAAC,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAUK,+BAAW,GAAjB,UACE,OAAgB,EAChB,OAA2C,EAC3C,QAA6B,EAC7B,QAAuB;QAFvB,wBAAA,EAAA,UAAU,6CAAiC;QAC3C,yBAAA,EAAA,WAAW,IAAI,CAAC,aAAa;;;;;4BAGlB,WAAM,IAAA,uBAAe,EAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAA;;wBAA5D,EAAE,GAAG,SAAuD;wBAClE,WAAO,IAAA,qDAA6C,EAClD,EAAE,EACF,OAAO,EACP,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,EACd,QAAQ,EACR,QAAQ,CACT,EAAC;;;;KACH;IAOK,iCAAa,GAAnB,UAAoB,WAAmB;;;;;;wBACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;4BAAE,MAAM,IAAI,KAAK,CAAC,UAAG,WAAW,+BAA4B,CAAC,CAAC;wBAC5F,iBAAiB,GAAG,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;wBAC5D,WAAM,iBAAiB,CAAC,yBAAyB,CACjE,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,qBAAS,CAAC,OAAO,CAAC,EAC5D,IAAI,CAAC,qBAAqB,CAC3B,EAAA;;wBAHK,KAAY,SAGjB,EAHQ,KAAK,QAAA;wBAId,WAAO,KAAK,EAAC;;;;KACd;IAOD,oCAAgB,GAAhB,UAAiB,WAAmB;QAClC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,UAAG,WAAW,+BAA4B,CAAC,CAAC;QAClG,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC;IAClD,CAAC;IACH,gBAAC;AAAD,CAAC,AA7ED,IA6EC;AA7EY,8BAAS"}
|
|
@@ -2,7 +2,7 @@ import { BigNumber } from "ethers";
|
|
|
2
2
|
import { Deposit } from "../interfaces";
|
|
3
3
|
import { BigNumberish, TransactionCostEstimate } from "../utils";
|
|
4
4
|
export interface QueryInterface {
|
|
5
|
-
getGasCosts: (deposit: Deposit, relayer: string, gasPrice?: BigNumberish) => Promise<TransactionCostEstimate>;
|
|
5
|
+
getGasCosts: (deposit: Deposit, relayer: string, gasPrice?: BigNumberish, gasLimit?: BigNumberish) => Promise<TransactionCostEstimate>;
|
|
6
6
|
getTokenPrice: (tokenSymbol: string) => Promise<number>;
|
|
7
7
|
getTokenDecimals: (tokenSymbol: string) => number;
|
|
8
8
|
}
|
|
@@ -269,8 +269,8 @@ export declare class RelayFeeCalculator {
|
|
|
269
269
|
};
|
|
270
270
|
coingeckoId: string;
|
|
271
271
|
};
|
|
272
|
-
}, gasPrice?: BigNumberish): Promise<BigNumber>;
|
|
272
|
+
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<BigNumber>;
|
|
273
273
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
274
|
-
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
274
|
+
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
275
275
|
}
|
|
276
276
|
export {};
|
|
@@ -87,12 +87,12 @@ var RelayFeeCalculator = (function () {
|
|
|
87
87
|
RelayFeeCalculator.prototype.getTokenPrice = function (tokenSymbol) {
|
|
88
88
|
return this.queries.getTokenPrice(tokenSymbol);
|
|
89
89
|
};
|
|
90
|
-
RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice) {
|
|
90
|
+
RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice, gasLimit) {
|
|
91
91
|
if (simulateZeroFill === void 0) { simulateZeroFill = false; }
|
|
92
92
|
if (relayerAddress === void 0) { relayerAddress = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
93
93
|
if (tokenMapping === void 0) { tokenMapping = constants_1.TOKEN_SYMBOLS_MAP; }
|
|
94
94
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
95
|
-
var inputToken, token, simulatedAmount, getGasCosts,
|
|
95
|
+
var inputToken, token, simulatedAmount, getGasCosts, _a, tokenGasCost, tokenPrice, gasFeesInToken;
|
|
96
96
|
var _this = this;
|
|
97
97
|
return tslib_1.__generator(this, function (_b) {
|
|
98
98
|
switch (_b.label) {
|
|
@@ -106,7 +106,7 @@ var RelayFeeCalculator = (function () {
|
|
|
106
106
|
}
|
|
107
107
|
simulatedAmount = simulateZeroFill ? safeOutputAmount : (0, utils_1.toBN)(amountToRelay);
|
|
108
108
|
deposit = tslib_1.__assign(tslib_1.__assign({}, deposit), { outputAmount: simulatedAmount });
|
|
109
|
-
getGasCosts = this.queries.getGasCosts(deposit, relayerAddress, gasPrice).catch(function (error) {
|
|
109
|
+
getGasCosts = this.queries.getGasCosts(deposit, relayerAddress, gasPrice, gasLimit).catch(function (error) {
|
|
110
110
|
_this.logger.error({
|
|
111
111
|
at: "sdk/gasFeePercent",
|
|
112
112
|
message: "Error while fetching gas costs",
|
|
@@ -116,19 +116,18 @@ var RelayFeeCalculator = (function () {
|
|
|
116
116
|
});
|
|
117
117
|
throw error;
|
|
118
118
|
});
|
|
119
|
-
getTokenPrice = this.queries.getTokenPrice(token.symbol).catch(function (error) {
|
|
120
|
-
_this.logger.error({
|
|
121
|
-
at: "sdk/gasFeePercent",
|
|
122
|
-
message: "Error while fetching token price",
|
|
123
|
-
error: error,
|
|
124
|
-
destinationChainId: deposit.destinationChainId,
|
|
125
|
-
inputToken: inputToken,
|
|
126
|
-
});
|
|
127
|
-
throw error;
|
|
128
|
-
});
|
|
129
119
|
return [4, Promise.all([
|
|
130
120
|
getGasCosts,
|
|
131
|
-
_tokenPrice !==
|
|
121
|
+
_tokenPrice !== null && _tokenPrice !== void 0 ? _tokenPrice : this.queries.getTokenPrice(token.symbol).catch(function (error) {
|
|
122
|
+
_this.logger.error({
|
|
123
|
+
at: "sdk/gasFeePercent",
|
|
124
|
+
message: "Error while fetching token price",
|
|
125
|
+
error: error,
|
|
126
|
+
destinationChainId: deposit.destinationChainId,
|
|
127
|
+
inputToken: inputToken,
|
|
128
|
+
});
|
|
129
|
+
throw error;
|
|
130
|
+
}),
|
|
132
131
|
])];
|
|
133
132
|
case 1:
|
|
134
133
|
_a = _b.sent(), tokenGasCost = _a[0].tokenGasCost, tokenPrice = _a[1];
|
|
@@ -167,7 +166,7 @@ var RelayFeeCalculator = (function () {
|
|
|
167
166
|
return minCharge.add(triangleCharge).add(remainderCharge).mul(utils_1.fixedPointAdjustment).div(y);
|
|
168
167
|
}
|
|
169
168
|
};
|
|
170
|
-
RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice) {
|
|
169
|
+
RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice, gasLimit) {
|
|
171
170
|
if (simulateZeroFill === void 0) { simulateZeroFill = false; }
|
|
172
171
|
if (relayerAddress === void 0) { relayerAddress = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
173
172
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
@@ -181,7 +180,7 @@ var RelayFeeCalculator = (function () {
|
|
|
181
180
|
if (!(0, utils_1.isDefined)(token)) {
|
|
182
181
|
throw new Error("Could not find token information for ".concat(inputToken));
|
|
183
182
|
}
|
|
184
|
-
return [4, this.gasFeePercent(deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, undefined, gasPrice)];
|
|
183
|
+
return [4, this.gasFeePercent(deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, undefined, gasPrice, gasLimit)];
|
|
185
184
|
case 1:
|
|
186
185
|
gasFeePercent = _a.sent();
|
|
187
186
|
gasFeeTotal = gasFeePercent.mul(amountToRelay).div(utils_1.fixedPointAdjustment);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":";;;;AAAA,0DAA4B;AAE5B,0CAAoF;AAEpF,kCAckB;
|
|
1
|
+
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":";;;;AAAA,0DAA4B;AAE5B,0CAAoF;AAEpF,kCAckB;AAcL,QAAA,wBAAwB,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AA0D9E,QAAA,cAAc,GAAW;IACpC,KAAK,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAAnB,CAAmB;IACvC,IAAI,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAAlB,CAAkB;IACrC,IAAI,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAAlB,CAAkB;IACrC,KAAK,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAAnB,CAAmB;CACxC,CAAC;AAGF,IAAM,gBAAgB,GAAG,IAAA,YAAI,EAAC,GAAG,CAAC,CAAC;AAEnC;IAcE,4BAAY,MAAiC,EAAE,MAAe,EAAE,kBAA2B;QACzF,IAAA,gBAAM,EAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;QAE1C,IAAI,SAAS,IAAI,MAAM,EAAE;YACvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;SAC/B;aAAM;YACL,IAAA,gBAAM,EAAC,kBAAkB,KAAK,SAAS,EAAE,+DAA+D,CAAC,CAAC;YAC1G,IAAA,gBAAM,EAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,2CAA2C,CAAC,CAAC;YAC3F,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;SACtD;QAED,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC;QAC5D,IAAA,gBAAM,EACJ,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,IAAI,CAAC,kBAAkB,IAAI,GAAG,EAC9D,sDAAsD,CACvD,CAAC;QACF,IAAA,gBAAM,EACJ,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,IAAI,CAAC,sBAAsB,IAAI,GAAG,EACtE,0DAA0D,CAC3D,CAAC;QACF,IAAA,gBAAM,EACJ,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,IAAI,GAAG,EACxD,mDAAmD,CACpD,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,WAAW,CAC1C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,UAAC,EAAqB;gBAApB,KAAK,QAAA,EAAE,YAAY,QAAA;YACjE,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,kBAAkB,CAAC,8CAA8C,CAAC,YAAY,CAAC,CAAC,CAAC;QAChH,CAAC,CAAC,CACH,CAAC;QACF,IAAA,gBAAM,EAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,iDAAiD,CAAC,CAAC;QAC3G,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,sBAAc,CAAC;IACzC,CAAC;IAYc,8CAA2B,GAA1C,UACE,MAAqD;QAErD,OAAQ,MAAoC,CAAC,OAAO,KAAK,SAAS,CAAC;IACrE,CAAC;IAOM,iEAA8C,GAArD,UACE,YAA2D;QAK3D,IAAM,MAAM,GAA8B,IAAI,CAAC,2BAA2B,CAAC,YAAY,CAAC;YACtF,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;QAG9B,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEhD,KAA8B,UAA0C,EAA1C,KAAA,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC,EAA1C,cAA0C,EAA1C,IAA0C,EAAE;YAArE,IAAM,eAAe,SAAA;YACxB,KAAuB,UAA8B,EAA9B,KAAA,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAA9B,cAA8B,EAA9B,IAA8B,EAAE;gBAAlD,IAAM,QAAQ,SAAA;gBACjB,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;aAC3C;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAMM,6CAA0B,GAAjC,UAAkC,YAA+B;QAC/D,IAAA,gBAAM,EAAC,IAAA,YAAI,EAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAA,eAAO,EAAC,MAAM,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;QACtF,IAAA,gBAAM,EAAC,IAAA,YAAI,EAAC,YAAY,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,oCAAoC,CAAC,CAAC;QACzG,IAAA,gBAAM,EAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;IACvF,CAAC;IAED,0CAAa,GAAb,UAAc,WAAmB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC;IAqBK,0CAAa,GAAnB,UACE,OAAgB,EAChB,aAA2B,EAC3B,gBAAwB,EACxB,cAAkD,EAClD,WAAoB,EACpB,YAAgC,EAChC,QAAuB,EACvB,QAAuB;QALvB,iCAAA,EAAA,wBAAwB;QACxB,+BAAA,EAAA,iBAAiB,6CAAiC;QAElD,6BAAA,EAAA,eAAe,6BAAiB;;;;;;;wBAIhC,IAAI,IAAA,YAAI,EAAC,aAAa,CAAC,CAAC,EAAE,CAAC,cAAM,CAAC;4BAAE,WAAO,mBAAW,EAAC;wBAE/C,UAAU,GAAK,OAAO,WAAZ,CAAa;wBACzB,KAAK,GAAG,IAAA,sCAA8B,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;wBACvE,IAAI,CAAC,IAAA,iBAAS,EAAC,KAAK,CAAC,EAAE;4BACrB,MAAM,IAAI,KAAK,CAAC,+CAAwC,UAAU,CAAE,CAAC,CAAC;yBACvE;wBAIK,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAA,YAAI,EAAC,aAAa,CAAC,CAAC;wBAClF,OAAO,yCAAQ,OAAO,KAAE,YAAY,EAAE,eAAe,GAAE,CAAC;wBAElD,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,UAAC,KAAK;4BACpG,KAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,mBAAmB;gCACvB,OAAO,EAAE,gCAAgC;gCACzC,KAAK,OAAA;gCACL,gBAAgB,kBAAA;gCAChB,OAAO,SAAA;6BACR,CAAC,CAAC;4BACH,MAAM,KAAK,CAAC;wBACd,CAAC,CAAC,CAAC;wBACoC,WAAM,OAAO,CAAC,GAAG,CAAC;gCACvD,WAAW;gCACX,WAAW,aAAX,WAAW,cAAX,WAAW,GACT,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAC,KAAK;oCACnD,KAAI,CAAC,MAAM,CAAC,KAAK,CAAC;wCAChB,EAAE,EAAE,mBAAmB;wCACvB,OAAO,EAAE,kCAAkC;wCAC3C,KAAK,OAAA;wCACL,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;wCAC9C,UAAU,YAAA;qCACX,CAAC,CAAC;oCACH,MAAM,KAAK,CAAC;gCACd,CAAC,CAAC;6BACL,CAAC,EAAA;;wBAbI,KAAiC,SAarC,EAbO,YAAY,qBAAA,EAAI,UAAU,QAAA;wBAc7B,cAAc,GAAG,IAAA,qBAAa,EAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;wBACzG,WAAO,IAAA,eAAO,EAAC,cAAc,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,EAAC;;;;KAC1D;IAID,8CAAiB,GAAjB,UACE,cAA4B,EAC5B,YAAoB,EACpB,YAA8B,EAC9B,iBAAmC;;QAGnC,IAAI,IAAA,YAAI,EAAC,cAAc,CAAC,CAAC,EAAE,CAAC,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC;YAAE,OAAO,mBAAW,CAAC;QAKzD,IAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,EAAE,EAAE,uBAAuB;gBAC3B,OAAO,EAAE,6CAAsC,YAAY,CAAE;aAC9D,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,qDAA8C,YAAY,CAAE,CAAC,CAAC;SAC/E;aAKI;YACH,IAAM,MAAM,GACV,IAAA,iBAAS,EAAC,YAAY,CAAC,IAAI,IAAA,iBAAS,EAAC,iBAAiB,CAAC;gBACrD,CAAC,CAAC,MAAA,MAAA,MAAA,eAAe,CAAC,cAAc,0CAAG,YAAY,CAAC,0CAAG,iBAAiB,CAAC,mCAAI,eAAe,CAAC,OAAO;gBAChG,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;YAG9B,IAAM,CAAC,GAAG,IAAA,YAAI,EAAC,cAAc,CAAC,CAAC,GAAG,CAAC,IAAA,eAAO,EAAC,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEvE,IAAM,SAAS,GAAG,IAAA,YAAI,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;YAI3E,IAAM,SAAS,GAAG,IAAA,WAAG,EAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAIxC,IAAM,aAAa,GAAG,IAAA,YAAI,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,IAAA,YAAI,EAAC,CAAC,CAAC;gBACT,CAAC,CAAC,IAAA,YAAI,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAChG,IAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;YAC9E,IAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAA,eAAO,EAAC,CAAC,CAAC,CAAC,CAAC;YAIrE,IAAM,UAAU,GAAG,IAAA,WAAG,EAAC,IAAA,YAAI,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,IAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,IAAA,YAAI,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;YAEjH,OAAO,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC5F;IACH,CAAC;IAeK,8CAAiB,GAAvB,UACE,OAAgB,EAChB,aAA4B,EAC5B,gBAAwB,EACxB,cAAkD,EAClD,WAAoB,EACpB,QAAuB,EACvB,QAAuB;QAJvB,iCAAA,EAAA,wBAAwB;QACxB,+BAAA,EAAA,iBAAiB,6CAAiC;;;;;;wBAOlD,aAAa,aAAb,aAAa,cAAb,aAAa,IAAb,aAAa,GAAK,OAAO,CAAC,YAAY,EAAC;wBAC/B,UAAU,GAAK,OAAO,WAAZ,CAAa;wBACzB,KAAK,GAAG,IAAA,sCAA8B,EAAC,UAAU,CAAC,CAAC;wBACzD,IAAI,CAAC,IAAA,iBAAS,EAAC,KAAK,CAAC,EAAE;4BACrB,MAAM,IAAI,KAAK,CAAC,+CAAwC,UAAU,CAAE,CAAC,CAAC;yBACvE;wBAEqB,WAAM,IAAI,CAAC,aAAa,CAC5C,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,CACT,EAAA;;wBATK,aAAa,GAAG,SASrB;wBACK,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;wBACzE,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAC9C,aAAa,EACb,KAAK,CAAC,MAAM,EACZ,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,EAChC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACtC,CAAC;wBACI,eAAe,GAAG,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;wBACjF,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;wBACvD,aAAa,GAAG,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;wBAQjD,gBAAgB,GAAG,IAAA,WAAG,EAAC,IAAA,eAAO,EAAC,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC,CAAC;wBAIlG,IAAI,gBAAgB,CAAC,EAAE,CAAC,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC,EAAE;4BAChC,UAAU,GAAG,mBAAW,CAAC;4BACzB,cAAc,GAAG,IAAI,CAAC;yBACvB;6BAAM;4BACL,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;4BACzE,cAAc,GAAG,IAAA,YAAI,EAAC,aAAa,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;yBACrD;wBAED,WAAO;gCACL,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gCACvC,WAAW,EAAE,KAAK,CAAC,MAAM;gCACzB,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gCACvC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;gCACnC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;gCAC3C,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;gCAC/C,eAAe,EAAE,eAAe,CAAC,QAAQ,EAAE;gCAC3C,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gCACnD,eAAe,EAAE,eAAe,CAAC,QAAQ,EAAE;gCAC3C,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gCACvC,eAAe,EAAE,IAAI,CAAC,eAAe;gCACrC,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ,EAAE;gCAC7C,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;gCACjC,cAAc,gBAAA;6BACf,EAAC;;;;KACH;IACH,yBAAC;AAAD,CAAC,AAjUD,IAiUC;AAjUY,gDAAkB"}
|
|
@@ -25,7 +25,7 @@ export type TransactionCostEstimate = {
|
|
|
25
25
|
nativeGasCost: BigNumber;
|
|
26
26
|
tokenGasCost: BigNumber;
|
|
27
27
|
};
|
|
28
|
-
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, gasMarkup: number, gasPrice?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
28
|
+
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, gasMarkup: number, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
29
29
|
export type UpdateDepositDetailsMessageType = {
|
|
30
30
|
UpdateDepositDetails: [
|
|
31
31
|
{
|
package/dist/cjs/utils/common.js
CHANGED
|
@@ -112,9 +112,9 @@ function retry(call, times, delayS) {
|
|
|
112
112
|
return promiseChain;
|
|
113
113
|
}
|
|
114
114
|
exports.retry = retry;
|
|
115
|
-
function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider, gasMarkup, gasPrice) {
|
|
115
|
+
function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider, gasMarkup, gasPrice, gasLimit) {
|
|
116
116
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
117
|
-
var gasTotalMultiplier, chainId, voidSigner, nativeGasCost, tokenGasCost, populatedTransaction, _a, l1GasCost, l2GasCost, gasPriceEstimate;
|
|
117
|
+
var gasTotalMultiplier, chainId, voidSigner, nativeGasCost, tokenGasCost, populatedTransaction, _a, l1GasCost, l2GasPrice, l2GasCost, gasPriceEstimate;
|
|
118
118
|
return tslib_1.__generator(this, function (_b) {
|
|
119
119
|
switch (_b.label) {
|
|
120
120
|
case 0:
|
|
@@ -124,21 +124,21 @@ function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress
|
|
|
124
124
|
case 1:
|
|
125
125
|
chainId = (_b.sent()).chainId;
|
|
126
126
|
voidSigner = new ethers_1.VoidSigner(senderAddress, provider);
|
|
127
|
-
return [4, voidSigner.estimateGas(unsignedTx)];
|
|
127
|
+
return [4, voidSigner.estimateGas(tslib_1.__assign(tslib_1.__assign({}, unsignedTx), { gasPrice: gasPrice, gasLimit: gasLimit }))];
|
|
128
128
|
case 2:
|
|
129
129
|
nativeGasCost = _b.sent();
|
|
130
130
|
if (!(0, NetworkUtils_1.chainIsOPStack)(chainId)) return [3, 5];
|
|
131
131
|
(0, assert_1.default)((0, l2_provider_1.isL2Provider)(provider), "Unexpected provider for chain ID ".concat(chainId, "."));
|
|
132
|
-
(0, assert_1.default)(gasPrice === undefined, "Gas price (".concat(gasPrice, ") supplied for Optimism gas estimation (unused)."));
|
|
133
132
|
return [4, voidSigner.populateTransaction(tslib_1.__assign(tslib_1.__assign({}, unsignedTx), { gasLimit: nativeGasCost }))];
|
|
134
133
|
case 3:
|
|
135
134
|
populatedTransaction = _b.sent();
|
|
136
135
|
return [4, Promise.all([
|
|
137
136
|
provider.estimateL1GasCost(populatedTransaction),
|
|
138
|
-
provider.
|
|
137
|
+
gasPrice || provider.getGasPrice(),
|
|
139
138
|
])];
|
|
140
139
|
case 4:
|
|
141
|
-
_a = _b.sent(), l1GasCost = _a[0],
|
|
140
|
+
_a = _b.sent(), l1GasCost = _a[0], l2GasPrice = _a[1];
|
|
141
|
+
l2GasCost = nativeGasCost.mul(l2GasPrice);
|
|
142
142
|
tokenGasCost = l1GasCost.add(l2GasCost);
|
|
143
143
|
return [3, 8];
|
|
144
144
|
case 5:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { L2Provider } from "@eth-optimism/sdk/dist/interfaces/l2-provider";
|
|
|
2
2
|
import { providers } from "ethers";
|
|
3
3
|
import { Deposit } from "../../interfaces";
|
|
4
4
|
import { SpokePool } from "../../typechain";
|
|
5
|
-
import { TransactionCostEstimate } from "../../utils";
|
|
5
|
+
import { BigNumberish, TransactionCostEstimate } from "../../utils";
|
|
6
6
|
import { Logger, QueryInterface } from "../relayFeeCalculator";
|
|
7
7
|
type Provider = providers.Provider;
|
|
8
8
|
type OptimismProvider = L2Provider<Provider>;
|
|
@@ -43,9 +43,10 @@ export declare class QueryBase implements QueryInterface {
|
|
|
43
43
|
* @param deposit V3 deposit instance.
|
|
44
44
|
* @param relayerAddress Relayer address to simulate with.
|
|
45
45
|
* @param gasPrice Optional gas price to use for the simulation.
|
|
46
|
-
* @
|
|
46
|
+
* @param gasLimit Optional gas limit to use for the simulation.
|
|
47
|
+
* @returns The gas estimate for this function call (multiplied with the optional buffer).
|
|
47
48
|
*/
|
|
48
|
-
getGasCosts(deposit: Deposit, relayer?: string, gasPrice?: import("ethers").BigNumberish | undefined): Promise<TransactionCostEstimate>;
|
|
49
|
+
getGasCosts(deposit: Deposit, relayer?: string, gasPrice?: import("ethers").BigNumberish | undefined, gasLimit?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
49
50
|
/**
|
|
50
51
|
* Retrieves the current price of a token
|
|
51
52
|
* @param tokenSymbol A valid [CoinGecko-ID](https://api.coingecko.com/api/v3/coins/list)
|
|
@@ -38,9 +38,10 @@ var QueryBase = /** @class */ (function () {
|
|
|
38
38
|
* @param deposit V3 deposit instance.
|
|
39
39
|
* @param relayerAddress Relayer address to simulate with.
|
|
40
40
|
* @param gasPrice Optional gas price to use for the simulation.
|
|
41
|
-
* @
|
|
41
|
+
* @param gasLimit Optional gas limit to use for the simulation.
|
|
42
|
+
* @returns The gas estimate for this function call (multiplied with the optional buffer).
|
|
42
43
|
*/
|
|
43
|
-
QueryBase.prototype.getGasCosts = function (deposit, relayer, gasPrice) {
|
|
44
|
+
QueryBase.prototype.getGasCosts = function (deposit, relayer, gasPrice, gasLimit) {
|
|
44
45
|
if (relayer === void 0) { relayer = DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
45
46
|
if (gasPrice === void 0) { gasPrice = this.fixedGasPrice; }
|
|
46
47
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -50,7 +51,7 @@ var QueryBase = /** @class */ (function () {
|
|
|
50
51
|
case 0: return [4 /*yield*/, populateV3Relay(this.spokePool, deposit, relayer)];
|
|
51
52
|
case 1:
|
|
52
53
|
tx = _a.sent();
|
|
53
|
-
return [2 /*return*/, estimateTotalGasRequiredByUnsignedTransaction(tx, relayer, this.provider, this.gasMarkup, gasPrice)];
|
|
54
|
+
return [2 /*return*/, estimateTotalGasRequiredByUnsignedTransaction(tx, relayer, this.provider, this.gasMarkup, gasPrice, gasLimit)];
|
|
54
55
|
}
|
|
55
56
|
});
|
|
56
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,iCAAiC,EAAE,MAAM,iBAAiB,CAAC;AAE/E,OAAO,EAAa,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAGL,6CAA6C,EAC7C,eAAe,GAChB,MAAM,aAAa,CAAC;AAarB;;;GAGG;AACH;IAEE;;;;;;;;;;;OAWG;IACH,mBACW,QAAqC,EACrC,aAAgC,EAChC,gBAAwB,EACxB,uBAA+B,EAC/B,SAAiB,EACjB,MAAc,EACd,kBAA2B,EAC3B,aAA4B,EAC5B,qBAAqC;QAArC,sCAAA,EAAA,6BAAqC;QARrC,aAAQ,GAAR,QAAQ,CAA6B;QACrC,kBAAa,GAAb,aAAa,CAAmB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,4BAAuB,GAAvB,uBAAuB,CAAQ;QAC/B,cAAS,GAAT,SAAS,CAAQ;QACjB,WAAM,GAAN,MAAM,CAAQ;QACd,uBAAkB,GAAlB,kBAAkB,CAAS;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,0BAAqB,GAArB,qBAAqB,CAAgB;QAE9C,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,iCAAiC,EAAE,MAAM,iBAAiB,CAAC;AAE/E,OAAO,EAAa,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAGL,6CAA6C,EAC7C,eAAe,GAChB,MAAM,aAAa,CAAC;AAarB;;;GAGG;AACH;IAEE;;;;;;;;;;;OAWG;IACH,mBACW,QAAqC,EACrC,aAAgC,EAChC,gBAAwB,EACxB,uBAA+B,EAC/B,SAAiB,EACjB,MAAc,EACd,kBAA2B,EAC3B,aAA4B,EAC5B,qBAAqC;QAArC,sCAAA,EAAA,6BAAqC;QARrC,aAAQ,GAAR,QAAQ,CAA6B;QACrC,kBAAa,GAAb,aAAa,CAAmB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,4BAAuB,GAAvB,uBAAuB,CAAQ;QAC/B,cAAS,GAAT,SAAS,CAAQ;QACjB,WAAM,GAAN,MAAM,CAAQ;QACd,uBAAkB,GAAlB,kBAAkB,CAAS;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,0BAAqB,GAArB,qBAAqB,CAAgB;QAE9C,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;;;OAOG;IACG,+BAAW,GAAjB,UACE,OAAgB,EAChB,OAA2C,EAC3C,QAA6B,EAC7B,QAAuB;QAFvB,wBAAA,EAAA,2CAA2C;QAC3C,yBAAA,EAAA,WAAW,IAAI,CAAC,aAAa;;;;;4BAGlB,qBAAM,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAA;;wBAA5D,EAAE,GAAG,SAAuD;wBAClE,sBAAO,6CAA6C,CAClD,EAAE,EACF,OAAO,EACP,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,EACd,QAAQ,EACR,QAAQ,CACT,EAAC;;;;KACH;IAED;;;;OAIG;IACG,iCAAa,GAAnB,UAAoB,WAAmB;;;;;;wBACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;4BAAE,MAAM,IAAI,KAAK,CAAC,UAAG,WAAW,+BAA4B,CAAC,CAAC;wBAC5F,iBAAiB,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;wBAC5D,qBAAM,iBAAiB,CAAC,yBAAyB,CACjE,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAC5D,IAAI,CAAC,qBAAqB,CAC3B,EAAA;;wBAHK,KAAY,SAGjB,EAHQ,KAAK,QAAA;wBAId,sBAAO,KAAK,EAAC;;;;KACd;IAED;;;;OAIG;IACH,oCAAgB,GAAhB,UAAiB,WAAmB;QAClC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,UAAG,WAAW,+BAA4B,CAAC,CAAC;QAClG,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC;IAClD,CAAC;IACH,gBAAC;AAAD,CAAC,AA7ED,IA6EC"}
|
|
@@ -2,7 +2,7 @@ import { BigNumber } from "ethers";
|
|
|
2
2
|
import { Deposit } from "../interfaces";
|
|
3
3
|
import { BigNumberish, TransactionCostEstimate } from "../utils";
|
|
4
4
|
export interface QueryInterface {
|
|
5
|
-
getGasCosts: (deposit: Deposit, relayer: string, gasPrice?: BigNumberish) => Promise<TransactionCostEstimate>;
|
|
5
|
+
getGasCosts: (deposit: Deposit, relayer: string, gasPrice?: BigNumberish, gasLimit?: BigNumberish) => Promise<TransactionCostEstimate>;
|
|
6
6
|
getTokenPrice: (tokenSymbol: string) => Promise<number>;
|
|
7
7
|
getTokenDecimals: (tokenSymbol: string) => number;
|
|
8
8
|
}
|
|
@@ -307,7 +307,7 @@ export declare class RelayFeeCalculator {
|
|
|
307
307
|
};
|
|
308
308
|
coingeckoId: string;
|
|
309
309
|
};
|
|
310
|
-
}, gasPrice?: BigNumberish): Promise<BigNumber>;
|
|
310
|
+
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<BigNumber>;
|
|
311
311
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
312
312
|
/**
|
|
313
313
|
* Retrieves the relayer fee details for a deposit.
|
|
@@ -322,6 +322,6 @@ export declare class RelayFeeCalculator {
|
|
|
322
322
|
* @param _tokenPrice The token price for normalizing fees
|
|
323
323
|
* @returns A resulting `RelayerFeeDetails` object
|
|
324
324
|
*/
|
|
325
|
-
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
325
|
+
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
326
326
|
}
|
|
327
327
|
export {};
|
|
@@ -128,12 +128,12 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
128
128
|
* a message & recipient contract is provided as this function may not simulate with
|
|
129
129
|
* the correct parameters to see a full fill.
|
|
130
130
|
*/
|
|
131
|
-
RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice) {
|
|
131
|
+
RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice, gasLimit) {
|
|
132
132
|
if (simulateZeroFill === void 0) { simulateZeroFill = false; }
|
|
133
133
|
if (relayerAddress === void 0) { relayerAddress = DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
134
134
|
if (tokenMapping === void 0) { tokenMapping = TOKEN_SYMBOLS_MAP; }
|
|
135
135
|
return __awaiter(this, void 0, void 0, function () {
|
|
136
|
-
var inputToken, token, simulatedAmount, getGasCosts,
|
|
136
|
+
var inputToken, token, simulatedAmount, getGasCosts, _a, tokenGasCost, tokenPrice, gasFeesInToken;
|
|
137
137
|
var _this = this;
|
|
138
138
|
return __generator(this, function (_b) {
|
|
139
139
|
switch (_b.label) {
|
|
@@ -147,7 +147,7 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
147
147
|
}
|
|
148
148
|
simulatedAmount = simulateZeroFill ? safeOutputAmount : toBN(amountToRelay);
|
|
149
149
|
deposit = __assign(__assign({}, deposit), { outputAmount: simulatedAmount });
|
|
150
|
-
getGasCosts = this.queries.getGasCosts(deposit, relayerAddress, gasPrice).catch(function (error) {
|
|
150
|
+
getGasCosts = this.queries.getGasCosts(deposit, relayerAddress, gasPrice, gasLimit).catch(function (error) {
|
|
151
151
|
_this.logger.error({
|
|
152
152
|
at: "sdk/gasFeePercent",
|
|
153
153
|
message: "Error while fetching gas costs",
|
|
@@ -157,19 +157,18 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
157
157
|
});
|
|
158
158
|
throw error;
|
|
159
159
|
});
|
|
160
|
-
getTokenPrice = this.queries.getTokenPrice(token.symbol).catch(function (error) {
|
|
161
|
-
_this.logger.error({
|
|
162
|
-
at: "sdk/gasFeePercent",
|
|
163
|
-
message: "Error while fetching token price",
|
|
164
|
-
error: error,
|
|
165
|
-
destinationChainId: deposit.destinationChainId,
|
|
166
|
-
inputToken: inputToken,
|
|
167
|
-
});
|
|
168
|
-
throw error;
|
|
169
|
-
});
|
|
170
160
|
return [4 /*yield*/, Promise.all([
|
|
171
161
|
getGasCosts,
|
|
172
|
-
_tokenPrice !==
|
|
162
|
+
_tokenPrice !== null && _tokenPrice !== void 0 ? _tokenPrice : this.queries.getTokenPrice(token.symbol).catch(function (error) {
|
|
163
|
+
_this.logger.error({
|
|
164
|
+
at: "sdk/gasFeePercent",
|
|
165
|
+
message: "Error while fetching token price",
|
|
166
|
+
error: error,
|
|
167
|
+
destinationChainId: deposit.destinationChainId,
|
|
168
|
+
inputToken: inputToken,
|
|
169
|
+
});
|
|
170
|
+
throw error;
|
|
171
|
+
}),
|
|
173
172
|
])];
|
|
174
173
|
case 1:
|
|
175
174
|
_a = _b.sent(), tokenGasCost = _a[0].tokenGasCost, tokenPrice = _a[1];
|
|
@@ -239,7 +238,7 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
239
238
|
* @param _tokenPrice The token price for normalizing fees
|
|
240
239
|
* @returns A resulting `RelayerFeeDetails` object
|
|
241
240
|
*/
|
|
242
|
-
RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice) {
|
|
241
|
+
RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice, gasLimit) {
|
|
243
242
|
if (simulateZeroFill === void 0) { simulateZeroFill = false; }
|
|
244
243
|
if (relayerAddress === void 0) { relayerAddress = DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
245
244
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -255,7 +254,7 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
255
254
|
if (!isDefined(token)) {
|
|
256
255
|
throw new Error("Could not find token information for ".concat(inputToken));
|
|
257
256
|
}
|
|
258
|
-
return [4 /*yield*/, this.gasFeePercent(deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, undefined, gasPrice)];
|
|
257
|
+
return [4 /*yield*/, this.gasFeePercent(deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, undefined, gasPrice, gasLimit)];
|
|
259
258
|
case 1:
|
|
260
259
|
gasFeePercent = _a.sent();
|
|
261
260
|
gasFeeTotal = gasFeePercent.mul(amountToRelay).div(fixedPointAdjustment);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,iCAAiC,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEpF,OAAO,EAEL,WAAW,EAEX,MAAM,EACN,oBAAoB,EACpB,8BAA8B,EAC9B,SAAS,EACT,GAAG,EACH,GAAG,EACH,aAAa,EACb,OAAO,EACP,IAAI,EACJ,OAAO,GACR,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,iCAAiC,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEpF,OAAO,EAEL,WAAW,EAEX,MAAM,EACN,oBAAoB,EACpB,8BAA8B,EAC9B,SAAS,EACT,GAAG,EACH,GAAG,EACH,aAAa,EACb,OAAO,EACP,IAAI,EACJ,OAAO,GACR,MAAM,UAAU,CAAC;AAclB,MAAM,CAAC,IAAM,wBAAwB,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AA0D3F,MAAM,CAAC,IAAM,cAAc,GAAW;IACpC,KAAK,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAAnB,CAAmB;IACvC,IAAI,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAAlB,CAAkB;IACrC,IAAI,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAAlB,CAAkB;IACrC,KAAK,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QAAK,OAAA,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAAnB,CAAmB;CACxC,CAAC;AAEF,8FAA8F;AAC9F,IAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AAEnC;IAcE,4BAAY,MAAiC,EAAE,MAAe,EAAE,kBAA2B;QACzF,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;QAE1C,IAAI,SAAS,IAAI,MAAM,EAAE;YACvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;SAC/B;aAAM;YACL,MAAM,CAAC,kBAAkB,KAAK,SAAS,EAAE,+DAA+D,CAAC,CAAC;YAC1G,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,2CAA2C,CAAC,CAAC;YAC3F,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;SACtD;QAED,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC;QAC5D,MAAM,CACJ,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,IAAI,CAAC,kBAAkB,IAAI,GAAG,EAC9D,sDAAsD,CACvD,CAAC;QACF,MAAM,CACJ,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,IAAI,CAAC,sBAAsB,IAAI,GAAG,EACtE,0DAA0D,CAC3D,CAAC;QACF,MAAM,CACJ,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,IAAI,GAAG,EACxD,mDAAmD,CACpD,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,WAAW,CAC1C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,UAAC,EAAqB;gBAApB,KAAK,QAAA,EAAE,YAAY,QAAA;YACjE,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,kBAAkB,CAAC,8CAA8C,CAAC,YAAY,CAAC,CAAC,CAAC;QAChH,CAAC,CAAC,CACH,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,iDAAiD,CAAC,CAAC;QAC3G,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,cAAc,CAAC;IACzC,CAAC;IAED;;;;;;;;;OASG;IACY,8CAA2B,GAA1C,UACE,MAAqD;QAErD,OAAQ,MAAoC,CAAC,OAAO,KAAK,SAAS,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACI,iEAA8C,GAArD,UACE,YAA2D;QAE3D,uHAAuH;QACvH,8HAA8H;QAC9H,kDAAkD;QAClD,IAAM,MAAM,GAA8B,IAAI,CAAC,2BAA2B,CAAC,YAAY,CAAC;YACtF,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;QAE9B,+BAA+B;QAC/B,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,0DAA0D;QAC1D,KAA8B,UAA0C,EAA1C,KAAA,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC,EAA1C,cAA0C,EAA1C,IAA0C,EAAE;YAArE,IAAM,eAAe,SAAA;YACxB,KAAuB,UAA8B,EAA9B,KAAA,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAA9B,cAA8B,EAA9B,IAA8B,EAAE;gBAAlD,IAAM,QAAQ,SAAA;gBACjB,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;aAC3C;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACI,6CAA0B,GAAjC,UAAkC,YAA+B;QAC/D,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;QACtF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,oCAAoC,CAAC,CAAC;QACzG,MAAM,CAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;IACvF,CAAC;IAED,0CAAa,GAAb,UAAc,WAAmB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACG,0CAAa,GAAnB,UACE,OAAgB,EAChB,aAA2B,EAC3B,gBAAwB,EACxB,cAAkD,EAClD,WAAoB,EACpB,YAAgC,EAChC,QAAuB,EACvB,QAAuB;QALvB,iCAAA,EAAA,wBAAwB;QACxB,+BAAA,EAAA,kDAAkD;QAElD,6BAAA,EAAA,gCAAgC;;;;;;;wBAIhC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;4BAAE,sBAAO,WAAW,EAAC;wBAE/C,UAAU,GAAK,OAAO,WAAZ,CAAa;wBACzB,KAAK,GAAG,8BAA8B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;wBACvE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;4BACrB,MAAM,IAAI,KAAK,CAAC,+CAAwC,UAAU,CAAE,CAAC,CAAC;yBACvE;wBAIK,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;wBAClF,OAAO,yBAAQ,OAAO,KAAE,YAAY,EAAE,eAAe,GAAE,CAAC;wBAElD,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,UAAC,KAAK;4BACpG,KAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,mBAAmB;gCACvB,OAAO,EAAE,gCAAgC;gCACzC,KAAK,OAAA;gCACL,gBAAgB,kBAAA;gCAChB,OAAO,SAAA;6BACR,CAAC,CAAC;4BACH,MAAM,KAAK,CAAC;wBACd,CAAC,CAAC,CAAC;wBACoC,qBAAM,OAAO,CAAC,GAAG,CAAC;gCACvD,WAAW;gCACX,WAAW,aAAX,WAAW,cAAX,WAAW,GACT,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAC,KAAK;oCACnD,KAAI,CAAC,MAAM,CAAC,KAAK,CAAC;wCAChB,EAAE,EAAE,mBAAmB;wCACvB,OAAO,EAAE,kCAAkC;wCAC3C,KAAK,OAAA;wCACL,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;wCAC9C,UAAU,YAAA;qCACX,CAAC,CAAC;oCACH,MAAM,KAAK,CAAC;gCACd,CAAC,CAAC;6BACL,CAAC,EAAA;;wBAbI,KAAiC,SAarC,EAbO,YAAY,qBAAA,EAAI,UAAU,QAAA;wBAc7B,cAAc,GAAG,aAAa,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;wBACzG,sBAAO,OAAO,CAAC,cAAc,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,EAAC;;;;KAC1D;IAED,qHAAqH;IACrH,6DAA6D;IAC7D,8CAAiB,GAAjB,UACE,cAA4B,EAC5B,YAAoB,EACpB,YAA8B,EAC9B,iBAAmC;;QAEnC,gEAAgE;QAChE,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,WAAW,CAAC;QAEzD,kEAAkE;QAClE,mEAAmE;QACnE,yBAAyB;QACzB,IAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,EAAE,EAAE,uBAAuB;gBAC3B,OAAO,EAAE,6CAAsC,YAAY,CAAE;aAC9D,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,qDAA8C,YAAY,CAAE,CAAC,CAAC;SAC/E;QACD,gHAAgH;QAChH,6GAA6G;QAC7G,iHAAiH;QACjH,gCAAgC;aAC3B;YACH,IAAM,MAAM,GACV,SAAS,CAAC,YAAY,CAAC,IAAI,SAAS,CAAC,iBAAiB,CAAC;gBACrD,CAAC,CAAC,MAAA,MAAA,MAAA,eAAe,CAAC,cAAc,0CAAG,YAAY,CAAC,0CAAG,iBAAiB,CAAC,mCAAI,eAAe,CAAC,OAAO;gBAChG,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;YAE9B,mCAAmC;YACnC,IAAM,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YACvE,6DAA6D;YAC7D,IAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAE3E,wGAAwG;YACxG,gEAAgE;YAChE,IAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAExC,mGAAmG;YACnG,gFAAgF;YAChF,IAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBACT,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAChG,IAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAC9E,IAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAErE,8GAA8G;YAC9G,SAAS;YACT,IAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,IAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAEjH,OAAO,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC5F;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACG,8CAAiB,GAAvB,UACE,OAAgB,EAChB,aAA4B,EAC5B,gBAAwB,EACxB,cAAkD,EAClD,WAAoB,EACpB,QAAuB,EACvB,QAAuB;QAJvB,iCAAA,EAAA,wBAAwB;QACxB,+BAAA,EAAA,kDAAkD;;;;;;wBAKlD,kDAAkD;wBAClD,sCAAsC;wBACtC,aAAa,aAAb,aAAa,cAAb,aAAa,IAAb,aAAa,GAAK,OAAO,CAAC,YAAY,EAAC;wBAC/B,UAAU,GAAK,OAAO,WAAZ,CAAa;wBACzB,KAAK,GAAG,8BAA8B,CAAC,UAAU,CAAC,CAAC;wBACzD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;4BACrB,MAAM,IAAI,KAAK,CAAC,+CAAwC,UAAU,CAAE,CAAC,CAAC;yBACvE;wBAEqB,qBAAM,IAAI,CAAC,aAAa,CAC5C,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,CACT,EAAA;;wBATK,aAAa,GAAG,SASrB;wBACK,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;wBACzE,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAC9C,aAAa,EACb,KAAK,CAAC,MAAM,EACZ,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,EAChC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CACtC,CAAC;wBACI,eAAe,GAAG,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;wBACjF,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;wBACvD,aAAa,GAAG,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;wBAQjD,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;wBAIlG,IAAI,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;4BAChC,UAAU,GAAG,WAAW,CAAC;4BACzB,cAAc,GAAG,IAAI,CAAC;yBACvB;6BAAM;4BACL,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;4BACzE,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;yBACrD;wBAED,sBAAO;gCACL,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gCACvC,WAAW,EAAE,KAAK,CAAC,MAAM;gCACzB,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gCACvC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;gCACnC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;gCAC3C,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;gCAC/C,eAAe,EAAE,eAAe,CAAC,QAAQ,EAAE;gCAC3C,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gCACnD,eAAe,EAAE,eAAe,CAAC,QAAQ,EAAE;gCAC3C,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gCACvC,eAAe,EAAE,IAAI,CAAC,eAAe;gCACrC,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ,EAAE;gCAC7C,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;gCACjC,cAAc,gBAAA;6BACf,EAAC;;;;KACH;IACH,yBAAC;AAAD,CAAC,AAjUD,IAiUC"}
|
|
@@ -137,9 +137,10 @@ export type TransactionCostEstimate = {
|
|
|
137
137
|
* @param provider A valid ethers provider - will be used to reason the gas price.
|
|
138
138
|
* @param gasMarkup Markup on the estimated gas cost. For example, 0.2 will increase this resulting value 1.2x.
|
|
139
139
|
* @param gasPrice A manually provided gas price - if set, this function will not resolve the current gas price.
|
|
140
|
+
* @param gasLimit A manually provided gas limit - if set, this function will not estimate the gas limit.
|
|
140
141
|
* @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
|
|
141
142
|
*/
|
|
142
|
-
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, gasMarkup: number, gasPrice?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
143
|
+
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, gasMarkup: number, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
143
144
|
export type UpdateDepositDetailsMessageType = {
|
|
144
145
|
UpdateDepositDetails: [
|
|
145
146
|
{
|
package/dist/esm/utils/common.js
CHANGED
|
@@ -207,11 +207,12 @@ export function retry(call, times, delayS) {
|
|
|
207
207
|
* @param provider A valid ethers provider - will be used to reason the gas price.
|
|
208
208
|
* @param gasMarkup Markup on the estimated gas cost. For example, 0.2 will increase this resulting value 1.2x.
|
|
209
209
|
* @param gasPrice A manually provided gas price - if set, this function will not resolve the current gas price.
|
|
210
|
+
* @param gasLimit A manually provided gas limit - if set, this function will not estimate the gas limit.
|
|
210
211
|
* @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
|
|
211
212
|
*/
|
|
212
|
-
export function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider, gasMarkup, gasPrice) {
|
|
213
|
+
export function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider, gasMarkup, gasPrice, gasLimit) {
|
|
213
214
|
return __awaiter(this, void 0, void 0, function () {
|
|
214
|
-
var gasTotalMultiplier, chainId, voidSigner, nativeGasCost, tokenGasCost, populatedTransaction, _a, l1GasCost, l2GasCost, gasPriceEstimate;
|
|
215
|
+
var gasTotalMultiplier, chainId, voidSigner, nativeGasCost, tokenGasCost, populatedTransaction, _a, l1GasCost, l2GasPrice, l2GasCost, gasPriceEstimate;
|
|
215
216
|
return __generator(this, function (_b) {
|
|
216
217
|
switch (_b.label) {
|
|
217
218
|
case 0:
|
|
@@ -221,21 +222,21 @@ export function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, sender
|
|
|
221
222
|
case 1:
|
|
222
223
|
chainId = (_b.sent()).chainId;
|
|
223
224
|
voidSigner = new VoidSigner(senderAddress, provider);
|
|
224
|
-
return [4 /*yield*/, voidSigner.estimateGas(unsignedTx)];
|
|
225
|
+
return [4 /*yield*/, voidSigner.estimateGas(__assign(__assign({}, unsignedTx), { gasPrice: gasPrice, gasLimit: gasLimit }))];
|
|
225
226
|
case 2:
|
|
226
227
|
nativeGasCost = _b.sent();
|
|
227
228
|
if (!chainIsOPStack(chainId)) return [3 /*break*/, 5];
|
|
228
229
|
assert(isOptimismL2Provider(provider), "Unexpected provider for chain ID ".concat(chainId, "."));
|
|
229
|
-
assert(gasPrice === undefined, "Gas price (".concat(gasPrice, ") supplied for Optimism gas estimation (unused)."));
|
|
230
230
|
return [4 /*yield*/, voidSigner.populateTransaction(__assign(__assign({}, unsignedTx), { gasLimit: nativeGasCost }))];
|
|
231
231
|
case 3:
|
|
232
232
|
populatedTransaction = _b.sent();
|
|
233
233
|
return [4 /*yield*/, Promise.all([
|
|
234
234
|
provider.estimateL1GasCost(populatedTransaction),
|
|
235
|
-
provider.
|
|
235
|
+
gasPrice || provider.getGasPrice(),
|
|
236
236
|
])];
|
|
237
237
|
case 4:
|
|
238
|
-
_a = _b.sent(), l1GasCost = _a[0],
|
|
238
|
+
_a = _b.sent(), l1GasCost = _a[0], l2GasPrice = _a[1];
|
|
239
|
+
l2GasCost = nativeGasCost.mul(l2GasPrice);
|
|
239
240
|
tokenGasCost = l1GasCost.add(l2GasCost);
|
|
240
241
|
return [3 /*break*/, 8];
|
|
241
242
|
case 5:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { L2Provider } from "@eth-optimism/sdk/dist/interfaces/l2-provider";
|
|
|
2
2
|
import { providers } from "ethers";
|
|
3
3
|
import { Deposit } from "../../interfaces";
|
|
4
4
|
import { SpokePool } from "../../typechain";
|
|
5
|
-
import { TransactionCostEstimate } from "../../utils";
|
|
5
|
+
import { BigNumberish, TransactionCostEstimate } from "../../utils";
|
|
6
6
|
import { Logger, QueryInterface } from "../relayFeeCalculator";
|
|
7
7
|
type Provider = providers.Provider;
|
|
8
8
|
type OptimismProvider = L2Provider<Provider>;
|
|
@@ -43,9 +43,10 @@ export declare class QueryBase implements QueryInterface {
|
|
|
43
43
|
* @param deposit V3 deposit instance.
|
|
44
44
|
* @param relayerAddress Relayer address to simulate with.
|
|
45
45
|
* @param gasPrice Optional gas price to use for the simulation.
|
|
46
|
-
* @
|
|
46
|
+
* @param gasLimit Optional gas limit to use for the simulation.
|
|
47
|
+
* @returns The gas estimate for this function call (multiplied with the optional buffer).
|
|
47
48
|
*/
|
|
48
|
-
getGasCosts(deposit: Deposit, relayer?: string, gasPrice?: import("ethers").BigNumberish | undefined): Promise<TransactionCostEstimate>;
|
|
49
|
+
getGasCosts(deposit: Deposit, relayer?: string, gasPrice?: import("ethers").BigNumberish | undefined, gasLimit?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
49
50
|
/**
|
|
50
51
|
* Retrieves the current price of a token
|
|
51
52
|
* @param tokenSymbol A valid [CoinGecko-ID](https://api.coingecko.com/api/v3/coins/list)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseQuery.d.ts","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAsB,MAAM,iBAAiB,CAAC;AAChE,OAAO,
|
|
1
|
+
{"version":3,"file":"baseQuery.d.ts","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAsB,MAAM,iBAAiB,CAAC;AAChE,OAAO,EACL,YAAY,EACZ,uBAAuB,EAGxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE/D,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AACnC,KAAK,gBAAgB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC7C,KAAK,iBAAiB,GAAG,MAAM,CAC7B,MAAM,EACN;IACE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB,CACF,CAAC;AAEF;;;GAGG;AACH,qBAAa,SAAU,YAAW,cAAc;IAe5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,gBAAgB;IAC9C,QAAQ,CAAC,aAAa,EAAE,iBAAiB;IACzC,QAAQ,CAAC,gBAAgB,EAAE,MAAM;IACjC,QAAQ,CAAC,uBAAuB,EAAE,MAAM;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,kBAAkB,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC;IACvB,QAAQ,CAAC,qBAAqB,EAAE,MAAM;IAtBxC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B;;;;;;;;;;;OAWG;gBAEQ,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,EACrC,aAAa,EAAE,iBAAiB,EAChC,gBAAgB,EAAE,MAAM,EACxB,uBAAuB,EAAE,MAAM,EAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,oBAAQ,EAC3B,aAAa,CAAC,2CAAc,EAC5B,qBAAqB,GAAE,MAAc;IAKhD;;;;;;;OAOG;IACG,WAAW,CACf,OAAO,EAAE,OAAO,EAChB,OAAO,SAAoC,EAC3C,QAAQ,4CAAqB,EAC7B,QAAQ,CAAC,EAAE,YAAY,GACtB,OAAO,CAAC,uBAAuB,CAAC;IAYnC;;;;OAIG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUzD;;;;OAIG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;CAI9C"}
|
|
@@ -2,7 +2,7 @@ import { BigNumber } from "ethers";
|
|
|
2
2
|
import { Deposit } from "../interfaces";
|
|
3
3
|
import { BigNumberish, TransactionCostEstimate } from "../utils";
|
|
4
4
|
export interface QueryInterface {
|
|
5
|
-
getGasCosts: (deposit: Deposit, relayer: string, gasPrice?: BigNumberish) => Promise<TransactionCostEstimate>;
|
|
5
|
+
getGasCosts: (deposit: Deposit, relayer: string, gasPrice?: BigNumberish, gasLimit?: BigNumberish) => Promise<TransactionCostEstimate>;
|
|
6
6
|
getTokenPrice: (tokenSymbol: string) => Promise<number>;
|
|
7
7
|
getTokenDecimals: (tokenSymbol: string) => number;
|
|
8
8
|
}
|
|
@@ -307,7 +307,7 @@ export declare class RelayFeeCalculator {
|
|
|
307
307
|
};
|
|
308
308
|
coingeckoId: string;
|
|
309
309
|
};
|
|
310
|
-
}, gasPrice?: BigNumberish): Promise<BigNumber>;
|
|
310
|
+
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<BigNumber>;
|
|
311
311
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
312
312
|
/**
|
|
313
313
|
* Retrieves the relayer fee details for a deposit.
|
|
@@ -322,7 +322,7 @@ export declare class RelayFeeCalculator {
|
|
|
322
322
|
* @param _tokenPrice The token price for normalizing fees
|
|
323
323
|
* @returns A resulting `RelayerFeeDetails` object
|
|
324
324
|
*/
|
|
325
|
-
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
325
|
+
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
326
326
|
}
|
|
327
327
|
export {};
|
|
328
328
|
//# sourceMappingURL=relayFeeCalculator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayFeeCalculator.d.ts","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,YAAY,EAEZ,uBAAuB,EAWxB,MAAM,UAAU,CAAC;AAGlB,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"relayFeeCalculator.d.ts","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -137,9 +137,10 @@ export type TransactionCostEstimate = {
|
|
|
137
137
|
* @param provider A valid ethers provider - will be used to reason the gas price.
|
|
138
138
|
* @param gasMarkup Markup on the estimated gas cost. For example, 0.2 will increase this resulting value 1.2x.
|
|
139
139
|
* @param gasPrice A manually provided gas price - if set, this function will not resolve the current gas price.
|
|
140
|
+
* @param gasLimit A manually provided gas limit - if set, this function will not estimate the gas limit.
|
|
140
141
|
* @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
|
|
141
142
|
*/
|
|
142
|
-
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, gasMarkup: number, gasPrice?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
143
|
+
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, gasMarkup: number, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<TransactionCostEstimate>;
|
|
143
144
|
export type UpdateDepositDetailsMessageType = {
|
|
144
145
|
UpdateDepositDetails: [
|
|
145
146
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AAG3E,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,SAAS,EAAU,oBAAoB,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,EAAE,EAAQ,MAAM,kBAAkB,CAAC;AAI1D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AACnD,eAAO,MAAM,WAAW,+CAA+B,CAAC;AACxD,eAAO,MAAM,WAAW,WAAqD,CAAC;AAE9E;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,QAAS,YAAY,aAAa,MAAM,KAAG,EAAuD,CAAC;AAEvH;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,QAAS,YAAY,aAAa,MAAM,KAAG,MACX,CAAC;AAErD;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,EAAE,CAIxD;AACD;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,EAAE,CAIxD;AAED,eAAO,MAAM,oBAAoB,WAAe,CAAC;AAEjD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,YAAY,EACxB,KAAK,GAAE,MAAM,GAAG,MAAU,EAC1B,UAAU,SAAK,EACf,cAAc,SAAK,GAClB,MAAM,CAIR;AAED;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,QAAS,YAAY,YAAY,YAAY,KAAG,SAEnE,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,YAAY,EACtB,KAAK,GAAE,MAAM,GAAG,MAAU,EAC1B,QAAQ,SAAK,GACZ,MAAM,CAGR;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,GAAG,EAAE,CAE9E;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B,gBAC5B,UAAU,aACZ,UAAU,kBACL,UAAU,kBACV,UAAU,KACzB,MAGF,CAAC;AACF;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,gBAC1B,UAAU,aACZ,UAAU,kBACL,UAAU,kBACV,UAAU,KACzB,MAaF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,gBACL,UAAU,aACZ,UAAU,kBACL,UAAU,kBACV,UAAU,KACzB,MAEF,CAAC;AACF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,QAAS,MAAM,OAAO,MAAM,QAAQ,MAAM,eAYvE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,oBAEpC;AAED;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAQ1F;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,aAAa,EAAE,SAAS,CAAC;IACzB,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@across-protocol/sdk",
|
|
3
3
|
"author": "UMA Team",
|
|
4
|
-
"version": "3.1.
|
|
4
|
+
"version": "3.1.15",
|
|
5
5
|
"license": "AGPL-3.0",
|
|
6
6
|
"homepage": "https://docs.across.to/reference/sdk",
|
|
7
7
|
"files": [
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
},
|
|
100
100
|
"dependencies": {
|
|
101
101
|
"@across-protocol/across-token": "^1.0.0",
|
|
102
|
-
"@across-protocol/constants": "^3.1.
|
|
102
|
+
"@across-protocol/constants": "^3.1.11",
|
|
103
103
|
"@across-protocol/contracts": "^3.0.6",
|
|
104
104
|
"@eth-optimism/sdk": "^3.3.1",
|
|
105
105
|
"@pinata/sdk": "^2.1.0",
|
|
@@ -59,15 +59,24 @@ export class QueryBase implements QueryInterface {
|
|
|
59
59
|
* @param deposit V3 deposit instance.
|
|
60
60
|
* @param relayerAddress Relayer address to simulate with.
|
|
61
61
|
* @param gasPrice Optional gas price to use for the simulation.
|
|
62
|
-
* @
|
|
62
|
+
* @param gasLimit Optional gas limit to use for the simulation.
|
|
63
|
+
* @returns The gas estimate for this function call (multiplied with the optional buffer).
|
|
63
64
|
*/
|
|
64
65
|
async getGasCosts(
|
|
65
66
|
deposit: Deposit,
|
|
66
67
|
relayer = DEFAULT_SIMULATED_RELAYER_ADDRESS,
|
|
67
|
-
gasPrice = this.fixedGasPrice
|
|
68
|
+
gasPrice = this.fixedGasPrice,
|
|
69
|
+
gasLimit?: BigNumberish
|
|
68
70
|
): Promise<TransactionCostEstimate> {
|
|
69
71
|
const tx = await populateV3Relay(this.spokePool, deposit, relayer);
|
|
70
|
-
return estimateTotalGasRequiredByUnsignedTransaction(
|
|
72
|
+
return estimateTotalGasRequiredByUnsignedTransaction(
|
|
73
|
+
tx,
|
|
74
|
+
relayer,
|
|
75
|
+
this.provider,
|
|
76
|
+
this.gasMarkup,
|
|
77
|
+
gasPrice,
|
|
78
|
+
gasLimit
|
|
79
|
+
);
|
|
71
80
|
}
|
|
72
81
|
|
|
73
82
|
/**
|
|
@@ -20,7 +20,12 @@ import {
|
|
|
20
20
|
|
|
21
21
|
// This needs to be implemented for every chain and passed into RelayFeeCalculator
|
|
22
22
|
export interface QueryInterface {
|
|
23
|
-
getGasCosts: (
|
|
23
|
+
getGasCosts: (
|
|
24
|
+
deposit: Deposit,
|
|
25
|
+
relayer: string,
|
|
26
|
+
gasPrice?: BigNumberish,
|
|
27
|
+
gasLimit?: BigNumberish
|
|
28
|
+
) => Promise<TransactionCostEstimate>;
|
|
24
29
|
getTokenPrice: (tokenSymbol: string) => Promise<number>;
|
|
25
30
|
getTokenDecimals: (tokenSymbol: string) => number;
|
|
26
31
|
}
|
|
@@ -225,7 +230,8 @@ export class RelayFeeCalculator {
|
|
|
225
230
|
relayerAddress = DEFAULT_SIMULATED_RELAYER_ADDRESS,
|
|
226
231
|
_tokenPrice?: number,
|
|
227
232
|
tokenMapping = TOKEN_SYMBOLS_MAP,
|
|
228
|
-
gasPrice?: BigNumberish
|
|
233
|
+
gasPrice?: BigNumberish,
|
|
234
|
+
gasLimit?: BigNumberish
|
|
229
235
|
): Promise<BigNumber> {
|
|
230
236
|
if (toBN(amountToRelay).eq(bnZero)) return MAX_BIG_INT;
|
|
231
237
|
|
|
@@ -240,7 +246,7 @@ export class RelayFeeCalculator {
|
|
|
240
246
|
const simulatedAmount = simulateZeroFill ? safeOutputAmount : toBN(amountToRelay);
|
|
241
247
|
deposit = { ...deposit, outputAmount: simulatedAmount };
|
|
242
248
|
|
|
243
|
-
const getGasCosts = this.queries.getGasCosts(deposit, relayerAddress, gasPrice).catch((error) => {
|
|
249
|
+
const getGasCosts = this.queries.getGasCosts(deposit, relayerAddress, gasPrice, gasLimit).catch((error) => {
|
|
244
250
|
this.logger.error({
|
|
245
251
|
at: "sdk/gasFeePercent",
|
|
246
252
|
message: "Error while fetching gas costs",
|
|
@@ -250,19 +256,19 @@ export class RelayFeeCalculator {
|
|
|
250
256
|
});
|
|
251
257
|
throw error;
|
|
252
258
|
});
|
|
253
|
-
const getTokenPrice = this.queries.getTokenPrice(token.symbol).catch((error) => {
|
|
254
|
-
this.logger.error({
|
|
255
|
-
at: "sdk/gasFeePercent",
|
|
256
|
-
message: "Error while fetching token price",
|
|
257
|
-
error,
|
|
258
|
-
destinationChainId: deposit.destinationChainId,
|
|
259
|
-
inputToken,
|
|
260
|
-
});
|
|
261
|
-
throw error;
|
|
262
|
-
});
|
|
263
259
|
const [{ tokenGasCost }, tokenPrice] = await Promise.all([
|
|
264
260
|
getGasCosts,
|
|
265
|
-
_tokenPrice
|
|
261
|
+
_tokenPrice ??
|
|
262
|
+
this.queries.getTokenPrice(token.symbol).catch((error) => {
|
|
263
|
+
this.logger.error({
|
|
264
|
+
at: "sdk/gasFeePercent",
|
|
265
|
+
message: "Error while fetching token price",
|
|
266
|
+
error,
|
|
267
|
+
destinationChainId: deposit.destinationChainId,
|
|
268
|
+
inputToken,
|
|
269
|
+
});
|
|
270
|
+
throw error;
|
|
271
|
+
}),
|
|
266
272
|
]);
|
|
267
273
|
const gasFeesInToken = nativeToToken(tokenGasCost, tokenPrice, token.decimals, this.nativeTokenDecimals);
|
|
268
274
|
return percent(gasFeesInToken, amountToRelay.toString());
|
|
@@ -345,7 +351,8 @@ export class RelayFeeCalculator {
|
|
|
345
351
|
simulateZeroFill = false,
|
|
346
352
|
relayerAddress = DEFAULT_SIMULATED_RELAYER_ADDRESS,
|
|
347
353
|
_tokenPrice?: number,
|
|
348
|
-
gasPrice?: BigNumberish
|
|
354
|
+
gasPrice?: BigNumberish,
|
|
355
|
+
gasLimit?: BigNumberish
|
|
349
356
|
): Promise<RelayerFeeDetails> {
|
|
350
357
|
// If the amount to relay is not provided, then we
|
|
351
358
|
// should use the full deposit amount.
|
|
@@ -363,7 +370,8 @@ export class RelayFeeCalculator {
|
|
|
363
370
|
relayerAddress,
|
|
364
371
|
_tokenPrice,
|
|
365
372
|
undefined,
|
|
366
|
-
gasPrice
|
|
373
|
+
gasPrice,
|
|
374
|
+
gasLimit
|
|
367
375
|
);
|
|
368
376
|
const gasFeeTotal = gasFeePercent.mul(amountToRelay).div(fixedPointAdjustment);
|
|
369
377
|
const capitalFeePercent = this.capitalFeePercent(
|
package/src/utils/common.ts
CHANGED
|
@@ -242,6 +242,7 @@ export type TransactionCostEstimate = {
|
|
|
242
242
|
* @param provider A valid ethers provider - will be used to reason the gas price.
|
|
243
243
|
* @param gasMarkup Markup on the estimated gas cost. For example, 0.2 will increase this resulting value 1.2x.
|
|
244
244
|
* @param gasPrice A manually provided gas price - if set, this function will not resolve the current gas price.
|
|
245
|
+
* @param gasLimit A manually provided gas limit - if set, this function will not estimate the gas limit.
|
|
245
246
|
* @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
|
|
246
247
|
*/
|
|
247
248
|
export async function estimateTotalGasRequiredByUnsignedTransaction(
|
|
@@ -249,7 +250,8 @@ export async function estimateTotalGasRequiredByUnsignedTransaction(
|
|
|
249
250
|
senderAddress: string,
|
|
250
251
|
provider: providers.Provider | L2Provider<providers.Provider>,
|
|
251
252
|
gasMarkup: number,
|
|
252
|
-
gasPrice?: BigNumberish
|
|
253
|
+
gasPrice?: BigNumberish,
|
|
254
|
+
gasLimit?: BigNumberish
|
|
253
255
|
): Promise<TransactionCostEstimate> {
|
|
254
256
|
assert(
|
|
255
257
|
gasMarkup > -1 && gasMarkup <= 4,
|
|
@@ -260,23 +262,27 @@ export async function estimateTotalGasRequiredByUnsignedTransaction(
|
|
|
260
262
|
const voidSigner = new VoidSigner(senderAddress, provider);
|
|
261
263
|
|
|
262
264
|
// Estimate the Gas units required to submit this transaction.
|
|
263
|
-
let nativeGasCost = await voidSigner.estimateGas(
|
|
265
|
+
let nativeGasCost = await voidSigner.estimateGas({
|
|
266
|
+
...unsignedTx,
|
|
267
|
+
gasPrice,
|
|
268
|
+
gasLimit,
|
|
269
|
+
});
|
|
264
270
|
let tokenGasCost: BigNumber;
|
|
265
271
|
|
|
266
272
|
// OP stack is a special case; gas cost is computed by the SDK, without having to query price.
|
|
267
273
|
if (chainIsOPStack(chainId)) {
|
|
268
274
|
assert(isOptimismL2Provider(provider), `Unexpected provider for chain ID ${chainId}.`);
|
|
269
|
-
assert(gasPrice === undefined, `Gas price (${gasPrice}) supplied for Optimism gas estimation (unused).`);
|
|
270
275
|
const populatedTransaction = await voidSigner.populateTransaction({
|
|
271
276
|
...unsignedTx,
|
|
272
277
|
gasLimit: nativeGasCost, // prevents additional gas estimation call
|
|
273
278
|
});
|
|
274
279
|
// Concurrently estimate the gas cost on L1 and L2 instead of calling
|
|
275
280
|
// `provider.estimateTotalGasCost` to improve performance.
|
|
276
|
-
const [l1GasCost,
|
|
281
|
+
const [l1GasCost, l2GasPrice] = await Promise.all([
|
|
277
282
|
provider.estimateL1GasCost(populatedTransaction),
|
|
278
|
-
provider.
|
|
283
|
+
gasPrice || provider.getGasPrice(),
|
|
279
284
|
]);
|
|
285
|
+
const l2GasCost = nativeGasCost.mul(l2GasPrice);
|
|
280
286
|
tokenGasCost = l1GasCost.add(l2GasCost);
|
|
281
287
|
} else {
|
|
282
288
|
if (!gasPrice) {
|