@ichidao/ichi-vaults-sdk 0.1.43 → 2.0.1

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 (210) hide show
  1. package/README.md +62 -208
  2. package/dist/abis/types/AlgebraIntegralPool.d.ts +702 -793
  3. package/dist/abis/types/AlgebraPool.d.ts +693 -730
  4. package/dist/abis/types/ClPool.d.ts +789 -871
  5. package/dist/abis/types/DepositGuard.d.ts +193 -178
  6. package/dist/abis/types/DepositGuardWithHtsWrapping.d.ts +300 -297
  7. package/dist/abis/types/ERC20.d.ts +120 -147
  8. package/dist/abis/types/ERC20Wrapper.d.ts +147 -155
  9. package/dist/abis/types/IchiVault.d.ts +598 -728
  10. package/dist/abis/types/MultiFeeDistributer.d.ts +314 -423
  11. package/dist/abis/types/Multicall.d.ts +58 -73
  12. package/dist/abis/types/UniswapV3Pool.d.ts +654 -693
  13. package/dist/abis/types/common.d.ts +40 -12
  14. package/dist/abis/types/factories/AlgebraIntegralPool__factory.d.ts +2 -3
  15. package/dist/abis/types/factories/AlgebraIntegralPool__factory.js +10 -13
  16. package/dist/abis/types/factories/AlgebraIntegralPool__factory.js.map +1 -1
  17. package/dist/abis/types/factories/AlgebraPool__factory.d.ts +2 -3
  18. package/dist/abis/types/factories/AlgebraPool__factory.js +10 -13
  19. package/dist/abis/types/factories/AlgebraPool__factory.js.map +1 -1
  20. package/dist/abis/types/factories/ClPool__factory.d.ts +2 -3
  21. package/dist/abis/types/factories/ClPool__factory.js +10 -13
  22. package/dist/abis/types/factories/ClPool__factory.js.map +1 -1
  23. package/dist/abis/types/factories/DepositGuardWithHtsWrapping__factory.d.ts +2 -3
  24. package/dist/abis/types/factories/DepositGuardWithHtsWrapping__factory.js +10 -13
  25. package/dist/abis/types/factories/DepositGuardWithHtsWrapping__factory.js.map +1 -1
  26. package/dist/abis/types/factories/DepositGuard__factory.d.ts +2 -3
  27. package/dist/abis/types/factories/DepositGuard__factory.js +10 -13
  28. package/dist/abis/types/factories/DepositGuard__factory.js.map +1 -1
  29. package/dist/abis/types/factories/ERC20Wrapper__factory.d.ts +2 -3
  30. package/dist/abis/types/factories/ERC20Wrapper__factory.js +10 -13
  31. package/dist/abis/types/factories/ERC20Wrapper__factory.js.map +1 -1
  32. package/dist/abis/types/factories/ERC20__factory.d.ts +2 -3
  33. package/dist/abis/types/factories/ERC20__factory.js +10 -13
  34. package/dist/abis/types/factories/ERC20__factory.js.map +1 -1
  35. package/dist/abis/types/factories/IchiVault__factory.d.ts +2 -3
  36. package/dist/abis/types/factories/IchiVault__factory.js +10 -13
  37. package/dist/abis/types/factories/IchiVault__factory.js.map +1 -1
  38. package/dist/abis/types/factories/MultiFeeDistributer__factory.d.ts +2 -3
  39. package/dist/abis/types/factories/MultiFeeDistributer__factory.js +10 -13
  40. package/dist/abis/types/factories/MultiFeeDistributer__factory.js.map +1 -1
  41. package/dist/abis/types/factories/Multicall__factory.d.ts +2 -3
  42. package/dist/abis/types/factories/Multicall__factory.js +10 -13
  43. package/dist/abis/types/factories/Multicall__factory.js.map +1 -1
  44. package/dist/abis/types/factories/UniswapV3Pool__factory.d.ts +2 -3
  45. package/dist/abis/types/factories/UniswapV3Pool__factory.js +10 -13
  46. package/dist/abis/types/factories/UniswapV3Pool__factory.js.map +1 -1
  47. package/dist/src/__tests__/index.test.js +356 -738
  48. package/dist/src/__tests__/index.test.js.map +1 -1
  49. package/dist/src/abis/types/AlgebraIntegralPool.d.ts +702 -793
  50. package/dist/src/abis/types/AlgebraPool.d.ts +693 -730
  51. package/dist/src/abis/types/ClPool.d.ts +789 -871
  52. package/dist/src/abis/types/DepositGuard.d.ts +193 -178
  53. package/dist/src/abis/types/DepositGuardWithHtsWrapping.d.ts +300 -297
  54. package/dist/src/abis/types/ERC20.d.ts +120 -147
  55. package/dist/src/abis/types/ERC20Wrapper.d.ts +147 -155
  56. package/dist/src/abis/types/IchiVault.d.ts +598 -728
  57. package/dist/src/abis/types/MultiFeeDistributer.d.ts +314 -423
  58. package/dist/src/abis/types/Multicall.d.ts +58 -73
  59. package/dist/src/abis/types/UniswapV3Pool.d.ts +654 -693
  60. package/dist/src/abis/types/common.d.ts +40 -12
  61. package/dist/src/abis/types/factories/AlgebraIntegralPool__factory.d.ts +2 -3
  62. package/dist/src/abis/types/factories/AlgebraPool__factory.d.ts +2 -3
  63. package/dist/src/abis/types/factories/ClPool__factory.d.ts +2 -3
  64. package/dist/src/abis/types/factories/DepositGuardWithHtsWrapping__factory.d.ts +2 -3
  65. package/dist/src/abis/types/factories/DepositGuard__factory.d.ts +2 -3
  66. package/dist/src/abis/types/factories/ERC20Wrapper__factory.d.ts +2 -3
  67. package/dist/src/abis/types/factories/ERC20__factory.d.ts +2 -3
  68. package/dist/src/abis/types/factories/IchiVault__factory.d.ts +2 -3
  69. package/dist/src/abis/types/factories/MultiFeeDistributer__factory.d.ts +2 -3
  70. package/dist/src/abis/types/factories/Multicall__factory.d.ts +2 -3
  71. package/dist/src/abis/types/factories/UniswapV3Pool__factory.d.ts +2 -3
  72. package/dist/src/contracts/index.d.ts +1 -1
  73. package/dist/src/contracts/index.js +12 -12
  74. package/dist/src/contracts/index.js.map +1 -1
  75. package/dist/src/functions/_totalBalances.d.ts +2 -3
  76. package/dist/src/functions/_totalBalances.js +46 -117
  77. package/dist/src/functions/_totalBalances.js.map +1 -1
  78. package/dist/src/functions/_vaultEvents.js +347 -488
  79. package/dist/src/functions/_vaultEvents.js.map +1 -1
  80. package/dist/src/functions/_withdrawHelpers.d.ts +2 -3
  81. package/dist/src/functions/_withdrawHelpers.js +13 -62
  82. package/dist/src/functions/_withdrawHelpers.js.map +1 -1
  83. package/dist/src/functions/calculateApr.d.ts +1 -1
  84. package/dist/src/functions/calculateApr.js +77 -150
  85. package/dist/src/functions/calculateApr.js.map +1 -1
  86. package/dist/src/functions/calculateDtr.d.ts +1 -1
  87. package/dist/src/functions/calculateDtr.js +84 -169
  88. package/dist/src/functions/calculateDtr.js.map +1 -1
  89. package/dist/src/functions/calculateFees.d.ts +1 -1
  90. package/dist/src/functions/calculateFees.js +97 -172
  91. package/dist/src/functions/calculateFees.js.map +1 -1
  92. package/dist/src/functions/chains.js +6 -6
  93. package/dist/src/functions/chains.js.map +1 -1
  94. package/dist/src/functions/claimRewards.d.ts +3 -4
  95. package/dist/src/functions/claimRewards.js +29 -92
  96. package/dist/src/functions/claimRewards.js.map +1 -1
  97. package/dist/src/functions/deposit.d.ts +7 -9
  98. package/dist/src/functions/deposit.js +199 -364
  99. package/dist/src/functions/deposit.js.map +1 -1
  100. package/dist/src/functions/depositWithHtsWrapping.d.ts +4 -6
  101. package/dist/src/functions/depositWithHtsWrapping.js +109 -226
  102. package/dist/src/functions/depositWithHtsWrapping.js.map +1 -1
  103. package/dist/src/functions/getFeeAprs.d.ts +1 -1
  104. package/dist/src/functions/getFeeAprs.js +55 -111
  105. package/dist/src/functions/getFeeAprs.js.map +1 -1
  106. package/dist/src/functions/priceFromPool.d.ts +3 -4
  107. package/dist/src/functions/priceFromPool.js +99 -208
  108. package/dist/src/functions/priceFromPool.js.map +1 -1
  109. package/dist/src/functions/rewardInfo.js +79 -159
  110. package/dist/src/functions/rewardInfo.js.map +1 -1
  111. package/dist/src/functions/totalBalances.d.ts +2 -3
  112. package/dist/src/functions/totalBalances.js +14 -67
  113. package/dist/src/functions/totalBalances.js.map +1 -1
  114. package/dist/src/functions/userBalances.d.ts +2 -3
  115. package/dist/src/functions/userBalances.js +244 -368
  116. package/dist/src/functions/userBalances.js.map +1 -1
  117. package/dist/src/functions/userRewards.d.ts +1 -1
  118. package/dist/src/functions/userRewards.js +87 -145
  119. package/dist/src/functions/userRewards.js.map +1 -1
  120. package/dist/src/functions/vault.d.ts +1 -1
  121. package/dist/src/functions/vault.js +203 -383
  122. package/dist/src/functions/vault.js.map +1 -1
  123. package/dist/src/functions/vaultBasics.js +6 -7
  124. package/dist/src/functions/vaultBasics.js.map +1 -1
  125. package/dist/src/functions/vaultMetrics.d.ts +1 -1
  126. package/dist/src/functions/vaultMetrics.js +111 -189
  127. package/dist/src/functions/vaultMetrics.js.map +1 -1
  128. package/dist/src/functions/vaultPositions.d.ts +1 -1
  129. package/dist/src/functions/vaultPositions.js +69 -134
  130. package/dist/src/functions/vaultPositions.js.map +1 -1
  131. package/dist/src/functions/vaultTvl.d.ts +1 -1
  132. package/dist/src/functions/vaultTvl.js +80 -165
  133. package/dist/src/functions/vaultTvl.js.map +1 -1
  134. package/dist/src/functions/withdraw.d.ts +6 -8
  135. package/dist/src/functions/withdraw.js +165 -295
  136. package/dist/src/functions/withdraw.js.map +1 -1
  137. package/dist/src/functions/withdrawWithErc20Wrapping.d.ts +2 -4
  138. package/dist/src/functions/withdrawWithErc20Wrapping.js +59 -126
  139. package/dist/src/functions/withdrawWithErc20Wrapping.js.map +1 -1
  140. package/dist/src/graphql/constants.js +217 -212
  141. package/dist/src/graphql/constants.js.map +1 -1
  142. package/dist/src/graphql/functions.js +30 -102
  143. package/dist/src/graphql/functions.js.map +1 -1
  144. package/dist/src/graphql/queries.js +407 -42
  145. package/dist/src/graphql/queries.js.map +1 -1
  146. package/dist/src/index.cjs.js +2 -2
  147. package/dist/src/index.esm.js +2 -2
  148. package/dist/src/src/contracts/index.d.ts +1 -1
  149. package/dist/src/src/functions/_totalBalances.d.ts +2 -3
  150. package/dist/src/src/functions/_withdrawHelpers.d.ts +2 -3
  151. package/dist/src/src/functions/calculateApr.d.ts +1 -1
  152. package/dist/src/src/functions/calculateDtr.d.ts +1 -1
  153. package/dist/src/src/functions/calculateFees.d.ts +1 -1
  154. package/dist/src/src/functions/claimRewards.d.ts +3 -4
  155. package/dist/src/src/functions/deposit.d.ts +7 -9
  156. package/dist/src/src/functions/depositWithHtsWrapping.d.ts +4 -6
  157. package/dist/src/src/functions/getFeeAprs.d.ts +1 -1
  158. package/dist/src/src/functions/priceFromPool.d.ts +3 -4
  159. package/dist/src/src/functions/totalBalances.d.ts +2 -3
  160. package/dist/src/src/functions/userBalances.d.ts +2 -3
  161. package/dist/src/src/functions/userRewards.d.ts +1 -1
  162. package/dist/src/src/functions/vault.d.ts +1 -1
  163. package/dist/src/src/functions/vaultMetrics.d.ts +1 -1
  164. package/dist/src/src/functions/vaultPositions.d.ts +1 -1
  165. package/dist/src/src/functions/vaultTvl.d.ts +1 -1
  166. package/dist/src/src/functions/withdraw.d.ts +6 -8
  167. package/dist/src/src/functions/withdrawWithErc20Wrapping.d.ts +2 -4
  168. package/dist/src/src/types/calculateGasMargin.d.ts +1 -2
  169. package/dist/src/src/types/index.d.ts +12 -13
  170. package/dist/src/src/utils/amountWithSlippage.d.ts +1 -2
  171. package/dist/src/src/utils/config/addresses.d.ts +1 -1
  172. package/dist/src/src/utils/formatBigInt.d.ts +1 -2
  173. package/dist/src/src/utils/getPrice.d.ts +1 -2
  174. package/dist/src/src/utils/multicallUtils.d.ts +9 -10
  175. package/dist/src/src/utils/parseBigInt.d.ts +1 -2
  176. package/dist/src/types/calculateGasMargin.d.ts +1 -2
  177. package/dist/src/types/calculateGasMargin.js +4 -5
  178. package/dist/src/types/calculateGasMargin.js.map +1 -1
  179. package/dist/src/types/index.d.ts +12 -13
  180. package/dist/src/types/index.js +1 -0
  181. package/dist/src/types/index.js.map +1 -1
  182. package/dist/src/utils/amountWithSlippage.d.ts +1 -2
  183. package/dist/src/utils/amountWithSlippage.js +1 -1
  184. package/dist/src/utils/amountWithSlippage.js.map +1 -1
  185. package/dist/src/utils/cache.js +2 -2
  186. package/dist/src/utils/cache.js.map +1 -1
  187. package/dist/src/utils/config/addresses.d.ts +1 -1
  188. package/dist/src/utils/config/addresses.js +276 -268
  189. package/dist/src/utils/config/addresses.js.map +1 -1
  190. package/dist/src/utils/formatBigInt.d.ts +1 -2
  191. package/dist/src/utils/formatBigInt.js +4 -5
  192. package/dist/src/utils/formatBigInt.js.map +1 -1
  193. package/dist/src/utils/getConfigByFactory.js +24 -28
  194. package/dist/src/utils/getConfigByFactory.js.map +1 -1
  195. package/dist/src/utils/getGraphUrls.js +8 -12
  196. package/dist/src/utils/getGraphUrls.js.map +1 -1
  197. package/dist/src/utils/getPrice.d.ts +1 -2
  198. package/dist/src/utils/getPrice.js +5 -6
  199. package/dist/src/utils/getPrice.js.map +1 -1
  200. package/dist/src/utils/isVelodrome.js +2 -3
  201. package/dist/src/utils/isVelodrome.js.map +1 -1
  202. package/dist/src/utils/multicallUtils.d.ts +9 -10
  203. package/dist/src/utils/multicallUtils.js +38 -93
  204. package/dist/src/utils/multicallUtils.js.map +1 -1
  205. package/dist/src/utils/parseBigInt.d.ts +1 -2
  206. package/dist/src/utils/parseBigInt.js +5 -7
  207. package/dist/src/utils/parseBigInt.js.map +1 -1
  208. package/dist/src/utils/positionKey.js +2 -4
  209. package/dist/src/utils/positionKey.js.map +1 -1
  210. package/package.json +5 -17
@@ -1,62 +1,25 @@
1
1
  "use strict";
2
2
  /* eslint-disable no-redeclare */
3
3
  /* eslint-disable import/prefer-default-export */
4
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
- return new (P || (P = Promise))(function (resolve, reject) {
7
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
- step((generator = generator.apply(thisArg, _arguments || [])).next());
11
- });
12
- };
13
- var __generator = (this && this.__generator) || function (thisArg, body) {
14
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
15
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
16
- function verb(n) { return function (v) { return step([n, v]); }; }
17
- function step(op) {
18
- if (f) throw new TypeError("Generator is already executing.");
19
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
20
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
21
- if (y = 0, t) op = [op[0] & 2, t.value];
22
- switch (op[0]) {
23
- case 0: case 1: t = op; break;
24
- case 4: _.label++; return { value: op[1], done: false };
25
- case 5: _.label++; y = op[1]; op = [0]; continue;
26
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
27
- default:
28
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
29
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
30
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
31
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
32
- if (t[2]) _.ops.pop();
33
- _.trys.pop(); continue;
34
- }
35
- op = body.call(thisArg, _);
36
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
37
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
38
- }
39
- };
40
4
  var __importDefault = (this && this.__importDefault) || function (mod) {
41
5
  return (mod && mod.__esModule) ? mod : { "default": mod };
42
6
  };
43
7
  Object.defineProperty(exports, "__esModule", { value: true });
44
8
  exports.getAllUserAmounts = exports.getUserAmounts = exports.getAllUserBalances = exports.sendUserBalancesQueryRequest = exports.getUserBalance = void 0;
45
- var ethers_1 = require("ethers");
46
9
  // eslint-disable-next-line import/no-unresolved
47
- var graphql_request_1 = require("graphql-request");
48
- var contracts_1 = require("../contracts");
49
- var types_1 = require("../types");
50
- var formatBigInt_1 = __importDefault(require("../utils/formatBigInt"));
10
+ const graphql_request_1 = require("graphql-request");
11
+ const contracts_1 = require("../contracts");
12
+ const types_1 = require("../types");
13
+ const formatBigInt_1 = __importDefault(require("../utils/formatBigInt"));
51
14
  // eslint-disable-next-line import/no-cycle
52
- var vault_1 = require("./vault");
53
- var queries_1 = require("../graphql/queries");
54
- var parseBigInt_1 = __importDefault(require("../utils/parseBigInt"));
55
- var getGraphUrls_1 = require("../utils/getGraphUrls");
56
- var _totalBalances_1 = require("./_totalBalances");
57
- var multicallUtils_1 = require("../utils/multicallUtils");
58
- var isVelodrome_1 = require("../utils/isVelodrome");
59
- var promises = {};
15
+ const vault_1 = require("./vault");
16
+ const queries_1 = require("../graphql/queries");
17
+ const parseBigInt_1 = __importDefault(require("../utils/parseBigInt"));
18
+ const getGraphUrls_1 = require("../utils/getGraphUrls");
19
+ const _totalBalances_1 = require("./_totalBalances");
20
+ const multicallUtils_1 = require("../utils/multicallUtils");
21
+ const isVelodrome_1 = require("../utils/isVelodrome");
22
+ const promises = {};
60
23
  /**
61
24
  * Helper function to get token address regardless of naming convention (token0/1 or tokenA/B)
62
25
  * @param vault The vault object from API
@@ -72,345 +35,258 @@ function getTokenAddress(vault, index) {
72
35
  }
73
36
  }
74
37
  // eslint-disable-next-line no-underscore-dangle
75
- function _getUserBalance(accountAddress, vaultAddress, jsonProvider, farmingContract, raw) {
76
- return __awaiter(this, void 0, void 0, function () {
77
- var shares, vaultContract, mdfContract, _a, _b, vaultContract;
78
- return __generator(this, function (_c) {
79
- switch (_c.label) {
80
- case 0:
81
- if (!farmingContract) return [3 /*break*/, 3];
82
- vaultContract = (0, contracts_1.getIchiVaultContract)(vaultAddress, jsonProvider);
83
- mdfContract = (0, contracts_1.getMultiFeeDistributorContract)(farmingContract, jsonProvider);
84
- return [4 /*yield*/, vaultContract.balanceOf(accountAddress)];
85
- case 1:
86
- _b = (_a = (_c.sent())).add;
87
- return [4 /*yield*/, mdfContract.totalBalance(accountAddress)];
88
- case 2:
89
- shares = _b.apply(_a, [_c.sent()]);
90
- return [3 /*break*/, 5];
91
- case 3:
92
- vaultContract = (0, contracts_1.getIchiVaultContract)(vaultAddress, jsonProvider);
93
- return [4 /*yield*/, vaultContract.balanceOf(accountAddress)];
94
- case 4:
95
- shares = _c.sent();
96
- _c.label = 5;
97
- case 5: return [2 /*return*/, raw ? shares : (0, formatBigInt_1.default)(shares, types_1.ichiVaultDecimals)];
98
- }
99
- });
100
- });
38
+ async function _getUserBalance(accountAddress, vaultAddress, jsonProvider, farmingContract, raw) {
39
+ let shares;
40
+ // if there is farmingContract, balance is the sum of staked and unstaked amounts
41
+ if (farmingContract) {
42
+ const vaultContract = (0, contracts_1.getIchiVaultContract)(vaultAddress, jsonProvider);
43
+ const mdfContract = (0, contracts_1.getMultiFeeDistributorContract)(farmingContract, jsonProvider);
44
+ shares = (await vaultContract.balanceOf(accountAddress)) + (await mdfContract.totalBalance(accountAddress));
45
+ }
46
+ else {
47
+ const vaultContract = (0, contracts_1.getIchiVaultContract)(vaultAddress, jsonProvider);
48
+ shares = await vaultContract.balanceOf(accountAddress);
49
+ }
50
+ return raw ? shares : (0, formatBigInt_1.default)(shares, types_1.ichiVaultDecimals);
101
51
  }
102
- function getUserBalance(accountAddress, vaultAddress, jsonProvider, dex, raw) {
103
- return __awaiter(this, void 0, void 0, function () {
104
- var vault;
105
- return __generator(this, function (_a) {
106
- switch (_a.label) {
107
- case 0: return [4 /*yield*/, (0, vault_1.validateVaultData)(vaultAddress, jsonProvider, dex)];
108
- case 1:
109
- vault = (_a.sent()).vault;
110
- return [2 /*return*/, raw
111
- ? _getUserBalance(accountAddress, vaultAddress, jsonProvider, vault.farmingContract || null, true)
112
- : _getUserBalance(accountAddress, vaultAddress, jsonProvider, vault.farmingContract || null)];
113
- }
114
- });
115
- });
52
+ async function getUserBalance(accountAddress, vaultAddress, jsonProvider, dex, raw) {
53
+ // eslint-disable-next-line no-return-await
54
+ const { vault } = await (0, vault_1.validateVaultData)(vaultAddress, jsonProvider, dex);
55
+ return raw
56
+ ? _getUserBalance(accountAddress, vaultAddress, jsonProvider, vault.farmingContract || null, true)
57
+ : _getUserBalance(accountAddress, vaultAddress, jsonProvider, vault.farmingContract || null);
116
58
  }
117
59
  exports.getUserBalance = getUserBalance;
118
- function sendUserBalancesQueryRequest(url, accountAddress, query, vaultAddress) {
119
- return __awaiter(this, void 0, void 0, function () {
120
- return __generator(this, function (_a) {
121
- if (vaultAddress) {
122
- return [2 /*return*/, (0, graphql_request_1.request)(url, query, {
123
- accountAddress: accountAddress.toLowerCase(),
124
- vaultAddress: vaultAddress.toLowerCase(),
125
- }).then(function (_a) {
126
- var user = _a.user;
127
- return user;
128
- })];
129
- }
130
- else {
131
- return [2 /*return*/, (0, graphql_request_1.request)(url, query, {
132
- accountAddress: accountAddress.toLowerCase(),
133
- }).then(function (_a) {
134
- var user = _a.user;
135
- return user;
136
- })];
137
- }
138
- return [2 /*return*/];
139
- });
140
- });
60
+ async function sendUserBalancesQueryRequest(url, accountAddress, query, vaultAddress) {
61
+ if (vaultAddress) {
62
+ return (0, graphql_request_1.request)(url, query, {
63
+ accountAddress: accountAddress.toLowerCase(),
64
+ vaultAddress: vaultAddress.toLowerCase(),
65
+ }).then(({ user }) => user);
66
+ }
67
+ else {
68
+ return (0, graphql_request_1.request)(url, query, {
69
+ accountAddress: accountAddress.toLowerCase(),
70
+ }).then(({ user }) => user);
71
+ }
141
72
  }
142
73
  exports.sendUserBalancesQueryRequest = sendUserBalancesQueryRequest;
143
74
  function storeResult(key, result) {
144
- var cacheTtl = process.env.CACHE_TTL && !Number.isNaN(process.env.CACHE_TTL) ? Number(process.env.CACHE_TTL) : 120000; // 120000 = 2min
75
+ const cacheTtl = process.env.CACHE_TTL && !Number.isNaN(process.env.CACHE_TTL) ? Number(process.env.CACHE_TTL) : 120000; // 120000 = 2min
145
76
  promises[key] = Promise.resolve(result);
146
- setTimeout(function () {
77
+ setTimeout(() => {
147
78
  delete promises[key];
148
79
  }, cacheTtl);
149
80
  }
150
- function getAllUserBalances(accountAddress, jsonProvider, dex, raw) {
151
- return __awaiter(this, void 0, void 0, function () {
152
- var chainId, _a, publishedUrl, url, isVelodrome, shares, key, strUserBalancesQuery, result, error_1, result, error2_1, balances, userBalances;
153
- return __generator(this, function (_b) {
154
- switch (_b.label) {
155
- case 0: return [4 /*yield*/, (0, vault_1.getChainByProvider)(jsonProvider)];
156
- case 1:
157
- chainId = (_b.sent()).chainId;
158
- _a = (0, getGraphUrls_1.getGraphUrls)(chainId, dex, true), publishedUrl = _a.publishedUrl, url = _a.url;
159
- isVelodrome = (0, isVelodrome_1.isVelodromeDex)(chainId, dex);
160
- key = "".concat(chainId + accountAddress, "-balances");
161
- if (!!Object.prototype.hasOwnProperty.call(promises, key)) return [3 /*break*/, 11];
162
- strUserBalancesQuery = (0, queries_1.getUserBalancesQuery)(chainId, dex);
163
- _b.label = 2;
164
- case 2:
165
- _b.trys.push([2, 6, , 11]);
166
- if (!publishedUrl) return [3 /*break*/, 4];
167
- return [4 /*yield*/, sendUserBalancesQueryRequest(publishedUrl, accountAddress, strUserBalancesQuery)];
168
- case 3:
169
- result = _b.sent();
170
- storeResult(key, result);
171
- return [3 /*break*/, 5];
172
- case 4: throw new Error("Published URL is invalid for dex ".concat(dex, " on chain ").concat(chainId));
173
- case 5: return [3 /*break*/, 11];
174
- case 6:
175
- error_1 = _b.sent();
176
- if (publishedUrl) {
177
- console.error('Request to published graph URL failed:', error_1);
178
- }
179
- _b.label = 7;
180
- case 7:
181
- _b.trys.push([7, 9, , 10]);
182
- return [4 /*yield*/, sendUserBalancesQueryRequest(url, accountAddress, strUserBalancesQuery)];
183
- case 8:
184
- result = _b.sent();
185
- storeResult(key, result);
186
- return [3 /*break*/, 10];
187
- case 9:
188
- error2_1 = _b.sent();
189
- console.error('Request to public graph URL failed:', error2_1);
190
- throw new Error("Could not get user balances for ".concat(accountAddress, " on chain ").concat(chainId));
191
- case 10: return [3 /*break*/, 11];
192
- case 11: return [4 /*yield*/, promises[key]];
193
- case 12:
194
- balances = _b.sent();
195
- if (balances) {
196
- userBalances = balances.vaultShares;
197
- shares = userBalances.map(function (balance) {
198
- var vShares = isVelodrome
199
- ? (Number(balance.vaultShareBalance) + Number(balance.stakedVaultShareBalance)).toString()
200
- : balance.vaultShareBalance;
201
- return isVelodrome
202
- ? { vaultAddress: balance.vault.id, shares: vShares, stakedShares: balance.stakedVaultShareBalance }
203
- : { vaultAddress: balance.vault.id, shares: balance.vaultShareBalance };
204
- });
205
- return [2 /*return*/, raw
206
- ? shares.map(function (s) {
207
- return isVelodrome
208
- ? {
209
- vaultAddress: s.vaultAddress,
210
- shares: (0, parseBigInt_1.default)(s.shares, types_1.ichiVaultDecimals),
211
- stakedShares: (0, parseBigInt_1.default)(s.stakedShares || '0', types_1.ichiVaultDecimals),
212
- }
213
- : { vaultAddress: s.vaultAddress, shares: (0, parseBigInt_1.default)(s.shares, types_1.ichiVaultDecimals) };
214
- })
215
- : shares];
216
- }
217
- else {
218
- return [2 /*return*/, []];
219
- }
220
- return [2 /*return*/];
81
+ async function getAllUserBalances(accountAddress, jsonProvider, dex, raw) {
82
+ const { chainId } = await (0, vault_1.getChainByProvider)(jsonProvider);
83
+ const { publishedUrl, url } = (0, getGraphUrls_1.getGraphUrls)(chainId, dex, true);
84
+ const isVelodrome = (0, isVelodrome_1.isVelodromeDex)(chainId, dex);
85
+ let shares;
86
+ const key = `${chainId + accountAddress}-balances`;
87
+ if (!Object.prototype.hasOwnProperty.call(promises, key)) {
88
+ const strUserBalancesQuery = (0, queries_1.getUserBalancesQuery)(chainId, dex);
89
+ try {
90
+ if (publishedUrl) {
91
+ const result = await sendUserBalancesQueryRequest(publishedUrl, accountAddress, strUserBalancesQuery);
92
+ storeResult(key, result);
221
93
  }
94
+ else {
95
+ throw new Error(`Published URL is invalid for dex ${dex} on chain ${chainId}`);
96
+ }
97
+ }
98
+ catch (error) {
99
+ if (publishedUrl) {
100
+ console.error('Request to published graph URL failed:', error);
101
+ }
102
+ try {
103
+ const result = await sendUserBalancesQueryRequest(url, accountAddress, strUserBalancesQuery);
104
+ storeResult(key, result);
105
+ }
106
+ catch (error2) {
107
+ console.error('Request to public graph URL failed:', error2);
108
+ throw new Error(`Could not get user balances for ${accountAddress} on chain ${chainId}`);
109
+ }
110
+ }
111
+ }
112
+ const balances = await promises[key];
113
+ if (balances) {
114
+ const userBalances = balances.vaultShares;
115
+ shares = userBalances.map((balance) => {
116
+ const vShares = isVelodrome
117
+ ? (Number(balance.vaultShareBalance) + Number(balance.stakedVaultShareBalance)).toString()
118
+ : balance.vaultShareBalance;
119
+ return isVelodrome
120
+ ? { vaultAddress: balance.vault.id, shares: vShares, stakedShares: balance.stakedVaultShareBalance }
121
+ : { vaultAddress: balance.vault.id, shares: balance.vaultShareBalance };
222
122
  });
223
- });
123
+ return raw
124
+ ? shares.map((s) => {
125
+ return isVelodrome
126
+ ? {
127
+ vaultAddress: s.vaultAddress,
128
+ shares: (0, parseBigInt_1.default)(s.shares, types_1.ichiVaultDecimals),
129
+ stakedShares: (0, parseBigInt_1.default)(s.stakedShares || '0', types_1.ichiVaultDecimals),
130
+ }
131
+ : { vaultAddress: s.vaultAddress, shares: (0, parseBigInt_1.default)(s.shares, types_1.ichiVaultDecimals) };
132
+ })
133
+ : shares;
134
+ }
135
+ else {
136
+ return [];
137
+ }
224
138
  }
225
139
  exports.getAllUserBalances = getAllUserBalances;
226
- function getUserAmounts(accountAddress, vaultAddress, jsonProvider, dex, raw) {
227
- return __awaiter(this, void 0, void 0, function () {
228
- var _a, chainId, vault, totalAmountsBN, totalSupplyBN, userBalanceBN, userAmountsBN, token0Decimals, token1Decimals, userAmounts;
229
- return __generator(this, function (_b) {
230
- switch (_b.label) {
231
- case 0: return [4 /*yield*/, (0, vault_1.validateVaultData)(vaultAddress, jsonProvider, dex)];
232
- case 1:
233
- _a = _b.sent(), chainId = _a.chainId, vault = _a.vault;
234
- return [4 /*yield*/, (0, _totalBalances_1._getTotalAmounts)(vault, jsonProvider, chainId, true)];
235
- case 2:
236
- totalAmountsBN = _b.sent();
237
- return [4 /*yield*/, (0, _totalBalances_1._getTotalSupply)(vaultAddress, jsonProvider, true)];
238
- case 3:
239
- totalSupplyBN = _b.sent();
240
- return [4 /*yield*/, _getUserBalance(accountAddress, vaultAddress, jsonProvider, vault.farmingContract || null, true)];
241
- case 4:
242
- userBalanceBN = _b.sent();
243
- if (!!totalSupplyBN.isZero()) return [3 /*break*/, 9];
244
- userAmountsBN = {
245
- amount0: userBalanceBN.mul(totalAmountsBN[0]).div(totalSupplyBN),
246
- amount1: userBalanceBN.mul(totalAmountsBN[1]).div(totalSupplyBN),
247
- 0: userBalanceBN.mul(totalAmountsBN[0]).div(totalSupplyBN),
248
- 1: userBalanceBN.mul(totalAmountsBN[1]).div(totalSupplyBN),
140
+ async function getUserAmounts(accountAddress, vaultAddress, jsonProvider, dex, raw) {
141
+ const { chainId, vault } = await (0, vault_1.validateVaultData)(vaultAddress, jsonProvider, dex);
142
+ const totalAmountsBN = await (0, _totalBalances_1._getTotalAmounts)(vault, jsonProvider, chainId, true);
143
+ const totalSupplyBN = await (0, _totalBalances_1._getTotalSupply)(vaultAddress, jsonProvider, true);
144
+ const userBalanceBN = await _getUserBalance(accountAddress, vaultAddress, jsonProvider, vault.farmingContract || null, true);
145
+ if (totalSupplyBN !== 0n) {
146
+ const userAmountsBN = {
147
+ amount0: (userBalanceBN * totalAmountsBN[0]) / totalSupplyBN,
148
+ amount1: (userBalanceBN * totalAmountsBN[1]) / totalSupplyBN,
149
+ 0: (userBalanceBN * totalAmountsBN[0]) / totalSupplyBN,
150
+ 1: (userBalanceBN * totalAmountsBN[1]) / totalSupplyBN,
151
+ };
152
+ if (!raw) {
153
+ const token0Decimals = await (0, _totalBalances_1.getTokenDecimals)(vault.tokenA, jsonProvider, chainId);
154
+ const token1Decimals = await (0, _totalBalances_1.getTokenDecimals)(vault.tokenB, jsonProvider, chainId);
155
+ const userAmounts = {
156
+ amount0: (0, formatBigInt_1.default)(userAmountsBN.amount0, token0Decimals),
157
+ amount1: (0, formatBigInt_1.default)(userAmountsBN.amount1, token1Decimals),
158
+ 0: (0, formatBigInt_1.default)(userAmountsBN.amount0, token0Decimals),
159
+ 1: (0, formatBigInt_1.default)(userAmountsBN.amount1, token1Decimals),
160
+ };
161
+ return userAmounts;
162
+ }
163
+ else {
164
+ return userAmountsBN;
165
+ }
166
+ }
167
+ else if (!raw) {
168
+ return {
169
+ amount0: '0',
170
+ amount1: '0',
171
+ 0: '0',
172
+ 1: '0',
173
+ };
174
+ }
175
+ else {
176
+ return {
177
+ amount0: 0n,
178
+ amount1: 0n,
179
+ 0: 0n,
180
+ 1: 0n,
181
+ };
182
+ }
183
+ }
184
+ exports.getUserAmounts = getUserAmounts;
185
+ async function getAllUserAmounts(accountAddress, jsonProvider, dex, raw) {
186
+ const { chainId } = await (0, vault_1.getChainByProvider)(jsonProvider);
187
+ const { publishedUrl, url } = (0, getGraphUrls_1.getGraphUrls)(chainId, dex, true);
188
+ const key = `${chainId + accountAddress}-all-user-amounts`;
189
+ if (!Object.prototype.hasOwnProperty.call(promises, key)) {
190
+ const strUserBalancesQuery = (0, queries_1.getUserBalancesQuery)(chainId, dex);
191
+ try {
192
+ if (publishedUrl) {
193
+ const result = await sendUserBalancesQueryRequest(publishedUrl, accountAddress, strUserBalancesQuery);
194
+ storeResult(key, result);
195
+ }
196
+ else {
197
+ throw new Error(`Published URL is invalid for dex ${dex} on chain ${chainId}`);
198
+ }
199
+ }
200
+ catch (error) {
201
+ if (publishedUrl) {
202
+ console.error('Request to published graph URL failed:', error);
203
+ }
204
+ try {
205
+ const result = await sendUserBalancesQueryRequest(url, accountAddress, strUserBalancesQuery);
206
+ storeResult(key, result);
207
+ }
208
+ catch (error2) {
209
+ console.error('Request to public graph URL failed:', error2);
210
+ throw new Error(`Could not get user balances for ${accountAddress} on chain ${chainId}`);
211
+ }
212
+ }
213
+ }
214
+ try {
215
+ const balances = await promises[key];
216
+ if (!balances?.vaultShares?.length) {
217
+ return [];
218
+ }
219
+ // Prepare multicall calls
220
+ const calls = balances.vaultShares.flatMap((share) => {
221
+ // Normalize token naming by checking which properties exist
222
+ const token0Address = getTokenAddress(share.vault, 0);
223
+ const token1Address = getTokenAddress(share.vault, 1);
224
+ return [
225
+ (0, multicallUtils_1.encodeTotalAmountsCall)(share.vault.id),
226
+ (0, multicallUtils_1.encodeTotalSupplyCall)(share.vault.id),
227
+ (0, multicallUtils_1.encodeDecimalsCall)(token0Address),
228
+ (0, multicallUtils_1.encodeDecimalsCall)(token1Address),
229
+ ];
230
+ });
231
+ // Execute multicall
232
+ const results = await (0, multicallUtils_1.multicall)(calls, chainId, jsonProvider);
233
+ // Process results
234
+ const processedResults = balances.vaultShares.map((share, index) => {
235
+ const baseIndex = index * 4;
236
+ const totalAmounts = (0, multicallUtils_1.decodeTotalAmountsResult)(results[baseIndex], share.vault.id);
237
+ const totalSupply = (0, multicallUtils_1.decodeTotalSupplyResult)(results[baseIndex + 1], share.vault.id);
238
+ const token0Address = getTokenAddress(share.vault, 0);
239
+ const token1Address = getTokenAddress(share.vault, 1);
240
+ const token0Decimals = (0, multicallUtils_1.decodeDecimalsResult)(results[baseIndex + 2], token0Address);
241
+ const token1Decimals = (0, multicallUtils_1.decodeDecimalsResult)(results[baseIndex + 3], token1Address);
242
+ const userBalance = (0, parseBigInt_1.default)(share.vaultShareBalance, types_1.ichiVaultDecimals);
243
+ if (totalSupply !== 0n) {
244
+ const amount0 = (userBalance * totalAmounts.total0) / totalSupply;
245
+ const amount1 = (userBalance * totalAmounts.total1) / totalSupply;
246
+ if (!raw) {
247
+ const userAmounts = {
248
+ amount0: (0, formatBigInt_1.default)(amount0, token0Decimals),
249
+ amount1: (0, formatBigInt_1.default)(amount1, token1Decimals),
250
+ 0: (0, formatBigInt_1.default)(amount0, token0Decimals),
251
+ 1: (0, formatBigInt_1.default)(amount1, token1Decimals),
249
252
  };
250
- if (!!raw) return [3 /*break*/, 7];
251
- return [4 /*yield*/, (0, _totalBalances_1.getTokenDecimals)(vault.tokenA, jsonProvider, chainId)];
252
- case 5:
253
- token0Decimals = _b.sent();
254
- return [4 /*yield*/, (0, _totalBalances_1.getTokenDecimals)(vault.tokenB, jsonProvider, chainId)];
255
- case 6:
256
- token1Decimals = _b.sent();
257
- userAmounts = {
258
- amount0: (0, formatBigInt_1.default)(userAmountsBN.amount0, token0Decimals),
259
- amount1: (0, formatBigInt_1.default)(userAmountsBN.amount1, token1Decimals),
260
- 0: (0, formatBigInt_1.default)(userAmountsBN.amount0, token0Decimals),
261
- 1: (0, formatBigInt_1.default)(userAmountsBN.amount1, token1Decimals),
253
+ return { vaultAddress: share.vault.id, userAmounts };
254
+ }
255
+ else {
256
+ const userAmountsBN = {
257
+ amount0,
258
+ amount1,
259
+ 0: amount0,
260
+ 1: amount1,
262
261
  };
263
- return [2 /*return*/, userAmounts];
264
- case 7: return [2 /*return*/, userAmountsBN];
265
- case 8: return [3 /*break*/, 10];
266
- case 9:
267
- if (!raw) {
268
- return [2 /*return*/, {
269
- amount0: '0',
270
- amount1: '0',
271
- 0: '0',
272
- 1: '0',
273
- }];
274
- }
275
- else {
276
- return [2 /*return*/, {
277
- amount0: ethers_1.BigNumber.from(0),
278
- amount1: ethers_1.BigNumber.from(0),
279
- 0: ethers_1.BigNumber.from(0),
280
- 1: ethers_1.BigNumber.from(0),
281
- }];
282
- }
283
- _b.label = 10;
284
- case 10: return [2 /*return*/];
262
+ return { vaultAddress: share.vault.id, userAmounts: userAmountsBN };
263
+ }
285
264
  }
286
- });
287
- });
288
- }
289
- exports.getUserAmounts = getUserAmounts;
290
- function getAllUserAmounts(accountAddress, jsonProvider, dex, raw) {
291
- var _a;
292
- return __awaiter(this, void 0, void 0, function () {
293
- var chainId, _b, publishedUrl, url, key, strUserBalancesQuery, result, error_2, result, error2_2, balances, calls, signer, results_1, processedResults, error_3;
294
- return __generator(this, function (_c) {
295
- switch (_c.label) {
296
- case 0: return [4 /*yield*/, (0, vault_1.getChainByProvider)(jsonProvider)];
297
- case 1:
298
- chainId = (_c.sent()).chainId;
299
- _b = (0, getGraphUrls_1.getGraphUrls)(chainId, dex, true), publishedUrl = _b.publishedUrl, url = _b.url;
300
- key = "".concat(chainId + accountAddress, "-all-user-amounts");
301
- if (!!Object.prototype.hasOwnProperty.call(promises, key)) return [3 /*break*/, 11];
302
- strUserBalancesQuery = (0, queries_1.getUserBalancesQuery)(chainId, dex);
303
- _c.label = 2;
304
- case 2:
305
- _c.trys.push([2, 6, , 11]);
306
- if (!publishedUrl) return [3 /*break*/, 4];
307
- return [4 /*yield*/, sendUserBalancesQueryRequest(publishedUrl, accountAddress, strUserBalancesQuery)];
308
- case 3:
309
- result = _c.sent();
310
- storeResult(key, result);
311
- return [3 /*break*/, 5];
312
- case 4: throw new Error("Published URL is invalid for dex ".concat(dex, " on chain ").concat(chainId));
313
- case 5: return [3 /*break*/, 11];
314
- case 6:
315
- error_2 = _c.sent();
316
- if (publishedUrl) {
317
- console.error('Request to published graph URL failed:', error_2);
318
- }
319
- _c.label = 7;
320
- case 7:
321
- _c.trys.push([7, 9, , 10]);
322
- return [4 /*yield*/, sendUserBalancesQueryRequest(url, accountAddress, strUserBalancesQuery)];
323
- case 8:
324
- result = _c.sent();
325
- storeResult(key, result);
326
- return [3 /*break*/, 10];
327
- case 9:
328
- error2_2 = _c.sent();
329
- console.error('Request to public graph URL failed:', error2_2);
330
- throw new Error("Could not get user balances for ".concat(accountAddress, " on chain ").concat(chainId));
331
- case 10: return [3 /*break*/, 11];
332
- case 11:
333
- _c.trys.push([11, 14, , 15]);
334
- return [4 /*yield*/, promises[key]];
335
- case 12:
336
- balances = _c.sent();
337
- if (!((_a = balances === null || balances === void 0 ? void 0 : balances.vaultShares) === null || _a === void 0 ? void 0 : _a.length)) {
338
- return [2 /*return*/, []];
339
- }
340
- calls = balances.vaultShares.flatMap(function (share) {
341
- // Normalize token naming by checking which properties exist
342
- var token0Address = getTokenAddress(share.vault, 0);
343
- var token1Address = getTokenAddress(share.vault, 1);
344
- return [
345
- (0, multicallUtils_1.encodeTotalAmountsCall)(share.vault.id),
346
- (0, multicallUtils_1.encodeTotalSupplyCall)(share.vault.id),
347
- (0, multicallUtils_1.encodeDecimalsCall)(token0Address),
348
- (0, multicallUtils_1.encodeDecimalsCall)(token1Address),
349
- ];
350
- });
351
- signer = jsonProvider.getSigner(accountAddress);
352
- return [4 /*yield*/, (0, multicallUtils_1.multicall)(calls, chainId, signer)];
353
- case 13:
354
- results_1 = _c.sent();
355
- processedResults = balances.vaultShares.map(function (share, index) {
356
- var baseIndex = index * 4;
357
- var totalAmounts = (0, multicallUtils_1.decodeTotalAmountsResult)(results_1[baseIndex], share.vault.id);
358
- var totalSupply = (0, multicallUtils_1.decodeTotalSupplyResult)(results_1[baseIndex + 1], share.vault.id);
359
- var token0Address = getTokenAddress(share.vault, 0);
360
- var token1Address = getTokenAddress(share.vault, 1);
361
- var token0Decimals = (0, multicallUtils_1.decodeDecimalsResult)(results_1[baseIndex + 2], token0Address);
362
- var token1Decimals = (0, multicallUtils_1.decodeDecimalsResult)(results_1[baseIndex + 3], token1Address);
363
- var userBalance = (0, parseBigInt_1.default)(share.vaultShareBalance, types_1.ichiVaultDecimals);
364
- if (!totalSupply.isZero()) {
365
- var amount0 = userBalance.mul(totalAmounts.total0).div(totalSupply);
366
- var amount1 = userBalance.mul(totalAmounts.total1).div(totalSupply);
367
- if (!raw) {
368
- var userAmounts = {
369
- amount0: (0, formatBigInt_1.default)(amount0, token0Decimals),
370
- amount1: (0, formatBigInt_1.default)(amount1, token1Decimals),
371
- 0: (0, formatBigInt_1.default)(amount0, token0Decimals),
372
- 1: (0, formatBigInt_1.default)(amount1, token1Decimals),
373
- };
374
- return { vaultAddress: share.vault.id, userAmounts: userAmounts };
375
- }
376
- else {
377
- var userAmountsBN = {
378
- amount0: amount0,
379
- amount1: amount1,
380
- 0: amount0,
381
- 1: amount1,
382
- };
383
- return { vaultAddress: share.vault.id, userAmounts: userAmountsBN };
384
- }
385
- }
386
- else {
387
- return {
388
- vaultAddress: share.vault.id,
389
- userAmounts: !raw
390
- ? {
391
- amount0: '0',
392
- amount1: '0',
393
- 0: '0',
394
- 1: '0',
395
- }
396
- : {
397
- amount0: ethers_1.BigNumber.from(0),
398
- amount1: ethers_1.BigNumber.from(0),
399
- 0: ethers_1.BigNumber.from(0),
400
- 1: ethers_1.BigNumber.from(0),
401
- },
402
- };
265
+ else {
266
+ return {
267
+ vaultAddress: share.vault.id,
268
+ userAmounts: !raw
269
+ ? {
270
+ amount0: '0',
271
+ amount1: '0',
272
+ 0: '0',
273
+ 1: '0',
403
274
  }
404
- });
405
- return [2 /*return*/, processedResults];
406
- case 14:
407
- error_3 = _c.sent();
408
- console.error('Could not get user amounts');
409
- throw error_3;
410
- case 15: return [2 /*return*/];
275
+ : {
276
+ amount0: 0n,
277
+ amount1: 0n,
278
+ 0: 0n,
279
+ 1: 0n,
280
+ },
281
+ };
411
282
  }
412
283
  });
413
- });
284
+ return processedResults;
285
+ }
286
+ catch (error) {
287
+ console.error('Could not get user amounts', error);
288
+ throw error;
289
+ }
414
290
  }
415
291
  exports.getAllUserAmounts = getAllUserAmounts;
416
292
  //# sourceMappingURL=userBalances.js.map