@ichidao/ichi-vaults-sdk 0.0.27 → 0.0.29

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 (37) hide show
  1. package/README.md +139 -18
  2. package/dist/src/__tests__/index.test.js +25 -1
  3. package/dist/src/__tests__/index.test.js.map +1 -1
  4. package/dist/src/functions/calculateApr.js +5 -5
  5. package/dist/src/functions/calculateApr.js.map +1 -1
  6. package/dist/src/functions/calculateDtr.js +3 -3
  7. package/dist/src/functions/calculateDtr.js.map +1 -1
  8. package/dist/src/functions/calculateFees.js +5 -5
  9. package/dist/src/functions/calculateFees.js.map +1 -1
  10. package/dist/src/functions/priceFromPool.js +4 -4
  11. package/dist/src/functions/priceFromPool.js.map +1 -1
  12. package/dist/src/functions/{balances.d.ts → totalBalances.d.ts} +1 -5
  13. package/dist/src/functions/{balances.js → totalBalances.js} +2 -102
  14. package/dist/src/functions/totalBalances.js.map +1 -0
  15. package/dist/src/functions/userBalances.d.ts +11 -0
  16. package/dist/src/functions/userBalances.js +342 -0
  17. package/dist/src/functions/userBalances.js.map +1 -0
  18. package/dist/src/graphql/constants.js +8 -1
  19. package/dist/src/graphql/constants.js.map +1 -1
  20. package/dist/src/graphql/queries.d.ts +1 -0
  21. package/dist/src/graphql/queries.js +3 -2
  22. package/dist/src/graphql/queries.js.map +1 -1
  23. package/dist/src/index.cjs.js +3 -2
  24. package/dist/src/index.d.ts +2 -1
  25. package/dist/src/index.esm.js +3 -2
  26. package/dist/src/index.js +2 -1
  27. package/dist/src/index.js.map +1 -1
  28. package/dist/src/src/functions/{balances.d.ts → totalBalances.d.ts} +1 -5
  29. package/dist/src/src/functions/userBalances.d.ts +11 -0
  30. package/dist/src/src/graphql/queries.d.ts +1 -0
  31. package/dist/src/src/index.d.ts +2 -1
  32. package/dist/src/src/types/index.d.ts +28 -0
  33. package/dist/src/src/types/vaultQueryData.d.ts +4 -1
  34. package/dist/src/types/index.d.ts +28 -0
  35. package/dist/src/types/vaultQueryData.d.ts +4 -1
  36. package/package.json +1 -1
  37. package/dist/src/functions/balances.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAAiD;AACjD,2CAA2C;AAC3C,uDAAqC;AACrC,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,iDAAiD;AACjD,2CAA2C;AAC3C,4DAA0C;AAC1C,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,2DAAyC;AACzC,2DAAyC;AACzC,gDAA8B"}
@@ -1,12 +1,8 @@
1
1
  import { JsonRpcProvider } from '@ethersproject/providers';
2
2
  import { BigNumber } from 'ethers';
3
- import { SupportedDex, TotalAmounts, TotalAmountsBN, UserAmounts, UserAmountsBN } from '../types';
3
+ import { SupportedDex, TotalAmounts, TotalAmountsBN } from '../types';
4
4
  export declare function getTokenDecimals(tokenAddress: string, jsonProvider: JsonRpcProvider): Promise<number>;
5
- export declare function getUserBalance(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<string>;
6
- export declare function getUserBalance(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<BigNumber>;
7
5
  export declare function getTotalAmounts(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<TotalAmounts>;
8
6
  export declare function getTotalAmounts(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<TotalAmountsBN>;
9
7
  export declare function getTotalSupply(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<string>;
10
8
  export declare function getTotalSupply(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<BigNumber>;
11
- export declare function getUserAmounts(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserAmounts>;
12
- export declare function getUserAmounts(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<UserAmountsBN>;
@@ -0,0 +1,11 @@
1
+ import { JsonRpcProvider } from '@ethersproject/providers';
2
+ import { BigNumber } from 'ethers';
3
+ import { SupportedDex, UserAmounts, UserAmountsBN, UserAmountsInVault, UserAmountsInVaultBN, UserBalanceInVault, UserBalanceInVaultBN } from '../types';
4
+ export declare function getUserBalance(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<string>;
5
+ export declare function getUserBalance(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<BigNumber>;
6
+ export declare function getAllUserBalances(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserBalanceInVault[]>;
7
+ export declare function getAllUserBalances(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<UserBalanceInVaultBN[]>;
8
+ export declare function getUserAmounts(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserAmounts>;
9
+ export declare function getUserAmounts(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<UserAmountsBN>;
10
+ export declare function getAllUserAmounts(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserAmountsInVault[]>;
11
+ export declare function getAllUserAmounts(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<UserAmountsInVaultBN[]>;
@@ -4,3 +4,4 @@ export declare const rebalancesQuery: (page: number) => string;
4
4
  export declare const vaultCollectFeesQuery: (page: number) => string;
5
5
  export declare const vaultDepositsQuery: (page: number) => string;
6
6
  export declare const vaultWithdrawsQuery: (page: number) => string;
7
+ export declare const userBalancesQuery: string;
@@ -1,4 +1,5 @@
1
- export * from './functions/balances';
1
+ export * from './functions/totalBalances';
2
+ export * from './functions/userBalances';
2
3
  export * from './functions/deposit';
3
4
  export * from './functions/withdraw';
4
5
  export * from './functions/vault';
@@ -57,6 +57,14 @@ export type UserAmounts = [string, string] & {
57
57
  amount0: string;
58
58
  amount1: string;
59
59
  };
60
+ export type UserAmountsInVault = {
61
+ vaultAddress: string;
62
+ userAmounts: UserAmounts;
63
+ };
64
+ export type UserAmountsInVaultBN = {
65
+ vaultAddress: string;
66
+ userAmounts: UserAmountsBN;
67
+ };
60
68
  export interface IchiVault {
61
69
  id: string;
62
70
  tokenA: string;
@@ -64,6 +72,17 @@ export interface IchiVault {
64
72
  allowTokenA: boolean;
65
73
  allowTokenB: boolean;
66
74
  }
75
+ type VaultShares = {
76
+ vault: {
77
+ id: string;
78
+ tokenA: string;
79
+ tokenB: string;
80
+ };
81
+ vaultShareBalance: string;
82
+ };
83
+ export type UserBalances = {
84
+ vaultShares: VaultShares[];
85
+ };
67
86
  export interface VaultState {
68
87
  totalAmount0: string;
69
88
  totalAmount1: string;
@@ -114,3 +133,12 @@ export type PriceChange = {
114
133
  timeInterval: number;
115
134
  priceChange: number | null;
116
135
  };
136
+ export type UserBalanceInVault = {
137
+ vaultAddress: string;
138
+ shares: string;
139
+ };
140
+ export type UserBalanceInVaultBN = {
141
+ vaultAddress: string;
142
+ shares: BigNumber;
143
+ };
144
+ export {};
@@ -1,4 +1,4 @@
1
- import { IchiVault, Fees, VaultTransactionEvent } from '..';
1
+ import { IchiVault, Fees, VaultTransactionEvent, UserBalances } from '..';
2
2
  export interface VaultQueryData {
3
3
  ichiVault: IchiVault;
4
4
  }
@@ -17,3 +17,6 @@ export interface VaultDepositsQueryData {
17
17
  export interface VaultWithdrawsQueryData {
18
18
  vaultWithdraws: VaultTransactionEvent[];
19
19
  }
20
+ export interface UserBalancesQueryData {
21
+ user: UserBalances;
22
+ }
@@ -57,6 +57,14 @@ export type UserAmounts = [string, string] & {
57
57
  amount0: string;
58
58
  amount1: string;
59
59
  };
60
+ export type UserAmountsInVault = {
61
+ vaultAddress: string;
62
+ userAmounts: UserAmounts;
63
+ };
64
+ export type UserAmountsInVaultBN = {
65
+ vaultAddress: string;
66
+ userAmounts: UserAmountsBN;
67
+ };
60
68
  export interface IchiVault {
61
69
  id: string;
62
70
  tokenA: string;
@@ -64,6 +72,17 @@ export interface IchiVault {
64
72
  allowTokenA: boolean;
65
73
  allowTokenB: boolean;
66
74
  }
75
+ type VaultShares = {
76
+ vault: {
77
+ id: string;
78
+ tokenA: string;
79
+ tokenB: string;
80
+ };
81
+ vaultShareBalance: string;
82
+ };
83
+ export type UserBalances = {
84
+ vaultShares: VaultShares[];
85
+ };
67
86
  export interface VaultState {
68
87
  totalAmount0: string;
69
88
  totalAmount1: string;
@@ -114,3 +133,12 @@ export type PriceChange = {
114
133
  timeInterval: number;
115
134
  priceChange: number | null;
116
135
  };
136
+ export type UserBalanceInVault = {
137
+ vaultAddress: string;
138
+ shares: string;
139
+ };
140
+ export type UserBalanceInVaultBN = {
141
+ vaultAddress: string;
142
+ shares: BigNumber;
143
+ };
144
+ export {};
@@ -1,4 +1,4 @@
1
- import { IchiVault, Fees, VaultTransactionEvent } from '..';
1
+ import { IchiVault, Fees, VaultTransactionEvent, UserBalances } from '..';
2
2
  export interface VaultQueryData {
3
3
  ichiVault: IchiVault;
4
4
  }
@@ -17,3 +17,6 @@ export interface VaultDepositsQueryData {
17
17
  export interface VaultWithdrawsQueryData {
18
18
  vaultWithdraws: VaultTransactionEvent[];
19
19
  }
20
+ export interface UserBalancesQueryData {
21
+ user: UserBalances;
22
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ichidao/ichi-vaults-sdk",
3
- "version": "0.0.27",
3
+ "version": "0.0.29",
4
4
  "description": "The ICHI Vaults SDK",
5
5
  "main": "dist/src/index.cjs.js",
6
6
  "module": "dist/src/index.esm.js",
@@ -1 +0,0 @@
1
- {"version":3,"file":"balances.js","sourceRoot":"","sources":["../../../src/functions/balances.ts"],"names":[],"mappings":"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"}