@across-protocol/sdk 4.1.60 → 4.1.62-beta.0
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/relayFeeCalculator.d.ts +3 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +61 -4
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/cjs/utils/SpokeUtils.js +23 -20
- package/dist/cjs/utils/SpokeUtils.js.map +1 -1
- package/dist/cjs/utils/TokenUtils.d.ts +1 -1
- package/dist/cjs/utils/TokenUtils.js +5 -9
- package/dist/cjs/utils/TokenUtils.js.map +1 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +14 -4
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +84 -4
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/esm/utils/SpokeUtils.js +22 -19
- package/dist/esm/utils/SpokeUtils.js.map +1 -1
- package/dist/esm/utils/TokenUtils.d.ts +13 -1
- package/dist/esm/utils/TokenUtils.js +15 -7
- package/dist/esm/utils/TokenUtils.js.map +1 -1
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +14 -4
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
- package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
- package/dist/types/utils/TokenUtils.d.ts +13 -1
- package/dist/types/utils/TokenUtils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/relayFeeCalculator/relayFeeCalculator.ts +107 -2
- package/src/utils/SpokeUtils.ts +25 -25
- package/src/utils/TokenUtils.ts +15 -8
|
@@ -24,6 +24,7 @@ export interface CapitalCostConfigOverride {
|
|
|
24
24
|
default: CapitalCostConfig;
|
|
25
25
|
routeOverrides?: Record<ChainIdAsString, Record<ChainIdAsString, CapitalCostConfig>>;
|
|
26
26
|
destinationChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
27
|
+
originChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
27
28
|
}
|
|
28
29
|
export type RelayCapitalCostConfig = CapitalCostConfigOverride | CapitalCostConfig;
|
|
29
30
|
export interface BaseRelayFeeCalculatorConfig {
|
|
@@ -472,6 +473,8 @@ export declare class RelayFeeCalculator {
|
|
|
472
473
|
};
|
|
473
474
|
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish, _tokenGasCost?: BigNumberish, transport?: Transport): Promise<BigNumber>;
|
|
474
475
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
476
|
+
private checkAllConfigConflicts;
|
|
477
|
+
private warnIfConfigConflicts;
|
|
475
478
|
relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish, gasUnits?: BigNumberish, tokenGasCost?: BigNumberish): Promise<RelayerFeeDetails>;
|
|
476
479
|
}
|
|
477
480
|
export {};
|
|
@@ -61,6 +61,7 @@ var RelayFeeCalculator = (function () {
|
|
|
61
61
|
}));
|
|
62
62
|
(0, assert_1.default)(Object.keys(this.capitalCostsConfig).length > 0, "capitalCostsConfig must have at least one entry");
|
|
63
63
|
this.logger = logger || exports.DEFAULT_LOGGER;
|
|
64
|
+
this.checkAllConfigConflicts();
|
|
64
65
|
}
|
|
65
66
|
RelayFeeCalculator.capitalCostConfigIsOverride = function (config) {
|
|
66
67
|
return config.default !== undefined;
|
|
@@ -74,6 +75,7 @@ var RelayFeeCalculator = (function () {
|
|
|
74
75
|
var toChainIdRoutes = _a[_i];
|
|
75
76
|
Object.values(toChainIdRoutes).forEach(this.validateCapitalCostsConfig);
|
|
76
77
|
}
|
|
78
|
+
Object.values(config.originChainOverrides || {}).forEach(this.validateCapitalCostsConfig);
|
|
77
79
|
Object.values(config.destinationChainOverrides || {}).forEach(this.validateCapitalCostsConfig);
|
|
78
80
|
return config;
|
|
79
81
|
};
|
|
@@ -149,7 +151,7 @@ var RelayFeeCalculator = (function () {
|
|
|
149
151
|
});
|
|
150
152
|
};
|
|
151
153
|
RelayFeeCalculator.prototype.capitalFeePercent = function (_amountToRelay, _tokenSymbol, _originRoute, _destinationRoute) {
|
|
152
|
-
var _a, _b, _c, _d;
|
|
154
|
+
var _a, _b, _c, _d, _e, _f;
|
|
153
155
|
if ((0, utils_1.toBN)(_amountToRelay).eq((0, utils_1.toBN)(0)))
|
|
154
156
|
return utils_1.MAX_BIG_INT;
|
|
155
157
|
var tokenCostConfig = this.capitalCostsConfig[_tokenSymbol.toUpperCase()];
|
|
@@ -161,9 +163,11 @@ var RelayFeeCalculator = (function () {
|
|
|
161
163
|
throw new Error("No capital cost config available for token ".concat(_tokenSymbol));
|
|
162
164
|
}
|
|
163
165
|
else {
|
|
164
|
-
var
|
|
165
|
-
var
|
|
166
|
-
var
|
|
166
|
+
var routeOverride = (_b = (_a = tokenCostConfig === null || tokenCostConfig === void 0 ? void 0 : tokenCostConfig.routeOverrides) === null || _a === void 0 ? void 0 : _a[_originRoute || ""]) === null || _b === void 0 ? void 0 : _b[_destinationRoute || ""];
|
|
167
|
+
var destinationChainOverride = (_c = tokenCostConfig === null || tokenCostConfig === void 0 ? void 0 : tokenCostConfig.destinationChainOverrides) === null || _c === void 0 ? void 0 : _c[_destinationRoute || ""];
|
|
168
|
+
var originChainOverride = (_d = tokenCostConfig === null || tokenCostConfig === void 0 ? void 0 : tokenCostConfig.originChainOverrides) === null || _d === void 0 ? void 0 : _d[_originRoute || ""];
|
|
169
|
+
var config = (_f = (_e = routeOverride !== null && routeOverride !== void 0 ? routeOverride : destinationChainOverride) !== null && _e !== void 0 ? _e : originChainOverride) !== null && _f !== void 0 ? _f : tokenCostConfig.default;
|
|
170
|
+
this.warnIfConfigConflicts(_tokenSymbol, _originRoute || "", _destinationRoute || "", routeOverride, destinationChainOverride, originChainOverride);
|
|
167
171
|
var y = (0, utils_1.toBN)(_amountToRelay).mul((0, utils_1.toBNWei)("1", 18 - config.decimals));
|
|
168
172
|
var minCharge = (0, utils_1.toBN)(config.lowerBound).mul(y).div(utils_1.fixedPointAdjustment);
|
|
169
173
|
var yTriangle = (0, utils_1.min)(config.cutoff, y);
|
|
@@ -177,6 +181,59 @@ var RelayFeeCalculator = (function () {
|
|
|
177
181
|
return minCharge.add(triangleCharge).add(remainderCharge).mul(utils_1.fixedPointAdjustment).div(y);
|
|
178
182
|
}
|
|
179
183
|
};
|
|
184
|
+
RelayFeeCalculator.prototype.checkAllConfigConflicts = function () {
|
|
185
|
+
var _a, _b, _c, _d;
|
|
186
|
+
var _loop_1 = function (tokenSymbol, tokenConfig) {
|
|
187
|
+
var originChains = new Set(Object.keys(tokenConfig.originChainOverrides || {}));
|
|
188
|
+
var destChains = new Set(Object.keys(tokenConfig.destinationChainOverrides || {}));
|
|
189
|
+
if (tokenConfig.routeOverrides) {
|
|
190
|
+
Object.keys(tokenConfig.routeOverrides).forEach(function (originChain) {
|
|
191
|
+
originChains.add(originChain);
|
|
192
|
+
Object.keys(tokenConfig.routeOverrides[originChain]).forEach(function (destChain) {
|
|
193
|
+
destChains.add(destChain);
|
|
194
|
+
});
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
if (originChains.size === 0 && destChains.size === 0) {
|
|
198
|
+
return "continue";
|
|
199
|
+
}
|
|
200
|
+
for (var _g = 0, _h = Array.from(originChains); _g < _h.length; _g++) {
|
|
201
|
+
var originChain = _h[_g];
|
|
202
|
+
for (var _j = 0, _k = Array.from(destChains); _j < _k.length; _j++) {
|
|
203
|
+
var destChain = _k[_j];
|
|
204
|
+
var routeOverride = (_b = (_a = tokenConfig.routeOverrides) === null || _a === void 0 ? void 0 : _a[originChain]) === null || _b === void 0 ? void 0 : _b[destChain];
|
|
205
|
+
var destinationChainOverride = (_c = tokenConfig.destinationChainOverrides) === null || _c === void 0 ? void 0 : _c[destChain];
|
|
206
|
+
var originChainOverride = (_d = tokenConfig.originChainOverrides) === null || _d === void 0 ? void 0 : _d[originChain];
|
|
207
|
+
this_1.warnIfConfigConflicts(tokenSymbol, originChain, destChain, routeOverride, destinationChainOverride, originChainOverride);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
var this_1 = this;
|
|
212
|
+
for (var _i = 0, _e = Object.entries(this.capitalCostsConfig); _i < _e.length; _i++) {
|
|
213
|
+
var _f = _e[_i], tokenSymbol = _f[0], tokenConfig = _f[1];
|
|
214
|
+
_loop_1(tokenSymbol, tokenConfig);
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
RelayFeeCalculator.prototype.warnIfConfigConflicts = function (tokenSymbol, originChain, destChain, routeOverride, destinationChainOverride, originChainOverride) {
|
|
218
|
+
var overrideCount = [routeOverride, destinationChainOverride, originChainOverride].filter(Boolean).length;
|
|
219
|
+
if (overrideCount > 1) {
|
|
220
|
+
var configUsed = routeOverride
|
|
221
|
+
? "route override"
|
|
222
|
+
: destinationChainOverride
|
|
223
|
+
? "destination chain override"
|
|
224
|
+
: originChainOverride
|
|
225
|
+
? "origin chain override"
|
|
226
|
+
: "default override";
|
|
227
|
+
this.logger.warn({
|
|
228
|
+
at: "RelayFeeCalculator",
|
|
229
|
+
message: "Multiple configurations found for token ".concat(tokenSymbol, " from chain ").concat(originChain, " to chain ").concat(destChain),
|
|
230
|
+
configUsed: configUsed,
|
|
231
|
+
routeOverride: routeOverride,
|
|
232
|
+
destinationChainOverride: destinationChainOverride,
|
|
233
|
+
originChainOverride: originChainOverride,
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
};
|
|
180
237
|
RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice, gasUnits, tokenGasCost) {
|
|
181
238
|
if (simulateZeroFill === void 0) { simulateZeroFill = false; }
|
|
182
239
|
if (relayerAddress === void 0) { relayerAddress = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
@@ -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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"}
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getMessageHash = exports.isZeroAddress = exports.isUnsafeDepositId = exports.getRelayHashFromEvent = exports.getRelayDataHash = exports.getDepositRelayData = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
-
var
|
|
5
|
+
var viem_1 = require("viem");
|
|
6
6
|
var constants_1 = require("../constants");
|
|
7
7
|
var AddressUtils_1 = require("./AddressUtils");
|
|
8
|
-
var common_1 = require("./common");
|
|
9
8
|
var BigNumberUtils_1 = require("./BigNumberUtils");
|
|
10
9
|
var DepositUtils_1 = require("./DepositUtils");
|
|
11
10
|
function getDepositRelayData(deposit) {
|
|
@@ -26,24 +25,28 @@ function getDepositRelayData(deposit) {
|
|
|
26
25
|
}
|
|
27
26
|
exports.getDepositRelayData = getDepositRelayData;
|
|
28
27
|
function getRelayDataHash(relayData, destinationChainId) {
|
|
28
|
+
var abi = [
|
|
29
|
+
{
|
|
30
|
+
type: "tuple",
|
|
31
|
+
components: [
|
|
32
|
+
{ type: "bytes32", name: "depositor" },
|
|
33
|
+
{ type: "bytes32", name: "recipient" },
|
|
34
|
+
{ type: "bytes32", name: "exclusiveRelayer" },
|
|
35
|
+
{ type: "bytes32", name: "inputToken" },
|
|
36
|
+
{ type: "bytes32", name: "outputToken" },
|
|
37
|
+
{ type: "uint256", name: "inputAmount" },
|
|
38
|
+
{ type: "uint256", name: "outputAmount" },
|
|
39
|
+
{ type: "uint256", name: "originChainId" },
|
|
40
|
+
{ type: "uint256", name: "depositId" },
|
|
41
|
+
{ type: "uint32", name: "fillDeadline" },
|
|
42
|
+
{ type: "uint32", name: "exclusivityDeadline" },
|
|
43
|
+
{ type: "bytes", name: "message" },
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
{ type: "uint256", name: "destinationChainId" },
|
|
47
|
+
];
|
|
29
48
|
var _relayData = tslib_1.__assign(tslib_1.__assign({}, relayData), { depositor: (0, AddressUtils_1.toBytes32)(relayData.depositor), recipient: (0, AddressUtils_1.toBytes32)(relayData.recipient), inputToken: (0, AddressUtils_1.toBytes32)(relayData.inputToken), outputToken: (0, AddressUtils_1.toBytes32)(relayData.outputToken), exclusiveRelayer: (0, AddressUtils_1.toBytes32)(relayData.exclusiveRelayer) });
|
|
30
|
-
return (0,
|
|
31
|
-
"tuple(" +
|
|
32
|
-
"bytes32 depositor," +
|
|
33
|
-
"bytes32 recipient," +
|
|
34
|
-
"bytes32 exclusiveRelayer," +
|
|
35
|
-
"bytes32 inputToken," +
|
|
36
|
-
"bytes32 outputToken," +
|
|
37
|
-
"uint256 inputAmount," +
|
|
38
|
-
"uint256 outputAmount," +
|
|
39
|
-
"uint256 originChainId," +
|
|
40
|
-
"uint256 depositId," +
|
|
41
|
-
"uint32 fillDeadline," +
|
|
42
|
-
"uint32 exclusivityDeadline," +
|
|
43
|
-
"bytes message" +
|
|
44
|
-
")",
|
|
45
|
-
"uint256 destinationChainId",
|
|
46
|
-
], [_relayData, destinationChainId]));
|
|
49
|
+
return (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)(abi, [_relayData, destinationChainId]));
|
|
47
50
|
}
|
|
48
51
|
exports.getRelayDataHash = getRelayDataHash;
|
|
49
52
|
function getRelayHashFromEvent(e) {
|
|
@@ -60,7 +63,7 @@ function isZeroAddress(address) {
|
|
|
60
63
|
}
|
|
61
64
|
exports.isZeroAddress = isZeroAddress;
|
|
62
65
|
function getMessageHash(message) {
|
|
63
|
-
return (0, DepositUtils_1.isMessageEmpty)(message) ? constants_1.ZERO_BYTES : (0,
|
|
66
|
+
return (0, DepositUtils_1.isMessageEmpty)(message) ? constants_1.ZERO_BYTES : (0, viem_1.keccak256)(message);
|
|
64
67
|
}
|
|
65
68
|
exports.getMessageHash = getMessageHash;
|
|
66
69
|
//# sourceMappingURL=SpokeUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -783,5 +783,5 @@ export declare function getTokenInfo(l2TokenAddress: string, chainId: number, to
|
|
|
783
783
|
};
|
|
784
784
|
}): L1Token;
|
|
785
785
|
export declare function getUsdcSymbol(l2Token: string, chainId: number): string | undefined;
|
|
786
|
-
export declare function
|
|
786
|
+
export declare function getL1TokenAddress(l2TokenAddress: string, chainId: number): string;
|
|
787
787
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.getL1TokenAddress = exports.getUsdcSymbol = exports.getTokenInfo = exports.isStablecoin = exports.isBridgedUsdc = exports.getTokenBalance = exports.getCoingeckoTokenIdByAddress = exports.resolveContractFromSymbol = exports.resolveSymbolOnChain = exports.getL2TokenAddresses = exports.fetchTokenInfo = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var ethers_1 = require("ethers");
|
|
6
6
|
var constants = tslib_1.__importStar(require("../constants"));
|
|
@@ -103,9 +103,9 @@ function getUsdcSymbol(l2Token, chainId) {
|
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
exports.getUsdcSymbol = getUsdcSymbol;
|
|
106
|
-
function
|
|
106
|
+
function getL1TokenAddress(l2TokenAddress, chainId) {
|
|
107
107
|
if ((0, NetworkUtils_1.chainIsL1)(chainId))
|
|
108
|
-
|
|
108
|
+
return l2TokenAddress;
|
|
109
109
|
var tokenObject = Object.values(TOKEN_SYMBOLS_MAP).find(function (_a) {
|
|
110
110
|
var addresses = _a.addresses;
|
|
111
111
|
return addresses[chainId] === l2TokenAddress;
|
|
@@ -114,11 +114,7 @@ function getL1TokenInfo(l2TokenAddress, chainId) {
|
|
|
114
114
|
if (!l1TokenAddress) {
|
|
115
115
|
throw new Error("TokenUtils#getL1TokenInfo: Unable to resolve l1 token address in TOKEN_SYMBOLS_MAP for L2 token ".concat(l2TokenAddress, " on chain ").concat(chainId));
|
|
116
116
|
}
|
|
117
|
-
return
|
|
118
|
-
address: l1TokenAddress,
|
|
119
|
-
symbol: tokenObject.symbol,
|
|
120
|
-
decimals: tokenObject.decimals,
|
|
121
|
-
};
|
|
117
|
+
return l1TokenAddress;
|
|
122
118
|
}
|
|
123
|
-
exports.
|
|
119
|
+
exports.getL1TokenAddress = getL1TokenAddress;
|
|
124
120
|
//# sourceMappingURL=TokenUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export interface CapitalCostConfigOverride {
|
|
|
24
24
|
default: CapitalCostConfig;
|
|
25
25
|
routeOverrides?: Record<ChainIdAsString, Record<ChainIdAsString, CapitalCostConfig>>;
|
|
26
26
|
destinationChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
27
|
+
originChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
27
28
|
}
|
|
28
29
|
export type RelayCapitalCostConfig = CapitalCostConfigOverride | CapitalCostConfig;
|
|
29
30
|
export interface BaseRelayFeeCalculatorConfig {
|
|
@@ -497,10 +498,7 @@ export declare class RelayFeeCalculator {
|
|
|
497
498
|
[x: number]: string;
|
|
498
499
|
133268194659241: string;
|
|
499
500
|
};
|
|
500
|
-
coingeckoId: string;
|
|
501
|
-
* Validates a CapitalCostConfig.
|
|
502
|
-
* @param capitalCosts CapitalCostConfig
|
|
503
|
-
*/
|
|
501
|
+
coingeckoId: string;
|
|
504
502
|
};
|
|
505
503
|
XYZ: {
|
|
506
504
|
name: string;
|
|
@@ -513,6 +511,18 @@ export declare class RelayFeeCalculator {
|
|
|
513
511
|
};
|
|
514
512
|
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish, _tokenGasCost?: BigNumberish, transport?: Transport): Promise<BigNumber>;
|
|
515
513
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
514
|
+
/**
|
|
515
|
+
* Checks for configuration conflicts across all token symbols and their associated chain configurations.
|
|
516
|
+
* This method examines the capital costs configuration for each token and identifies any overlapping
|
|
517
|
+
* or conflicting configurations between route overrides, destination chain overrides, and origin chain overrides.
|
|
518
|
+
* If conflicts are found, warnings will be logged via the warnIfConfigConflicts method.
|
|
519
|
+
*/
|
|
520
|
+
private checkAllConfigConflicts;
|
|
521
|
+
/**
|
|
522
|
+
* Log a warning if multiple configuration types apply to the same route
|
|
523
|
+
* @private
|
|
524
|
+
*/
|
|
525
|
+
private warnIfConfigConflicts;
|
|
516
526
|
/**
|
|
517
527
|
* Retrieves the relayer fee details for a deposit.
|
|
518
528
|
* @param deposit A valid deposit object to reason about
|
|
@@ -59,6 +59,8 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
59
59
|
}));
|
|
60
60
|
assert(Object.keys(this.capitalCostsConfig).length > 0, "capitalCostsConfig must have at least one entry");
|
|
61
61
|
this.logger = logger || DEFAULT_LOGGER;
|
|
62
|
+
// warn developer of any possible conflicting config overrides
|
|
63
|
+
this.checkAllConfigConflicts();
|
|
62
64
|
}
|
|
63
65
|
/**
|
|
64
66
|
* Type guard to check if a config is a CapitalCostConfigOverride or a CapitalCostConfig.
|
|
@@ -92,6 +94,8 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
92
94
|
var toChainIdRoutes = _a[_i];
|
|
93
95
|
Object.values(toChainIdRoutes).forEach(this.validateCapitalCostsConfig);
|
|
94
96
|
}
|
|
97
|
+
// Validate origin chain overrides
|
|
98
|
+
Object.values(config.originChainOverrides || {}).forEach(this.validateCapitalCostsConfig);
|
|
95
99
|
// Validate destination chain overrides
|
|
96
100
|
Object.values(config.destinationChainOverrides || {}).forEach(this.validateCapitalCostsConfig);
|
|
97
101
|
return config;
|
|
@@ -192,7 +196,7 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
192
196
|
};
|
|
193
197
|
// Note: these variables are unused now, but may be needed in future versions of this function that are more complex.
|
|
194
198
|
RelayFeeCalculator.prototype.capitalFeePercent = function (_amountToRelay, _tokenSymbol, _originRoute, _destinationRoute) {
|
|
195
|
-
var _a, _b, _c, _d;
|
|
199
|
+
var _a, _b, _c, _d, _e, _f;
|
|
196
200
|
// If amount is 0, then the capital fee % should be the max 100%
|
|
197
201
|
if (toBN(_amountToRelay).eq(toBN(0)))
|
|
198
202
|
return MAX_BIG_INT;
|
|
@@ -212,9 +216,17 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
212
216
|
// bound to an upper bound. After the kink, the fee % increase will be fixed, and slowly approach the upper bound
|
|
213
217
|
// for very large amount inputs.
|
|
214
218
|
else {
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
219
|
+
// Order of specificity (most specific to least specific):
|
|
220
|
+
// 1. Route overrides (both origin and destination)
|
|
221
|
+
// 2. Destination chain overrides
|
|
222
|
+
// 3. Origin chain overrides
|
|
223
|
+
// 4. Default config
|
|
224
|
+
var routeOverride = (_b = (_a = tokenCostConfig === null || tokenCostConfig === void 0 ? void 0 : tokenCostConfig.routeOverrides) === null || _a === void 0 ? void 0 : _a[_originRoute || ""]) === null || _b === void 0 ? void 0 : _b[_destinationRoute || ""];
|
|
225
|
+
var destinationChainOverride = (_c = tokenCostConfig === null || tokenCostConfig === void 0 ? void 0 : tokenCostConfig.destinationChainOverrides) === null || _c === void 0 ? void 0 : _c[_destinationRoute || ""];
|
|
226
|
+
var originChainOverride = (_d = tokenCostConfig === null || tokenCostConfig === void 0 ? void 0 : tokenCostConfig.originChainOverrides) === null || _d === void 0 ? void 0 : _d[_originRoute || ""];
|
|
227
|
+
var config = (_f = (_e = routeOverride !== null && routeOverride !== void 0 ? routeOverride : destinationChainOverride) !== null && _e !== void 0 ? _e : originChainOverride) !== null && _f !== void 0 ? _f : tokenCostConfig.default;
|
|
228
|
+
// Check and log warnings for configuration conflicts
|
|
229
|
+
this.warnIfConfigConflicts(_tokenSymbol, _originRoute || "", _destinationRoute || "", routeOverride, destinationChainOverride, originChainOverride);
|
|
218
230
|
// Scale amount "y" to 18 decimals.
|
|
219
231
|
var y = toBN(_amountToRelay).mul(toBNWei("1", 18 - config.decimals));
|
|
220
232
|
// At a minimum, the fee will be equal to lower bound fee * y
|
|
@@ -236,6 +248,74 @@ var RelayFeeCalculator = /** @class */ (function () {
|
|
|
236
248
|
return minCharge.add(triangleCharge).add(remainderCharge).mul(fixedPointAdjustment).div(y);
|
|
237
249
|
}
|
|
238
250
|
};
|
|
251
|
+
/**
|
|
252
|
+
* Checks for configuration conflicts across all token symbols and their associated chain configurations.
|
|
253
|
+
* This method examines the capital costs configuration for each token and identifies any overlapping
|
|
254
|
+
* or conflicting configurations between route overrides, destination chain overrides, and origin chain overrides.
|
|
255
|
+
* If conflicts are found, warnings will be logged via the warnIfConfigConflicts method.
|
|
256
|
+
*/
|
|
257
|
+
RelayFeeCalculator.prototype.checkAllConfigConflicts = function () {
|
|
258
|
+
var _a, _b, _c, _d;
|
|
259
|
+
var _loop_1 = function (tokenSymbol, tokenConfig) {
|
|
260
|
+
// Get all origin chains that have specific configurations
|
|
261
|
+
var originChains = new Set(Object.keys(tokenConfig.originChainOverrides || {}));
|
|
262
|
+
// Get all destination chains that have specific configurations
|
|
263
|
+
var destChains = new Set(Object.keys(tokenConfig.destinationChainOverrides || {}));
|
|
264
|
+
// Add all chains from route overrides
|
|
265
|
+
if (tokenConfig.routeOverrides) {
|
|
266
|
+
Object.keys(tokenConfig.routeOverrides).forEach(function (originChain) {
|
|
267
|
+
originChains.add(originChain);
|
|
268
|
+
Object.keys(tokenConfig.routeOverrides[originChain]).forEach(function (destChain) {
|
|
269
|
+
destChains.add(destChain);
|
|
270
|
+
});
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
// If there are no specific chain configurations, just check the default case
|
|
274
|
+
if (originChains.size === 0 && destChains.size === 0) {
|
|
275
|
+
return "continue";
|
|
276
|
+
}
|
|
277
|
+
// Check for conflicts between all combinations of origin and destination chains
|
|
278
|
+
for (var _g = 0, _h = Array.from(originChains); _g < _h.length; _g++) {
|
|
279
|
+
var originChain = _h[_g];
|
|
280
|
+
for (var _j = 0, _k = Array.from(destChains); _j < _k.length; _j++) {
|
|
281
|
+
var destChain = _k[_j];
|
|
282
|
+
var routeOverride = (_b = (_a = tokenConfig.routeOverrides) === null || _a === void 0 ? void 0 : _a[originChain]) === null || _b === void 0 ? void 0 : _b[destChain];
|
|
283
|
+
var destinationChainOverride = (_c = tokenConfig.destinationChainOverrides) === null || _c === void 0 ? void 0 : _c[destChain];
|
|
284
|
+
var originChainOverride = (_d = tokenConfig.originChainOverrides) === null || _d === void 0 ? void 0 : _d[originChain];
|
|
285
|
+
this_1.warnIfConfigConflicts(tokenSymbol, originChain, destChain, routeOverride, destinationChainOverride, originChainOverride);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
};
|
|
289
|
+
var this_1 = this;
|
|
290
|
+
for (var _i = 0, _e = Object.entries(this.capitalCostsConfig); _i < _e.length; _i++) {
|
|
291
|
+
var _f = _e[_i], tokenSymbol = _f[0], tokenConfig = _f[1];
|
|
292
|
+
_loop_1(tokenSymbol, tokenConfig);
|
|
293
|
+
}
|
|
294
|
+
};
|
|
295
|
+
/**
|
|
296
|
+
* Log a warning if multiple configuration types apply to the same route
|
|
297
|
+
* @private
|
|
298
|
+
*/
|
|
299
|
+
RelayFeeCalculator.prototype.warnIfConfigConflicts = function (tokenSymbol, originChain, destChain, routeOverride, destinationChainOverride, originChainOverride) {
|
|
300
|
+
var overrideCount = [routeOverride, destinationChainOverride, originChainOverride].filter(Boolean).length;
|
|
301
|
+
if (overrideCount > 1) {
|
|
302
|
+
var configUsed = routeOverride
|
|
303
|
+
? "route override"
|
|
304
|
+
: destinationChainOverride
|
|
305
|
+
? "destination chain override"
|
|
306
|
+
: originChainOverride
|
|
307
|
+
? "origin chain override"
|
|
308
|
+
: "default override";
|
|
309
|
+
this.logger.warn({
|
|
310
|
+
at: "RelayFeeCalculator",
|
|
311
|
+
message: "Multiple configurations found for token ".concat(tokenSymbol, " from chain ").concat(originChain, " to chain ").concat(destChain),
|
|
312
|
+
configUsed: configUsed,
|
|
313
|
+
routeOverride: routeOverride,
|
|
314
|
+
destinationChainOverride: destinationChainOverride,
|
|
315
|
+
originChainOverride: originChainOverride,
|
|
316
|
+
});
|
|
317
|
+
}
|
|
318
|
+
};
|
|
239
319
|
/**
|
|
240
320
|
* Retrieves the relayer fee details for a deposit.
|
|
241
321
|
* @param deposit A valid deposit object to reason about
|
|
@@ -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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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { __assign } from "tslib";
|
|
2
|
-
import {
|
|
2
|
+
import { encodeAbiParameters, keccak256 } from "viem";
|
|
3
3
|
import { MAX_SAFE_DEPOSIT_ID, ZERO_ADDRESS, ZERO_BYTES } from "../constants";
|
|
4
4
|
import { toBytes32 } from "./AddressUtils";
|
|
5
|
-
import { keccak256 } from "./common";
|
|
6
5
|
import { BigNumber } from "./BigNumberUtils";
|
|
7
6
|
import { isMessageEmpty } from "./DepositUtils";
|
|
8
7
|
/**
|
|
@@ -33,24 +32,28 @@ export function getDepositRelayData(deposit) {
|
|
|
33
32
|
* @returns The corresponding RelayData hash.
|
|
34
33
|
*/
|
|
35
34
|
export function getRelayDataHash(relayData, destinationChainId) {
|
|
35
|
+
var abi = [
|
|
36
|
+
{
|
|
37
|
+
type: "tuple",
|
|
38
|
+
components: [
|
|
39
|
+
{ type: "bytes32", name: "depositor" },
|
|
40
|
+
{ type: "bytes32", name: "recipient" },
|
|
41
|
+
{ type: "bytes32", name: "exclusiveRelayer" },
|
|
42
|
+
{ type: "bytes32", name: "inputToken" },
|
|
43
|
+
{ type: "bytes32", name: "outputToken" },
|
|
44
|
+
{ type: "uint256", name: "inputAmount" },
|
|
45
|
+
{ type: "uint256", name: "outputAmount" },
|
|
46
|
+
{ type: "uint256", name: "originChainId" },
|
|
47
|
+
{ type: "uint256", name: "depositId" },
|
|
48
|
+
{ type: "uint32", name: "fillDeadline" },
|
|
49
|
+
{ type: "uint32", name: "exclusivityDeadline" },
|
|
50
|
+
{ type: "bytes", name: "message" },
|
|
51
|
+
],
|
|
52
|
+
},
|
|
53
|
+
{ type: "uint256", name: "destinationChainId" },
|
|
54
|
+
];
|
|
36
55
|
var _relayData = __assign(__assign({}, relayData), { depositor: toBytes32(relayData.depositor), recipient: toBytes32(relayData.recipient), inputToken: toBytes32(relayData.inputToken), outputToken: toBytes32(relayData.outputToken), exclusiveRelayer: toBytes32(relayData.exclusiveRelayer) });
|
|
37
|
-
return keccak256(
|
|
38
|
-
"tuple(" +
|
|
39
|
-
"bytes32 depositor," +
|
|
40
|
-
"bytes32 recipient," +
|
|
41
|
-
"bytes32 exclusiveRelayer," +
|
|
42
|
-
"bytes32 inputToken," +
|
|
43
|
-
"bytes32 outputToken," +
|
|
44
|
-
"uint256 inputAmount," +
|
|
45
|
-
"uint256 outputAmount," +
|
|
46
|
-
"uint256 originChainId," +
|
|
47
|
-
"uint256 depositId," +
|
|
48
|
-
"uint32 fillDeadline," +
|
|
49
|
-
"uint32 exclusivityDeadline," +
|
|
50
|
-
"bytes message" +
|
|
51
|
-
")",
|
|
52
|
-
"uint256 destinationChainId",
|
|
53
|
-
], [_relayData, destinationChainId]));
|
|
56
|
+
return keccak256(encodeAbiParameters(abi, [_relayData, destinationChainId]));
|
|
54
57
|
}
|
|
55
58
|
export function getRelayHashFromEvent(e) {
|
|
56
59
|
return getRelayDataHash(e, e.destinationChainId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -419,6 +419,15 @@ export declare function getCoingeckoTokenIdByAddress(contractAddress: string, ch
|
|
|
419
419
|
export declare function getTokenBalance(address: string, tokenAddress: string, signerOrProvider: SignerOrProvider, blockTag?: BlockTag): Promise<BigNumber>;
|
|
420
420
|
export declare function isBridgedUsdc(tokenSymbol: string): boolean;
|
|
421
421
|
export declare function isStablecoin(tokenSymbol: string): boolean;
|
|
422
|
+
/**
|
|
423
|
+
* @notice Returns the Token info for the token mapping in TOKEN_SYMBOLS_MAP matching the given l2TokenAddress
|
|
424
|
+
* and chainId. If the chain is the hub chain, then will remap the L1 token to its equivalent L1 token symbol for example
|
|
425
|
+
* it will always return a token info with symbol USDC and never USDC.e if chainId = mainnet.
|
|
426
|
+
* @param l2TokenAddress
|
|
427
|
+
* @param chainId
|
|
428
|
+
* @param tokenMapping
|
|
429
|
+
* @returns
|
|
430
|
+
*/
|
|
422
431
|
export declare function getTokenInfo(l2TokenAddress: string, chainId: number, tokenMapping?: {
|
|
423
432
|
ACX: {
|
|
424
433
|
name: string;
|
|
@@ -811,5 +820,8 @@ export declare function getTokenInfo(l2TokenAddress: string, chainId: number, to
|
|
|
811
820
|
* @returns Either USDC (if native) or USDbC/USDC.e (if bridged) or undefined if the token address is not recognized.
|
|
812
821
|
*/
|
|
813
822
|
export declare function getUsdcSymbol(l2Token: string, chainId: number): string | undefined;
|
|
814
|
-
|
|
823
|
+
/**
|
|
824
|
+
* @notice Returns the l1 token address matching the given l2TokenAddress and chainId.
|
|
825
|
+
*/
|
|
826
|
+
export declare function getL1TokenAddress(l2TokenAddress: string, chainId: number): string;
|
|
815
827
|
export {};
|
|
@@ -86,6 +86,15 @@ export function isBridgedUsdc(tokenSymbol) {
|
|
|
86
86
|
export function isStablecoin(tokenSymbol) {
|
|
87
87
|
return constants.STABLE_COIN_SYMBOLS.some(function (stablecoinSymbol) { return stablecoinSymbol.toLowerCase() === tokenSymbol.toLowerCase(); });
|
|
88
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* @notice Returns the Token info for the token mapping in TOKEN_SYMBOLS_MAP matching the given l2TokenAddress
|
|
91
|
+
* and chainId. If the chain is the hub chain, then will remap the L1 token to its equivalent L1 token symbol for example
|
|
92
|
+
* it will always return a token info with symbol USDC and never USDC.e if chainId = mainnet.
|
|
93
|
+
* @param l2TokenAddress
|
|
94
|
+
* @param chainId
|
|
95
|
+
* @param tokenMapping
|
|
96
|
+
* @returns
|
|
97
|
+
*/
|
|
89
98
|
export function getTokenInfo(l2TokenAddress, chainId, tokenMapping) {
|
|
90
99
|
var _a;
|
|
91
100
|
if (tokenMapping === void 0) { tokenMapping = TOKEN_SYMBOLS_MAP; }
|
|
@@ -121,9 +130,12 @@ export function getUsdcSymbol(l2Token, chainId) {
|
|
|
121
130
|
return compareToken((_b = (_a = TOKEN_SYMBOLS_MAP[token]) === null || _a === void 0 ? void 0 : _a.addresses) === null || _b === void 0 ? void 0 : _b[chainId]);
|
|
122
131
|
});
|
|
123
132
|
}
|
|
124
|
-
|
|
133
|
+
/**
|
|
134
|
+
* @notice Returns the l1 token address matching the given l2TokenAddress and chainId.
|
|
135
|
+
*/
|
|
136
|
+
export function getL1TokenAddress(l2TokenAddress, chainId) {
|
|
125
137
|
if (chainIsL1(chainId))
|
|
126
|
-
|
|
138
|
+
return l2TokenAddress;
|
|
127
139
|
var tokenObject = Object.values(TOKEN_SYMBOLS_MAP).find(function (_a) {
|
|
128
140
|
var addresses = _a.addresses;
|
|
129
141
|
return addresses[chainId] === l2TokenAddress;
|
|
@@ -132,10 +144,6 @@ export function getL1TokenInfo(l2TokenAddress, chainId) {
|
|
|
132
144
|
if (!l1TokenAddress) {
|
|
133
145
|
throw new Error("TokenUtils#getL1TokenInfo: Unable to resolve l1 token address in TOKEN_SYMBOLS_MAP for L2 token ".concat(l2TokenAddress, " on chain ").concat(chainId));
|
|
134
146
|
}
|
|
135
|
-
return
|
|
136
|
-
address: l1TokenAddress,
|
|
137
|
-
symbol: tokenObject.symbol,
|
|
138
|
-
decimals: tokenObject.decimals,
|
|
139
|
-
};
|
|
147
|
+
return l1TokenAddress;
|
|
140
148
|
}
|
|
141
149
|
//# sourceMappingURL=TokenUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export interface CapitalCostConfigOverride {
|
|
|
24
24
|
default: CapitalCostConfig;
|
|
25
25
|
routeOverrides?: Record<ChainIdAsString, Record<ChainIdAsString, CapitalCostConfig>>;
|
|
26
26
|
destinationChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
27
|
+
originChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
27
28
|
}
|
|
28
29
|
export type RelayCapitalCostConfig = CapitalCostConfigOverride | CapitalCostConfig;
|
|
29
30
|
export interface BaseRelayFeeCalculatorConfig {
|
|
@@ -497,10 +498,7 @@ export declare class RelayFeeCalculator {
|
|
|
497
498
|
[x: number]: string;
|
|
498
499
|
133268194659241: string;
|
|
499
500
|
};
|
|
500
|
-
coingeckoId: string;
|
|
501
|
-
* Validates a CapitalCostConfig.
|
|
502
|
-
* @param capitalCosts CapitalCostConfig
|
|
503
|
-
*/
|
|
501
|
+
coingeckoId: string;
|
|
504
502
|
};
|
|
505
503
|
XYZ: {
|
|
506
504
|
name: string;
|
|
@@ -513,6 +511,18 @@ export declare class RelayFeeCalculator {
|
|
|
513
511
|
};
|
|
514
512
|
}, gasPrice?: BigNumberish, gasLimit?: BigNumberish, _tokenGasCost?: BigNumberish, transport?: Transport): Promise<BigNumber>;
|
|
515
513
|
capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
|
|
514
|
+
/**
|
|
515
|
+
* Checks for configuration conflicts across all token symbols and their associated chain configurations.
|
|
516
|
+
* This method examines the capital costs configuration for each token and identifies any overlapping
|
|
517
|
+
* or conflicting configurations between route overrides, destination chain overrides, and origin chain overrides.
|
|
518
|
+
* If conflicts are found, warnings will be logged via the warnIfConfigConflicts method.
|
|
519
|
+
*/
|
|
520
|
+
private checkAllConfigConflicts;
|
|
521
|
+
/**
|
|
522
|
+
* Log a warning if multiple configuration types apply to the same route
|
|
523
|
+
* @private
|
|
524
|
+
*/
|
|
525
|
+
private warnIfConfigConflicts;
|
|
516
526
|
/**
|
|
517
527
|
* Retrieves the relayer fee details for a deposit.
|
|
518
528
|
* @param deposit A valid deposit object to reason about
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayFeeCalculator.d.ts","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,SAAS,EACT,YAAY,EAEZ,uBAAuB,EAaxB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAGjC,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,CACX,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EACrC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,YAAY,CAAC;QACvB,QAAQ,EAAE,YAAY,CAAC;QACvB,iBAAiB,EAAE,SAAS,CAAC;QAC7B,qBAAqB,EAAE,SAAS,CAAC;QACjC,0BAA0B,EAAE,SAAS,CAAC;QACtC,SAAS,EAAE,SAAS,CAAC;KACtB,CAAC,KACC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACtC,aAAa,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACzD;AAED,eAAO,MAAM,wBAAwB,UAAqD,CAAC;AAC3F,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,KAAK,eAAe,GAAG,MAAM,CAAC;AAC9B,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACrF,yBAAyB,CAAC,EAAE,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"relayFeeCalculator.d.ts","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,SAAS,CAepF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAgCzF;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,SAAS,GAAG;IAAE,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE3F;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAQ/D;AAGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD"}
|
|
@@ -419,6 +419,15 @@ export declare function getCoingeckoTokenIdByAddress(contractAddress: string, ch
|
|
|
419
419
|
export declare function getTokenBalance(address: string, tokenAddress: string, signerOrProvider: SignerOrProvider, blockTag?: BlockTag): Promise<BigNumber>;
|
|
420
420
|
export declare function isBridgedUsdc(tokenSymbol: string): boolean;
|
|
421
421
|
export declare function isStablecoin(tokenSymbol: string): boolean;
|
|
422
|
+
/**
|
|
423
|
+
* @notice Returns the Token info for the token mapping in TOKEN_SYMBOLS_MAP matching the given l2TokenAddress
|
|
424
|
+
* and chainId. If the chain is the hub chain, then will remap the L1 token to its equivalent L1 token symbol for example
|
|
425
|
+
* it will always return a token info with symbol USDC and never USDC.e if chainId = mainnet.
|
|
426
|
+
* @param l2TokenAddress
|
|
427
|
+
* @param chainId
|
|
428
|
+
* @param tokenMapping
|
|
429
|
+
* @returns
|
|
430
|
+
*/
|
|
422
431
|
export declare function getTokenInfo(l2TokenAddress: string, chainId: number, tokenMapping?: {
|
|
423
432
|
ACX: {
|
|
424
433
|
name: string;
|
|
@@ -811,6 +820,9 @@ export declare function getTokenInfo(l2TokenAddress: string, chainId: number, to
|
|
|
811
820
|
* @returns Either USDC (if native) or USDbC/USDC.e (if bridged) or undefined if the token address is not recognized.
|
|
812
821
|
*/
|
|
813
822
|
export declare function getUsdcSymbol(l2Token: string, chainId: number): string | undefined;
|
|
814
|
-
|
|
823
|
+
/**
|
|
824
|
+
* @notice Returns the l1 token address matching the given l2TokenAddress and chainId.
|
|
825
|
+
*/
|
|
826
|
+
export declare function getL1TokenAddress(l2TokenAddress: string, chainId: number): string;
|
|
815
827
|
export {};
|
|
816
828
|
//# sourceMappingURL=TokenUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAY,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAM7C,KAAK,gBAAgB,GAAG,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC;AAEpD,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAI1G;AAED,eAAO,MAAM,mBAAmB,mBACd,MAAM;;aAMvB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAY7E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,WAC5B,MAAM,WACL,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEd,MAAM,GAAG,SAIX,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM7F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,GAAE,QAAmB,GAC5B,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAI1D;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAIzD;AAED,wBAAgB,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAoB,GAAG,OAAO,CAkB/G;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOlF;AAED,wBAAgB,
|
|
1
|
+
{"version":3,"file":"TokenUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAY,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAM7C,KAAK,gBAAgB,GAAG,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC;AAEpD,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAI1G;AAED,eAAO,MAAM,mBAAmB,mBACd,MAAM;;aAMvB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAY7E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,WAC5B,MAAM,WACL,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEd,MAAM,GAAG,SAIX,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM7F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,GAAE,QAAmB,GAC5B,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAI1D;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAIzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAoB,GAAG,OAAO,CAkB/G;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOlF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAUjF"}
|
package/package.json
CHANGED
|
@@ -50,6 +50,7 @@ export interface CapitalCostConfigOverride {
|
|
|
50
50
|
default: CapitalCostConfig;
|
|
51
51
|
routeOverrides?: Record<ChainIdAsString, Record<ChainIdAsString, CapitalCostConfig>>;
|
|
52
52
|
destinationChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
53
|
+
originChainOverrides?: Record<ChainIdAsString, CapitalCostConfig>;
|
|
53
54
|
}
|
|
54
55
|
export type RelayCapitalCostConfig = CapitalCostConfigOverride | CapitalCostConfig;
|
|
55
56
|
export interface BaseRelayFeeCalculatorConfig {
|
|
@@ -155,6 +156,8 @@ export class RelayFeeCalculator {
|
|
|
155
156
|
);
|
|
156
157
|
assert(Object.keys(this.capitalCostsConfig).length > 0, "capitalCostsConfig must have at least one entry");
|
|
157
158
|
this.logger = logger || DEFAULT_LOGGER;
|
|
159
|
+
// warn developer of any possible conflicting config overrides
|
|
160
|
+
this.checkAllConfigConflicts();
|
|
158
161
|
}
|
|
159
162
|
|
|
160
163
|
/**
|
|
@@ -194,8 +197,11 @@ export class RelayFeeCalculator {
|
|
|
194
197
|
for (const toChainIdRoutes of Object.values(config.routeOverrides || {})) {
|
|
195
198
|
Object.values(toChainIdRoutes).forEach(this.validateCapitalCostsConfig);
|
|
196
199
|
}
|
|
200
|
+
// Validate origin chain overrides
|
|
201
|
+
Object.values(config.originChainOverrides || {}).forEach(this.validateCapitalCostsConfig);
|
|
197
202
|
// Validate destination chain overrides
|
|
198
203
|
Object.values(config.destinationChainOverrides || {}).forEach(this.validateCapitalCostsConfig);
|
|
204
|
+
|
|
199
205
|
return config;
|
|
200
206
|
}
|
|
201
207
|
|
|
@@ -326,9 +332,26 @@ export class RelayFeeCalculator {
|
|
|
326
332
|
// bound to an upper bound. After the kink, the fee % increase will be fixed, and slowly approach the upper bound
|
|
327
333
|
// for very large amount inputs.
|
|
328
334
|
else {
|
|
329
|
-
|
|
335
|
+
// Order of specificity (most specific to least specific):
|
|
336
|
+
// 1. Route overrides (both origin and destination)
|
|
337
|
+
// 2. Destination chain overrides
|
|
338
|
+
// 3. Origin chain overrides
|
|
339
|
+
// 4. Default config
|
|
330
340
|
const routeOverride = tokenCostConfig?.routeOverrides?.[_originRoute || ""]?.[_destinationRoute || ""];
|
|
331
|
-
const
|
|
341
|
+
const destinationChainOverride = tokenCostConfig?.destinationChainOverrides?.[_destinationRoute || ""];
|
|
342
|
+
const originChainOverride = tokenCostConfig?.originChainOverrides?.[_originRoute || ""];
|
|
343
|
+
const config: CapitalCostConfig =
|
|
344
|
+
routeOverride ?? destinationChainOverride ?? originChainOverride ?? tokenCostConfig.default;
|
|
345
|
+
|
|
346
|
+
// Check and log warnings for configuration conflicts
|
|
347
|
+
this.warnIfConfigConflicts(
|
|
348
|
+
_tokenSymbol,
|
|
349
|
+
_originRoute || "",
|
|
350
|
+
_destinationRoute || "",
|
|
351
|
+
routeOverride,
|
|
352
|
+
destinationChainOverride,
|
|
353
|
+
originChainOverride
|
|
354
|
+
);
|
|
332
355
|
|
|
333
356
|
// Scale amount "y" to 18 decimals.
|
|
334
357
|
const y = toBN(_amountToRelay).mul(toBNWei("1", 18 - config.decimals));
|
|
@@ -356,6 +379,88 @@ export class RelayFeeCalculator {
|
|
|
356
379
|
}
|
|
357
380
|
}
|
|
358
381
|
|
|
382
|
+
/**
|
|
383
|
+
* Checks for configuration conflicts across all token symbols and their associated chain configurations.
|
|
384
|
+
* This method examines the capital costs configuration for each token and identifies any overlapping
|
|
385
|
+
* or conflicting configurations between route overrides, destination chain overrides, and origin chain overrides.
|
|
386
|
+
* If conflicts are found, warnings will be logged via the warnIfConfigConflicts method.
|
|
387
|
+
*/
|
|
388
|
+
private checkAllConfigConflicts(): void {
|
|
389
|
+
for (const [tokenSymbol, tokenConfig] of Object.entries(this.capitalCostsConfig)) {
|
|
390
|
+
// Get all origin chains that have specific configurations
|
|
391
|
+
const originChains = new Set<string>(Object.keys(tokenConfig.originChainOverrides || {}));
|
|
392
|
+
// Get all destination chains that have specific configurations
|
|
393
|
+
const destChains = new Set<string>(Object.keys(tokenConfig.destinationChainOverrides || {}));
|
|
394
|
+
|
|
395
|
+
// Add all chains from route overrides
|
|
396
|
+
if (tokenConfig.routeOverrides) {
|
|
397
|
+
Object.keys(tokenConfig.routeOverrides).forEach((originChain) => {
|
|
398
|
+
originChains.add(originChain);
|
|
399
|
+
Object.keys(tokenConfig.routeOverrides![originChain]).forEach((destChain) => {
|
|
400
|
+
destChains.add(destChain);
|
|
401
|
+
});
|
|
402
|
+
});
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
// If there are no specific chain configurations, just check the default case
|
|
406
|
+
if (originChains.size === 0 && destChains.size === 0) {
|
|
407
|
+
continue;
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
// Check for conflicts between all combinations of origin and destination chains
|
|
411
|
+
for (const originChain of Array.from(originChains)) {
|
|
412
|
+
for (const destChain of Array.from(destChains)) {
|
|
413
|
+
const routeOverride = tokenConfig.routeOverrides?.[originChain]?.[destChain];
|
|
414
|
+
const destinationChainOverride = tokenConfig.destinationChainOverrides?.[destChain];
|
|
415
|
+
const originChainOverride = tokenConfig.originChainOverrides?.[originChain];
|
|
416
|
+
|
|
417
|
+
this.warnIfConfigConflicts(
|
|
418
|
+
tokenSymbol,
|
|
419
|
+
originChain,
|
|
420
|
+
destChain,
|
|
421
|
+
routeOverride,
|
|
422
|
+
destinationChainOverride,
|
|
423
|
+
originChainOverride
|
|
424
|
+
);
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
/**
|
|
431
|
+
* Log a warning if multiple configuration types apply to the same route
|
|
432
|
+
* @private
|
|
433
|
+
*/
|
|
434
|
+
private warnIfConfigConflicts(
|
|
435
|
+
tokenSymbol: string,
|
|
436
|
+
originChain: string,
|
|
437
|
+
destChain: string,
|
|
438
|
+
routeOverride?: CapitalCostConfig,
|
|
439
|
+
destinationChainOverride?: CapitalCostConfig,
|
|
440
|
+
originChainOverride?: CapitalCostConfig
|
|
441
|
+
): void {
|
|
442
|
+
const overrideCount = [routeOverride, destinationChainOverride, originChainOverride].filter(Boolean).length;
|
|
443
|
+
|
|
444
|
+
if (overrideCount > 1) {
|
|
445
|
+
const configUsed = routeOverride
|
|
446
|
+
? "route override"
|
|
447
|
+
: destinationChainOverride
|
|
448
|
+
? "destination chain override"
|
|
449
|
+
: originChainOverride
|
|
450
|
+
? "origin chain override"
|
|
451
|
+
: "default override";
|
|
452
|
+
|
|
453
|
+
this.logger.warn({
|
|
454
|
+
at: "RelayFeeCalculator",
|
|
455
|
+
message: `Multiple configurations found for token ${tokenSymbol} from chain ${originChain} to chain ${destChain}`,
|
|
456
|
+
configUsed,
|
|
457
|
+
routeOverride,
|
|
458
|
+
destinationChainOverride,
|
|
459
|
+
originChainOverride,
|
|
460
|
+
});
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
|
|
359
464
|
/**
|
|
360
465
|
* Retrieves the relayer fee details for a deposit.
|
|
361
466
|
* @param deposit A valid deposit object to reason about
|
package/src/utils/SpokeUtils.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { encodeAbiParameters, keccak256 } from "viem";
|
|
2
2
|
import { MAX_SAFE_DEPOSIT_ID, ZERO_ADDRESS, ZERO_BYTES } from "../constants";
|
|
3
3
|
import { Deposit, RelayData } from "../interfaces";
|
|
4
4
|
import { toBytes32 } from "./AddressUtils";
|
|
5
|
-
import { keccak256 } from "./common";
|
|
6
5
|
import { BigNumber } from "./BigNumberUtils";
|
|
7
6
|
import { isMessageEmpty } from "./DepositUtils";
|
|
8
7
|
|
|
@@ -35,6 +34,27 @@ export function getDepositRelayData(deposit: Omit<Deposit, "messageHash">): Rela
|
|
|
35
34
|
* @returns The corresponding RelayData hash.
|
|
36
35
|
*/
|
|
37
36
|
export function getRelayDataHash(relayData: RelayData, destinationChainId: number): string {
|
|
37
|
+
const abi = [
|
|
38
|
+
{
|
|
39
|
+
type: "tuple",
|
|
40
|
+
components: [
|
|
41
|
+
{ type: "bytes32", name: "depositor" },
|
|
42
|
+
{ type: "bytes32", name: "recipient" },
|
|
43
|
+
{ type: "bytes32", name: "exclusiveRelayer" },
|
|
44
|
+
{ type: "bytes32", name: "inputToken" },
|
|
45
|
+
{ type: "bytes32", name: "outputToken" },
|
|
46
|
+
{ type: "uint256", name: "inputAmount" },
|
|
47
|
+
{ type: "uint256", name: "outputAmount" },
|
|
48
|
+
{ type: "uint256", name: "originChainId" },
|
|
49
|
+
{ type: "uint256", name: "depositId" },
|
|
50
|
+
{ type: "uint32", name: "fillDeadline" },
|
|
51
|
+
{ type: "uint32", name: "exclusivityDeadline" },
|
|
52
|
+
{ type: "bytes", name: "message" },
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
{ type: "uint256", name: "destinationChainId" },
|
|
56
|
+
];
|
|
57
|
+
|
|
38
58
|
const _relayData = {
|
|
39
59
|
...relayData,
|
|
40
60
|
depositor: toBytes32(relayData.depositor),
|
|
@@ -43,28 +63,8 @@ export function getRelayDataHash(relayData: RelayData, destinationChainId: numbe
|
|
|
43
63
|
outputToken: toBytes32(relayData.outputToken),
|
|
44
64
|
exclusiveRelayer: toBytes32(relayData.exclusiveRelayer),
|
|
45
65
|
};
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
[
|
|
49
|
-
"tuple(" +
|
|
50
|
-
"bytes32 depositor," +
|
|
51
|
-
"bytes32 recipient," +
|
|
52
|
-
"bytes32 exclusiveRelayer," +
|
|
53
|
-
"bytes32 inputToken," +
|
|
54
|
-
"bytes32 outputToken," +
|
|
55
|
-
"uint256 inputAmount," +
|
|
56
|
-
"uint256 outputAmount," +
|
|
57
|
-
"uint256 originChainId," +
|
|
58
|
-
"uint256 depositId," +
|
|
59
|
-
"uint32 fillDeadline," +
|
|
60
|
-
"uint32 exclusivityDeadline," +
|
|
61
|
-
"bytes message" +
|
|
62
|
-
")",
|
|
63
|
-
"uint256 destinationChainId",
|
|
64
|
-
],
|
|
65
|
-
[_relayData, destinationChainId]
|
|
66
|
-
)
|
|
67
|
-
);
|
|
66
|
+
|
|
67
|
+
return keccak256(encodeAbiParameters(abi, [_relayData, destinationChainId]));
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
export function getRelayHashFromEvent(e: RelayData & { destinationChainId: number }): string {
|
|
@@ -87,5 +87,5 @@ export function isZeroAddress(address: string): boolean {
|
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
export function getMessageHash(message: string): string {
|
|
90
|
-
return isMessageEmpty(message) ? ZERO_BYTES : keccak256(message);
|
|
90
|
+
return isMessageEmpty(message) ? ZERO_BYTES : keccak256(message as "0x{string}");
|
|
91
91
|
}
|
package/src/utils/TokenUtils.ts
CHANGED
|
@@ -102,6 +102,15 @@ export function isStablecoin(tokenSymbol: string): boolean {
|
|
|
102
102
|
);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
+
/**
|
|
106
|
+
* @notice Returns the Token info for the token mapping in TOKEN_SYMBOLS_MAP matching the given l2TokenAddress
|
|
107
|
+
* and chainId. If the chain is the hub chain, then will remap the L1 token to its equivalent L1 token symbol for example
|
|
108
|
+
* it will always return a token info with symbol USDC and never USDC.e if chainId = mainnet.
|
|
109
|
+
* @param l2TokenAddress
|
|
110
|
+
* @param chainId
|
|
111
|
+
* @param tokenMapping
|
|
112
|
+
* @returns
|
|
113
|
+
*/
|
|
105
114
|
export function getTokenInfo(l2TokenAddress: string, chainId: number, tokenMapping = TOKEN_SYMBOLS_MAP): L1Token {
|
|
106
115
|
// @dev This might give false positives if tokens on different networks have the same address. I'm not sure how
|
|
107
116
|
// to get around this...
|
|
@@ -137,9 +146,11 @@ export function getUsdcSymbol(l2Token: string, chainId: number): string | undefi
|
|
|
137
146
|
);
|
|
138
147
|
}
|
|
139
148
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
149
|
+
/**
|
|
150
|
+
* @notice Returns the l1 token address matching the given l2TokenAddress and chainId.
|
|
151
|
+
*/
|
|
152
|
+
export function getL1TokenAddress(l2TokenAddress: string, chainId: number): string {
|
|
153
|
+
if (chainIsL1(chainId)) return l2TokenAddress;
|
|
143
154
|
const tokenObject = Object.values(TOKEN_SYMBOLS_MAP).find(({ addresses }) => addresses[chainId] === l2TokenAddress);
|
|
144
155
|
const l1TokenAddress = tokenObject?.addresses[chainIsProd(chainId) ? CHAIN_IDs.MAINNET : CHAIN_IDs.SEPOLIA];
|
|
145
156
|
if (!l1TokenAddress) {
|
|
@@ -147,9 +158,5 @@ export function getL1TokenInfo(l2TokenAddress: string, chainId: number): L1Token
|
|
|
147
158
|
`TokenUtils#getL1TokenInfo: Unable to resolve l1 token address in TOKEN_SYMBOLS_MAP for L2 token ${l2TokenAddress} on chain ${chainId}`
|
|
148
159
|
);
|
|
149
160
|
}
|
|
150
|
-
return
|
|
151
|
-
address: l1TokenAddress,
|
|
152
|
-
symbol: tokenObject.symbol,
|
|
153
|
-
decimals: tokenObject.decimals,
|
|
154
|
-
};
|
|
161
|
+
return l1TokenAddress;
|
|
155
162
|
}
|