@defisaver/positions-sdk 0.0.16 → 0.0.17

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 (83) hide show
  1. package/cjs/compoundV3/index.d.ts +1 -1
  2. package/cjs/compoundV3/index.js +3 -2
  3. package/cjs/config/contracts.d.ts +72 -184
  4. package/cjs/config/contracts.js +0 -16
  5. package/cjs/helpers/compoundHelpers/index.js +2 -2
  6. package/cjs/markets/curveUsd/index.d.ts +0 -2
  7. package/cjs/markets/curveUsd/index.js +1 -14
  8. package/cjs/types/compound.d.ts +1 -0
  9. package/cjs/types/contracts/generated/index.d.ts +0 -2
  10. package/cjs/types/curveUsd.d.ts +1 -2
  11. package/cjs/types/curveUsd.js +0 -1
  12. package/esm/compoundV3/index.d.ts +1 -1
  13. package/esm/compoundV3/index.js +3 -2
  14. package/esm/config/contracts.d.ts +72 -184
  15. package/esm/config/contracts.js +0 -16
  16. package/esm/helpers/compoundHelpers/index.js +2 -2
  17. package/esm/markets/curveUsd/index.d.ts +0 -2
  18. package/esm/markets/curveUsd/index.js +0 -12
  19. package/esm/types/compound.d.ts +1 -0
  20. package/esm/types/contracts/generated/index.d.ts +0 -2
  21. package/esm/types/curveUsd.d.ts +1 -2
  22. package/esm/types/curveUsd.js +0 -1
  23. package/package.json +40 -40
  24. package/src/aaveV2/index.ts +220 -220
  25. package/src/aaveV3/index.ts +556 -556
  26. package/src/assets/index.ts +60 -60
  27. package/src/chickenBonds/index.ts +123 -123
  28. package/src/compoundV2/index.ts +206 -206
  29. package/src/compoundV3/index.ts +273 -269
  30. package/src/config/contracts.js +651 -651
  31. package/src/constants/index.ts +3 -3
  32. package/src/contracts.ts +100 -100
  33. package/src/curveUsd/index.ts +228 -228
  34. package/src/exchange/index.ts +17 -17
  35. package/src/helpers/aaveHelpers/index.ts +134 -134
  36. package/src/helpers/chickenBondsHelpers/index.ts +23 -23
  37. package/src/helpers/compoundHelpers/index.ts +181 -181
  38. package/src/helpers/curveUsdHelpers/index.ts +32 -32
  39. package/src/helpers/index.ts +5 -5
  40. package/src/helpers/makerHelpers/index.ts +94 -94
  41. package/src/helpers/sparkHelpers/index.ts +106 -106
  42. package/src/index.ts +40 -40
  43. package/src/liquity/index.ts +103 -103
  44. package/src/maker/index.ts +101 -101
  45. package/src/markets/aave/index.ts +80 -80
  46. package/src/markets/aave/marketAssets.ts +32 -32
  47. package/src/markets/compound/index.ts +85 -85
  48. package/src/markets/compound/marketsAssets.ts +35 -35
  49. package/src/markets/curveUsd/index.ts +69 -69
  50. package/src/markets/index.ts +3 -3
  51. package/src/markets/spark/index.ts +29 -29
  52. package/src/markets/spark/marketAssets.ts +9 -9
  53. package/src/moneymarket/moneymarketCommonService.ts +75 -75
  54. package/src/morpho/markets.ts +39 -39
  55. package/src/morphoAaveV2/index.ts +254 -254
  56. package/src/morphoAaveV3/index.ts +617 -617
  57. package/src/multicall/index.ts +22 -22
  58. package/src/services/dsrService.ts +15 -15
  59. package/src/services/priceService.ts +21 -21
  60. package/src/services/utils.ts +34 -34
  61. package/src/spark/index.ts +413 -413
  62. package/src/staking/staking.ts +167 -167
  63. package/src/types/aave.ts +256 -256
  64. package/src/types/chickenBonds.ts +45 -45
  65. package/src/types/common.ts +83 -83
  66. package/src/types/compound.ts +122 -121
  67. package/src/types/contracts/generated/index.ts +0 -2
  68. package/src/types/curveUsd.ts +112 -112
  69. package/src/types/index.ts +6 -6
  70. package/src/types/liquity.ts +29 -29
  71. package/src/types/maker.ts +50 -50
  72. package/src/types/spark.ts +106 -106
  73. package/cjs/types/contracts/generated/CrvUSDsfrxETHAmm.d.ts +0 -139
  74. package/cjs/types/contracts/generated/CrvUSDsfrxETHAmm.js +0 -5
  75. package/cjs/types/contracts/generated/CrvUSDsfrxETHController.d.ts +0 -205
  76. package/cjs/types/contracts/generated/CrvUSDsfrxETHController.js +0 -5
  77. package/esm/types/contracts/generated/CrvUSDsfrxETHAmm.d.ts +0 -139
  78. package/esm/types/contracts/generated/CrvUSDsfrxETHAmm.js +0 -4
  79. package/esm/types/contracts/generated/CrvUSDsfrxETHController.d.ts +0 -205
  80. package/esm/types/contracts/generated/CrvUSDsfrxETHController.js +0 -4
  81. package/src/types/contracts/generated/CrvUSDsfrxETHAmm.ts +0 -286
  82. package/src/types/contracts/generated/CrvUSDsfrxETHController.ts +0 -403
  83. package/yarn-error.log +0 -64
@@ -1,4 +1,4 @@
1
- export const SECONDS_PER_YEAR = 365 * 24 * 60 * 60;
2
- export const AVG_BLOCK_TIME = 12;
3
- export const BLOCKS_IN_A_YEAR = SECONDS_PER_YEAR / AVG_BLOCK_TIME;
1
+ export const SECONDS_PER_YEAR = 365 * 24 * 60 * 60;
2
+ export const AVG_BLOCK_TIME = 12;
3
+ export const BLOCKS_IN_A_YEAR = SECONDS_PER_YEAR / AVG_BLOCK_TIME;
4
4
  export const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
package/src/contracts.ts CHANGED
@@ -1,101 +1,101 @@
1
- import Web3 from 'web3';
2
- import configRaw from './config/contracts';
3
- import { BaseContract } from './types/contracts/generated/types';
4
- import * as ContractTypes from './types/contracts/generated';
5
- import { Blockish, EthAddress, NetworkNumber } from './types/common';
6
-
7
- export type ConfigKey = keyof typeof configRaw;
8
-
9
- declare type ContractConfig = {
10
- abi: any[],
11
- networks: Partial<Record<NetworkNumber, Network>>,
12
- };
13
- declare type Network = {
14
- createdBlock?: number,
15
- address: string,
16
- oldVersions?: Record<string, EthAddress>,
17
- };
18
- const contractConfig:Record<ConfigKey, ContractConfig> = configRaw;
19
- export const getConfigContractAddress = (name: ConfigKey, network: NetworkNumber, block?: Blockish): string => {
20
- const networkData = contractConfig[name].networks[network];
21
- const latestAddress = networkData?.address || '';
22
- if (block && block !== 'latest') {
23
- if (block >= (networkData?.createdBlock || 0)) {
24
- return latestAddress;
25
- }
26
-
27
- const oldVersions = networkData?.oldVersions || {};
28
- for (const [createdBlock, address] of Object.entries(oldVersions).reverse()) {
29
- if (block >= Number(createdBlock)) {
30
- return address;
31
- }
32
- }
33
- }
34
- return latestAddress;
35
- };
36
- export const getConfigContractAbi = (name: ConfigKey): any[] => contractConfig[name].abi;
37
-
38
- const createContractFromConfigFunc = <T extends BaseContract>(name: ConfigKey, _address?: string) => (web3: Web3, network: NetworkNumber, block?: Blockish) => {
39
- const address = _address || getConfigContractAddress(name, network, block);
40
- return new web3.eth.Contract(contractConfig[name].abi, address) as any as T;
41
- };
42
-
43
- export const getErc20Contract = (address: string, web3: Web3) => (
44
- new web3.eth.Contract(getConfigContractAbi('Erc20'), address)
45
- );
46
-
47
- export const createContractWrapper = (web3: Web3, network: NetworkNumber, name: ConfigKey, _address?: string, block?: Blockish) => (
48
- createContractFromConfigFunc(name, _address)(web3, network, block)
49
- );
50
-
51
- export const UniMulticallContract = createContractFromConfigFunc<ContractTypes.UniMulticall>('UniMulticall');
52
-
53
- export const AaveV3ViewContract = createContractFromConfigFunc<ContractTypes.AaveV3View>('AaveV3View');
54
- export const AaveIncentiveDataProviderV3Contract = createContractFromConfigFunc<ContractTypes.AaveUiIncentiveDataProviderV3>('AaveUiIncentiveDataProviderV3');
55
-
56
- export const GhoTokenContract = createContractFromConfigFunc<ContractTypes.GHO>('GHO');
57
-
58
- export const LidoContract = createContractFromConfigFunc<ContractTypes.Lido>('Lido');
59
- export const CbEthContract = createContractFromConfigFunc<ContractTypes.CbEth>('CbEth');
60
- export const REthContract = createContractFromConfigFunc<ContractTypes.REth>('REth');
61
-
62
- export const BalanceScannerContract = createContractFromConfigFunc<ContractTypes.BalanceScanner>('BalanceScanner');
63
-
64
- export const CompV3ViewContract = createContractFromConfigFunc<ContractTypes.CompV3View>('CompV3View');
65
-
66
- export const wstETHContract = createContractFromConfigFunc<ContractTypes.WstETH>('wstETH');
67
-
68
- export const AaveLoanInfoV2Contract = createContractFromConfigFunc<ContractTypes.AaveLoanInfoV2>('AaveLoanInfoV2');
69
-
70
- export const CompoundLoanInfoContract = createContractFromConfigFunc<ContractTypes.CompoundLoanInfo>('CompoundLoanInfo');
71
-
72
- export const ComptrollerContract = createContractFromConfigFunc<ContractTypes.Comptroller>('Comptroller');
73
-
74
- export const PotContract = createContractFromConfigFunc<ContractTypes.Pot>('Pot');
75
-
76
- export const MorphoAaveV2ViewContract = createContractFromConfigFunc<ContractTypes.MorphoAaveV2View>('MorphoAaveV2View');
77
-
78
- export const SparkIncentiveDataProviderContract = createContractFromConfigFunc<ContractTypes.SparkIncentiveDataProvider>('SparkIncentiveDataProvider');
79
- export const SparkViewContract = createContractFromConfigFunc<ContractTypes.SparkView>('SparkView');
80
-
81
- export const CrvUSDViewContract = createContractFromConfigFunc<ContractTypes.CrvUSDView>('crvUSDView');
82
- export const CrvUSDFactoryContract = createContractFromConfigFunc<ContractTypes.CrvUSDFactory>('crvUSDFactory');
83
-
84
- export const LiquityViewContract = createContractFromConfigFunc<ContractTypes.LiquityView>('LiquityView');
85
- export const LiquityCollSurplusPoolContract = createContractFromConfigFunc<ContractTypes.CollSurplusPool>('CollSurplusPool');
86
- export const LiquityTroveManagerContract = createContractFromConfigFunc<ContractTypes.TroveManager>('TroveManager');
87
- export const LiquityPriceFeedContract = createContractFromConfigFunc<ContractTypes.PriceFeed>('PriceFeed');
88
- export const LiquityActivePoolContract = createContractFromConfigFunc<ContractTypes.LiquityActivePool>('LiquityActivePool');
89
-
90
- export const McdViewContract = createContractFromConfigFunc<ContractTypes.McdView>('McdView');
91
- export const McdSpotterContract = createContractFromConfigFunc<ContractTypes.McdSpotter>('McdSpotter');
92
- export const McdDogContract = createContractFromConfigFunc<ContractTypes.McdDog>('McdDog');
93
- export const McdJugContract = createContractFromConfigFunc<ContractTypes.McdJug>('McdJug');
94
- export const McdVatContract = createContractFromConfigFunc<ContractTypes.McdVat>('McdVat');
95
-
96
- export const ChickenBondsViewContract = createContractFromConfigFunc<ContractTypes.ChickenBondsView>('ChickenBondsView');
97
- export const ChickenBondsManagerContract = createContractFromConfigFunc<ContractTypes.ChickenBondsManager>('ChickenBondsManager');
98
-
99
- export const ETHPriceFeedContract = createContractFromConfigFunc<ContractTypes.ETHPriceFeed>('ETHPriceFeed');
100
- export const COMPPriceFeedContract = createContractFromConfigFunc<ContractTypes.COMPPriceFeed>('COMPPriceFeed');
1
+ import Web3 from 'web3';
2
+ import configRaw from './config/contracts';
3
+ import { BaseContract } from './types/contracts/generated/types';
4
+ import * as ContractTypes from './types/contracts/generated';
5
+ import { Blockish, EthAddress, NetworkNumber } from './types/common';
6
+
7
+ export type ConfigKey = keyof typeof configRaw;
8
+
9
+ declare type ContractConfig = {
10
+ abi: any[],
11
+ networks: Partial<Record<NetworkNumber, Network>>,
12
+ };
13
+ declare type Network = {
14
+ createdBlock?: number,
15
+ address: string,
16
+ oldVersions?: Record<string, EthAddress>,
17
+ };
18
+ const contractConfig:Record<ConfigKey, ContractConfig> = configRaw;
19
+ export const getConfigContractAddress = (name: ConfigKey, network: NetworkNumber, block?: Blockish): string => {
20
+ const networkData = contractConfig[name].networks[network];
21
+ const latestAddress = networkData?.address || '';
22
+ if (block && block !== 'latest') {
23
+ if (block >= (networkData?.createdBlock || 0)) {
24
+ return latestAddress;
25
+ }
26
+
27
+ const oldVersions = networkData?.oldVersions || {};
28
+ for (const [createdBlock, address] of Object.entries(oldVersions).reverse()) {
29
+ if (block >= Number(createdBlock)) {
30
+ return address;
31
+ }
32
+ }
33
+ }
34
+ return latestAddress;
35
+ };
36
+ export const getConfigContractAbi = (name: ConfigKey): any[] => contractConfig[name].abi;
37
+
38
+ const createContractFromConfigFunc = <T extends BaseContract>(name: ConfigKey, _address?: string) => (web3: Web3, network: NetworkNumber, block?: Blockish) => {
39
+ const address = _address || getConfigContractAddress(name, network, block);
40
+ return new web3.eth.Contract(contractConfig[name].abi, address) as any as T;
41
+ };
42
+
43
+ export const getErc20Contract = (address: string, web3: Web3) => (
44
+ new web3.eth.Contract(getConfigContractAbi('Erc20'), address)
45
+ );
46
+
47
+ export const createContractWrapper = (web3: Web3, network: NetworkNumber, name: ConfigKey, _address?: string, block?: Blockish) => (
48
+ createContractFromConfigFunc(name, _address)(web3, network, block)
49
+ );
50
+
51
+ export const UniMulticallContract = createContractFromConfigFunc<ContractTypes.UniMulticall>('UniMulticall');
52
+
53
+ export const AaveV3ViewContract = createContractFromConfigFunc<ContractTypes.AaveV3View>('AaveV3View');
54
+ export const AaveIncentiveDataProviderV3Contract = createContractFromConfigFunc<ContractTypes.AaveUiIncentiveDataProviderV3>('AaveUiIncentiveDataProviderV3');
55
+
56
+ export const GhoTokenContract = createContractFromConfigFunc<ContractTypes.GHO>('GHO');
57
+
58
+ export const LidoContract = createContractFromConfigFunc<ContractTypes.Lido>('Lido');
59
+ export const CbEthContract = createContractFromConfigFunc<ContractTypes.CbEth>('CbEth');
60
+ export const REthContract = createContractFromConfigFunc<ContractTypes.REth>('REth');
61
+
62
+ export const BalanceScannerContract = createContractFromConfigFunc<ContractTypes.BalanceScanner>('BalanceScanner');
63
+
64
+ export const CompV3ViewContract = createContractFromConfigFunc<ContractTypes.CompV3View>('CompV3View');
65
+
66
+ export const wstETHContract = createContractFromConfigFunc<ContractTypes.WstETH>('wstETH');
67
+
68
+ export const AaveLoanInfoV2Contract = createContractFromConfigFunc<ContractTypes.AaveLoanInfoV2>('AaveLoanInfoV2');
69
+
70
+ export const CompoundLoanInfoContract = createContractFromConfigFunc<ContractTypes.CompoundLoanInfo>('CompoundLoanInfo');
71
+
72
+ export const ComptrollerContract = createContractFromConfigFunc<ContractTypes.Comptroller>('Comptroller');
73
+
74
+ export const PotContract = createContractFromConfigFunc<ContractTypes.Pot>('Pot');
75
+
76
+ export const MorphoAaveV2ViewContract = createContractFromConfigFunc<ContractTypes.MorphoAaveV2View>('MorphoAaveV2View');
77
+
78
+ export const SparkIncentiveDataProviderContract = createContractFromConfigFunc<ContractTypes.SparkIncentiveDataProvider>('SparkIncentiveDataProvider');
79
+ export const SparkViewContract = createContractFromConfigFunc<ContractTypes.SparkView>('SparkView');
80
+
81
+ export const CrvUSDViewContract = createContractFromConfigFunc<ContractTypes.CrvUSDView>('crvUSDView');
82
+ export const CrvUSDFactoryContract = createContractFromConfigFunc<ContractTypes.CrvUSDFactory>('crvUSDFactory');
83
+
84
+ export const LiquityViewContract = createContractFromConfigFunc<ContractTypes.LiquityView>('LiquityView');
85
+ export const LiquityCollSurplusPoolContract = createContractFromConfigFunc<ContractTypes.CollSurplusPool>('CollSurplusPool');
86
+ export const LiquityTroveManagerContract = createContractFromConfigFunc<ContractTypes.TroveManager>('TroveManager');
87
+ export const LiquityPriceFeedContract = createContractFromConfigFunc<ContractTypes.PriceFeed>('PriceFeed');
88
+ export const LiquityActivePoolContract = createContractFromConfigFunc<ContractTypes.LiquityActivePool>('LiquityActivePool');
89
+
90
+ export const McdViewContract = createContractFromConfigFunc<ContractTypes.McdView>('McdView');
91
+ export const McdSpotterContract = createContractFromConfigFunc<ContractTypes.McdSpotter>('McdSpotter');
92
+ export const McdDogContract = createContractFromConfigFunc<ContractTypes.McdDog>('McdDog');
93
+ export const McdJugContract = createContractFromConfigFunc<ContractTypes.McdJug>('McdJug');
94
+ export const McdVatContract = createContractFromConfigFunc<ContractTypes.McdVat>('McdVat');
95
+
96
+ export const ChickenBondsViewContract = createContractFromConfigFunc<ContractTypes.ChickenBondsView>('ChickenBondsView');
97
+ export const ChickenBondsManagerContract = createContractFromConfigFunc<ContractTypes.ChickenBondsManager>('ChickenBondsManager');
98
+
99
+ export const ETHPriceFeedContract = createContractFromConfigFunc<ContractTypes.ETHPriceFeed>('ETHPriceFeed');
100
+ export const COMPPriceFeedContract = createContractFromConfigFunc<ContractTypes.COMPPriceFeed>('COMPPriceFeed');
101
101
  export const USDCPriceFeedContract = createContractFromConfigFunc<ContractTypes.USDCPriceFeed>('USDCPriceFeed');