@defisaver/positions-sdk 2.1.24-dev-savings-3 → 2.1.25-dev-pt-feb-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 (88) hide show
  1. package/cjs/config/contracts.d.ts +0 -173
  2. package/cjs/config/contracts.js +1 -23
  3. package/cjs/contracts.d.ts +0 -1650
  4. package/cjs/contracts.js +1 -22
  5. package/cjs/fluid/index.js +4 -16
  6. package/cjs/index.d.ts +1 -2
  7. package/cjs/index.js +1 -3
  8. package/cjs/markets/aave/marketAssets.js +1 -1
  9. package/cjs/moneymarket/moneymarketCommonService.js +1 -0
  10. package/cjs/staking/staking.js +5 -0
  11. package/cjs/types/index.d.ts +0 -1
  12. package/cjs/types/index.js +0 -1
  13. package/esm/config/contracts.d.ts +0 -173
  14. package/esm/config/contracts.js +0 -22
  15. package/esm/contracts.d.ts +0 -1650
  16. package/esm/contracts.js +0 -18
  17. package/esm/fluid/index.js +4 -16
  18. package/esm/index.d.ts +1 -2
  19. package/esm/index.js +1 -2
  20. package/esm/markets/aave/marketAssets.js +1 -1
  21. package/esm/moneymarket/moneymarketCommonService.js +1 -0
  22. package/esm/staking/staking.js +5 -0
  23. package/esm/types/index.d.ts +0 -1
  24. package/esm/types/index.js +0 -1
  25. package/package.json +3 -4
  26. package/src/config/contracts.ts +1 -23
  27. package/src/contracts.ts +1 -23
  28. package/src/fluid/index.ts +4 -17
  29. package/src/index.ts +0 -2
  30. package/src/markets/aave/marketAssets.ts +1 -1
  31. package/src/moneymarket/moneymarketCommonService.ts +1 -0
  32. package/src/staking/staking.ts +3 -0
  33. package/src/types/index.ts +1 -2
  34. package/cjs/savings/index.d.ts +0 -7
  35. package/cjs/savings/index.js +0 -75
  36. package/cjs/savings/makerDSR/index.d.ts +0 -7
  37. package/cjs/savings/makerDSR/index.js +0 -94
  38. package/cjs/savings/makerDSR/options.d.ts +0 -2
  39. package/cjs/savings/makerDSR/options.js +0 -11
  40. package/cjs/savings/morphoVaults/index.d.ts +0 -7
  41. package/cjs/savings/morphoVaults/index.js +0 -118
  42. package/cjs/savings/morphoVaults/options.d.ts +0 -16
  43. package/cjs/savings/morphoVaults/options.js +0 -112
  44. package/cjs/savings/yearnVaults/index.d.ts +0 -9
  45. package/cjs/savings/yearnVaults/index.js +0 -113
  46. package/cjs/savings/yearnVaults/options.d.ts +0 -6
  47. package/cjs/savings/yearnVaults/options.js +0 -29
  48. package/cjs/types/savings/index.d.ts +0 -15
  49. package/cjs/types/savings/index.js +0 -19
  50. package/cjs/types/savings/makerDsr.d.ts +0 -11
  51. package/cjs/types/savings/makerDsr.js +0 -7
  52. package/cjs/types/savings/morphoVaults.d.ts +0 -23
  53. package/cjs/types/savings/morphoVaults.js +0 -19
  54. package/cjs/types/savings/yearnVaults.d.ts +0 -12
  55. package/cjs/types/savings/yearnVaults.js +0 -9
  56. package/esm/savings/index.d.ts +0 -7
  57. package/esm/savings/index.js +0 -36
  58. package/esm/savings/makerDSR/index.d.ts +0 -7
  59. package/esm/savings/makerDSR/index.js +0 -53
  60. package/esm/savings/makerDSR/options.d.ts +0 -2
  61. package/esm/savings/makerDSR/options.js +0 -8
  62. package/esm/savings/morphoVaults/index.d.ts +0 -7
  63. package/esm/savings/morphoVaults/index.js +0 -77
  64. package/esm/savings/morphoVaults/options.d.ts +0 -16
  65. package/esm/savings/morphoVaults/options.js +0 -108
  66. package/esm/savings/yearnVaults/index.d.ts +0 -9
  67. package/esm/savings/yearnVaults/index.js +0 -70
  68. package/esm/savings/yearnVaults/options.d.ts +0 -6
  69. package/esm/savings/yearnVaults/options.js +0 -25
  70. package/esm/types/savings/index.d.ts +0 -15
  71. package/esm/types/savings/index.js +0 -3
  72. package/esm/types/savings/makerDsr.d.ts +0 -11
  73. package/esm/types/savings/makerDsr.js +0 -4
  74. package/esm/types/savings/morphoVaults.d.ts +0 -23
  75. package/esm/types/savings/morphoVaults.js +0 -16
  76. package/esm/types/savings/yearnVaults.d.ts +0 -12
  77. package/esm/types/savings/yearnVaults.js +0 -6
  78. package/src/savings/index.ts +0 -43
  79. package/src/savings/makerDsr/index.ts +0 -54
  80. package/src/savings/makerDsr/options.ts +0 -9
  81. package/src/savings/morphoVaults/index.ts +0 -81
  82. package/src/savings/morphoVaults/options.ts +0 -123
  83. package/src/savings/yearnVaults/index.ts +0 -74
  84. package/src/savings/yearnVaults/options.ts +0 -30
  85. package/src/types/savings/index.ts +0 -18
  86. package/src/types/savings/makerDsr.ts +0 -13
  87. package/src/types/savings/morphoVaults.ts +0 -25
  88. package/src/types/savings/yearnVaults.ts +0 -14
@@ -1,123 +0,0 @@
1
- import { MorphoVault, MorphoVaultType } from '../../types';
2
-
3
- export const MORPHO_VAULT_FLAGSHIP_ETH: MorphoVault = {
4
- type: MorphoVaultType.MorphoVaultFlagshipEth,
5
- name: 'Flagship ETH',
6
- address: '0x38989BBA00BDF8181F4082995b3DEAe96163aC5D',
7
- asset: 'ETH',
8
- deploymentBlock: 18927491,
9
- };
10
-
11
- export const MORPHO_VAULT_GAUNTLET_USDC_CORE: MorphoVault = {
12
- type: MorphoVaultType.MorphoVaultGauntletUSDCCore,
13
- name: 'Gauntlet USDC Core',
14
- address: '0x8eB67A509616cd6A7c1B3c8C21D48FF57df3d458',
15
- asset: 'USDC',
16
- deploymentBlock: 19777569,
17
- };
18
-
19
- export const MORPHO_VAULT_GAUNTLET_USDC_PRIME: MorphoVault = {
20
- type: MorphoVaultType.MorphoVaultGauntletUSDCPrime,
21
- name: 'Gauntlet USDC Prime',
22
- address: '0xdd0f28e19C1780eb6396170735D45153D261490d',
23
- asset: 'USDC',
24
- deploymentBlock: 19777569,
25
- };
26
-
27
- export const MORPHO_VAULT_RE7_WETH: MorphoVault = {
28
- type: MorphoVaultType.MorphoVaultRe7Weth,
29
- name: 'RE7 WETH',
30
- address: '0x78Fc2c2eD1A4cDb5402365934aE5648aDAd094d0',
31
- asset: 'ETH',
32
- deploymentBlock: 19121118,
33
- };
34
-
35
- export const MORPHO_VAULT_GAUNTLET_WETH_CORE: MorphoVault = {
36
- type: MorphoVaultType.MorphoVaultGauntletWETHCore,
37
- name: 'Gauntlet WETH Core',
38
- address: '0x4881Ef0BF6d2365D3dd6499ccd7532bcdBCE0658',
39
- asset: 'ETH',
40
- deploymentBlock: 19541126,
41
- };
42
-
43
- export const MORPHO_VAULT_GAUNTLET_WETH_PRIME: MorphoVault = {
44
- type: MorphoVaultType.MorphoVaultGauntletWETHPrime,
45
- name: 'Gauntlet WETH Prime',
46
- address: '0x2371e134e3455e0593363cBF89d3b6cf53740618',
47
- asset: 'ETH',
48
- deploymentBlock: 19372149,
49
- };
50
-
51
- export const MORPHO_VAULT_BOOSTED_USDC: MorphoVault = {
52
- type: MorphoVaultType.MorphoVaultBoostedUSDC,
53
- name: 'Boosted USDC',
54
- address: '0xd63070114470f685b75B74D60EEc7c1113d33a3D',
55
- asset: 'USDC',
56
- deploymentBlock: 20377233,
57
- };
58
-
59
- export const MORPHO_VAULT_STEAKHOUSE_PYUSD: MorphoVault = {
60
- type: MorphoVaultType.MorphoVaultSteakhousePYUSD,
61
- name: 'Steakhouse PYUSD',
62
- address: '0xbEEF02e5E13584ab96848af90261f0C8Ee04722a',
63
- asset: 'PYUSD',
64
- deploymentBlock: 19043398,
65
- };
66
-
67
- export const MORPHO_VAULT_FLAGSHIP_USDT: MorphoVault = {
68
- type: MorphoVaultType.MorphoVaultFlagshipUSDT,
69
- name: 'Flagship USDT',
70
- address: '0x2C25f6C25770fFEC5959D34B94Bf898865e5D6b1',
71
- asset: 'USDT',
72
- deploymentBlock: 19127039,
73
- };
74
-
75
- export const MORPHO_VAULT_STEAKHOUSE_USDT: MorphoVault = {
76
- type: MorphoVaultType.MorphoVaultSteakhouseUSDT,
77
- name: 'Steakhouse USDT',
78
- address: '0xbEef047a543E45807105E51A8BBEFCc5950fcfBa',
79
- asset: 'USDT',
80
- deploymentBlock: 19043398,
81
- };
82
-
83
- export const MORPHO_VAULT_GAUNTLET_USDA_CORE: MorphoVault = {
84
- type: MorphoVaultType.MorphoVaultGauntletUSDACore,
85
- name: 'Gauntlet USDA Core',
86
- address: '0x125D41A6e5dbf455cD9Df8F80BCC6fd172D52Cc6',
87
- asset: 'USDA',
88
- deploymentBlock: 19633608,
89
- };
90
-
91
- export const MORPHO_VAULT_GAUNTLET_USDT_PRIME: MorphoVault = {
92
- type: MorphoVaultType.MorphoVaultGauntletUSDTPrime,
93
- name: 'Gauntlet USDT Prime',
94
- address: '0x8CB3649114051cA5119141a34C200D65dc0Faa73',
95
- asset: 'USDT',
96
- deploymentBlock: 19486541,
97
- };
98
-
99
- export const MORPHO_VAULT_GAUNTLET_RESOLV_USDC: MorphoVault = {
100
- type: MorphoVaultType.MorphoVaultGauntletResolvUSDC,
101
- name: 'Gauntlet Resolv USDC',
102
- address: '0x132E6C9C33A62D7727cd359b1f51e5B566E485Eb',
103
- asset: 'USDC',
104
- deploymentBlock: 21487882,
105
- };
106
-
107
- export const MORPHO_VAULTS: Record<MorphoVaultType, MorphoVault> = {
108
- [MorphoVaultType.MorphoVaultFlagshipEth]: MORPHO_VAULT_FLAGSHIP_ETH,
109
- [MorphoVaultType.MorphoVaultGauntletUSDCCore]: MORPHO_VAULT_GAUNTLET_USDC_CORE,
110
- [MorphoVaultType.MorphoVaultGauntletUSDCPrime]: MORPHO_VAULT_GAUNTLET_USDC_PRIME,
111
- [MorphoVaultType.MorphoVaultRe7Weth]: MORPHO_VAULT_RE7_WETH,
112
- [MorphoVaultType.MorphoVaultGauntletWETHCore]: MORPHO_VAULT_GAUNTLET_WETH_CORE,
113
- [MorphoVaultType.MorphoVaultGauntletWETHPrime]: MORPHO_VAULT_GAUNTLET_WETH_PRIME,
114
- [MorphoVaultType.MorphoVaultBoostedUSDC]: MORPHO_VAULT_BOOSTED_USDC,
115
- [MorphoVaultType.MorphoVaultSteakhousePYUSD]: MORPHO_VAULT_STEAKHOUSE_PYUSD,
116
- [MorphoVaultType.MorphoVaultFlagshipUSDT]: MORPHO_VAULT_FLAGSHIP_USDT,
117
- [MorphoVaultType.MorphoVaultSteakhouseUSDT]: MORPHO_VAULT_STEAKHOUSE_USDT,
118
- [MorphoVaultType.MorphoVaultGauntletUSDACore]: MORPHO_VAULT_GAUNTLET_USDA_CORE,
119
- [MorphoVaultType.MorphoVaultGauntletUSDTPrime]: MORPHO_VAULT_GAUNTLET_USDT_PRIME,
120
- [MorphoVaultType.MorphoVaultGauntletResolvUSDC]: MORPHO_VAULT_GAUNTLET_RESOLV_USDC,
121
- };
122
-
123
- export const getMorphoVault = (type: MorphoVaultType): MorphoVault => MORPHO_VAULTS[type];
@@ -1,74 +0,0 @@
1
- import Dec from 'decimal.js';
2
- import { Client } from 'viem';
3
- import { assetAmountInEth } from '@defisaver/tokens';
4
- import { getViemProvider } from '../../services/viem';
5
- import { SavingsVaultData, YearnVault } from '../../types';
6
- import { EthAddress, EthereumProvider, NetworkNumber } from '../../types/common';
7
- import * as yearnVaultsOptions from './options';
8
- import { getYearnVaultContractViem, YearnViewContractViem } from '../../contracts';
9
-
10
- export {
11
- yearnVaultsOptions,
12
- };
13
-
14
- export const _getYearnVaultData = async (provider: Client, network: NetworkNumber, yearnVault: YearnVault, accounts: EthAddress[]): Promise<SavingsVaultData> => {
15
- const yearnVaultContract = getYearnVaultContractViem(provider, yearnVault.address);
16
- const viewContract = YearnViewContractViem(provider, network);
17
-
18
- const yvAmountsWei: Record<EthAddress, bigint> = {};
19
-
20
- const [tokenSupply, underlyingSupply, poolLiquidity] = await Promise.all([
21
- yearnVaultContract.read.totalSupply(),
22
- yearnVaultContract.read.totalAssets(),
23
- viewContract.read.getPoolLiquidity([yearnVault.address]),
24
- ...accounts.map(async (account) => {
25
- const yvAmount = await yearnVaultContract.read.balanceOf([account]);
26
- yvAmountsWei[account] = yvAmount;
27
- }),
28
- ]);
29
-
30
- const exchangeRate = new Dec(underlyingSupply).div(tokenSupply).toString();
31
- const poolSize = assetAmountInEth(underlyingSupply.toString(), yearnVault.asset);
32
- const liquidity = assetAmountInEth(poolLiquidity.toString(), yearnVault.asset);
33
-
34
- const supplied: Record<EthAddress, string> = {};
35
- accounts.forEach((account) => {
36
- const yvAmountWei = yvAmountsWei[account] || BigInt(0);
37
- const underlyingAmountWei = new Dec(yvAmountWei).mul(exchangeRate).toString();
38
- supplied[account.toLowerCase() as EthAddress] = assetAmountInEth(underlyingAmountWei, yearnVault.asset);
39
- });
40
-
41
- return {
42
- poolSize,
43
- liquidity,
44
- supplied,
45
- asset: yearnVault.asset,
46
- optionType: yearnVault.type,
47
- };
48
- };
49
-
50
- export async function getYearnVaultData(provider: EthereumProvider, network: NetworkNumber, yearnVault: YearnVault, accounts: EthAddress[]): Promise<SavingsVaultData> {
51
- return _getYearnVaultData(getViemProvider(provider, network, {
52
- batch: {
53
- multicall: {
54
- batchSize: 2500000,
55
- },
56
- },
57
- }), network, yearnVault, accounts);
58
- }
59
-
60
- export const _getYearnVaultExchangeRate = async (provider: Client, yearnVault: YearnVault): Promise<string> => {
61
- const yearnVaultContract = getYearnVaultContractViem(provider, yearnVault.address);
62
-
63
- const [tokenSupply, underlyingSupply] = await Promise.all([
64
- yearnVaultContract.read.totalSupply(),
65
- yearnVaultContract.read.totalAssets(),
66
- ]);
67
-
68
- const exchangeRate = new Dec(underlyingSupply).div(tokenSupply).toString();
69
- return exchangeRate;
70
- };
71
-
72
- export async function getYearnVaultExchangeRate(provider: EthereumProvider, network: NetworkNumber, yearnVault: YearnVault): Promise<string> {
73
- return _getYearnVaultExchangeRate(getViemProvider(provider, network), yearnVault);
74
- }
@@ -1,30 +0,0 @@
1
- import { YearnVault, YearnVaultType } from '../../types/savings/yearnVaults';
2
-
3
- export const YEARN_VAULT_DAI: YearnVault = {
4
- type: YearnVaultType.YearnVaultDAI,
5
- address: '0xdA816459F1AB5631232FE5e97a05BBBb94970c95',
6
- asset: 'DAI',
7
- deploymentBlock: 12796965,
8
- };
9
-
10
- export const YEARN_VAULT_USDC: YearnVault = {
11
- type: YearnVaultType.YearnVaultUSDC,
12
- address: '0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE',
13
- asset: 'USDC',
14
- deploymentBlock: 13513457,
15
- };
16
-
17
- export const YEARN_VAULT_USDT: YearnVault = {
18
- type: YearnVaultType.YearnVaultUSDT,
19
- address: '0x3B27F92C0e212C671EA351827EDF93DB27cc0c65',
20
- asset: 'USDT',
21
- deploymentBlock: 14980240,
22
- };
23
-
24
- export const YEARN_VAULTS: Record<YearnVaultType, YearnVault> = {
25
- [YearnVaultType.YearnVaultDAI]: YEARN_VAULT_DAI,
26
- [YearnVaultType.YearnVaultUSDC]: YEARN_VAULT_USDC,
27
- [YearnVaultType.YearnVaultUSDT]: YEARN_VAULT_USDT,
28
- };
29
-
30
- export const getYearnVault = (type: YearnVaultType): YearnVault => YEARN_VAULTS[type];
@@ -1,18 +0,0 @@
1
- import { EthAddress } from '../common';
2
- import { MakerDsrType } from './makerDsr';
3
- import { MorphoVaultType } from './morphoVaults';
4
- import { YearnVaultType } from './yearnVaults';
5
-
6
- export * from './morphoVaults';
7
- export * from './yearnVaults';
8
- export * from './makerDsr';
9
-
10
- export interface SavingsVaultData {
11
- poolSize: string,
12
- liquidity: string,
13
- supplied: Record<EthAddress, string>,
14
- asset: string,
15
- optionType: string,
16
- }
17
-
18
- export type SavingsData = Partial<Record<MorphoVaultType | YearnVaultType | MakerDsrType, SavingsVaultData>>;
@@ -1,13 +0,0 @@
1
- import { EthAddress } from '../common';
2
-
3
- export enum MakerDsrType {
4
- MakerDsrVault = 'maker_dsr',
5
- }
6
-
7
- export interface MakerDsrVault {
8
- type: MakerDsrType;
9
- name: string;
10
- address: EthAddress;
11
- asset: string;
12
- deploymentBlock: number;
13
- }
@@ -1,25 +0,0 @@
1
- import { EthAddress } from '../common';
2
-
3
- export enum MorphoVaultType {
4
- MorphoVaultFlagshipEth = 'morpho_vault_flagship_eth',
5
- MorphoVaultGauntletUSDCCore = 'morpho_vault_gauntlet_usdc_core',
6
- MorphoVaultGauntletUSDCPrime = 'morpho_vault_gauntlet_usdc_prime',
7
- MorphoVaultRe7Weth = 'morpho_vault_re7_weth',
8
- MorphoVaultGauntletWETHCore = 'morpho_vault_gauntlet_weth_core',
9
- MorphoVaultGauntletWETHPrime = 'morpho_vault_gauntlet_weth_prime',
10
- MorphoVaultBoostedUSDC = 'morpho_vault_usual_boosted_usdc',
11
- MorphoVaultSteakhousePYUSD = 'morpho_vault_steakhouse_pyusd',
12
- MorphoVaultFlagshipUSDT = 'morpho_vault_flagship_usdt',
13
- MorphoVaultSteakhouseUSDT = 'morpho_vault_steakhouse_usdt',
14
- MorphoVaultGauntletUSDACore = 'morpho_vault_gauntlet_usda_core',
15
- MorphoVaultGauntletUSDTPrime = 'morpho_vault_gauntlet_usdt_prime',
16
- MorphoVaultGauntletResolvUSDC = 'morpho_vault_gauntlet_resolv_usdc',
17
- }
18
-
19
- export interface MorphoVault {
20
- type: MorphoVaultType;
21
- name: string;
22
- address: EthAddress;
23
- asset: string;
24
- deploymentBlock: number;
25
- }
@@ -1,14 +0,0 @@
1
- import { EthAddress } from '../common';
2
-
3
- export enum YearnVaultType {
4
- YearnVaultDAI = 'yearn_vault_dai',
5
- YearnVaultUSDC = 'yearn_vault_usdc',
6
- YearnVaultUSDT = 'yearn_vault_usdt',
7
- }
8
-
9
- export interface YearnVault {
10
- type: YearnVaultType;
11
- address: EthAddress;
12
- asset: string;
13
- deploymentBlock: number;
14
- }