@eulerxyz/euler-v2-sdk 0.2.7-beta → 0.2.9-beta
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/src/entities/Account.d.ts +10 -2
- package/dist/src/entities/Account.d.ts.map +1 -1
- package/dist/src/entities/Account.js +15 -2
- package/dist/src/entities/Account.js.map +1 -1
- package/dist/src/entities/EVault.d.ts +3 -1
- package/dist/src/entities/EVault.d.ts.map +1 -1
- package/dist/src/entities/EVault.js +28 -2
- package/dist/src/entities/EVault.js.map +1 -1
- package/dist/src/entities/Portfolio.d.ts +143 -18
- package/dist/src/entities/Portfolio.d.ts.map +1 -1
- package/dist/src/entities/Portfolio.js +240 -36
- package/dist/src/entities/Portfolio.js.map +1 -1
- package/dist/src/plugins/keyring/keyringPlugin.d.ts.map +1 -1
- package/dist/src/plugins/keyring/keyringPlugin.js +67 -17
- package/dist/src/plugins/keyring/keyringPlugin.js.map +1 -1
- package/dist/src/plugins/pyth/pythPlugin.d.ts +3 -1
- package/dist/src/plugins/pyth/pythPlugin.d.ts.map +1 -1
- package/dist/src/plugins/pyth/pythPlugin.js +101 -6
- package/dist/src/plugins/pyth/pythPlugin.js.map +1 -1
- package/dist/src/plugins/types.d.ts +38 -2
- package/dist/src/plugins/types.d.ts.map +1 -1
- package/dist/src/plugins/types.js.map +1 -1
- package/dist/src/sdk/buildSDK.d.ts.map +1 -1
- package/dist/src/sdk/buildSDK.js +3 -2
- package/dist/src/sdk/buildSDK.js.map +1 -1
- package/dist/src/sdk/sdk.d.ts +15 -4
- package/dist/src/sdk/sdk.d.ts.map +1 -1
- package/dist/src/sdk/sdk.js +40 -3
- package/dist/src/sdk/sdk.js.map +1 -1
- package/dist/src/services/accountService/accountService.d.ts +7 -1
- package/dist/src/services/accountService/accountService.d.ts.map +1 -1
- package/dist/src/services/accountService/accountService.js +55 -1
- package/dist/src/services/accountService/accountService.js.map +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js +2 -2
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js.map +1 -1
- package/dist/src/services/accountService/index.d.ts +1 -1
- package/dist/src/services/accountService/index.d.ts.map +1 -1
- package/dist/src/services/executionService/cowExecutor.d.ts +3 -0
- package/dist/src/services/executionService/cowExecutor.d.ts.map +1 -1
- package/dist/src/services/executionService/cowExecutor.js.map +1 -1
- package/dist/src/services/executionService/execute.d.ts +8 -0
- package/dist/src/services/executionService/execute.d.ts.map +1 -1
- package/dist/src/services/executionService/execute.js.map +1 -1
- package/dist/src/services/executionService/executionService.d.ts +69 -7
- package/dist/src/services/executionService/executionService.d.ts.map +1 -1
- package/dist/src/services/executionService/executionService.js +266 -122
- package/dist/src/services/executionService/executionService.js.map +1 -1
- package/dist/src/services/executionService/executionServiceTypes.d.ts +4 -0
- package/dist/src/services/executionService/executionServiceTypes.d.ts.map +1 -1
- package/dist/src/services/executionService/simulate.d.ts +29 -0
- package/dist/src/services/executionService/simulate.d.ts.map +1 -1
- package/dist/src/services/executionService/simulate.js +42 -5
- package/dist/src/services/executionService/simulate.js.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.d.ts +2 -1
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.d.ts.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js +2 -2
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.d.ts +2 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.d.ts.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js +11 -2
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.d.ts +4 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.d.ts.map +1 -1
- package/dist/src/services/rewardsService/index.d.ts +4 -1
- package/dist/src/services/rewardsService/index.d.ts.map +1 -1
- package/dist/src/services/rewardsService/index.js +2 -0
- package/dist/src/services/rewardsService/index.js.map +1 -1
- package/dist/src/services/rewardsService/rewardCampaignEligibility.d.ts +32 -0
- package/dist/src/services/rewardsService/rewardCampaignEligibility.d.ts.map +1 -0
- package/dist/src/services/rewardsService/rewardCampaignEligibility.js +21 -0
- package/dist/src/services/rewardsService/rewardCampaignEligibility.js.map +1 -0
- package/dist/src/services/rewardsService/rewardsService.d.ts +6 -0
- package/dist/src/services/rewardsService/rewardsService.d.ts.map +1 -1
- package/dist/src/services/rewardsService/rewardsService.js +20 -3
- package/dist/src/services/rewardsService/rewardsService.js.map +1 -1
- package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts +8 -5
- package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts.map +1 -1
- package/dist/src/services/rewardsService/rewardsServiceTypes.js +1 -1
- package/dist/src/services/rewardsService/rewardsServiceTypes.js.map +1 -1
- package/dist/src/services/rewardsService/vaultRewardInfo.d.ts +25 -0
- package/dist/src/services/rewardsService/vaultRewardInfo.d.ts.map +1 -0
- package/dist/src/services/rewardsService/vaultRewardInfo.js +39 -0
- package/dist/src/services/rewardsService/vaultRewardInfo.js.map +1 -0
- package/dist/src/services/swapService/swapService.d.ts +2 -1
- package/dist/src/services/swapService/swapService.d.ts.map +1 -1
- package/dist/src/services/swapService/swapService.js +19 -19
- package/dist/src/services/swapService/swapService.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js +13 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js +39 -2
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.d.ts +6 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/eVaultService.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/eVaultService.js +9 -1
- package/dist/src/services/vaults/eVaultService/eVaultService.js.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js +52 -17
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js.map +1 -1
- package/dist/src/utils/accountComputations.d.ts +45 -9
- package/dist/src/utils/accountComputations.d.ts.map +1 -1
- package/dist/src/utils/accountComputations.js +133 -81
- package/dist/src/utils/accountComputations.js.map +1 -1
- package/dist/src/utils/accountPositionClassification.d.ts.map +1 -1
- package/dist/src/utils/accountPositionClassification.js +12 -1
- package/dist/src/utils/accountPositionClassification.js.map +1 -1
- package/dist/src/utils/oracle.d.ts +70 -0
- package/dist/src/utils/oracle.d.ts.map +1 -1
- package/dist/src/utils/oracle.js +307 -0
- package/dist/src/utils/oracle.js.map +1 -1
- package/dist/src/utils/stateOverrides/approvalOverrides.d.ts +25 -8
- package/dist/src/utils/stateOverrides/approvalOverrides.d.ts.map +1 -1
- package/dist/src/utils/stateOverrides/approvalOverrides.js +76 -16
- package/dist/src/utils/stateOverrides/approvalOverrides.js.map +1 -1
- package/dist/src/utils/stateOverrides/balanceOverrides.d.ts +26 -7
- package/dist/src/utils/stateOverrides/balanceOverrides.d.ts.map +1 -1
- package/dist/src/utils/stateOverrides/balanceOverrides.js +72 -13
- package/dist/src/utils/stateOverrides/balanceOverrides.js.map +1 -1
- package/dist/src/utils/stateOverrides/getStateOverrides.d.ts +38 -0
- package/dist/src/utils/stateOverrides/getStateOverrides.d.ts.map +1 -1
- package/dist/src/utils/stateOverrides/getStateOverrides.js +14 -4
- package/dist/src/utils/stateOverrides/getStateOverrides.js.map +1 -1
- package/dist/src/utils/stateOverrides/index.d.ts +3 -2
- package/dist/src/utils/stateOverrides/index.d.ts.map +1 -1
- package/dist/src/utils/stateOverrides/index.js +2 -1
- package/dist/src/utils/stateOverrides/index.js.map +1 -1
- package/dist/src/utils/stateOverrides/slotHints.d.ts +78 -0
- package/dist/src/utils/stateOverrides/slotHints.d.ts.map +1 -0
- package/dist/src/utils/stateOverrides/slotHints.js +152 -0
- package/dist/src/utils/stateOverrides/slotHints.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountComputations.d.ts","sourceRoot":"","sources":["../../../src/utils/accountComputations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,OAAO,EAA8B,MAAM,MAAM,CAAC;AAChE,OAAO,KAAK,EACX,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,MAAM,wBAAwB,CAAC;AAQhC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAQpB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAOpB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAQpB;AAMD;;;GAGG;AACH,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAUpB;AAED,wBAAgB,2BAA2B,CAC1C,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,gBAAgB,EAAE,MAAM,GAAG,SAAS,GAClC,MAAM,GAAG,SAAS,CAMpB;AAED;;;GAGG;AACH,wBAAgB,wCAAwC,CACvD,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAEpB;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CACjD,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAEpB;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC3C,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACvC,MAAM,GAAG,SAAS,CAapB;AAMD;;;;GAIG;AACH,wBAAgB,kCAAkC,CACjD,SAAS,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,GAC5C,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAczB;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC5C,SAAS,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,GAC5C,MAAM,GAAG,SAAS,CAMpB;AAMD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC7B,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;IAChB,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IACjC,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CACnC,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"accountComputations.d.ts","sourceRoot":"","sources":["../../../src/utils/accountComputations.ts"],"names":[],"mappings":"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"}
|
|
@@ -136,59 +136,19 @@ export function computeBorrowLiquidationPrice(liquidity) {
|
|
|
136
136
|
* Requires populated vaults (for APY data) and market prices (for USD values).
|
|
137
137
|
* Returns `undefined` when prerequisites are missing or equity <= 0.
|
|
138
138
|
*/
|
|
139
|
-
export function computeSubAccountRoe(subAccount) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
let totalRewardYield = 0;
|
|
143
|
-
let totalIntrinsicYield = 0;
|
|
144
|
-
let totalSupplyUsd = 0;
|
|
145
|
-
let totalBorrowUsd = 0;
|
|
146
|
-
let hasData = false;
|
|
147
|
-
for (const p of subAccount.positions) {
|
|
148
|
-
const vault = p.vault;
|
|
149
|
-
if (!vault)
|
|
150
|
-
continue;
|
|
151
|
-
const intrinsicApyDecimal = getVaultIntrinsicApy(vault);
|
|
152
|
-
// Supply side
|
|
153
|
-
if (p.suppliedValueUsd != null && p.suppliedValueUsd > 0) {
|
|
154
|
-
const supplyUsd = p.suppliedValueUsd;
|
|
155
|
-
const supplyApy = getVaultSupplyApy(vault);
|
|
156
|
-
if (supplyApy != null) {
|
|
157
|
-
hasData = true;
|
|
158
|
-
totalSupplyUsd += supplyUsd;
|
|
159
|
-
totalLendingYield += supplyUsd * supplyApy;
|
|
160
|
-
totalRewardYield += supplyUsd * getVaultRewardApr(vault, "LEND");
|
|
161
|
-
totalIntrinsicYield += supplyUsd * intrinsicApyDecimal;
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
// Borrow side
|
|
165
|
-
if (p.borrowedValueUsd != null && p.borrowedValueUsd > 0) {
|
|
166
|
-
const borrowUsd = p.borrowedValueUsd;
|
|
167
|
-
const borrowApy = getVaultBorrowApy(vault);
|
|
168
|
-
if (borrowApy != null) {
|
|
169
|
-
hasData = true;
|
|
170
|
-
totalBorrowUsd += borrowUsd;
|
|
171
|
-
totalBorrowingYield += borrowUsd * borrowApy;
|
|
172
|
-
totalRewardYield += borrowUsd * getVaultRewardApr(vault, "BORROW");
|
|
173
|
-
totalIntrinsicYield -= borrowUsd * intrinsicApyDecimal;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
if (!hasData)
|
|
139
|
+
export function computeSubAccountRoe(subAccount, viewer) {
|
|
140
|
+
const totals = computePositionYieldTotals(subAccountYieldPositions(subAccount), viewer);
|
|
141
|
+
if (!totals)
|
|
178
142
|
return undefined;
|
|
179
|
-
|
|
180
|
-
if (equity <= 0)
|
|
143
|
+
if (totals.totalEquityUsd <= 0)
|
|
181
144
|
return undefined;
|
|
182
|
-
const
|
|
183
|
-
const borrowing = -totalBorrowingYield / equity;
|
|
184
|
-
const rewards = totalRewardYield / equity;
|
|
185
|
-
const intrinsicApy = totalIntrinsicYield / equity;
|
|
145
|
+
const breakdown = divideYieldTotals(totals, totals.totalEquityUsd);
|
|
186
146
|
return {
|
|
187
|
-
lending,
|
|
188
|
-
borrowing,
|
|
189
|
-
rewards,
|
|
190
|
-
intrinsicApy,
|
|
191
|
-
total:
|
|
147
|
+
lending: breakdown.lending,
|
|
148
|
+
borrowing: breakdown.borrowing,
|
|
149
|
+
rewards: breakdown.rewards,
|
|
150
|
+
intrinsicApy: breakdown.intrinsicApy,
|
|
151
|
+
total: breakdown.total,
|
|
192
152
|
};
|
|
193
153
|
}
|
|
194
154
|
// ---------------------------------------------------------------------------
|
|
@@ -200,8 +160,8 @@ export function computeSubAccountRoe(subAccount) {
|
|
|
200
160
|
* `totalNetYield / totalSupplyUsd`, where net yield includes supply APY,
|
|
201
161
|
* borrow costs, supply/borrow reward APRs, and intrinsic APY.
|
|
202
162
|
*/
|
|
203
|
-
export function computeAccountNetApy(account) {
|
|
204
|
-
const totals = computeAccountYieldTotals(account);
|
|
163
|
+
export function computeAccountNetApy(account, viewer) {
|
|
164
|
+
const totals = computeAccountYieldTotals(account, viewer);
|
|
205
165
|
if (!totals)
|
|
206
166
|
return undefined;
|
|
207
167
|
if (totals.totalSupplyUsd === 0)
|
|
@@ -212,8 +172,8 @@ export function computeAccountNetApy(account) {
|
|
|
212
172
|
* Net APY across a pre-filtered set of positions, relative to supplied value.
|
|
213
173
|
* Use this when a higher-level view intentionally excludes some account positions.
|
|
214
174
|
*/
|
|
215
|
-
export function computePositionsNetApy(positions) {
|
|
216
|
-
const totals = computePositionYieldTotals(positions);
|
|
175
|
+
export function computePositionsNetApy(positions, viewer) {
|
|
176
|
+
const totals = computePositionYieldTotals(positions, viewer);
|
|
217
177
|
if (!totals)
|
|
218
178
|
return undefined;
|
|
219
179
|
if (totals.totalSupplyUsd === 0)
|
|
@@ -225,8 +185,8 @@ export function computePositionsNetApy(positions) {
|
|
|
225
185
|
*
|
|
226
186
|
* `totalNetYield / (totalSupplyUsd - totalBorrowUsd)`.
|
|
227
187
|
*/
|
|
228
|
-
export function computeAccountRoe(account) {
|
|
229
|
-
const totals = computeAccountYieldTotals(account);
|
|
188
|
+
export function computeAccountRoe(account, viewer) {
|
|
189
|
+
const totals = computeAccountYieldTotals(account, viewer);
|
|
230
190
|
if (!totals)
|
|
231
191
|
return undefined;
|
|
232
192
|
if (totals.totalEquityUsd <= 0)
|
|
@@ -237,8 +197,8 @@ export function computeAccountRoe(account) {
|
|
|
237
197
|
* Return on equity across a pre-filtered set of positions, relative to net asset value.
|
|
238
198
|
* Use this when a higher-level view intentionally excludes some account positions.
|
|
239
199
|
*/
|
|
240
|
-
export function computePositionsRoe(positions) {
|
|
241
|
-
const totals = computePositionYieldTotals(positions);
|
|
200
|
+
export function computePositionsRoe(positions, viewer) {
|
|
201
|
+
const totals = computePositionYieldTotals(positions, viewer);
|
|
242
202
|
if (!totals)
|
|
243
203
|
return undefined;
|
|
244
204
|
if (totals.totalEquityUsd <= 0)
|
|
@@ -248,8 +208,8 @@ export function computePositionsRoe(positions) {
|
|
|
248
208
|
/**
|
|
249
209
|
* APY contribution breakdown across a pre-filtered set of positions, relative to supplied value.
|
|
250
210
|
*/
|
|
251
|
-
export function computePositionsNetApyBreakdown(positions) {
|
|
252
|
-
const totals = computePositionYieldTotals(positions);
|
|
211
|
+
export function computePositionsNetApyBreakdown(positions, viewer) {
|
|
212
|
+
const totals = computePositionYieldTotals(positions, viewer);
|
|
253
213
|
if (!totals)
|
|
254
214
|
return undefined;
|
|
255
215
|
if (totals.totalSupplyUsd === 0)
|
|
@@ -259,8 +219,8 @@ export function computePositionsNetApyBreakdown(positions) {
|
|
|
259
219
|
/**
|
|
260
220
|
* ROE contribution breakdown across a pre-filtered set of positions, relative to net asset value.
|
|
261
221
|
*/
|
|
262
|
-
export function computePositionsRoeBreakdown(positions) {
|
|
263
|
-
const totals = computePositionYieldTotals(positions);
|
|
222
|
+
export function computePositionsRoeBreakdown(positions, viewer) {
|
|
223
|
+
const totals = computePositionYieldTotals(positions, viewer);
|
|
264
224
|
if (!totals)
|
|
265
225
|
return undefined;
|
|
266
226
|
if (totals.totalEquityUsd <= 0)
|
|
@@ -271,12 +231,12 @@ export function computePositionsRoeBreakdown(positions) {
|
|
|
271
231
|
* APY breakdown for a single supplied vault position.
|
|
272
232
|
* Does not require USD values because a single supply-side APY is value-independent.
|
|
273
233
|
*/
|
|
274
|
-
export function computeSupplyApyBreakdown(vault) {
|
|
234
|
+
export function computeSupplyApyBreakdown(vault, viewer) {
|
|
275
235
|
if (!vault)
|
|
276
236
|
return undefined;
|
|
277
237
|
const lending = getVaultSupplyApy(vault) ?? 0;
|
|
278
238
|
const intrinsicApy = getIntrinsicApyContribution(lending, getVaultIntrinsicApy(vault));
|
|
279
|
-
const rewards = getVaultRewardApr(vault, "LEND");
|
|
239
|
+
const rewards = getVaultRewardApr(vault, "LEND", viewer);
|
|
280
240
|
return {
|
|
281
241
|
lending,
|
|
282
242
|
borrowing: 0,
|
|
@@ -316,14 +276,16 @@ export function getRoe(supplyUsd, supplyApy, borrowUsd, borrowApy, supplyRewardA
|
|
|
316
276
|
// ---------------------------------------------------------------------------
|
|
317
277
|
/**
|
|
318
278
|
* Maximum multiplier for a given borrow LTV.
|
|
319
|
-
* `1 / (1 -
|
|
279
|
+
* `1 / (1 - borrowLtv) - safetyMargin` where borrowLtv is decimal (0.85 = 85%).
|
|
280
|
+
* The safety margin is deducted from the multiplier itself (not from the LTV),
|
|
281
|
+
* so a 0.5% margin shaves ~0.005 off the result rather than dropping it sharply
|
|
282
|
+
* near high LTV.
|
|
320
283
|
* Floored to 2 decimal places, minimum 1.
|
|
321
284
|
*/
|
|
322
285
|
export function getMaxMultiplier(borrowLtv, safetyMargin = 0.005) {
|
|
323
|
-
|
|
324
|
-
if (effective >= 1)
|
|
286
|
+
if (borrowLtv <= 0 || borrowLtv >= 1)
|
|
325
287
|
return 1;
|
|
326
|
-
const raw = 1 / (1 -
|
|
288
|
+
const raw = 1 / (1 - borrowLtv) - safetyMargin;
|
|
327
289
|
return Math.max(1, Math.floor(raw * 100) / 100);
|
|
328
290
|
}
|
|
329
291
|
/**
|
|
@@ -366,17 +328,57 @@ function sumPositionUsd(positions, field) {
|
|
|
366
328
|
}
|
|
367
329
|
return total;
|
|
368
330
|
}
|
|
369
|
-
function computeAccountYieldTotals(account) {
|
|
331
|
+
function computeAccountYieldTotals(account, viewer) {
|
|
370
332
|
function* positions() {
|
|
371
333
|
for (const subAccount of Object.values(account.subAccounts ?? {})) {
|
|
372
334
|
if (!subAccount)
|
|
373
335
|
continue;
|
|
374
|
-
yield* subAccount
|
|
336
|
+
yield* subAccountYieldPositions(subAccount);
|
|
375
337
|
}
|
|
376
338
|
}
|
|
377
|
-
return computePositionYieldTotals(positions());
|
|
339
|
+
return computePositionYieldTotals(positions(), viewer);
|
|
378
340
|
}
|
|
379
|
-
|
|
341
|
+
/**
|
|
342
|
+
* Lifts a sub-account's positions into `AccountYieldPosition` entries with
|
|
343
|
+
* borrow-side context populated. For each borrow position, the collaterals
|
|
344
|
+
* backing it (via `findCollateralPositionsForBorrow`) are recorded so the
|
|
345
|
+
* yield computation can pick up `BORROW_COLLATERAL` and `LOOPING` rewards.
|
|
346
|
+
*/
|
|
347
|
+
function subAccountYieldPositions(subAccount) {
|
|
348
|
+
const out = [];
|
|
349
|
+
for (const p of subAccount.positions) {
|
|
350
|
+
if (p.borrowedValueUsd != null && p.borrowedValueUsd > 0) {
|
|
351
|
+
const collaterals = findCollateralPositionsForBorrow(subAccount, p);
|
|
352
|
+
const suppliedSum = sumPositionUsd(collaterals, "suppliedValueUsd");
|
|
353
|
+
const multiplier = computeCollateralMultiplier(suppliedSum, p.borrowedValueUsd);
|
|
354
|
+
const equityUsd = suppliedSum != null ? suppliedSum - p.borrowedValueUsd : undefined;
|
|
355
|
+
out.push({
|
|
356
|
+
vault: p.vault,
|
|
357
|
+
borrowedValueUsd: p.borrowedValueUsd,
|
|
358
|
+
borrowContext: {
|
|
359
|
+
collateralAddresses: collaterals.map((c) => getAddress(c.vaultAddress)),
|
|
360
|
+
multiplier,
|
|
361
|
+
equityUsd: equityUsd != null && equityUsd > 0 ? equityUsd : undefined,
|
|
362
|
+
},
|
|
363
|
+
});
|
|
364
|
+
// If the same vault also carries a supply leg (mixed position), emit
|
|
365
|
+
// it separately so supply rewards still accrue.
|
|
366
|
+
if (p.suppliedValueUsd != null && p.suppliedValueUsd > 0) {
|
|
367
|
+
out.push({
|
|
368
|
+
vault: p.vault,
|
|
369
|
+
suppliedValueUsd: p.suppliedValueUsd,
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
continue;
|
|
373
|
+
}
|
|
374
|
+
out.push({
|
|
375
|
+
vault: p.vault,
|
|
376
|
+
suppliedValueUsd: p.suppliedValueUsd,
|
|
377
|
+
});
|
|
378
|
+
}
|
|
379
|
+
return out;
|
|
380
|
+
}
|
|
381
|
+
function computePositionYieldTotals(positions, viewer) {
|
|
380
382
|
let totalNetYield = 0;
|
|
381
383
|
let totalLendingYield = 0;
|
|
382
384
|
let totalBorrowingYield = 0;
|
|
@@ -395,7 +397,7 @@ function computePositionYieldTotals(positions) {
|
|
|
395
397
|
const baseSupplyApy = getVaultSupplyApy(vault) ?? 0;
|
|
396
398
|
const intrinsicSupplyApy = getIntrinsicApyContribution(baseSupplyApy, getVaultIntrinsicApy(vault));
|
|
397
399
|
const supplyApy = baseSupplyApy + intrinsicSupplyApy;
|
|
398
|
-
const supplyRewardApy = getVaultRewardApr(vault, "LEND");
|
|
400
|
+
const supplyRewardApy = getVaultRewardApr(vault, "LEND", viewer);
|
|
399
401
|
totalNetYield += supplyUsd * (supplyApy + supplyRewardApy);
|
|
400
402
|
totalLendingYield += supplyUsd * baseSupplyApy;
|
|
401
403
|
totalRewardYield += supplyUsd * supplyRewardApy;
|
|
@@ -409,13 +411,32 @@ function computePositionYieldTotals(positions) {
|
|
|
409
411
|
const baseBorrowApy = getVaultBorrowApy(vault) ?? 0;
|
|
410
412
|
const intrinsicBorrowApy = getIntrinsicApyContribution(baseBorrowApy, getVaultIntrinsicApy(vault));
|
|
411
413
|
const borrowApy = baseBorrowApy + intrinsicBorrowApy;
|
|
412
|
-
|
|
414
|
+
let borrowRewardApy = getVaultRewardApr(vault, "BORROW", viewer);
|
|
415
|
+
const ctx = position.borrowContext;
|
|
416
|
+
if (ctx && ctx.collateralAddresses.length > 0) {
|
|
417
|
+
borrowRewardApy += getVaultRewardApr(vault, "BORROW_COLLATERAL", viewer, (c) => matchesCollateral(c, ctx.collateralAddresses));
|
|
418
|
+
}
|
|
413
419
|
totalNetYield -= borrowUsd * (borrowApy - borrowRewardApy);
|
|
414
420
|
totalBorrowingYield += borrowUsd * baseBorrowApy;
|
|
415
421
|
totalRewardYield += borrowUsd * borrowRewardApy;
|
|
416
422
|
totalIntrinsicYield -= borrowUsd * intrinsicBorrowApy;
|
|
417
423
|
totalBorrowUsd += borrowUsd;
|
|
418
424
|
hasUsdData = true;
|
|
425
|
+
// LOOPING rewards are paid per unit of equity (independent of
|
|
426
|
+
// leverage), so we add `equityUsd * loopingApr` to the reward
|
|
427
|
+
// totals when the position has a matching, eligible campaign.
|
|
428
|
+
if (ctx &&
|
|
429
|
+
ctx.collateralAddresses.length > 0 &&
|
|
430
|
+
ctx.multiplier != null &&
|
|
431
|
+
ctx.equityUsd != null &&
|
|
432
|
+
ctx.equityUsd > 0) {
|
|
433
|
+
const loopingApr = getVaultRewardApr(vault, "LOOPING", viewer, (c) => isLoopingEligible(c, ctx.collateralAddresses, ctx.multiplier));
|
|
434
|
+
if (loopingApr !== 0) {
|
|
435
|
+
const loopingYield = ctx.equityUsd * loopingApr;
|
|
436
|
+
totalNetYield += loopingYield;
|
|
437
|
+
totalRewardYield += loopingYield;
|
|
438
|
+
}
|
|
439
|
+
}
|
|
419
440
|
}
|
|
420
441
|
}
|
|
421
442
|
if (!hasUsdData)
|
|
@@ -487,16 +508,47 @@ function getVaultIntrinsicApy(vault) {
|
|
|
487
508
|
function getIntrinsicApyContribution(baseApy, intrinsicApy) {
|
|
488
509
|
return (1 + baseApy / 100) * intrinsicApy;
|
|
489
510
|
}
|
|
490
|
-
/**
|
|
491
|
-
|
|
492
|
-
|
|
511
|
+
/**
|
|
512
|
+
* Sum reward APRs (percentage points) for a given action from vault campaigns
|
|
513
|
+
* eligible to the supplied viewer.
|
|
514
|
+
*
|
|
515
|
+
* Uses `vault.rewards.getActiveCampaigns(viewer)` so whitelist/blacklist
|
|
516
|
+
* filtering is applied consistently with the rest of the SDK. An optional
|
|
517
|
+
* predicate further narrows the campaigns — used to gate
|
|
518
|
+
* `BORROW_COLLATERAL` on collateral match and `LOOPING` on multiplier range.
|
|
519
|
+
*/
|
|
520
|
+
function getVaultRewardApr(vault, action, viewer, predicate) {
|
|
521
|
+
if (!vault.rewards?.getActiveCampaigns)
|
|
493
522
|
return 0;
|
|
494
523
|
let total = 0;
|
|
495
|
-
for (const c of vault.rewards.
|
|
496
|
-
if (c.action
|
|
497
|
-
|
|
498
|
-
|
|
524
|
+
for (const c of vault.rewards.getActiveCampaigns({ viewer })) {
|
|
525
|
+
if (c.action !== action)
|
|
526
|
+
continue;
|
|
527
|
+
if (typeof c.apr !== "number")
|
|
528
|
+
continue;
|
|
529
|
+
if (predicate && !predicate(c))
|
|
530
|
+
continue;
|
|
531
|
+
total += c.apr * 100;
|
|
499
532
|
}
|
|
500
533
|
return total;
|
|
501
534
|
}
|
|
535
|
+
/** Predicate for `BORROW_COLLATERAL` campaigns: collateral address must match. */
|
|
536
|
+
function matchesCollateral(campaign, collateralAddresses) {
|
|
537
|
+
if (!campaign.collateralAddress)
|
|
538
|
+
return false;
|
|
539
|
+
return collateralAddresses.some((address) => isAddressEqual(address, campaign.collateralAddress));
|
|
540
|
+
}
|
|
541
|
+
/**
|
|
542
|
+
* Predicate for `LOOPING` campaigns: collateral match AND multiplier within
|
|
543
|
+
* the campaign's `[minMultiplier, maxMultiplier]` envelope (open ends count).
|
|
544
|
+
*/
|
|
545
|
+
function isLoopingEligible(campaign, collateralAddresses, multiplier) {
|
|
546
|
+
if (!matchesCollateral(campaign, collateralAddresses))
|
|
547
|
+
return false;
|
|
548
|
+
if (campaign.minMultiplier != null && multiplier < campaign.minMultiplier)
|
|
549
|
+
return false;
|
|
550
|
+
if (campaign.maxMultiplier != null && multiplier > campaign.maxMultiplier)
|
|
551
|
+
return false;
|
|
552
|
+
return true;
|
|
553
|
+
}
|
|
502
554
|
//# sourceMappingURL=accountComputations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountComputations.js","sourceRoot":"","sources":["../../../src/utils/accountComputations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"accountComputations.js","sourceRoot":"","sources":["../../../src/utils/accountComputations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountPositionClassification.d.ts","sourceRoot":"","sources":["../../../src/utils/accountPositionClassification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAA8B,MAAM,MAAM,CAAC;AAChE,OAAO,KAAK,EACX,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,qBAAqB,CAChC,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,IACrD,CAAC,QAAQ,EAAE,eAAe,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC;AAEzD;;;;;;;;GAQG;AACH,wBAAgB,gCAAgC,CAC/C,YAAY,SAAS,gBAAgB,EAErC,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,EACpC,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,EACrC,cAAc,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,GAClD,eAAe,CAAC,YAAY,CAAC,EAAE,CAWjC;AAED,wBAAgB,6BAA6B,CAC5C,YAAY,SAAS,gBAAgB,EAErC,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,EACpC,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,GACnC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"accountPositionClassification.d.ts","sourceRoot":"","sources":["../../../src/utils/accountPositionClassification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAA8B,MAAM,MAAM,CAAC;AAChE,OAAO,KAAK,EACX,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,qBAAqB,CAChC,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,IACrD,CAAC,QAAQ,EAAE,eAAe,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC;AAEzD;;;;;;;;GAQG;AACH,wBAAgB,gCAAgC,CAC/C,YAAY,SAAS,gBAAgB,EAErC,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,EACpC,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,EACrC,cAAc,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,GAClD,eAAe,CAAC,YAAY,CAAC,EAAE,CAWjC;AAED,wBAAgB,6BAA6B,CAC5C,YAAY,SAAS,gBAAgB,EAErC,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,EACpC,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,GACnC,OAAO,EAAE,CAiBX"}
|
|
@@ -19,7 +19,18 @@ export function resolveBorrowCollateralPositions(subAccount, borrow, positionFil
|
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
export function resolveBorrowCollateralVaults(subAccount, borrow) {
|
|
22
|
-
const liquidityCollaterals = borrow.liquidity?.collaterals
|
|
22
|
+
const liquidityCollaterals = borrow.liquidity?.collaterals
|
|
23
|
+
.map((collateral, index) => ({
|
|
24
|
+
address: getAddress(collateral.address),
|
|
25
|
+
index,
|
|
26
|
+
value: collateral.value.oracleMid,
|
|
27
|
+
}))
|
|
28
|
+
.sort((left, right) => {
|
|
29
|
+
if (left.value === right.value)
|
|
30
|
+
return left.index - right.index;
|
|
31
|
+
return left.value > right.value ? -1 : 1;
|
|
32
|
+
})
|
|
33
|
+
.map(({ address }) => address) ?? [];
|
|
23
34
|
return liquidityCollaterals.length > 0
|
|
24
35
|
? liquidityCollaterals
|
|
25
36
|
: subAccount.enabledCollaterals.map((collateral) => getAddress(collateral));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountPositionClassification.js","sourceRoot":"","sources":["../../../src/utils/accountPositionClassification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAWhE;;;;;;;;GAQG;AACH,MAAM,UAAU,gCAAgC,CAG/C,UAAoC,EACpC,MAAqC,EACrC,cAAoD;IAEpD,OAAO,6BAA6B,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,OAAO,CAC/D,CAAC,iBAAiB,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACzD,cAAc,CAAC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC,CACxD,CAAC;QACF,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QAC3B,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;YAAE,OAAO,EAAE,CAAC;QAC7D,OAAO,CAAC,UAAU,CAAC,CAAC;IACrB,CAAC,CACD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAG5C,UAAoC,EACpC,MAAqC;IAErC,MAAM,oBAAoB,GACzB,MAAM,CAAC,SAAS,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"accountPositionClassification.js","sourceRoot":"","sources":["../../../src/utils/accountPositionClassification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAWhE;;;;;;;;GAQG;AACH,MAAM,UAAU,gCAAgC,CAG/C,UAAoC,EACpC,MAAqC,EACrC,cAAoD;IAEpD,OAAO,6BAA6B,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,OAAO,CAC/D,CAAC,iBAAiB,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACzD,cAAc,CAAC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC,CACxD,CAAC;QACF,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QAC3B,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;YAAE,OAAO,EAAE,CAAC;QAC7D,OAAO,CAAC,UAAU,CAAC,CAAC;IACrB,CAAC,CACD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAG5C,UAAoC,EACpC,MAAqC;IAErC,MAAM,oBAAoB,GACzB,MAAM,CAAC,SAAS,EAAE,WAAW;SAC3B,GAAG,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5B,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC;QACvC,KAAK;QACL,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS;KACjC,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACrB,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAChE,OAAO,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAEvC,OAAO,oBAAoB,CAAC,MAAM,GAAG,CAAC;QACrC,CAAC,CAAC,oBAAoB;QACtB,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -2,8 +2,10 @@ import { type Address, type Hex } from "viem";
|
|
|
2
2
|
export type OracleInfo = {
|
|
3
3
|
oracle: Address;
|
|
4
4
|
name: string;
|
|
5
|
+
detailedInfo?: OracleDetailedInfo;
|
|
5
6
|
adapters: OracleAdapterEntry[];
|
|
6
7
|
resolvedVaults: OracleResolvedVault[];
|
|
8
|
+
routes: OracleRoute[];
|
|
7
9
|
};
|
|
8
10
|
export type OracleDetailedInfo = {
|
|
9
11
|
oracle: Address;
|
|
@@ -60,6 +62,55 @@ export type OracleAdapterEntry = {
|
|
|
60
62
|
oracle: Address;
|
|
61
63
|
};
|
|
62
64
|
};
|
|
65
|
+
/** A leaf oracle contract call in an effective price route. */
|
|
66
|
+
export type OracleRouteAdapterStep = {
|
|
67
|
+
kind: "adapter";
|
|
68
|
+
oracle: Address;
|
|
69
|
+
name: string;
|
|
70
|
+
base: Address;
|
|
71
|
+
quote: Address;
|
|
72
|
+
adapter: OracleAdapterEntry;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* An ERC4626-style vault/share unwrapping hop in an effective price route.
|
|
76
|
+
*
|
|
77
|
+
* This is not a PriceOracle adapter. Consumers can still display and quote it
|
|
78
|
+
* like the other route steps by calling `convertToAssets` on `vault`.
|
|
79
|
+
*/
|
|
80
|
+
export type OracleRouteVaultStep = {
|
|
81
|
+
kind: "vault";
|
|
82
|
+
oracle: Address;
|
|
83
|
+
name: "ERC4626Vault";
|
|
84
|
+
base: Address;
|
|
85
|
+
quote: Address;
|
|
86
|
+
vault: Address;
|
|
87
|
+
asset: Address;
|
|
88
|
+
};
|
|
89
|
+
export type OracleRouteStep = OracleRouteAdapterStep | OracleRouteVaultStep;
|
|
90
|
+
/**
|
|
91
|
+
* Where a route came from while resolving the root oracle info.
|
|
92
|
+
*
|
|
93
|
+
* configured: an explicit EulerRouter `base -> quote` entry.
|
|
94
|
+
* fallback: the EulerRouter fallback oracle handled the requested pair.
|
|
95
|
+
* direct: the root oracle info itself handled the requested pair.
|
|
96
|
+
*/
|
|
97
|
+
export type OracleRouteSource = "configured" | "fallback" | "direct";
|
|
98
|
+
/**
|
|
99
|
+
* Effective ordered oracle route for one `base -> quote` pair.
|
|
100
|
+
*
|
|
101
|
+
* `steps` is the primary consumer surface: walk it in order to display or
|
|
102
|
+
* quote the complete route. `adapters` and `resolvedVaults` are projections of
|
|
103
|
+
* `steps` for compatibility with callers that only understand leaf adapters or
|
|
104
|
+
* resolved vault metadata.
|
|
105
|
+
*/
|
|
106
|
+
export type OracleRoute = {
|
|
107
|
+
base: Address;
|
|
108
|
+
quote: Address;
|
|
109
|
+
steps: OracleRouteStep[];
|
|
110
|
+
adapters: OracleAdapterEntry[];
|
|
111
|
+
resolvedVaults: OracleResolvedVault[];
|
|
112
|
+
source: OracleRouteSource;
|
|
113
|
+
};
|
|
63
114
|
/**
|
|
64
115
|
* A vault-address price route configured on EulerRouter.
|
|
65
116
|
*
|
|
@@ -91,9 +142,28 @@ export declare const decodeEulerRouterInfo: (oracleInfo: Hex | string | Uint8Arr
|
|
|
91
142
|
export declare const decodeCrossAdapterInfo: (oracleInfo: Hex | string | Uint8Array) => CrossAdapterInfo | null;
|
|
92
143
|
export declare const decodePythOracleInfo: (oracleInfo: Hex | string | Uint8Array) => PythOracleInfo | null;
|
|
93
144
|
export declare const collectPythFeedIds: (oracleInfo: OracleDetailedInfo | null | undefined, maxDepth?: number) => PythFeed[];
|
|
145
|
+
export declare const selectOracleRouteForPair: (routes: OracleRoute[] | undefined, base: Address, quote: Address) => OracleRoute | undefined;
|
|
146
|
+
export declare const decodeOracleRouteForPair: (oracleInfo: OracleDetailedInfo | null | undefined, base: Address, quote: Address, maxDepth?: number) => OracleRoute | undefined;
|
|
147
|
+
export declare const decodeOracleRoutes: (oracleInfo: OracleDetailedInfo | null | undefined, maxDepth?: number) => OracleRoute[];
|
|
94
148
|
export declare const decodeOracleInfo: (oracleInfo: OracleDetailedInfo | null | undefined, maxDepth?: number, options?: OracleAdapterOptions) => OracleAdapterEntry[];
|
|
95
149
|
export declare const decodeOracleResolvedVaults: (oracleInfo: OracleDetailedInfo | null | undefined, maxDepth?: number) => OracleResolvedVault[];
|
|
96
150
|
export declare const collectChainlinkOracles: (oracleInfo: OracleDetailedInfo | null | undefined, maxDepth?: number) => Address[];
|
|
151
|
+
/**
|
|
152
|
+
* Walk an OracleDetailedInfo tree for the active price path of (base, quote)
|
|
153
|
+
* and collect only the Pyth feed IDs actually used to price that pair.
|
|
154
|
+
*
|
|
155
|
+
* Unlike collectPythFeedIds (which returns every Pyth feed anywhere in the
|
|
156
|
+
* tree) this avoids pulling Hermes updates for fallback routes that aren't
|
|
157
|
+
* exercised during a given operation.
|
|
158
|
+
*/
|
|
159
|
+
export declare const collectPythFeedIdsForPair: (oracleInfo: OracleDetailedInfo | null | undefined, base: Address, quote: Address, maxDepth?: number) => PythFeed[];
|
|
160
|
+
/**
|
|
161
|
+
* Route-aware Pyth feed selection over already-decoded OracleAdapterEntry[].
|
|
162
|
+
* Uses selectResolvedVaultAdaptersForPair / selectLeafAdaptersForPair to pick
|
|
163
|
+
* only the adapters on the active (base, quote) route, then extracts Pyth
|
|
164
|
+
* feeds from that subset.
|
|
165
|
+
*/
|
|
166
|
+
export declare const collectPythFeedsForPair: (adapters: OracleAdapterEntry[], resolvedVaults: OracleResolvedVault[] | undefined, base: Address, quote: Address) => PythFeed[];
|
|
97
167
|
/**
|
|
98
168
|
* Extract unique PythFeed entries from already-decoded oracle adapters.
|
|
99
169
|
* Use this instead of collectPythFeedIds when you have OracleAdapterEntry[] (e.g. from vault.oracle.adapters).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../../src/utils/oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,OAAO,EACZ,KAAK,GAAG,EAGR,MAAM,MAAM,CAAC;AAEd,MAAM,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,cAAc,EAAE,mBAAmB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../../src/utils/oracle.ts"],"names":[],"mappings":"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"}
|