@alphafi/alphafi-sdk 0.0.52 → 0.0.53
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.
- package/dist/cjs/common/constants.d.ts.map +1 -1
- package/dist/cjs/common/constants.js +3 -2
- package/dist/cjs/common/constants.js.map +1 -1
- package/dist/cjs/getVaultBalances.d.ts.map +1 -1
- package/dist/cjs/getVaultBalances.js +10 -2
- package/dist/cjs/getVaultBalances.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.d.ts +1 -0
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.js +2 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.d.ts +9 -0
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.js +40 -0
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.js.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.js.map +1 -1
- package/dist/cjs/sui-sdk/events/types.d.ts +3 -0
- package/dist/cjs/sui-sdk/events/types.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/types.js.map +1 -1
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.js +1 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.js.map +1 -1
- package/dist/cjs/transactions/collect_rewards.d.ts.map +1 -1
- package/dist/cjs/transactions/collect_rewards.js +3 -26
- package/dist/cjs/transactions/collect_rewards.js.map +1 -1
- package/dist/cjs/transactions/navi-looping.d.ts.map +1 -1
- package/dist/cjs/transactions/navi-looping.js +8 -2
- package/dist/cjs/transactions/navi-looping.js.map +1 -1
- package/dist/cjs/transactions/zapDeposit.d.ts.map +1 -1
- package/dist/cjs/transactions/zapDeposit.js +4 -0
- package/dist/cjs/transactions/zapDeposit.js.map +1 -1
- package/dist/cjs/vaultFunctions.d.ts.map +1 -1
- package/dist/cjs/vaultFunctions.js.map +1 -1
- package/dist/esm/common/constants.d.ts.map +1 -1
- package/dist/esm/common/constants.js +3 -2
- package/dist/esm/common/constants.js.map +1 -1
- package/dist/esm/getVaultBalances.d.ts.map +1 -1
- package/dist/esm/getVaultBalances.js +10 -2
- package/dist/esm/getVaultBalances.js.map +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.d.ts +1 -0
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchEvents.js +2 -1
- package/dist/esm/sui-sdk/events/fetchEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.d.ts +9 -0
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.js +37 -0
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.js.map +1 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.js +1 -0
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.js.map +1 -1
- package/dist/esm/sui-sdk/events/types.d.ts +3 -0
- package/dist/esm/sui-sdk/events/types.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/types.js.map +1 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaults.d.ts.map +1 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaults.js +2 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaults.js.map +1 -1
- package/dist/esm/transactions/collect_rewards.d.ts.map +1 -1
- package/dist/esm/transactions/collect_rewards.js +2 -2
- package/dist/esm/transactions/collect_rewards.js.map +1 -1
- package/dist/esm/transactions/navi-looping.d.ts.map +1 -1
- package/dist/esm/transactions/navi-looping.js +8 -2
- package/dist/esm/transactions/navi-looping.js.map +1 -1
- package/dist/esm/transactions/zapDeposit.d.ts.map +1 -1
- package/dist/esm/transactions/zapDeposit.js +4 -0
- package/dist/esm/transactions/zapDeposit.js.map +1 -1
- package/dist/esm/vaultFunctions.d.ts.map +1 -1
- package/dist/esm/vaultFunctions.js.map +1 -1
- package/docs/assets/navigation.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/functions/alphaLpBreakdown.html +1 -1
- package/docs/functions/cetusLpBreakdown.html +1 -1
- package/docs/functions/claimBlueRewardTxb.html +1 -1
- package/docs/functions/claimRewardTxb.html +1 -1
- package/docs/functions/coinAmountToXTokensDoubleAsset.html +1 -1
- package/docs/functions/coinAmountToXTokensSingleAsset.html +1 -1
- package/docs/functions/coinsInPool.html +1 -1
- package/docs/functions/collectRewards.html +1 -1
- package/docs/functions/deposit.html +1 -1
- package/docs/functions/depositDoubleAssetTxb.html +1 -1
- package/docs/functions/depositSingleAssetTxb.html +1 -1
- package/docs/functions/fetchAfterTransactionEvents.html +1 -1
- package/docs/functions/fetchAutoCompoundingEvents.html +1 -1
- package/docs/functions/fetchAutoCompoundingEventsGql.html +1 -1
- package/docs/functions/fetchCetusPools.html +1 -1
- package/docs/functions/fetchChainIdentifier.html +1 -1
- package/docs/functions/fetchCheckRatioEvents.html +1 -1
- package/docs/functions/fetchLiquidityChangeEvents.html +1 -1
- package/docs/functions/fetchMultiCategoryEvents.html +1 -0
- package/docs/functions/fetchMultiReceipts.html +1 -1
- package/docs/functions/fetchNftHolders.html +1 -1
- package/docs/functions/fetchPools.html +1 -1
- package/docs/functions/fetchPortfolioData.html +1 -1
- package/docs/functions/fetchProtocolData.html +1 -1
- package/docs/functions/fetchTVL.html +1 -1
- package/docs/functions/fetchUserVaultBalances.html +1 -1
- package/docs/functions/fetchUserVaults.html +1 -1
- package/docs/functions/fetchUserWalletData.html +1 -1
- package/docs/functions/fetchVoloExchangeRate.html +1 -1
- package/docs/functions/fetchWithdrawV2Events.html +1 -1
- package/docs/functions/getAirdropShare.html +1 -1
- package/docs/functions/getAllDoubleAssetVaults.html +1 -1
- package/docs/functions/getAllSingleAssetVaults.html +1 -1
- package/docs/functions/getAllVaultBalances.html +1 -1
- package/docs/functions/getAllVaults.html +1 -1
- package/docs/functions/getAlphaUnlocks.html +1 -1
- package/docs/functions/getAlphaVaultBalance.html +1 -1
- package/docs/functions/getAmounts.html +1 -1
- package/docs/functions/getApr.html +1 -1
- package/docs/functions/getAprs.html +1 -1
- package/docs/functions/getApy.html +1 -1
- package/docs/functions/getApys.html +1 -1
- package/docs/functions/getCetusInvestorTicksMap.html +1 -1
- package/docs/functions/getCetusPool.html +1 -1
- package/docs/functions/getCetusSqrtPriceMap.html +1 -1
- package/docs/functions/getCoinAmountsFromLiquidity.html +1 -1
- package/docs/functions/getConf.html +1 -1
- package/docs/functions/getCurrentTick.html +1 -1
- package/docs/functions/getDistributor.html +1 -1
- package/docs/functions/getDoubleAssetVaultBalance.html +1 -1
- package/docs/functions/getDoubleAssetVaults.html +1 -1
- package/docs/functions/getHoldersFromTransactions.html +1 -1
- package/docs/functions/getInvestor.html +1 -1
- package/docs/functions/getInvestorPoolMap.html +1 -1
- package/docs/functions/getLastAutoCompoundTime.html +1 -1
- package/docs/functions/getLatestPrices.html +1 -1
- package/docs/functions/getLiquidity.html +1 -1
- package/docs/functions/getMultiCetusPool.html +1 -1
- package/docs/functions/getMultiInvestor.html +1 -1
- package/docs/functions/getMultiLatestPrices.html +1 -1
- package/docs/functions/getMultiParentPool.html +1 -1
- package/docs/functions/getMultiPool.html +1 -1
- package/docs/functions/getMultiReceipts.html +1 -1
- package/docs/functions/getParentPool.html +1 -1
- package/docs/functions/getPool.html +1 -1
- package/docs/functions/getPoolExchangeRate.html +1 -1
- package/docs/functions/getPoolExchangeRateMap.html +1 -1
- package/docs/functions/getPoolsWeightDistribution.html +1 -1
- package/docs/functions/getPositionRange.html +1 -1
- package/docs/functions/getPositionRanges.html +1 -1
- package/docs/functions/getPositionTicks.html +1 -1
- package/docs/functions/getPriceToTick.html +1 -1
- package/docs/functions/getRebalanceHistories.html +1 -1
- package/docs/functions/getRebalanceHistory.html +1 -1
- package/docs/functions/getReceipts.html +1 -1
- package/docs/functions/getSingleAssetVaultBalance.html +1 -1
- package/docs/functions/getSingleAssetVaults.html +1 -1
- package/docs/functions/getSuiClient.html +2 -2
- package/docs/functions/getSuiNodeUrl.html +2 -2
- package/docs/functions/getTVLs-1.html +1 -1
- package/docs/functions/getTickToPrice.html +1 -1
- package/docs/functions/getTvls.html +1 -1
- package/docs/functions/getUserTokensFromTransactions.html +1 -1
- package/docs/functions/getUserTokensInUsdFromTransactions.html +1 -1
- package/docs/functions/getVaultBalance.html +1 -1
- package/docs/functions/getVaultBalanceForActiveUsers.html +1 -1
- package/docs/functions/getVaults.html +1 -1
- package/docs/functions/getXTokenVaultBalanceForActiveUsers.html +1 -1
- package/docs/functions/getZapAmounts.html +1 -1
- package/docs/functions/lastAutocompoundTime.html +1 -1
- package/docs/functions/liquidityToTokens.html +1 -1
- package/docs/functions/multiLiquidityToTokens.html +1 -1
- package/docs/functions/multiTokensToUsd.html +1 -1
- package/docs/functions/multiXTokensToLiquidity.html +1 -1
- package/docs/functions/parseUserWalletData.html +1 -1
- package/docs/functions/pendingBlueRewardAmount.html +1 -1
- package/docs/functions/setCustomSuiClient.html +2 -2
- package/docs/functions/setSuiClient.html +2 -2
- package/docs/functions/setSuiNodeUrl.html +2 -2
- package/docs/functions/setWeights.html +1 -1
- package/docs/functions/withdraw.html +1 -1
- package/docs/functions/withdrawAlphaTxb.html +1 -1
- package/docs/functions/withdrawTxb.html +1 -1
- package/docs/functions/zapDepositTxb.html +1 -1
- package/docs/index.html +2 -2
- package/docs/interfaces/Coin.html +6 -6
- package/docs/interfaces/CoinPair.html +2 -2
- package/docs/interfaces/NaviVoloData.html +2 -2
- package/docs/interfaces/PoolData.html +2 -2
- package/docs/interfaces/PoolWeightDistribution.html +2 -2
- package/docs/interfaces/RebalanceHistoryType.html +2 -2
- package/docs/modules.html +4 -2
- package/docs/types/AfterTransactionEventNode.html +1 -1
- package/docs/types/Allocator.html +1 -1
- package/docs/types/AlphaFiDoubleAssetVault.html +1 -1
- package/docs/types/AlphaFiMultiVaultBalance.html +1 -1
- package/docs/types/AlphaFiSingleAssetVault.html +1 -1
- package/docs/types/AlphaFiVault.html +1 -1
- package/docs/types/AlphaFiVaultBalance.html +1 -1
- package/docs/types/AlphaPoolType.html +1 -1
- package/docs/types/AlphaReceipt.html +1 -1
- package/docs/types/AlphaReceiptFields.html +1 -1
- package/docs/types/AlphaVaultBalance.html +1 -1
- package/docs/types/AutoBalancePoolNames.html +1 -1
- package/docs/types/AutoCompoundingEventNode.html +1 -1
- package/docs/types/BluefinInvestor.html +1 -1
- package/docs/types/BluefinPoolType.html +1 -1
- package/docs/types/BucketInvestor.html +1 -1
- package/docs/types/CetusInvestor.html +1 -1
- package/docs/types/CetusPoolType.html +1 -1
- package/docs/types/CetusSwapOptions.html +1 -1
- package/docs/types/CoinAmounts.html +1 -1
- package/docs/types/CoinName.html +1 -1
- package/docs/types/CoinType.html +1 -1
- package/docs/types/CommonInvestorFields.html +1 -1
- package/docs/types/CreatePoolOptions.html +1 -1
- package/docs/types/Distributor.html +1 -1
- package/docs/types/DoubleAssetMultiVaultBalance.html +1 -1
- package/docs/types/DoubleAssetPoolNames.html +1 -1
- package/docs/types/DoubleAssetTokenHoldings.html +1 -1
- package/docs/types/DoubleAssetVaultBalance.html +1 -1
- package/docs/types/EventNode.html +1 -0
- package/docs/types/GetHoldersParams.html +1 -1
- package/docs/types/GetTokenHoldingsParams.html +1 -1
- package/docs/types/GetUserTokensFromTransactionsParams.html +1 -1
- package/docs/types/GetUserTokensInUsdFromTransactionsParams.html +1 -1
- package/docs/types/GetVaultBalanceForActiveUsersParams.html +1 -1
- package/docs/types/GetVaultBalanceParams.html +1 -1
- package/docs/types/HoldingsObj.html +1 -1
- package/docs/types/Icon.html +1 -1
- package/docs/types/Investor.html +1 -1
- package/docs/types/LiquidityChangeEventNode.html +1 -1
- package/docs/types/LiquidityToTokensParams.html +1 -1
- package/docs/types/LiquidityToUsdParams.html +1 -1
- package/docs/types/LoopingDebt.html +1 -1
- package/docs/types/LoopingPoolNames.html +1 -1
- package/docs/types/LpBreakdownType.html +1 -1
- package/docs/types/MemberPoolDataType.html +1 -1
- package/docs/types/MemberType.html +1 -1
- package/docs/types/MultiGetVaultBalancesParams.html +1 -1
- package/docs/types/NaviInvestor.html +1 -1
- package/docs/types/OtherReceiptFields.html +1 -1
- package/docs/types/PoolName.html +1 -1
- package/docs/types/PoolReceipt.html +1 -1
- package/docs/types/PoolType.html +1 -1
- package/docs/types/Receipt.html +1 -1
- package/docs/types/ReceiptGQL.html +1 -1
- package/docs/types/SingleAssetMultiVaultBalance.html +1 -1
- package/docs/types/SingleAssetPoolNames.html +1 -1
- package/docs/types/SingleAssetTokenHoldings.html +1 -1
- package/docs/types/SingleAssetVaultBalance.html +1 -1
- package/docs/types/SingleGetVaultBalancesParams.html +1 -1
- package/docs/types/StrategyType.html +1 -1
- package/docs/types/SuiNetwork.html +1 -1
- package/docs/types/SwapOptions.html +1 -1
- package/docs/types/TickSpacing.html +1 -1
- package/docs/types/TotalWeightType.html +1 -1
- package/docs/types/TransactionBlockType.html +1 -1
- package/docs/types/UserPoolLiquidity.html +1 -1
- package/docs/types/UserPoolTokenHoldings.html +1 -1
- package/docs/types/UserUsdHoldings.html +1 -1
- package/docs/types/VaultBalance.html +1 -1
- package/docs/types/WithdrawV2EventNode.html +1 -1
- package/docs/variables/bluefinPoolMap.html +1 -1
- package/docs/variables/cetusPoolMap.html +1 -1
- package/docs/variables/coinsList.html +1 -1
- package/docs/variables/defunctPoolsSet.html +1 -1
- package/docs/variables/doubleAssetPoolCoinMap.html +1 -1
- package/docs/variables/ignoredWalletsForDailyRevenue.html +1 -1
- package/docs/variables/loopingAccountAddresses.html +1 -1
- package/docs/variables/loopingPoolCoinMap.html +1 -1
- package/docs/variables/naviAssetMap.html +1 -1
- package/docs/variables/poolIdPoolNameMap.html +1 -1
- package/docs/variables/poolInfo.html +1 -1
- package/docs/variables/singleAssetPoolCoinMap.html +1 -1
- package/docs/variables/stableCoins.html +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getVaultBalances.d.ts","sourceRoot":"","sources":["../../src/getVaultBalances.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,QAAQ,EACR,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,EAC3B,WAAW,EAGX,wBAAwB,EAGxB,YAAY,EACZ,mCAAmC,EACpC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"getVaultBalances.d.ts","sourceRoot":"","sources":["../../src/getVaultBalances.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,QAAQ,EACR,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,EAC3B,WAAW,EAGX,wBAAwB,EAGxB,YAAY,EACZ,mCAAmC,EACpC,MAAM,YAAY,CAAC;AAmBpB,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,mCAAmC,0BAgB5C;AAED,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,mCAAmC,uCAwD5C;AAED,wBAAsB,eAAe,CACnC,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,QAAQ,EACnB,QAAQ,CAAC,EAAE,2BAA2B,GACrC,OAAO,CAAC,YAAY,CAAC,CAuEvB;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAGxC;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAG9C;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAG9C;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAS7C"}
|
|
@@ -13,6 +13,7 @@ const parseData_js_1 = require("./sui-sdk/events/parseData.js");
|
|
|
13
13
|
const userHoldings_js_1 = require("./utils/userHoldings.js");
|
|
14
14
|
const prices_js_1 = require("./utils/prices.js");
|
|
15
15
|
const maps_js_1 = require("./common/maps.js");
|
|
16
|
+
const index_js_1 = require("./index.js");
|
|
16
17
|
async function getXTokenVaultBalanceForActiveUsers(params) {
|
|
17
18
|
const liquidityChangeEvents = await (0, fetchLiquidityChangeEvents_js_1.fetchLiquidityChangeEvents)(params);
|
|
18
19
|
const xTokenHoldingsArr = (0, parseData_js_1.parseXTokensFromLCEvent)(liquidityChangeEvents);
|
|
@@ -70,7 +71,15 @@ async function getVaultBalanceForActiveUsers(params) {
|
|
|
70
71
|
}
|
|
71
72
|
async function getVaultBalance(address, poolName, multiGet) {
|
|
72
73
|
if (address && poolName && !multiGet) {
|
|
73
|
-
|
|
74
|
+
await Promise.all([
|
|
75
|
+
(0, prices_js_1.getMultiLatestPrices)(),
|
|
76
|
+
(0, index_js_1.getMultiCetusPool)(),
|
|
77
|
+
(0, index_js_1.getMultiInvestor)(),
|
|
78
|
+
(0, index_js_1.getMultiParentPool)(),
|
|
79
|
+
(0, index_js_1.getMultiReceipts)(address),
|
|
80
|
+
(0, index_js_1.getMultiPool)(),
|
|
81
|
+
]);
|
|
82
|
+
const vaultBalance = await (0, fetchUserVaultBalances_js_1.fetchUserVaultBalances)(address, poolName, false);
|
|
74
83
|
return vaultBalance;
|
|
75
84
|
}
|
|
76
85
|
else if (!address && !poolName && multiGet) {
|
|
@@ -133,7 +142,6 @@ async function getDoubleAssetVaultBalance(address, poolName) {
|
|
|
133
142
|
return vaultBalance;
|
|
134
143
|
}
|
|
135
144
|
async function getAllVaultBalances(address) {
|
|
136
|
-
await (0, prices_js_1.getMultiLatestPrices)();
|
|
137
145
|
const pools = Object.keys(maps_js_1.poolInfo);
|
|
138
146
|
const res = new Map();
|
|
139
147
|
const promises = pools.map(async (pool) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getVaultBalances.js","sourceRoot":"","sources":["../../src/getVaultBalances.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AlphaFiVaultBalance,\n AlphaVaultBalance,\n DoubleAssetVaultBalance,\n PoolName,\n SingleAssetVaultBalance,\n} from \"./common/types.js\";\nimport { fetchUserVaultBalances } from \"./sui-sdk/functions/fetchUserVaultBalances.js\";\nimport {\n MultiGetVaultBalancesParams,\n HoldingsObj,\n SingleAssetTokenHoldings,\n DoubleAssetTokenHoldings,\n AlphaFiMultiVaultBalance,\n SingleAssetMultiVaultBalance,\n DoubleAssetMultiVaultBalance,\n VaultBalance,\n GetVaultBalanceForActiveUsersParams,\n} from \"./types.js\";\nimport { FetchLiquidityChangeEventsParams } from \"./sui-sdk/events/types.js\";\nimport { fetchLiquidityChangeEvents } from \"./sui-sdk/events/fetchLiquidityChangeEvents.js\";\nimport { parseXTokensFromLCEvent } from \"./sui-sdk/events/parseData.js\";\nimport {\n multiLiquidityToTokens,\n multiTokensToUsd,\n multiXTokensToLiquidity,\n} from \"./utils/userHoldings.js\";\nimport { getMultiLatestPrices } from \"./utils/prices.js\";\nimport { poolInfo } from \"./common/maps.js\";\n\nexport async function getXTokenVaultBalanceForActiveUsers(\n params: GetVaultBalanceForActiveUsersParams,\n) {\n const liquidityChangeEvents = await fetchLiquidityChangeEvents(\n params as FetchLiquidityChangeEventsParams,\n );\n const xTokenHoldingsArr = parseXTokensFromLCEvent(liquidityChangeEvents);\n const xTokenHoldingsObj: HoldingsObj[] = xTokenHoldingsArr.map(\n ([address, poolName, xTokens]) => {\n return {\n owner: address,\n poolName: poolName as PoolName,\n holding: xTokens,\n };\n },\n );\n return xTokenHoldingsObj;\n}\n\nexport async function getVaultBalanceForActiveUsers(\n params: GetVaultBalanceForActiveUsersParams,\n) {\n // multirun\n\n const liquidityChangeEvents = await fetchLiquidityChangeEvents(\n params as FetchLiquidityChangeEventsParams,\n );\n const xTokenHoldingsArr = parseXTokensFromLCEvent(liquidityChangeEvents);\n const xTokenHoldingsObj: HoldingsObj[] = xTokenHoldingsArr.map(\n ([address, poolName, xTokens]) => {\n return {\n owner: address,\n poolName: poolName as PoolName,\n holding: xTokens,\n };\n },\n );\n const liquidityHoldingsObj: HoldingsObj[] =\n await multiXTokensToLiquidity(xTokenHoldingsObj);\n const tokenHoldingsObj: (\n | SingleAssetTokenHoldings\n | DoubleAssetTokenHoldings\n )[] = await multiLiquidityToTokens(liquidityHoldingsObj);\n const usdHoldingsObj: HoldingsObj[] =\n await multiTokensToUsd(tokenHoldingsObj);\n const uniqueUsdHoldings: { [key: string]: string } = {};\n usdHoldingsObj.map((usdHolding) => {\n uniqueUsdHoldings[`${usdHolding.owner}_${usdHolding.poolName}`] =\n usdHolding.holding;\n });\n const multiVaultBalances: AlphaFiMultiVaultBalance[] = tokenHoldingsObj.map(\n (tokenHolding) => {\n const owner = tokenHolding.user;\n const poolName = tokenHolding.poolName;\n const tokensInUsd = uniqueUsdHoldings[`${owner}_${poolName}`];\n\n if (\"tokens\" in tokenHolding) {\n return {\n owner: owner,\n poolName: poolName,\n tokens: tokenHolding.tokens,\n tokensInUsd: tokensInUsd,\n } as SingleAssetMultiVaultBalance;\n } else {\n return {\n owner: owner,\n poolName: poolName,\n tokenA: tokenHolding.tokenAmountA,\n tokenB: tokenHolding.tokenAmountB,\n tokensInUsd: tokensInUsd,\n } as DoubleAssetMultiVaultBalance;\n }\n },\n );\n\n return multiVaultBalances;\n}\n\nexport async function getVaultBalance(\n address?: string,\n poolName?: PoolName,\n multiGet?: MultiGetVaultBalancesParams,\n): Promise<VaultBalance> {\n if (address && poolName && !multiGet) {\n const vaultBalance = await fetchUserVaultBalances(address, poolName, true);\n\n return vaultBalance;\n } else if (!address && !poolName && multiGet) {\n // multirun\n const liquidityChangeEvents = await fetchLiquidityChangeEvents(\n multiGet as FetchLiquidityChangeEventsParams,\n );\n const xTokenHoldingsArr = parseXTokensFromLCEvent(liquidityChangeEvents);\n const xTokenHoldingsObj: HoldingsObj[] = xTokenHoldingsArr.map(\n ([address, poolName, xTokens]) => {\n return {\n owner: address,\n poolName: poolName as PoolName,\n holding: xTokens,\n };\n },\n );\n const liquidityHoldingsObj: HoldingsObj[] =\n await multiXTokensToLiquidity(xTokenHoldingsObj);\n const tokenHoldingsObj: (\n | SingleAssetTokenHoldings\n | DoubleAssetTokenHoldings\n )[] = await multiLiquidityToTokens(liquidityHoldingsObj);\n const usdHoldingsObj: HoldingsObj[] =\n await multiTokensToUsd(tokenHoldingsObj);\n const uniqueUsdHoldings: { [key: string]: string } = {};\n usdHoldingsObj.map((usdHolding) => {\n uniqueUsdHoldings[`${usdHolding.owner}_${usdHolding.poolName}`] =\n usdHolding.holding;\n });\n const multiVaultBalances: AlphaFiMultiVaultBalance[] = tokenHoldingsObj.map(\n (tokenHolding) => {\n const owner = tokenHolding.user;\n const poolName = tokenHolding.poolName;\n const tokensInUsd = uniqueUsdHoldings[`${owner}_${poolName}`];\n\n if (\"tokens\" in tokenHolding) {\n return {\n owner: owner,\n poolName: poolName,\n tokens: tokenHolding.tokens,\n tokensInUsd: tokensInUsd,\n } as SingleAssetMultiVaultBalance;\n } else {\n return {\n owner: owner,\n poolName: poolName,\n tokenA: tokenHolding.tokenAmountA,\n tokenB: tokenHolding.tokenAmountB,\n tokensInUsd: tokensInUsd,\n } as DoubleAssetMultiVaultBalance;\n }\n },\n );\n\n return multiVaultBalances;\n } else {\n throw new Error(\n \"Invalid Params: Give only multiGet or only address and poolName\",\n );\n }\n}\n\nexport async function getAlphaVaultBalance(\n address: string,\n): Promise<AlphaVaultBalance | undefined> {\n const vaultBalance = await getVaultBalance(address, \"ALPHA\");\n return vaultBalance as AlphaVaultBalance;\n}\n\nexport async function getSingleAssetVaultBalance(\n address: string,\n poolName: PoolName,\n): Promise<SingleAssetVaultBalance | undefined> {\n const vaultBalance = await getVaultBalance(address, poolName);\n return vaultBalance as SingleAssetVaultBalance;\n}\n\nexport async function getDoubleAssetVaultBalance(\n address: string,\n poolName: PoolName,\n): Promise<DoubleAssetVaultBalance | undefined> {\n const vaultBalance = await getVaultBalance(address, poolName);\n return vaultBalance as DoubleAssetVaultBalance;\n}\n\nexport async function getAllVaultBalances(\n address: string,\n): Promise<Map<PoolName, AlphaFiVaultBalance>> {\n await getMultiLatestPrices();\n const pools = Object.keys(poolInfo);\n const res = new Map<PoolName, AlphaFiVaultBalance>();\n const promises = pools.map(async (pool) => {\n const result = await getVaultBalance(address, pool as PoolName);\n res.set(pool as PoolName, result as AlphaFiVaultBalance);\n });\n await Promise.all(promises);\n return res;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"getVaultBalances.js","sourceRoot":"","sources":["../../src/getVaultBalances.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AlphaFiVaultBalance,\n AlphaVaultBalance,\n DoubleAssetVaultBalance,\n PoolName,\n SingleAssetVaultBalance,\n} from \"./common/types.js\";\nimport { fetchUserVaultBalances } from \"./sui-sdk/functions/fetchUserVaultBalances.js\";\nimport {\n MultiGetVaultBalancesParams,\n HoldingsObj,\n SingleAssetTokenHoldings,\n DoubleAssetTokenHoldings,\n AlphaFiMultiVaultBalance,\n SingleAssetMultiVaultBalance,\n DoubleAssetMultiVaultBalance,\n VaultBalance,\n GetVaultBalanceForActiveUsersParams,\n} from \"./types.js\";\nimport { FetchLiquidityChangeEventsParams } from \"./sui-sdk/events/types.js\";\nimport { fetchLiquidityChangeEvents } from \"./sui-sdk/events/fetchLiquidityChangeEvents.js\";\nimport { parseXTokensFromLCEvent } from \"./sui-sdk/events/parseData.js\";\nimport {\n multiLiquidityToTokens,\n multiTokensToUsd,\n multiXTokensToLiquidity,\n} from \"./utils/userHoldings.js\";\nimport { getMultiLatestPrices } from \"./utils/prices.js\";\nimport { poolInfo } from \"./common/maps.js\";\nimport {\n getMultiCetusPool,\n getMultiInvestor,\n getMultiParentPool,\n getMultiPool,\n getMultiReceipts,\n} from \"./index.js\";\n\nexport async function getXTokenVaultBalanceForActiveUsers(\n params: GetVaultBalanceForActiveUsersParams,\n) {\n const liquidityChangeEvents = await fetchLiquidityChangeEvents(\n params as FetchLiquidityChangeEventsParams,\n );\n const xTokenHoldingsArr = parseXTokensFromLCEvent(liquidityChangeEvents);\n const xTokenHoldingsObj: HoldingsObj[] = xTokenHoldingsArr.map(\n ([address, poolName, xTokens]) => {\n return {\n owner: address,\n poolName: poolName as PoolName,\n holding: xTokens,\n };\n },\n );\n return xTokenHoldingsObj;\n}\n\nexport async function getVaultBalanceForActiveUsers(\n params: GetVaultBalanceForActiveUsersParams,\n) {\n // multirun\n\n const liquidityChangeEvents = await fetchLiquidityChangeEvents(\n params as FetchLiquidityChangeEventsParams,\n );\n const xTokenHoldingsArr = parseXTokensFromLCEvent(liquidityChangeEvents);\n const xTokenHoldingsObj: HoldingsObj[] = xTokenHoldingsArr.map(\n ([address, poolName, xTokens]) => {\n return {\n owner: address,\n poolName: poolName as PoolName,\n holding: xTokens,\n };\n },\n );\n const liquidityHoldingsObj: HoldingsObj[] =\n await multiXTokensToLiquidity(xTokenHoldingsObj);\n const tokenHoldingsObj: (\n | SingleAssetTokenHoldings\n | DoubleAssetTokenHoldings\n )[] = await multiLiquidityToTokens(liquidityHoldingsObj);\n const usdHoldingsObj: HoldingsObj[] =\n await multiTokensToUsd(tokenHoldingsObj);\n const uniqueUsdHoldings: { [key: string]: string } = {};\n usdHoldingsObj.map((usdHolding) => {\n uniqueUsdHoldings[`${usdHolding.owner}_${usdHolding.poolName}`] =\n usdHolding.holding;\n });\n const multiVaultBalances: AlphaFiMultiVaultBalance[] = tokenHoldingsObj.map(\n (tokenHolding) => {\n const owner = tokenHolding.user;\n const poolName = tokenHolding.poolName;\n const tokensInUsd = uniqueUsdHoldings[`${owner}_${poolName}`];\n\n if (\"tokens\" in tokenHolding) {\n return {\n owner: owner,\n poolName: poolName,\n tokens: tokenHolding.tokens,\n tokensInUsd: tokensInUsd,\n } as SingleAssetMultiVaultBalance;\n } else {\n return {\n owner: owner,\n poolName: poolName,\n tokenA: tokenHolding.tokenAmountA,\n tokenB: tokenHolding.tokenAmountB,\n tokensInUsd: tokensInUsd,\n } as DoubleAssetMultiVaultBalance;\n }\n },\n );\n\n return multiVaultBalances;\n}\n\nexport async function getVaultBalance(\n address?: string,\n poolName?: PoolName,\n multiGet?: MultiGetVaultBalancesParams,\n): Promise<VaultBalance> {\n if (address && poolName && !multiGet) {\n await Promise.all([\n getMultiLatestPrices(),\n getMultiCetusPool(),\n getMultiInvestor(),\n getMultiParentPool(),\n getMultiReceipts(address),\n getMultiPool(),\n ]);\n const vaultBalance = await fetchUserVaultBalances(address, poolName, false);\n return vaultBalance;\n } else if (!address && !poolName && multiGet) {\n // multirun\n const liquidityChangeEvents = await fetchLiquidityChangeEvents(\n multiGet as FetchLiquidityChangeEventsParams,\n );\n const xTokenHoldingsArr = parseXTokensFromLCEvent(liquidityChangeEvents);\n const xTokenHoldingsObj: HoldingsObj[] = xTokenHoldingsArr.map(\n ([address, poolName, xTokens]) => {\n return {\n owner: address,\n poolName: poolName as PoolName,\n holding: xTokens,\n };\n },\n );\n const liquidityHoldingsObj: HoldingsObj[] =\n await multiXTokensToLiquidity(xTokenHoldingsObj);\n const tokenHoldingsObj: (\n | SingleAssetTokenHoldings\n | DoubleAssetTokenHoldings\n )[] = await multiLiquidityToTokens(liquidityHoldingsObj);\n const usdHoldingsObj: HoldingsObj[] =\n await multiTokensToUsd(tokenHoldingsObj);\n const uniqueUsdHoldings: { [key: string]: string } = {};\n usdHoldingsObj.map((usdHolding) => {\n uniqueUsdHoldings[`${usdHolding.owner}_${usdHolding.poolName}`] =\n usdHolding.holding;\n });\n const multiVaultBalances: AlphaFiMultiVaultBalance[] = tokenHoldingsObj.map(\n (tokenHolding) => {\n const owner = tokenHolding.user;\n const poolName = tokenHolding.poolName;\n const tokensInUsd = uniqueUsdHoldings[`${owner}_${poolName}`];\n\n if (\"tokens\" in tokenHolding) {\n return {\n owner: owner,\n poolName: poolName,\n tokens: tokenHolding.tokens,\n tokensInUsd: tokensInUsd,\n } as SingleAssetMultiVaultBalance;\n } else {\n return {\n owner: owner,\n poolName: poolName,\n tokenA: tokenHolding.tokenAmountA,\n tokenB: tokenHolding.tokenAmountB,\n tokensInUsd: tokensInUsd,\n } as DoubleAssetMultiVaultBalance;\n }\n },\n );\n\n return multiVaultBalances;\n } else {\n throw new Error(\n \"Invalid Params: Give only multiGet or only address and poolName\",\n );\n }\n}\n\nexport async function getAlphaVaultBalance(\n address: string,\n): Promise<AlphaVaultBalance | undefined> {\n const vaultBalance = await getVaultBalance(address, \"ALPHA\");\n return vaultBalance as AlphaVaultBalance;\n}\n\nexport async function getSingleAssetVaultBalance(\n address: string,\n poolName: PoolName,\n): Promise<SingleAssetVaultBalance | undefined> {\n const vaultBalance = await getVaultBalance(address, poolName);\n return vaultBalance as SingleAssetVaultBalance;\n}\n\nexport async function getDoubleAssetVaultBalance(\n address: string,\n poolName: PoolName,\n): Promise<DoubleAssetVaultBalance | undefined> {\n const vaultBalance = await getVaultBalance(address, poolName);\n return vaultBalance as DoubleAssetVaultBalance;\n}\n\nexport async function getAllVaultBalances(\n address: string,\n): Promise<Map<PoolName, AlphaFiVaultBalance>> {\n const pools = Object.keys(poolInfo);\n const res = new Map<PoolName, AlphaFiVaultBalance>();\n const promises = pools.map(async (pool) => {\n const result = await getVaultBalance(address, pool as PoolName);\n res.set(pool as PoolName, result as AlphaFiVaultBalance);\n });\n await Promise.all(promises);\n return res;\n}\n"]}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -33,7 +33,8 @@ export { fetchAutoCompoundingEvents } from "./sui-sdk/events/fetchAutoCompoundin
|
|
|
33
33
|
export { fetchWithdrawV2Events } from "./sui-sdk/events/fetchWithdrawV2Events.js";
|
|
34
34
|
export { fetchAfterTransactionEvents } from "./sui-sdk/events/fetchAfterTransactionEvents.js";
|
|
35
35
|
export { fetchCheckRatioEvents } from "./sui-sdk/events/fetchCheckRatioEvents.js";
|
|
36
|
-
export {
|
|
36
|
+
export { fetchMultiCategoryEvents } from "./sui-sdk/events/fetchMultiCategoryEvents.js";
|
|
37
|
+
export { LiquidityChangeEventNode, AutoCompoundingEventNode, WithdrawV2EventNode, AfterTransactionEventNode, EventNode, } from "./sui-sdk/events/types.js";
|
|
37
38
|
export { ReceiptGQL } from "./graphql/types.js";
|
|
38
39
|
export * from "./types.js";
|
|
39
40
|
export * from "./adminFunctions.js";
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getReceipts = exports.getLastAutoCompoundTime = exports.getUserTokensInUsdFromTransactions = exports.getUserTokensFromTransactions = exports.getHoldersFromTransactions = exports.fetchTVL = exports.getTvls = exports.getTVLs = exports.getRebalanceHistories = exports.getRebalanceHistory = exports.getApys = exports.getApy = exports.getAprs = exports.getApr = exports.lastAutocompoundTime = exports.cetusLpBreakdown = exports.alphaLpBreakdown = exports.getAirdropShare = exports.getAllSingleAssetVaults = exports.getAllDoubleAssetVaults = exports.getAllVaults = exports.getZapAmounts = exports.zapDepositTxb = exports.pendingBlueRewardAmount = exports.claimBlueRewardTxb = exports.claimRewardTxb = exports.withdrawAlphaTxb = exports.coinAmountToXTokensSingleAsset = exports.coinAmountToXTokensDoubleAsset = exports.withdrawTxb = exports.getLiquidity = exports.getCoinAmountsFromLiquidity = exports.getAmounts = exports.depositSingleAssetTxb = exports.depositDoubleAssetTxb = exports.getAllVaultBalances = exports.getXTokenVaultBalanceForActiveUsers = exports.getVaultBalanceForActiveUsers = exports.getDoubleAssetVaultBalance = exports.getSingleAssetVaultBalance = exports.getAlphaVaultBalance = exports.getVaultBalance = exports.getDoubleAssetVaults = exports.getSingleAssetVaults = exports.getVaults = exports.getSuiClient = exports.getSuiNodeUrl = exports.setCustomSuiClient = exports.setSuiClient = exports.setSuiNodeUrl = void 0;
|
|
4
|
-
exports.fetchCheckRatioEvents = exports.fetchAfterTransactionEvents = exports.fetchWithdrawV2Events = exports.fetchAutoCompoundingEvents = exports.fetchLiquidityChangeEvents = exports.getAlphaUnlocks = exports.coinsList = exports.getConf = exports.ignoredWalletsForDailyRevenue = exports.naviAssetMap = exports.loopingPoolCoinMap = exports.singleAssetPoolCoinMap = exports.doubleAssetPoolCoinMap = exports.loopingAccountAddresses = exports.bluefinPoolMap = exports.cetusPoolMap = exports.stableCoins = exports.coinsInPool = exports.poolIdPoolNameMap = exports.defunctPoolsSet = exports.getPoolExchangeRateMap = exports.getInvestorPoolMap = exports.getCetusInvestorTicksMap = exports.getCetusSqrtPriceMap = exports.poolInfo = exports.multiLiquidityToTokens = exports.multiXTokensToLiquidity = exports.multiTokensToUsd = exports.liquidityToTokens = exports.getLatestPrices = exports.getMultiLatestPrices = exports.getPositionRanges = exports.getPositionRange = exports.fetchVoloExchangeRate = exports.getPoolExchangeRate = exports.getMultiCetusPool = exports.getDistributor = exports.getCetusPool = exports.getMultiReceipts = exports.getMultiPool = exports.getMultiParentPool = exports.getMultiInvestor = exports.getInvestor = exports.getParentPool = exports.getPool = void 0;
|
|
4
|
+
exports.fetchMultiCategoryEvents = exports.fetchCheckRatioEvents = exports.fetchAfterTransactionEvents = exports.fetchWithdrawV2Events = exports.fetchAutoCompoundingEvents = exports.fetchLiquidityChangeEvents = exports.getAlphaUnlocks = exports.coinsList = exports.getConf = exports.ignoredWalletsForDailyRevenue = exports.naviAssetMap = exports.loopingPoolCoinMap = exports.singleAssetPoolCoinMap = exports.doubleAssetPoolCoinMap = exports.loopingAccountAddresses = exports.bluefinPoolMap = exports.cetusPoolMap = exports.stableCoins = exports.coinsInPool = exports.poolIdPoolNameMap = exports.defunctPoolsSet = exports.getPoolExchangeRateMap = exports.getInvestorPoolMap = exports.getCetusInvestorTicksMap = exports.getCetusSqrtPriceMap = exports.poolInfo = exports.multiLiquidityToTokens = exports.multiXTokensToLiquidity = exports.multiTokensToUsd = exports.liquidityToTokens = exports.getLatestPrices = exports.getMultiLatestPrices = exports.getPositionRanges = exports.getPositionRange = exports.fetchVoloExchangeRate = exports.getPoolExchangeRate = exports.getMultiCetusPool = exports.getDistributor = exports.getCetusPool = exports.getMultiReceipts = exports.getMultiPool = exports.getMultiParentPool = exports.getMultiInvestor = exports.getInvestor = exports.getParentPool = exports.getPool = void 0;
|
|
5
5
|
const tslib_1 = require("tslib");
|
|
6
6
|
var client_js_1 = require("./sui-sdk/client.js");
|
|
7
7
|
Object.defineProperty(exports, "setSuiNodeUrl", { enumerable: true, get: function () { return client_js_1.setSuiNodeUrl; } });
|
|
@@ -136,6 +136,8 @@ var fetchAfterTransactionEvents_js_1 = require("./sui-sdk/events/fetchAfterTrans
|
|
|
136
136
|
Object.defineProperty(exports, "fetchAfterTransactionEvents", { enumerable: true, get: function () { return fetchAfterTransactionEvents_js_1.fetchAfterTransactionEvents; } });
|
|
137
137
|
var fetchCheckRatioEvents_js_1 = require("./sui-sdk/events/fetchCheckRatioEvents.js");
|
|
138
138
|
Object.defineProperty(exports, "fetchCheckRatioEvents", { enumerable: true, get: function () { return fetchCheckRatioEvents_js_1.fetchCheckRatioEvents; } });
|
|
139
|
+
var fetchMultiCategoryEvents_js_1 = require("./sui-sdk/events/fetchMultiCategoryEvents.js");
|
|
140
|
+
Object.defineProperty(exports, "fetchMultiCategoryEvents", { enumerable: true, get: function () { return fetchMultiCategoryEvents_js_1.fetchMultiCategoryEvents; } });
|
|
139
141
|
tslib_1.__exportStar(require("./types.js"), exports);
|
|
140
142
|
tslib_1.__exportStar(require("./adminFunctions.js"), exports);
|
|
141
143
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export {\n setSuiNodeUrl,\n setSuiClient,\n setCustomSuiClient,\n getSuiNodeUrl,\n getSuiClient,\n} from \"./sui-sdk/client.js\";\n\nexport {\n getVaults,\n getSingleAssetVaults,\n getDoubleAssetVaults,\n} from \"./getVaults.js\";\n\nexport {\n getVaultBalance,\n getAlphaVaultBalance,\n getSingleAssetVaultBalance,\n getDoubleAssetVaultBalance,\n getVaultBalanceForActiveUsers,\n getXTokenVaultBalanceForActiveUsers,\n getAllVaultBalances,\n} from \"./getVaultBalances.js\";\n\n// transactions\n\nexport {\n depositDoubleAssetTxb,\n depositSingleAssetTxb,\n getAmounts,\n getCoinAmountsFromLiquidity,\n getLiquidity,\n} from \"./transactions/deposit.js\";\n\nexport {\n withdrawTxb,\n coinAmountToXTokensDoubleAsset,\n coinAmountToXTokensSingleAsset,\n} from \"./transactions/withdraw.js\";\n\nexport { withdrawAlphaTxb } from \"./transactions/alpha.js\";\n\nexport { claimRewardTxb } from \"./transactions/collect_rewards.js\";\n\nexport {\n claimBlueRewardTxb,\n pendingBlueRewardAmount,\n} from \"./transactions/blueRewards.js\";\n\nexport { zapDepositTxb, getZapAmounts } from \"./transactions/zapDeposit.js\";\n\n//\nexport {\n getAllVaults,\n getAllDoubleAssetVaults,\n getAllSingleAssetVaults,\n} from \"./getAllVaults.js\";\n\nexport { getAirdropShare } from \"./getAirdropShare.js\";\n\nexport {\n alphaLpBreakdown,\n cetusLpBreakdown,\n lastAutocompoundTime,\n} from \"./vaultFunctions.js\";\n\nexport { getApr, getAprs, getApy, getApys } from \"./getAprs.js\";\n\nexport {\n getRebalanceHistory,\n getRebalanceHistories,\n} from \"./getRebalanceHistory.js\";\n\nexport { getTVLs, getTvls, fetchTVL } from \"./getTvls.js\";\n\nexport {\n getHoldersFromTransactions,\n getUserTokensFromTransactions,\n getUserTokensInUsdFromTransactions,\n} from \"./getHoldersFromTransactions.js\";\n\nexport { getLastAutoCompoundTime } from \"./getLastAutoCompoundTime.js\";\n\nexport * from \"./common/types.js\";\n\n// src/index.ts\nexport * from \"./graphql/fetchData.js\";\nexport * from \"./graphql/parseData.js\";\nexport * from \"./graphql/executeMutations.js\";\nexport * from \"./graphql/getMultiReceipts.js\";\n\nexport {\n getReceipts,\n getPool,\n getParentPool,\n getInvestor,\n getMultiInvestor,\n getMultiParentPool,\n getMultiPool,\n getMultiReceipts,\n getCetusPool,\n getDistributor,\n getMultiCetusPool,\n getPoolExchangeRate,\n fetchVoloExchangeRate,\n} from \"./sui-sdk/functions/getReceipts.js\";\n\nexport {\n getPositionRange,\n getPositionRanges,\n} from \"./sui-sdk/functions/getPositionRange.js\";\n\nexport { getMultiLatestPrices, getLatestPrices } from \"./utils/prices.js\";\n\nexport {\n liquidityToTokens,\n multiTokensToUsd,\n multiXTokensToLiquidity,\n multiLiquidityToTokens,\n} from \"./utils/userHoldings.js\";\n\nexport {\n poolInfo,\n getCetusSqrtPriceMap,\n getCetusInvestorTicksMap,\n getInvestorPoolMap,\n getPoolExchangeRateMap,\n defunctPoolsSet,\n poolIdPoolNameMap,\n coinsInPool,\n stableCoins,\n cetusPoolMap,\n bluefinPoolMap,\n loopingAccountAddresses,\n doubleAssetPoolCoinMap,\n singleAssetPoolCoinMap,\n loopingPoolCoinMap,\n naviAssetMap,\n ignoredWalletsForDailyRevenue,\n} from \"./common/maps.js\";\n\nexport { getConf } from \"./common/constants.js\";\n\nexport { coinsList } from \"./common/coins.js\";\n\nexport { getAlphaUnlocks } from \"./getAlphaUnlocks.js\";\n\nexport { fetchLiquidityChangeEvents } from \"./sui-sdk/events/fetchLiquidityChangeEvents.js\";\nexport { fetchAutoCompoundingEvents } from \"./sui-sdk/events/fetchAutoCompoundingEvents.js\";\nexport { fetchWithdrawV2Events } from \"./sui-sdk/events/fetchWithdrawV2Events.js\";\nexport { fetchAfterTransactionEvents } from \"./sui-sdk/events/fetchAfterTransactionEvents.js\";\nexport { fetchCheckRatioEvents } from \"./sui-sdk/events/fetchCheckRatioEvents.js\";\nexport { fetchMultiCategoryEvents } from \"./sui-sdk/events/fetchMultiCategoryEvents.js\";\n\nexport {\n LiquidityChangeEventNode,\n AutoCompoundingEventNode,\n WithdrawV2EventNode,\n AfterTransactionEventNode,\n EventNode,\n} from \"./sui-sdk/events/types.js\";\n\nexport { ReceiptGQL } from \"./graphql/types.js\";\n\nexport * from \"./types.js\";\n\nexport * from \"./adminFunctions.js\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchAfterTransactionEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAfterTransactionEvents.ts"],"names":[],"mappings":"AAMA,OAAO,EAAY,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EACL,yBAAyB,EAK1B,MAAM,YAAY,CAAC;AAKpB,wBAAsB,2BAA2B,CAAC,MAAM,EAAE;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"fetchAfterTransactionEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAfterTransactionEvents.ts"],"names":[],"mappings":"AAMA,OAAO,EAAY,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EACL,yBAAyB,EAK1B,MAAM,YAAY,CAAC;AAKpB,wBAAsB,2BAA2B,CAAC,MAAM,EAAE;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC;CACpC,wCA+IA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchAfterTransactionEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAfterTransactionEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import { SuiEvent, SuiTransactionBlockResponse } from \"@mysten/sui/client\";\nimport {\n parentPoolMap,\n singleAssetPoolCoinMap,\n poolInfo,\n} from \"../../common/maps.js\";\nimport { CoinName, PoolName } from \"../../common/types.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport {\n AfterTransactionEventNode,\n CetusAddLiquidityEvent,\n CetusRemoveLiquidityEvent,\n NaviPoolDepositEvent,\n NaviPoolWithdrawEvent,\n} from \"./types.js\";\nimport { getSuiClient } from \"../client.js\";\nimport { conf, CONF_ENV } from \"../../common/constants.js\";\nimport { coinsList } from \"../../common/coins.js\";\n\nexport async function fetchAfterTransactionEvents(params: {\n startTime: number;\n endTime: number;\n poolNames?: PoolName[];\n}) {\n const eventTypesSet = new Set<string>();\n if (params.poolNames) {\n params.poolNames.forEach((poolName) => {\n const eventType = poolInfo[poolName].afterTransactionEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n } else {\n // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n Object.values(poolInfo).forEach((info) => {\n const eventType = info.afterTransactionEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n }\n const eventTypes = Array.from(eventTypesSet);\n\n const eventsPromises = eventTypes.map(async (eventType) => {\n const events = await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n });\n return events;\n });\n const events = (await Promise.all(eventsPromises)).flat();\n const afterTransactionEvents = events.map((e) => {\n return e as AfterTransactionEventNode;\n });\n\n if (\n params.poolNames &&\n params.poolNames.length === 1 &&\n params.poolNames[0] === \"ALPHA\"\n ) {\n return afterTransactionEvents;\n }\n const afterTransactionEventsWithPool = await (async () => {\n const txDigests: string[] = [];\n for (const event of afterTransactionEvents) {\n if (!event.poolName) {\n txDigests.push(event.id.txDigest);\n }\n }\n const suiClient = getSuiClient();\n let eventsFromTx: SuiTransactionBlockResponse[] = [];\n while (txDigests.length > 0) {\n const batch = txDigests.splice(0, Math.min(50, txDigests.length));\n const eventsFromTxBatch = await suiClient.multiGetTransactionBlocks({\n digests: batch,\n options: { showEvents: true },\n });\n eventsFromTx = eventsFromTx.concat(eventsFromTxBatch);\n }\n return new Map<string, SuiTransactionBlockResponse>(\n eventsFromTx.map((txData) => {\n return [txData.digest, txData];\n }),\n );\n })();\n for (let i = 0; i < afterTransactionEvents.length; i++) {\n const event = afterTransactionEvents[i];\n if (event.poolName) continue;\n const otherEvents = afterTransactionEventsWithPool.get(\n event.id.txDigest,\n )?.events;\n if (!otherEvents) {\n throw new Error(\n `SuiTransactionBlockResponse not found for digest: ${event.id.txDigest}`,\n );\n }\n const thisPoolName = ((otherEvents: SuiEvent[]) => {\n for (let j = 0; j < otherEvents.length; j++) {\n const otherEvent = otherEvents[j];\n if (\n otherEvent.type === conf[CONF_ENV].CETUS_ADD_LIQUIDITY_EVENT ||\n otherEvent.type === conf[CONF_ENV].CETUS_REMOVE_LIQUIDITY_EVENT\n ) {\n //CETUS\n const eventJson = otherEvent.parsedJson as\n | CetusAddLiquidityEvent\n | CetusRemoveLiquidityEvent;\n const cetusPoolId = eventJson.pool;\n const poolName = Object.keys(parentPoolMap).find(\n (pool) => parentPoolMap[pool] === cetusPoolId,\n );\n if (!poolName)\n throw new Error(`cetusPoolName not found for event: ${otherEvent}`);\n return poolName;\n } else if (\n otherEvent.type === conf[CONF_ENV].NAVI_POOL_DEPOSIT_EVENT ||\n otherEvent.type === conf[CONF_ENV].NAVI_POOL_WITHDRAW_EVENT\n ) {\n //NAVI\n const eventJson = otherEvent.parsedJson as\n | NaviPoolDepositEvent\n | NaviPoolWithdrawEvent;\n const naviCoinId =\n eventJson.pool ===\n \"0000000000000000000000000000000000000000000000000000000000000002::sui::SUI\"\n ? \"0x2::sui::SUI\"\n : `0x${eventJson.pool}`;\n const coinName = Object.keys(coinsList).find(\n (coin) => coinsList[coin as CoinName].type === naviCoinId,\n );\n const poolName = Object.keys(singleAssetPoolCoinMap).find(\n (pool) => singleAssetPoolCoinMap[pool].coin === coinName,\n );\n if (!poolName) {\n console.error(\"for event: \", otherEvent);\n throw new Error(`naviPoolName not found`);\n }\n return poolName;\n } else {\n if (j === otherEvents.length - 1) {\n console.error(\"digest\", event.id.txDigest);\n throw new Error(\n \"deposit/withdraw events not found for either CETUS, or NAVI\",\n );\n }\n }\n }\n })(otherEvents);\n if (!thisPoolName) throw new Error(`PoolName not found`);\n const eventWithPool: AfterTransactionEventNode = {\n ...event,\n poolName: thisPoolName as PoolName,\n };\n afterTransactionEvents[i] = eventWithPool;\n }\n\n if (params.poolNames && params.poolNames.length >= 1) {\n const allowedPoolNames = params.poolNames;\n return afterTransactionEvents.filter((event) =>\n allowedPoolNames.includes(event.poolName!),\n );\n }\n\n return afterTransactionEvents;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"fetchAfterTransactionEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAfterTransactionEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import { SuiEvent, SuiTransactionBlockResponse } from \"@mysten/sui/client\";\nimport {\n parentPoolMap,\n singleAssetPoolCoinMap,\n poolInfo,\n} from \"../../common/maps.js\";\nimport { CoinName, PoolName } from \"../../common/types.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport {\n AfterTransactionEventNode,\n CetusAddLiquidityEvent,\n CetusRemoveLiquidityEvent,\n NaviPoolDepositEvent,\n NaviPoolWithdrawEvent,\n} from \"./types.js\";\nimport { getSuiClient } from \"../client.js\";\nimport { conf, CONF_ENV } from \"../../common/constants.js\";\nimport { coinsList } from \"../../common/coins.js\";\n\nexport async function fetchAfterTransactionEvents(params: {\n startTime: number;\n endTime: number;\n poolNames?: PoolName[];\n order?: \"ascending\" | \"descending\";\n}) {\n const eventTypesSet = new Set<string>();\n if (params.poolNames) {\n params.poolNames.forEach((poolName) => {\n const eventType = poolInfo[poolName].afterTransactionEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n } else {\n // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n Object.values(poolInfo).forEach((info) => {\n const eventType = info.afterTransactionEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n }\n const eventTypes = Array.from(eventTypesSet);\n\n const eventsPromises = eventTypes.map(async (eventType) => {\n const events = await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n order: params.order,\n });\n return events;\n });\n const events = (await Promise.all(eventsPromises)).flat();\n const afterTransactionEvents = events.map((e) => {\n return e as AfterTransactionEventNode;\n });\n\n if (\n params.poolNames &&\n params.poolNames.length === 1 &&\n params.poolNames[0] === \"ALPHA\"\n ) {\n return afterTransactionEvents;\n }\n const afterTransactionEventsWithPool = await (async () => {\n const txDigests: string[] = [];\n for (const event of afterTransactionEvents) {\n if (!event.poolName) {\n txDigests.push(event.id.txDigest);\n }\n }\n const suiClient = getSuiClient();\n let eventsFromTx: SuiTransactionBlockResponse[] = [];\n while (txDigests.length > 0) {\n const batch = txDigests.splice(0, Math.min(50, txDigests.length));\n const eventsFromTxBatch = await suiClient.multiGetTransactionBlocks({\n digests: batch,\n options: { showEvents: true },\n });\n eventsFromTx = eventsFromTx.concat(eventsFromTxBatch);\n }\n return new Map<string, SuiTransactionBlockResponse>(\n eventsFromTx.map((txData) => {\n return [txData.digest, txData];\n }),\n );\n })();\n for (let i = 0; i < afterTransactionEvents.length; i++) {\n const event = afterTransactionEvents[i];\n if (event.poolName) continue;\n const otherEvents = afterTransactionEventsWithPool.get(\n event.id.txDigest,\n )?.events;\n if (!otherEvents) {\n throw new Error(\n `SuiTransactionBlockResponse not found for digest: ${event.id.txDigest}`,\n );\n }\n const thisPoolName = ((otherEvents: SuiEvent[]) => {\n for (let j = 0; j < otherEvents.length; j++) {\n const otherEvent = otherEvents[j];\n if (\n otherEvent.type === conf[CONF_ENV].CETUS_ADD_LIQUIDITY_EVENT ||\n otherEvent.type === conf[CONF_ENV].CETUS_REMOVE_LIQUIDITY_EVENT\n ) {\n //CETUS\n const eventJson = otherEvent.parsedJson as\n | CetusAddLiquidityEvent\n | CetusRemoveLiquidityEvent;\n const cetusPoolId = eventJson.pool;\n const poolName = Object.keys(parentPoolMap).find(\n (pool) => parentPoolMap[pool] === cetusPoolId,\n );\n if (!poolName)\n throw new Error(`cetusPoolName not found for event: ${otherEvent}`);\n return poolName;\n } else if (\n otherEvent.type === conf[CONF_ENV].NAVI_POOL_DEPOSIT_EVENT ||\n otherEvent.type === conf[CONF_ENV].NAVI_POOL_WITHDRAW_EVENT\n ) {\n //NAVI\n const eventJson = otherEvent.parsedJson as\n | NaviPoolDepositEvent\n | NaviPoolWithdrawEvent;\n const naviCoinId =\n eventJson.pool ===\n \"0000000000000000000000000000000000000000000000000000000000000002::sui::SUI\"\n ? \"0x2::sui::SUI\"\n : `0x${eventJson.pool}`;\n const coinName = Object.keys(coinsList).find(\n (coin) => coinsList[coin as CoinName].type === naviCoinId,\n );\n const poolName = Object.keys(singleAssetPoolCoinMap).find(\n (pool) => singleAssetPoolCoinMap[pool].coin === coinName,\n );\n if (!poolName) {\n console.error(\"for event: \", otherEvent);\n throw new Error(`naviPoolName not found`);\n }\n return poolName;\n } else {\n if (j === otherEvents.length - 1) {\n console.error(\"digest\", event.id.txDigest);\n throw new Error(\n \"deposit/withdraw events not found for either CETUS, or NAVI\",\n );\n }\n }\n }\n })(otherEvents);\n if (!thisPoolName) throw new Error(`PoolName not found`);\n const eventWithPool: AfterTransactionEventNode = {\n ...event,\n poolName: thisPoolName as PoolName,\n };\n afterTransactionEvents[i] = eventWithPool;\n }\n\n if (params.poolNames && params.poolNames.length >= 1) {\n const allowedPoolNames = params.poolNames;\n return afterTransactionEvents.filter((event) =>\n allowedPoolNames.includes(event.poolName!),\n );\n }\n\n return afterTransactionEvents;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchAutoCompoundingEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAutoCompoundingEvents.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAwB,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EACjC,MAAM,YAAY,CAAC;AAGpB,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,wBAAwB,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchAutoCompoundingEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAutoCompoundingEvents.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAwB,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EACjC,MAAM,YAAY,CAAC;AAGpB,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAmHrC;AAED,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,wBAAwB,EAAE,GACjC,OAAO,CAAC,MAAM,CAAC,CA0NjB;AA6CD,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,wBAAwB,EAAE,GACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAYnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchAutoCompoundingEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAutoCompoundingEvents.ts"],"names":[],"mappings":";;AAgBA,gEAoHC;AAED,0DA4NC;AA6CD,oDAcC;AA7ZD,2CAAqC;AACrC,oDAAkD;AAClD,kDAK8B;AAE9B,qDAA+C;AAK/C,6CAAiD;AAE1C,KAAK,UAAU,0BAA0B,CAC9C,MAAwC;IAExC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,oDAAoD;IACpD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACpC,MAAM,SAAS,GAAG,kBAAQ,CAAC,QAAQ,CAAC,CAAC,wBAAwB,CAAC;YAC9D,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;gBACtE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,2FAA2F;QAC3F,MAAM,CAAC,MAAM,CAAC,kBAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAAC;YAChD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;gBACtE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB;IAChB,0BAA0B;IAC1B,6CAA6C;IAC7C,+DAA+D;IAC/D,+EAA+E;IAC/E,+CAA+C;IAC/C,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,gGAAgG;IAChG,gDAAgD;IAChD,iDAAiD;IACjD,+EAA+E;IAC/E,+CAA+C;IAC/C,QAAQ;IACR,QAAQ;IACR,IAAI;IAEJ,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7C,kEAAkE;IAElE,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACxD,MAAM,MAAM,GAAG,CACb,MAAM,IAAA,4BAAW,EAAC;YAChB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC,CACH,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,OAAO,MAAM,CAAC,SAAS;qBACpB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,kBAAQ,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC;qBAChD,QAAQ,CAAE,CAA8B,CAAC,WAAW,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,iFAAiF;IACjF,qBAAqB;IACrB,0BAA0B;IAC1B,qCAAqC;IACrC,iCAAiC;IACjC,iCAAiC;IACjC,SAAS;IACT,sBAAsB;IACtB,8BAA8B;IAC9B,gCAAgC;IAChC,4DAA4D;IAC5D,kEAAkE;IAClE,eAAe;IACf,qBAAqB;IACrB,QAAQ;IACR,QAAQ;IACR,mBAAmB;IACnB,MAAM;IAEN,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAE1D,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC7C,OAAO,CAA6B,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,+EAA+E;IAE/E,yDAAyD;IACzD,oCAAoC;IACpC,MAAM;IAEN,sDAAsD;IAEtD,2CAA2C;IAC3C,SAAS;IACT,4CAA4C;IAC5C,0EAA0E;IAC1E,gBAAgB;IAChB,QAAQ;IACR,WAAW;IACX,iCAAiC;IACjC,kCAAkC;IAClC,+BAA+B;IAC/B,UAAU;IACV,6CAA6C;IAC7C,8EAA8E;IAC9E,uGAAuG;IACvG,0DAA0D;IAC1D,0DAA0D;IAC1D,YAAY;IACZ,UAAU;IACV,QAAQ;IACR,MAAM;IACN,IAAI;IAEJ,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAC3C,MAAkC;IAElC,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,IAAI,CAAC;QACH,oDAAoD;QACpD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;QAEjD,IAAI,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,8CAA8C;QAC3F,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,aAAa,GAAG,EAAE,CAAC;QAEvB,MAAM,eAAe,GAAG,IAAA,4BAAkB,GAAE,CAAC;QAE7C,IACE,MAAM,CAAC,MAAM,GAAG,CAAC;YACjB,eAAe;iBACZ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACtC,EAAE,QAAQ,EAAE;iBACX,QAAQ,CAAC,aAAa,CAAC,EAC1B,CAAC;YACD,IAAI,YAAY,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;YACvE,MAAM,EAAE,GAAG,gCAAsB,CAAC,QAAS,CAAC,CAAC,KAAK,CAAC;YACnD,MAAM,EAAE,GAAG,gCAAsB,CAAC,QAAS,CAAC,CAAC,KAAK,CAAC;YACnD,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,IAAA,0BAAe,EACzD,CAAC,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EACtC,KAAK,CACN,CAAC;YAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,oBAAoB,IAAI,KAAK,EAAE,CAAC;oBAClC,MAAM,UAAU,GAAG,IAAI,oBAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACpE,MAAM,YAAY,GAAG,IAAI,oBAAO,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAClE,MAAM,YAAY,GAAG,IAAI,oBAAO,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAClE,MAAM,eAAe,GAAG,UAAU;yBAC/B,GAAG,CAAC,SAAS,CAAC;yBACd,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,oBAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC7C,MAAM,gBAAgB,GAAG,YAAY;yBAClC,GAAG,CAAC,OAAO,CAAC;yBACZ,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,oBAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;yBACrC,IAAI,CACH,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,oBAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAChE,CAAC;oBACJ,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3B,YAAY,GAAG,YAAY,CAAC,IAAI,CAC9B,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,CACtC,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC/D,CAAC;QAED,wBAAwB;QACxB,2FAA2F;QAC3F,oFAAoF;QACpF,kFAAkF;QAClF,mFAAmF;QACnF,OAAO;QACP,cAAc;QACd,yBAAyB;QACzB,4CAA4C;QAC5C,MAAM;QACN,iBAAiB;QACjB,yEAAyE;QACzE,OAAO;QACP,IAAI;QACJ,OAAO;QACP,cAAc;QACd,yBAAyB;QACzB,4CAA4C;QAC5C,MAAM;QACN,iBAAiB;QACjB,6HAA6H;QAC7H,OAAO;QACP,IAAI;QACJ,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,6CAA6C;YAC7C,wBAAwB;YACxB,IAAI;YACJ,wDAAwD;YACxD,IAAI,QAAQ,GAAG,KAAK,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAAC,2BAA2B;YAE/E,wBAAwB;YACxB,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IACE,gBAAgB,IAAI,KAAK;gBACzB,gBAAgB,IAAI,KAAK;gBACzB,mBAAmB,IAAI,KAAK,EAC5B,CAAC;gBACD,IAAI,OAAO,GAAG,CAAC,CAAC;gBAChB,IAAI,OAAO,GAAG,CAAC,CAAC;gBAEhB,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvC,aAAa,IAAI,KAAK,CAAC,iBAAiB,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,EAAE,CAAC;gBACrB,CAAC;gBACD,IAAI,aAAa,GAAG,EAAE,EAAE,CAAC;oBACvB,OAAO;wBACL,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;4BAChC,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,GAAG,aAAa,CAAC;gCAC/C,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;4BAChC,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBACvE,CAAC;gBAED,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvC,aAAa,IAAI,KAAK,CAAC,iBAAiB,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,EAAE,CAAC;gBACrB,CAAC;gBAED,IAAI,aAAa,GAAG,EAAE,EAAE,CAAC;oBACvB,OAAO;wBACL,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;4BAC/B,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,GAAG,aAAa,CAAC;gCAC/C,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;4BAC/B,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBACvE,CAAC;gBAED,OAAO;gBACP,0BAA0B;gBAC1B,yEAAyE;gBACzE,MAAM;gBACN,iBAAiB;gBACjB,8BAA8B;gBAC9B,uBAAuB;gBACvB,2CAA2C;gBAC3C,OAAO;gBACP,IAAI;gBACJ,OAAO;gBACP,0BAA0B;gBAC1B,yEAAyE;gBACzE,MAAM;gBACN,iBAAiB;gBACjB,+BAA+B;gBAC/B,4BAA4B;gBAC5B,eAAe;gBACf,+BAA+B;gBAC/B,4BAA4B;gBAC5B,eAAe;gBACf,OAAO;gBACP,IAAI;gBACJ,UAAU,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,2CAA2C;gBACjF,6CAA6C;gBAC7C,iBAAiB;gBACjB,6QAA6Q;gBAC7Q,OAAO;gBACP,IAAI;gBACJ,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;oBACtC,qCAAqC;oBACrC,UAAU,GAAG,kBAAkB,CAAC;oBAChC,QAAQ,GAAG,gBAAgB,CAAC;gBAC9B,CAAC;gBACD,IAAI,UAAU,GAAG,KAAK,EAAE,CAAC;oBACvB,UAAU,GAAG,CAAC,CAAC;gBACjB,CAAC;YACH,CAAC;iBAAM,IAAI,cAAc,IAAI,KAAK,EAAE,CAAC;gBACnC,IAAI,cAAc,GAAW,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC3D,IAAI,WAAW,GAAW,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACrD,IAAI,gBAAgB,IAAI,KAAK,IAAI,kBAAkB,IAAI,KAAK,EAAE,CAAC;oBAC7D,cAAc,GAAG,MAAM,CACrB,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,gBAAgB,CAC/C,CAAC;oBACF,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;gBAClE,CAAC;gBACD,2BAA2B;gBAC3B,UAAU,GAAG,KAAK,CAAC,cAAc,GAAG,WAAW,CAAC;oBAC9C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,cAAc,GAAG,WAAW,CAAC;gBACjC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAClC,KAAK,CAAC,WAAW,CACM,CAAC;gBAC1B,MAAM,QAAQ,GAAG,gCAAsB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;gBAEvD,UAAU,GAAG,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,oBAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;gBACrE,6CAA6C;gBAC7C,iBAAiB;gBACjB,gJAAgJ;gBAChJ,OAAO;gBACP,IAAI;YACN,CAAC;YAED,sCAAsC;YACtC,WAAW,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YACvD,kBAAkB,GAAG,UAAU,CAAC;YAEhC,iCAAiC;YACjC,aAAa,IAAI,QAAQ,CAAC;YAC1B,gBAAgB,GAAG,QAAQ,CAAC;YAE5B,iEAAiE;YACjE,iBAAiB,GAAG,KAAK,CAAC,SAAS,CAAC;QACtC,CAAC;QAED,GAAG,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IAC1E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,MAAkC;IAElC,MAAM,cAAc,GAA+C,EAAE,CAAC;IAEtE,0CAA0C;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QAClC,CAAC;QACD,cAAc,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,uEAAuE;IACvE,MAAM,WAAW,GAAmD,EAAE,CAAC;IAEvE,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;QACxC,MAAM,iBAAiB,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QACrD,gGAAgG;QAChG,WAAW,CAAC,IAAI,CACd,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxD,UAAU;YACV,GAAG;SACJ,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE5C,wEAAwE;IACxE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;QACd,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAA4B,CAC7B,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,oBAAoB,CACxC,MAAkC;IAElC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,mBAAmB,GAAG,MAAM,IAAA,4BAAkB,GAAE,CAAC;IAEvD,MAAM,cAAc,GAAG,MAAM,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC9D,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { Decimal } from \"decimal.js\";\nimport { coinsList } from \"../../common/coins.js\";\nimport {\n getInvestorPoolMap,\n singleAssetPoolCoinMap,\n poolInfo,\n doubleAssetPoolCoinMap,\n} from \"../../common/maps.js\";\nimport { PoolName, SingleAssetPoolNames } from \"../../common/types.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport {\n AutoCompoundingEventNode,\n FetchAutoCompoundingEventsParams,\n} from \"./types.js\";\nimport { getLatestPrices } from \"../../index.js\";\n\nexport async function fetchAutoCompoundingEvents(\n params: FetchAutoCompoundingEventsParams,\n): Promise<AutoCompoundingEventNode[]> {\n const eventTypesSet = new Set<string>();\n // const rebalanceEventTypesSet = new Set<string>();\n if (params.poolNames) {\n params.poolNames.forEach((poolName) => {\n const eventType = poolInfo[poolName].autoCompoundingEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n } else {\n // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n Object.values(poolInfo).forEach((info) => {\n const eventType = info.autoCompoundingEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n }\n // for rebalance\n // if (params.poolNames) {\n // params.poolNames.forEach((poolName) => {\n // const eventType = poolInfo[poolName].rebalanceEventType;\n // if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n // rebalanceEventTypesSet.add(eventType);\n // }\n // });\n // } else {\n // // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n // Object.values(poolInfo).forEach((info) => {\n // const eventType = info.rebalanceEventType;\n // if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n // rebalanceEventTypesSet.add(eventType);\n // }\n // });\n // }\n\n const eventTypes = Array.from(eventTypesSet);\n // const rebalanceEventTypes = Array.from(rebalanceEventTypesSet);\n\n const eventsPromises = eventTypes.map(async (eventType) => {\n const events = (\n await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n })\n ).filter((e) => {\n if (params.poolNames) {\n return params.poolNames\n .map((poolName) => poolInfo[poolName].investorId)\n .includes((e as AutoCompoundingEventNode).investor_id);\n } else {\n return true;\n }\n });\n return events;\n });\n // const rebalanceEventsPromises = rebalanceEventTypes.map(async (eventType) => {\n // const events = (\n // await fetchEvents({\n // startTime: params.startTime,\n // endTime: params.endTime,\n // eventTypes: [eventType],\n // })\n // ).filter((e) => {\n // if (params.poolNames) {\n // return params.poolNames\n // .map((poolName) => poolInfo[poolName].investorId)\n // .includes((e as AutoCompoundingEventNode).investor_id);\n // } else {\n // return true;\n // }\n // });\n // return events;\n // });\n\n const events = (await Promise.all(eventsPromises)).flat();\n\n const autoCompoundingEvents = events.map((e) => {\n return e as AutoCompoundingEventNode;\n });\n\n // const rebalanceEvents = (await Promise.all(rebalanceEventsPromises)).flat();\n\n // const rebalancingEvents = rebalanceEvents.map((e) => {\n // return e as RebalanceEventNode;\n // });\n\n // const investorPoolMap = await getInvestorPoolMap();\n\n // for (const x of autoCompoundingEvents) {\n // if (\n // investorPoolMap.get(x.investor_id) &&\n // poolInfo[investorPoolMap.get(x.investor_id)!].parentProtocolName ==\n // \"CETUS\"\n // ) {\n // if (\n // \"total_amount_a\" in x &&\n // x.total_amount_a == 0n &&\n // x.total_amount_b == 0n\n // ) {\n // for (const y of rebalancingEvents) {\n // if (y.investor_id == x.investor_id && y.timestamp == x.timestamp) {\n // // works if its guaranteed that for one timestamp there is only one rebalance for one pool\n // x.total_amount_a = BigInt(y.amount_a_before);\n // x.total_amount_b = BigInt(y.amount_b_before);\n // }\n // }\n // }\n // }\n // }\n\n return autoCompoundingEvents;\n}\n\nexport async function calculateAprForInvestor(\n events: AutoCompoundingEventNode[],\n): Promise<number> {\n let totalGrowth = 0;\n let totalTimeSpan = 0;\n let apr = 0;\n\n try {\n // Sort events by timestamp to process them in order\n events.sort((a, b) => a.timestamp - b.timestamp);\n\n let previousTimestamp = events[0].timestamp; // Start with the timestamp of the first event\n let previousGrowthRate = 0;\n let previousTimeDiff = 0;\n let prevCompoundA = 0n;\n let prevCompoundB = 0n;\n\n const investorPoolMap = getInvestorPoolMap();\n\n if (\n events.length > 0 &&\n investorPoolMap\n .get(events[0].investor_id.toString())\n ?.toString()\n .includes(\"AUTOBALANCE\")\n ) {\n let sumOfGrowths = new Decimal(0);\n const poolName = investorPoolMap.get(events[0].investor_id.toString());\n const c1 = doubleAssetPoolCoinMap[poolName!].coin1;\n const c2 = doubleAssetPoolCoinMap[poolName!].coin2;\n const [bluePrice, c1Price, c2Price] = await getLatestPrices(\n [\"BLUE/USD\", `${c1}/USD`, `${c2}/USD`],\n false,\n );\n\n for (const event of events) {\n if (\"blue_reward_amount\" in event) {\n const blueReward = new Decimal(event.blue_reward_amount.toString());\n const totalAmountA = new Decimal(event.total_amount_a.toString());\n const totalAmountB = new Decimal(event.total_amount_b.toString());\n const blueRewardPrice = blueReward\n .mul(bluePrice)\n .div(Math.pow(10, coinsList[\"BLUE\"].expo));\n const baseAmountsPrice = totalAmountA\n .mul(c1Price)\n .div(Math.pow(10, coinsList[c1].expo))\n .plus(\n totalAmountB.mul(c2Price).div(Math.pow(10, coinsList[c2].expo)),\n );\n if (baseAmountsPrice.gt(0)) {\n sumOfGrowths = sumOfGrowths.plus(\n blueRewardPrice.div(baseAmountsPrice),\n );\n }\n }\n }\n return sumOfGrowths.mul(36500).toDecimalPlaces(4).toNumber();\n }\n\n // const matchInvestor =\n // \"0x681a30beb23d2532f9413c09127525ae5e562da7aa89f9f3498bd121fef22065\"; // NAVI-USDC\n // // \"0xa65eaadb556a80e4cb02fe35efebb2656d82d364897530f45dabc1e99d15a8a9\"; // HASUI\n // (\"0x227226f22bd9e484e541005916904ca066db1d42b8a80351800ef37b26c6cd89\"); // AUSD\n // // \"0xf43c62ca04c2f8d4583630872429ba6f5d8a7316ccb9552c86bb1fcf9dee3ce2\"; // USDY\n // if (\n // events &&\n // events.length > 0 &&\n // events[0].investor_id === matchInvestor\n // ) {\n // console.log(\n // \"Compund Amount,Total Amount,GrowthRate,Timestamp,TimeDiff (Min)\",\n // );\n // }\n // if (\n // events &&\n // events.length > 0 &&\n // events[0].investor_id === matchInvestor\n // ) {\n // console.log(\n // \"Compund A,Total A,Compound B,Total B,Freebalance A,Freebalance B,GrowthA,GrowthB,AvgGrowth,Timestamp,TimeDiff (Min)\",\n // );\n // }\n for (const event of events) {\n // if (event.investor_id === matchInvestor) {\n // console.log(event);\n // }\n // Calculate the time difference from the previous event\n let timeDiff = event.timestamp - previousTimestamp; // / (1000 * 60 * 60 * 24);\n\n // Calculate growth rate\n let growthRate = 0;\n if (\n \"total_amount_a\" in event &&\n \"total_amount_b\" in event &&\n \"compound_amount_a\" in event\n ) {\n let growthA = 0;\n let growthB = 0;\n\n if (Number(event.total_amount_a) === 0) {\n prevCompoundA += event.compound_amount_a;\n } else {\n prevCompoundA = 0n;\n }\n if (prevCompoundA > 0n) {\n growthA =\n Number(event.total_amount_a) === 0\n ? 0\n : Number(event.compound_amount_a + prevCompoundA) /\n Number(event.total_amount_a - prevCompoundA);\n } else {\n growthA =\n Number(event.total_amount_a) === 0\n ? 0\n : Number(event.compound_amount_a) / Number(event.total_amount_a);\n }\n\n if (Number(event.total_amount_b) === 0) {\n prevCompoundB += event.compound_amount_b;\n } else {\n prevCompoundB = 0n;\n }\n\n if (prevCompoundB > 0n) {\n growthB =\n Number(event.total_amount_b) == 0\n ? 0\n : Number(event.compound_amount_b + prevCompoundB) /\n Number(event.total_amount_b - prevCompoundB);\n } else {\n growthB =\n Number(event.total_amount_b) == 0\n ? 0\n : Number(event.compound_amount_b) / Number(event.total_amount_b);\n }\n\n // if (\n // event.investor_id ===\n // \"0xd060e81548aee885bd3d37ae0caec181185be792bf45412e0d0acccd1e0174e6\"\n // ) {\n // console.log(\n // timeDiff / (1000 * 60),\n // event.timestamp,\n // event.timestamp - previousTimestamp,\n // );\n // }\n // if (\n // event.investor_id ===\n // \"0xd060e81548aee885bd3d37ae0caec181185be792bf45412e0d0acccd1e0174e6\"\n // ) {\n // console.log(\n // event.compound_amount_a,\n // event.total_amount_a,\n // growthA,\n // event.compound_amount_b,\n // event.total_amount_b,\n // growthB,\n // );\n // }\n growthRate = (growthA + growthB) / 2; // Averaging growth rates for token A and B\n // if (event.investor_id === matchInvestor) {\n // console.log(\n // `${event.compound_amount_a},${event.total_amount_a},${event.compound_amount_b},${event.total_amount_b},${event.free_balance_a},${event.free_balance_b},${growthA},${growthB},${growthRate},${event.timestamp},${(event.timestamp - previousTimestamp) / (1000 * 60)}`,\n // );\n // }\n if (Math.abs(growthA - growthB) > 0.5) {\n // skip row, fill with previous event\n growthRate = previousGrowthRate;\n timeDiff = previousTimeDiff;\n }\n if (growthRate > 0.005) {\n growthRate = 0;\n }\n } else if (\"total_amount\" in event) {\n let compoundAmount: number = Number(event.compound_amount);\n let totalAmount: number = Number(event.total_amount);\n if (\"cur_total_debt\" in event && \"accrued_interest\" in event) {\n compoundAmount = Number(\n event.compound_amount - event.accrued_interest,\n );\n totalAmount = Number(event.total_amount - event.cur_total_debt);\n }\n // NaviAutoCompoundingEvent\n growthRate = isNaN(compoundAmount / totalAmount)\n ? 0\n : compoundAmount / totalAmount;\n const poolName = investorPoolMap.get(\n event.investor_id,\n ) as SingleAssetPoolNames;\n const coinName = singleAssetPoolCoinMap[poolName].coin;\n\n growthRate = growthRate * Math.pow(10, 9 - coinsList[coinName].expo);\n // if (event.investor_id === matchInvestor) {\n // console.log(\n // `${event.compound_amount},${event.total_amount},${growthRate},${event.timestamp},${(event.timestamp - previousTimestamp) / (1000 * 60)}`,\n // );\n // }\n }\n\n // Accumulate the time-weighted growth\n totalGrowth = (totalGrowth + 1) * (1 + growthRate) - 1;\n previousGrowthRate = growthRate;\n\n // Accumulate the total time span\n totalTimeSpan += timeDiff;\n previousTimeDiff = timeDiff;\n\n // Update the previous timestamp to the current event's timestamp\n previousTimestamp = event.timestamp;\n }\n\n apr = (totalGrowth / totalTimeSpan) * (1000 * 60 * 60 * 24 * 365) * 100;\n } catch (error) {\n console.error(\"Error calculating apr from events.\", error);\n if (events.length > 0) {\n console.error(\"Investor-ID: \", events[0].investor_id);\n }\n }\n\n return apr;\n}\n\nasync function calculateAprForInvestors(\n events: AutoCompoundingEventNode[],\n): Promise<Record<string, number>> {\n const investorEvents: Record<string, AutoCompoundingEventNode[]> = {};\n\n // Step 1: Segregate events by investor_id\n for (const event of events) {\n const investorId = event.investor_id;\n if (!investorEvents[investorId]) {\n investorEvents[investorId] = [];\n }\n investorEvents[investorId].push(event);\n }\n\n // Step 2: Calculate APR for each event and aggregate for each investor\n const aprPromises: Promise<{ investorId: string; apr: number }>[] = [];\n\n for (const investorId in investorEvents) {\n const investorEventList = investorEvents[investorId];\n // Push a promise that resolves to an object containing the investorId and the corresponding APR\n aprPromises.push(\n calculateAprForInvestor(investorEventList).then((apr) => ({\n investorId,\n apr,\n })),\n );\n }\n\n // Resolve all promises and map them to the corresponding APR\n const aprs = await Promise.all(aprPromises);\n\n // Convert the array of results into an object mapping investorId to APR\n const aprMap = aprs.reduce(\n (map, result) => {\n map[result.investorId] = result.apr;\n return map;\n },\n {} as Record<string, number>,\n );\n\n return aprMap;\n}\n\nexport async function calculateAprForPools(\n events: AutoCompoundingEventNode[],\n): Promise<Record<PoolName, number>> {\n const aprMap: Record<string, number> = {};\n const investorPoolNameMap = await getInvestorPoolMap();\n\n const investorAprMap = await calculateAprForInvestors(events);\n for (const investorId in investorAprMap) {\n const poolName = investorPoolNameMap.get(investorId);\n if (poolName) {\n aprMap[poolName] = investorAprMap[investorId];\n }\n }\n return aprMap;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"fetchAutoCompoundingEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAutoCompoundingEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import { Decimal } from \"decimal.js\";\nimport { coinsList } from \"../../common/coins.js\";\nimport {\n getInvestorPoolMap,\n singleAssetPoolCoinMap,\n poolInfo,\n doubleAssetPoolCoinMap,\n} from \"../../common/maps.js\";\nimport { PoolName, SingleAssetPoolNames } from \"../../common/types.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport {\n AutoCompoundingEventNode,\n FetchAutoCompoundingEventsParams,\n} from \"./types.js\";\nimport { getLatestPrices } from \"../../index.js\";\n\nexport async function fetchAutoCompoundingEvents(\n params: FetchAutoCompoundingEventsParams,\n): Promise<AutoCompoundingEventNode[]> {\n const eventTypesSet = new Set<string>();\n // const rebalanceEventTypesSet = new Set<string>();\n if (params.poolNames) {\n params.poolNames.forEach((poolName) => {\n const eventType = poolInfo[poolName].autoCompoundingEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n } else {\n // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n Object.values(poolInfo).forEach((info) => {\n const eventType = info.autoCompoundingEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n }\n // for rebalance\n // if (params.poolNames) {\n // params.poolNames.forEach((poolName) => {\n // const eventType = poolInfo[poolName].rebalanceEventType;\n // if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n // rebalanceEventTypesSet.add(eventType);\n // }\n // });\n // } else {\n // // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n // Object.values(poolInfo).forEach((info) => {\n // const eventType = info.rebalanceEventType;\n // if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n // rebalanceEventTypesSet.add(eventType);\n // }\n // });\n // }\n\n const eventTypes = Array.from(eventTypesSet);\n // const rebalanceEventTypes = Array.from(rebalanceEventTypesSet);\n\n const eventsPromises = eventTypes.map(async (eventType) => {\n const events = (\n await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n order: params.order,\n })\n ).filter((e) => {\n if (params.poolNames) {\n return params.poolNames\n .map((poolName) => poolInfo[poolName].investorId)\n .includes((e as AutoCompoundingEventNode).investor_id);\n } else {\n return true;\n }\n });\n return events;\n });\n // const rebalanceEventsPromises = rebalanceEventTypes.map(async (eventType) => {\n // const events = (\n // await fetchEvents({\n // startTime: params.startTime,\n // endTime: params.endTime,\n // eventTypes: [eventType],\n // })\n // ).filter((e) => {\n // if (params.poolNames) {\n // return params.poolNames\n // .map((poolName) => poolInfo[poolName].investorId)\n // .includes((e as AutoCompoundingEventNode).investor_id);\n // } else {\n // return true;\n // }\n // });\n // return events;\n // });\n\n const events = (await Promise.all(eventsPromises)).flat();\n\n const autoCompoundingEvents = events.map((e) => {\n return e as AutoCompoundingEventNode;\n });\n\n // const rebalanceEvents = (await Promise.all(rebalanceEventsPromises)).flat();\n\n // const rebalancingEvents = rebalanceEvents.map((e) => {\n // return e as RebalanceEventNode;\n // });\n\n // const investorPoolMap = await getInvestorPoolMap();\n\n // for (const x of autoCompoundingEvents) {\n // if (\n // investorPoolMap.get(x.investor_id) &&\n // poolInfo[investorPoolMap.get(x.investor_id)!].parentProtocolName ==\n // \"CETUS\"\n // ) {\n // if (\n // \"total_amount_a\" in x &&\n // x.total_amount_a == 0n &&\n // x.total_amount_b == 0n\n // ) {\n // for (const y of rebalancingEvents) {\n // if (y.investor_id == x.investor_id && y.timestamp == x.timestamp) {\n // // works if its guaranteed that for one timestamp there is only one rebalance for one pool\n // x.total_amount_a = BigInt(y.amount_a_before);\n // x.total_amount_b = BigInt(y.amount_b_before);\n // }\n // }\n // }\n // }\n // }\n\n return autoCompoundingEvents;\n}\n\nexport async function calculateAprForInvestor(\n events: AutoCompoundingEventNode[],\n): Promise<number> {\n let totalGrowth = 0;\n let totalTimeSpan = 0;\n let apr = 0;\n\n try {\n // Sort events by timestamp to process them in order\n events.sort((a, b) => a.timestamp - b.timestamp);\n\n let previousTimestamp = events[0].timestamp; // Start with the timestamp of the first event\n let previousGrowthRate = 0;\n let previousTimeDiff = 0;\n let prevCompoundA = 0n;\n let prevCompoundB = 0n;\n\n const investorPoolMap = getInvestorPoolMap();\n\n if (\n events.length > 0 &&\n investorPoolMap\n .get(events[0].investor_id.toString())\n ?.toString()\n .includes(\"AUTOBALANCE\")\n ) {\n let sumOfGrowths = new Decimal(0);\n const poolName = investorPoolMap.get(events[0].investor_id.toString());\n const c1 = doubleAssetPoolCoinMap[poolName!].coin1;\n const c2 = doubleAssetPoolCoinMap[poolName!].coin2;\n const [bluePrice, c1Price, c2Price] = await getLatestPrices(\n [\"BLUE/USD\", `${c1}/USD`, `${c2}/USD`],\n false,\n );\n\n for (const event of events) {\n if (\"blue_reward_amount\" in event) {\n const blueReward = new Decimal(event.blue_reward_amount.toString());\n const totalAmountA = new Decimal(event.total_amount_a.toString());\n const totalAmountB = new Decimal(event.total_amount_b.toString());\n const blueRewardPrice = blueReward\n .mul(bluePrice)\n .div(Math.pow(10, coinsList[\"BLUE\"].expo));\n const baseAmountsPrice = totalAmountA\n .mul(c1Price)\n .div(Math.pow(10, coinsList[c1].expo))\n .plus(\n totalAmountB.mul(c2Price).div(Math.pow(10, coinsList[c2].expo)),\n );\n if (baseAmountsPrice.gt(0)) {\n sumOfGrowths = sumOfGrowths.plus(\n blueRewardPrice.div(baseAmountsPrice),\n );\n }\n }\n }\n return sumOfGrowths.mul(36500).toDecimalPlaces(4).toNumber();\n }\n\n // const matchInvestor =\n // \"0x681a30beb23d2532f9413c09127525ae5e562da7aa89f9f3498bd121fef22065\"; // NAVI-USDC\n // // \"0xa65eaadb556a80e4cb02fe35efebb2656d82d364897530f45dabc1e99d15a8a9\"; // HASUI\n // (\"0x227226f22bd9e484e541005916904ca066db1d42b8a80351800ef37b26c6cd89\"); // AUSD\n // // \"0xf43c62ca04c2f8d4583630872429ba6f5d8a7316ccb9552c86bb1fcf9dee3ce2\"; // USDY\n // if (\n // events &&\n // events.length > 0 &&\n // events[0].investor_id === matchInvestor\n // ) {\n // console.log(\n // \"Compund Amount,Total Amount,GrowthRate,Timestamp,TimeDiff (Min)\",\n // );\n // }\n // if (\n // events &&\n // events.length > 0 &&\n // events[0].investor_id === matchInvestor\n // ) {\n // console.log(\n // \"Compund A,Total A,Compound B,Total B,Freebalance A,Freebalance B,GrowthA,GrowthB,AvgGrowth,Timestamp,TimeDiff (Min)\",\n // );\n // }\n for (const event of events) {\n // if (event.investor_id === matchInvestor) {\n // console.log(event);\n // }\n // Calculate the time difference from the previous event\n let timeDiff = event.timestamp - previousTimestamp; // / (1000 * 60 * 60 * 24);\n\n // Calculate growth rate\n let growthRate = 0;\n if (\n \"total_amount_a\" in event &&\n \"total_amount_b\" in event &&\n \"compound_amount_a\" in event\n ) {\n let growthA = 0;\n let growthB = 0;\n\n if (Number(event.total_amount_a) === 0) {\n prevCompoundA += event.compound_amount_a;\n } else {\n prevCompoundA = 0n;\n }\n if (prevCompoundA > 0n) {\n growthA =\n Number(event.total_amount_a) === 0\n ? 0\n : Number(event.compound_amount_a + prevCompoundA) /\n Number(event.total_amount_a - prevCompoundA);\n } else {\n growthA =\n Number(event.total_amount_a) === 0\n ? 0\n : Number(event.compound_amount_a) / Number(event.total_amount_a);\n }\n\n if (Number(event.total_amount_b) === 0) {\n prevCompoundB += event.compound_amount_b;\n } else {\n prevCompoundB = 0n;\n }\n\n if (prevCompoundB > 0n) {\n growthB =\n Number(event.total_amount_b) == 0\n ? 0\n : Number(event.compound_amount_b + prevCompoundB) /\n Number(event.total_amount_b - prevCompoundB);\n } else {\n growthB =\n Number(event.total_amount_b) == 0\n ? 0\n : Number(event.compound_amount_b) / Number(event.total_amount_b);\n }\n\n // if (\n // event.investor_id ===\n // \"0xd060e81548aee885bd3d37ae0caec181185be792bf45412e0d0acccd1e0174e6\"\n // ) {\n // console.log(\n // timeDiff / (1000 * 60),\n // event.timestamp,\n // event.timestamp - previousTimestamp,\n // );\n // }\n // if (\n // event.investor_id ===\n // \"0xd060e81548aee885bd3d37ae0caec181185be792bf45412e0d0acccd1e0174e6\"\n // ) {\n // console.log(\n // event.compound_amount_a,\n // event.total_amount_a,\n // growthA,\n // event.compound_amount_b,\n // event.total_amount_b,\n // growthB,\n // );\n // }\n growthRate = (growthA + growthB) / 2; // Averaging growth rates for token A and B\n // if (event.investor_id === matchInvestor) {\n // console.log(\n // `${event.compound_amount_a},${event.total_amount_a},${event.compound_amount_b},${event.total_amount_b},${event.free_balance_a},${event.free_balance_b},${growthA},${growthB},${growthRate},${event.timestamp},${(event.timestamp - previousTimestamp) / (1000 * 60)}`,\n // );\n // }\n if (Math.abs(growthA - growthB) > 0.5) {\n // skip row, fill with previous event\n growthRate = previousGrowthRate;\n timeDiff = previousTimeDiff;\n }\n if (growthRate > 0.005) {\n growthRate = 0;\n }\n } else if (\"total_amount\" in event) {\n let compoundAmount: number = Number(event.compound_amount);\n let totalAmount: number = Number(event.total_amount);\n if (\"cur_total_debt\" in event && \"accrued_interest\" in event) {\n compoundAmount = Number(\n event.compound_amount - event.accrued_interest,\n );\n totalAmount = Number(event.total_amount - event.cur_total_debt);\n }\n // NaviAutoCompoundingEvent\n growthRate = isNaN(compoundAmount / totalAmount)\n ? 0\n : compoundAmount / totalAmount;\n const poolName = investorPoolMap.get(\n event.investor_id,\n ) as SingleAssetPoolNames;\n const coinName = singleAssetPoolCoinMap[poolName].coin;\n\n growthRate = growthRate * Math.pow(10, 9 - coinsList[coinName].expo);\n // if (event.investor_id === matchInvestor) {\n // console.log(\n // `${event.compound_amount},${event.total_amount},${growthRate},${event.timestamp},${(event.timestamp - previousTimestamp) / (1000 * 60)}`,\n // );\n // }\n }\n\n // Accumulate the time-weighted growth\n totalGrowth = (totalGrowth + 1) * (1 + growthRate) - 1;\n previousGrowthRate = growthRate;\n\n // Accumulate the total time span\n totalTimeSpan += timeDiff;\n previousTimeDiff = timeDiff;\n\n // Update the previous timestamp to the current event's timestamp\n previousTimestamp = event.timestamp;\n }\n\n apr = (totalGrowth / totalTimeSpan) * (1000 * 60 * 60 * 24 * 365) * 100;\n } catch (error) {\n console.error(\"Error calculating apr from events.\", error);\n if (events.length > 0) {\n console.error(\"Investor-ID: \", events[0].investor_id);\n }\n }\n\n return apr;\n}\n\nasync function calculateAprForInvestors(\n events: AutoCompoundingEventNode[],\n): Promise<Record<string, number>> {\n const investorEvents: Record<string, AutoCompoundingEventNode[]> = {};\n\n // Step 1: Segregate events by investor_id\n for (const event of events) {\n const investorId = event.investor_id;\n if (!investorEvents[investorId]) {\n investorEvents[investorId] = [];\n }\n investorEvents[investorId].push(event);\n }\n\n // Step 2: Calculate APR for each event and aggregate for each investor\n const aprPromises: Promise<{ investorId: string; apr: number }>[] = [];\n\n for (const investorId in investorEvents) {\n const investorEventList = investorEvents[investorId];\n // Push a promise that resolves to an object containing the investorId and the corresponding APR\n aprPromises.push(\n calculateAprForInvestor(investorEventList).then((apr) => ({\n investorId,\n apr,\n })),\n );\n }\n\n // Resolve all promises and map them to the corresponding APR\n const aprs = await Promise.all(aprPromises);\n\n // Convert the array of results into an object mapping investorId to APR\n const aprMap = aprs.reduce(\n (map, result) => {\n map[result.investorId] = result.apr;\n return map;\n },\n {} as Record<string, number>,\n );\n\n return aprMap;\n}\n\nexport async function calculateAprForPools(\n events: AutoCompoundingEventNode[],\n): Promise<Record<PoolName, number>> {\n const aprMap: Record<string, number> = {};\n const investorPoolNameMap = await getInvestorPoolMap();\n\n const investorAprMap = await calculateAprForInvestors(events);\n for (const investorId in investorAprMap) {\n const poolName = investorPoolNameMap.get(investorId);\n if (poolName) {\n aprMap[poolName] = investorAprMap[investorId];\n }\n }\n return aprMap;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCheckRatioEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchCheckRatioEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAE9E,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,mBAAmB,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchCheckRatioEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchCheckRatioEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAE9E,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAuChC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCheckRatioEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchCheckRatioEvents.ts"],"names":[],"mappings":";;AAIA,
|
|
1
|
+
{"version":3,"file":"fetchCheckRatioEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchCheckRatioEvents.ts"],"names":[],"mappings":";;AAIA,sDAyCC;AA7CD,kDAAgD;AAChD,qDAA+C;AAGxC,KAAK,UAAU,qBAAqB,CACzC,MAAmC;IAEnC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACpC,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBAClD,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBACpE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,SAAS,GAAG,kBAAQ,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC;YACzD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;gBACtE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,2FAA2F;QAC3F,MAAM,CAAC,MAAM,CAAC,kBAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC3C,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;gBACtE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE7C,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACxD,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAW,EAAC;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACxC,OAAO,CAAwB,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AAC1B,CAAC","sourcesContent":["import { poolInfo } from \"../../common/maps.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport { CheckRatioEventNode, FetchCheckRatioEventsParams } from \"./types.js\";\n\nexport async function fetchCheckRatioEvents(\n params: FetchCheckRatioEventsParams,\n): Promise<CheckRatioEventNode[]> {\n const eventTypesSet = new Set<string>();\n if (params.poolNames) {\n params.poolNames.forEach((poolName) => {\n if (poolInfo[poolName].strategyType !== \"LOOPING\") {\n console.error(\"Check Ratio event only applicable in looping pools\");\n throw new Error(\"Inavlid Params\");\n }\n const eventType = poolInfo[poolName].checkRatioEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n } else {\n // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n Object.values(poolInfo).forEach((info) => {\n const eventType = info.checkRatioEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n }\n const eventTypes = Array.from(eventTypesSet);\n\n const eventsPromises = eventTypes.map(async (eventType) => {\n const events = await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n order: params.order,\n });\n return events;\n });\n const events = (await Promise.all(eventsPromises)).flat();\n const checkRatioEvents = events.map((e) => {\n return e as CheckRatioEventNode;\n });\n\n return checkRatioEvents;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,SAAS,EACT,iBAAiB,EAUlB,MAAM,YAAY,CAAC;AAIpB,wBAAsB,WAAW,CAC/B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,SAAS,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,SAAS,EACT,iBAAiB,EAUlB,MAAM,YAAY,CAAC;AAIpB,wBAAsB,WAAW,CAC/B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,SAAS,EAAE,CAAC,CAqWtB"}
|
|
@@ -8,6 +8,7 @@ async function fetchEvents(params) {
|
|
|
8
8
|
const allEvents = [];
|
|
9
9
|
let hasNextPage = true;
|
|
10
10
|
let startCursor = null;
|
|
11
|
+
const order = params.order ? params.order : "descending";
|
|
11
12
|
if (params.eventTypes.length > 1) {
|
|
12
13
|
console.warn("Multiple eventTypes not supported right now, pass only one element in the array.");
|
|
13
14
|
}
|
|
@@ -26,7 +27,7 @@ async function fetchEvents(params) {
|
|
|
26
27
|
while (hasNextPage) {
|
|
27
28
|
const result = await suiClient.queryEvents({
|
|
28
29
|
cursor: startCursor,
|
|
29
|
-
order:
|
|
30
|
+
order: order,
|
|
30
31
|
query: {
|
|
31
32
|
MoveEventType: params.eventTypes[0],
|
|
32
33
|
},
|