@defisaver/positions-sdk 2.1.160-shifter-v2-dev → 2.1.161-aave-3.7-dev

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 (141) hide show
  1. package/cjs/aaveV2/index.js +0 -2
  2. package/cjs/aaveV3/index.js +7 -1
  3. package/cjs/curveUsd/index.d.ts +2 -5
  4. package/cjs/curveUsd/index.js +15 -30
  5. package/cjs/fluid/index.d.ts +0 -5
  6. package/cjs/fluid/index.js +1 -36
  7. package/cjs/helpers/aaveHelpers/index.d.ts +9 -1
  8. package/cjs/helpers/aaveHelpers/index.js +23 -9
  9. package/cjs/helpers/aaveV4Helpers/index.js +0 -1
  10. package/cjs/helpers/compoundHelpers/index.js +0 -2
  11. package/cjs/helpers/curveUsdHelpers/index.d.ts +1 -3
  12. package/cjs/helpers/curveUsdHelpers/index.js +2 -16
  13. package/cjs/helpers/fluidHelpers/index.js +0 -1
  14. package/cjs/helpers/liquityV2Helpers/index.js +0 -1
  15. package/cjs/helpers/llamaLendHelpers/index.js +0 -2
  16. package/cjs/helpers/makerHelpers/index.d.ts +1 -1
  17. package/cjs/helpers/makerHelpers/index.js +2 -2
  18. package/cjs/helpers/morphoBlueHelpers/index.js +0 -2
  19. package/cjs/helpers/morphoMidnightHelpers/index.js +0 -2
  20. package/cjs/helpers/sparkHelpers/index.js +0 -1
  21. package/cjs/liquity/index.js +2 -16
  22. package/cjs/maker/index.d.ts +2 -7
  23. package/cjs/maker/index.js +12 -45
  24. package/cjs/markets/index.d.ts +0 -1
  25. package/cjs/markets/index.js +1 -3
  26. package/cjs/portfolio/index.d.ts +1 -5
  27. package/cjs/portfolio/index.js +2 -274
  28. package/cjs/savings/index.js +5 -2
  29. package/cjs/savings/morphoVaults/index.d.ts +1 -1
  30. package/cjs/savings/morphoVaults/index.js +56 -18
  31. package/cjs/savings/morphoVaults/options.d.ts +2 -0
  32. package/cjs/savings/morphoVaults/options.js +61 -1
  33. package/cjs/spark/index.js +1 -0
  34. package/cjs/staking/staking.d.ts +0 -20
  35. package/cjs/staking/staking.js +1 -19
  36. package/cjs/types/aave.d.ts +1 -2
  37. package/cjs/types/aaveV4.d.ts +0 -1
  38. package/cjs/types/compound.d.ts +0 -2
  39. package/cjs/types/curveUsd.d.ts +0 -6
  40. package/cjs/types/fluid.d.ts +0 -1
  41. package/cjs/types/liquity.d.ts +0 -4
  42. package/cjs/types/liquityV2.d.ts +0 -2
  43. package/cjs/types/maker.d.ts +0 -4
  44. package/cjs/types/morphoBlue.d.ts +0 -2
  45. package/cjs/types/morphoMidnight.d.ts +0 -1
  46. package/cjs/types/portfolio.d.ts +10 -26
  47. package/cjs/types/savings/morphoVaults.d.ts +10 -2
  48. package/cjs/types/savings/morphoVaults.js +9 -1
  49. package/cjs/types/spark.d.ts +0 -2
  50. package/esm/aaveV2/index.js +0 -2
  51. package/esm/aaveV3/index.js +7 -1
  52. package/esm/curveUsd/index.d.ts +2 -5
  53. package/esm/curveUsd/index.js +15 -30
  54. package/esm/fluid/index.d.ts +0 -5
  55. package/esm/fluid/index.js +0 -33
  56. package/esm/helpers/aaveHelpers/index.d.ts +9 -1
  57. package/esm/helpers/aaveHelpers/index.js +20 -8
  58. package/esm/helpers/aaveV4Helpers/index.js +0 -1
  59. package/esm/helpers/compoundHelpers/index.js +0 -2
  60. package/esm/helpers/curveUsdHelpers/index.d.ts +1 -3
  61. package/esm/helpers/curveUsdHelpers/index.js +2 -16
  62. package/esm/helpers/fluidHelpers/index.js +0 -1
  63. package/esm/helpers/liquityV2Helpers/index.js +0 -1
  64. package/esm/helpers/llamaLendHelpers/index.js +0 -2
  65. package/esm/helpers/makerHelpers/index.d.ts +1 -1
  66. package/esm/helpers/makerHelpers/index.js +2 -2
  67. package/esm/helpers/morphoBlueHelpers/index.js +0 -2
  68. package/esm/helpers/morphoMidnightHelpers/index.js +0 -2
  69. package/esm/helpers/sparkHelpers/index.js +0 -1
  70. package/esm/liquity/index.js +2 -16
  71. package/esm/maker/index.d.ts +2 -7
  72. package/esm/maker/index.js +13 -44
  73. package/esm/markets/index.d.ts +0 -1
  74. package/esm/markets/index.js +0 -1
  75. package/esm/portfolio/index.d.ts +1 -5
  76. package/esm/portfolio/index.js +5 -276
  77. package/esm/savings/index.js +5 -2
  78. package/esm/savings/morphoVaults/index.d.ts +1 -1
  79. package/esm/savings/morphoVaults/index.js +57 -19
  80. package/esm/savings/morphoVaults/options.d.ts +2 -0
  81. package/esm/savings/morphoVaults/options.js +61 -1
  82. package/esm/spark/index.js +1 -0
  83. package/esm/staking/staking.d.ts +0 -20
  84. package/esm/staking/staking.js +0 -17
  85. package/esm/types/aave.d.ts +1 -2
  86. package/esm/types/aaveV4.d.ts +0 -1
  87. package/esm/types/compound.d.ts +0 -2
  88. package/esm/types/curveUsd.d.ts +0 -6
  89. package/esm/types/fluid.d.ts +0 -1
  90. package/esm/types/liquity.d.ts +0 -4
  91. package/esm/types/liquityV2.d.ts +0 -2
  92. package/esm/types/maker.d.ts +0 -4
  93. package/esm/types/morphoBlue.d.ts +0 -2
  94. package/esm/types/morphoMidnight.d.ts +0 -1
  95. package/esm/types/portfolio.d.ts +10 -26
  96. package/esm/types/savings/morphoVaults.d.ts +10 -2
  97. package/esm/types/savings/morphoVaults.js +8 -0
  98. package/esm/types/spark.d.ts +0 -2
  99. package/package.json +1 -1
  100. package/src/aaveV2/index.ts +0 -2
  101. package/src/aaveV3/index.ts +6 -1
  102. package/src/curveUsd/index.ts +16 -33
  103. package/src/fluid/index.ts +0 -40
  104. package/src/helpers/aaveHelpers/index.ts +24 -10
  105. package/src/helpers/aaveV4Helpers/index.ts +0 -1
  106. package/src/helpers/compoundHelpers/index.ts +0 -2
  107. package/src/helpers/curveUsdHelpers/index.ts +2 -23
  108. package/src/helpers/fluidHelpers/index.ts +0 -1
  109. package/src/helpers/liquityV2Helpers/index.ts +0 -1
  110. package/src/helpers/llamaLendHelpers/index.ts +0 -2
  111. package/src/helpers/makerHelpers/index.ts +1 -2
  112. package/src/helpers/morphoBlueHelpers/index.ts +0 -2
  113. package/src/helpers/morphoMidnightHelpers/index.ts +0 -2
  114. package/src/helpers/sparkHelpers/index.ts +0 -1
  115. package/src/liquity/index.ts +2 -17
  116. package/src/maker/index.ts +29 -77
  117. package/src/markets/index.ts +1 -2
  118. package/src/portfolio/index.ts +4 -259
  119. package/src/savings/index.ts +5 -2
  120. package/src/savings/morphoVaults/index.ts +73 -21
  121. package/src/savings/morphoVaults/options.ts +67 -1
  122. package/src/spark/index.ts +1 -0
  123. package/src/staking/staking.ts +0 -28
  124. package/src/types/aave.ts +1 -3
  125. package/src/types/aaveV4.ts +0 -1
  126. package/src/types/compound.ts +0 -2
  127. package/src/types/curveUsd.ts +0 -7
  128. package/src/types/fluid.ts +0 -1
  129. package/src/types/liquity.ts +0 -6
  130. package/src/types/liquityV2.ts +0 -2
  131. package/src/types/maker.ts +0 -6
  132. package/src/types/morphoBlue.ts +0 -2
  133. package/src/types/morphoMidnight.ts +0 -1
  134. package/src/types/portfolio.ts +12 -31
  135. package/src/types/savings/morphoVaults.ts +11 -1
  136. package/src/types/spark.ts +0 -2
  137. package/cjs/markets/maker/index.d.ts +0 -1
  138. package/cjs/markets/maker/index.js +0 -13
  139. package/esm/markets/maker/index.d.ts +0 -1
  140. package/esm/markets/maker/index.js +0 -10
  141. package/src/markets/maker/index.ts +0 -10
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMorphoVault = exports.MORPHO_VAULTS = exports.MORPHO_VAULT_SMOKEHOUSE_DAI = exports.MORPHO_VAULT_SMOKEHOUSE_USDC = exports.MORPHO_VAULT_SMOKEHOUSE_USDT = exports.MORPHO_VAULT_STEAKHOUSE_PYUSD = exports.MORPHO_VAULT_STEAKHOUSE_ETH = exports.MORPHO_VAULT_STEAKHOUSE_USDC = exports.MORPHO_VAULT_STEAKHOUSE_USDT = exports.MORPHO_VAULT_GAUNTLET_RESOLV_USDC = exports.MORPHO_VAULT_GAUNTLET_USDT_PRIME = exports.MORPHO_VAULT_GAUNTLET_USDA_CORE = exports.MORPHO_VAULT_FLAGSHIP_USDT = exports.MORPHO_VAULT_BOOSTED_USDC = exports.MORPHO_VAULT_GAUNTLET_WETH_PRIME = exports.MORPHO_VAULT_GAUNTLET_WETH_CORE = exports.MORPHO_VAULT_RE7_WETH = exports.MORPHO_VAULT_GAUNTLET_USDC_PRIME = exports.MORPHO_VAULT_GAUNTLET_USDC_CORE = exports.MORPHO_VAULT_FLAGSHIP_ETH = void 0;
3
+ exports.getMorphoVault = exports.MORPHO_VAULTS = exports.MORPHO_VAULT_STEAKHOUSE_USDG_PRO = exports.MORPHO_VAULT_GAUNTLET_USDG_PREMIUM = exports.MORPHO_VAULT_SMOKEHOUSE_DAI = exports.MORPHO_VAULT_SMOKEHOUSE_USDC = exports.MORPHO_VAULT_SMOKEHOUSE_USDT = exports.MORPHO_VAULT_STEAKHOUSE_PYUSD = exports.MORPHO_VAULT_STEAKHOUSE_ETH = exports.MORPHO_VAULT_STEAKHOUSE_USDC = exports.MORPHO_VAULT_STEAKHOUSE_USDT = exports.MORPHO_VAULT_GAUNTLET_RESOLV_USDC = exports.MORPHO_VAULT_GAUNTLET_USDT_PRIME = exports.MORPHO_VAULT_GAUNTLET_USDA_CORE = exports.MORPHO_VAULT_FLAGSHIP_USDT = exports.MORPHO_VAULT_BOOSTED_USDC = exports.MORPHO_VAULT_GAUNTLET_WETH_PRIME = exports.MORPHO_VAULT_GAUNTLET_WETH_CORE = exports.MORPHO_VAULT_RE7_WETH = exports.MORPHO_VAULT_GAUNTLET_USDC_PRIME = exports.MORPHO_VAULT_GAUNTLET_USDC_CORE = exports.MORPHO_VAULT_FLAGSHIP_ETH = void 0;
4
4
  const types_1 = require("../../types");
5
5
  exports.MORPHO_VAULT_FLAGSHIP_ETH = {
6
6
  type: types_1.MorphoVaultType.MorphoVaultFlagshipEth,
7
7
  name: 'Flagship ETH',
8
8
  address: '0x38989BBA00BDF8181F4082995b3DEAe96163aC5D',
9
9
  asset: 'WETH',
10
+ network: types_1.NetworkNumber.Eth,
11
+ version: types_1.MorphoVaultVersion.V1,
10
12
  deploymentBlock: 18927491,
11
13
  isLegacy: true,
12
14
  };
@@ -15,6 +17,8 @@ exports.MORPHO_VAULT_GAUNTLET_USDC_CORE = {
15
17
  name: 'Gauntlet USDC Core',
16
18
  address: '0x8eB67A509616cd6A7c1B3c8C21D48FF57df3d458',
17
19
  asset: 'USDC',
20
+ network: types_1.NetworkNumber.Eth,
21
+ version: types_1.MorphoVaultVersion.V1,
18
22
  deploymentBlock: 19777569,
19
23
  isLegacy: true,
20
24
  };
@@ -23,6 +27,8 @@ exports.MORPHO_VAULT_GAUNTLET_USDC_PRIME = {
23
27
  name: 'Gauntlet USDC Prime',
24
28
  address: '0xdd0f28e19C1780eb6396170735D45153D261490d',
25
29
  asset: 'USDC',
30
+ network: types_1.NetworkNumber.Eth,
31
+ version: types_1.MorphoVaultVersion.V1,
26
32
  deploymentBlock: 19777569,
27
33
  isLegacy: true,
28
34
  };
@@ -31,6 +37,8 @@ exports.MORPHO_VAULT_RE7_WETH = {
31
37
  name: 'RE7 WETH',
32
38
  address: '0x78Fc2c2eD1A4cDb5402365934aE5648aDAd094d0',
33
39
  asset: 'WETH',
40
+ network: types_1.NetworkNumber.Eth,
41
+ version: types_1.MorphoVaultVersion.V1,
34
42
  deploymentBlock: 19121118,
35
43
  isLegacy: true,
36
44
  };
@@ -39,6 +47,8 @@ exports.MORPHO_VAULT_GAUNTLET_WETH_CORE = {
39
47
  name: 'Gauntlet WETH Core',
40
48
  address: '0x4881Ef0BF6d2365D3dd6499ccd7532bcdBCE0658',
41
49
  asset: 'WETH',
50
+ network: types_1.NetworkNumber.Eth,
51
+ version: types_1.MorphoVaultVersion.V1,
42
52
  deploymentBlock: 19541126,
43
53
  isLegacy: true,
44
54
  };
@@ -47,6 +57,8 @@ exports.MORPHO_VAULT_GAUNTLET_WETH_PRIME = {
47
57
  name: 'Gauntlet WETH Prime',
48
58
  address: '0x2371e134e3455e0593363cBF89d3b6cf53740618',
49
59
  asset: 'WETH',
60
+ network: types_1.NetworkNumber.Eth,
61
+ version: types_1.MorphoVaultVersion.V1,
50
62
  deploymentBlock: 19372149,
51
63
  isLegacy: true,
52
64
  };
@@ -55,6 +67,8 @@ exports.MORPHO_VAULT_BOOSTED_USDC = {
55
67
  name: 'Boosted USDC',
56
68
  address: '0xd63070114470f685b75B74D60EEc7c1113d33a3D',
57
69
  asset: 'USDC',
70
+ network: types_1.NetworkNumber.Eth,
71
+ version: types_1.MorphoVaultVersion.V1,
58
72
  deploymentBlock: 20377233,
59
73
  isLegacy: true,
60
74
  };
@@ -63,6 +77,8 @@ exports.MORPHO_VAULT_FLAGSHIP_USDT = {
63
77
  name: 'Flagship USDT',
64
78
  address: '0x2C25f6C25770fFEC5959D34B94Bf898865e5D6b1',
65
79
  asset: 'USDT',
80
+ network: types_1.NetworkNumber.Eth,
81
+ version: types_1.MorphoVaultVersion.V1,
66
82
  deploymentBlock: 19127039,
67
83
  isLegacy: true,
68
84
  };
@@ -71,6 +87,8 @@ exports.MORPHO_VAULT_GAUNTLET_USDA_CORE = {
71
87
  name: 'Gauntlet USDA Core',
72
88
  address: '0x125D41A6e5dbf455cD9Df8F80BCC6fd172D52Cc6',
73
89
  asset: 'USDA',
90
+ network: types_1.NetworkNumber.Eth,
91
+ version: types_1.MorphoVaultVersion.V1,
74
92
  deploymentBlock: 19633608,
75
93
  isLegacy: true,
76
94
  };
@@ -79,6 +97,8 @@ exports.MORPHO_VAULT_GAUNTLET_USDT_PRIME = {
79
97
  name: 'Gauntlet USDT Prime',
80
98
  address: '0x8CB3649114051cA5119141a34C200D65dc0Faa73',
81
99
  asset: 'USDT',
100
+ network: types_1.NetworkNumber.Eth,
101
+ version: types_1.MorphoVaultVersion.V1,
82
102
  deploymentBlock: 19486541,
83
103
  isLegacy: true,
84
104
  };
@@ -87,6 +107,8 @@ exports.MORPHO_VAULT_GAUNTLET_RESOLV_USDC = {
87
107
  name: 'Gauntlet Resolv USDC',
88
108
  address: '0x132E6C9C33A62D7727cd359b1f51e5B566E485Eb',
89
109
  asset: 'USDC',
110
+ network: types_1.NetworkNumber.Eth,
111
+ version: types_1.MorphoVaultVersion.V1,
90
112
  deploymentBlock: 21487882,
91
113
  isLegacy: true,
92
114
  };
@@ -96,6 +118,8 @@ exports.MORPHO_VAULT_STEAKHOUSE_USDT = {
96
118
  name: 'Steakhouse USDT',
97
119
  address: '0xbEef047a543E45807105E51A8BBEFCc5950fcfBa',
98
120
  asset: 'USDT',
121
+ network: types_1.NetworkNumber.Eth,
122
+ version: types_1.MorphoVaultVersion.V1,
99
123
  deploymentBlock: 19043398,
100
124
  isLegacy: false,
101
125
  };
@@ -104,6 +128,8 @@ exports.MORPHO_VAULT_STEAKHOUSE_USDC = {
104
128
  name: 'Steakhouse USDC',
105
129
  address: '0xBEEF01735c132Ada46AA9aA4c54623cAA92A64CB',
106
130
  asset: 'USDC',
131
+ network: types_1.NetworkNumber.Eth,
132
+ version: types_1.MorphoVaultVersion.V1,
107
133
  deploymentBlock: 18928285,
108
134
  isLegacy: false,
109
135
  };
@@ -112,6 +138,8 @@ exports.MORPHO_VAULT_STEAKHOUSE_ETH = {
112
138
  name: 'Steakhouse WETH',
113
139
  address: '0xBEEf050ecd6a16c4e7bfFbB52Ebba7846C4b8cD4',
114
140
  asset: 'WETH',
141
+ network: types_1.NetworkNumber.Eth,
142
+ version: types_1.MorphoVaultVersion.V1,
115
143
  deploymentBlock: 19380443,
116
144
  isLegacy: false,
117
145
  };
@@ -120,6 +148,8 @@ exports.MORPHO_VAULT_STEAKHOUSE_PYUSD = {
120
148
  name: 'Steakhouse PYUSD',
121
149
  address: '0xbEEF02e5E13584ab96848af90261f0C8Ee04722a',
122
150
  asset: 'PYUSD',
151
+ network: types_1.NetworkNumber.Eth,
152
+ version: types_1.MorphoVaultVersion.V1,
123
153
  deploymentBlock: 19043398,
124
154
  isLegacy: false,
125
155
  };
@@ -129,6 +159,8 @@ exports.MORPHO_VAULT_SMOKEHOUSE_USDT = {
129
159
  name: 'Smokehouse USDT',
130
160
  address: '0xA0804346780b4c2e3bE118ac957D1DB82F9d7484',
131
161
  asset: 'USDT',
162
+ network: types_1.NetworkNumber.Eth,
163
+ version: types_1.MorphoVaultVersion.V1,
132
164
  deploymentBlock: 21522238,
133
165
  isLegacy: false,
134
166
  };
@@ -137,6 +169,8 @@ exports.MORPHO_VAULT_SMOKEHOUSE_USDC = {
137
169
  name: 'Smokehouse USDC',
138
170
  address: '0xBEeFFF209270748ddd194831b3fa287a5386f5bC',
139
171
  asset: 'USDC',
172
+ network: types_1.NetworkNumber.Eth,
173
+ version: types_1.MorphoVaultVersion.V1,
140
174
  deploymentBlock: 21337719,
141
175
  isLegacy: false,
142
176
  };
@@ -145,9 +179,32 @@ exports.MORPHO_VAULT_SMOKEHOUSE_DAI = {
145
179
  name: 'Smokehouse DAI',
146
180
  address: '0xbeeFfF68CC520D68f82641EFF84330C631E2490E',
147
181
  asset: 'DAI',
182
+ network: types_1.NetworkNumber.Eth,
183
+ version: types_1.MorphoVaultVersion.V1,
148
184
  deploymentBlock: 21343808,
149
185
  isLegacy: false,
150
186
  };
187
+ // Vault V2
188
+ exports.MORPHO_VAULT_GAUNTLET_USDG_PREMIUM = {
189
+ type: types_1.MorphoVaultType.MorphoVaultGauntletUSDGPremium,
190
+ name: 'Gauntlet USDG Premium',
191
+ address: '0x390c1bb01F3F627144a40617e287d4cE3D5aBCfa',
192
+ asset: 'USDG',
193
+ network: types_1.NetworkNumber.Arb,
194
+ version: types_1.MorphoVaultVersion.V2,
195
+ deploymentBlock: 510799903,
196
+ isLegacy: false,
197
+ };
198
+ exports.MORPHO_VAULT_STEAKHOUSE_USDG_PRO = {
199
+ type: types_1.MorphoVaultType.MorphoVaultSteakhouseUSDGPro,
200
+ name: 'Steakhouse USDG Pro',
201
+ address: '0xbeeFf72B77e7584a450E887125F25E8D8819016a',
202
+ asset: 'USDG',
203
+ network: types_1.NetworkNumber.Arb,
204
+ version: types_1.MorphoVaultVersion.V2,
205
+ deploymentBlock: 512247107,
206
+ isLegacy: false,
207
+ };
151
208
  exports.MORPHO_VAULTS = {
152
209
  [types_1.MorphoVaultType.MorphoVaultFlagshipEth]: exports.MORPHO_VAULT_FLAGSHIP_ETH,
153
210
  [types_1.MorphoVaultType.MorphoVaultGauntletUSDCCore]: exports.MORPHO_VAULT_GAUNTLET_USDC_CORE,
@@ -169,6 +226,9 @@ exports.MORPHO_VAULTS = {
169
226
  [types_1.MorphoVaultType.MorphoVaultSmokehouseUSDT]: exports.MORPHO_VAULT_SMOKEHOUSE_USDT,
170
227
  [types_1.MorphoVaultType.MorphoVaultSmokehouseUSDC]: exports.MORPHO_VAULT_SMOKEHOUSE_USDC,
171
228
  [types_1.MorphoVaultType.MorphoVaultSmokehouseDAI]: exports.MORPHO_VAULT_SMOKEHOUSE_DAI,
229
+ // Vault V2
230
+ [types_1.MorphoVaultType.MorphoVaultGauntletUSDGPremium]: exports.MORPHO_VAULT_GAUNTLET_USDG_PREMIUM,
231
+ [types_1.MorphoVaultType.MorphoVaultSteakhouseUSDGPro]: exports.MORPHO_VAULT_STEAKHOUSE_USDG_PRO,
172
232
  };
173
233
  const getMorphoVault = (type) => exports.MORPHO_VAULTS[type];
174
234
  exports.getMorphoVault = getMorphoVault;
@@ -88,6 +88,7 @@ const _getSparkMarketsData = (provider, network, selectedMarket) => __awaiter(vo
88
88
  collateralAssets: eModeCategoriesData[emodeCategoryId] ? [...eModeCategoriesData[emodeCategoryId].collateralAssets, selectedMarket.assets[i]] : [selectedMarket.assets[i]],
89
89
  borrowAssets: eModeCategoriesData[emodeCategoryId] ? [...eModeCategoriesData[emodeCategoryId].borrowAssets, selectedMarket.assets[i]] : [selectedMarket.assets[i]],
90
90
  ltvZeroAssets: [],
91
+ isolated: false,
91
92
  };
92
93
  return ({
93
94
  symbol: selectedMarket.assets[i],
@@ -3,26 +3,6 @@ import { MMAssetsData, MMUsedAssets } from '../types/common';
3
3
  export declare const STAKING_ASSETS: string[];
4
4
  export declare const getStakingApy: ((asset: string, network?: number) => Promise<string>) & memoize.Memoized<(asset: string, network?: number) => Promise<string>>;
5
5
  export declare const calculateInterestEarned: (principal: string, interest: string, type: string, apy?: boolean) => number;
6
- /**
7
- * Net APY for positions that have a single known borrow rate (and optionally a single supply rate)
8
- * instead of per-asset `assetsData` to feed into `calculateNetApy` (Maker, crvUSD, Liquity v1).
9
- * All rates are yearly percentages that are already compounded. `incentives` are extra yields
10
- * (e.g. the native staking yield of the collateral) applied to their own USD base and summed into `incentiveUsd`.
11
- */
12
- export declare const calculateNetApyFromRates: ({ suppliedUsd, borrowedUsd, supplyRate, borrowRate, incentives, }: {
13
- suppliedUsd: string;
14
- borrowedUsd: string;
15
- supplyRate?: string;
16
- borrowRate?: string;
17
- incentives?: {
18
- apy: string;
19
- amountUsd: string;
20
- }[];
21
- }) => {
22
- netApy: string;
23
- totalInterestUsd: string;
24
- incentiveUsd: string;
25
- };
26
6
  export declare const calculateNetApy: ({ usedAssets, assetsData, optionalData, }: {
27
7
  usedAssets: MMUsedAssets;
28
8
  assetsData: MMAssetsData;
@@ -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.calculateNetApy = exports.calculateNetApyFromRates = exports.calculateInterestEarned = exports.getStakingApy = exports.STAKING_ASSETS = void 0;
15
+ exports.calculateNetApy = exports.calculateInterestEarned = exports.getStakingApy = exports.STAKING_ASSETS = void 0;
16
16
  const decimal_js_1 = __importDefault(require("decimal.js"));
17
17
  const memoizee_1 = __importDefault(require("memoizee"));
18
18
  const common_1 = require("../types/common");
@@ -189,24 +189,6 @@ const calculateInterestEarned = (principal, interest, type, apy = false) => {
189
189
  return (+principal * (Math.pow(((1 + (+interest / 100) / constants_1.BLOCKS_IN_A_YEAR)), (constants_1.BLOCKS_IN_A_YEAR * interval)))) - +principal; // eslint-disable-line
190
190
  };
191
191
  exports.calculateInterestEarned = calculateInterestEarned;
192
- /**
193
- * Net APY for positions that have a single known borrow rate (and optionally a single supply rate)
194
- * instead of per-asset `assetsData` to feed into `calculateNetApy` (Maker, crvUSD, Liquity v1).
195
- * All rates are yearly percentages that are already compounded. `incentives` are extra yields
196
- * (e.g. the native staking yield of the collateral) applied to their own USD base and summed into `incentiveUsd`.
197
- */
198
- const calculateNetApyFromRates = ({ suppliedUsd, borrowedUsd, supplyRate = '0', borrowRate = '0', incentives = [], }) => {
199
- const supplyInterest = new decimal_js_1.default((0, exports.calculateInterestEarned)(suppliedUsd, supplyRate, 'year', true));
200
- const borrowInterest = new decimal_js_1.default((0, exports.calculateInterestEarned)(borrowedUsd, borrowRate, 'year', true));
201
- const incentiveUsd = incentives
202
- .reduce((acc, { apy, amountUsd }) => acc.add((0, exports.calculateInterestEarned)(amountUsd, apy, 'year', true)), new decimal_js_1.default(0))
203
- .toString();
204
- const totalInterestUsd = supplyInterest.sub(borrowInterest).add(incentiveUsd).toString();
205
- const balance = new decimal_js_1.default(suppliedUsd).sub(borrowedUsd);
206
- const netApy = balance.isZero() ? '0' : new decimal_js_1.default(totalInterestUsd).div(balance).times(100).toString();
207
- return { netApy, totalInterestUsd, incentiveUsd };
208
- };
209
- exports.calculateNetApyFromRates = calculateNetApyFromRates;
210
192
  const calculateNetApy = ({ usedAssets, assetsData, optionalData, }) => {
211
193
  const sumValues = Object.values(usedAssets).reduce((_acc, usedAsset) => {
212
194
  const acc = Object.assign({}, _acc);
@@ -40,6 +40,7 @@ export interface EModeCategoryData {
40
40
  borrowAssets: string[];
41
41
  ltvzeroBitmap?: string;
42
42
  ltvZeroAssets: string[];
43
+ isolated: boolean;
43
44
  }
44
45
  export interface EModeCategoryDataMapping {
45
46
  enteringTerms: boolean[];
@@ -126,7 +127,6 @@ export interface AavePositionData extends MMPositionData {
126
127
  minRatio: string;
127
128
  collRatio: string;
128
129
  safetyRatioWithLtvZeroFallback?: string;
129
- safetyRatio?: string;
130
130
  suppliedUsd: string;
131
131
  borrowedUsd: string;
132
132
  borrowLimitUsd: string;
@@ -160,7 +160,6 @@ export interface AaveV3AggregatedPositionData {
160
160
  collRatio: string;
161
161
  borrowLimitWithLtvZeroFallbackUsd: string;
162
162
  safetyRatioWithLtvZeroFallback: string;
163
- safetyRatio: string;
164
163
  netApy: string;
165
164
  incentiveUsd: string;
166
165
  totalInterestUsd: string;
@@ -169,7 +169,6 @@ export interface AaveV4AggregatedPositionData {
169
169
  leftToBorrowUsd: string;
170
170
  ratio: string;
171
171
  collRatio: string;
172
- safetyRatio: string;
173
172
  liqRatio: string;
174
173
  liqPercent: string;
175
174
  leveragedType: LeverageType;
@@ -96,7 +96,6 @@ export interface CompoundAggregatedPositionData {
96
96
  leftToBorrowUsd: string;
97
97
  ratio: string;
98
98
  collRatio: string;
99
- safetyRatio: string;
100
99
  netApy: string;
101
100
  incentiveUsd: string;
102
101
  totalInterestUsd: string;
@@ -116,7 +115,6 @@ export interface CompoundAggregatedPositionData {
116
115
  export interface CompoundPositionData extends MMPositionData {
117
116
  ratio: string;
118
117
  minRatio: string;
119
- safetyRatio?: string;
120
118
  suppliedUsd: string;
121
119
  borrowedUsd: string;
122
120
  borrowLimitUsd: string;
@@ -73,9 +73,6 @@ export interface CrvUSDAggregatedPositionData {
73
73
  collFactor: string;
74
74
  leveragedType: LeverageType;
75
75
  exposure: string;
76
- netApy: string;
77
- totalInterestUsd: string;
78
- incentiveUsd: string;
79
76
  leveragedAsset?: string;
80
77
  liquidationPrice?: string;
81
78
  }
@@ -116,7 +113,4 @@ export interface CrvUSDUserData {
116
113
  collateralPrice: string;
117
114
  collRatio: string;
118
115
  exposure: string;
119
- netApy: string;
120
- totalInterestUsd: string;
121
- incentiveUsd: string;
122
116
  }
@@ -323,7 +323,6 @@ export interface FluidAggregatedVaultData {
323
323
  merklBorrowIncentives: IncentiveData[];
324
324
  ratio: string;
325
325
  collRatio: string;
326
- safetyRatio: string;
327
326
  minRatio: string;
328
327
  totalInterestUsd: string;
329
328
  leveragedType?: LeverageType;
@@ -24,11 +24,7 @@ export interface LiquityTroveInfo {
24
24
  totalETH: string;
25
25
  totalLUSD: string;
26
26
  minCollateralRatio: number;
27
- safetyRatio: string;
28
27
  priceForRecovery: string;
29
28
  debtInFront: string;
30
29
  exposure: string;
31
- netApy: string;
32
- totalInterestUsd: string;
33
- incentiveUsd: string;
34
30
  }
@@ -94,7 +94,6 @@ export interface LiquityV2AggregatedTroveData {
94
94
  liquidationPrice: string;
95
95
  ratio: string;
96
96
  collRatio: string;
97
- safetyRatio: string;
98
97
  exposure: string;
99
98
  }
100
99
  export interface LiquityV2TroveData {
@@ -102,7 +101,6 @@ export interface LiquityV2TroveData {
102
101
  troveId: string;
103
102
  ratio: string;
104
103
  collRatio: string;
105
- safetyRatio?: string;
106
104
  liqRatio: string;
107
105
  borrowLimitRatio: string;
108
106
  interestRate: string;
@@ -43,7 +43,6 @@ export interface CdpData {
43
43
  debtAssetMarketPrice: string;
44
44
  liquidationPrice: string;
45
45
  ratio: string;
46
- safetyRatio: string;
47
46
  liqRatio: string;
48
47
  liqPercent: number;
49
48
  assetPrice: string;
@@ -59,7 +58,4 @@ export interface CdpData {
59
58
  liquidationFee: string;
60
59
  lastUpdated: number;
61
60
  exposure: string;
62
- netApy: string;
63
- totalInterestUsd: string;
64
- incentiveUsd: string;
65
61
  }
@@ -185,7 +185,6 @@ export interface MorphoBlueAggregatedPositionData {
185
185
  totalInterestUsd: string;
186
186
  ltv: string;
187
187
  ratio: string;
188
- safetyRatio: string;
189
188
  leveragedType: LeverageType;
190
189
  leveragedAsset?: string;
191
190
  currentVolatilePairRatio?: string;
@@ -208,7 +207,6 @@ export interface MorphoBluePositionData {
208
207
  totalInterestUsd: string;
209
208
  ltv: string;
210
209
  ratio: string;
211
- safetyRatio?: string;
212
210
  leveragedType: LeverageType;
213
211
  leveragedAsset?: string;
214
212
  currentVolatilePairRatio?: string;
@@ -170,7 +170,6 @@ export interface MorphoMidnightAggregatedPositionData {
170
170
  ltv: string;
171
171
  ratio: string;
172
172
  healthRatio: string;
173
- safetyRatio: string;
174
173
  leveragedType: LeverageType;
175
174
  leveragedAsset?: string;
176
175
  currentVolatilePairRatio?: string;
@@ -1,16 +1,15 @@
1
- import { AaveV2MarketData, AaveV2PositionData, AaveV3MarketData, AaveV3PositionData, AaveVersions } from './aave';
2
- import { AaveV4AccountData, AaveV4SpokeData, AaveV4SpokesType } from './aaveV4';
1
+ import { AaveV2PositionData, AaveV3PositionData, AaveVersions } from './aave';
2
+ import { AaveV4AccountData, AaveV4SpokesType } from './aaveV4';
3
3
  import { EthAddress } from './common';
4
- import { CompoundV2MarketsData, CompoundV2PositionData, CompoundV3MarketsData, CompoundV3PositionData, CompoundVersions } from './compound';
5
- import { CrvUSDGlobalMarketData, CrvUSDUserData, CrvUSDVersions } from './curveUsd';
6
- import { FluidMarketData, FluidVaultData } from './fluid';
4
+ import { CompoundV2PositionData, CompoundV3PositionData, CompoundVersions } from './compound';
5
+ import { CrvUSDUserData, CrvUSDVersions } from './curveUsd';
6
+ import { FluidVaultData } from './fluid';
7
7
  import { LiquityTroveInfo } from './liquity';
8
- import { LiquityV2MarketData } from './liquityV2';
9
- import { LlamaLendGlobalMarketData, LlamaLendUserData, LlamaLendVersionsType } from './llamaLend';
10
- import { CdpData, IlkInfo } from './maker';
11
- import { MorphoBlueMarketInfo, MorphoBluePositionData, MorphoBlueVersions } from './morphoBlue';
12
- import { MorphoMidnightMarketInfo, MorphoMidnightPositionData, MorphoMidnightVersions } from './morphoMidnight';
13
- import { SparkMarketsData, SparkPositionData, SparkVersions } from './spark';
8
+ import { LlamaLendUserData, LlamaLendVersionsType } from './llamaLend';
9
+ import { CdpData } from './maker';
10
+ import { MorphoBluePositionData, MorphoBlueVersions } from './morphoBlue';
11
+ import { MorphoMidnightPositionData, MorphoMidnightVersions } from './morphoMidnight';
12
+ import { SparkPositionData, SparkVersions } from './spark';
14
13
  export interface PortfolioProtocolData<T> {
15
14
  error: string;
16
15
  data: T | null;
@@ -60,18 +59,3 @@ export interface PortfolioPositionsDataForAddress {
60
59
  export interface PortfolioPositionsData {
61
60
  [key: EthAddress]: PortfolioPositionsDataForAddress;
62
61
  }
63
- export interface PortfolioMarketsData {
64
- morphoMarketsData: Record<string, MorphoBlueMarketInfo>;
65
- morphoMidnightMarketsData: Record<string, MorphoMidnightMarketInfo>;
66
- compoundV3MarketsData: Record<string, CompoundV3MarketsData>;
67
- sparkMarketsData: Record<string, SparkMarketsData>;
68
- aaveV3MarketsData: Record<string, AaveV3MarketData>;
69
- aaveV2MarketsData: Record<string, AaveV2MarketData>;
70
- compoundV2MarketsData: Record<string, CompoundV2MarketsData>;
71
- crvUsdMarketsData: Record<string, CrvUSDGlobalMarketData>;
72
- llamaLendMarketsData: Record<string, LlamaLendGlobalMarketData>;
73
- liquityV2MarketsData: Record<string, LiquityV2MarketData>;
74
- aaveV4SpokesData: Record<string, AaveV4SpokeData>;
75
- fluidMarketsData: Record<string, FluidMarketData>;
76
- makerMarketsData: Record<string, IlkInfo>;
77
- }
@@ -1,4 +1,4 @@
1
- import { EthAddress } from '../common';
1
+ import { EthAddress, NetworkNumber } from '../common';
2
2
  export declare enum MorphoVaultType {
3
3
  MorphoVaultFlagshipEth = "morpho_vault_flagship_eth",
4
4
  MorphoVaultGauntletUSDCCore = "morpho_vault_gauntlet_usdc_core",
@@ -17,13 +17,21 @@ export declare enum MorphoVaultType {
17
17
  MorphoVaultSteakhousePYUSD = "morpho_vault_steakhouse_pyusd",
18
18
  MorphoVaultSmokehouseUSDT = "morpho_vault_smokehouse_usdt",
19
19
  MorphoVaultSmokehouseUSDC = "morpho_vault_smokehouse_usdc",
20
- MorphoVaultSmokehouseDAI = "morpho_vault_smokehouse_dai"
20
+ MorphoVaultSmokehouseDAI = "morpho_vault_smokehouse_dai",
21
+ MorphoVaultGauntletUSDGPremium = "morpho_vault_gauntlet_usdg_premium",
22
+ MorphoVaultSteakhouseUSDGPro = "morpho_vault_steakhouse_usdg_pro"
23
+ }
24
+ export declare enum MorphoVaultVersion {
25
+ V1 = 1,
26
+ V2 = 2
21
27
  }
22
28
  export interface MorphoVault {
23
29
  type: MorphoVaultType;
24
30
  name: string;
25
31
  address: EthAddress;
26
32
  asset: string;
33
+ network: NetworkNumber;
34
+ version: MorphoVaultVersion;
27
35
  deploymentBlock: number;
28
36
  isLegacy: boolean;
29
37
  }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MorphoVaultType = void 0;
3
+ exports.MorphoVaultVersion = exports.MorphoVaultType = void 0;
4
4
  var MorphoVaultType;
5
5
  (function (MorphoVaultType) {
6
6
  MorphoVaultType["MorphoVaultFlagshipEth"] = "morpho_vault_flagship_eth";
@@ -23,4 +23,12 @@ var MorphoVaultType;
23
23
  MorphoVaultType["MorphoVaultSmokehouseUSDT"] = "morpho_vault_smokehouse_usdt";
24
24
  MorphoVaultType["MorphoVaultSmokehouseUSDC"] = "morpho_vault_smokehouse_usdc";
25
25
  MorphoVaultType["MorphoVaultSmokehouseDAI"] = "morpho_vault_smokehouse_dai";
26
+ // Vault V2
27
+ MorphoVaultType["MorphoVaultGauntletUSDGPremium"] = "morpho_vault_gauntlet_usdg_premium";
28
+ MorphoVaultType["MorphoVaultSteakhouseUSDGPro"] = "morpho_vault_steakhouse_usdg_pro";
26
29
  })(MorphoVaultType || (exports.MorphoVaultType = MorphoVaultType = {}));
30
+ var MorphoVaultVersion;
31
+ (function (MorphoVaultVersion) {
32
+ MorphoVaultVersion[MorphoVaultVersion["V1"] = 1] = "V1";
33
+ MorphoVaultVersion[MorphoVaultVersion["V2"] = 2] = "V2";
34
+ })(MorphoVaultVersion || (exports.MorphoVaultVersion = MorphoVaultVersion = {}));
@@ -85,7 +85,6 @@ export interface SparkAggregatedPositionData {
85
85
  leftToBorrowUsd: string;
86
86
  ratio: string;
87
87
  collRatio: string;
88
- safetyRatio: string;
89
88
  netApy: string;
90
89
  incentiveUsd: string;
91
90
  totalInterestUsd: string;
@@ -105,7 +104,6 @@ export interface SparkPositionData extends MMPositionData {
105
104
  ratio: string;
106
105
  minRatio: string;
107
106
  collRatio: string;
108
- safetyRatio?: string;
109
107
  suppliedUsd: string;
110
108
  borrowedUsd: string;
111
109
  borrowLimitUsd: string;
@@ -167,8 +167,6 @@ export const _getAaveV2AccountData = (provider, network, address, assetsData, ma
167
167
  payload.collRatio = payload.borrowedUsd && payload.borrowedUsd !== '0'
168
168
  ? new Dec(payload.suppliedCollateralUsd).div(payload.borrowedUsd).mul(100).toString()
169
169
  : '0';
170
- // Aave v2 has no LTV-0 fallback (AaveV3View only), so its safety ratio is the plain ratio.
171
- payload.safetyRatio = payload.ratio;
172
170
  // Calculate borrow limits per asset
173
171
  Object.values(payload.usedAssets).forEach((item) => {
174
172
  if (item.isBorrowed) {
@@ -31,7 +31,10 @@ export const aaveV3EmodeCategoriesMapping = (extractedState, usedAssets) => {
31
31
  : !usedAssetsValues.filter(u => u.isBorrowed && !e.borrowAssets.includes(u.symbol)).length;
32
32
  const afterEnteringCategory = aaveAnyGetAggregatedPositionData(Object.assign(Object.assign({}, extractedState), { usedAssets, eModeCategory: e.id }));
33
33
  const willStayOverCollateralized = new Dec(afterEnteringCategory.ratio === 'NaN' ? '0' : afterEnteringCategory.ratio).eq(0) || new Dec(afterEnteringCategory.ratio).gt(afterEnteringCategory.liqPercent);
34
- const enteringTerms = [borrowingOnlyFromCategory, willStayOverCollateralized];
34
+ const collateralOnlyFromCategory = e.id === 0 || !e.isolated
35
+ ? true
36
+ : !usedAssetsValues.filter(u => u.isSupplied && u.collateral && !e.collateralAssets.includes(u.symbol)).length;
37
+ const enteringTerms = [borrowingOnlyFromCategory, willStayOverCollateralized, collateralOnlyFromCategory];
35
38
  categoriesMapping[e.id] = {
36
39
  enteringTerms,
37
40
  canEnterCategory: !enteringTerms.includes(false),
@@ -48,6 +51,7 @@ export const aaveV3EmodeCategoriesMapping = (extractedState, usedAssets) => {
48
51
  };
49
52
  export function _getAaveV3MarketData(provider_1, network_1, market_1) {
50
53
  return __awaiter(this, arguments, void 0, function* (provider, network, market, blockNumber = 'latest') {
54
+ var _a;
51
55
  const _addresses = market.assets.map(a => getAssetInfo(getWrappedNativeAssetFromUnwrapped(a), network).address);
52
56
  const loanInfoContract = AaveV3ViewContractViem(provider, network);
53
57
  const aaveIncentivesContract = AaveIncentiveDataProviderV3ContractViem(provider, network);
@@ -81,6 +85,7 @@ export function _getAaveV3MarketData(provider_1, network_1, market_1) {
81
85
  borrowableBitmap: eModesInfo[i].borrowableBitmap.toString(),
82
86
  collateralBitmap: eModesInfo[i].collateralBitmap.toString(),
83
87
  ltvzeroBitmap: eModesInfo[i].ltvzeroBitmap.toString(),
88
+ isolated: (_a = eModesInfo[i].isolated) !== null && _a !== void 0 ? _a : false,
84
89
  borrowAssets: [],
85
90
  collateralAssets: [],
86
91
  ltvZeroAssets: [],
@@ -296,6 +301,7 @@ export function _getAaveV3MarketData(provider_1, network_1, market_1) {
296
301
  collateralAssets: assetsData.map((a) => a.symbol),
297
302
  borrowAssets: assetsData.map((a) => a.symbol),
298
303
  ltvZeroAssets: [],
304
+ isolated: false,
299
305
  };
300
306
  return { assetsData: payload, eModeCategoriesData };
301
307
  });
@@ -5,9 +5,6 @@ export declare const _getCurveUsdGlobalData: (provider: Client, network: Network
5
5
  export declare const getCurveUsdGlobalData: (provider: EthereumProvider, network: NetworkNumber, selectedMarket: CrvUSDMarketData) => Promise<CrvUSDGlobalMarketData>;
6
6
  export declare const _getCrvUsdAccountBalances: (provider: Client, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress, controllerAddress: EthAddress) => Promise<PositionBalances>;
7
7
  export declare const getCrvUsdAccountBalances: (provider: EthereumProvider, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress, controllerAddress: EthAddress) => Promise<PositionBalances>;
8
- /**
9
- * @param borrowRate market borrow APY in % (`CrvUSDGlobalMarketData.borrowRate`); when omitted it is read from the view contract
10
- */
11
- export declare const _getCurveUsdUserData: (provider: Client, network: NetworkNumber, address: EthAddress, selectedMarket: CrvUSDMarketData, activeBand: string, borrowRate?: string) => Promise<CrvUSDUserData>;
12
- export declare const getCurveUsdUserData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: CrvUSDMarketData, activeBand: string, borrowRate?: string) => Promise<CrvUSDUserData>;
8
+ export declare const _getCurveUsdUserData: (provider: Client, network: NetworkNumber, address: EthAddress, selectedMarket: CrvUSDMarketData, activeBand: string) => Promise<CrvUSDUserData>;
9
+ export declare const getCurveUsdUserData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: CrvUSDMarketData, activeBand: string) => Promise<CrvUSDUserData>;
13
10
  export declare const getCurveUsdFullPositionData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: CrvUSDMarketData) => Promise<CrvUSDUserData>;