@across-protocol/sdk 3.2.13 → 3.2.14
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/clients/BundleDataClient/utils/SuperstructUtils.d.ts +30 -30
- package/dist/cjs/coingecko/Coingecko.d.ts +9 -1
- package/dist/cjs/coingecko/Coingecko.js +94 -46
- package/dist/cjs/coingecko/Coingecko.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.js +21 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.d.ts +4 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.js +26 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon-viem.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon-viem.js +84 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon-viem.js.map +1 -0
- package/dist/cjs/gasPriceOracle/oracle.d.ts +3 -1
- package/dist/cjs/gasPriceOracle/oracle.js +71 -4
- package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
- package/dist/cjs/gasPriceOracle/types.d.ts +3 -2
- package/dist/cjs/gasPriceOracle/util.d.ts +3 -3
- package/dist/cjs/gasPriceOracle/util.js +12 -1
- package/dist/cjs/gasPriceOracle/util.js.map +1 -1
- package/dist/cjs/providers/types.d.ts +3 -3
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +7 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +13 -8
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +8 -2
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +4 -2
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/cjs/utils/common.d.ts +6 -1
- package/dist/cjs/utils/common.js +21 -17
- package/dist/cjs/utils/common.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +30 -30
- package/dist/esm/coingecko/Coingecko.d.ts +9 -1
- package/dist/esm/coingecko/Coingecko.js +96 -46
- package/dist/esm/coingecko/Coingecko.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.js +20 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum-viem.d.ts +4 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum-viem.js +21 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum-viem.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/polygon-viem.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/polygon-viem.js +82 -0
- package/dist/esm/gasPriceOracle/adapters/polygon-viem.js.map +1 -0
- package/dist/esm/gasPriceOracle/oracle.d.ts +9 -1
- package/dist/esm/gasPriceOracle/oracle.js +82 -3
- package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
- package/dist/esm/gasPriceOracle/types.d.ts +3 -2
- package/dist/esm/gasPriceOracle/util.d.ts +3 -3
- package/dist/esm/gasPriceOracle/util.js +9 -0
- package/dist/esm/gasPriceOracle/util.js.map +1 -1
- package/dist/esm/providers/types.d.ts +3 -3
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +12 -3
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +18 -10
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +8 -2
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +4 -2
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/esm/utils/common.d.ts +10 -3
- package/dist/esm/utils/common.js +25 -19
- package/dist/esm/utils/common.js.map +1 -1
- package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +30 -30
- package/dist/types/coingecko/Coingecko.d.ts +9 -1
- package/dist/types/coingecko/Coingecko.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/arbitrum-viem.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/arbitrum-viem.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/ethereum-viem.d.ts +5 -0
- package/dist/types/gasPriceOracle/adapters/ethereum-viem.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/polygon-viem.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/polygon-viem.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/oracle.d.ts +9 -1
- package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/types.d.ts +3 -2
- package/dist/types/gasPriceOracle/types.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/util.d.ts +3 -3
- package/dist/types/gasPriceOracle/util.d.ts.map +1 -1
- package/dist/types/providers/types.d.ts +3 -3
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +12 -3
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +8 -2
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
- package/dist/types/utils/common.d.ts +10 -3
- package/dist/types/utils/common.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/coingecko/Coingecko.ts +94 -47
- package/src/gasPriceOracle/adapters/arbitrum-viem.ts +13 -0
- package/src/gasPriceOracle/adapters/ethereum-viem.ts +19 -0
- package/src/gasPriceOracle/adapters/polygon-viem.ts +86 -0
- package/src/gasPriceOracle/oracle.ts +69 -5
- package/src/gasPriceOracle/types.ts +4 -2
- package/src/gasPriceOracle/util.ts +12 -3
- package/src/relayFeeCalculator/chain-queries/baseQuery.ts +19 -7
- package/src/relayFeeCalculator/relayFeeCalculator.ts +15 -12
- package/src/utils/common.ts +15 -6
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { __awaiter, __generator } from "tslib";
|
|
2
2
|
import { CHAIN_IDs } from "../constants";
|
|
3
|
-
import { chainIsOPStack } from "../utils";
|
|
3
|
+
import { BigNumber, chainIsOPStack } from "../utils";
|
|
4
|
+
import { getPublicClient } from "./util";
|
|
4
5
|
import * as arbitrum from "./adapters/arbitrum";
|
|
5
6
|
import * as ethereum from "./adapters/ethereum";
|
|
6
7
|
import * as linea from "./adapters/linea";
|
|
7
8
|
import * as polygon from "./adapters/polygon";
|
|
9
|
+
import * as arbitrumViem from "./adapters/arbitrum-viem";
|
|
10
|
+
import * as polygonViem from "./adapters/polygon-viem";
|
|
8
11
|
/**
|
|
9
12
|
* Provide an estimate for the current gas price for a particular chain.
|
|
10
13
|
* @param chainId The chain ID to query for gas prices.
|
|
@@ -12,7 +15,35 @@ import * as polygon from "./adapters/polygon";
|
|
|
12
15
|
* @param legacyFallback In the case of an unrecognised chain, fall back to type 0 gas estimation.
|
|
13
16
|
* @returns Am object of type GasPriceEstimate.
|
|
14
17
|
*/
|
|
15
|
-
export function getGasPriceEstimate(provider, chainId, legacyFallback) {
|
|
18
|
+
export function getGasPriceEstimate(provider, chainId, transport, legacyFallback) {
|
|
19
|
+
if (legacyFallback === void 0) { legacyFallback = true; }
|
|
20
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
21
|
+
var useViem;
|
|
22
|
+
return __generator(this, function (_a) {
|
|
23
|
+
switch (_a.label) {
|
|
24
|
+
case 0:
|
|
25
|
+
if (!(chainId === undefined)) return [3 /*break*/, 2];
|
|
26
|
+
return [4 /*yield*/, provider.getNetwork()];
|
|
27
|
+
case 1:
|
|
28
|
+
(chainId = (_a.sent()).chainId);
|
|
29
|
+
_a.label = 2;
|
|
30
|
+
case 2:
|
|
31
|
+
useViem = process.env["NEW_GAS_PRICE_ORACLE_".concat(chainId)] === "true";
|
|
32
|
+
return [2 /*return*/, useViem
|
|
33
|
+
? getViemGasPriceEstimate(chainId, transport)
|
|
34
|
+
: getEthersGasPriceEstimate(provider, chainId, legacyFallback)];
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Provide an estimate for the current gas price for a particular chain.
|
|
41
|
+
* @param chainId The chain ID to query for gas prices.
|
|
42
|
+
* @param provider A valid ethers provider.
|
|
43
|
+
* @param legacyFallback In the case of an unrecognised chain, fall back to type 0 gas estimation.
|
|
44
|
+
* @returns Am object of type GasPriceEstimate.
|
|
45
|
+
*/
|
|
46
|
+
function getEthersGasPriceEstimate(provider, chainId, legacyFallback) {
|
|
16
47
|
if (legacyFallback === void 0) { legacyFallback = true; }
|
|
17
48
|
return __awaiter(this, void 0, void 0, function () {
|
|
18
49
|
var gasPriceFeeds, gasPriceFeed;
|
|
@@ -30,7 +61,6 @@ export function getGasPriceEstimate(provider, chainId, legacyFallback) {
|
|
|
30
61
|
_a[CHAIN_IDs.ALEPH_ZERO] = arbitrum.eip1559,
|
|
31
62
|
_a[CHAIN_IDs.ARBITRUM] = arbitrum.eip1559,
|
|
32
63
|
_a[CHAIN_IDs.BASE] = ethereum.eip1559,
|
|
33
|
-
_a[CHAIN_IDs.BOBA] = ethereum.legacy,
|
|
34
64
|
_a[CHAIN_IDs.LINEA] = linea.eip1559,
|
|
35
65
|
_a[CHAIN_IDs.MAINNET] = ethereum.eip1559,
|
|
36
66
|
_a[CHAIN_IDs.MODE] = ethereum.eip1559,
|
|
@@ -51,4 +81,53 @@ export function getGasPriceEstimate(provider, chainId, legacyFallback) {
|
|
|
51
81
|
});
|
|
52
82
|
});
|
|
53
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Provide an estimate for the current gas price for a particular chain.
|
|
86
|
+
* @param providerOrChainId A valid ethers provider or a chain ID.
|
|
87
|
+
* @param transport An optional transport object for custom gas price retrieval.
|
|
88
|
+
* @returns Am object of type GasPriceEstimate.
|
|
89
|
+
*/
|
|
90
|
+
export function getViemGasPriceEstimate(providerOrChainId, transport) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
92
|
+
var chainId, _a, viemProvider, gasPriceFeeds, maxFeePerGas, maxPriorityFeePerGas, gasPrice;
|
|
93
|
+
var _b, _c, _d;
|
|
94
|
+
return __generator(this, function (_e) {
|
|
95
|
+
switch (_e.label) {
|
|
96
|
+
case 0:
|
|
97
|
+
if (!(typeof providerOrChainId === "number")) return [3 /*break*/, 1];
|
|
98
|
+
_a = providerOrChainId;
|
|
99
|
+
return [3 /*break*/, 3];
|
|
100
|
+
case 1: return [4 /*yield*/, providerOrChainId.getNetwork()];
|
|
101
|
+
case 2:
|
|
102
|
+
_a = (_e.sent()).chainId;
|
|
103
|
+
_e.label = 3;
|
|
104
|
+
case 3:
|
|
105
|
+
chainId = _a;
|
|
106
|
+
viemProvider = getPublicClient(chainId, transport);
|
|
107
|
+
gasPriceFeeds = (_b = {},
|
|
108
|
+
_b[CHAIN_IDs.ALEPH_ZERO] = arbitrumViem.eip1559,
|
|
109
|
+
_b[CHAIN_IDs.ARBITRUM] = arbitrumViem.eip1559,
|
|
110
|
+
_b[CHAIN_IDs.POLYGON] = polygonViem.gasStation,
|
|
111
|
+
_b);
|
|
112
|
+
if (!gasPriceFeeds[chainId]) return [3 /*break*/, 5];
|
|
113
|
+
return [4 /*yield*/, gasPriceFeeds[chainId](viemProvider, chainId)];
|
|
114
|
+
case 4:
|
|
115
|
+
(_c = _e.sent(), maxFeePerGas = _c.maxFeePerGas, maxPriorityFeePerGas = _c.maxPriorityFeePerGas);
|
|
116
|
+
return [3 /*break*/, 7];
|
|
117
|
+
case 5:
|
|
118
|
+
gasPrice = void 0;
|
|
119
|
+
return [4 /*yield*/, viemProvider.estimateFeesPerGas()];
|
|
120
|
+
case 6:
|
|
121
|
+
(_d = _e.sent(), maxFeePerGas = _d.maxFeePerGas, maxPriorityFeePerGas = _d.maxPriorityFeePerGas, gasPrice = _d.gasPrice);
|
|
122
|
+
maxFeePerGas !== null && maxFeePerGas !== void 0 ? maxFeePerGas : (maxFeePerGas = gasPrice);
|
|
123
|
+
maxPriorityFeePerGas !== null && maxPriorityFeePerGas !== void 0 ? maxPriorityFeePerGas : (maxPriorityFeePerGas = BigInt(0));
|
|
124
|
+
_e.label = 7;
|
|
125
|
+
case 7: return [2 /*return*/, {
|
|
126
|
+
maxFeePerGas: BigNumber.from(maxFeePerGas.toString()),
|
|
127
|
+
maxPriorityFeePerGas: BigNumber.from(maxPriorityFeePerGas.toString()),
|
|
128
|
+
}];
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
}
|
|
54
133
|
//# sourceMappingURL=oracle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../../src/gasPriceOracle/oracle.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../../src/gasPriceOracle/oracle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { type Chain, type Transport, PublicClient, FeeValuesEIP1559 } from "viem";
|
|
2
2
|
import { BigNumber } from "../utils";
|
|
3
|
+
export type InternalGasPriceEstimate = FeeValuesEIP1559;
|
|
3
4
|
export type GasPriceEstimate = {
|
|
4
5
|
maxFeePerGas: BigNumber;
|
|
5
6
|
maxPriorityFeePerGas: BigNumber;
|
|
6
7
|
};
|
|
7
8
|
export interface GasPriceFeed {
|
|
8
|
-
(provider:
|
|
9
|
+
(provider: PublicClient<Transport, Chain>, chainId: number): Promise<InternalGasPriceEstimate>;
|
|
9
10
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
export declare function
|
|
1
|
+
import { type Chain, type PublicClient, Transport } from "viem";
|
|
2
|
+
export declare function gasPriceError(method: string, chainId: number, data: unknown): void;
|
|
3
|
+
export declare function getPublicClient(chainId: number, transport?: Transport): PublicClient<Transport, Chain>;
|
|
@@ -1,4 +1,13 @@
|
|
|
1
|
+
import assert from "assert";
|
|
2
|
+
import { createPublicClient, http } from "viem";
|
|
3
|
+
import * as chains from "viem/chains";
|
|
1
4
|
export function gasPriceError(method, chainId, data) {
|
|
2
5
|
throw new Error("Malformed ".concat(method, " response on chain ID ").concat(chainId, " (").concat(JSON.stringify(data), ")"));
|
|
3
6
|
}
|
|
7
|
+
export function getPublicClient(chainId, transport) {
|
|
8
|
+
transport !== null && transport !== void 0 ? transport : (transport = http()); // @todo: Inherit URL from provider.
|
|
9
|
+
var chain = Object.values(chains).find(function (chain) { return chain.id === chainId; });
|
|
10
|
+
assert(chain);
|
|
11
|
+
return createPublicClient({ chain: chain, transport: transport });
|
|
12
|
+
}
|
|
4
13
|
//# sourceMappingURL=util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/gasPriceOracle/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/gasPriceOracle/util.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAiC,kBAAkB,EAAE,IAAI,EAAa,MAAM,MAAM,CAAC;AAC1F,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,OAAe,EAAE,IAAa;IAC1E,MAAM,IAAI,KAAK,CAAC,oBAAa,MAAM,mCAAyB,OAAO,eAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAG,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,SAAqB;IACpE,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,IAAI,EAAE,EAAC,CAAC,oCAAoC;IAC1D,IAAM,KAAK,GAAsB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,EAAE,KAAK,OAAO,EAApB,CAAoB,CAAC,CAAC;IAC7F,MAAM,CAAC,KAAK,CAAC,CAAC;IAEd,OAAO,kBAAkB,CAAC,EAAE,KAAK,OAAA,EAAE,SAAS,WAAA,EAAE,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
export type RPCProvider = "ALCHEMY" | "DRPC" | "INFURA" | "INFURA_DIN";
|
|
2
2
|
export type RPCTransport = "https" | "wss";
|
|
3
3
|
export declare const JsonRpcError: import("superstruct").Struct<{
|
|
4
|
+
id: string | number;
|
|
4
5
|
error: {
|
|
5
|
-
message: string;
|
|
6
6
|
code: number;
|
|
7
|
+
message: string;
|
|
7
8
|
data?: any;
|
|
8
9
|
};
|
|
9
|
-
id: string | number;
|
|
10
10
|
jsonrpc: "2.0";
|
|
11
11
|
}, {
|
|
12
12
|
jsonrpc: import("superstruct").Struct<"2.0", "2.0">;
|
|
13
13
|
id: import("superstruct").Struct<string | number, null>;
|
|
14
14
|
error: import("superstruct").Struct<{
|
|
15
|
-
message: string;
|
|
16
15
|
code: number;
|
|
16
|
+
message: string;
|
|
17
17
|
data?: any;
|
|
18
18
|
}, {
|
|
19
19
|
code: import("superstruct").Struct<number, null>;
|
|
@@ -4,6 +4,7 @@ import { Deposit } from "../../interfaces";
|
|
|
4
4
|
import { SpokePool } from "../../typechain";
|
|
5
5
|
import { BigNumberish, TransactionCostEstimate } from "../../utils";
|
|
6
6
|
import { Logger, QueryInterface } from "../relayFeeCalculator";
|
|
7
|
+
import { Transport } from "viem";
|
|
7
8
|
type Provider = providers.Provider;
|
|
8
9
|
type OptimismProvider = L2Provider<Provider>;
|
|
9
10
|
type SymbolMappingType = Record<string, {
|
|
@@ -42,11 +43,19 @@ export declare class QueryBase implements QueryInterface {
|
|
|
42
43
|
* Retrieves the current gas costs of performing a fillRelay contract at the referenced SpokePool.
|
|
43
44
|
* @param deposit V3 deposit instance.
|
|
44
45
|
* @param relayerAddress Relayer address to simulate with.
|
|
45
|
-
* @param
|
|
46
|
-
* @param
|
|
46
|
+
* @param options
|
|
47
|
+
* @param options.gasPrice Optional gas price to use for the simulation.
|
|
48
|
+
* @param options.gasUnits Optional gas units to use for the simulation.
|
|
49
|
+
* @param options.omitMarkup Optional flag to omit the gas markup.
|
|
50
|
+
* @param options.transport Optional transport object for custom gas price retrieval.
|
|
47
51
|
* @returns The gas estimate for this function call (multiplied with the optional buffer).
|
|
48
52
|
*/
|
|
49
|
-
getGasCosts(deposit: Deposit, relayer?: string,
|
|
53
|
+
getGasCosts(deposit: Deposit, relayer?: string, options?: Partial<{
|
|
54
|
+
gasPrice: BigNumberish;
|
|
55
|
+
gasUnits: BigNumberish;
|
|
56
|
+
omitMarkup: boolean;
|
|
57
|
+
transport: Transport;
|
|
58
|
+
}>): Promise<TransactionCostEstimate>;
|
|
50
59
|
/**
|
|
51
60
|
* Retrieves the current price of a token
|
|
52
61
|
* @param tokenSymbol A valid [CoinGecko-ID](https://api.coingecko.com/api/v3/coins/list)
|
|
@@ -38,27 +38,35 @@ var QueryBase = /** @class */ (function () {
|
|
|
38
38
|
* Retrieves the current gas costs of performing a fillRelay contract at the referenced SpokePool.
|
|
39
39
|
* @param deposit V3 deposit instance.
|
|
40
40
|
* @param relayerAddress Relayer address to simulate with.
|
|
41
|
-
* @param
|
|
42
|
-
* @param
|
|
41
|
+
* @param options
|
|
42
|
+
* @param options.gasPrice Optional gas price to use for the simulation.
|
|
43
|
+
* @param options.gasUnits Optional gas units to use for the simulation.
|
|
44
|
+
* @param options.omitMarkup Optional flag to omit the gas markup.
|
|
45
|
+
* @param options.transport Optional transport object for custom gas price retrieval.
|
|
43
46
|
* @returns The gas estimate for this function call (multiplied with the optional buffer).
|
|
44
47
|
*/
|
|
45
|
-
QueryBase.prototype.getGasCosts = function (deposit, relayer,
|
|
48
|
+
QueryBase.prototype.getGasCosts = function (deposit, relayer, options) {
|
|
46
49
|
if (relayer === void 0) { relayer = DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
47
|
-
if (
|
|
50
|
+
if (options === void 0) { options = {}; }
|
|
48
51
|
return __awaiter(this, void 0, void 0, function () {
|
|
49
|
-
var gasMarkup, gasTotalMultiplier, tx,
|
|
50
|
-
return __generator(this, function (
|
|
51
|
-
switch (
|
|
52
|
+
var _a, gasPrice, gasUnits, omitMarkup, transport, gasMarkup, gasTotalMultiplier, tx, _b, nativeGasCost, tokenGasCost;
|
|
53
|
+
return __generator(this, function (_c) {
|
|
54
|
+
switch (_c.label) {
|
|
52
55
|
case 0:
|
|
56
|
+
_a = options.gasPrice, gasPrice = _a === void 0 ? this.fixedGasPrice : _a, gasUnits = options.gasUnits, omitMarkup = options.omitMarkup, transport = options.transport;
|
|
53
57
|
gasMarkup = omitMarkup ? 0 : this.gasMarkup;
|
|
54
58
|
assert(gasMarkup > -1 && gasMarkup <= 4, "Require -1.0 < Gas Markup (".concat(gasMarkup, ") <= 4.0 for a total gas multiplier within (0, +5.0]"));
|
|
55
59
|
gasTotalMultiplier = toBNWei(1.0 + gasMarkup);
|
|
56
60
|
return [4 /*yield*/, populateV3Relay(this.spokePool, deposit, relayer)];
|
|
57
61
|
case 1:
|
|
58
|
-
tx =
|
|
59
|
-
return [4 /*yield*/, estimateTotalGasRequiredByUnsignedTransaction(tx, relayer, this.provider,
|
|
62
|
+
tx = _c.sent();
|
|
63
|
+
return [4 /*yield*/, estimateTotalGasRequiredByUnsignedTransaction(tx, relayer, this.provider, {
|
|
64
|
+
gasPrice: gasPrice,
|
|
65
|
+
gasUnits: gasUnits,
|
|
66
|
+
transport: transport,
|
|
67
|
+
})];
|
|
60
68
|
case 2:
|
|
61
|
-
|
|
69
|
+
_b = _c.sent(), nativeGasCost = _b.nativeGasCost, tokenGasCost = _b.tokenGasCost;
|
|
62
70
|
return [2 /*return*/, {
|
|
63
71
|
nativeGasCost: nativeGasCost.mul(gasTotalMultiplier).div(fixedPointAdjustment),
|
|
64
72
|
tokenGasCost: tokenGasCost.mul(gasTotalMultiplier).div(fixedPointAdjustment),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":";AAEA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,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,oBAAoB,EACpB,eAAe,EACf,OAAO,GACR,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { Deposit } from "../interfaces";
|
|
2
2
|
import { BigNumber, BigNumberish, TransactionCostEstimate } from "../utils";
|
|
3
|
+
import { Transport } from "viem";
|
|
3
4
|
export interface QueryInterface {
|
|
4
|
-
getGasCosts: (deposit: Deposit, relayer: string,
|
|
5
|
+
getGasCosts: (deposit: Deposit, relayer: string, options?: Partial<{
|
|
6
|
+
gasPrice: BigNumberish;
|
|
7
|
+
gasUnits: BigNumberish;
|
|
8
|
+
omitMarkup: boolean;
|
|
9
|
+
transport: Transport;
|
|
10
|
+
}>) => Promise<TransactionCostEstimate>;
|
|
5
11
|
getTokenPrice: (tokenSymbol: string) => Promise<number>;
|
|
6
12
|
getTokenDecimals: (tokenSymbol: string) => number;
|
|
7
13
|
}
|
|
@@ -342,7 +348,7 @@ export declare class RelayFeeCalculator {
|
|
|
342
348
|
};
|
|
343
349
|
coingeckoId: string;
|
|
344
350
|
};
|
|
345
|
-
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish): Promise<BigNumber>;
|
|
351
|
+
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish, transport?: Transport): Promise<BigNumber>;
|
|
346
352
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
347
353
|
/**
|
|
348
354
|
* Retrieves the relayer fee details for a deposit.
|
|
@@ -127,7 +127,7 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
127
127
|
* a message & recipient contract is provided as this function may not simulate with
|
|
128
128
|
* the correct parameters to see a full fill.
|
|
129
129
|
*/
|
|
130
|
-
RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice, gasLimit) {
|
|
130
|
+
RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice, gasLimit, transport) {
|
|
131
131
|
if (simulateZeroFill === void 0) { simulateZeroFill = false; }
|
|
132
132
|
if (relayerAddress === void 0) { relayerAddress = DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
133
133
|
if (tokenMapping === void 0) { tokenMapping = TOKEN_SYMBOLS_MAP; }
|
|
@@ -146,7 +146,9 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
146
146
|
}
|
|
147
147
|
simulatedAmount = simulateZeroFill ? safeOutputAmount : toBN(amountToRelay);
|
|
148
148
|
deposit = __assign(__assign({}, deposit), { outputAmount: simulatedAmount });
|
|
149
|
-
getGasCosts = this.queries
|
|
149
|
+
getGasCosts = this.queries
|
|
150
|
+
.getGasCosts(deposit, relayerAddress, { gasPrice: gasPrice, gasUnits: gasLimit, transport: transport })
|
|
151
|
+
.catch(function (error) {
|
|
150
152
|
_this.logger.error({
|
|
151
153
|
at: "sdk/gasFeePercent",
|
|
152
154
|
message: "Error while fetching gas costs",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import Decimal from "decimal.js";
|
|
|
3
3
|
import { ethers, PopulatedTransaction, providers } from "ethers";
|
|
4
4
|
import { TypedMessage } from "../interfaces/TypedData";
|
|
5
5
|
import { BigNumber, BigNumberish, BN } from "./BigNumberUtils";
|
|
6
|
+
import { Transport } from "viem";
|
|
6
7
|
export type Decimalish = string | number | Decimal;
|
|
7
8
|
export declare const AddressZero = "0x0000000000000000000000000000000000000000";
|
|
8
9
|
export declare const MAX_BIG_INT: ethers.BigNumber;
|
|
@@ -135,11 +136,17 @@ export type TransactionCostEstimate = {
|
|
|
135
136
|
* @param unsignedTx The unsigned transaction that this function will estimate.
|
|
136
137
|
* @param senderAddress The address that the transaction will be submitted from.
|
|
137
138
|
* @param provider A valid ethers provider - will be used to reason the gas price.
|
|
138
|
-
* @param
|
|
139
|
-
* @param
|
|
139
|
+
* @param options
|
|
140
|
+
* @param options.gasPrice A manually provided gas price - if set, this function will not resolve the current gas price.
|
|
141
|
+
* @param options.gasUnits A manually provided gas units - if set, this function will not estimate the gas units.
|
|
142
|
+
* @param options.transport A custom transport object for custom gas price retrieval.
|
|
140
143
|
* @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
|
|
141
144
|
*/
|
|
142
|
-
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>,
|
|
145
|
+
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, options?: Partial<{
|
|
146
|
+
gasPrice: BigNumberish;
|
|
147
|
+
gasUnits: BigNumberish;
|
|
148
|
+
transport: Transport;
|
|
149
|
+
}>): Promise<TransactionCostEstimate>;
|
|
143
150
|
export type UpdateDepositDetailsMessageType = {
|
|
144
151
|
UpdateDepositDetails: [
|
|
145
152
|
{
|
package/dist/esm/utils/common.js
CHANGED
|
@@ -203,52 +203,58 @@ export function retry(call, times, delayS) {
|
|
|
203
203
|
* @param unsignedTx The unsigned transaction that this function will estimate.
|
|
204
204
|
* @param senderAddress The address that the transaction will be submitted from.
|
|
205
205
|
* @param provider A valid ethers provider - will be used to reason the gas price.
|
|
206
|
-
* @param
|
|
207
|
-
* @param
|
|
206
|
+
* @param options
|
|
207
|
+
* @param options.gasPrice A manually provided gas price - if set, this function will not resolve the current gas price.
|
|
208
|
+
* @param options.gasUnits A manually provided gas units - if set, this function will not estimate the gas units.
|
|
209
|
+
* @param options.transport A custom transport object for custom gas price retrieval.
|
|
208
210
|
* @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
|
|
209
211
|
*/
|
|
210
|
-
export function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider,
|
|
212
|
+
export function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider, options) {
|
|
213
|
+
if (options === void 0) { options = {}; }
|
|
211
214
|
return __awaiter(this, void 0, void 0, function () {
|
|
212
|
-
var chainId, voidSigner, nativeGasCost,
|
|
213
|
-
return __generator(this, function (
|
|
214
|
-
switch (
|
|
215
|
-
case 0:
|
|
215
|
+
var _a, _gasPrice, gasUnits, transport, chainId, voidSigner, nativeGasCost, _b, tokenGasCost, populatedTransaction, _c, l1GasCost, l2GasPrice, l2GasCost, gasPrice, gasPriceEstimate;
|
|
216
|
+
return __generator(this, function (_d) {
|
|
217
|
+
switch (_d.label) {
|
|
218
|
+
case 0:
|
|
219
|
+
_a = options || {}, _gasPrice = _a.gasPrice, gasUnits = _a.gasUnits, transport = _a.transport;
|
|
220
|
+
return [4 /*yield*/, provider.getNetwork()];
|
|
216
221
|
case 1:
|
|
217
|
-
chainId = (
|
|
222
|
+
chainId = (_d.sent()).chainId;
|
|
218
223
|
voidSigner = new VoidSigner(senderAddress, provider);
|
|
219
224
|
if (!gasUnits) return [3 /*break*/, 2];
|
|
220
|
-
|
|
225
|
+
_b = BigNumber.from(gasUnits);
|
|
221
226
|
return [3 /*break*/, 4];
|
|
222
227
|
case 2: return [4 /*yield*/, voidSigner.estimateGas(unsignedTx)];
|
|
223
228
|
case 3:
|
|
224
|
-
|
|
225
|
-
|
|
229
|
+
_b = _d.sent();
|
|
230
|
+
_d.label = 4;
|
|
226
231
|
case 4:
|
|
227
|
-
nativeGasCost =
|
|
232
|
+
nativeGasCost = _b;
|
|
228
233
|
if (!chainIsOPStack(chainId)) return [3 /*break*/, 7];
|
|
229
234
|
assert(isOptimismL2Provider(provider), "Unexpected provider for chain ID ".concat(chainId, "."));
|
|
230
235
|
return [4 /*yield*/, voidSigner.populateTransaction(__assign(__assign({}, unsignedTx), { gasLimit: nativeGasCost }))];
|
|
231
236
|
case 5:
|
|
232
|
-
populatedTransaction =
|
|
237
|
+
populatedTransaction = _d.sent();
|
|
233
238
|
return [4 /*yield*/, Promise.all([
|
|
234
239
|
provider.estimateL1GasCost(populatedTransaction),
|
|
235
|
-
|
|
240
|
+
_gasPrice || provider.getGasPrice(),
|
|
236
241
|
])];
|
|
237
242
|
case 6:
|
|
238
|
-
|
|
243
|
+
_c = _d.sent(), l1GasCost = _c[0], l2GasPrice = _c[1];
|
|
239
244
|
l2GasCost = nativeGasCost.mul(l2GasPrice);
|
|
240
245
|
tokenGasCost = l1GasCost.add(l2GasCost);
|
|
241
246
|
return [3 /*break*/, 10];
|
|
242
247
|
case 7:
|
|
248
|
+
gasPrice = _gasPrice;
|
|
243
249
|
if (!!gasPrice) return [3 /*break*/, 9];
|
|
244
|
-
return [4 /*yield*/, getGasPriceEstimate(provider, chainId)];
|
|
250
|
+
return [4 /*yield*/, getGasPriceEstimate(provider, chainId, transport)];
|
|
245
251
|
case 8:
|
|
246
|
-
gasPriceEstimate =
|
|
252
|
+
gasPriceEstimate = _d.sent();
|
|
247
253
|
gasPrice = gasPriceEstimate.maxFeePerGas;
|
|
248
|
-
|
|
254
|
+
_d.label = 9;
|
|
249
255
|
case 9:
|
|
250
256
|
tokenGasCost = nativeGasCost.mul(gasPrice);
|
|
251
|
-
|
|
257
|
+
_d.label = 10;
|
|
252
258
|
case 10: return [2 /*return*/, {
|
|
253
259
|
nativeGasCost: nativeGasCost,
|
|
254
260
|
tokenGasCost: tokenGasCost,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,IAAI,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,MAAM,EAAmC,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,SAAS,EAAoB,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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"}
|