@ichidao/ichi-vaults-sdk 0.0.35 → 0.0.37

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. package/README.md +68 -6
  2. package/dist/src/__tests__/index.test.js +128 -46
  3. package/dist/src/__tests__/index.test.js.map +1 -1
  4. package/dist/src/functions/calculateApr.d.ts +2 -1
  5. package/dist/src/functions/calculateApr.js +3 -2
  6. package/dist/src/functions/calculateApr.js.map +1 -1
  7. package/dist/src/functions/calculateDtr.d.ts +5 -1
  8. package/dist/src/functions/calculateDtr.js +5 -1
  9. package/dist/src/functions/calculateDtr.js.map +1 -1
  10. package/dist/src/functions/calculateFees.d.ts +3 -2
  11. package/dist/src/functions/calculateFees.js +2 -1
  12. package/dist/src/functions/calculateFees.js.map +1 -1
  13. package/dist/src/functions/deposit.js +100 -78
  14. package/dist/src/functions/deposit.js.map +1 -1
  15. package/dist/src/functions/userBalances.js +22 -14
  16. package/dist/src/functions/userBalances.js.map +1 -1
  17. package/dist/src/functions/vaultMetrics.d.ts +3 -0
  18. package/dist/src/functions/vaultMetrics.js +225 -0
  19. package/dist/src/functions/vaultMetrics.js.map +1 -0
  20. package/dist/src/functions/withdraw.js +97 -81
  21. package/dist/src/functions/withdraw.js.map +1 -1
  22. package/dist/src/index.cjs.js +2 -2
  23. package/dist/src/index.d.ts +1 -0
  24. package/dist/src/index.esm.js +2 -2
  25. package/dist/src/index.js +1 -1
  26. package/dist/src/index.js.map +1 -1
  27. package/dist/src/src/functions/calculateApr.d.ts +2 -1
  28. package/dist/src/src/functions/calculateDtr.d.ts +5 -1
  29. package/dist/src/src/functions/calculateFees.d.ts +3 -2
  30. package/dist/src/src/functions/vaultMetrics.d.ts +3 -0
  31. package/dist/src/src/index.d.ts +1 -0
  32. package/dist/src/src/types/index.d.ts +7 -0
  33. package/dist/src/types/index.d.ts +7 -0
  34. package/dist/src/utils/config/addresses.js +8 -8
  35. package/package.json +1 -1
@@ -6,4 +6,5 @@ export * from './functions/vault';
6
6
  export * from './functions/calculateFees';
7
7
  export * from './functions/calculateDtr';
8
8
  export * from './functions/calculateApr';
9
+ export * from './functions/vaultMetrics';
9
10
  export * from './types/index';
@@ -2,13 +2,12 @@
2
2
  /**
3
3
  * @license
4
4
  * author: ICHI DAO <core@ichi.org>
5
- * ichi-vaults-sdk.js v0.0.35
5
+ * ichi-vaults-sdk.js v0.0.37
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  var tslib_1 = require("tslib");
11
- /* eslint-disable import/prefer-default-export */
12
11
  // eslint-disable-next-line import/no-cycle
13
12
  tslib_1.__exportStar(require("./functions/totalBalances"), exports);
14
13
  tslib_1.__exportStar(require("./functions/userBalances"), exports);
@@ -18,4 +17,5 @@ tslib_1.__exportStar(require("./functions/vault"), exports);
18
17
  tslib_1.__exportStar(require("./functions/calculateFees"), exports);
19
18
  tslib_1.__exportStar(require("./functions/calculateDtr"), exports);
20
19
  tslib_1.__exportStar(require("./functions/calculateApr"), exports);
20
+ tslib_1.__exportStar(require("./functions/vaultMetrics"), exports);
21
21
  tslib_1.__exportStar(require("./types/index"), exports);
package/dist/src/index.js CHANGED
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- /* eslint-disable import/prefer-default-export */
18
17
  // eslint-disable-next-line import/no-cycle
19
18
  __exportStar(require("./functions/totalBalances"), exports);
20
19
  __exportStar(require("./functions/userBalances"), exports);
@@ -24,5 +23,6 @@ __exportStar(require("./functions/vault"), exports);
24
23
  __exportStar(require("./functions/calculateFees"), exports);
25
24
  __exportStar(require("./functions/calculateDtr"), exports);
26
25
  __exportStar(require("./functions/calculateApr"), exports);
26
+ __exportStar(require("./functions/vaultMetrics"), exports);
27
27
  __exportStar(require("./types/index"), exports);
28
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAAiD;AACjD,2CAA2C;AAC3C,4DAA0C;AAC1C,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,2DAAyC;AACzC,2DAAyC;AACzC,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA2C;AAC3C,4DAA0C;AAC1C,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,2DAAyC;AACzC,2DAAyC;AACzC,2DAAyC;AACzC,gDAA8B"}
@@ -1,4 +1,5 @@
1
1
  import { JsonRpcProvider } from '@ethersproject/providers';
2
- import { PriceChange, SupportedDex, VaultApr } from '../types';
2
+ import { PriceChange, SupportedDex, VaultApr, VaultState } from '../types';
3
+ export declare function getLpPriceAt(vaultEvents: VaultState[], daysAgo: number, isVaultInverted: boolean, token0decimals: number, token1decimals: number): PriceChange | null;
3
4
  export declare function getLpApr(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, timeIntervals?: number[]): Promise<(VaultApr | null)[]>;
4
5
  export declare function getLpPriceChange(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, timeIntervals?: number[]): Promise<(PriceChange | null)[]>;
@@ -1,3 +1,7 @@
1
1
  import { JsonRpcProvider } from '@ethersproject/providers';
2
- import { AverageDepositTokenRatio, SupportedDex } from '../types';
2
+ import { AverageDepositTokenRatio, DepositTokenRatio, SupportedDex, VaultState, VaultTransactionEvent } from '../types';
3
+ export declare function getDtrAtTransactionEvent(objTransactionEvent: VaultTransactionEvent, isVaultInverted: boolean, token0Decimals: number, token1Decimals: number, beforeEvent?: boolean): DepositTokenRatio;
4
+ export declare function getDtrAtFeeCollectionEvent(objFeeCollectionEvent: VaultState, isVaultInverted: boolean, token0Decimals: number, token1Decimals: number): DepositTokenRatio;
5
+ export declare function getAllDtrsForTimeInterval(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, timeInterval: number): Promise<DepositTokenRatio[]>;
6
+ export declare function getAverageDtr(allDtrs: DepositTokenRatio[]): number;
3
7
  export declare function getAverageDepositTokenRatios(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, timeIntervals?: number[]): Promise<AverageDepositTokenRatio[]>;
@@ -1,6 +1,7 @@
1
1
  import { JsonRpcProvider } from '@ethersproject/providers';
2
- import { Fees, FeesInfo, SupportedDex, TotalAmounts, TotalAmountsBN } from '../types';
3
- export declare function getTotalAmountsAtFeeCollectionEvent(objFees: Fees, isVaultInverted: boolean, token0Decimals: number, token1Decimals: number): [number, number];
2
+ import { Fees, FeesInfo, SupportedDex, TotalAmounts, TotalAmountsBN, VaultState } from '../types';
3
+ export declare function getTotalAmountsAtFeeCollectionEvent(objFees: VaultState, isVaultInverted: boolean, token0Decimals: number, token1Decimals: number): [number, number];
4
+ export declare function getTotalFeesAmountInBaseTokens(feesDataset: Fees[], t0decimals: number, t1decimals: number, isInverted: boolean): number;
4
5
  export declare function getFeesCollected(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, days?: number): Promise<TotalAmounts>;
5
6
  export declare function getFeesCollected(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true, days?: number): Promise<TotalAmountsBN>;
6
7
  export declare function getFeesCollectedInfo(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, forDays?: number[]): Promise<FeesInfo[]>;
@@ -0,0 +1,3 @@
1
+ import { JsonRpcProvider } from '@ethersproject/providers';
2
+ import { SupportedDex, VaultMetrics } from '../types';
3
+ export declare function getVaultMetrics(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, timeIntervals?: number[]): Promise<(VaultMetrics | null)[]>;
@@ -6,4 +6,5 @@ export * from './functions/vault';
6
6
  export * from './functions/calculateFees';
7
7
  export * from './functions/calculateDtr';
8
8
  export * from './functions/calculateApr';
9
+ export * from './functions/vaultMetrics';
9
10
  export * from './types/index';
@@ -147,4 +147,11 @@ export type UserBalanceInVaultBN = {
147
147
  vaultAddress: string;
148
148
  shares: BigNumber;
149
149
  };
150
+ export type VaultMetrics = {
151
+ timeInterval: number;
152
+ lpPriceChange: number | null;
153
+ lpApr: number | null;
154
+ avgDtr: number;
155
+ feeApr: number;
156
+ };
150
157
  export {};
@@ -147,4 +147,11 @@ export type UserBalanceInVaultBN = {
147
147
  vaultAddress: string;
148
148
  shares: BigNumber;
149
149
  };
150
+ export type VaultMetrics = {
151
+ timeInterval: number;
152
+ lpPriceChange: number | null;
153
+ lpApr: number | null;
154
+ avgDtr: number;
155
+ feeApr: number;
156
+ };
150
157
  export {};
@@ -7,8 +7,8 @@ var addressConfig = (_a = {},
7
7
  _b[types_1.SupportedDex.UniswapV3] = {
8
8
  factoryAddress: '0xfBf38920cCbCFF7268Ad714ae5F9Fad6dF607065',
9
9
  depositGuard: {
10
- address: '0x932E1908461De58b0891E5022431dc995Cb95C5E',
11
- version: 1,
10
+ address: '0xFB5263779D551d0f8a85D47a7D576C4893686D12',
11
+ version: 2,
12
12
  },
13
13
  vaultDeployerAddress: '0x508C3daa571854247726ba26949f182086Ff89B0',
14
14
  isAlgebra: false,
@@ -45,8 +45,8 @@ var addressConfig = (_a = {},
45
45
  _c[types_1.SupportedDex.UniswapV3] = {
46
46
  factoryAddress: '0x2d2c72C4dC71AA32D64e5142e336741131A73fc0',
47
47
  depositGuard: {
48
- address: '0xA5cE107711789b350e04063D4EffBe6aB6eB05a4',
49
- version: 1,
48
+ address: '0x64E44525a98bC85aC097Cc6Ca4c8F6BE7D483041',
49
+ version: 2,
50
50
  },
51
51
  vaultDeployerAddress: '0x0768A75F616B98ee0937673bD83B7aBF142236Ea',
52
52
  isAlgebra: false,
@@ -74,8 +74,8 @@ var addressConfig = (_a = {},
74
74
  _d[types_1.SupportedDex.UniswapV3] = {
75
75
  factoryAddress: '0x5a40DFaF8C1115196A1CDF529F97122030F26112',
76
76
  depositGuard: {
77
- address: '0xe6e32D20258f475BaA8d0B39d4C391B96f0ef70A',
78
- version: 1,
77
+ address: '0x3E1aFdB89B6Ea49e828C565ab6A36a485b7A4775',
78
+ version: 2,
79
79
  },
80
80
  vaultDeployerAddress: '0xfF7B5E167c9877f2b9f65D19d9c8c9aa651Fe19F',
81
81
  isAlgebra: false,
@@ -147,8 +147,8 @@ var addressConfig = (_a = {},
147
147
  _h[types_1.SupportedDex.UniswapV3] = {
148
148
  factoryAddress: '0x065356d9f628cDd1bb9F2384E2972CdAC50f51b7',
149
149
  depositGuard: {
150
- address: '0xE7914034D4D39087bFF0Aed442a652F5945E914b',
151
- version: 1,
150
+ address: '0xa9b751f37857790D0412c81B072DB57CCc0aF545',
151
+ version: 2,
152
152
  },
153
153
  vaultDeployerAddress: '0x05cC3CA6E768a68A7f86b09e3ceE754437bd5f12',
154
154
  isAlgebra: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ichidao/ichi-vaults-sdk",
3
- "version": "0.0.35",
3
+ "version": "0.0.37",
4
4
  "description": "The ICHI Vaults SDK",
5
5
  "main": "dist/src/index.cjs.js",
6
6
  "module": "dist/src/index.esm.js",