@defisaver/positions-sdk 0.0.34 → 0.0.35

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 (62) hide show
  1. package/README.md +63 -63
  2. package/cjs/compoundV3/index.js +32 -35
  3. package/cjs/markets/curveUsd/index.js +15 -15
  4. package/cjs/types/curveUsd.d.ts +5 -5
  5. package/cjs/types/curveUsd.js +5 -5
  6. package/esm/compoundV3/index.js +27 -30
  7. package/esm/markets/curveUsd/index.js +15 -15
  8. package/esm/types/curveUsd.d.ts +5 -5
  9. package/esm/types/curveUsd.js +5 -5
  10. package/package.json +40 -40
  11. package/src/aaveV2/index.ts +226 -226
  12. package/src/aaveV3/index.ts +561 -561
  13. package/src/assets/index.ts +60 -60
  14. package/src/chickenBonds/index.ts +123 -123
  15. package/src/compoundV2/index.ts +219 -219
  16. package/src/compoundV3/index.ts +273 -275
  17. package/src/config/contracts.js +817 -817
  18. package/src/constants/index.ts +5 -5
  19. package/src/contracts.ts +124 -124
  20. package/src/curveUsd/index.ts +228 -228
  21. package/src/exchange/index.ts +17 -17
  22. package/src/helpers/aaveHelpers/index.ts +134 -134
  23. package/src/helpers/chickenBondsHelpers/index.ts +23 -23
  24. package/src/helpers/compoundHelpers/index.ts +181 -181
  25. package/src/helpers/curveUsdHelpers/index.ts +40 -40
  26. package/src/helpers/index.ts +6 -6
  27. package/src/helpers/makerHelpers/index.ts +94 -94
  28. package/src/helpers/morphoBlueHelpers/index.ts +46 -46
  29. package/src/helpers/sparkHelpers/index.ts +106 -106
  30. package/src/index.ts +42 -42
  31. package/src/liquity/index.ts +116 -116
  32. package/src/maker/index.ts +101 -101
  33. package/src/markets/aave/index.ts +80 -80
  34. package/src/markets/aave/marketAssets.ts +24 -24
  35. package/src/markets/compound/index.ts +141 -141
  36. package/src/markets/compound/marketsAssets.ts +48 -48
  37. package/src/markets/curveUsd/index.ts +69 -69
  38. package/src/markets/index.ts +4 -4
  39. package/src/markets/morphoBlue/index.ts +36 -36
  40. package/src/markets/spark/index.ts +29 -29
  41. package/src/markets/spark/marketAssets.ts +10 -10
  42. package/src/moneymarket/moneymarketCommonService.ts +75 -75
  43. package/src/morphoAaveV2/index.ts +255 -255
  44. package/src/morphoAaveV3/index.ts +619 -619
  45. package/src/morphoBlue/index.ts +170 -170
  46. package/src/multicall/index.ts +22 -22
  47. package/src/services/dsrService.ts +15 -15
  48. package/src/services/priceService.ts +21 -21
  49. package/src/services/utils.ts +47 -47
  50. package/src/spark/index.ts +422 -422
  51. package/src/staking/staking.ts +167 -167
  52. package/src/types/aave.ts +256 -256
  53. package/src/types/chickenBonds.ts +45 -45
  54. package/src/types/common.ts +83 -83
  55. package/src/types/compound.ts +128 -128
  56. package/src/types/curveUsd.ts +118 -118
  57. package/src/types/index.ts +7 -7
  58. package/src/types/liquity.ts +30 -30
  59. package/src/types/maker.ts +50 -50
  60. package/src/types/morphoBlue.ts +80 -80
  61. package/src/types/spark.ts +106 -106
  62. package/yarn-error.log +64 -0
@@ -1,31 +1,31 @@
1
- export enum LIQUITY_TROVE_STATUS_ENUM {
2
- nonExistent,
3
- active,
4
- closedByOwner,
5
- closedByLiquidation,
6
- closedByRedemption,
7
- }
8
-
9
- export const LIQUITY_STATUS_MAPPING = {
10
- nonExistent: 'Non existent',
11
- active: 'Active',
12
- closedByOwner: 'Closed',
13
- closedByLiquidation: 'Liquidated',
14
- closedByRedemption: 'Redeemed',
15
- };
16
-
17
- export interface LiquityTroveInfo {
18
- troveStatus: string,
19
- collateral: string,
20
- debtInAsset: string,
21
- TCRatio: string,
22
- recoveryMode: boolean,
23
- claimableCollateral: string,
24
- borrowingRateWithDecay: string,
25
- assetPrice: string,
26
- totalETH: string,
27
- totalLUSD: string,
28
- minCollateralRatio: number,
29
- priceForRecovery: string,
30
- debtInFront: string,
1
+ export enum LIQUITY_TROVE_STATUS_ENUM {
2
+ nonExistent,
3
+ active,
4
+ closedByOwner,
5
+ closedByLiquidation,
6
+ closedByRedemption,
7
+ }
8
+
9
+ export const LIQUITY_STATUS_MAPPING = {
10
+ nonExistent: 'Non existent',
11
+ active: 'Active',
12
+ closedByOwner: 'Closed',
13
+ closedByLiquidation: 'Liquidated',
14
+ closedByRedemption: 'Redeemed',
15
+ };
16
+
17
+ export interface LiquityTroveInfo {
18
+ troveStatus: string,
19
+ collateral: string,
20
+ debtInAsset: string,
21
+ TCRatio: string,
22
+ recoveryMode: boolean,
23
+ claimableCollateral: string,
24
+ borrowingRateWithDecay: string,
25
+ assetPrice: string,
26
+ totalETH: string,
27
+ totalLUSD: string,
28
+ minCollateralRatio: number,
29
+ priceForRecovery: string,
30
+ debtInFront: string,
31
31
  }
@@ -1,51 +1,51 @@
1
- import { EthAddress } from './common';
2
-
3
- export interface IlkInfo {
4
- ilkLabel: string;
5
- currentRate: string;
6
- futureRate: string;
7
- minDebt: string;
8
- globalDebtCeiling: string;
9
- globalDebtCurrent: string;
10
- assetPrice: string;
11
- liqRatio: string;
12
- liqPercent: number;
13
- stabilityFee: number;
14
- liquidationFee: string;
15
- creatableDebt: string;
16
- }
17
-
18
- export interface CdpData {
19
- owner: EthAddress,
20
- userAddress: EthAddress,
21
- id: string,
22
- urn: EthAddress,
23
- type: string,
24
- ilk: string,
25
- ilkLabel: string,
26
- asset: string,
27
- collateral: string,
28
- collateralUsd: string,
29
- futureDebt: string,
30
- debtDai: string,
31
- debtUsd: string,
32
- debtInAsset: string,
33
- debtAssetPrice: string,
34
- debtAssetMarketPrice: string,
35
- liquidationPrice: string,
36
- ratio: string,
37
- liqRatio: string,
38
- liqPercent: number,
39
- assetPrice: string,
40
- daiLabel: string,
41
- debtAsset: string,
42
- unclaimedCollateral: string,
43
- debtTooLow: boolean,
44
- minDebt: string,
45
- stabilityFee: number,
46
- creatableDebt: string,
47
- globalDebtCeiling: string,
48
- globalDebtCurrent: string,
49
- liquidationFee: string,
50
- lastUpdated: number,
1
+ import { EthAddress } from './common';
2
+
3
+ export interface IlkInfo {
4
+ ilkLabel: string;
5
+ currentRate: string;
6
+ futureRate: string;
7
+ minDebt: string;
8
+ globalDebtCeiling: string;
9
+ globalDebtCurrent: string;
10
+ assetPrice: string;
11
+ liqRatio: string;
12
+ liqPercent: number;
13
+ stabilityFee: number;
14
+ liquidationFee: string;
15
+ creatableDebt: string;
16
+ }
17
+
18
+ export interface CdpData {
19
+ owner: EthAddress,
20
+ userAddress: EthAddress,
21
+ id: string,
22
+ urn: EthAddress,
23
+ type: string,
24
+ ilk: string,
25
+ ilkLabel: string,
26
+ asset: string,
27
+ collateral: string,
28
+ collateralUsd: string,
29
+ futureDebt: string,
30
+ debtDai: string,
31
+ debtUsd: string,
32
+ debtInAsset: string,
33
+ debtAssetPrice: string,
34
+ debtAssetMarketPrice: string,
35
+ liquidationPrice: string,
36
+ ratio: string,
37
+ liqRatio: string,
38
+ liqPercent: number,
39
+ assetPrice: string,
40
+ daiLabel: string,
41
+ debtAsset: string,
42
+ unclaimedCollateral: string,
43
+ debtTooLow: boolean,
44
+ minDebt: string,
45
+ stabilityFee: number,
46
+ creatableDebt: string,
47
+ globalDebtCeiling: string,
48
+ globalDebtCurrent: string,
49
+ liquidationFee: string,
50
+ lastUpdated: number,
51
51
  }
@@ -1,81 +1,81 @@
1
- import { MMUsedAssets, NetworkNumber } from './common';
2
-
3
- export enum MorphoBlueVersions {
4
- MorphoBlueWstEthEth = 'morphobluewstetheth',
5
- MorphoBlueWstEthUSDC = 'morphobluewstethusdc',
6
- }
7
-
8
- export interface MorphoBlueMarketData {
9
- chainIds: NetworkNumber[],
10
- label: string,
11
- shortLabel: string,
12
- url: string,
13
- value: MorphoBlueVersions,
14
- loanToken: string,
15
- collateralToken: string,
16
- oracle: string,
17
- irm: string,
18
- lltv: number | string,
19
- // icon: Function,
20
- protocolName: string,
21
- }
22
-
23
- export interface MorphoBlueAssetData {
24
- symbol: string,
25
- address: string,
26
- price: string,
27
- supplyRate: string,
28
- borrowRate: string,
29
- incentiveSupplyApy?: string,
30
- incentiveSupplyToken?: string,
31
- totalSupply?: string,
32
- totalBorrow?: string,
33
- }
34
-
35
- export type MorphoBlueAssetsData = { [key: string]: MorphoBlueAssetData };
36
-
37
- export interface MorphoBlueMarketInfo {
38
- id: string,
39
- fee: string,
40
- loanToken: string,
41
- collateralToken: string,
42
- utillization: string,
43
- oracle: string,
44
- lltv: string,
45
- assetsData: MorphoBlueAssetsData,
46
- }
47
-
48
- export interface MorphoBlueAggregatedPositionData {
49
- suppliedUsd: string,
50
- suppliedCollateralUsd: string,
51
- borrowedUsd: string,
52
- borrowLimitUsd: string,
53
- liquidationLimitUsd: string,
54
- leftToBorrowUsd: string,
55
- netApy: string,
56
- incentiveUsd: string,
57
- totalInterestUsd: string,
58
- ltv: string,
59
- leveragedType: string,
60
- leveragedAsset?: string,
61
- leveragedLsdAssetRatio?: string,
62
- liquidationPrice?: string,
63
- }
64
-
65
- export interface MorphoBluePositionData {
66
- usedAssets: MMUsedAssets,
67
- suppliedUsd: string,
68
- suppliedCollateralUsd: string,
69
- borrowedUsd: string,
70
- borrowLimitUsd: string,
71
- liquidationLimitUsd: string,
72
- leftToBorrowUsd: string,
73
- netApy: string,
74
- incentiveUsd: string,
75
- totalInterestUsd: string,
76
- ltv: string,
77
- leveragedType: string,
78
- leveragedAsset?: string,
79
- leveragedLsdAssetRatio?: string,
80
- liquidationPrice?: string,
1
+ import { MMUsedAssets, NetworkNumber } from './common';
2
+
3
+ export enum MorphoBlueVersions {
4
+ MorphoBlueWstEthEth = 'morphobluewstetheth',
5
+ MorphoBlueWstEthUSDC = 'morphobluewstethusdc',
6
+ }
7
+
8
+ export interface MorphoBlueMarketData {
9
+ chainIds: NetworkNumber[],
10
+ label: string,
11
+ shortLabel: string,
12
+ url: string,
13
+ value: MorphoBlueVersions,
14
+ loanToken: string,
15
+ collateralToken: string,
16
+ oracle: string,
17
+ irm: string,
18
+ lltv: number | string,
19
+ // icon: Function,
20
+ protocolName: string,
21
+ }
22
+
23
+ export interface MorphoBlueAssetData {
24
+ symbol: string,
25
+ address: string,
26
+ price: string,
27
+ supplyRate: string,
28
+ borrowRate: string,
29
+ incentiveSupplyApy?: string,
30
+ incentiveSupplyToken?: string,
31
+ totalSupply?: string,
32
+ totalBorrow?: string,
33
+ }
34
+
35
+ export type MorphoBlueAssetsData = { [key: string]: MorphoBlueAssetData };
36
+
37
+ export interface MorphoBlueMarketInfo {
38
+ id: string,
39
+ fee: string,
40
+ loanToken: string,
41
+ collateralToken: string,
42
+ utillization: string,
43
+ oracle: string,
44
+ lltv: string,
45
+ assetsData: MorphoBlueAssetsData,
46
+ }
47
+
48
+ export interface MorphoBlueAggregatedPositionData {
49
+ suppliedUsd: string,
50
+ suppliedCollateralUsd: string,
51
+ borrowedUsd: string,
52
+ borrowLimitUsd: string,
53
+ liquidationLimitUsd: string,
54
+ leftToBorrowUsd: string,
55
+ netApy: string,
56
+ incentiveUsd: string,
57
+ totalInterestUsd: string,
58
+ ltv: string,
59
+ leveragedType: string,
60
+ leveragedAsset?: string,
61
+ leveragedLsdAssetRatio?: string,
62
+ liquidationPrice?: string,
63
+ }
64
+
65
+ export interface MorphoBluePositionData {
66
+ usedAssets: MMUsedAssets,
67
+ suppliedUsd: string,
68
+ suppliedCollateralUsd: string,
69
+ borrowedUsd: string,
70
+ borrowLimitUsd: string,
71
+ liquidationLimitUsd: string,
72
+ leftToBorrowUsd: string,
73
+ netApy: string,
74
+ incentiveUsd: string,
75
+ totalInterestUsd: string,
76
+ ltv: string,
77
+ leveragedType: string,
78
+ leveragedAsset?: string,
79
+ leveragedLsdAssetRatio?: string,
80
+ liquidationPrice?: string,
81
81
  }
@@ -1,107 +1,107 @@
1
- import { EModeCategoryData, EModeCategoryDataMapping } from './aave';
2
- import {
3
- MMAssetData, MMPositionData, MMUsedAsset, NetworkNumber,
4
- } from './common';
5
-
6
- export enum SparkVersions {
7
- SparkV1 = 'v1default',
8
- }
9
-
10
- export interface SparkMarketData {
11
- chainIds: NetworkNumber[],
12
- label: string,
13
- shortLabel: string,
14
- url: string,
15
- value: SparkVersions,
16
- assets: readonly string[],
17
- provider: '' | 'SparkPoolAddressesProvider',
18
- providerAddress: string,
19
- lendingPool: 'SparkLendingPool',
20
- lendingPoolAddress: string,
21
- protocolData: '' | 'SparkProtocolDataProvider',
22
- protocolDataAddress: string
23
- subVersionLabel?: string
24
- // icon: Function,
25
- protocolName: string,
26
- disabled?: boolean,
27
- }
28
-
29
- export interface SparkAssetData extends MMAssetData {
30
- totalBorrowVar: string,
31
- sortIndex?: number,
32
- usageAsCollateralEnabled: boolean,
33
- isIsolated: boolean,
34
- eModeCategory: number,
35
- eModeCategoryData: EModeCategoryData,
36
- liquidationRatio: string,
37
- }
38
-
39
- export interface SparkAssetsData {
40
- [token: string]: SparkAssetData,
41
- }
42
-
43
- export type SparkMarketsData = { assetsData: SparkAssetsData };
44
-
45
- export interface SparkUsedAsset extends MMUsedAsset {
46
- stableBorrowRate: string,
47
- borrowedStable: string,
48
- borrowedVariable: string,
49
- borrowedUsdStable: string,
50
- borrowedUsdVariable: string,
51
- stableLimit: string,
52
- variableLimit: string,
53
- limit: string,
54
- eModeCategory: number,
55
- }
56
-
57
- export interface SparkUsedAssets {
58
- [token: string]: SparkUsedAsset,
59
- }
60
-
61
- export interface SparkHelperCommon {
62
- usedAssets: SparkUsedAssets,
63
- eModeCategory: number,
64
- eModeCategories?: object,
65
- assetsData: SparkAssetsData,
66
- selectedMarket?: SparkMarketData,
67
- network?: NetworkNumber,
68
- }
69
-
70
- export interface SparkAggregatedPositionData {
71
- suppliedUsd: string,
72
- suppliedCollateralUsd: string,
73
- borrowedUsd: string,
74
- borrowLimitUsd: string,
75
- liquidationLimitUsd: string,
76
- leftToBorrowUsd: string,
77
- ratio: string,
78
- collRatio: string,
79
- netApy: string,
80
- incentiveUsd: string,
81
- totalInterestUsd: string,
82
- liqRatio: string,
83
- liqPercent: string,
84
- leveragedType: string,
85
- leveragedAsset?: string,
86
- leveragedLsdAssetRatio?: string,
87
- liquidationPrice?: string,
88
- }
89
-
90
- export interface SparkPositionData extends MMPositionData {
91
- ratio: string,
92
- minRatio: string,
93
- collRatio: string,
94
- borrowedUsd: string,
95
- borrowLimitUsd: string,
96
- suppliedCollateralUsd: string,
97
- incentiveUsd: string,
98
- totalInterestUsd: string,
99
- isSubscribedToAutomation?: boolean,
100
- automationResubscribeRequired?: boolean,
101
- totalSupplied: string,
102
- usedAssets: SparkUsedAssets,
103
- eModeCategory: number,
104
- isInIsolationMode: boolean,
105
- isInSiloedMode: boolean,
106
- eModeCategories: { [key: number]: EModeCategoryDataMapping },
1
+ import { EModeCategoryData, EModeCategoryDataMapping } from './aave';
2
+ import {
3
+ MMAssetData, MMPositionData, MMUsedAsset, NetworkNumber,
4
+ } from './common';
5
+
6
+ export enum SparkVersions {
7
+ SparkV1 = 'v1default',
8
+ }
9
+
10
+ export interface SparkMarketData {
11
+ chainIds: NetworkNumber[],
12
+ label: string,
13
+ shortLabel: string,
14
+ url: string,
15
+ value: SparkVersions,
16
+ assets: readonly string[],
17
+ provider: '' | 'SparkPoolAddressesProvider',
18
+ providerAddress: string,
19
+ lendingPool: 'SparkLendingPool',
20
+ lendingPoolAddress: string,
21
+ protocolData: '' | 'SparkProtocolDataProvider',
22
+ protocolDataAddress: string
23
+ subVersionLabel?: string
24
+ // icon: Function,
25
+ protocolName: string,
26
+ disabled?: boolean,
27
+ }
28
+
29
+ export interface SparkAssetData extends MMAssetData {
30
+ totalBorrowVar: string,
31
+ sortIndex?: number,
32
+ usageAsCollateralEnabled: boolean,
33
+ isIsolated: boolean,
34
+ eModeCategory: number,
35
+ eModeCategoryData: EModeCategoryData,
36
+ liquidationRatio: string,
37
+ }
38
+
39
+ export interface SparkAssetsData {
40
+ [token: string]: SparkAssetData,
41
+ }
42
+
43
+ export type SparkMarketsData = { assetsData: SparkAssetsData };
44
+
45
+ export interface SparkUsedAsset extends MMUsedAsset {
46
+ stableBorrowRate: string,
47
+ borrowedStable: string,
48
+ borrowedVariable: string,
49
+ borrowedUsdStable: string,
50
+ borrowedUsdVariable: string,
51
+ stableLimit: string,
52
+ variableLimit: string,
53
+ limit: string,
54
+ eModeCategory: number,
55
+ }
56
+
57
+ export interface SparkUsedAssets {
58
+ [token: string]: SparkUsedAsset,
59
+ }
60
+
61
+ export interface SparkHelperCommon {
62
+ usedAssets: SparkUsedAssets,
63
+ eModeCategory: number,
64
+ eModeCategories?: object,
65
+ assetsData: SparkAssetsData,
66
+ selectedMarket?: SparkMarketData,
67
+ network?: NetworkNumber,
68
+ }
69
+
70
+ export interface SparkAggregatedPositionData {
71
+ suppliedUsd: string,
72
+ suppliedCollateralUsd: string,
73
+ borrowedUsd: string,
74
+ borrowLimitUsd: string,
75
+ liquidationLimitUsd: string,
76
+ leftToBorrowUsd: string,
77
+ ratio: string,
78
+ collRatio: string,
79
+ netApy: string,
80
+ incentiveUsd: string,
81
+ totalInterestUsd: string,
82
+ liqRatio: string,
83
+ liqPercent: string,
84
+ leveragedType: string,
85
+ leveragedAsset?: string,
86
+ leveragedLsdAssetRatio?: string,
87
+ liquidationPrice?: string,
88
+ }
89
+
90
+ export interface SparkPositionData extends MMPositionData {
91
+ ratio: string,
92
+ minRatio: string,
93
+ collRatio: string,
94
+ borrowedUsd: string,
95
+ borrowLimitUsd: string,
96
+ suppliedCollateralUsd: string,
97
+ incentiveUsd: string,
98
+ totalInterestUsd: string,
99
+ isSubscribedToAutomation?: boolean,
100
+ automationResubscribeRequired?: boolean,
101
+ totalSupplied: string,
102
+ usedAssets: SparkUsedAssets,
103
+ eModeCategory: number,
104
+ isInIsolationMode: boolean,
105
+ isInSiloedMode: boolean,
106
+ eModeCategories: { [key: number]: EModeCategoryDataMapping },
107
107
  }
package/yarn-error.log ADDED
@@ -0,0 +1,64 @@
1
+ Arguments:
2
+ /Users/stefan/.nvm/versions/node/v14.19.0/bin/node /usr/local/Cellar/yarn/1.22.19/libexec/bin/yarn.js
3
+
4
+ PATH:
5
+ /Users/stefan/.nvm/versions/node/v14.19.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/stefan/WebstormProjects/defisaver-positions-sdk/node_modules/.bin:/usr/local/go
6
+
7
+ Yarn version:
8
+ 1.22.19
9
+
10
+ Node version:
11
+ 14.19.0
12
+
13
+ Platform:
14
+ darwin x64
15
+
16
+ Trace:
17
+ Error: incorrect data check
18
+ at Zlib.zlibOnError [as onerror] (zlib.js:187:17)
19
+
20
+ npm manifest:
21
+ {
22
+ "name": "defisaver-positions-sdk",
23
+ "version": "0.0.1",
24
+ "description": "",
25
+ "main": "./cjs/index.js",
26
+ "module": "./esm/src/index.js",
27
+ "types": "./esm/src/index.d.ts",
28
+ "scripts": {
29
+ "build:esm": "rm -rf esm && tsc -p tsconfig.json",
30
+ "build:cjs": "rm -rf cjs && tsc -p tsconfig.cjs.json",
31
+ "build": "npm run build:cjs && npm run build:esm",
32
+ "dev": "tsc -p tsconfig.cjs.json --watch",
33
+ "lint": "eslint src/ --fix",
34
+ "generate-contracts": "node scripts/generateContracts.js",
35
+ "test": "mocha tests/*",
36
+ "build-test": "npm run build && mocha tests/*"
37
+ },
38
+ "keywords": [],
39
+ "author": "",
40
+ "license": "ISC",
41
+ "dependencies": {
42
+ "@defisaver/tokens": "^1.4.56",
43
+ "decimal.js": "^10.4.3"
44
+ },
45
+ "devDependencies": {
46
+ "@defisaver/eslint-config": "^1.0.1",
47
+ "chai": "^4.3.8",
48
+ "dotenv": "^16.3.1",
49
+ "eslint": "^8.49.0",
50
+ "mocha": "^10.2.0",
51
+ "typechain": "^8.3.1",
52
+ "typechain-target-web3-v1-3mihai3": "^6.0.2",
53
+ "typescript": "^5.2.2"
54
+ },
55
+ "peerDependencies": {
56
+ "web3": "^1.10.2"
57
+ }
58
+ }
59
+
60
+ yarn manifest:
61
+ No manifest
62
+
63
+ Lockfile:
64
+ No lockfile