@pendle/sdk-boros 1.3.4 → 1.4.0-socket-v3-migration-20260704101735
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/CHANGELOG.md +6 -0
- package/dist/addresses.js +1 -1
- package/dist/addresses.js.map +1 -1
- package/dist/contracts/abis/viemAbiAllowanceHolder.d.ts +25 -0
- package/dist/contracts/abis/viemAbiAllowanceHolder.js +8 -0
- package/dist/contracts/abis/viemAbiAllowanceHolder.js.map +1 -0
- package/dist/contracts/abis/viemAbiOpenRouter.d.ts +212 -0
- package/dist/contracts/abis/viemAbiOpenRouter.js +11 -0
- package/dist/contracts/abis/viemAbiOpenRouter.js.map +1 -0
- package/dist/entities/crossChainDeposit/aggregators/Bungee/index.js +43 -51
- package/dist/entities/crossChainDeposit/aggregators/Bungee/index.js.map +1 -1
- package/dist/entities/crossChainDeposit/aggregators/Bungee/types.d.ts +45 -39
- package/dist/entities/crossChainDeposit/aggregators/Bungee/types.js.map +1 -1
- package/dist/entities/crossChainDeposit/aggregators/Bungee/validation.d.ts +11 -2
- package/dist/entities/crossChainDeposit/aggregators/Bungee/validation.js +76 -31
- package/dist/entities/crossChainDeposit/aggregators/Bungee/validation.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @pendle/sdk-boros
|
|
2
2
|
|
|
3
|
+
## 1.4.0-socket-v3-migration-20260704101735
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 188df7a: Migrate cross-chain deposit (Bungee) aggregator to the Socket v3 API: v3 quote endpoint and response shape, 3-layer nested calldata decoding, and rewritten calldata validation (AllowanceHolder/OpenRouter allowlist, exec amount-lock, entrypoint allowlist, same-chain swap receiver/minOut).
|
|
8
|
+
|
|
3
9
|
## 1.3.4
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/dist/addresses.js
CHANGED
|
@@ -103,7 +103,7 @@ const getChainId = () => {
|
|
|
103
103
|
};
|
|
104
104
|
exports.getChainId = getChainId;
|
|
105
105
|
function getBungeeApiUrl() {
|
|
106
|
-
return exports.env === 'production' ? 'https://backend.
|
|
106
|
+
return exports.env === 'production' ? 'https://backend.socket.tech' : 'https://public-backend.socket.tech';
|
|
107
107
|
}
|
|
108
108
|
function toAddress(rawAddress) {
|
|
109
109
|
return rawAddress.toLowerCase();
|
package/dist/addresses.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addresses.js","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":";;;AAMA,wBAEC;AAqGD,
|
|
1
|
+
{"version":3,"file":"addresses.js","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const allowanceHolderAbi: readonly [{
|
|
2
|
+
readonly name: "exec";
|
|
3
|
+
readonly type: "function";
|
|
4
|
+
readonly stateMutability: "payable";
|
|
5
|
+
readonly inputs: readonly [{
|
|
6
|
+
readonly type: "address";
|
|
7
|
+
readonly name: "operator";
|
|
8
|
+
}, {
|
|
9
|
+
readonly type: "address";
|
|
10
|
+
readonly name: "token";
|
|
11
|
+
}, {
|
|
12
|
+
readonly type: "uint256";
|
|
13
|
+
readonly name: "amount";
|
|
14
|
+
}, {
|
|
15
|
+
readonly type: "address";
|
|
16
|
+
readonly name: "target";
|
|
17
|
+
}, {
|
|
18
|
+
readonly type: "bytes";
|
|
19
|
+
readonly name: "data";
|
|
20
|
+
}];
|
|
21
|
+
readonly outputs: readonly [{
|
|
22
|
+
readonly type: "bytes";
|
|
23
|
+
readonly name: "result";
|
|
24
|
+
}];
|
|
25
|
+
}];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.allowanceHolderAbi = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
exports.allowanceHolderAbi = (0, viem_1.parseAbi)([
|
|
6
|
+
'function exec(address operator, address token, uint256 amount, address target, bytes data) payable returns (bytes result)',
|
|
7
|
+
]);
|
|
8
|
+
//# sourceMappingURL=viemAbiAllowanceHolder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viemAbiAllowanceHolder.js","sourceRoot":"","sources":["../../../src/contracts/abis/viemAbiAllowanceHolder.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAanB,QAAA,kBAAkB,GAAG,IAAA,eAAQ,EAAC;IACzC,2HAA2H;CAC5H,CAAC,CAAC"}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
export declare const openRouterAbi: readonly [{
|
|
2
|
+
readonly name: "swap";
|
|
3
|
+
readonly type: "function";
|
|
4
|
+
readonly stateMutability: "payable";
|
|
5
|
+
readonly inputs: readonly [{
|
|
6
|
+
readonly type: "bytes32";
|
|
7
|
+
readonly name: "quoteId";
|
|
8
|
+
}, {
|
|
9
|
+
readonly type: "uint256";
|
|
10
|
+
readonly name: "flags";
|
|
11
|
+
}, {
|
|
12
|
+
readonly type: "tuple";
|
|
13
|
+
readonly components: readonly [{
|
|
14
|
+
readonly type: "address";
|
|
15
|
+
readonly name: "user";
|
|
16
|
+
}, {
|
|
17
|
+
readonly type: "address";
|
|
18
|
+
readonly name: "inputToken";
|
|
19
|
+
}, {
|
|
20
|
+
readonly type: "uint256";
|
|
21
|
+
readonly name: "inputAmount";
|
|
22
|
+
}];
|
|
23
|
+
readonly name: "input";
|
|
24
|
+
}, {
|
|
25
|
+
readonly type: "tuple";
|
|
26
|
+
readonly components: readonly [{
|
|
27
|
+
readonly type: "address";
|
|
28
|
+
readonly name: "receiver";
|
|
29
|
+
}, {
|
|
30
|
+
readonly type: "uint256";
|
|
31
|
+
readonly name: "amount";
|
|
32
|
+
}];
|
|
33
|
+
readonly name: "fee";
|
|
34
|
+
}, {
|
|
35
|
+
readonly type: "tuple";
|
|
36
|
+
readonly components: readonly [{
|
|
37
|
+
readonly type: "address";
|
|
38
|
+
readonly name: "target";
|
|
39
|
+
}, {
|
|
40
|
+
readonly type: "address";
|
|
41
|
+
readonly name: "approvalSpender";
|
|
42
|
+
}, {
|
|
43
|
+
readonly type: "address";
|
|
44
|
+
readonly name: "outputToken";
|
|
45
|
+
}, {
|
|
46
|
+
readonly type: "uint256";
|
|
47
|
+
readonly name: "value";
|
|
48
|
+
}, {
|
|
49
|
+
readonly type: "uint256";
|
|
50
|
+
readonly name: "minOutput";
|
|
51
|
+
}, {
|
|
52
|
+
readonly type: "uint256";
|
|
53
|
+
readonly name: "returnDataWordOffset";
|
|
54
|
+
}];
|
|
55
|
+
readonly name: "swapData";
|
|
56
|
+
}, {
|
|
57
|
+
readonly type: "bytes";
|
|
58
|
+
readonly name: "swapCallData";
|
|
59
|
+
}, {
|
|
60
|
+
readonly type: "address";
|
|
61
|
+
readonly name: "recipient";
|
|
62
|
+
}];
|
|
63
|
+
readonly outputs: readonly [{
|
|
64
|
+
readonly type: "uint256";
|
|
65
|
+
}];
|
|
66
|
+
}, {
|
|
67
|
+
readonly name: "swapAndBridge";
|
|
68
|
+
readonly type: "function";
|
|
69
|
+
readonly stateMutability: "payable";
|
|
70
|
+
readonly inputs: readonly [{
|
|
71
|
+
readonly type: "bytes32";
|
|
72
|
+
readonly name: "quoteId";
|
|
73
|
+
}, {
|
|
74
|
+
readonly type: "uint256";
|
|
75
|
+
readonly name: "flags";
|
|
76
|
+
}, {
|
|
77
|
+
readonly type: "tuple";
|
|
78
|
+
readonly components: readonly [{
|
|
79
|
+
readonly type: "address";
|
|
80
|
+
readonly name: "user";
|
|
81
|
+
}, {
|
|
82
|
+
readonly type: "address";
|
|
83
|
+
readonly name: "inputToken";
|
|
84
|
+
}, {
|
|
85
|
+
readonly type: "uint256";
|
|
86
|
+
readonly name: "inputAmount";
|
|
87
|
+
}];
|
|
88
|
+
readonly name: "input";
|
|
89
|
+
}, {
|
|
90
|
+
readonly type: "tuple";
|
|
91
|
+
readonly components: readonly [{
|
|
92
|
+
readonly type: "address";
|
|
93
|
+
readonly name: "receiver";
|
|
94
|
+
}, {
|
|
95
|
+
readonly type: "uint256";
|
|
96
|
+
readonly name: "amount";
|
|
97
|
+
}];
|
|
98
|
+
readonly name: "fee";
|
|
99
|
+
}, {
|
|
100
|
+
readonly type: "tuple";
|
|
101
|
+
readonly components: readonly [{
|
|
102
|
+
readonly type: "address";
|
|
103
|
+
readonly name: "target";
|
|
104
|
+
}, {
|
|
105
|
+
readonly type: "address";
|
|
106
|
+
readonly name: "approvalSpender";
|
|
107
|
+
}, {
|
|
108
|
+
readonly type: "address";
|
|
109
|
+
readonly name: "outputToken";
|
|
110
|
+
}, {
|
|
111
|
+
readonly type: "uint256";
|
|
112
|
+
readonly name: "value";
|
|
113
|
+
}, {
|
|
114
|
+
readonly type: "uint256";
|
|
115
|
+
readonly name: "minOutput";
|
|
116
|
+
}, {
|
|
117
|
+
readonly type: "uint256";
|
|
118
|
+
readonly name: "returnDataWordOffset";
|
|
119
|
+
}];
|
|
120
|
+
readonly name: "swapData";
|
|
121
|
+
}, {
|
|
122
|
+
readonly type: "bytes";
|
|
123
|
+
readonly name: "swapCallData";
|
|
124
|
+
}, {
|
|
125
|
+
readonly type: "tuple";
|
|
126
|
+
readonly components: readonly [{
|
|
127
|
+
readonly type: "address";
|
|
128
|
+
readonly name: "bridgeTarget";
|
|
129
|
+
}, {
|
|
130
|
+
readonly type: "address";
|
|
131
|
+
readonly name: "bridgeApprovalSpender";
|
|
132
|
+
}, {
|
|
133
|
+
readonly type: "uint256";
|
|
134
|
+
readonly name: "bridgeValue";
|
|
135
|
+
}];
|
|
136
|
+
readonly name: "bridgeData";
|
|
137
|
+
}, {
|
|
138
|
+
readonly type: "bytes";
|
|
139
|
+
readonly name: "bridgeCallData";
|
|
140
|
+
}];
|
|
141
|
+
readonly outputs: readonly [];
|
|
142
|
+
}, {
|
|
143
|
+
readonly name: "bridge";
|
|
144
|
+
readonly type: "function";
|
|
145
|
+
readonly stateMutability: "payable";
|
|
146
|
+
readonly inputs: readonly [{
|
|
147
|
+
readonly type: "bytes32";
|
|
148
|
+
readonly name: "quoteId";
|
|
149
|
+
}, {
|
|
150
|
+
readonly type: "tuple";
|
|
151
|
+
readonly components: readonly [{
|
|
152
|
+
readonly type: "address";
|
|
153
|
+
readonly name: "user";
|
|
154
|
+
}, {
|
|
155
|
+
readonly type: "address";
|
|
156
|
+
readonly name: "inputToken";
|
|
157
|
+
}, {
|
|
158
|
+
readonly type: "uint256";
|
|
159
|
+
readonly name: "inputAmount";
|
|
160
|
+
}];
|
|
161
|
+
readonly name: "input";
|
|
162
|
+
}, {
|
|
163
|
+
readonly type: "tuple";
|
|
164
|
+
readonly components: readonly [{
|
|
165
|
+
readonly type: "address";
|
|
166
|
+
readonly name: "receiver";
|
|
167
|
+
}, {
|
|
168
|
+
readonly type: "uint256";
|
|
169
|
+
readonly name: "amount";
|
|
170
|
+
}];
|
|
171
|
+
readonly name: "fee";
|
|
172
|
+
}, {
|
|
173
|
+
readonly type: "tuple";
|
|
174
|
+
readonly components: readonly [{
|
|
175
|
+
readonly type: "address";
|
|
176
|
+
readonly name: "target";
|
|
177
|
+
}, {
|
|
178
|
+
readonly type: "address";
|
|
179
|
+
readonly name: "approvalSpender";
|
|
180
|
+
}, {
|
|
181
|
+
readonly type: "uint256";
|
|
182
|
+
readonly name: "value";
|
|
183
|
+
}];
|
|
184
|
+
readonly name: "bridgeData";
|
|
185
|
+
}, {
|
|
186
|
+
readonly type: "bytes";
|
|
187
|
+
readonly name: "bridgeCallData";
|
|
188
|
+
}];
|
|
189
|
+
readonly outputs: readonly [];
|
|
190
|
+
}, {
|
|
191
|
+
readonly name: "performActions";
|
|
192
|
+
readonly type: "function";
|
|
193
|
+
readonly stateMutability: "payable";
|
|
194
|
+
readonly inputs: readonly [{
|
|
195
|
+
readonly type: "bytes32";
|
|
196
|
+
readonly name: "quoteId";
|
|
197
|
+
}, {
|
|
198
|
+
readonly type: "tuple[]";
|
|
199
|
+
readonly components: readonly [{
|
|
200
|
+
readonly type: "uint256";
|
|
201
|
+
readonly name: "actionInfo";
|
|
202
|
+
}, {
|
|
203
|
+
readonly type: "bytes";
|
|
204
|
+
readonly name: "data";
|
|
205
|
+
}, {
|
|
206
|
+
readonly type: "uint256[]";
|
|
207
|
+
readonly name: "splices";
|
|
208
|
+
}];
|
|
209
|
+
readonly name: "actions";
|
|
210
|
+
}];
|
|
211
|
+
readonly outputs: readonly [];
|
|
212
|
+
}];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.openRouterAbi = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
exports.openRouterAbi = (0, viem_1.parseAbi)([
|
|
6
|
+
'function swap(bytes32 quoteId, uint256 flags, (address user, address inputToken, uint256 inputAmount) input, (address receiver, uint256 amount) fee, (address target, address approvalSpender, address outputToken, uint256 value, uint256 minOutput, uint256 returnDataWordOffset) swapData, bytes swapCallData, address recipient) payable returns (uint256)',
|
|
7
|
+
'function swapAndBridge(bytes32 quoteId, uint256 flags, (address user, address inputToken, uint256 inputAmount) input, (address receiver, uint256 amount) fee, (address target, address approvalSpender, address outputToken, uint256 value, uint256 minOutput, uint256 returnDataWordOffset) swapData, bytes swapCallData, (address bridgeTarget, address bridgeApprovalSpender, uint256 bridgeValue) bridgeData, bytes bridgeCallData) payable',
|
|
8
|
+
'function bridge(bytes32 quoteId, (address user, address inputToken, uint256 inputAmount) input, (address receiver, uint256 amount) fee, (address target, address approvalSpender, uint256 value) bridgeData, bytes bridgeCallData) payable',
|
|
9
|
+
'function performActions(bytes32 quoteId, (uint256 actionInfo, bytes data, uint256[] splices)[] actions) payable',
|
|
10
|
+
]);
|
|
11
|
+
//# sourceMappingURL=viemAbiOpenRouter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viemAbiOpenRouter.js","sourceRoot":"","sources":["../../../src/contracts/abis/viemAbiOpenRouter.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAanB,QAAA,aAAa,GAAG,IAAA,eAAQ,EAAC;IAKpC,gWAAgW;IAChW,ibAAib;IACjb,4OAA4O;IAC5O,iHAAiH;CAClH,CAAC,CAAC"}
|
|
@@ -43,28 +43,21 @@ class BungeeDepositResult {
|
|
|
43
43
|
constructor(params) {
|
|
44
44
|
const { req, res, aggregatorHelper, finalToken } = params;
|
|
45
45
|
this.req = req;
|
|
46
|
-
this.rawResult = res.
|
|
46
|
+
this.rawResult = res.routes ?? [];
|
|
47
47
|
this.aggregatorHelper = aggregatorHelper;
|
|
48
48
|
this.inputToken = res.input.token;
|
|
49
49
|
this.finalToken = finalToken;
|
|
50
50
|
this.routes = this.rawResult.map((route) => ({
|
|
51
51
|
id: route.quoteId,
|
|
52
52
|
inputTokenAmount: createTokenAmountFromBungee(res.input.token, res.input.amount, res.input.priceInUsd),
|
|
53
|
-
outputTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.
|
|
53
|
+
outputTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.amount, route.output.priceInUsd),
|
|
54
54
|
minOutputTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.minAmountOut, route.output.priceInUsd).slipDown(constants_1.BUNGEE_MIN_OUTPUT_BUFFER),
|
|
55
55
|
steps: [
|
|
56
56
|
{
|
|
57
57
|
fromTokenAmount: createTokenAmountFromBungee(res.input.token, res.input.amount, res.input.priceInUsd),
|
|
58
58
|
toTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.amount, route.output.priceInUsd),
|
|
59
59
|
executionDuration: route.estimatedTime + constants_1.BOROS_PROCESSING_s,
|
|
60
|
-
feeCosts:
|
|
61
|
-
? [
|
|
62
|
-
{
|
|
63
|
-
name: 'Bridge Fee',
|
|
64
|
-
amountUSD: route.routeDetails.routeFee.feeInUsd,
|
|
65
|
-
},
|
|
66
|
-
]
|
|
67
|
-
: [],
|
|
60
|
+
feeCosts: [],
|
|
68
61
|
gasCosts: route.gasFee == null
|
|
69
62
|
? []
|
|
70
63
|
: [
|
|
@@ -74,9 +67,11 @@ class BungeeDepositResult {
|
|
|
74
67
|
},
|
|
75
68
|
],
|
|
76
69
|
tool: {
|
|
77
|
-
key: route.routeDetails.
|
|
78
|
-
|
|
79
|
-
|
|
70
|
+
key: ((route.routeDetails.bridgeDetails ?? route.routeDetails.dexDetails)?.protocol.displayName ?? 'Bungee')
|
|
71
|
+
.toLowerCase()
|
|
72
|
+
.replace(/\s+/g, '-'),
|
|
73
|
+
name: (route.routeDetails.bridgeDetails ?? route.routeDetails.dexDetails)?.protocol.displayName ?? 'Bungee',
|
|
74
|
+
logoURI: (route.routeDetails.bridgeDetails ?? route.routeDetails.dexDetails)?.protocol.icon || constants_1.BUNGEE_LOGO_URI,
|
|
80
75
|
},
|
|
81
76
|
},
|
|
82
77
|
],
|
|
@@ -90,24 +85,30 @@ class BungeeDepositResult {
|
|
|
90
85
|
if (route == null) {
|
|
91
86
|
throw new Error(`Route not found: ${routeId}`);
|
|
92
87
|
}
|
|
93
|
-
if (route.txData == null) {
|
|
88
|
+
if (route.txData?.object == null) {
|
|
94
89
|
throw new Error(`Route has no tx data: ${routeId}`);
|
|
95
90
|
}
|
|
96
|
-
(0, validation_1.validateBungeeTxTarget)(route.txData.to);
|
|
97
|
-
if (route.
|
|
98
|
-
(0, validation_1.validateBungeeApprovalSpender)(route.
|
|
91
|
+
(0, validation_1.validateBungeeTxTarget)(route.txData.object.to);
|
|
92
|
+
if (route.approval?.spenderAddress) {
|
|
93
|
+
(0, validation_1.validateBungeeApprovalSpender)(route.approval.spenderAddress);
|
|
99
94
|
}
|
|
100
|
-
(0, validation_1.validateBungeeCalldata)(route.txData.data,
|
|
101
|
-
|
|
95
|
+
(0, validation_1.validateBungeeCalldata)(route.txData.object.data, {
|
|
96
|
+
to: route.txData.object.to,
|
|
97
|
+
user: this.req.userAddress,
|
|
98
|
+
inputToken: this.req.inputToken,
|
|
99
|
+
inputAmount: BigInt(this.req.inputAmount),
|
|
100
|
+
receiver: this.req.receiverAddress,
|
|
101
|
+
quotedMinOutput: BigInt(route.output.minAmountOut),
|
|
102
|
+
});
|
|
102
103
|
return {
|
|
103
104
|
transferData: {
|
|
104
105
|
aggregatorName: AggregatorHelper_1.AggregatorName.BUNGEE,
|
|
105
|
-
approvalAddress: route.
|
|
106
|
-
calldata: route.txData.data,
|
|
107
|
-
value: BigInt(route.txData.value),
|
|
106
|
+
approvalAddress: route.approval?.spenderAddress ?? viem_1.zeroAddress,
|
|
107
|
+
calldata: route.txData.object.data,
|
|
108
|
+
value: BigInt(route.txData.object.value),
|
|
108
109
|
from: this.req.userAddress,
|
|
109
|
-
to: route.txData.to,
|
|
110
|
-
chainId: route.txData.chainId,
|
|
110
|
+
to: route.txData.object.to,
|
|
111
|
+
chainId: route.txData.object.chainId,
|
|
111
112
|
},
|
|
112
113
|
swapData: {
|
|
113
114
|
tokenSpent: this.finalToken,
|
|
@@ -128,26 +129,19 @@ class BungeeWithdrawResult {
|
|
|
128
129
|
constructor(params) {
|
|
129
130
|
const { req, res, aggregatorHelper } = params;
|
|
130
131
|
this.req = req;
|
|
131
|
-
this.rawResult = res.
|
|
132
|
+
this.rawResult = res.routes ?? [];
|
|
132
133
|
this.aggregatorHelper = aggregatorHelper;
|
|
133
134
|
this.routes = this.rawResult.map((route) => ({
|
|
134
135
|
id: route.quoteId,
|
|
135
136
|
inputTokenAmount: createTokenAmountFromBungee(res.input.token, res.input.amount, res.input.priceInUsd),
|
|
136
|
-
outputTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.
|
|
137
|
+
outputTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.amount, route.output.priceInUsd),
|
|
137
138
|
minOutputTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.minAmountOut, route.output.priceInUsd),
|
|
138
139
|
steps: [
|
|
139
140
|
{
|
|
140
141
|
fromTokenAmount: createTokenAmountFromBungee(res.input.token, res.input.amount, res.input.priceInUsd),
|
|
141
142
|
toTokenAmount: createTokenAmountFromBungee(route.output.token, route.output.amount, route.output.priceInUsd),
|
|
142
143
|
executionDuration: route.estimatedTime,
|
|
143
|
-
feeCosts:
|
|
144
|
-
? [
|
|
145
|
-
{
|
|
146
|
-
name: 'Bridge Fee',
|
|
147
|
-
amountUSD: route.routeDetails.routeFee.feeInUsd,
|
|
148
|
-
},
|
|
149
|
-
]
|
|
150
|
-
: [],
|
|
144
|
+
feeCosts: [],
|
|
151
145
|
gasCosts: route.gasFee == null
|
|
152
146
|
? []
|
|
153
147
|
: [
|
|
@@ -157,9 +151,11 @@ class BungeeWithdrawResult {
|
|
|
157
151
|
},
|
|
158
152
|
],
|
|
159
153
|
tool: {
|
|
160
|
-
key: route.routeDetails.
|
|
161
|
-
|
|
162
|
-
|
|
154
|
+
key: ((route.routeDetails.bridgeDetails ?? route.routeDetails.dexDetails)?.protocol.displayName ?? 'Bungee')
|
|
155
|
+
.toLowerCase()
|
|
156
|
+
.replace(/\s+/g, '-'),
|
|
157
|
+
name: (route.routeDetails.bridgeDetails ?? route.routeDetails.dexDetails)?.protocol.displayName ?? 'Bungee',
|
|
158
|
+
logoURI: (route.routeDetails.bridgeDetails ?? route.routeDetails.dexDetails)?.protocol.icon || constants_1.BUNGEE_LOGO_URI,
|
|
163
159
|
},
|
|
164
160
|
},
|
|
165
161
|
],
|
|
@@ -173,18 +169,18 @@ class BungeeWithdrawResult {
|
|
|
173
169
|
if (route == null) {
|
|
174
170
|
throw new Error(`Route not found: ${routeId}`);
|
|
175
171
|
}
|
|
176
|
-
if (route.txData == null) {
|
|
172
|
+
if (route.txData?.object == null) {
|
|
177
173
|
throw new Error(`Route has no tx data: ${routeId}`);
|
|
178
174
|
}
|
|
179
175
|
return {
|
|
180
176
|
transferData: {
|
|
181
177
|
aggregatorName: AggregatorHelper_1.AggregatorName.BUNGEE,
|
|
182
|
-
approvalAddress: route.
|
|
183
|
-
calldata: route.txData.data,
|
|
184
|
-
value: BigInt(route.txData.value),
|
|
178
|
+
approvalAddress: route.approval?.spenderAddress ?? viem_1.zeroAddress,
|
|
179
|
+
calldata: route.txData.object.data,
|
|
180
|
+
value: BigInt(route.txData.object.value),
|
|
185
181
|
from: this.req.userAddress,
|
|
186
|
-
to: route.txData.to,
|
|
187
|
-
chainId: route.txData.chainId,
|
|
182
|
+
to: route.txData.object.to,
|
|
183
|
+
chainId: route.txData.object.chainId,
|
|
188
184
|
},
|
|
189
185
|
};
|
|
190
186
|
};
|
|
@@ -206,6 +202,7 @@ class BungeeAggregatorHelper {
|
|
|
206
202
|
return wrapQuoteDeposit(params, async (resolved) => {
|
|
207
203
|
const { box } = await this.depositBoxFactoryContract.computeDepositBox(params.fromAddress, params.boxId);
|
|
208
204
|
const callParams = {
|
|
205
|
+
userOps: 'tx',
|
|
209
206
|
originChainId: params.fromChainId,
|
|
210
207
|
destinationChainId: resolved.toChainId,
|
|
211
208
|
inputToken: (0, address_1.toBungeeAddress)(params.fromToken),
|
|
@@ -213,14 +210,11 @@ class BungeeAggregatorHelper {
|
|
|
213
210
|
inputAmount: params.fromAmount.toString(),
|
|
214
211
|
userAddress: params.fromAddress,
|
|
215
212
|
receiverAddress: box,
|
|
216
|
-
enableManual: false,
|
|
217
|
-
enableMultipleAutoRoutes: true,
|
|
218
|
-
useInbox: true,
|
|
219
213
|
slippage: params.slippage * 100,
|
|
220
214
|
};
|
|
221
215
|
(0, utils_1.ensureDepositBoxAddress)(callParams.userAddress, params.boxId, callParams.receiverAddress);
|
|
222
216
|
try {
|
|
223
|
-
const { data } = await this.axios.get(`${this.apiUrl}/
|
|
217
|
+
const { data } = await this.axios.get(`${this.apiUrl}/v3/swap/quote`, {
|
|
224
218
|
params: callParams,
|
|
225
219
|
});
|
|
226
220
|
if (data.result == null) {
|
|
@@ -240,6 +234,7 @@ class BungeeAggregatorHelper {
|
|
|
240
234
|
}
|
|
241
235
|
async quoteWithdraw(params) {
|
|
242
236
|
const callParams = {
|
|
237
|
+
userOps: 'tx',
|
|
243
238
|
originChainId: chains_1.arbitrum.id,
|
|
244
239
|
destinationChainId: params.toChainId,
|
|
245
240
|
inputToken: (0, address_1.toBungeeAddress)(params.fromToken),
|
|
@@ -247,13 +242,10 @@ class BungeeAggregatorHelper {
|
|
|
247
242
|
inputAmount: params.fromAmount.toString(),
|
|
248
243
|
userAddress: params.fromAddress,
|
|
249
244
|
receiverAddress: params.fromAddress,
|
|
250
|
-
enableManual: false,
|
|
251
|
-
enableMultipleAutoRoutes: true,
|
|
252
|
-
useInbox: true,
|
|
253
245
|
slippage: params.slippage * 100,
|
|
254
246
|
};
|
|
255
247
|
try {
|
|
256
|
-
const { data } = await this.axios.get(`${this.apiUrl}/
|
|
248
|
+
const { data } = await this.axios.get(`${this.apiUrl}/v3/swap/quote`, {
|
|
257
249
|
params: callParams,
|
|
258
250
|
});
|
|
259
251
|
if (data.result == null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/crossChainDeposit/aggregators/Bungee/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/crossChainDeposit/aggregators/Bungee/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export type BungeeToken = {
|
|
|
10
10
|
icon?: string;
|
|
11
11
|
};
|
|
12
12
|
export type BungeeQuoteRequest = {
|
|
13
|
+
userOps: 'tx';
|
|
13
14
|
userAddress: Address;
|
|
14
15
|
originChainId: number;
|
|
15
16
|
destinationChainId: number;
|
|
@@ -19,42 +20,63 @@ export type BungeeQuoteRequest = {
|
|
|
19
20
|
outputToken: Address;
|
|
20
21
|
slippage?: number;
|
|
21
22
|
refuel?: boolean;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
excludeBridges?: string[];
|
|
25
|
-
useInbox?: boolean;
|
|
23
|
+
includeProvider?: string;
|
|
24
|
+
excludeProvider?: string;
|
|
26
25
|
};
|
|
27
26
|
export type BungeeTxData = {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
kind: string;
|
|
28
|
+
object: {
|
|
29
|
+
chainId: number;
|
|
30
|
+
to: Address;
|
|
31
|
+
data: Hex;
|
|
32
|
+
value: string;
|
|
33
|
+
};
|
|
33
34
|
};
|
|
34
|
-
export type
|
|
35
|
+
export type BungeeProtocolDetails = {
|
|
36
|
+
protocol: {
|
|
37
|
+
name: string;
|
|
38
|
+
displayName: string;
|
|
39
|
+
icon?: string;
|
|
40
|
+
};
|
|
41
|
+
inputTokenAddress?: Address;
|
|
42
|
+
outputTokenAddress?: Address;
|
|
43
|
+
amountIn?: string;
|
|
44
|
+
amountOut?: string;
|
|
45
|
+
minAmountOut?: string;
|
|
46
|
+
slippage?: number;
|
|
47
|
+
};
|
|
48
|
+
export type BungeeRoute = {
|
|
49
|
+
quoteId: string;
|
|
35
50
|
userOp: string;
|
|
36
|
-
|
|
51
|
+
expiresAt: number;
|
|
52
|
+
estimatedTime: number;
|
|
53
|
+
slippage: number;
|
|
54
|
+
suggestedSlippage: number;
|
|
55
|
+
routeTags: ('MAX_OUTPUT' | 'SUGGESTED' | 'FASTEST')[];
|
|
37
56
|
output: {
|
|
38
57
|
token: BungeeToken;
|
|
39
58
|
amount: string;
|
|
40
|
-
|
|
59
|
+
minAmountOut: string;
|
|
41
60
|
priceInUsd: number;
|
|
42
61
|
valueInUsd: number;
|
|
43
|
-
minAmountOut: string;
|
|
44
|
-
effectiveReceivedInUsd: number;
|
|
45
62
|
};
|
|
46
|
-
|
|
47
|
-
|
|
63
|
+
routeDetails: {
|
|
64
|
+
dexDetails: BungeeProtocolDetails | null;
|
|
65
|
+
bridgeDetails: BungeeProtocolDetails | null;
|
|
66
|
+
feeDetails?: {
|
|
67
|
+
feeTakerAddress?: Address;
|
|
68
|
+
feeBps?: number;
|
|
69
|
+
feeAmount?: string;
|
|
70
|
+
isFeeInInputToken?: boolean;
|
|
71
|
+
feeToken?: BungeeToken;
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
approval?: {
|
|
48
75
|
spenderAddress: Address;
|
|
49
76
|
amount: string;
|
|
50
77
|
tokenAddress: Address;
|
|
51
78
|
userAddress: Address;
|
|
52
79
|
};
|
|
53
|
-
affiliateFee?: {
|
|
54
|
-
token: BungeeToken;
|
|
55
|
-
amount: string;
|
|
56
|
-
feeTakerAddress: Address;
|
|
57
|
-
};
|
|
58
80
|
gasFee?: {
|
|
59
81
|
gasToken: BungeeToken;
|
|
60
82
|
gasLimit: string;
|
|
@@ -62,22 +84,7 @@ export type BungeeAutoRoute = {
|
|
|
62
84
|
estimatedFee: string;
|
|
63
85
|
feeInUsd: number;
|
|
64
86
|
};
|
|
65
|
-
slippage: number;
|
|
66
87
|
txData?: BungeeTxData;
|
|
67
|
-
estimatedTime: number;
|
|
68
|
-
routeDetails: {
|
|
69
|
-
name: string;
|
|
70
|
-
logoURI: string;
|
|
71
|
-
routeFee: {
|
|
72
|
-
token: BungeeToken;
|
|
73
|
-
amount: string;
|
|
74
|
-
feeInUsd: number;
|
|
75
|
-
priceInUsd: number;
|
|
76
|
-
} | null;
|
|
77
|
-
};
|
|
78
|
-
quoteId: string;
|
|
79
|
-
quoteExpiry: number;
|
|
80
|
-
routeTags: ('MAX_OUTPUT' | 'SUGGESTED' | 'FASTEST')[];
|
|
81
88
|
};
|
|
82
89
|
export type BungeeQuoteResponse = {
|
|
83
90
|
success: boolean;
|
|
@@ -93,9 +100,8 @@ export type BungeeQuoteResponse = {
|
|
|
93
100
|
priceInUsd: number;
|
|
94
101
|
valueInUsd: number;
|
|
95
102
|
};
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
autoRoutes?: BungeeAutoRoute[];
|
|
103
|
+
routes?: BungeeRoute[];
|
|
104
|
+
message?: string | null;
|
|
99
105
|
};
|
|
100
106
|
message?: string;
|
|
101
107
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/entities/crossChainDeposit/aggregators/Bungee/types.ts"],"names":[],"mappings":";;;AACa,QAAA,mBAAmB,GAC9B,0HAA0H,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/entities/crossChainDeposit/aggregators/Bungee/types.ts"],"names":[],"mappings":";;;AACa,QAAA,mBAAmB,GAC9B,0HAA0H,CAAC;AAuJ7H,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,8CAAuB,CAAA;IACvB,wCAAiB,CAAA;AACnB,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B"}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import { type Address, type Hex } from 'viem';
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const ALLOWANCE_HOLDER_ADDRESS: Address;
|
|
3
|
+
export declare const OPEN_ROUTER_ADDRESS: Address;
|
|
3
4
|
export declare function validateBungeeTxTarget(to: Address): void;
|
|
4
5
|
export declare function validateBungeeApprovalSpender(spender: Address): void;
|
|
5
|
-
export
|
|
6
|
+
export type BungeeCalldataExpectation = {
|
|
7
|
+
to: Address;
|
|
8
|
+
user: Address;
|
|
9
|
+
inputToken: Address;
|
|
10
|
+
inputAmount: bigint;
|
|
11
|
+
receiver: Address;
|
|
12
|
+
quotedMinOutput: bigint;
|
|
13
|
+
};
|
|
14
|
+
export declare function validateBungeeCalldata(calldata: Hex, expected: BungeeCalldataExpectation): void;
|
|
@@ -1,49 +1,94 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.OPEN_ROUTER_ADDRESS = exports.ALLOWANCE_HOLDER_ADDRESS = void 0;
|
|
4
4
|
exports.validateBungeeTxTarget = validateBungeeTxTarget;
|
|
5
5
|
exports.validateBungeeApprovalSpender = validateBungeeApprovalSpender;
|
|
6
6
|
exports.validateBungeeCalldata = validateBungeeCalldata;
|
|
7
7
|
const viem_1 = require("viem");
|
|
8
|
-
const
|
|
9
|
-
|
|
8
|
+
const viemAbiAllowanceHolder_1 = require("../../../../contracts/abis/viemAbiAllowanceHolder");
|
|
9
|
+
const viemAbiOpenRouter_1 = require("../../../../contracts/abis/viemAbiOpenRouter");
|
|
10
|
+
exports.ALLOWANCE_HOLDER_ADDRESS = '0x50c4E75a512F2A14A7b304787Adf79C4531A5909';
|
|
11
|
+
exports.OPEN_ROUTER_ADDRESS = '0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a';
|
|
12
|
+
const NATIVE_SENTINEL = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
|
|
13
|
+
function isNative(token) {
|
|
14
|
+
return (0, viem_1.isAddressEqual)(token, viem_1.zeroAddress) || (0, viem_1.isAddressEqual)(token, NATIVE_SENTINEL);
|
|
15
|
+
}
|
|
16
|
+
function tokenEquals(a, b) {
|
|
17
|
+
return (isNative(a) && isNative(b)) || (0, viem_1.isAddressEqual)(a, b);
|
|
18
|
+
}
|
|
10
19
|
function validateBungeeTxTarget(to) {
|
|
11
|
-
if (!(0, viem_1.isAddressEqual)(to, exports.
|
|
12
|
-
throw new Error(`Bungee validation failed: txData.to (${to})
|
|
20
|
+
if (!(0, viem_1.isAddressEqual)(to, exports.ALLOWANCE_HOLDER_ADDRESS) && !(0, viem_1.isAddressEqual)(to, exports.OPEN_ROUTER_ADDRESS)) {
|
|
21
|
+
throw new Error(`Bungee validation failed: txData.to (${to}) is neither AllowanceHolder (${exports.ALLOWANCE_HOLDER_ADDRESS}) nor OpenRouter (${exports.OPEN_ROUTER_ADDRESS})`);
|
|
13
22
|
}
|
|
14
23
|
}
|
|
15
24
|
function validateBungeeApprovalSpender(spender) {
|
|
16
|
-
if (!(0, viem_1.isAddressEqual)(spender, exports.
|
|
17
|
-
throw new Error(`Bungee validation failed: approval spender (${spender}) does not match
|
|
25
|
+
if (!(0, viem_1.isAddressEqual)(spender, exports.ALLOWANCE_HOLDER_ADDRESS)) {
|
|
26
|
+
throw new Error(`Bungee validation failed: approval spender (${spender}) does not match AllowanceHolder (${exports.ALLOWANCE_HOLDER_ADDRESS})`);
|
|
18
27
|
}
|
|
19
28
|
}
|
|
20
|
-
function
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return {
|
|
31
|
-
receiver: basicReq.receiver,
|
|
32
|
-
destinationChainId: basicReq.destinationChainId,
|
|
33
|
-
minOutputAmount: basicReq.minOutputAmount,
|
|
34
|
-
};
|
|
29
|
+
function assertInputMatches(input, expected) {
|
|
30
|
+
if (!(0, viem_1.isAddressEqual)(input.user, expected.user)) {
|
|
31
|
+
throw new Error(`Bungee validation failed: input.user (${input.user}) does not match expected (${expected.user})`);
|
|
32
|
+
}
|
|
33
|
+
if (!tokenEquals(input.inputToken, expected.inputToken)) {
|
|
34
|
+
throw new Error(`Bungee validation failed: input.inputToken (${input.inputToken}) does not match expected (${expected.inputToken})`);
|
|
35
|
+
}
|
|
36
|
+
if (input.inputAmount !== expected.inputAmount) {
|
|
37
|
+
throw new Error(`Bungee validation failed: input.inputAmount (${input.inputAmount}) does not match expected (${expected.inputAmount})`);
|
|
38
|
+
}
|
|
35
39
|
}
|
|
36
|
-
function validateBungeeCalldata(calldata,
|
|
37
|
-
|
|
38
|
-
if (
|
|
39
|
-
|
|
40
|
+
function validateBungeeCalldata(calldata, expected) {
|
|
41
|
+
let innerData;
|
|
42
|
+
if ((0, viem_1.isAddressEqual)(expected.to, exports.ALLOWANCE_HOLDER_ADDRESS)) {
|
|
43
|
+
const exec = (0, viem_1.decodeFunctionData)({ abi: viemAbiAllowanceHolder_1.allowanceHolderAbi, data: calldata });
|
|
44
|
+
if (exec.functionName !== 'exec') {
|
|
45
|
+
throw new Error(`Bungee validation failed: expected AllowanceHolder.exec, got "${exec.functionName}"`);
|
|
46
|
+
}
|
|
47
|
+
const [operator, token, amount, target, data] = exec.args;
|
|
48
|
+
if (!(0, viem_1.isAddressEqual)(operator, exports.OPEN_ROUTER_ADDRESS)) {
|
|
49
|
+
throw new Error(`Bungee validation failed: exec.operator (${operator}) is not OpenRouter (${exports.OPEN_ROUTER_ADDRESS})`);
|
|
50
|
+
}
|
|
51
|
+
if (!(0, viem_1.isAddressEqual)(target, exports.OPEN_ROUTER_ADDRESS)) {
|
|
52
|
+
throw new Error(`Bungee validation failed: exec.target (${target}) is not OpenRouter (${exports.OPEN_ROUTER_ADDRESS})`);
|
|
53
|
+
}
|
|
54
|
+
if (!tokenEquals(token, expected.inputToken)) {
|
|
55
|
+
throw new Error(`Bungee validation failed: exec.token (${token}) does not match input token (${expected.inputToken})`);
|
|
56
|
+
}
|
|
57
|
+
if (amount !== expected.inputAmount) {
|
|
58
|
+
throw new Error(`Bungee validation failed: exec.amount (${amount}) does not match input amount (${expected.inputAmount})`);
|
|
59
|
+
}
|
|
60
|
+
innerData = data;
|
|
61
|
+
}
|
|
62
|
+
else if ((0, viem_1.isAddressEqual)(expected.to, exports.OPEN_ROUTER_ADDRESS)) {
|
|
63
|
+
innerData = calldata;
|
|
40
64
|
}
|
|
41
|
-
|
|
42
|
-
throw new Error(`Bungee validation failed:
|
|
65
|
+
else {
|
|
66
|
+
throw new Error(`Bungee validation failed: txData.to (${expected.to}) is not an allowlisted Socket contract`);
|
|
43
67
|
}
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
68
|
+
const inner = (0, viem_1.decodeFunctionData)({ abi: viemAbiOpenRouter_1.openRouterAbi, data: innerData });
|
|
69
|
+
switch (inner.functionName) {
|
|
70
|
+
case 'swap': {
|
|
71
|
+
assertInputMatches(inner.args[2], expected);
|
|
72
|
+
const swapData = inner.args[4];
|
|
73
|
+
const receiver = inner.args[6];
|
|
74
|
+
if (!(0, viem_1.isAddressEqual)(receiver, expected.receiver)) {
|
|
75
|
+
throw new Error(`Bungee validation failed: swap.receiver (${receiver}) does not match deposit box (${expected.receiver})`);
|
|
76
|
+
}
|
|
77
|
+
if (swapData.minOutput < expected.quotedMinOutput) {
|
|
78
|
+
throw new Error(`Bungee validation failed: swap.minOutput (${swapData.minOutput}) is below quoted minOutput (${expected.quotedMinOutput})`);
|
|
79
|
+
}
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
case 'bridge': {
|
|
83
|
+
assertInputMatches(inner.args[1], expected);
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
case 'swapAndBridge': {
|
|
87
|
+
assertInputMatches(inner.args[2], expected);
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
default:
|
|
91
|
+
throw new Error(`Bungee validation failed: OpenRouter entrypoint "${inner.functionName}" is not allowlisted for deposits`);
|
|
47
92
|
}
|
|
48
93
|
}
|
|
49
94
|
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../src/entities/crossChainDeposit/aggregators/Bungee/validation.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../src/entities/crossChainDeposit/aggregators/Bungee/validation.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED