@defisaver/positions-sdk 2.1.72 → 2.1.74

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.
Files changed (46) hide show
  1. package/cjs/aaveV3/index.js +1 -1
  2. package/cjs/config/contracts.d.ts +53 -656
  3. package/cjs/config/contracts.js +1 -1
  4. package/cjs/contracts.d.ts +38412 -0
  5. package/cjs/contracts.js +11 -2
  6. package/cjs/savings/index.d.ts +4 -3
  7. package/cjs/savings/index.js +70 -53
  8. package/cjs/savings/summerVaults/index.d.ts +7 -0
  9. package/cjs/savings/summerVaults/index.js +92 -0
  10. package/cjs/savings/summerVaults/options.d.ts +13 -0
  11. package/cjs/savings/summerVaults/options.js +109 -0
  12. package/cjs/services/viem.d.ts +11 -11
  13. package/cjs/types/common.d.ts +1 -1
  14. package/cjs/types/common.js +1 -1
  15. package/cjs/types/savings/index.d.ts +3 -1
  16. package/cjs/types/savings/index.js +1 -0
  17. package/cjs/types/savings/summerVaults.d.ts +22 -0
  18. package/cjs/types/savings/summerVaults.js +16 -0
  19. package/esm/aaveV3/index.js +1 -1
  20. package/esm/config/contracts.d.ts +53 -656
  21. package/esm/config/contracts.js +1 -1
  22. package/esm/contracts.d.ts +38412 -0
  23. package/esm/contracts.js +8 -0
  24. package/esm/savings/index.d.ts +4 -3
  25. package/esm/savings/index.js +69 -53
  26. package/esm/savings/summerVaults/index.d.ts +7 -0
  27. package/esm/savings/summerVaults/index.js +54 -0
  28. package/esm/savings/summerVaults/options.d.ts +13 -0
  29. package/esm/savings/summerVaults/options.js +105 -0
  30. package/esm/services/viem.d.ts +11 -11
  31. package/esm/types/common.d.ts +1 -1
  32. package/esm/types/common.js +1 -1
  33. package/esm/types/savings/index.d.ts +3 -1
  34. package/esm/types/savings/index.js +1 -0
  35. package/esm/types/savings/summerVaults.d.ts +22 -0
  36. package/esm/types/savings/summerVaults.js +13 -0
  37. package/package.json +1 -1
  38. package/src/aaveV3/index.ts +1 -1
  39. package/src/config/contracts.ts +3 -3
  40. package/src/contracts.ts +10 -1
  41. package/src/savings/index.ts +63 -47
  42. package/src/savings/summerVaults/index.ts +56 -0
  43. package/src/savings/summerVaults/options.ts +117 -0
  44. package/src/types/common.ts +1 -1
  45. package/src/types/savings/index.ts +3 -1
  46. package/src/types/savings/summerVaults.ts +24 -0
package/cjs/contracts.js CHANGED
@@ -33,8 +33,8 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.AaveRewardsControllerViem = exports.SparkRewardsControllerViem = exports.UUPSViem = exports.LiquityStabilityPoolViem = exports.LiquityLQTYStakingViem = exports.AaveUmbrellaViewViem = exports.AaveIncentivesControllerViem = exports.FluidViewContractViem = exports.LiquityV2LegacyViewContractViem = exports.LiquityV2ViewContractViem = exports.LiquityActivePoolContractViem = exports.LiquityPriceFeedContractViem = exports.LiquityTroveManagerContractViem = exports.LiquityCollSurplusPoolContractViem = exports.LiquityViewContractViem = exports.BTCPriceFeedContractViem = exports.WeETHPriceFeedContractViem = exports.ComptrollerContractViem = exports.CompoundLoanInfoContractViem = exports.McdJugContractViem = exports.McdDogContractViem = exports.McdSpotterContractViem = exports.McdVatContractViem = exports.McdViewContractViem = exports.McdGetCdpsContractViem = exports.LlamaLendViewContractViem = exports.CrvUSDFactoryContractViem = exports.CrvUSDViewContractViem = exports.EulerV2ViewContractViem = exports.SparkIncentiveDataProviderContractViem = exports.SparkViewContractViem = exports.CompV3ViewContractViem = exports.WstETHPriceFeedContractViem = exports.USDCPriceFeedContractViem = exports.ETHPriceFeedContractViem = exports.COMPPriceFeedContractViem = exports.DFSFeedRegistryContractViem = exports.FeedRegistryContractViem = exports.AaveIncentiveDataProviderV3ContractViem = exports.AaveV3ViewContractViem = exports.AaveLoanInfoV2ContractViem = exports.MorphoBlueViewContractViem = exports.getYearnV3VaultContractViem = exports.getErc20ContractViem = exports.getSparkSavingsVaultContractViem = exports.getYearnVaultContractViem = exports.getMorphoVaultContractViem = exports.createViemContractFromConfigFunc = exports.getConfigContractAbi = exports.getConfigContractAddress = void 0;
37
- exports.SkySavingsContractView = exports.MakerDsrContractViem = exports.YearnViewContractViem = exports.StkAAVEViem = exports.LiquityV2sBoldVaultViem = void 0;
36
+ exports.SparkRewardsControllerViem = exports.UUPSViem = exports.LiquityStabilityPoolViem = exports.LiquityLQTYStakingViem = exports.AaveUmbrellaViewViem = exports.AaveIncentivesControllerViem = exports.FluidViewContractViem = exports.LiquityV2LegacyViewContractViem = exports.LiquityV2ViewContractViem = exports.LiquityActivePoolContractViem = exports.LiquityPriceFeedContractViem = exports.LiquityTroveManagerContractViem = exports.LiquityCollSurplusPoolContractViem = exports.LiquityViewContractViem = exports.BTCPriceFeedContractViem = exports.WeETHPriceFeedContractViem = exports.ComptrollerContractViem = exports.CompoundLoanInfoContractViem = exports.McdJugContractViem = exports.McdDogContractViem = exports.McdSpotterContractViem = exports.McdVatContractViem = exports.McdViewContractViem = exports.McdGetCdpsContractViem = exports.LlamaLendViewContractViem = exports.CrvUSDFactoryContractViem = exports.CrvUSDViewContractViem = exports.EulerV2ViewContractViem = exports.SparkIncentiveDataProviderContractViem = exports.SparkViewContractViem = exports.CompV3ViewContractViem = exports.WstETHPriceFeedContractViem = exports.USDCPriceFeedContractViem = exports.ETHPriceFeedContractViem = exports.COMPPriceFeedContractViem = exports.DFSFeedRegistryContractViem = exports.FeedRegistryContractViem = exports.AaveIncentiveDataProviderV3ContractViem = exports.AaveV3ViewContractViem = exports.AaveLoanInfoV2ContractViem = exports.MorphoBlueViewContractViem = exports.getYearnV3VaultContractViem = exports.getErc4626ContractViem = exports.getErc20ContractViem = exports.getSparkSavingsVaultContractViem = exports.getYearnVaultContractViem = exports.getMorphoVaultContractViem = exports.createViemContractFromConfigFunc = exports.getConfigContractAbi = exports.getConfigContractAddress = void 0;
37
+ exports.SkySavingsContractView = exports.MakerDsrContractViem = exports.YearnViewContractViem = exports.StkAAVEViem = exports.LiquityV2sBoldVaultViem = exports.AaveRewardsControllerViem = void 0;
38
38
  const viem_1 = require("viem");
39
39
  const configRaw = __importStar(require("./config/contracts"));
40
40
  // @ts-ignore
@@ -121,6 +121,15 @@ const getErc20ContractViem = (client, address) => {
121
121
  });
122
122
  };
123
123
  exports.getErc20ContractViem = getErc20ContractViem;
124
+ const getErc4626ContractViem = (client, address) => {
125
+ const abi = (0, exports.getConfigContractAbi)('Erc4626');
126
+ return (0, viem_1.getContract)({
127
+ address,
128
+ abi,
129
+ client,
130
+ });
131
+ };
132
+ exports.getErc4626ContractViem = getErc4626ContractViem;
124
133
  const getYearnV3VaultContractViem = (client, address) => {
125
134
  const abi = (0, exports.getConfigContractAbi)('YearnV3Vault');
126
135
  return (0, viem_1.getContract)({
@@ -1,10 +1,11 @@
1
- import { MakerDsrType, MorphoVaultType, SkySavingsType, SparkSavingsVaultType, YearnV3VaultType, YearnVaultType } from '../types';
1
+ import { MakerDsrType, MorphoVaultType, SkySavingsType, SparkSavingsVaultType, SummerVaultType, YearnV3VaultType, YearnVaultType } from '../types';
2
2
  import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
3
3
  import * as morphoVaults from './morphoVaults';
4
4
  import * as yearnVaults from './yearnVaults';
5
5
  import * as makerDsr from './makerDsr';
6
6
  import * as skyOptions from './skyOptions';
7
7
  import * as sparkSavingsVaults from './sparkSavingsVaults';
8
+ import * as summerVaults from './summerVaults';
8
9
  import * as yearnV3Vaults from './yearnV3Vaults';
9
- export { morphoVaults, yearnVaults, makerDsr, skyOptions, sparkSavingsVaults, yearnV3Vaults, };
10
- export declare const getSavingsData: (provider: EthereumProvider, network: NetworkNumber, accounts: EthAddress[]) => Promise<Partial<Record<MakerDsrType | MorphoVaultType | SkySavingsType | SparkSavingsVaultType | YearnV3VaultType | YearnVaultType, import("../types").SavingsVaultData>>>;
10
+ export { morphoVaults, yearnVaults, makerDsr, skyOptions, sparkSavingsVaults, summerVaults, yearnV3Vaults, };
11
+ export declare const getSavingsData: (provider: EthereumProvider, network: NetworkNumber, accounts: EthAddress[]) => Promise<Partial<Record<MakerDsrType | MorphoVaultType | SkySavingsType | SparkSavingsVaultType | SummerVaultType | YearnV3VaultType | YearnVaultType, import("../types").SavingsVaultData>>>;
@@ -42,8 +42,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
42
42
  });
43
43
  };
44
44
  Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.getSavingsData = exports.yearnV3Vaults = exports.sparkSavingsVaults = exports.skyOptions = exports.makerDsr = exports.yearnVaults = exports.morphoVaults = void 0;
45
+ exports.getSavingsData = exports.yearnV3Vaults = exports.summerVaults = exports.sparkSavingsVaults = exports.skyOptions = exports.makerDsr = exports.yearnVaults = exports.morphoVaults = void 0;
46
46
  const types_1 = require("../types");
47
+ const common_1 = require("../types/common");
47
48
  const morphoVaults = __importStar(require("./morphoVaults"));
48
49
  exports.morphoVaults = morphoVaults;
49
50
  const yearnVaults = __importStar(require("./yearnVaults"));
@@ -54,6 +55,8 @@ const skyOptions = __importStar(require("./skyOptions"));
54
55
  exports.skyOptions = skyOptions;
55
56
  const sparkSavingsVaults = __importStar(require("./sparkSavingsVaults"));
56
57
  exports.sparkSavingsVaults = sparkSavingsVaults;
58
+ const summerVaults = __importStar(require("./summerVaults"));
59
+ exports.summerVaults = summerVaults;
57
60
  const yearnV3Vaults = __importStar(require("./yearnV3Vaults"));
58
61
  exports.yearnV3Vaults = yearnV3Vaults;
59
62
  const getSavingsData = (provider, network, accounts) => __awaiter(void 0, void 0, void 0, function* () {
@@ -61,66 +64,80 @@ const getSavingsData = (provider, network, accounts) => __awaiter(void 0, void 0
61
64
  const yearnVaultsList = Object.keys(yearnVaults.yearnVaultsOptions.YEARN_VAULTS);
62
65
  const sparkSavingsVaultsList = Object.keys(sparkSavingsVaults.sparkSavingsVaultsOptions.SPARK_SAVINGS_VAULTS);
63
66
  const yearnV3VaultsList = Object.keys(yearnV3Vaults.yearnV3VaultsOptions.YEARN_V3_VAULTS);
67
+ const summerVaultsList = Object.keys(summerVaults.summerVaultsOptions.SUMMER_VAULTS)
68
+ .filter((key) => summerVaults.summerVaultsOptions.getSummerVault(key).network === network);
64
69
  const savingsData = {};
65
70
  yield Promise.all([
66
- ...morphoVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
71
+ ...(network === common_1.NetworkNumber.Eth ? [
72
+ ...morphoVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
73
+ try {
74
+ const vault = morphoVaults.morphoVaultsOptions.getMorphoVault(vaultKey);
75
+ const data = yield morphoVaults.getMorphoVaultData(provider, network, vault, accounts);
76
+ savingsData[vaultKey] = data;
77
+ }
78
+ catch (err) {
79
+ console.error(`[getSavingsData] Error fetching morpho vault ${vaultKey}:`, err);
80
+ }
81
+ })),
82
+ ...yearnVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
83
+ try {
84
+ const vault = yearnVaults.yearnVaultsOptions.getYearnVault(vaultKey);
85
+ const data = yield yearnVaults.getYearnVaultData(provider, network, vault, accounts);
86
+ savingsData[vaultKey] = data;
87
+ }
88
+ catch (err) {
89
+ console.error(`[getSavingsData] Error fetching yearn vault ${vaultKey}:`, err);
90
+ }
91
+ })),
92
+ ...sparkSavingsVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
93
+ try {
94
+ const vault = sparkSavingsVaults.sparkSavingsVaultsOptions.getSparkSavingsVault(vaultKey);
95
+ const data = yield sparkSavingsVaults.getSparkSavingsVaultData(provider, network, vault, accounts);
96
+ savingsData[vaultKey] = data;
97
+ }
98
+ catch (err) {
99
+ console.error(`[getSavingsData] Error fetching spark savings vault ${vaultKey}:`, err);
100
+ }
101
+ })),
102
+ ...yearnV3VaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
103
+ try {
104
+ const vault = yearnV3Vaults.yearnV3VaultsOptions.getYearnV3Vault(vaultKey);
105
+ const data = yield yearnV3Vaults.getYearnV3VaultData(provider, network, vault, accounts);
106
+ savingsData[vaultKey] = data;
107
+ }
108
+ catch (err) {
109
+ console.error(`[getSavingsData] Error fetching yearn v3 vault ${vaultKey}:`, err);
110
+ }
111
+ })),
112
+ (() => __awaiter(void 0, void 0, void 0, function* () {
113
+ try {
114
+ const data = yield makerDsr.getMakerDsrData(provider, network, accounts);
115
+ savingsData[types_1.MakerDsrType.MakerDsrVault] = data;
116
+ }
117
+ catch (err) {
118
+ console.error('[getSavingsData] Error fetching maker DSR data:', err);
119
+ }
120
+ }))(),
121
+ (() => __awaiter(void 0, void 0, void 0, function* () {
122
+ try {
123
+ const data = yield skyOptions.getSkyOptionData(provider, network, accounts);
124
+ savingsData[types_1.SkySavingsType.SkySavings] = data;
125
+ }
126
+ catch (err) {
127
+ console.error('[getSavingsData] Error fetching Sky savings data:', err);
128
+ }
129
+ }))(),
130
+ ] : []),
131
+ ...summerVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
67
132
  try {
68
- const vault = morphoVaults.morphoVaultsOptions.getMorphoVault(vaultKey);
69
- const data = yield morphoVaults.getMorphoVaultData(provider, network, vault, accounts);
133
+ const vault = summerVaults.summerVaultsOptions.getSummerVault(vaultKey);
134
+ const data = yield summerVaults.getSummerVaultData(provider, network, vault, accounts);
70
135
  savingsData[vaultKey] = data;
71
136
  }
72
137
  catch (err) {
73
- console.error(`[getSavingsData] Error fetching morpho vault ${vaultKey}:`, err);
138
+ console.error(`[getSavingsData] Error fetching summer vault ${vaultKey}:`, err);
74
139
  }
75
140
  })),
76
- ...yearnVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
77
- try {
78
- const vault = yearnVaults.yearnVaultsOptions.getYearnVault(vaultKey);
79
- const data = yield yearnVaults.getYearnVaultData(provider, network, vault, accounts);
80
- savingsData[vaultKey] = data;
81
- }
82
- catch (err) {
83
- console.error(`[getSavingsData] Error fetching yearn vault ${vaultKey}:`, err);
84
- }
85
- })),
86
- ...sparkSavingsVaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
87
- try {
88
- const vault = sparkSavingsVaults.sparkSavingsVaultsOptions.getSparkSavingsVault(vaultKey);
89
- const data = yield sparkSavingsVaults.getSparkSavingsVaultData(provider, network, vault, accounts);
90
- savingsData[vaultKey] = data;
91
- }
92
- catch (err) {
93
- console.error(`[getSavingsData] Error fetching yearn vault ${vaultKey}:`, err);
94
- }
95
- })),
96
- ...yearnV3VaultsList.map((vaultKey) => __awaiter(void 0, void 0, void 0, function* () {
97
- try {
98
- const vault = yearnV3Vaults.yearnV3VaultsOptions.getYearnV3Vault(vaultKey);
99
- const data = yield yearnV3Vaults.getYearnV3VaultData(provider, network, vault, accounts);
100
- savingsData[vaultKey] = data;
101
- }
102
- catch (err) {
103
- console.error(`[getSavingsData] Error fetching yearn vault ${vaultKey}:`, err);
104
- }
105
- })),
106
- (() => __awaiter(void 0, void 0, void 0, function* () {
107
- try {
108
- const data = yield makerDsr.getMakerDsrData(provider, network, accounts);
109
- savingsData[types_1.MakerDsrType.MakerDsrVault] = data;
110
- }
111
- catch (err) {
112
- console.error('[getSavingsData] Error fetching maker DSR data:', err);
113
- }
114
- }))(),
115
- (() => __awaiter(void 0, void 0, void 0, function* () {
116
- try {
117
- const data = yield skyOptions.getSkyOptionData(provider, network, accounts);
118
- savingsData[types_1.SkySavingsType.SkySavings] = data;
119
- }
120
- catch (err) {
121
- console.error('[getSavingsData] Error fetching Sky savings data:', err);
122
- }
123
- }))(),
124
141
  ]);
125
142
  return savingsData;
126
143
  });
@@ -0,0 +1,7 @@
1
+ import { Client } from 'viem';
2
+ import { SavingsVaultData, SummerVault } from '../../types';
3
+ import { EthAddress, EthereumProvider, NetworkNumber } from '../../types/common';
4
+ import * as summerVaultsOptions from './options';
5
+ export { summerVaultsOptions, };
6
+ export declare const _getSummerVaultData: (provider: Client, network: NetworkNumber, summerVault: SummerVault, accounts: EthAddress[]) => Promise<SavingsVaultData>;
7
+ export declare function getSummerVaultData(provider: EthereumProvider, network: NetworkNumber, summerVault: SummerVault, accounts: EthAddress[]): Promise<SavingsVaultData>;
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports._getSummerVaultData = exports.summerVaultsOptions = void 0;
46
+ exports.getSummerVaultData = getSummerVaultData;
47
+ const tokens_1 = require("@defisaver/tokens");
48
+ const viem_1 = require("../../services/viem");
49
+ const summerVaultsOptions = __importStar(require("./options"));
50
+ exports.summerVaultsOptions = summerVaultsOptions;
51
+ const contracts_1 = require("../../contracts");
52
+ const _getSummerVaultData = (provider, network, summerVault, accounts) => __awaiter(void 0, void 0, void 0, function* () {
53
+ const vaultContract = (0, contracts_1.getErc4626ContractViem)(provider, summerVault.address);
54
+ const shares = {};
55
+ const [totalAssets, totalSupply] = yield Promise.all([
56
+ vaultContract.read.totalAssets(),
57
+ vaultContract.read.totalSupply(),
58
+ ...accounts.map((account) => __awaiter(void 0, void 0, void 0, function* () {
59
+ const share = yield vaultContract.read.balanceOf([account]);
60
+ shares[account.toLowerCase()] = share;
61
+ })),
62
+ ]);
63
+ const poolSize = (0, tokens_1.assetAmountInEth)(totalAssets.toString(), summerVault.asset);
64
+ const supplied = {};
65
+ yield Promise.all(accounts.map((account) => __awaiter(void 0, void 0, void 0, function* () {
66
+ const normalizedAccount = account.toLowerCase();
67
+ const share = shares[normalizedAccount] || BigInt(0);
68
+ const assets = share === BigInt(0)
69
+ ? BigInt(0)
70
+ : yield vaultContract.read.convertToAssets([share]);
71
+ supplied[normalizedAccount] = (0, tokens_1.assetAmountInEth)(assets.toString(), summerVault.asset);
72
+ })));
73
+ return {
74
+ poolSize,
75
+ liquidity: poolSize,
76
+ supplied,
77
+ asset: summerVault.asset,
78
+ optionType: summerVault.type,
79
+ };
80
+ });
81
+ exports._getSummerVaultData = _getSummerVaultData;
82
+ function getSummerVaultData(provider, network, summerVault, accounts) {
83
+ return __awaiter(this, void 0, void 0, function* () {
84
+ return (0, exports._getSummerVaultData)((0, viem_1.getViemProvider)(provider, network, {
85
+ batch: {
86
+ multicall: {
87
+ batchSize: 2500000,
88
+ },
89
+ },
90
+ }), network, summerVault, accounts);
91
+ });
92
+ }
@@ -0,0 +1,13 @@
1
+ import { SummerVault, SummerVaultType } from '../../types';
2
+ export declare const SUMMER_VAULT_USDC_MAINNET_LR: SummerVault;
3
+ export declare const SUMMER_VAULT_USDC_MAINNET_HR: SummerVault;
4
+ export declare const SUMMER_VAULT_USDT_MAINNET_LR: SummerVault;
5
+ export declare const SUMMER_VAULT_ETH_MAINNET_LR: SummerVault;
6
+ export declare const SUMMER_VAULT_ETH_MAINNET_HR: SummerVault;
7
+ export declare const SUMMER_VAULT_USDC_ARBITRUM_LR: SummerVault;
8
+ export declare const SUMMER_VAULT_USDT_ARBITRUM_LR: SummerVault;
9
+ export declare const SUMMER_VAULT_USDC_BASE_LR: SummerVault;
10
+ export declare const SUMMER_VAULT_EURC_BASE_LR: SummerVault;
11
+ export declare const SUMMER_VAULT_ETH_BASE_LR: SummerVault;
12
+ export declare const SUMMER_VAULTS: Record<SummerVaultType, SummerVault>;
13
+ export declare const getSummerVault: (type: SummerVaultType) => SummerVault;
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSummerVault = exports.SUMMER_VAULTS = exports.SUMMER_VAULT_ETH_BASE_LR = exports.SUMMER_VAULT_EURC_BASE_LR = exports.SUMMER_VAULT_USDC_BASE_LR = exports.SUMMER_VAULT_USDT_ARBITRUM_LR = exports.SUMMER_VAULT_USDC_ARBITRUM_LR = exports.SUMMER_VAULT_ETH_MAINNET_HR = exports.SUMMER_VAULT_ETH_MAINNET_LR = exports.SUMMER_VAULT_USDT_MAINNET_LR = exports.SUMMER_VAULT_USDC_MAINNET_HR = exports.SUMMER_VAULT_USDC_MAINNET_LR = void 0;
4
+ const common_1 = require("../../types/common");
5
+ const types_1 = require("../../types");
6
+ exports.SUMMER_VAULT_USDC_MAINNET_LR = {
7
+ type: types_1.SummerVaultType.SummerVaultUSDCMainnetLR,
8
+ name: 'Lower Risk USDC',
9
+ address: '0x98C49e13bf99D7CAd8069faa2A370933EC9EcF17',
10
+ asset: 'USDC',
11
+ network: common_1.NetworkNumber.Eth,
12
+ deploymentBlock: 21795049,
13
+ isLegacy: false,
14
+ };
15
+ exports.SUMMER_VAULT_USDC_MAINNET_HR = {
16
+ type: types_1.SummerVaultType.SummerVaultUSDCMainnetHR,
17
+ name: 'Higher Risk USDC',
18
+ address: '0xe9cda459bed6dcfb8ac61cd8ce08e2d52370cb06',
19
+ asset: 'USDC',
20
+ network: common_1.NetworkNumber.Eth,
21
+ deploymentBlock: 22488041,
22
+ isLegacy: false,
23
+ };
24
+ exports.SUMMER_VAULT_USDT_MAINNET_LR = {
25
+ type: types_1.SummerVaultType.SummerVaultUSDTMainnetLR,
26
+ name: 'Lower Risk USDT',
27
+ address: '0x17ee2d03e88b55e762c66c76ec99c3a28a54ad8d',
28
+ asset: 'USDT',
29
+ network: common_1.NetworkNumber.Eth,
30
+ deploymentBlock: 21795276,
31
+ isLegacy: false,
32
+ };
33
+ exports.SUMMER_VAULT_ETH_MAINNET_LR = {
34
+ type: types_1.SummerVaultType.SummerVaultETHMainnetLR,
35
+ name: 'Lower Risk ETH',
36
+ address: '0x67e536797570b3d8919df052484273815a0ab506',
37
+ asset: 'WETH',
38
+ network: common_1.NetworkNumber.Eth,
39
+ deploymentBlock: 21795390,
40
+ isLegacy: false,
41
+ };
42
+ exports.SUMMER_VAULT_ETH_MAINNET_HR = {
43
+ type: types_1.SummerVaultType.SummerVaultETHMainnetHR,
44
+ name: 'Higher Risk ETH',
45
+ address: '0x2e6abcbcced9af05bc3b8a4908e0c98c29a88e10',
46
+ asset: 'WETH',
47
+ network: common_1.NetworkNumber.Eth,
48
+ deploymentBlock: 22291252,
49
+ isLegacy: false,
50
+ };
51
+ exports.SUMMER_VAULT_USDC_ARBITRUM_LR = {
52
+ type: types_1.SummerVaultType.SummerVaultUSDCArbitrumLR,
53
+ name: 'Lower Risk USDC',
54
+ address: '0x4f63cfea7458221cb3a0eee2f31f7424ad34bb58',
55
+ asset: 'USDC',
56
+ network: common_1.NetworkNumber.Arb,
57
+ deploymentBlock: 312942348,
58
+ isLegacy: false,
59
+ };
60
+ exports.SUMMER_VAULT_USDT_ARBITRUM_LR = {
61
+ type: types_1.SummerVaultType.SummerVaultUSDTArbitrumLR,
62
+ name: 'Lower Risk USDT',
63
+ address: '0x98c49e13bf99d7cad8069faa2a370933ec9ecf17',
64
+ asset: 'USDT',
65
+ network: common_1.NetworkNumber.Arb,
66
+ deploymentBlock: 303594065,
67
+ isLegacy: false,
68
+ };
69
+ exports.SUMMER_VAULT_USDC_BASE_LR = {
70
+ type: types_1.SummerVaultType.SummerVaultUSDCBaseLR,
71
+ name: 'Lower Risk USDC',
72
+ address: '0x98C49e13bf99D7CAd8069faa2A370933EC9EcF17',
73
+ asset: 'USDC',
74
+ network: common_1.NetworkNumber.Base,
75
+ deploymentBlock: 303594065,
76
+ isLegacy: false,
77
+ };
78
+ exports.SUMMER_VAULT_EURC_BASE_LR = {
79
+ type: types_1.SummerVaultType.SummerVaultEURCBaseLR,
80
+ name: 'Lower Risk EURC',
81
+ address: '0x64db8f51f1bf7064bb5a361a7265f602d348e0f0',
82
+ asset: 'EURC',
83
+ network: common_1.NetworkNumber.Base,
84
+ deploymentBlock: 27544064,
85
+ isLegacy: false,
86
+ };
87
+ exports.SUMMER_VAULT_ETH_BASE_LR = {
88
+ type: types_1.SummerVaultType.SummerVaultETHBaseLR,
89
+ name: 'Lower Risk ETH',
90
+ address: '0x2bb9ad69feba5547b7cd57aafe8457d40bf834af',
91
+ asset: 'WETH',
92
+ network: common_1.NetworkNumber.Base,
93
+ deploymentBlock: 29066887,
94
+ isLegacy: false,
95
+ };
96
+ exports.SUMMER_VAULTS = {
97
+ [types_1.SummerVaultType.SummerVaultUSDCMainnetLR]: exports.SUMMER_VAULT_USDC_MAINNET_LR,
98
+ [types_1.SummerVaultType.SummerVaultUSDCMainnetHR]: exports.SUMMER_VAULT_USDC_MAINNET_HR,
99
+ [types_1.SummerVaultType.SummerVaultUSDTMainnetLR]: exports.SUMMER_VAULT_USDT_MAINNET_LR,
100
+ [types_1.SummerVaultType.SummerVaultETHMainnetLR]: exports.SUMMER_VAULT_ETH_MAINNET_LR,
101
+ [types_1.SummerVaultType.SummerVaultETHMainnetHR]: exports.SUMMER_VAULT_ETH_MAINNET_HR,
102
+ [types_1.SummerVaultType.SummerVaultUSDCArbitrumLR]: exports.SUMMER_VAULT_USDC_ARBITRUM_LR,
103
+ [types_1.SummerVaultType.SummerVaultUSDTArbitrumLR]: exports.SUMMER_VAULT_USDT_ARBITRUM_LR,
104
+ [types_1.SummerVaultType.SummerVaultUSDCBaseLR]: exports.SUMMER_VAULT_USDC_BASE_LR,
105
+ [types_1.SummerVaultType.SummerVaultEURCBaseLR]: exports.SUMMER_VAULT_EURC_BASE_LR,
106
+ [types_1.SummerVaultType.SummerVaultETHBaseLR]: exports.SUMMER_VAULT_ETH_BASE_LR,
107
+ };
108
+ const getSummerVault = (type) => exports.SUMMER_VAULTS[type];
109
+ exports.getSummerVault = getSummerVault;
@@ -833,9 +833,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
833
833
  s: import("viem").Hex;
834
834
  value: bigint;
835
835
  v: bigint;
836
- nonce: number;
837
836
  type: "legacy";
838
837
  gas: bigint;
838
+ nonce: number;
839
839
  maxFeePerBlobGas?: undefined | undefined;
840
840
  gasPrice: bigint;
841
841
  maxFeePerGas?: undefined | undefined;
@@ -858,9 +858,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
858
858
  s: import("viem").Hex;
859
859
  value: bigint;
860
860
  v: bigint;
861
- nonce: number;
862
861
  type: "eip2930";
863
862
  gas: bigint;
863
+ nonce: number;
864
864
  maxFeePerBlobGas?: undefined | undefined;
865
865
  gasPrice: bigint;
866
866
  maxFeePerGas?: undefined | undefined;
@@ -883,9 +883,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
883
883
  s: import("viem").Hex;
884
884
  value: bigint;
885
885
  v: bigint;
886
- nonce: number;
887
886
  type: "eip1559";
888
887
  gas: bigint;
888
+ nonce: number;
889
889
  maxFeePerBlobGas?: undefined | undefined;
890
890
  gasPrice?: undefined | undefined;
891
891
  maxFeePerGas: bigint;
@@ -908,9 +908,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
908
908
  s: import("viem").Hex;
909
909
  value: bigint;
910
910
  v: bigint;
911
- nonce: number;
912
911
  type: "eip4844";
913
912
  gas: bigint;
913
+ nonce: number;
914
914
  maxFeePerBlobGas: bigint;
915
915
  gasPrice?: undefined | undefined;
916
916
  maxFeePerGas: bigint;
@@ -933,9 +933,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
933
933
  s: import("viem").Hex;
934
934
  value: bigint;
935
935
  v: bigint;
936
- nonce: number;
937
936
  type: "eip7702";
938
937
  gas: bigint;
938
+ nonce: number;
939
939
  maxFeePerBlobGas?: undefined | undefined;
940
940
  gasPrice?: undefined | undefined;
941
941
  maxFeePerGas: bigint;
@@ -983,9 +983,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
983
983
  s: import("viem").Hex;
984
984
  value: bigint;
985
985
  v: bigint;
986
- nonce: number;
987
986
  type: "legacy";
988
987
  gas: bigint;
988
+ nonce: number;
989
989
  maxFeePerBlobGas?: undefined | undefined;
990
990
  gasPrice: bigint;
991
991
  maxFeePerGas?: undefined | undefined;
@@ -1008,9 +1008,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
1008
1008
  s: import("viem").Hex;
1009
1009
  value: bigint;
1010
1010
  v: bigint;
1011
- nonce: number;
1012
1011
  type: "eip2930";
1013
1012
  gas: bigint;
1013
+ nonce: number;
1014
1014
  maxFeePerBlobGas?: undefined | undefined;
1015
1015
  gasPrice: bigint;
1016
1016
  maxFeePerGas?: undefined | undefined;
@@ -1033,9 +1033,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
1033
1033
  s: import("viem").Hex;
1034
1034
  value: bigint;
1035
1035
  v: bigint;
1036
- nonce: number;
1037
1036
  type: "eip1559";
1038
1037
  gas: bigint;
1038
+ nonce: number;
1039
1039
  maxFeePerBlobGas?: undefined | undefined;
1040
1040
  gasPrice?: undefined | undefined;
1041
1041
  maxFeePerGas: bigint;
@@ -1058,9 +1058,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
1058
1058
  s: import("viem").Hex;
1059
1059
  value: bigint;
1060
1060
  v: bigint;
1061
- nonce: number;
1062
1061
  type: "eip4844";
1063
1062
  gas: bigint;
1063
+ nonce: number;
1064
1064
  maxFeePerBlobGas: bigint;
1065
1065
  gasPrice?: undefined | undefined;
1066
1066
  maxFeePerGas: bigint;
@@ -1083,9 +1083,9 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
1083
1083
  s: import("viem").Hex;
1084
1084
  value: bigint;
1085
1085
  v: bigint;
1086
- nonce: number;
1087
1086
  type: "eip7702";
1088
1087
  gas: bigint;
1088
+ nonce: number;
1089
1089
  maxFeePerBlobGas?: undefined | undefined;
1090
1090
  gasPrice?: undefined | undefined;
1091
1091
  maxFeePerGas: bigint;
@@ -4358,7 +4358,7 @@ export declare const getViemProvider: (provider: EthereumProvider, network: Netw
4358
4358
  authorizationList: import("viem").TransactionSerializableEIP7702["authorizationList"];
4359
4359
  } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) ? T_12 extends "eip7702" ? import("viem").TransactionRequestEIP7702 : never : never : never)>> & {
4360
4360
  chainId?: number | undefined;
4361
- }, (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "nonce" | "type" | "gas" | "blobVersionedHashes" | "fees" | "chainId") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "nonce" | "type" | "gas" | "blobVersionedHashes" | "fees" | "chainId") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
4361
+ }, (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "fees" | "chainId") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import("viem").PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "fees" | "chainId") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
4362
4362
  readContract: <const abi extends Abi | readonly unknown[], functionName extends import("viem").ContractFunctionName<abi, "pure" | "view">, const args extends import("viem").ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import("viem").ReadContractParameters<abi, functionName, args>) => Promise<import("viem").ReadContractReturnType<abi, functionName, args>>;
4363
4363
  sendRawTransaction: (args: import("viem").SendRawTransactionParameters) => Promise<import("viem").SendRawTransactionReturnType>;
4364
4364
  simulate: <const calls extends readonly unknown[]>(args: import("viem").SimulateBlocksParameters<calls>) => Promise<import("viem").SimulateBlocksReturnType<calls>>;
@@ -7,7 +7,7 @@ export declare enum IncentiveEligibilityId {
7
7
  AaveV3ArbitrumEthSupply = "0x5d16261c6715a653248269861bbacf68a9774cde",
8
8
  AaveV3ArbitrumETHLSBorrow = "0x0c84331e39d6658Cd6e6b9ba04736cC4c4734351",
9
9
  AaveV3EthenaLiquidLeveragePlasma = "0xeefac321069fbecc9d6b2aed2948f6d5503d8633BORROW_BL",
10
- AaveV3EthenaLiquidLeveragePlasmaGHO = "replace_when_known"
10
+ AaveV3EthenaLiquidLeveragePlasmaGHO = "2b2f6fefcd3df634"
11
11
  }
12
12
  export declare enum LeverageType {
13
13
  Long = "long",
@@ -12,7 +12,7 @@ var IncentiveEligibilityId;
12
12
  IncentiveEligibilityId["AaveV3ArbitrumEthSupply"] = "0x5d16261c6715a653248269861bbacf68a9774cde";
13
13
  IncentiveEligibilityId["AaveV3ArbitrumETHLSBorrow"] = "0x0c84331e39d6658Cd6e6b9ba04736cC4c4734351";
14
14
  IncentiveEligibilityId["AaveV3EthenaLiquidLeveragePlasma"] = "0xeefac321069fbecc9d6b2aed2948f6d5503d8633BORROW_BL";
15
- IncentiveEligibilityId["AaveV3EthenaLiquidLeveragePlasmaGHO"] = "replace_when_known";
15
+ IncentiveEligibilityId["AaveV3EthenaLiquidLeveragePlasmaGHO"] = "2b2f6fefcd3df634";
16
16
  })(IncentiveEligibilityId || (exports.IncentiveEligibilityId = IncentiveEligibilityId = {}));
17
17
  var LeverageType;
18
18
  (function (LeverageType) {
@@ -3,6 +3,7 @@ import { MakerDsrType } from './makerDsr';
3
3
  import { MorphoVaultType } from './morphoVaults';
4
4
  import { SkySavingsType } from './sky';
5
5
  import { SparkSavingsVaultType } from './sparkSavingsVaults';
6
+ import { SummerVaultType } from './summerVaults';
6
7
  import { YearnV3VaultType } from './yearnV3Vaults';
7
8
  import { YearnVaultType } from './yearnVaults';
8
9
  export * from './morphoVaults';
@@ -10,6 +11,7 @@ export * from './yearnVaults';
10
11
  export * from './makerDsr';
11
12
  export * from './sky';
12
13
  export * from './sparkSavingsVaults';
14
+ export * from './summerVaults';
13
15
  export * from './yearnV3Vaults';
14
16
  export interface SavingsVaultData {
15
17
  poolSize: string;
@@ -18,4 +20,4 @@ export interface SavingsVaultData {
18
20
  asset: string;
19
21
  optionType: string;
20
22
  }
21
- export type SavingsData = Partial<Record<MorphoVaultType | YearnVaultType | MakerDsrType | SkySavingsType | SparkSavingsVaultType | YearnV3VaultType, SavingsVaultData>>;
23
+ export type SavingsData = Partial<Record<MorphoVaultType | YearnVaultType | MakerDsrType | SkySavingsType | SparkSavingsVaultType | SummerVaultType | YearnV3VaultType, SavingsVaultData>>;
@@ -19,4 +19,5 @@ __exportStar(require("./yearnVaults"), exports);
19
19
  __exportStar(require("./makerDsr"), exports);
20
20
  __exportStar(require("./sky"), exports);
21
21
  __exportStar(require("./sparkSavingsVaults"), exports);
22
+ __exportStar(require("./summerVaults"), exports);
22
23
  __exportStar(require("./yearnV3Vaults"), exports);
@@ -0,0 +1,22 @@
1
+ import { EthAddress, NetworkNumber } from '../common';
2
+ export declare enum SummerVaultType {
3
+ SummerVaultUSDCMainnetLR = "summer_vault_usdc_mainnet_lr",
4
+ SummerVaultUSDCMainnetHR = "summer_vault_usdc_mainnet_hr",
5
+ SummerVaultUSDTMainnetLR = "summer_vault_usdt_mainnet_lr",
6
+ SummerVaultETHMainnetLR = "summer_vault_eth_mainnet_lr",
7
+ SummerVaultETHMainnetHR = "summer_vault_eth_mainnet_hr",
8
+ SummerVaultUSDCArbitrumLR = "summer_vault_usdc_arbitrum_lr",
9
+ SummerVaultUSDTArbitrumLR = "summer_vault_usdt_arbitrum_lr",
10
+ SummerVaultUSDCBaseLR = "summer_vault_usdc_base_lr",
11
+ SummerVaultEURCBaseLR = "summer_vault_eurc_base_lr",
12
+ SummerVaultETHBaseLR = "summer_vault_eth_base_lr"
13
+ }
14
+ export interface SummerVault {
15
+ type: SummerVaultType;
16
+ name: string;
17
+ address: EthAddress;
18
+ asset: string;
19
+ network: NetworkNumber;
20
+ deploymentBlock: number;
21
+ isLegacy: boolean;
22
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SummerVaultType = void 0;
4
+ var SummerVaultType;
5
+ (function (SummerVaultType) {
6
+ SummerVaultType["SummerVaultUSDCMainnetLR"] = "summer_vault_usdc_mainnet_lr";
7
+ SummerVaultType["SummerVaultUSDCMainnetHR"] = "summer_vault_usdc_mainnet_hr";
8
+ SummerVaultType["SummerVaultUSDTMainnetLR"] = "summer_vault_usdt_mainnet_lr";
9
+ SummerVaultType["SummerVaultETHMainnetLR"] = "summer_vault_eth_mainnet_lr";
10
+ SummerVaultType["SummerVaultETHMainnetHR"] = "summer_vault_eth_mainnet_hr";
11
+ SummerVaultType["SummerVaultUSDCArbitrumLR"] = "summer_vault_usdc_arbitrum_lr";
12
+ SummerVaultType["SummerVaultUSDTArbitrumLR"] = "summer_vault_usdt_arbitrum_lr";
13
+ SummerVaultType["SummerVaultUSDCBaseLR"] = "summer_vault_usdc_base_lr";
14
+ SummerVaultType["SummerVaultEURCBaseLR"] = "summer_vault_eurc_base_lr";
15
+ SummerVaultType["SummerVaultETHBaseLR"] = "summer_vault_eth_base_lr";
16
+ })(SummerVaultType || (exports.SummerVaultType = SummerVaultType = {}));
@@ -29,7 +29,7 @@ export const aaveV3EmodeCategoriesMapping = (extractedState, usedAssets) => {
29
29
  ? true
30
30
  : !usedAssetsValues.filter(u => u.isBorrowed && !e.borrowAssets.includes(u.symbol)).length;
31
31
  const afterEnteringCategory = aaveAnyGetAggregatedPositionData(Object.assign(Object.assign({}, extractedState), { usedAssets, eModeCategory: e.id }));
32
- const willStayOverCollateralized = new Dec(afterEnteringCategory.ratio).eq(0) || new Dec(afterEnteringCategory.ratio).gt(afterEnteringCategory.liqPercent);
32
+ const willStayOverCollateralized = new Dec(afterEnteringCategory.ratio === 'NaN' ? '0' : afterEnteringCategory.ratio).eq(0) || new Dec(afterEnteringCategory.ratio).gt(afterEnteringCategory.liqPercent);
33
33
  const enteringTerms = [borrowingOnlyFromCategory, willStayOverCollateralized];
34
34
  categoriesMapping[e.id] = {
35
35
  enteringTerms,