@grimoirelabs/venues 0.3.5 → 0.4.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/aave-v3.d.ts.map +1 -1
- package/dist/aave-v3.js +79 -58
- package/dist/aave-v3.js.map +1 -1
- package/dist/across.d.ts.map +1 -1
- package/dist/across.js +98 -15
- package/dist/across.js.map +1 -1
- package/dist/cli/utils.d.ts +5 -1
- package/dist/cli/utils.d.ts.map +1 -1
- package/dist/cli/utils.js +59 -8
- package/dist/cli/utils.js.map +1 -1
- package/dist/compound-v3.d.ts.map +1 -1
- package/dist/compound-v3.js +4 -0
- package/dist/compound-v3.js.map +1 -1
- package/dist/constraints.d.ts +4 -0
- package/dist/constraints.d.ts.map +1 -0
- package/dist/constraints.js +34 -0
- package/dist/constraints.js.map +1 -0
- package/dist/hyperliquid.d.ts.map +1 -1
- package/dist/hyperliquid.js +119 -27
- package/dist/hyperliquid.js.map +1 -1
- package/dist/index.d.ts +1 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -5
- package/dist/index.js.map +1 -1
- package/dist/morpho-blue.d.ts.map +1 -1
- package/dist/morpho-blue.js +53 -26
- package/dist/morpho-blue.js.map +1 -1
- package/dist/token-registry.d.ts +18 -0
- package/dist/token-registry.d.ts.map +1 -0
- package/dist/token-registry.js +139 -0
- package/dist/token-registry.js.map +1 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/uniswap-v3.d.ts.map +1 -1
- package/dist/uniswap-v3.js +101 -54
- package/dist/uniswap-v3.js.map +1 -1
- package/dist/uniswap-v4.d.ts.map +1 -1
- package/dist/uniswap-v4.js +100 -52
- package/dist/uniswap-v4.js.map +1 -1
- package/package.json +2 -2
- package/dist/lifi.d.ts +0 -10
- package/dist/lifi.d.ts.map +0 -1
- package/dist/lifi.js +0 -355
- package/dist/lifi.js.map +0 -1
- package/dist/yellow.d.ts +0 -10
- package/dist/yellow.d.ts.map +0 -1
- package/dist/yellow.js +0 -385
- package/dist/yellow.js.map +0 -1
package/dist/aave-v3.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave-v3.d.ts","sourceRoot":"","sources":["../src/aave-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAuB,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"aave-v3.d.ts","sourceRoot":"","sources":["../src/aave-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAuB,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAEV,OAAO,EAEP,YAAY,EAEb,MAAM,oBAAoB,CAAC;AAI5B,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE;QACR,MAAM,EAAE,OAAO,MAAM,CAAC;QACtB,QAAQ,EAAE,OAAO,QAAQ,CAAC;QAC1B,MAAM,EAAE,OAAO,MAAM,CAAC;QACtB,KAAK,EAAE,OAAO,KAAK,CAAC;KACrB,CAAC;CACH;AASD,wBAAgB,mBAAmB,CACjC,MAAM,GAAE,mBAAkD,GACzD,YAAY,CA4Hd;AAED,eAAO,MAAM,aAAa,cAAwB,CAAC"}
|
package/dist/aave-v3.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { AaveClient, chainId, evmAddress } from "@aave/client";
|
|
2
2
|
import { borrow, repay, supply, withdraw } from "@aave/client/actions";
|
|
3
|
+
import { assertSupportedConstraints } from "./constraints.js";
|
|
4
|
+
import { resolveTokenAddress, resolveTokenDecimals } from "./token-registry.js";
|
|
3
5
|
const DEFAULT_MARKETS = {
|
|
4
6
|
1: "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",
|
|
5
7
|
8453: "0xA238Dd80C259a72e81d7e4664a9801593F98d1c5",
|
|
@@ -8,14 +10,21 @@ const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
|
|
|
8
10
|
export function createAaveV3Adapter(config = { markets: DEFAULT_MARKETS }) {
|
|
9
11
|
const client = config.client ?? AaveClient.create();
|
|
10
12
|
const actions = config.actions ?? { supply, withdraw, borrow, repay };
|
|
13
|
+
const meta = {
|
|
14
|
+
name: "aave_v3",
|
|
15
|
+
supportedChains: Object.keys(config.markets).map((id) => Number.parseInt(id, 10)),
|
|
16
|
+
actions: ["lend", "withdraw", "borrow", "repay"],
|
|
17
|
+
supportedConstraints: [],
|
|
18
|
+
supportsQuote: false,
|
|
19
|
+
supportsSimulation: false,
|
|
20
|
+
supportsPreviewCommit: true,
|
|
21
|
+
dataEndpoints: ["health", "chains", "markets", "market", "reserve", "reserves"],
|
|
22
|
+
description: "Aave V3 adapter",
|
|
23
|
+
};
|
|
11
24
|
return {
|
|
12
|
-
meta
|
|
13
|
-
name: "aave_v3",
|
|
14
|
-
supportedChains: Object.keys(config.markets).map((id) => Number.parseInt(id, 10)),
|
|
15
|
-
actions: ["lend", "withdraw", "borrow", "repay"],
|
|
16
|
-
description: "Aave V3 adapter",
|
|
17
|
-
},
|
|
25
|
+
meta,
|
|
18
26
|
async buildAction(action, ctx) {
|
|
27
|
+
assertSupportedConstraints(meta, action);
|
|
19
28
|
const market = config.markets[ctx.chainId];
|
|
20
29
|
if (!market) {
|
|
21
30
|
throw new Error(`No Aave V3 market configured for chain ${ctx.chainId}`);
|
|
@@ -23,8 +32,16 @@ export function createAaveV3Adapter(config = { markets: DEFAULT_MARKETS }) {
|
|
|
23
32
|
if (!isAaveAction(action)) {
|
|
24
33
|
throw new Error(`Unsupported Aave action: ${action.type}`);
|
|
25
34
|
}
|
|
26
|
-
|
|
27
|
-
|
|
35
|
+
if (!action.asset) {
|
|
36
|
+
throw new Error("Asset is required for Aave action");
|
|
37
|
+
}
|
|
38
|
+
const assetAddress = resolveTokenAddress(action.asset, ctx.chainId, {
|
|
39
|
+
treatEthAsWrapped: true,
|
|
40
|
+
});
|
|
41
|
+
const decimals = resolveTokenDecimals(action.asset, ctx.chainId, {
|
|
42
|
+
treatEthAsWrapped: true,
|
|
43
|
+
defaultDecimals: 18,
|
|
44
|
+
});
|
|
28
45
|
const humanAmount = toHumanAmount(action.amount, decimals);
|
|
29
46
|
const rawAmount = toRawAmountString(action.amount);
|
|
30
47
|
const address = evmAddress(ctx.walletAddress);
|
|
@@ -34,6 +51,14 @@ export function createAaveV3Adapter(config = { markets: DEFAULT_MARKETS }) {
|
|
|
34
51
|
market: marketAddress,
|
|
35
52
|
chainId: chain,
|
|
36
53
|
};
|
|
54
|
+
const metadataContext = {
|
|
55
|
+
chainId: ctx.chainId,
|
|
56
|
+
market,
|
|
57
|
+
assetAddress,
|
|
58
|
+
decimals,
|
|
59
|
+
rawAmount: BigInt(rawAmount),
|
|
60
|
+
humanAmount,
|
|
61
|
+
};
|
|
37
62
|
let result;
|
|
38
63
|
switch (action.type) {
|
|
39
64
|
case "lend": {
|
|
@@ -89,9 +114,9 @@ export function createAaveV3Adapter(config = { markets: DEFAULT_MARKETS }) {
|
|
|
89
114
|
typeof plan === "object" &&
|
|
90
115
|
"__typename" in plan &&
|
|
91
116
|
plan.__typename === "InsufficientBalanceError") {
|
|
92
|
-
return [buildInsufficientBalancePlaceholder(plan, action, ctx.mode)];
|
|
117
|
+
return [buildInsufficientBalancePlaceholder(plan, action, metadataContext, ctx.mode)];
|
|
93
118
|
}
|
|
94
|
-
return buildAaveTransactions(plan, action);
|
|
119
|
+
return buildAaveTransactions(plan, action, metadataContext);
|
|
95
120
|
},
|
|
96
121
|
};
|
|
97
122
|
}
|
|
@@ -119,11 +144,16 @@ function extractExecutionPlan(planResult) {
|
|
|
119
144
|
}
|
|
120
145
|
return planResult;
|
|
121
146
|
}
|
|
122
|
-
function buildAaveTransactions(plan, action) {
|
|
147
|
+
function buildAaveTransactions(plan, action, metadataContext) {
|
|
123
148
|
if (isApprovalRequired(plan)) {
|
|
124
149
|
return [
|
|
125
|
-
toBuiltTx(plan.approval, action,
|
|
126
|
-
|
|
150
|
+
toBuiltTx(plan.approval, action, metadataContext, {
|
|
151
|
+
description: `Aave V3 approve ${action.asset}`,
|
|
152
|
+
isApproval: true,
|
|
153
|
+
}),
|
|
154
|
+
toBuiltTx(plan.originalTransaction, action, metadataContext, {
|
|
155
|
+
description: `Aave V3 ${action.type} ${action.asset}`,
|
|
156
|
+
}),
|
|
127
157
|
];
|
|
128
158
|
}
|
|
129
159
|
if (plan.__typename === "InsufficientBalanceError") {
|
|
@@ -135,9 +165,13 @@ function buildAaveTransactions(plan, action) {
|
|
|
135
165
|
if (!isTransactionRequest(plan)) {
|
|
136
166
|
throw new Error(`Unsupported Aave execution plan: ${plan.__typename}`);
|
|
137
167
|
}
|
|
138
|
-
return [
|
|
168
|
+
return [
|
|
169
|
+
toBuiltTx(plan, action, metadataContext, {
|
|
170
|
+
description: `Aave V3 ${action.type} ${action.asset}`,
|
|
171
|
+
}),
|
|
172
|
+
];
|
|
139
173
|
}
|
|
140
|
-
function buildInsufficientBalancePlaceholder(plan, action, mode) {
|
|
174
|
+
function buildInsufficientBalancePlaceholder(plan, action, metadataContext, mode) {
|
|
141
175
|
const err = plan;
|
|
142
176
|
const required = err.required?.value ?? err.required?.raw;
|
|
143
177
|
const available = err.available?.value ?? err.available?.raw;
|
|
@@ -151,17 +185,25 @@ function buildInsufficientBalancePlaceholder(plan, action, mode) {
|
|
|
151
185
|
},
|
|
152
186
|
description: `Aave V3 ${action.type} ${action.asset}${modeLabel} placeholder${balanceInfo}`,
|
|
153
187
|
action,
|
|
188
|
+
metadata: {
|
|
189
|
+
...buildAaveMetadata(action, metadataContext),
|
|
190
|
+
warnings: [
|
|
191
|
+
`insufficient_balance${balanceInfo.length > 0 ? balanceInfo : ""}`,
|
|
192
|
+
"placeholder_transaction_generated",
|
|
193
|
+
],
|
|
194
|
+
},
|
|
154
195
|
};
|
|
155
196
|
}
|
|
156
|
-
function toBuiltTx(request, action,
|
|
197
|
+
function toBuiltTx(request, action, metadataContext, options) {
|
|
157
198
|
return {
|
|
158
199
|
tx: {
|
|
159
200
|
to: request.to,
|
|
160
201
|
data: request.data,
|
|
161
202
|
value: toBigIntValue(request.value),
|
|
162
203
|
},
|
|
163
|
-
description,
|
|
204
|
+
description: options.description,
|
|
164
205
|
action,
|
|
206
|
+
metadata: buildAaveMetadata(action, metadataContext, { isApproval: options.isApproval }),
|
|
165
207
|
};
|
|
166
208
|
}
|
|
167
209
|
function toBigIntValue(value) {
|
|
@@ -175,32 +217,6 @@ function toBigIntValue(value) {
|
|
|
175
217
|
return BigInt(value);
|
|
176
218
|
return 0n;
|
|
177
219
|
}
|
|
178
|
-
function resolveAssetAddress(asset, chainId) {
|
|
179
|
-
if (!asset) {
|
|
180
|
-
throw new Error("Asset is required for Aave action");
|
|
181
|
-
}
|
|
182
|
-
if (asset.startsWith("0x") && asset.length === 42) {
|
|
183
|
-
return asset;
|
|
184
|
-
}
|
|
185
|
-
const KNOWN_TOKENS = {
|
|
186
|
-
1: {
|
|
187
|
-
USDC: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
188
|
-
USDT: "0xdAC17F958D2ee523a2206206994597C13D831ec7",
|
|
189
|
-
DAI: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
|
|
190
|
-
WETH: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
|
|
191
|
-
},
|
|
192
|
-
8453: {
|
|
193
|
-
USDC: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
|
|
194
|
-
WETH: "0x4200000000000000000000000000000000000006",
|
|
195
|
-
},
|
|
196
|
-
};
|
|
197
|
-
const chainTokens = KNOWN_TOKENS[chainId ?? 1] ?? KNOWN_TOKENS[1];
|
|
198
|
-
const address = chainTokens?.[asset.toUpperCase()];
|
|
199
|
-
if (!address) {
|
|
200
|
-
throw new Error(`Unknown asset: ${asset} on chain ${chainId ?? 1}. Provide address directly.`);
|
|
201
|
-
}
|
|
202
|
-
return address;
|
|
203
|
-
}
|
|
204
220
|
function toRawAmountString(amount) {
|
|
205
221
|
if (amount === "max") {
|
|
206
222
|
throw new Error("Aave adapter requires explicit amount, not 'max'");
|
|
@@ -216,21 +232,6 @@ function toRawAmountString(amount) {
|
|
|
216
232
|
}
|
|
217
233
|
throw new Error("Unsupported amount type for Aave action");
|
|
218
234
|
}
|
|
219
|
-
function resolveAssetDecimals(asset, _chainId) {
|
|
220
|
-
const KNOWN_DECIMALS = {
|
|
221
|
-
USDC: 6,
|
|
222
|
-
USDT: 6,
|
|
223
|
-
DAI: 18,
|
|
224
|
-
WETH: 18,
|
|
225
|
-
ETH: 18,
|
|
226
|
-
};
|
|
227
|
-
if (asset && !asset.startsWith("0x")) {
|
|
228
|
-
const d = KNOWN_DECIMALS[asset.toUpperCase()];
|
|
229
|
-
if (d !== undefined)
|
|
230
|
-
return d;
|
|
231
|
-
}
|
|
232
|
-
return 18; // default to 18 decimals
|
|
233
|
-
}
|
|
234
235
|
/**
|
|
235
236
|
* Convert a raw amount (e.g. 100000 for 0.1 USDC) to the human-readable
|
|
236
237
|
* BigDecimal string the Aave SDK expects (e.g. "0.1").
|
|
@@ -269,4 +270,24 @@ function toHumanAmount(amount, decimals) {
|
|
|
269
270
|
const fracStr = frac.toString().padStart(decimals, "0").replace(/0+$/, "");
|
|
270
271
|
return `${whole}.${fracStr}`;
|
|
271
272
|
}
|
|
273
|
+
function buildAaveMetadata(action, metadataContext, options = {}) {
|
|
274
|
+
const quote = action.type === "borrow" || action.type === "withdraw"
|
|
275
|
+
? { expectedOut: metadataContext.rawAmount }
|
|
276
|
+
: { expectedIn: metadataContext.rawAmount };
|
|
277
|
+
return {
|
|
278
|
+
quote: options.isApproval ? undefined : quote,
|
|
279
|
+
route: {
|
|
280
|
+
chainId: metadataContext.chainId,
|
|
281
|
+
market: metadataContext.market,
|
|
282
|
+
action: action.type,
|
|
283
|
+
asset: action.asset,
|
|
284
|
+
assetAddress: metadataContext.assetAddress,
|
|
285
|
+
assetDecimals: metadataContext.decimals,
|
|
286
|
+
amountRaw: metadataContext.rawAmount,
|
|
287
|
+
amountHuman: metadataContext.humanAmount,
|
|
288
|
+
amountFormat: action.type === "lend" || action.type === "borrow" ? "human_decimal" : "exact_raw",
|
|
289
|
+
approval: options.isApproval === true,
|
|
290
|
+
},
|
|
291
|
+
};
|
|
292
|
+
}
|
|
272
293
|
//# sourceMappingURL=aave-v3.js.map
|
package/dist/aave-v3.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave-v3.js","sourceRoot":"","sources":["../src/aave-v3.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aave-v3.js","sourceRoot":"","sources":["../src/aave-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAahF,MAAM,eAAe,GAA4B;IAC/C,CAAC,EAAE,4CAAuD;IAC1D,IAAI,EAAE,4CAAuD;CAC9D,CAAC;AACF,MAAM,YAAY,GAAG,4CAAuD,CAAC;AAG7E,MAAM,UAAU,mBAAmB,CACjC,SAA8B,EAAE,OAAO,EAAE,eAAe,EAAE;IAE1D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACtE,MAAM,IAAI,GAAyB;QACjC,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjF,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;QAChD,oBAAoB,EAAE,EAAE;QACxB,aAAa,EAAE,KAAK;QACpB,kBAAkB,EAAE,KAAK;QACzB,qBAAqB,EAAE,IAAI;QAC3B,aAAa,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;QAC/E,WAAW,EAAE,iBAAiB;KAC/B,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG;YAC3B,0BAA0B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE;gBAClE,iBAAiB,EAAE,IAAI;aACxB,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE;gBAC/D,iBAAiB,EAAE,IAAI;gBACvB,eAAe,EAAE,EAAE;aACpB,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC9C,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEnC,MAAM,WAAW,GAAG;gBAClB,MAAM,EAAE,aAAa;gBACrB,OAAO,EAAE,KAAK;aACmE,CAAC;YACpF,MAAM,eAAe,GAAwB;gBAC3C,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,MAAM;gBACN,YAAY;gBACZ,QAAQ;gBACR,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;gBAC5B,WAAW;aACZ,CAAC;YAEF,IAAI,MAAe,CAAC;YAEpB,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpB,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,OAAO,GAAG;wBACd,GAAG,WAAW;wBACd,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;qBAC3B,CAAC;oBACrD,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBAC/C,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,CAAC,CAAC;oBAChB,MAAM,OAAO,GAAG;wBACd,GAAG,WAAW;wBACd,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;wBACtF,SAAS,EAAE,OAAO;qBACkC,CAAC;oBACvD,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBACjD,MAAM;gBACR,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,WAAW;wBACd,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;wBAC7E,SAAS,EAAE,OAAO;qBACgC,CAAC;oBACrD,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBAC/C,MAAM;gBACR,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,OAAO,GAAG;wBACd,GAAG,WAAW;wBACd,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;qBACrC,CAAC;oBACpD,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBAC9C,MAAM;gBACR,CAAC;gBACD;oBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC;YAChC,MAAM,WAAW,GAAG,UAA0C,CAAC;YAC/D,IAAI,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,IAAI,oBAAoB,CAAC,CAAC;YACtE,CAAC;YAED,MAAM,IAAI,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;YAC9C,MAAM,wBAAwB,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC;YACnF,IACE,wBAAwB;gBACxB,IAAI;gBACJ,OAAO,IAAI,KAAK,QAAQ;gBACxB,YAAY,IAAI,IAAI;gBACpB,IAAI,CAAC,UAAU,KAAK,0BAA0B,EAC9C,CAAC;gBACD,OAAO,CAAC,mCAAmC,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACxF,CAAC;YAED,OAAO,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;AAgCnD,SAAS,YAAY,CAAC,MAAc;IAClC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAuB;IACjD,OAAO,IAAI,CAAC,UAAU,KAAK,kBAAkB,CAAC;AAChD,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAuB;IACnD,OAAO,IAAI,CAAC,UAAU,KAAK,oBAAoB,CAAC;AAClD,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAmB;IAC/C,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;QAC/E,OAAO,UAA+B,CAAC;IACzC,CAAC;IAED,IACE,UAAU;QACV,OAAO,UAAU,KAAK,QAAQ;QAC9B,OAAO,IAAI,UAAU;QACrB,UAAU,CAAC,KAAK;QAChB,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ;QACpC,YAAY,IAAI,UAAU,CAAC,KAAK,EAChC,CAAC;QACD,OAAO,UAAU,CAAC,KAA0B,CAAC;IAC/C,CAAC;IAED,OAAO,UAA+B,CAAC;AACzC,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAAuB,EACvB,MAAkB,EAClB,eAAoC;IAEpC,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE;gBAChD,WAAW,EAAE,mBAAmB,MAAM,CAAC,KAAK,EAAE;gBAC9C,UAAU,EAAE,IAAI;aACjB,CAAC;YACF,SAAS,CAAC,IAAI,CAAC,mBAAmB,EAAE,MAAM,EAAE,eAAe,EAAE;gBAC3D,WAAW,EAAE,WAAW,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE;aACtD,CAAC;SACH,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,KAAK,0BAA0B,EAAE,CAAC;QACnD,MAAM,GAAG,GAAG,IAGX,CAAC;QACF,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,SAAS,CAAC;QACvE,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,EAAE,KAAK,IAAI,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,SAAS,CAAC;QAC1E,MAAM,IAAI,KAAK,CACb,WAAW,MAAM,CAAC,IAAI,qCAAqC,QAAQ,gBAAgB,SAAS,GAAG,CAChG,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE;YACvC,WAAW,EAAE,WAAW,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE;SACtD,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,mCAAmC,CAC1C,IAAuB,EACvB,MAAkB,EAClB,eAAoC,EACpC,IAAyC;IAEzC,MAAM,GAAG,GAAG,IAGX,CAAC;IACF,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC;IAC1D,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,EAAE,KAAK,IAAI,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC;IAC7D,MAAM,WAAW,GACf,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC,eAAe,QAAQ,gBAAgB,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzC,OAAO;QACL,EAAE,EAAE;YACF,EAAE,EAAE,YAAY;YAChB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,EAAE;SACV;QACD,WAAW,EAAE,WAAW,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,GAAG,SAAS,eAAe,WAAW,EAAE;QAC3F,MAAM;QACN,QAAQ,EAAE;YACR,GAAG,iBAAiB,CAAC,MAAM,EAAE,eAAe,CAAC;YAC7C,QAAQ,EAAE;gBACR,uBAAuB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;gBAClE,mCAAmC;aACpC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAChB,OAA+B,EAC/B,MAAkB,EAClB,eAAoC,EACpC,OAGC;IAED,OAAO;QACL,EAAE,EAAE;YACF,EAAE,EAAE,OAAO,CAAC,EAAa;YACzB,IAAI,EAAE,OAAO,CAAC,IAAc;YAC5B,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;SACpC;QACD,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,MAAM;QACN,QAAQ,EAAE,iBAAiB,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;KACzF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAgC;IACrD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA4B;IACrD,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrE,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7D,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC7D,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CAAC,MAA4B,EAAE,QAAgB;IACnE,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,GAAW,CAAC;IAChB,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,GAAG,GAAG,MAAM,CAAC;SACxC,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;SACjE,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;SACrD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAClE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC;QACzB,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,GAAG,GAAG,GAAG,CAAC;aAClC,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;aAC3D,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;aAC/C,IAAI,OAAO,GAAG,KAAK,SAAS;YAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;YACxD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC1E,CAAC;;QAAM,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,GAAG,GAAG,OAAO,CAAC;IAC5B,MAAM,IAAI,GAAG,GAAG,GAAG,OAAO,CAAC;IAE3B,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAEzC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3E,OAAO,GAAG,KAAK,IAAI,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAkB,EAClB,eAAoC,EACpC,UAAoC,EAAE;IAEtC,MAAM,KAAK,GACT,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QACpD,CAAC,CAAC,EAAE,WAAW,EAAE,eAAe,CAAC,SAAS,EAAE;QAC5C,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,SAAS,EAAE,CAAC;IAEhD,OAAO;QACL,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;QAC7C,KAAK,EAAE;YACL,OAAO,EAAE,eAAe,CAAC,OAAO;YAChC,MAAM,EAAE,eAAe,CAAC,MAAM;YAC9B,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,YAAY,EAAE,eAAe,CAAC,YAAY;YAC1C,aAAa,EAAE,eAAe,CAAC,QAAQ;YACvC,SAAS,EAAE,eAAe,CAAC,SAAS;YACpC,WAAW,EAAE,eAAe,CAAC,WAAW;YACxC,YAAY,EACV,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW;YACpF,QAAQ,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;SACtC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/across.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"across.d.ts","sourceRoot":"","sources":["../src/across.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6C,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAE/F,OAAO,KAAK,EAAE,OAAO,EAAoB,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"across.d.ts","sourceRoot":"","sources":["../src/across.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6C,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAE/F,OAAO,KAAK,EAAE,OAAO,EAAoB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlF,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,wBAAgB,mBAAmB,CACjC,MAAM,GAAE,mBAAyE,GAChF,YAAY,CA4Ld;AAkBD,eAAO,MAAM,aAAa,cAGxB,CAAC"}
|
package/dist/across.js
CHANGED
|
@@ -1,20 +1,35 @@
|
|
|
1
1
|
import { addressToBytes32, getIntegratorDataSuffix, getQuote } from "@across-protocol/app-sdk";
|
|
2
2
|
import { spokePoolAbiV3_5 } from "@across-protocol/app-sdk/dist/abis/SpokePool/v3_5.js";
|
|
3
3
|
import { zeroAddress } from "viem";
|
|
4
|
+
import { assertSupportedConstraints } from "./constraints.js";
|
|
4
5
|
import { buildApprovalIfNeeded } from "./erc20.js";
|
|
6
|
+
import { resolveTokenAddress } from "./token-registry.js";
|
|
5
7
|
const DEFAULT_INTEGRATOR_ID = "0x0000";
|
|
6
8
|
export function createAcrossAdapter(config = { assets: {}, integratorId: DEFAULT_INTEGRATOR_ID }) {
|
|
7
9
|
const getQuoteImpl = config.getQuote ?? getQuote;
|
|
8
10
|
const integratorId = config.integratorId ?? DEFAULT_INTEGRATOR_ID;
|
|
9
11
|
const supportedChains = Array.from(new Set(Object.values(config.assets).flatMap((chains) => Object.keys(chains).map(Number))));
|
|
12
|
+
const meta = {
|
|
13
|
+
name: "across",
|
|
14
|
+
supportedChains,
|
|
15
|
+
actions: ["bridge"],
|
|
16
|
+
supportedConstraints: [
|
|
17
|
+
"max_slippage",
|
|
18
|
+
"min_output",
|
|
19
|
+
"require_quote",
|
|
20
|
+
"require_simulation",
|
|
21
|
+
"max_gas",
|
|
22
|
+
],
|
|
23
|
+
supportsQuote: true,
|
|
24
|
+
supportsSimulation: true,
|
|
25
|
+
supportsPreviewCommit: true,
|
|
26
|
+
dataEndpoints: ["quote", "deposit_simulation"],
|
|
27
|
+
description: "Across Protocol bridge adapter",
|
|
28
|
+
};
|
|
10
29
|
return {
|
|
11
|
-
meta
|
|
12
|
-
name: "across",
|
|
13
|
-
supportedChains,
|
|
14
|
-
actions: ["bridge"],
|
|
15
|
-
description: "Across Protocol bridge adapter",
|
|
16
|
-
},
|
|
30
|
+
meta,
|
|
17
31
|
async buildAction(action, ctx) {
|
|
32
|
+
assertSupportedConstraints(meta, action);
|
|
18
33
|
if (action.type !== "bridge") {
|
|
19
34
|
throw new Error(`Across adapter only supports bridge actions (got ${action.type})`);
|
|
20
35
|
}
|
|
@@ -37,10 +52,20 @@ export function createAcrossAdapter(config = { assets: {}, integratorId: DEFAULT
|
|
|
37
52
|
apiUrl: config.apiUrl,
|
|
38
53
|
recipient: ctx.walletAddress,
|
|
39
54
|
});
|
|
55
|
+
const minDeposit = quote.limits.minDeposit;
|
|
56
|
+
if (amount < minDeposit) {
|
|
57
|
+
throw new Error(`Across bridge amount ${amount.toString()} is below minimum ${minDeposit.toString()} for this route`);
|
|
58
|
+
}
|
|
40
59
|
const client = ctx.provider.getClient?.();
|
|
60
|
+
if (action.constraints?.requireQuote === true && !quote) {
|
|
61
|
+
throw new Error("Across adapter could not resolve quote while require_quote is enabled");
|
|
62
|
+
}
|
|
41
63
|
if (!client?.simulateContract) {
|
|
42
64
|
throw new Error("Across adapter requires a provider with simulateContract support");
|
|
43
65
|
}
|
|
66
|
+
if (action.constraints?.requireSimulation === true && !client.simulateContract) {
|
|
67
|
+
throw new Error("Across adapter requires simulation support while require_simulation is enabled");
|
|
68
|
+
}
|
|
44
69
|
const slippageBps = action.constraints?.maxSlippageBps ?? config.slippageBps;
|
|
45
70
|
const minOutput = action.constraints?.minOutput ??
|
|
46
71
|
(slippageBps !== undefined
|
|
@@ -83,14 +108,58 @@ export function createAcrossAdapter(config = { assets: {}, integratorId: DEFAULT
|
|
|
83
108
|
const txRequest = simulation.request;
|
|
84
109
|
const to = ("to" in txRequest ? txRequest.to : txRequest.address);
|
|
85
110
|
const data = ("data" in txRequest ? txRequest.data : "0x");
|
|
111
|
+
const value = txRequest.value ?? 0n;
|
|
112
|
+
const gasEstimate = await estimateGasIfSupported(ctx, { to, data, value });
|
|
113
|
+
const estimatedGas = gasEstimate?.gasLimit;
|
|
114
|
+
if (action.constraints?.maxGas !== undefined) {
|
|
115
|
+
if (estimatedGas === undefined) {
|
|
116
|
+
throw new Error("Across adapter could not estimate gas while max_gas is enabled");
|
|
117
|
+
}
|
|
118
|
+
if (estimatedGas > action.constraints.maxGas) {
|
|
119
|
+
throw new Error(`Across bridge gas estimate ${estimatedGas.toString()} exceeds max_gas ${action.constraints.maxGas.toString()}`);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
const warnings = [];
|
|
123
|
+
if (quote.isAmountTooLow) {
|
|
124
|
+
warnings.push("Bridge amount is below recommended minimum for this route");
|
|
125
|
+
}
|
|
86
126
|
const bridgeTx = {
|
|
87
127
|
tx: {
|
|
88
128
|
to,
|
|
89
129
|
data,
|
|
90
|
-
value
|
|
130
|
+
value,
|
|
91
131
|
},
|
|
92
132
|
description: `Across bridge ${action.asset} ${originChainId} → ${destinationChainId}`,
|
|
133
|
+
gasEstimate,
|
|
93
134
|
action,
|
|
135
|
+
metadata: {
|
|
136
|
+
quote: {
|
|
137
|
+
expectedIn: quote.deposit.inputAmount,
|
|
138
|
+
expectedOut: quote.deposit.outputAmount,
|
|
139
|
+
minOut: deposit.outputAmount,
|
|
140
|
+
slippageBps,
|
|
141
|
+
},
|
|
142
|
+
route: {
|
|
143
|
+
originChainId,
|
|
144
|
+
destinationChainId,
|
|
145
|
+
inputToken,
|
|
146
|
+
outputToken,
|
|
147
|
+
spokePoolAddress: deposit.spokePoolAddress,
|
|
148
|
+
quoteTimestamp: deposit.quoteTimestamp,
|
|
149
|
+
fillDeadline: deposit.fillDeadline,
|
|
150
|
+
estimatedFillTimeSec: quote.estimatedFillTimeSec,
|
|
151
|
+
minDeposit: quote.limits.minDeposit,
|
|
152
|
+
maxDeposit: quote.limits.maxDeposit,
|
|
153
|
+
maxDepositInstant: quote.limits.maxDepositInstant,
|
|
154
|
+
},
|
|
155
|
+
fees: {
|
|
156
|
+
lpFee: quote.fees.lpFee,
|
|
157
|
+
relayerGasFee: quote.fees.relayerGasFee,
|
|
158
|
+
relayerCapitalFee: quote.fees.relayerCapitalFee,
|
|
159
|
+
totalRelayFee: quote.fees.totalRelayFee,
|
|
160
|
+
},
|
|
161
|
+
warnings,
|
|
162
|
+
},
|
|
94
163
|
};
|
|
95
164
|
return [...approvalTxs, bridgeTx];
|
|
96
165
|
},
|
|
@@ -98,17 +167,17 @@ export function createAcrossAdapter(config = { assets: {}, integratorId: DEFAULT
|
|
|
98
167
|
}
|
|
99
168
|
const DEFAULT_ASSETS = {
|
|
100
169
|
USDC: {
|
|
101
|
-
1: "
|
|
102
|
-
8453: "
|
|
103
|
-
10: "
|
|
104
|
-
42161: "
|
|
170
|
+
1: resolveTokenAddress("USDC", 1),
|
|
171
|
+
8453: resolveTokenAddress("USDC", 8453),
|
|
172
|
+
10: resolveTokenAddress("USDC", 10),
|
|
173
|
+
42161: resolveTokenAddress("USDC", 42161),
|
|
105
174
|
1337: "0x6d1e7cde53a9467b783991afd8af56d4a99b3a56",
|
|
106
175
|
},
|
|
107
176
|
WETH: {
|
|
108
|
-
1: "
|
|
109
|
-
8453: "
|
|
110
|
-
10: "
|
|
111
|
-
42161: "
|
|
177
|
+
1: resolveTokenAddress("WETH", 1),
|
|
178
|
+
8453: resolveTokenAddress("WETH", 8453),
|
|
179
|
+
10: resolveTokenAddress("WETH", 10),
|
|
180
|
+
42161: resolveTokenAddress("WETH", 42161),
|
|
112
181
|
},
|
|
113
182
|
};
|
|
114
183
|
export const acrossAdapter = createAcrossAdapter({
|
|
@@ -151,4 +220,18 @@ function isLiteralAmount(value) {
|
|
|
151
220
|
function applyBps(amount, bps) {
|
|
152
221
|
return (amount * BigInt(bps)) / 10000n;
|
|
153
222
|
}
|
|
223
|
+
async function estimateGasIfSupported(ctx, tx) {
|
|
224
|
+
if (typeof ctx.provider.getGasEstimate !== "function") {
|
|
225
|
+
return undefined;
|
|
226
|
+
}
|
|
227
|
+
try {
|
|
228
|
+
return await ctx.provider.getGasEstimate({
|
|
229
|
+
...tx,
|
|
230
|
+
from: ctx.walletAddress,
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
catch {
|
|
234
|
+
return undefined;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
154
237
|
//# sourceMappingURL=across.js.map
|
package/dist/across.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"across.js","sourceRoot":"","sources":["../src/across.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,sDAAsD,CAAC;AAExF,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"across.js","sourceRoot":"","sources":["../src/across.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/utils.d.ts
CHANGED
|
@@ -7,5 +7,9 @@ export declare function parseArgs(argv: string[]): ParsedArgs;
|
|
|
7
7
|
export declare function getOption(options: Record<string, string | boolean>, key: string): string | undefined;
|
|
8
8
|
export declare function requireOption(options: Record<string, string | boolean>, key: string): string;
|
|
9
9
|
export type OutputFormat = "auto" | "json" | "table";
|
|
10
|
-
|
|
10
|
+
interface PrintResultOptions {
|
|
11
|
+
isTTY?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare function printResult(data: unknown, format?: OutputFormat, options?: PrintResultOptions): void;
|
|
14
|
+
export {};
|
|
11
15
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/cli/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAmCpD;AAED,wBAAgB,SAAS,CACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EACzC,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAIpB;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAM5F;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAErD,wBAAgB,WAAW,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAmCpD;AAED,wBAAgB,SAAS,CACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EACzC,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAIpB;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAM5F;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAErD,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,WAAW,CACzB,IAAI,EAAE,OAAO,EACb,MAAM,GAAE,YAAqB,EAC7B,OAAO,GAAE,kBAAuB,GAC/B,IAAI,CA0BN"}
|
package/dist/cli/utils.js
CHANGED
|
@@ -45,27 +45,46 @@ export function requireOption(options, key) {
|
|
|
45
45
|
}
|
|
46
46
|
return value;
|
|
47
47
|
}
|
|
48
|
-
export function printResult(data, format = "auto") {
|
|
48
|
+
export function printResult(data, format = "auto", options = {}) {
|
|
49
|
+
const isTTY = options.isTTY ?? Boolean(process.stdout.isTTY);
|
|
49
50
|
if (format === "json") {
|
|
50
51
|
console.log(JSON.stringify(data, null, 2));
|
|
51
52
|
return;
|
|
52
53
|
}
|
|
53
54
|
const table = renderTable(data);
|
|
54
55
|
if (format === "table") {
|
|
56
|
+
const compactTable = renderTable(data, { summarizeNested: true, maxCellWidth: 96 });
|
|
55
57
|
if (table) {
|
|
56
|
-
console.log(table);
|
|
58
|
+
console.log(compactTable ?? table);
|
|
57
59
|
}
|
|
58
60
|
else {
|
|
59
61
|
console.log(JSON.stringify(data, null, 2));
|
|
60
62
|
}
|
|
61
63
|
return;
|
|
62
64
|
}
|
|
65
|
+
if (isTTY && isAutoTableFriendly(data) && table) {
|
|
66
|
+
console.log(table);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
63
69
|
console.log(JSON.stringify(data, null, 2));
|
|
64
|
-
|
|
65
|
-
|
|
70
|
+
}
|
|
71
|
+
function isAutoTableFriendly(data) {
|
|
72
|
+
if (Array.isArray(data)) {
|
|
73
|
+
if (data.length === 0)
|
|
74
|
+
return false;
|
|
75
|
+
return data.every((row) => row &&
|
|
76
|
+
typeof row === "object" &&
|
|
77
|
+
Object.values(row).every((value) => isPrimitive(value)));
|
|
78
|
+
}
|
|
79
|
+
if (!data || typeof data !== "object") {
|
|
80
|
+
return false;
|
|
66
81
|
}
|
|
82
|
+
const entries = Object.entries(data);
|
|
83
|
+
if (entries.length === 0)
|
|
84
|
+
return false;
|
|
85
|
+
return entries.every(([, value]) => isPrimitive(value));
|
|
67
86
|
}
|
|
68
|
-
function renderTable(data) {
|
|
87
|
+
function renderTable(data, options = {}) {
|
|
69
88
|
if (Array.isArray(data)) {
|
|
70
89
|
if (data.length === 0)
|
|
71
90
|
return null;
|
|
@@ -78,13 +97,13 @@ function renderTable(data) {
|
|
|
78
97
|
}
|
|
79
98
|
return set;
|
|
80
99
|
}, new Set()));
|
|
81
|
-
return formatTable(headers, rows.map((row) => headers.map((key) => formatValue(row[key]))));
|
|
100
|
+
return formatTable(headers, rows.map((row) => headers.map((key) => formatValue(row[key], options))));
|
|
82
101
|
}
|
|
83
102
|
if (data && typeof data === "object") {
|
|
84
103
|
const entries = Object.entries(data);
|
|
85
104
|
if (entries.length === 0)
|
|
86
105
|
return null;
|
|
87
|
-
return formatTable(["key", "value"], entries.map(([key, value]) => [key, formatValue(value)]));
|
|
106
|
+
return formatTable(["key", "value"], entries.map(([key, value]) => [key, formatValue(value, options)]));
|
|
88
107
|
}
|
|
89
108
|
return null;
|
|
90
109
|
}
|
|
@@ -94,7 +113,7 @@ function formatTable(headers, rows) {
|
|
|
94
113
|
const separator = widths.map((width) => "-".repeat(width)).join("-+-");
|
|
95
114
|
return [line(headers), separator, ...rows.map((row) => line(row))].join("\n");
|
|
96
115
|
}
|
|
97
|
-
function formatValue(value) {
|
|
116
|
+
function formatValue(value, options = {}) {
|
|
98
117
|
if (value === null || value === undefined)
|
|
99
118
|
return "";
|
|
100
119
|
if (typeof value === "string")
|
|
@@ -102,6 +121,38 @@ function formatValue(value) {
|
|
|
102
121
|
if (typeof value === "number" || typeof value === "boolean" || typeof value === "bigint") {
|
|
103
122
|
return value.toString();
|
|
104
123
|
}
|
|
124
|
+
if (options.summarizeNested) {
|
|
125
|
+
const summary = summarizeNestedValue(value);
|
|
126
|
+
return truncate(summary, options.maxCellWidth ?? 96);
|
|
127
|
+
}
|
|
105
128
|
return JSON.stringify(value);
|
|
106
129
|
}
|
|
130
|
+
function isPrimitive(value) {
|
|
131
|
+
return (value === null ||
|
|
132
|
+
value === undefined ||
|
|
133
|
+
typeof value === "string" ||
|
|
134
|
+
typeof value === "number" ||
|
|
135
|
+
typeof value === "boolean" ||
|
|
136
|
+
typeof value === "bigint");
|
|
137
|
+
}
|
|
138
|
+
function summarizeNestedValue(value) {
|
|
139
|
+
if (Array.isArray(value)) {
|
|
140
|
+
return `[${value.length} items]`;
|
|
141
|
+
}
|
|
142
|
+
if (value && typeof value === "object") {
|
|
143
|
+
const keys = Object.keys(value);
|
|
144
|
+
if (keys.length === 0)
|
|
145
|
+
return "{}";
|
|
146
|
+
const preview = keys.slice(0, 3).join(", ");
|
|
147
|
+
return keys.length > 3 ? `{${preview}, ...}` : `{${preview}}`;
|
|
148
|
+
}
|
|
149
|
+
return String(value);
|
|
150
|
+
}
|
|
151
|
+
function truncate(value, max) {
|
|
152
|
+
if (value.length <= max)
|
|
153
|
+
return value;
|
|
154
|
+
if (max <= 3)
|
|
155
|
+
return value.slice(0, max);
|
|
156
|
+
return `${value.slice(0, max - 3)}...`;
|
|
157
|
+
}
|
|
107
158
|
//# sourceMappingURL=utils.js.map
|
package/dist/cli/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,SAAS,CAAC,IAAc;IACtC,IAAI,OAAO,GAAuB,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAqC,EAAE,CAAC;IACrD,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QACpB,OAAO,GAAG,SAAS,CAAC;IACtB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG;YAAE,SAAS;QAEnB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;gBACpB,CAAC,EAAE,CAAC;YACN,CAAC;QACH,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,OAAyC,EACzC,GAAW;IAEX,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAyC,EAAE,GAAW;IAClF,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":"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"}
|