@defisaver/positions-sdk 2.1.104 → 2.1.105
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/cjs/claiming/aaveV3.d.ts +1 -1
- package/cjs/claiming/aaveV3.js +3 -4
- package/cjs/claiming/index.d.ts +1 -2
- package/cjs/claiming/index.js +1 -3
- package/cjs/config/contracts.d.ts +0 -214
- package/cjs/config/contracts.js +1 -6
- package/cjs/helpers/morphoBlueHelpers/index.d.ts +0 -1
- package/cjs/helpers/morphoBlueHelpers/index.js +27 -32
- package/cjs/portfolio/index.js +0 -27
- package/cjs/types/claiming.d.ts +1 -13
- package/cjs/types/claiming.js +0 -2
- package/cjs/types/morphoBlue.d.ts +2 -3
- package/esm/claiming/aaveV3.d.ts +1 -1
- package/esm/claiming/aaveV3.js +3 -4
- package/esm/claiming/index.d.ts +1 -2
- package/esm/claiming/index.js +1 -2
- package/esm/config/contracts.d.ts +0 -214
- package/esm/config/contracts.js +0 -4
- package/esm/helpers/morphoBlueHelpers/index.d.ts +0 -1
- package/esm/helpers/morphoBlueHelpers/index.js +27 -31
- package/esm/portfolio/index.js +0 -27
- package/esm/types/claiming.d.ts +1 -13
- package/esm/types/claiming.js +0 -2
- package/esm/types/morphoBlue.d.ts +2 -3
- package/package.json +1 -1
- package/src/claiming/aaveV3.ts +2 -3
- package/src/claiming/index.ts +0 -2
- package/src/config/contracts.ts +0 -4
- package/src/helpers/morphoBlueHelpers/index.ts +29 -32
- package/src/portfolio/index.ts +0 -25
- package/src/types/claiming.ts +0 -15
- package/src/types/morphoBlue.ts +2 -3
- package/cjs/claiming/morphoBlue.d.ts +0 -5
- package/cjs/claiming/morphoBlue.js +0 -113
- package/esm/claiming/morphoBlue.d.ts +0 -5
- package/esm/claiming/morphoBlue.js +0 -105
- package/src/claiming/morphoBlue.ts +0 -119
package/cjs/claiming/aaveV3.d.ts
CHANGED
|
@@ -2,4 +2,4 @@ import { Client } from 'viem';
|
|
|
2
2
|
import { EthAddress, NetworkNumber } from '../types/common';
|
|
3
3
|
import { ClaimableToken } from '../types/claiming';
|
|
4
4
|
export declare function getUnclaimedRewardsForAllMarkets(provider: Client, network: NetworkNumber, walletAddress: EthAddress, marketAddress: EthAddress): Promise<ClaimableToken[]>;
|
|
5
|
-
export declare function getMeritUnclaimedRewards(account: EthAddress, network: NetworkNumber
|
|
5
|
+
export declare function getMeritUnclaimedRewards(account: EthAddress, network: NetworkNumber): Promise<ClaimableToken[]>;
|
package/cjs/claiming/aaveV3.js
CHANGED
|
@@ -95,8 +95,8 @@ function getUnclaimedRewardsForAllMarkets(provider, network, walletAddress, mark
|
|
|
95
95
|
return mapAaveRewardsToClaimableTokens(Object.values(totalUnclaimedPerRewardToken), marketAddress, walletAddress);
|
|
96
96
|
});
|
|
97
97
|
}
|
|
98
|
-
function getMeritUnclaimedRewards(
|
|
99
|
-
return __awaiter(this,
|
|
98
|
+
function getMeritUnclaimedRewards(account, network) {
|
|
99
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
100
100
|
let data;
|
|
101
101
|
try {
|
|
102
102
|
const res = yield fetch(`https://api-merkl.angle.money/v4/users/${account}/rewards?chainId=${network}`, { signal: AbortSignal.timeout(3000) });
|
|
@@ -110,8 +110,7 @@ function getMeritUnclaimedRewards(account_1, network_1) {
|
|
|
110
110
|
data.forEach((item) => {
|
|
111
111
|
item.rewards.forEach(reward => {
|
|
112
112
|
const { token, amount, claimed, proofs, } = reward;
|
|
113
|
-
|
|
114
|
-
if (!token || !token.symbol || amount === '0' || (isTokenMorpho && !acceptMorpho))
|
|
113
|
+
if (!token || !token.symbol || amount === '0')
|
|
115
114
|
return;
|
|
116
115
|
const unclaimedAmount = new decimal_js_1.default(amount).minus(claimed || 0).toString();
|
|
117
116
|
if (unclaimedAmount === '0')
|
package/cjs/claiming/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as aaveV3Claim from './aaveV3';
|
|
2
2
|
import * as compV3Claim from './compV3';
|
|
3
3
|
import * as kingV3Claim from './king';
|
|
4
|
-
import * as morphoBlueClaim from './morphoBlue';
|
|
5
4
|
import * as sparkClaim from './spark';
|
|
6
|
-
export { aaveV3Claim, compV3Claim, kingV3Claim,
|
|
5
|
+
export { aaveV3Claim, compV3Claim, kingV3Claim, sparkClaim, };
|
package/cjs/claiming/index.js
CHANGED
|
@@ -33,14 +33,12 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.sparkClaim = exports.
|
|
36
|
+
exports.sparkClaim = exports.kingV3Claim = exports.compV3Claim = exports.aaveV3Claim = void 0;
|
|
37
37
|
const aaveV3Claim = __importStar(require("./aaveV3"));
|
|
38
38
|
exports.aaveV3Claim = aaveV3Claim;
|
|
39
39
|
const compV3Claim = __importStar(require("./compV3"));
|
|
40
40
|
exports.compV3Claim = compV3Claim;
|
|
41
41
|
const kingV3Claim = __importStar(require("./king"));
|
|
42
42
|
exports.kingV3Claim = kingV3Claim;
|
|
43
|
-
const morphoBlueClaim = __importStar(require("./morphoBlue"));
|
|
44
|
-
exports.morphoBlueClaim = morphoBlueClaim;
|
|
45
43
|
const sparkClaim = __importStar(require("./spark"));
|
|
46
44
|
exports.sparkClaim = sparkClaim;
|
|
@@ -96912,220 +96912,6 @@ export declare const SparkRewardsController: {
|
|
|
96912
96912
|
};
|
|
96913
96913
|
};
|
|
96914
96914
|
};
|
|
96915
|
-
export declare const MorphoDistributor: {
|
|
96916
|
-
readonly abi: readonly [{
|
|
96917
|
-
readonly inputs: readonly [{
|
|
96918
|
-
readonly internalType: "address";
|
|
96919
|
-
readonly name: "initialOwner";
|
|
96920
|
-
readonly type: "address";
|
|
96921
|
-
}, {
|
|
96922
|
-
readonly internalType: "uint256";
|
|
96923
|
-
readonly name: "initialTimelock";
|
|
96924
|
-
readonly type: "uint256";
|
|
96925
|
-
}, {
|
|
96926
|
-
readonly internalType: "bytes32";
|
|
96927
|
-
readonly name: "initialRoot";
|
|
96928
|
-
readonly type: "bytes32";
|
|
96929
|
-
}, {
|
|
96930
|
-
readonly internalType: "bytes32";
|
|
96931
|
-
readonly name: "initialIpfsHash";
|
|
96932
|
-
readonly type: "bytes32";
|
|
96933
|
-
}];
|
|
96934
|
-
readonly stateMutability: "nonpayable";
|
|
96935
|
-
readonly type: "constructor";
|
|
96936
|
-
}, {
|
|
96937
|
-
readonly inputs: readonly [];
|
|
96938
|
-
readonly name: "acceptRoot";
|
|
96939
|
-
readonly outputs: readonly [];
|
|
96940
|
-
readonly stateMutability: "nonpayable";
|
|
96941
|
-
readonly type: "function";
|
|
96942
|
-
}, {
|
|
96943
|
-
readonly inputs: readonly [{
|
|
96944
|
-
readonly internalType: "address";
|
|
96945
|
-
readonly name: "account";
|
|
96946
|
-
readonly type: "address";
|
|
96947
|
-
}, {
|
|
96948
|
-
readonly internalType: "address";
|
|
96949
|
-
readonly name: "reward";
|
|
96950
|
-
readonly type: "address";
|
|
96951
|
-
}, {
|
|
96952
|
-
readonly internalType: "uint256";
|
|
96953
|
-
readonly name: "claimable";
|
|
96954
|
-
readonly type: "uint256";
|
|
96955
|
-
}, {
|
|
96956
|
-
readonly internalType: "bytes32[]";
|
|
96957
|
-
readonly name: "proof";
|
|
96958
|
-
readonly type: "bytes32[]";
|
|
96959
|
-
}];
|
|
96960
|
-
readonly name: "claim";
|
|
96961
|
-
readonly outputs: readonly [{
|
|
96962
|
-
readonly internalType: "uint256";
|
|
96963
|
-
readonly name: "amount";
|
|
96964
|
-
readonly type: "uint256";
|
|
96965
|
-
}];
|
|
96966
|
-
readonly stateMutability: "nonpayable";
|
|
96967
|
-
readonly type: "function";
|
|
96968
|
-
}, {
|
|
96969
|
-
readonly inputs: readonly [{
|
|
96970
|
-
readonly internalType: "address";
|
|
96971
|
-
readonly name: "account";
|
|
96972
|
-
readonly type: "address";
|
|
96973
|
-
}, {
|
|
96974
|
-
readonly internalType: "address";
|
|
96975
|
-
readonly name: "reward";
|
|
96976
|
-
readonly type: "address";
|
|
96977
|
-
}];
|
|
96978
|
-
readonly name: "claimed";
|
|
96979
|
-
readonly outputs: readonly [{
|
|
96980
|
-
readonly internalType: "uint256";
|
|
96981
|
-
readonly name: "amount";
|
|
96982
|
-
readonly type: "uint256";
|
|
96983
|
-
}];
|
|
96984
|
-
readonly stateMutability: "view";
|
|
96985
|
-
readonly type: "function";
|
|
96986
|
-
}, {
|
|
96987
|
-
readonly inputs: readonly [];
|
|
96988
|
-
readonly name: "ipfsHash";
|
|
96989
|
-
readonly outputs: readonly [{
|
|
96990
|
-
readonly internalType: "bytes32";
|
|
96991
|
-
readonly name: "";
|
|
96992
|
-
readonly type: "bytes32";
|
|
96993
|
-
}];
|
|
96994
|
-
readonly stateMutability: "view";
|
|
96995
|
-
readonly type: "function";
|
|
96996
|
-
}, {
|
|
96997
|
-
readonly inputs: readonly [{
|
|
96998
|
-
readonly internalType: "address";
|
|
96999
|
-
readonly name: "";
|
|
97000
|
-
readonly type: "address";
|
|
97001
|
-
}];
|
|
97002
|
-
readonly name: "isUpdater";
|
|
97003
|
-
readonly outputs: readonly [{
|
|
97004
|
-
readonly internalType: "bool";
|
|
97005
|
-
readonly name: "";
|
|
97006
|
-
readonly type: "bool";
|
|
97007
|
-
}];
|
|
97008
|
-
readonly stateMutability: "view";
|
|
97009
|
-
readonly type: "function";
|
|
97010
|
-
}, {
|
|
97011
|
-
readonly inputs: readonly [];
|
|
97012
|
-
readonly name: "owner";
|
|
97013
|
-
readonly outputs: readonly [{
|
|
97014
|
-
readonly internalType: "address";
|
|
97015
|
-
readonly name: "";
|
|
97016
|
-
readonly type: "address";
|
|
97017
|
-
}];
|
|
97018
|
-
readonly stateMutability: "view";
|
|
97019
|
-
readonly type: "function";
|
|
97020
|
-
}, {
|
|
97021
|
-
readonly inputs: readonly [];
|
|
97022
|
-
readonly name: "pendingRoot";
|
|
97023
|
-
readonly outputs: readonly [{
|
|
97024
|
-
readonly internalType: "bytes32";
|
|
97025
|
-
readonly name: "root";
|
|
97026
|
-
readonly type: "bytes32";
|
|
97027
|
-
}, {
|
|
97028
|
-
readonly internalType: "bytes32";
|
|
97029
|
-
readonly name: "ipfsHash";
|
|
97030
|
-
readonly type: "bytes32";
|
|
97031
|
-
}, {
|
|
97032
|
-
readonly internalType: "uint256";
|
|
97033
|
-
readonly name: "validAt";
|
|
97034
|
-
readonly type: "uint256";
|
|
97035
|
-
}];
|
|
97036
|
-
readonly stateMutability: "view";
|
|
97037
|
-
readonly type: "function";
|
|
97038
|
-
}, {
|
|
97039
|
-
readonly inputs: readonly [];
|
|
97040
|
-
readonly name: "revokePendingRoot";
|
|
97041
|
-
readonly outputs: readonly [];
|
|
97042
|
-
readonly stateMutability: "nonpayable";
|
|
97043
|
-
readonly type: "function";
|
|
97044
|
-
}, {
|
|
97045
|
-
readonly inputs: readonly [];
|
|
97046
|
-
readonly name: "root";
|
|
97047
|
-
readonly outputs: readonly [{
|
|
97048
|
-
readonly internalType: "bytes32";
|
|
97049
|
-
readonly name: "";
|
|
97050
|
-
readonly type: "bytes32";
|
|
97051
|
-
}];
|
|
97052
|
-
readonly stateMutability: "view";
|
|
97053
|
-
readonly type: "function";
|
|
97054
|
-
}, {
|
|
97055
|
-
readonly inputs: readonly [{
|
|
97056
|
-
readonly internalType: "address";
|
|
97057
|
-
readonly name: "newOwner";
|
|
97058
|
-
readonly type: "address";
|
|
97059
|
-
}];
|
|
97060
|
-
readonly name: "setOwner";
|
|
97061
|
-
readonly outputs: readonly [];
|
|
97062
|
-
readonly stateMutability: "nonpayable";
|
|
97063
|
-
readonly type: "function";
|
|
97064
|
-
}, {
|
|
97065
|
-
readonly inputs: readonly [{
|
|
97066
|
-
readonly internalType: "bytes32";
|
|
97067
|
-
readonly name: "newRoot";
|
|
97068
|
-
readonly type: "bytes32";
|
|
97069
|
-
}, {
|
|
97070
|
-
readonly internalType: "bytes32";
|
|
97071
|
-
readonly name: "newIpfsHash";
|
|
97072
|
-
readonly type: "bytes32";
|
|
97073
|
-
}];
|
|
97074
|
-
readonly name: "setRoot";
|
|
97075
|
-
readonly outputs: readonly [];
|
|
97076
|
-
readonly stateMutability: "nonpayable";
|
|
97077
|
-
readonly type: "function";
|
|
97078
|
-
}, {
|
|
97079
|
-
readonly inputs: readonly [{
|
|
97080
|
-
readonly internalType: "address";
|
|
97081
|
-
readonly name: "updater";
|
|
97082
|
-
readonly type: "address";
|
|
97083
|
-
}, {
|
|
97084
|
-
readonly internalType: "bool";
|
|
97085
|
-
readonly name: "active";
|
|
97086
|
-
readonly type: "bool";
|
|
97087
|
-
}];
|
|
97088
|
-
readonly name: "setRootUpdater";
|
|
97089
|
-
readonly outputs: readonly [];
|
|
97090
|
-
readonly stateMutability: "nonpayable";
|
|
97091
|
-
readonly type: "function";
|
|
97092
|
-
}, {
|
|
97093
|
-
readonly inputs: readonly [{
|
|
97094
|
-
readonly internalType: "uint256";
|
|
97095
|
-
readonly name: "newTimelock";
|
|
97096
|
-
readonly type: "uint256";
|
|
97097
|
-
}];
|
|
97098
|
-
readonly name: "setTimelock";
|
|
97099
|
-
readonly outputs: readonly [];
|
|
97100
|
-
readonly stateMutability: "nonpayable";
|
|
97101
|
-
readonly type: "function";
|
|
97102
|
-
}, {
|
|
97103
|
-
readonly inputs: readonly [{
|
|
97104
|
-
readonly internalType: "bytes32";
|
|
97105
|
-
readonly name: "newRoot";
|
|
97106
|
-
readonly type: "bytes32";
|
|
97107
|
-
}, {
|
|
97108
|
-
readonly internalType: "bytes32";
|
|
97109
|
-
readonly name: "newIpfsHash";
|
|
97110
|
-
readonly type: "bytes32";
|
|
97111
|
-
}];
|
|
97112
|
-
readonly name: "submitRoot";
|
|
97113
|
-
readonly outputs: readonly [];
|
|
97114
|
-
readonly stateMutability: "nonpayable";
|
|
97115
|
-
readonly type: "function";
|
|
97116
|
-
}, {
|
|
97117
|
-
readonly inputs: readonly [];
|
|
97118
|
-
readonly name: "timelock";
|
|
97119
|
-
readonly outputs: readonly [{
|
|
97120
|
-
readonly internalType: "uint256";
|
|
97121
|
-
readonly name: "";
|
|
97122
|
-
readonly type: "uint256";
|
|
97123
|
-
}];
|
|
97124
|
-
readonly stateMutability: "view";
|
|
97125
|
-
readonly type: "function";
|
|
97126
|
-
}];
|
|
97127
|
-
readonly networks: {};
|
|
97128
|
-
};
|
|
97129
96915
|
export declare const AaveRewardsController: {
|
|
97130
96916
|
readonly abi: readonly [{
|
|
97131
96917
|
readonly inputs: readonly [{
|
package/cjs/config/contracts.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
/* eslint-disable */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.LiquityView = exports.crvUSDFactory = exports.crvUSDView = exports.crvUSDsfrxETHAmm = exports.crvUSDtBTCAmm = exports.crvUSDWBTCAmm = exports.crvUSDETHAmm = exports.crvUSDwstETHAmm = exports.crvUSDsfrxETHController = exports.crvUSDtBTCController = exports.crvUSDWBTCController = exports.crvUSDETHController = exports.crvUSDwstETHController = exports.SparkProtocolDataProvider = exports.SparkPoolAddressesProvider = exports.SparkLendingPool = exports.SparkIncentiveDataProvider = exports.SparkView = exports.Pot = exports.IAToken = exports.IVariableDebtToken = exports.Comptroller = exports.CompoundLoanInfo = exports.AaveLendingPoolV2 = exports.AaveProtocolDataProvider = exports.LendingPoolAddressesProvider = exports.AaveLoanInfoV2 = exports.wstETH = exports.CompV3BulkerL2 = exports.CompV3BulkerMainnetETH = exports.CompV3BulkerMainnetUSDC = exports.CompV3View = exports.cWstETHv3 = exports.cUSDSv3 = exports.cUSDTv3 = exports.cETHv3 = exports.cUSDbCv3 = exports.cUSDCev3 = exports.cUSDCv3 = exports.AaveUiIncentiveDataProviderV3 = exports.AaveV3EtherfiProtocolDataProvider = exports.AaveV3LidoProtocolDataProvider = exports.AaveV3ProtocolDataProvider = exports.AaveV3EtherfiLendingPool = exports.AaveV3LidoLendingPool = exports.AaveV3LendingPool = exports.AaveV3EtherfiPoolAddressesProvider = exports.AaveV3LidoPoolAddressesProvider = exports.AaveV3PoolAddressesProvider = exports.AaveV3View = void 0;
|
|
5
|
-
exports.YearnV3Vault = exports.SkySavings = exports.SparkSavingsVault = exports.MakerDsr = exports.YearnView = exports.YearnVault = exports.MorphoVault = exports.StkAAVE = exports.LiquityV2sBoldVault = exports.LiquityV2ActivePool = exports.AaveRewardsController = exports.
|
|
6
|
-
exports.AaveV4View = void 0;
|
|
5
|
+
exports.AaveV4View = exports.YearnV3Vault = exports.SkySavings = exports.SparkSavingsVault = exports.MakerDsr = exports.YearnView = exports.YearnVault = exports.MorphoVault = exports.StkAAVE = exports.LiquityV2sBoldVault = exports.LiquityV2ActivePool = exports.AaveRewardsController = exports.SparkRewardsController = exports.SparkAirdrop = exports.UUPS = exports.LiquityStabilityPool = exports.LiquityLQTYStaking = exports.AaveUmbrellaView = exports.Erc4626 = exports.Erc20 = exports.AaveIncentivesController = exports.McdCdpManager = exports.McdGetCdps = exports.FluidView = exports.LiquityV2StabilityPool = exports.EulerV2View = exports.LiquityV2TroveNFT = exports.LiquityV2CollSurplusPool = exports.LiquityV2View = exports.LiquityV2LegacyView = exports.LlamaLendControllerAbi = exports.LlamaLendView = exports.DFSFeedRegistry = exports.FeedRegistry = exports.MorphoBlueView = exports.WeETHPriceFeed = exports.WstETHPriceFeed = exports.USDCPriceFeed = exports.BTCPriceFeed = exports.ETHPriceFeed = exports.COMPPriceFeed = exports.McdDog = exports.McdJug = exports.McdVat = exports.McdSpotter = exports.McdView = exports.LiquityActivePool = exports.PriceFeed = exports.TroveManager = exports.CollSurplusPool = void 0;
|
|
7
6
|
exports.AaveV3View = {
|
|
8
7
|
"abi": [{ "inputs": [], "name": "AAVE_REFERRAL_CODE", "outputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_umbrella", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getAdditionalUmbrellaStakingData", "outputs": [{ "components": [{ "internalType": "address", "name": "stkToken", "type": "address" }, { "internalType": "uint256", "name": "totalShares", "type": "uint256" }, { "internalType": "address", "name": "stkUnderlyingToken", "type": "address" }, { "internalType": "address", "name": "aToken", "type": "address" }, { "internalType": "uint256", "name": "cooldownPeriod", "type": "uint256" }, { "internalType": "uint256", "name": "unstakeWindow", "type": "uint256" }, { "internalType": "uint256", "name": "stkTokenToWaTokenRate", "type": "uint256" }, { "internalType": "uint256", "name": "waTokenToATokenRate", "type": "uint256" }, { "internalType": "uint256[]", "name": "rewardsEmissionRates", "type": "uint256[]" }, { "internalType": "uint256", "name": "userCooldownAmount", "type": "uint256" }, { "internalType": "uint256", "name": "userEndOfCooldown", "type": "uint256" }, { "internalType": "uint256", "name": "userWithdrawalWindow", "type": "uint256" }], "internalType": "struct AaveV3View.UmbrellaStkData[]", "name": "retVal", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }], "name": "getAllEmodes", "outputs": [{ "components": [{ "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "uint128", "name": "collateralBitmap", "type": "uint128" }, { "internalType": "bool", "name": "isolated", "type": "bool" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "uint128", "name": "borrowableBitmap", "type": "uint128" }, { "internalType": "uint128", "name": "ltvzeroBitmap", "type": "uint128" }], "internalType": "struct DataTypes.EModeCategoryNew[]", "name": "emodesData", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "components": [{ "internalType": "address", "name": "reserveAddress", "type": "address" }, { "internalType": "uint256", "name": "liquidityAdded", "type": "uint256" }, { "internalType": "uint256", "name": "liquidityTaken", "type": "uint256" }, { "internalType": "bool", "name": "isDebtAsset", "type": "bool" }], "internalType": "struct AaveV3View.LiquidityChangeParams[]", "name": "_reserveParams", "type": "tuple[]" }], "name": "getApyAfterValuesEstimation", "outputs": [{ "components": [{ "internalType": "address", "name": "reserveAddress", "type": "address" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "variableBorrowRate", "type": "uint256" }], "internalType": "struct AaveV3View.EstimatedRates[]", "name": "", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_tokenAddr", "type": "address" }], "name": "getAssetPrice", "outputs": [{ "internalType": "uint256", "name": "price", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokens", "type": "address[]" }], "name": "getCollFactors", "outputs": [{ "internalType": "uint256[]", "name": "collFactors", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "emodeCategory", "type": "uint256" }, { "internalType": "contract IPoolV3", "name": "lendingPool", "type": "address" }], "name": "getEModeCollateralFactor", "outputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_asset", "type": "address" }, { "internalType": "address", "name": "_eoa", "type": "address" }, { "internalType": "address", "name": "_proxy", "type": "address" }, { "internalType": "address", "name": "_market", "type": "address" }], "name": "getEOAApprovalsAndBalances", "outputs": [{ "components": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "aToken", "type": "address" }, { "internalType": "address", "name": "variableDebtToken", "type": "address" }, { "internalType": "uint256", "name": "assetApproval", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenApproval", "type": "uint256" }, { "internalType": "uint256", "name": "variableDebtDelegation", "type": "uint256" }, { "internalType": "uint256", "name": "borrowedVariableAmount", "type": "uint256" }, { "internalType": "uint256", "name": "eoaBalance", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenBalance", "type": "uint256" }], "internalType": "struct AaveV3View.EOAApprovalData", "name": "approvalData", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_eoa", "type": "address" }, { "internalType": "address", "name": "_proxy", "type": "address" }, { "internalType": "address", "name": "_market", "type": "address" }], "name": "getEOAApprovalsAndBalancesForAllTokens", "outputs": [{ "components": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "aToken", "type": "address" }, { "internalType": "address", "name": "variableDebtToken", "type": "address" }, { "internalType": "uint256", "name": "assetApproval", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenApproval", "type": "uint256" }, { "internalType": "uint256", "name": "variableDebtDelegation", "type": "uint256" }, { "internalType": "uint256", "name": "borrowedVariableAmount", "type": "uint256" }, { "internalType": "uint256", "name": "eoaBalance", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenBalance", "type": "uint256" }], "internalType": "struct AaveV3View.EOAApprovalData[]", "name": "approvalData", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "contract IPoolV3", "name": "_lendingPool", "type": "address" }, { "internalType": "uint8", "name": "_id", "type": "uint8" }], "name": "getEmodeData", "outputs": [{ "components": [{ "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "uint128", "name": "collateralBitmap", "type": "uint128" }, { "internalType": "bool", "name": "isolated", "type": "bool" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "uint128", "name": "borrowableBitmap", "type": "uint128" }, { "internalType": "uint128", "name": "ltvzeroBitmap", "type": "uint128" }], "internalType": "struct DataTypes.EModeCategoryNew", "name": "emodeData", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokenAddresses", "type": "address[]" }], "name": "getFullTokensInfo", "outputs": [{ "components": [{ "internalType": "address", "name": "aTokenAddress", "type": "address" }, { "internalType": "address", "name": "underlyingTokenAddress", "type": "address" }, { "internalType": "uint16", "name": "assetId", "type": "uint16" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateVariable", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateStable", "type": "uint256" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "availableLiquidity", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrow", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowVar", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowStab", "type": "uint256" }, { "internalType": "uint256", "name": "collateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationRatio", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyCap", "type": "uint256" }, { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, { "internalType": "uint256", "name": "emodeCategory", "type": "uint256" }, { "internalType": "uint256", "name": "debtCeilingForIsolationMode", "type": "uint256" }, { "internalType": "uint256", "name": "isolationModeTotalDebt", "type": "uint256" }, { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, { "internalType": "bool", "name": "isolationModeBorrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "isSiloedForBorrowing", "type": "bool" }, { "internalType": "uint256", "name": "eModeCollateralFactor", "type": "uint256" }, { "internalType": "bool", "name": "isFlashLoanEnabled", "type": "bool" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "bool", "name": "isActive", "type": "bool" }, { "internalType": "bool", "name": "isPaused", "type": "bool" }, { "internalType": "bool", "name": "isFrozen", "type": "bool" }, { "internalType": "address", "name": "debtTokenAddress", "type": "address" }], "internalType": "struct AaveV3View.TokenInfoFull[]", "name": "tokens", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getHealthFactor", "outputs": [{ "internalType": "uint256", "name": "healthFactor", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getLoanData", "outputs": [{ "components": [{ "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint256", "name": "eMode", "type": "uint256" }, { "internalType": "address[]", "name": "collAddr", "type": "address[]" }, { "internalType": "bool[]", "name": "enabledAsColl", "type": "bool[]" }, { "internalType": "address[]", "name": "borrowAddr", "type": "address[]" }, { "internalType": "uint256[]", "name": "collAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowStableAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowVariableAmounts", "type": "uint256[]" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }], "internalType": "struct AaveV3View.LoanData", "name": "data", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_users", "type": "address[]" }], "name": "getLoanDataArr", "outputs": [{ "components": [{ "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint256", "name": "eMode", "type": "uint256" }, { "internalType": "address[]", "name": "collAddr", "type": "address[]" }, { "internalType": "bool[]", "name": "enabledAsColl", "type": "bool[]" }, { "internalType": "address[]", "name": "borrowAddr", "type": "address[]" }, { "internalType": "uint256[]", "name": "collAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowStableAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowVariableAmounts", "type": "uint256[]" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }], "internalType": "struct AaveV3View.LoanData[]", "name": "loans", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokens", "type": "address[]" }], "name": "getPrices", "outputs": [{ "internalType": "uint256[]", "name": "prices", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getRatio", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_users", "type": "address[]" }], "name": "getRatios", "outputs": [{ "internalType": "uint256[]", "name": "ratios", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getSafetyRatio", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "address[]", "name": "_tokens", "type": "address[]" }], "name": "getTokenBalances", "outputs": [{ "components": [{ "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "borrowsStable", "type": "uint256" }, { "internalType": "uint256", "name": "borrowsVariable", "type": "uint256" }, { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, { "internalType": "bool", "name": "enabledAsCollateral", "type": "bool" }], "internalType": "struct AaveV3View.UserToken[]", "name": "userTokens", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_tokenAddr", "type": "address" }], "name": "getTokenInfoFull", "outputs": [{ "components": [{ "internalType": "address", "name": "aTokenAddress", "type": "address" }, { "internalType": "address", "name": "underlyingTokenAddress", "type": "address" }, { "internalType": "uint16", "name": "assetId", "type": "uint16" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateVariable", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateStable", "type": "uint256" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "availableLiquidity", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrow", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowVar", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowStab", "type": "uint256" }, { "internalType": "uint256", "name": "collateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationRatio", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyCap", "type": "uint256" }, { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, { "internalType": "uint256", "name": "emodeCategory", "type": "uint256" }, { "internalType": "uint256", "name": "debtCeilingForIsolationMode", "type": "uint256" }, { "internalType": "uint256", "name": "isolationModeTotalDebt", "type": "uint256" }, { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, { "internalType": "bool", "name": "isolationModeBorrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "isSiloedForBorrowing", "type": "bool" }, { "internalType": "uint256", "name": "eModeCollateralFactor", "type": "uint256" }, { "internalType": "bool", "name": "isFlashLoanEnabled", "type": "bool" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "bool", "name": "isActive", "type": "bool" }, { "internalType": "bool", "name": "isPaused", "type": "bool" }, { "internalType": "bool", "name": "isFrozen", "type": "bool" }, { "internalType": "address", "name": "debtTokenAddress", "type": "address" }], "internalType": "struct AaveV3View.TokenInfoFull", "name": "_tokenInfo", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokenAddresses", "type": "address[]" }], "name": "getTokensInfo", "outputs": [{ "components": [{ "internalType": "address", "name": "aTokenAddress", "type": "address" }, { "internalType": "address", "name": "underlyingTokenAddress", "type": "address" }, { "internalType": "uint256", "name": "collateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }], "internalType": "struct AaveV3View.TokenInfo[]", "name": "tokens", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "isBorrowAllowed", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "pure", "type": "function" }],
|
|
9
8
|
"networks": {
|
|
@@ -1267,10 +1266,6 @@ exports.SparkRewardsController = {
|
|
|
1267
1266
|
}
|
|
1268
1267
|
}
|
|
1269
1268
|
};
|
|
1270
|
-
exports.MorphoDistributor = {
|
|
1271
|
-
"abi": [{ "inputs": [{ "internalType": "address", "name": "initialOwner", "type": "address" }, { "internalType": "uint256", "name": "initialTimelock", "type": "uint256" }, { "internalType": "bytes32", "name": "initialRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "initialIpfsHash", "type": "bytes32" }], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "acceptRoot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }, { "internalType": "address", "name": "reward", "type": "address" }, { "internalType": "uint256", "name": "claimable", "type": "uint256" }, { "internalType": "bytes32[]", "name": "proof", "type": "bytes32[]" }], "name": "claim", "outputs": [{ "internalType": "uint256", "name": "amount", "type": "uint256" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }, { "internalType": "address", "name": "reward", "type": "address" }], "name": "claimed", "outputs": [{ "internalType": "uint256", "name": "amount", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ipfsHash", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "isUpdater", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingRoot", "outputs": [{ "internalType": "bytes32", "name": "root", "type": "bytes32" }, { "internalType": "bytes32", "name": "ipfsHash", "type": "bytes32" }, { "internalType": "uint256", "name": "validAt", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "revokePendingRoot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "root", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], "name": "setOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "newRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newIpfsHash", "type": "bytes32" }], "name": "setRoot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "updater", "type": "address" }, { "internalType": "bool", "name": "active", "type": "bool" }], "name": "setRootUpdater", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "newTimelock", "type": "uint256" }], "name": "setTimelock", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "newRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newIpfsHash", "type": "bytes32" }], "name": "submitRoot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "timelock", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }],
|
|
1272
|
-
"networks": {}
|
|
1273
|
-
};
|
|
1274
1269
|
exports.AaveRewardsController = {
|
|
1275
1270
|
"abi": [{ "inputs": [{ "internalType": "address[]", "name": "assets", "type": "address[]" }, { "internalType": "address", "name": "user", "type": "address" }], "name": "getAllUserRewards", "outputs": [{ "internalType": "address[]", "name": "rewardsList", "type": "address[]" }, { "internalType": "uint256[]", "name": "unclaimedAmounts", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }],
|
|
1276
1271
|
"networks": {
|
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.
|
|
15
|
+
exports.getRewardsForMarket = exports.getReallocation = exports.getLiquidityToAllocate = exports.getReallocatableLiquidity = exports.getApyAfterValuesEstimation = exports.getBorrowRate = exports.getSupplyRate = exports.getMorphoBlueAggregatedPositionData = void 0;
|
|
16
16
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
17
17
|
const tokens_1 = require("@defisaver/tokens");
|
|
18
18
|
const moneymarket_1 = require("../../moneymarket");
|
|
@@ -138,12 +138,13 @@ const getApyAfterValuesEstimation = (selectedMarket, actions, provider, network)
|
|
|
138
138
|
return { borrowRate, supplyRate };
|
|
139
139
|
});
|
|
140
140
|
exports.getApyAfterValuesEstimation = getApyAfterValuesEstimation;
|
|
141
|
-
const API_URL = 'https://
|
|
141
|
+
const API_URL = 'https://api.morpho.org/graphql';
|
|
142
|
+
// Morpho Blue ACRM (Adaptive Curve IRM) always targets 90% utilization — protocol constant
|
|
143
|
+
const ACRM_TARGET_UTILIZATION = '900000000000000000';
|
|
142
144
|
const MARKET_QUERY = `
|
|
143
|
-
query MarketByUniqueKey($
|
|
144
|
-
|
|
145
|
+
query MarketByUniqueKey($marketId: String!, $chainId: Int!) {
|
|
146
|
+
marketById(marketId: $marketId, chainId: $chainId) {
|
|
145
147
|
reallocatableLiquidityAssets
|
|
146
|
-
targetBorrowUtilization
|
|
147
148
|
loanAsset {
|
|
148
149
|
address
|
|
149
150
|
decimals
|
|
@@ -160,8 +161,8 @@ const MARKET_QUERY = `
|
|
|
160
161
|
address
|
|
161
162
|
name
|
|
162
163
|
}
|
|
163
|
-
|
|
164
|
-
|
|
164
|
+
withdrawMarket {
|
|
165
|
+
marketId
|
|
165
166
|
loanAsset {
|
|
166
167
|
address
|
|
167
168
|
}
|
|
@@ -185,14 +186,14 @@ const MARKET_QUERY = `
|
|
|
185
186
|
address
|
|
186
187
|
}
|
|
187
188
|
irmAddress
|
|
188
|
-
lltv
|
|
189
|
+
lltv
|
|
189
190
|
}
|
|
190
191
|
}
|
|
191
192
|
`;
|
|
192
193
|
const REWARDS_QUERY = `
|
|
193
|
-
query MarketByUniqueKey($
|
|
194
|
-
|
|
195
|
-
|
|
194
|
+
query MarketByUniqueKey($marketId: String!, $chainId: Int!) {
|
|
195
|
+
marketById(marketId: $marketId, chainId: $chainId) {
|
|
196
|
+
marketId
|
|
196
197
|
state {
|
|
197
198
|
rewards {
|
|
198
199
|
amountPerSuppliedToken
|
|
@@ -221,17 +222,17 @@ const getReallocatableLiquidity = (marketId_1, ...args_1) => __awaiter(void 0, [
|
|
|
221
222
|
headers: { 'Content-Type': 'application/json' },
|
|
222
223
|
body: JSON.stringify({
|
|
223
224
|
query: MARKET_QUERY,
|
|
224
|
-
variables: {
|
|
225
|
+
variables: { marketId, chainId: network },
|
|
225
226
|
}),
|
|
226
227
|
signal: AbortSignal.timeout(utils_1.LONGER_TIMEOUT),
|
|
227
228
|
});
|
|
228
229
|
const data = yield response.json();
|
|
229
|
-
const marketData = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.
|
|
230
|
+
const marketData = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.marketById;
|
|
230
231
|
if (!marketData)
|
|
231
232
|
throw new Error('Market data not found');
|
|
232
233
|
return {
|
|
233
234
|
reallocatableLiquidity: marketData.reallocatableLiquidityAssets,
|
|
234
|
-
targetBorrowUtilization:
|
|
235
|
+
targetBorrowUtilization: ACRM_TARGET_UTILIZATION,
|
|
235
236
|
};
|
|
236
237
|
}
|
|
237
238
|
catch (error) {
|
|
@@ -285,12 +286,12 @@ const getReallocation = (market_1, assetsData_1, amountToBorrow_1, ...args_1) =>
|
|
|
285
286
|
headers: { 'Content-Type': 'application/json' },
|
|
286
287
|
body: JSON.stringify({
|
|
287
288
|
query: MARKET_QUERY,
|
|
288
|
-
variables: {
|
|
289
|
+
variables: { marketId, chainId: network },
|
|
289
290
|
}),
|
|
290
291
|
signal: AbortSignal.timeout(utils_1.LONGER_TIMEOUT),
|
|
291
292
|
});
|
|
292
293
|
const data = yield response.json();
|
|
293
|
-
const marketData = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.
|
|
294
|
+
const marketData = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.marketById;
|
|
294
295
|
if (!marketData)
|
|
295
296
|
throw new Error('Market data not found');
|
|
296
297
|
const loanAssetInfo = (0, tokens_1.getAssetInfoByAddress)(loanToken, network);
|
|
@@ -300,9 +301,9 @@ const getReallocation = (market_1, assetsData_1, amountToBorrow_1, ...args_1) =>
|
|
|
300
301
|
const newTotalBorrowAssets = new decimal_js_1.default(totalBorrowWei).add(amountToBorrow).toString();
|
|
301
302
|
const newUtil = new decimal_js_1.default(newTotalBorrowAssets).div(totalSupplyWei).toString();
|
|
302
303
|
const newUtilScaled = new decimal_js_1.default(newUtil).mul(1e18).toString();
|
|
303
|
-
if (new decimal_js_1.default(newUtilScaled).lt(
|
|
304
|
+
if (new decimal_js_1.default(newUtilScaled).lt(ACRM_TARGET_UTILIZATION))
|
|
304
305
|
return { vaults: [], withdrawals: [] };
|
|
305
|
-
const liquidityToAllocate = (0, exports.getLiquidityToAllocate)(amountToBorrow, totalBorrowWei, totalSupplyWei,
|
|
306
|
+
const liquidityToAllocate = (0, exports.getLiquidityToAllocate)(amountToBorrow, totalBorrowWei, totalSupplyWei, ACRM_TARGET_UTILIZATION, marketData.reallocatableLiquidityAssets);
|
|
306
307
|
const vaultTotalAssets = marketData.publicAllocatorSharedLiquidity.reduce((acc, item) => {
|
|
307
308
|
const vaultAddress = item.vault.address;
|
|
308
309
|
acc[vaultAddress] = new decimal_js_1.default(acc[vaultAddress] || '0').add(item.assets).toString();
|
|
@@ -324,14 +325,14 @@ const getReallocation = (market_1, assetsData_1, amountToBorrow_1, ...args_1) =>
|
|
|
324
325
|
totalReallocated = new decimal_js_1.default(totalReallocated).add(amountToTake).toString();
|
|
325
326
|
const withdrawal = [
|
|
326
327
|
[
|
|
327
|
-
item.
|
|
328
|
-
(_b = item.
|
|
329
|
-
(_c = item.
|
|
330
|
-
item.
|
|
331
|
-
item.
|
|
328
|
+
item.withdrawMarket.loanAsset.address,
|
|
329
|
+
(_b = item.withdrawMarket.collateralAsset) === null || _b === void 0 ? void 0 : _b.address,
|
|
330
|
+
(_c = item.withdrawMarket.oracle) === null || _c === void 0 ? void 0 : _c.address,
|
|
331
|
+
item.withdrawMarket.irmAddress,
|
|
332
|
+
item.withdrawMarket.lltv,
|
|
332
333
|
],
|
|
333
334
|
amountToTake.toString(),
|
|
334
|
-
item.
|
|
335
|
+
item.withdrawMarket.marketId,
|
|
335
336
|
];
|
|
336
337
|
if (!withdrawalsPerVault[vaultAddress]) {
|
|
337
338
|
withdrawalsPerVault[vaultAddress] = [];
|
|
@@ -359,11 +360,11 @@ const getRewardsForMarket = (marketId_1, ...args_1) => __awaiter(void 0, [market
|
|
|
359
360
|
headers: { 'Content-Type': 'application/json' },
|
|
360
361
|
body: JSON.stringify({
|
|
361
362
|
query: REWARDS_QUERY,
|
|
362
|
-
variables: {
|
|
363
|
+
variables: { marketId, chainId: network },
|
|
363
364
|
}),
|
|
364
365
|
});
|
|
365
366
|
const data = yield response.json();
|
|
366
|
-
const marketData = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.
|
|
367
|
+
const marketData = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.marketById;
|
|
367
368
|
if (!marketData)
|
|
368
369
|
throw new Error('Market data not found');
|
|
369
370
|
const morphoAssetInfo = (0, tokens_1.getAssetInfo)('MORPHO');
|
|
@@ -373,9 +374,3 @@ const getRewardsForMarket = (marketId_1, ...args_1) => __awaiter(void 0, [market
|
|
|
373
374
|
return { supplyApy: (0, moneymarket_1.aprToApy)(supplyAprPercent), borrowApy: (0, moneymarket_1.aprToApy)(borrowAprPercent) };
|
|
374
375
|
});
|
|
375
376
|
exports.getRewardsForMarket = getRewardsForMarket;
|
|
376
|
-
const getMorphoUnderlyingSymbol = (_symbol) => {
|
|
377
|
-
if (_symbol === 'MORPHO Legacy')
|
|
378
|
-
return 'MORPHO';
|
|
379
|
-
return (0, utils_1.wethToEth)(_symbol);
|
|
380
|
-
};
|
|
381
|
-
exports.getMorphoUnderlyingSymbol = getMorphoUnderlyingSymbol;
|
package/cjs/portfolio/index.js
CHANGED
|
@@ -37,7 +37,6 @@ const umbrella_1 = require("../umbrella");
|
|
|
37
37
|
const aaveV3_2 = require("../claiming/aaveV3");
|
|
38
38
|
const compV3_1 = require("../claiming/compV3");
|
|
39
39
|
const spark_2 = require("../claiming/spark");
|
|
40
|
-
const morphoBlue_2 = require("../claiming/morphoBlue");
|
|
41
40
|
const king_1 = require("../claiming/king");
|
|
42
41
|
const ethena_1 = require("../claiming/ethena");
|
|
43
42
|
const aaveV4_1 = require("../aaveV4");
|
|
@@ -45,7 +44,6 @@ function getPortfolioData(provider_1, network_1, defaultProvider_1, addresses_1)
|
|
|
45
44
|
return __awaiter(this, arguments, void 0, function* (provider, network, defaultProvider, addresses, isSim = false) {
|
|
46
45
|
const isMainnet = network === common_1.NetworkNumber.Eth;
|
|
47
46
|
const isFluidSupported = [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Arb, common_1.NetworkNumber.Base, common_1.NetworkNumber.Plasma].includes(network);
|
|
48
|
-
const isMorphoRewardsSupported = [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Base].includes(network);
|
|
49
47
|
const morphoMarkets = Object.values((0, markets_1.MorphoBlueMarkets)(network)).filter((market) => market.chainIds.includes(network));
|
|
50
48
|
const compoundV3Markets = Object.values((0, markets_1.CompoundMarkets)(network)).filter((market) => market.chainIds.includes(network) && market.value !== types_1.CompoundVersions.CompoundV2);
|
|
51
49
|
const sparkMarkets = Object.values((0, markets_1.SparkMarkets)(network)).filter((market) => market.chainIds.includes(network));
|
|
@@ -133,7 +131,6 @@ function getPortfolioData(provider_1, network_1, defaultProvider_1, addresses_1)
|
|
|
133
131
|
spark: {},
|
|
134
132
|
spk: {},
|
|
135
133
|
king: {},
|
|
136
|
-
morpho: {},
|
|
137
134
|
ethena: {},
|
|
138
135
|
};
|
|
139
136
|
}
|
|
@@ -343,30 +340,6 @@ function getPortfolioData(provider_1, network_1, defaultProvider_1, addresses_1)
|
|
|
343
340
|
rewardsData[address.toLowerCase()].aaveV3 = { error: `Error fetching Aave V3 rewards data for address ${address}`, data: null };
|
|
344
341
|
}
|
|
345
342
|
}))).flat(),
|
|
346
|
-
// Batch Morpho Blue rewards
|
|
347
|
-
(() => __awaiter(this, void 0, void 0, function* () {
|
|
348
|
-
if (!isMorphoRewardsSupported)
|
|
349
|
-
return;
|
|
350
|
-
try {
|
|
351
|
-
const morphoRewards = yield (0, morphoBlue_2.fetchMorphoBlueRewards)(client, network, addresses);
|
|
352
|
-
for (const address of addresses) {
|
|
353
|
-
const lowerAddress = address.toLowerCase();
|
|
354
|
-
rewardsData[lowerAddress].morpho = {
|
|
355
|
-
error: '',
|
|
356
|
-
data: morphoRewards[lowerAddress] || [],
|
|
357
|
-
};
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
catch (error) {
|
|
361
|
-
console.error('Error fetching Morpho Blue rewards data in batch:', error);
|
|
362
|
-
for (const address of addresses) {
|
|
363
|
-
rewardsData[address.toLowerCase()].morpho = {
|
|
364
|
-
error: 'Error fetching Morpho Blue rewards data in batch',
|
|
365
|
-
data: null,
|
|
366
|
-
};
|
|
367
|
-
}
|
|
368
|
-
}
|
|
369
|
-
}))(),
|
|
370
343
|
// Batch Spark Airdrop rewards
|
|
371
344
|
(() => __awaiter(this, void 0, void 0, function* () {
|
|
372
345
|
try {
|
package/cjs/types/claiming.d.ts
CHANGED
|
@@ -8,8 +8,6 @@ export declare enum ClaimType {
|
|
|
8
8
|
COMPOUND_V3_COMP = "COMPOUND_V3_COMP",
|
|
9
9
|
/** Rewards from Spark (wstETH only for now) */
|
|
10
10
|
SPARK_REWARDS = "SPARK_REWARDS",
|
|
11
|
-
/** Rewards from Morpho */
|
|
12
|
-
MORPHO = "MORPHO",
|
|
13
11
|
/** Rewards from King (prev LTR^2 - received for weETH holding) */
|
|
14
12
|
KING_REWARDS = "KING_REWARDS",
|
|
15
13
|
/** Spark Airdrop */
|
|
@@ -57,16 +55,6 @@ export type KingRewardsClaimableToken = _ClaimableTokenPartial & {
|
|
|
57
55
|
merkleProofs: string[];
|
|
58
56
|
};
|
|
59
57
|
};
|
|
60
|
-
export type MorphoClaimableToken = _ClaimableTokenPartial & {
|
|
61
|
-
claimType: ClaimType.MORPHO;
|
|
62
|
-
additionalClaimFields: {
|
|
63
|
-
originalAmount: string;
|
|
64
|
-
merkleProofs: string[];
|
|
65
|
-
distributor: EthAddress;
|
|
66
|
-
isLegacy: boolean;
|
|
67
|
-
txData: string;
|
|
68
|
-
};
|
|
69
|
-
};
|
|
70
58
|
export type CompoundV3CompClaimableToken = _ClaimableTokenPartial & {
|
|
71
59
|
claimType: ClaimType.COMPOUND_V3_COMP;
|
|
72
60
|
additionalClaimFields: {
|
|
@@ -93,5 +81,5 @@ export type SparkWstEthRewardsClaimableToken = _ClaimableTokenPartial & {
|
|
|
93
81
|
export type EthenaAirdropClaimableToken = _ClaimableTokenPartial & {
|
|
94
82
|
claimType: ClaimType.ETHENA_AIRDROP;
|
|
95
83
|
};
|
|
96
|
-
export type ClaimableToken = AaveRewardsClaimableToken | AaveMeritRewardsClaimableToken | CompoundV3CompClaimableToken |
|
|
84
|
+
export type ClaimableToken = AaveRewardsClaimableToken | AaveMeritRewardsClaimableToken | CompoundV3CompClaimableToken | SparkRewardsClaimableToken | KingRewardsClaimableToken | SparkAirdropClaimableToken | SparkWstEthRewardsClaimableToken | EthenaAirdropClaimableToken;
|
|
97
85
|
export {};
|