@1delta/margin-fetcher 0.0.1 → 0.0.2
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/abis/aave-v3/YLDR.d.ts +36 -0
- package/dist/abis/aave-v3/YLDR.d.ts.map +1 -0
- package/dist/abis/aave-v3/YLDR.js +46 -0
- package/dist/assets/index.d.ts.map +1 -1
- package/dist/assets/index.js +1 -1
- package/dist/lending/aave-v3-type/types.d.ts +7 -0
- package/dist/lending/aave-v3-type/types.d.ts.map +1 -1
- package/dist/lending/aave-v3-type/types.js +8 -0
- package/dist/lending/addresses/compoundV3.d.ts.map +1 -1
- package/dist/lending/addresses/compoundV3.js +1 -1
- package/dist/lending/compound-v3/publicCallParse.js +1 -1
- package/dist/lending/init/publicCallParse.js +1 -1
- package/dist/lending/user-data/aave-v2-type/userCallParse.js +3 -2
- package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts.map +1 -1
- package/dist/lending/user-data/aave-v3-type/userCallBuild.js +11 -8
- package/dist/lending/user-data/aave-v3-type/userCallParse.js +4 -3
- package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts +9 -0
- package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts.map +1 -0
- package/dist/lending/user-data/aave-v3-type/userCallParseYldr.js +75 -0
- package/dist/lending/user-data/abis.d.ts +667 -0
- package/dist/lending/user-data/abis.d.ts.map +1 -1
- package/dist/lending/user-data/abis.js +7 -1
- package/dist/lending/user-data/compound-v3/addresses.d.ts.map +1 -1
- package/dist/lending/user-data/compound-v3/addresses.js +1 -1
- package/dist/lending/user-data/compound-v3/userCallParse.d.ts.map +1 -1
- package/dist/lending/user-data/compound-v3/userCallParse.js +7 -5
- package/dist/lending/user-data/fetchUserData.d.ts.map +1 -1
- package/dist/lending/user-data/fetchUserData.js +5 -3
- package/dist/prices/main-prices/addresses/aaveOracles.d.ts +6 -7
- package/dist/prices/main-prices/addresses/aaveOracles.d.ts.map +1 -1
- package/dist/prices/main-prices/addresses/aaveOracles.js +6 -7
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/parsing.d.ts.map +1 -1
- package/dist/utils/parsing.js +1 -1
- package/package.json +5 -2
- package/src/abis/aave-v3/YLDR.ts +46 -0
- package/src/assets/index.ts +1 -1
- package/src/lending/aave-v3-type/types.ts +8 -0
- package/src/lending/addresses/compoundV3.ts +1 -1
- package/src/lending/compound-v3/publicCallParse.ts +1 -1
- package/src/lending/init/publicCallParse.ts +1 -1
- package/src/lending/user-data/aave-v2-type/userCallParse.ts +9 -7
- package/src/lending/user-data/aave-v3-type/userCallBuild.ts +13 -8
- package/src/lending/user-data/aave-v3-type/userCallParse.ts +5 -3
- package/src/lending/user-data/aave-v3-type/userCallParseYldr.ts +116 -0
- package/src/lending/user-data/abis.ts +33 -28
- package/src/lending/user-data/compound-v3/addresses.ts +1 -1
- package/src/lending/user-data/compound-v3/userCallParse.ts +7 -5
- package/src/lending/user-data/fetchUserData.ts +4 -2
- package/src/prices/main-prices/addresses/aaveOracles.ts +6 -7
- package/src/utils/index.ts +5 -3
- package/src/utils/parsing.ts +1 -1
- package/test/lenderData.test.ts +1 -1
- package/test/userdata.test.ts +21 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare const YLDRAbi: readonly [{
|
|
2
|
+
readonly inputs: readonly [{
|
|
3
|
+
readonly internalType: "address";
|
|
4
|
+
readonly name: "asset";
|
|
5
|
+
readonly type: "address";
|
|
6
|
+
}, {
|
|
7
|
+
readonly internalType: "address";
|
|
8
|
+
readonly name: "user";
|
|
9
|
+
readonly type: "address";
|
|
10
|
+
}];
|
|
11
|
+
readonly name: "getUserReserveData";
|
|
12
|
+
readonly outputs: readonly [{
|
|
13
|
+
readonly internalType: "uint256";
|
|
14
|
+
readonly name: "currentYTokenBalance";
|
|
15
|
+
readonly type: "uint256";
|
|
16
|
+
}, {
|
|
17
|
+
readonly internalType: "uint256";
|
|
18
|
+
readonly name: "currentVariableDebt";
|
|
19
|
+
readonly type: "uint256";
|
|
20
|
+
}, {
|
|
21
|
+
readonly internalType: "uint256";
|
|
22
|
+
readonly name: "scaledVariableDebt";
|
|
23
|
+
readonly type: "uint256";
|
|
24
|
+
}, {
|
|
25
|
+
readonly internalType: "uint256";
|
|
26
|
+
readonly name: "liquidityRate";
|
|
27
|
+
readonly type: "uint256";
|
|
28
|
+
}, {
|
|
29
|
+
readonly internalType: "bool";
|
|
30
|
+
readonly name: "usageAsCollateralEnabled";
|
|
31
|
+
readonly type: "bool";
|
|
32
|
+
}];
|
|
33
|
+
readonly stateMutability: "view";
|
|
34
|
+
readonly type: "function";
|
|
35
|
+
}];
|
|
36
|
+
//# sourceMappingURL=YLDR.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YLDR.d.ts","sourceRoot":"","sources":["../../../src/abis/aave-v3/YLDR.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6CV,CAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export const YLDRAbi = [
|
|
2
|
+
{
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"internalType": "address",
|
|
6
|
+
"name": "asset",
|
|
7
|
+
"type": "address"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"internalType": "address",
|
|
11
|
+
"name": "user",
|
|
12
|
+
"type": "address"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"name": "getUserReserveData",
|
|
16
|
+
"outputs": [
|
|
17
|
+
{
|
|
18
|
+
"internalType": "uint256",
|
|
19
|
+
"name": "currentYTokenBalance",
|
|
20
|
+
"type": "uint256"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"internalType": "uint256",
|
|
24
|
+
"name": "currentVariableDebt",
|
|
25
|
+
"type": "uint256"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"internalType": "uint256",
|
|
29
|
+
"name": "scaledVariableDebt",
|
|
30
|
+
"type": "uint256"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"internalType": "uint256",
|
|
34
|
+
"name": "liquidityRate",
|
|
35
|
+
"type": "uint256"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"internalType": "bool",
|
|
39
|
+
"name": "usageAsCollateralEnabled",
|
|
40
|
+
"type": "bool"
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"stateMutability": "view",
|
|
44
|
+
"type": "function"
|
|
45
|
+
}
|
|
46
|
+
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6K,MAAM,EAA2B,MAAM,wBAAwB,CAAA;AAGnP,gCAAgC;AAChC,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAGpC,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GACzB,GAAG,CACrD;AAGD,eAAO,MAAM,aAAa,GACtB,SAAS,MAAM,GAAG,SAAS,EAC3B,kBAAiB,MAAuB,KACzC,MAAM,EAGR,CAAA;AAED,eAAO,MAAM,aAAa,GACtB,SAAS,MAAM,GAAG,SAAS,EAC3B,wBAA6B,KAC9B,MAAM,EAGR,CAAA;AAED,eAAO,MAAM,mBAAmB,GAC5B,SAAS,MAAM,GAAG,SAAS,EAC3B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6K,MAAM,EAA2B,MAAM,wBAAwB,CAAA;AAGnP,gCAAgC;AAChC,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAGpC,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GACzB,GAAG,CACrD;AAGD,eAAO,MAAM,aAAa,GACtB,SAAS,MAAM,GAAG,SAAS,EAC3B,kBAAiB,MAAuB,KACzC,MAAM,EAGR,CAAA;AAED,eAAO,MAAM,aAAa,GACtB,SAAS,MAAM,GAAG,SAAS,EAC3B,wBAA6B,KAC9B,MAAM,EAGR,CAAA;AAED,eAAO,MAAM,mBAAmB,GAC5B,SAAS,MAAM,GAAG,SAAS,EAC3B,wBAA0C,KAC3C,MAAM,EAGR,CAAA;AAED,eAAO,MAAM,mBAAmB,GAC5B,SAAS,MAAM,GAAG,SAAS,EAC3B,wBAA8B,KAC/B,MAAM,EAGR,CAAA;AAGD,eAAO,MAAM,iBAAiB,GAC1B,SAAS,MAAM,GAAG,SAAS,EAC3B,wBAAsC,KACvC,MAAM,EAGR,CAAA;AAED,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,OAGjF;AAGD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG9E;AAGD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GACA,GAAG,CACzE;AAGD;;;;EAIE;AACF,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,WAEpC,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,cAAc,MAAM,EAAE,SAAS,MAAM,WAEtE,CAAA"}
|
package/dist/assets/index.js
CHANGED
|
@@ -15,7 +15,7 @@ export const getInitAssets = (chainId, lendingProtocol = Lender.INIT) => {
|
|
|
15
15
|
return INIT_STYLE_RESERVE_ASSETS[lendingProtocol]?.[chainId ?? "0"] ?? [];
|
|
16
16
|
return [];
|
|
17
17
|
};
|
|
18
|
-
export const getCompoundV3Assets = (chainId, lendingProtocol = Lender.
|
|
18
|
+
export const getCompoundV3Assets = (chainId, lendingProtocol = Lender.COMPOUND_V3_USDCE) => {
|
|
19
19
|
if (isCompoundV3(lendingProtocol))
|
|
20
20
|
return COMPOUND_STYLE_RESERVE_ASSETS[lendingProtocol]?.[chainId ?? "0"] ?? [];
|
|
21
21
|
return [];
|
|
@@ -125,6 +125,13 @@ export declare enum AaveTypeGetUserReserveIndexes {
|
|
|
125
125
|
stableRateLastUpdated = 7,
|
|
126
126
|
usageAsCollateralEnabled = 8
|
|
127
127
|
}
|
|
128
|
+
export declare enum YldrTypeGetUserReserveIndexes {
|
|
129
|
+
currentYTokenBalance = 0,
|
|
130
|
+
currentVariableDebt = 1,
|
|
131
|
+
scaledVariableDebt = 2,
|
|
132
|
+
liquidityRate = 3,
|
|
133
|
+
usageAsCollateralEnabled = 4
|
|
134
|
+
}
|
|
128
135
|
export declare enum YLDRTypeGetReserveDataIndexes {
|
|
129
136
|
accruedToTreasuryScaled = 0,
|
|
130
137
|
totalYToken = 1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lending/aave-v3-type/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lending/aave-v3-type/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -65,6 +65,14 @@ export var AaveTypeGetUserReserveIndexes;
|
|
|
65
65
|
AaveTypeGetUserReserveIndexes[AaveTypeGetUserReserveIndexes["stableRateLastUpdated"] = 7] = "stableRateLastUpdated";
|
|
66
66
|
AaveTypeGetUserReserveIndexes[AaveTypeGetUserReserveIndexes["usageAsCollateralEnabled"] = 8] = "usageAsCollateralEnabled";
|
|
67
67
|
})(AaveTypeGetUserReserveIndexes || (AaveTypeGetUserReserveIndexes = {}));
|
|
68
|
+
export var YldrTypeGetUserReserveIndexes;
|
|
69
|
+
(function (YldrTypeGetUserReserveIndexes) {
|
|
70
|
+
YldrTypeGetUserReserveIndexes[YldrTypeGetUserReserveIndexes["currentYTokenBalance"] = 0] = "currentYTokenBalance";
|
|
71
|
+
YldrTypeGetUserReserveIndexes[YldrTypeGetUserReserveIndexes["currentVariableDebt"] = 1] = "currentVariableDebt";
|
|
72
|
+
YldrTypeGetUserReserveIndexes[YldrTypeGetUserReserveIndexes["scaledVariableDebt"] = 2] = "scaledVariableDebt";
|
|
73
|
+
YldrTypeGetUserReserveIndexes[YldrTypeGetUserReserveIndexes["liquidityRate"] = 3] = "liquidityRate";
|
|
74
|
+
YldrTypeGetUserReserveIndexes[YldrTypeGetUserReserveIndexes["usageAsCollateralEnabled"] = 4] = "usageAsCollateralEnabled";
|
|
75
|
+
})(YldrTypeGetUserReserveIndexes || (YldrTypeGetUserReserveIndexes = {}));
|
|
68
76
|
export var YLDRTypeGetReserveDataIndexes;
|
|
69
77
|
(function (YLDRTypeGetReserveDataIndexes) {
|
|
70
78
|
YLDRTypeGetReserveDataIndexes[YLDRTypeGetReserveDataIndexes["accruedToTreasuryScaled"] = 0] = "accruedToTreasuryScaled";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compoundV3.d.ts","sourceRoot":"","sources":["../../../src/lending/addresses/compoundV3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,MAAM,EAAwB,MAAM,wBAAwB,CAAA;AAExH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"compoundV3.d.ts","sourceRoot":"","sources":["../../../src/lending/addresses/compoundV3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,MAAM,EAAwB,MAAM,wBAAwB,CAAA;AAExH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,SAA2B,GAAG,MAAM,GAAG,SAAS,CAEhH;AAED,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,MAAM,OAG/D;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,OAGhE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,OAGrD;AAmBD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM;;;EAE9E"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Chain, COMETS_PER_CHAIN_MAP, COMPOUND_BASE_TOKENS, Lender, SWAYLEND_BASE_TOKENS } from '@1delta/asset-registry';
|
|
2
|
-
export function getCompoundV3CometAddress(chainId, lender = Lender.
|
|
2
|
+
export function getCompoundV3CometAddress(chainId, lender = Lender.COMPOUND_V3_USDCE) {
|
|
3
3
|
return COMETS_PER_CHAIN_MAP[chainId]?.[lender];
|
|
4
4
|
}
|
|
5
5
|
export function getCompoundV3CometRewardsAddress(chainId) {
|
|
@@ -68,7 +68,7 @@ export const getCompoundV3ReservesDataConverter = (lender, chainId, prices, addi
|
|
|
68
68
|
const compToSuppliersPerDay = resultsSupplyRewards / Number(resultsIndexScale) * SECONDS_PER_DAY;
|
|
69
69
|
const compToBorrowersPerDay = resultsBorrowRewards / Number(resultsIndexScale) * SECONDS_PER_DAY;
|
|
70
70
|
const resultsInterest = data[baseLength + 5];
|
|
71
|
-
const oracleKeyBase = toOracleKey(baseMeta
|
|
71
|
+
const oracleKeyBase = toOracleKey(baseMeta?.assetGroup) ?? toGenericPriceKey(baseAssetData.baseAsset, chainId);
|
|
72
72
|
const price = prices[oracleKeyBase] ?? 1;
|
|
73
73
|
const liquidity = Number(resultsSupply) - Number(resultsBorrow);
|
|
74
74
|
const compPrice = prices["COMP"];
|
|
@@ -22,7 +22,7 @@ export const getInitReservesDataConverter = (lender, chainId, prices, additional
|
|
|
22
22
|
const meta = getAssetMeta(chainId, asset);
|
|
23
23
|
const totalDeposits = parseRawAmount(dat?.totalSupply.toString(), meta?.decimals);
|
|
24
24
|
const totalDebt = parseRawAmount(dat?.totalDebt.toString(), meta.decimals);
|
|
25
|
-
const oracleKey = toOracleKey(meta
|
|
25
|
+
const oracleKey = toOracleKey(meta?.assetGroup) ?? toGenericPriceKey(asset, chainId);
|
|
26
26
|
const price = prices[oracleKey];
|
|
27
27
|
const liquidity = Number(totalDeposits) - Number(totalDebt);
|
|
28
28
|
return {
|
|
@@ -197,8 +197,9 @@ function createAaveV2Entry(i, data, chainId, asset, prices, pricesHist, claimabl
|
|
|
197
197
|
const currentATokenBalance = parseRawAmount(currentATokenBalanceRaw, decimals);
|
|
198
198
|
const currentStableDebt = parseRawAmount(currentStableDebtRaw, decimals);
|
|
199
199
|
const currentVariableDebt = parseRawAmount(currentVariableDebtRaw, decimals);
|
|
200
|
-
const
|
|
201
|
-
const
|
|
200
|
+
const key = toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(asset, chainId);
|
|
201
|
+
const price = prices[key] ?? 1;
|
|
202
|
+
const priceHist = pricesHist?.[key] ?? price;
|
|
202
203
|
const dataForAsset = {
|
|
203
204
|
poolId: asset,
|
|
204
205
|
underlying: asset,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/aave-v3-type/userCallBuild.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAsC/C,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,EAAE,QAAQ,MAAM,EAAE,SAAS,MAAM,KAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"userCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/aave-v3-type/userCallBuild.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAsC/C,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,EAAE,QAAQ,MAAM,EAAE,SAAS,MAAM,KAAG,IAAI,EAuB1F,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getAaveAssets, getAaveStyleProtocolTokenMap, getAaveTypePoolDataProviderAddress, getAaveTypePoolAddress } from "../../../assets";
|
|
2
|
-
import { getComposerAddress } from "../../../utils";
|
|
2
|
+
import { getComposerAddress, isYLDR } from "../../../utils";
|
|
3
3
|
const fallbackDebtToken = '0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e';
|
|
4
4
|
const getBaseAaveV3Calls = (chainId, account, lender, assetsToQuery, aaveTokenMap) => {
|
|
5
5
|
const broker = getComposerAddress(chainId);
|
|
@@ -29,13 +29,16 @@ const getBaseAaveV3Calls = (chainId, account, lender, assetsToQuery, aaveTokenMa
|
|
|
29
29
|
export const buildAaveV3UserCall = (chainId, lender, account) => {
|
|
30
30
|
const assetsToQuery = getAaveAssets(chainId, lender);
|
|
31
31
|
const aaveTokenMap = getAaveStyleProtocolTokenMap(chainId, lender);
|
|
32
|
-
const
|
|
33
|
-
address: getAaveTypePoolAddress(chainId, lender),
|
|
34
|
-
name: 'getUserEMode',
|
|
35
|
-
params: [account],
|
|
36
|
-
};
|
|
37
|
-
return [
|
|
32
|
+
const calls = [
|
|
38
33
|
...getBaseAaveV3Calls(chainId, account, lender, assetsToQuery, aaveTokenMap),
|
|
39
|
-
callDataEmode
|
|
40
34
|
];
|
|
35
|
+
if (!isYLDR(lender)) {
|
|
36
|
+
const callDataEmode = {
|
|
37
|
+
address: getAaveTypePoolAddress(chainId, lender),
|
|
38
|
+
name: 'getUserEMode',
|
|
39
|
+
params: [account],
|
|
40
|
+
};
|
|
41
|
+
calls.push(callDataEmode);
|
|
42
|
+
}
|
|
43
|
+
return calls;
|
|
41
44
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getAaveAssets, getAssetMeta, toOracleKey } from "../../../assets";
|
|
1
|
+
import { getAaveAssets, getAssetMeta, toGenericPriceKey, toOracleKey } from "../../../assets";
|
|
2
2
|
import { createBaseTypeUserState } from "../utils";
|
|
3
3
|
import { AaveTypeGetUserReserveIndexes } from "../../aave-v3-type/types";
|
|
4
4
|
import { parseRawAmount } from "../../../utils/parsing";
|
|
@@ -47,9 +47,10 @@ function createAaveV3Entry(i, data, chainId, asset, prices, pricesHist) {
|
|
|
47
47
|
const currentATokenBalance = parseRawAmount(currentATokenBalanceRaw, decimals);
|
|
48
48
|
const currentStableDebt = parseRawAmount(currentStableDebtRaw, decimals);
|
|
49
49
|
const currentVariableDebt = parseRawAmount(currentVariableDebtRaw, decimals);
|
|
50
|
+
const key = toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(asset, chainId);
|
|
50
51
|
// prices
|
|
51
|
-
const price = prices[
|
|
52
|
-
const priceHist = pricesHist?.[
|
|
52
|
+
const price = prices[key] ?? 1;
|
|
53
|
+
const priceHist = pricesHist?.[key] ?? price;
|
|
53
54
|
const dataForAsset = {
|
|
54
55
|
poolId: asset,
|
|
55
56
|
underlying: asset,
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Lender } from "@1delta/asset-registry";
|
|
2
|
+
import { AaveV3UserReserveResponse } from "../types";
|
|
3
|
+
/** Like Aave V3, not stable debt data and no emode */
|
|
4
|
+
export declare const getYldrUserDataConverter: (lender: Lender, chainId: string, account: string, prices: {
|
|
5
|
+
[asset: string]: number;
|
|
6
|
+
}, pricesHist: {
|
|
7
|
+
[asset: string]: number;
|
|
8
|
+
}, lenderData: any) => [(data: any[]) => AaveV3UserReserveResponse | undefined, number];
|
|
9
|
+
//# sourceMappingURL=userCallParseYldr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userCallParseYldr.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/aave-v3-type/userCallParseYldr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAA;AAKpD,sDAAsD;AACtD,eAAO,MAAM,wBAAwB,GACnC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,yBAAyB,GAAG,SAAS,EAAE,MAAM,CAiDjE,CAAA"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { getAaveAssets, getAssetMeta, toGenericPriceKey, toOracleKey } from "../../../assets";
|
|
2
|
+
import { createBaseTypeUserState } from "../utils";
|
|
3
|
+
import { YldrTypeGetUserReserveIndexes } from "../../aave-v3-type/types";
|
|
4
|
+
import { parseRawAmount } from "../../../utils/parsing";
|
|
5
|
+
/** Like Aave V3, not stable debt data and no emode */
|
|
6
|
+
export const getYldrUserDataConverter = (lender, chainId, account, prices, pricesHist, lenderData) => {
|
|
7
|
+
const assetsToQuery = getAaveAssets(chainId, lender);
|
|
8
|
+
const expectedNumberOfCalls = assetsToQuery.length * 4;
|
|
9
|
+
return [
|
|
10
|
+
(data) => {
|
|
11
|
+
if (data.length !== expectedNumberOfCalls) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
const lendingPositions = {};
|
|
15
|
+
let totalDebt24h = 0;
|
|
16
|
+
let totalDeposits24h = 0;
|
|
17
|
+
for (let i = 0; i < assetsToQuery.length; i++) {
|
|
18
|
+
const asset = assetsToQuery[i];
|
|
19
|
+
const { dataForAsset, addedDebt, addedDeposits } = createAaveV3Entry(i, data, chainId, asset, prices, pricesHist);
|
|
20
|
+
totalDebt24h += addedDebt;
|
|
21
|
+
totalDeposits24h += addedDeposits;
|
|
22
|
+
lendingPositions[asset] = dataForAsset;
|
|
23
|
+
}
|
|
24
|
+
const payload = {
|
|
25
|
+
chainId,
|
|
26
|
+
account,
|
|
27
|
+
lendingPositions: { "0": lendingPositions },
|
|
28
|
+
rewards: {},
|
|
29
|
+
userEMode: 0,
|
|
30
|
+
};
|
|
31
|
+
const userData = createBaseTypeUserState(payload, lenderData, totalDeposits24h, totalDebt24h);
|
|
32
|
+
return {
|
|
33
|
+
...payload,
|
|
34
|
+
...userData
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
expectedNumberOfCalls,
|
|
38
|
+
];
|
|
39
|
+
};
|
|
40
|
+
function createAaveV3Entry(i, data, chainId, asset, prices, pricesHist) {
|
|
41
|
+
const reserveData = data[i * 4];
|
|
42
|
+
const currentATokenBalanceRaw = reserveData[YldrTypeGetUserReserveIndexes.currentYTokenBalance]?.toString();
|
|
43
|
+
const currentVariableDebtRaw = reserveData[YldrTypeGetUserReserveIndexes.currentVariableDebt]?.toString();
|
|
44
|
+
const assetMeta = getAssetMeta(chainId, asset);
|
|
45
|
+
const decimals = assetMeta?.decimals ?? 18;
|
|
46
|
+
const currentATokenBalance = parseRawAmount(currentATokenBalanceRaw, decimals);
|
|
47
|
+
const currentVariableDebt = parseRawAmount(currentVariableDebtRaw, decimals);
|
|
48
|
+
const key = toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(asset, chainId);
|
|
49
|
+
// prices
|
|
50
|
+
const price = prices[key] ?? 1;
|
|
51
|
+
const priceHist = pricesHist?.[key] ?? price;
|
|
52
|
+
const dataForAsset = {
|
|
53
|
+
poolId: asset,
|
|
54
|
+
underlying: asset,
|
|
55
|
+
deposits: currentATokenBalance,
|
|
56
|
+
depositsRaw: currentATokenBalanceRaw,
|
|
57
|
+
debtStable: "0",
|
|
58
|
+
debt: currentVariableDebt,
|
|
59
|
+
depositsUSD: Number(currentATokenBalance) * price,
|
|
60
|
+
debtStableUSD: 0,
|
|
61
|
+
debtUSD: Number(currentVariableDebt) * price,
|
|
62
|
+
stableBorrowRate: 0,
|
|
63
|
+
collateralActive: Boolean(reserveData[YldrTypeGetUserReserveIndexes.usageAsCollateralEnabled]),
|
|
64
|
+
claimableRewards: 0,
|
|
65
|
+
// allowances
|
|
66
|
+
allowanceWithdrawal: data[i * 4 + 1]?.toString(),
|
|
67
|
+
allowanceBorrowingVariable: "0",
|
|
68
|
+
allowanceBorrowingStable: data[i * 4 + 3]?.toString(),
|
|
69
|
+
};
|
|
70
|
+
return {
|
|
71
|
+
dataForAsset,
|
|
72
|
+
addedDeposits: Number(currentATokenBalance) * priceHist,
|
|
73
|
+
addedDebt: Number(currentVariableDebt) * priceHist
|
|
74
|
+
};
|
|
75
|
+
}
|