@alphafi/alphafi-sdk 0.0.105 → 0.0.107
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/README.md +4 -0
- package/dist/cjs/adminFunctions.d.ts +13 -0
- package/dist/cjs/adminFunctions.d.ts.map +1 -1
- package/dist/cjs/adminFunctions.js +26 -0
- package/dist/cjs/adminFunctions.js.map +1 -1
- package/dist/cjs/common/coins.d.ts +1 -0
- package/dist/cjs/common/coins.d.ts.map +1 -1
- package/dist/cjs/common/coins.js +7 -0
- package/dist/cjs/common/coins.js.map +1 -1
- package/dist/cjs/common/constants.d.ts +94 -0
- package/dist/cjs/common/constants.d.ts.map +1 -1
- package/dist/cjs/common/constants.js +107 -39
- package/dist/cjs/common/constants.js.map +1 -1
- package/dist/cjs/common/maps.d.ts +2 -0
- package/dist/cjs/common/maps.d.ts.map +1 -1
- package/dist/cjs/common/maps.js +117 -1
- package/dist/cjs/common/maps.js.map +1 -1
- package/dist/cjs/common/pyth.d.ts +1 -1
- package/dist/cjs/common/pyth.d.ts.map +1 -1
- package/dist/cjs/common/pyth.js.map +1 -1
- package/dist/cjs/common/types.d.ts +4 -4
- package/dist/cjs/common/types.d.ts.map +1 -1
- package/dist/cjs/common/types.js.map +1 -1
- package/dist/cjs/getAirdropShare.d.ts +1 -0
- package/dist/cjs/getAirdropShare.d.ts.map +1 -1
- package/dist/cjs/getAirdropShare.js +1 -0
- package/dist/cjs/getAirdropShare.js.map +1 -1
- package/dist/cjs/getAllVaults.d.ts +3 -0
- package/dist/cjs/getAllVaults.d.ts.map +1 -1
- package/dist/cjs/getAllVaults.js +3 -0
- package/dist/cjs/getAllVaults.js.map +1 -1
- package/dist/cjs/getAlphaUnlocks.d.ts +1 -0
- package/dist/cjs/getAlphaUnlocks.d.ts.map +1 -1
- package/dist/cjs/getAlphaUnlocks.js +1 -0
- package/dist/cjs/getAlphaUnlocks.js.map +1 -1
- package/dist/cjs/getAprs.d.ts +6 -0
- package/dist/cjs/getAprs.d.ts.map +1 -1
- package/dist/cjs/getAprs.js +6 -0
- package/dist/cjs/getAprs.js.map +1 -1
- package/dist/cjs/getLastAutoCompoundTime.d.ts +1 -0
- package/dist/cjs/getLastAutoCompoundTime.d.ts.map +1 -1
- package/dist/cjs/getLastAutoCompoundTime.js +1 -0
- package/dist/cjs/getLastAutoCompoundTime.js.map +1 -1
- package/dist/cjs/getRebalanceHistory.d.ts +2 -0
- package/dist/cjs/getRebalanceHistory.d.ts.map +1 -1
- package/dist/cjs/getRebalanceHistory.js +2 -0
- package/dist/cjs/getRebalanceHistory.js.map +1 -1
- package/dist/cjs/getTvls.d.ts +4 -0
- package/dist/cjs/getTvls.d.ts.map +1 -1
- package/dist/cjs/getTvls.js +4 -0
- package/dist/cjs/getTvls.js.map +1 -1
- package/dist/cjs/getVaultBalances.d.ts +5 -0
- package/dist/cjs/getVaultBalances.d.ts.map +1 -1
- package/dist/cjs/getVaultBalances.js +5 -0
- package/dist/cjs/getVaultBalances.js.map +1 -1
- package/dist/cjs/getVaults.d.ts +3 -0
- package/dist/cjs/getVaults.d.ts.map +1 -1
- package/dist/cjs/getVaults.js +3 -0
- package/dist/cjs/getVaults.js.map +1 -1
- package/dist/cjs/graphql/executeMutations.d.ts +3 -0
- package/dist/cjs/graphql/executeMutations.d.ts.map +1 -1
- package/dist/cjs/graphql/executeMutations.js +3 -0
- package/dist/cjs/graphql/executeMutations.js.map +1 -1
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.d.ts +1 -0
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.d.ts.map +1 -1
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.js +1 -0
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.js.map +1 -1
- package/dist/cjs/graphql/fetchData.d.ts +8 -0
- package/dist/cjs/graphql/fetchData.d.ts.map +1 -1
- package/dist/cjs/graphql/fetchData.js +8 -0
- package/dist/cjs/graphql/fetchData.js.map +1 -1
- package/dist/cjs/graphql/fetchNftHolders.d.ts +1 -0
- package/dist/cjs/graphql/fetchNftHolders.d.ts.map +1 -1
- package/dist/cjs/graphql/fetchNftHolders.js +1 -0
- package/dist/cjs/graphql/fetchNftHolders.js.map +1 -1
- package/dist/cjs/graphql/fetchReceipts.d.ts +1 -0
- package/dist/cjs/graphql/fetchReceipts.d.ts.map +1 -1
- package/dist/cjs/graphql/fetchReceipts.js +1 -0
- package/dist/cjs/graphql/fetchReceipts.js.map +1 -1
- package/dist/cjs/graphql/getMultiReceipts.d.ts +1 -0
- package/dist/cjs/graphql/getMultiReceipts.d.ts.map +1 -1
- package/dist/cjs/graphql/getMultiReceipts.js +1 -0
- package/dist/cjs/graphql/getMultiReceipts.js.map +1 -1
- package/dist/cjs/graphql/parseData.d.ts +1 -0
- package/dist/cjs/graphql/parseData.d.ts.map +1 -1
- package/dist/cjs/graphql/parseData.js +1 -0
- package/dist/cjs/graphql/parseData.js.map +1 -1
- package/dist/cjs/graphql/parseLockedTableId.d.ts +1 -0
- package/dist/cjs/graphql/parseLockedTableId.d.ts.map +1 -1
- package/dist/cjs/graphql/parseLockedTableId.js +1 -0
- package/dist/cjs/graphql/parseLockedTableId.js.map +1 -1
- package/dist/cjs/graphql/queries/getMultiReceipts.d.ts +1 -0
- package/dist/cjs/graphql/queries/getMultiReceipts.d.ts.map +1 -1
- package/dist/cjs/graphql/queries/getMultiReceipts.js +1 -0
- package/dist/cjs/graphql/queries/getMultiReceipts.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -2
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +10 -6
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/sui-sdk/client.d.ts +5 -0
- package/dist/cjs/sui-sdk/client.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/client.js +5 -0
- package/dist/cjs/sui-sdk/client.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/fetchAirdropClaimEvent.d.ts +1 -0
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +3 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js +3 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.d.ts +1 -0
- 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 +1 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +1 -0
- 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 +1 -0
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.js +1 -0
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts +2 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js +2 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.d.ts +1 -0
- 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/parseData.d.ts +2 -0
- package/dist/cjs/sui-sdk/events/parseData.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/parseData.js +2 -0
- package/dist/cjs/sui-sdk/events/parseData.js.map +1 -1
- package/dist/cjs/sui-sdk/functions/getPositionRange.d.ts +2 -0
- package/dist/cjs/sui-sdk/functions/getPositionRange.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/functions/getPositionRange.js +2 -0
- package/dist/cjs/sui-sdk/functions/getPositionRange.js.map +1 -1
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts +19 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/functions/getReceipts.js +15 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.js.map +1 -1
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.d.ts +1 -0
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.js +1 -0
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.js.map +1 -1
- package/dist/cjs/transactions/alpha.d.ts +2 -0
- package/dist/cjs/transactions/alpha.d.ts.map +1 -1
- package/dist/cjs/transactions/alpha.js +2 -0
- package/dist/cjs/transactions/alpha.js.map +1 -1
- package/dist/cjs/transactions/alphaVault.d.ts +8 -1
- package/dist/cjs/transactions/alphaVault.d.ts.map +1 -1
- package/dist/cjs/transactions/alphaVault.js +68 -4
- package/dist/cjs/transactions/alphaVault.js.map +1 -1
- package/dist/cjs/transactions/alphalend.d.ts +7 -0
- package/dist/cjs/transactions/alphalend.d.ts.map +1 -1
- package/dist/cjs/transactions/alphalend.js +7 -0
- package/dist/cjs/transactions/alphalend.js.map +1 -1
- package/dist/cjs/transactions/blueRewards.d.ts +4 -0
- package/dist/cjs/transactions/blueRewards.d.ts.map +1 -1
- package/dist/cjs/transactions/blueRewards.js +3 -0
- package/dist/cjs/transactions/blueRewards.js.map +1 -1
- package/dist/cjs/transactions/bluefin.d.ts +20 -0
- package/dist/cjs/transactions/bluefin.d.ts.map +1 -1
- package/dist/cjs/transactions/bluefin.js +173 -31
- package/dist/cjs/transactions/bluefin.js.map +1 -1
- package/dist/cjs/transactions/cetus.d.ts +6 -0
- package/dist/cjs/transactions/cetus.d.ts.map +1 -1
- package/dist/cjs/transactions/cetus.js +6 -0
- package/dist/cjs/transactions/cetus.js.map +1 -1
- package/dist/cjs/transactions/cetusSwap.d.ts +15 -0
- package/dist/cjs/transactions/cetusSwap.d.ts.map +1 -0
- package/dist/cjs/transactions/cetusSwap.js +74 -0
- package/dist/cjs/transactions/cetusSwap.js.map +1 -0
- package/dist/cjs/transactions/collect_rewards.d.ts +4 -0
- package/dist/cjs/transactions/collect_rewards.d.ts.map +1 -1
- package/dist/cjs/transactions/collect_rewards.js +351 -67
- package/dist/cjs/transactions/collect_rewards.js.map +1 -1
- package/dist/cjs/transactions/deposit.d.ts +6 -0
- package/dist/cjs/transactions/deposit.d.ts.map +1 -1
- package/dist/cjs/transactions/deposit.js +16 -5
- package/dist/cjs/transactions/deposit.js.map +1 -1
- package/dist/cjs/transactions/get_navi_rewards.d.ts +1 -0
- package/dist/cjs/transactions/get_navi_rewards.d.ts.map +1 -1
- package/dist/cjs/transactions/get_navi_rewards.js +1 -0
- package/dist/cjs/transactions/get_navi_rewards.js.map +1 -1
- package/dist/cjs/transactions/navi-looping.d.ts +13 -0
- package/dist/cjs/transactions/navi-looping.d.ts.map +1 -1
- package/dist/cjs/transactions/navi-looping.js +13 -0
- package/dist/cjs/transactions/navi-looping.js.map +1 -1
- package/dist/cjs/transactions/navi.d.ts.map +1 -1
- package/dist/cjs/transactions/navi.js +725 -729
- package/dist/cjs/transactions/navi.js.map +1 -1
- package/dist/cjs/transactions/naviOracle.d.ts +1 -0
- package/dist/cjs/transactions/naviOracle.d.ts.map +1 -1
- package/dist/cjs/transactions/naviOracle.js +1 -0
- package/dist/cjs/transactions/naviOracle.js.map +1 -1
- package/dist/cjs/transactions/newZapDeposit.d.ts +4 -0
- package/dist/cjs/transactions/newZapDeposit.d.ts.map +1 -1
- package/dist/cjs/transactions/newZapDeposit.js +192 -345
- package/dist/cjs/transactions/newZapDeposit.js.map +1 -1
- package/dist/cjs/transactions/slush.d.ts +4 -0
- package/dist/cjs/transactions/slush.d.ts.map +1 -1
- package/dist/cjs/transactions/slush.js +125 -49
- package/dist/cjs/transactions/slush.js.map +1 -1
- package/dist/cjs/transactions/withdraw.d.ts +3 -0
- package/dist/cjs/transactions/withdraw.d.ts.map +1 -1
- package/dist/cjs/transactions/withdraw.js +13 -5
- package/dist/cjs/transactions/withdraw.js.map +1 -1
- package/dist/cjs/transactions/zapDeposit.d.ts.map +1 -1
- package/dist/cjs/transactions/zapDeposit.js +32 -31
- package/dist/cjs/transactions/zapDeposit.js.map +1 -1
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.d.ts +5 -0
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.d.ts.map +1 -1
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.js +5 -0
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.js.map +1 -1
- package/dist/cjs/utils/prices.d.ts +4 -0
- package/dist/cjs/utils/prices.d.ts.map +1 -1
- package/dist/cjs/utils/prices.js +4 -0
- package/dist/cjs/utils/prices.js.map +1 -1
- package/dist/cjs/utils/simpleCache.d.ts +2 -0
- package/dist/cjs/utils/simpleCache.d.ts.map +1 -1
- package/dist/cjs/utils/simpleCache.js +2 -0
- package/dist/cjs/utils/simpleCache.js.map +1 -1
- package/dist/cjs/utils/userHoldings.d.ts +4 -0
- package/dist/cjs/utils/userHoldings.d.ts.map +1 -1
- package/dist/cjs/utils/userHoldings.js +4 -0
- package/dist/cjs/utils/userHoldings.js.map +1 -1
- package/dist/cjs/vaultFunctions.d.ts +3 -0
- package/dist/cjs/vaultFunctions.d.ts.map +1 -1
- package/dist/cjs/vaultFunctions.js +3 -0
- package/dist/cjs/vaultFunctions.js.map +1 -1
- package/dist/esm/adminFunctions.d.ts +13 -0
- package/dist/esm/adminFunctions.d.ts.map +1 -1
- package/dist/esm/adminFunctions.js +25 -0
- package/dist/esm/adminFunctions.js.map +1 -1
- package/dist/esm/common/coins.d.ts +1 -0
- package/dist/esm/common/coins.d.ts.map +1 -1
- package/dist/esm/common/coins.js +7 -0
- package/dist/esm/common/coins.js.map +1 -1
- package/dist/esm/common/constants.d.ts +94 -0
- package/dist/esm/common/constants.d.ts.map +1 -1
- package/dist/esm/common/constants.js +107 -39
- package/dist/esm/common/constants.js.map +1 -1
- package/dist/esm/common/maps.d.ts +2 -0
- package/dist/esm/common/maps.d.ts.map +1 -1
- package/dist/esm/common/maps.js +117 -1
- package/dist/esm/common/maps.js.map +1 -1
- package/dist/esm/common/pyth.d.ts +1 -1
- package/dist/esm/common/pyth.d.ts.map +1 -1
- package/dist/esm/common/pyth.js.map +1 -1
- package/dist/esm/common/types.d.ts +4 -4
- package/dist/esm/common/types.d.ts.map +1 -1
- package/dist/esm/common/types.js.map +1 -1
- package/dist/esm/getAirdropShare.d.ts +1 -0
- package/dist/esm/getAirdropShare.d.ts.map +1 -1
- package/dist/esm/getAirdropShare.js +1 -0
- package/dist/esm/getAirdropShare.js.map +1 -1
- package/dist/esm/getAllVaults.d.ts +3 -0
- package/dist/esm/getAllVaults.d.ts.map +1 -1
- package/dist/esm/getAllVaults.js +3 -0
- package/dist/esm/getAllVaults.js.map +1 -1
- package/dist/esm/getAlphaUnlocks.d.ts +1 -0
- package/dist/esm/getAlphaUnlocks.d.ts.map +1 -1
- package/dist/esm/getAlphaUnlocks.js +1 -0
- package/dist/esm/getAlphaUnlocks.js.map +1 -1
- package/dist/esm/getAprs.d.ts +6 -0
- package/dist/esm/getAprs.d.ts.map +1 -1
- package/dist/esm/getAprs.js +6 -0
- package/dist/esm/getAprs.js.map +1 -1
- package/dist/esm/getLastAutoCompoundTime.d.ts +1 -0
- package/dist/esm/getLastAutoCompoundTime.d.ts.map +1 -1
- package/dist/esm/getLastAutoCompoundTime.js +1 -0
- package/dist/esm/getLastAutoCompoundTime.js.map +1 -1
- package/dist/esm/getRebalanceHistory.d.ts +2 -0
- package/dist/esm/getRebalanceHistory.d.ts.map +1 -1
- package/dist/esm/getRebalanceHistory.js +2 -0
- package/dist/esm/getRebalanceHistory.js.map +1 -1
- package/dist/esm/getTvls.d.ts +4 -0
- package/dist/esm/getTvls.d.ts.map +1 -1
- package/dist/esm/getTvls.js +4 -0
- package/dist/esm/getTvls.js.map +1 -1
- package/dist/esm/getVaultBalances.d.ts +5 -0
- package/dist/esm/getVaultBalances.d.ts.map +1 -1
- package/dist/esm/getVaultBalances.js +5 -0
- package/dist/esm/getVaultBalances.js.map +1 -1
- package/dist/esm/getVaults.d.ts +3 -0
- package/dist/esm/getVaults.d.ts.map +1 -1
- package/dist/esm/getVaults.js +3 -0
- package/dist/esm/getVaults.js.map +1 -1
- package/dist/esm/graphql/executeMutations.d.ts +3 -0
- package/dist/esm/graphql/executeMutations.d.ts.map +1 -1
- package/dist/esm/graphql/executeMutations.js +3 -0
- package/dist/esm/graphql/executeMutations.js.map +1 -1
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.d.ts +1 -0
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.d.ts.map +1 -1
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.js +1 -0
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.js.map +1 -1
- package/dist/esm/graphql/fetchData.d.ts +8 -0
- package/dist/esm/graphql/fetchData.d.ts.map +1 -1
- package/dist/esm/graphql/fetchData.js +8 -0
- package/dist/esm/graphql/fetchData.js.map +1 -1
- package/dist/esm/graphql/fetchNftHolders.d.ts +1 -0
- package/dist/esm/graphql/fetchNftHolders.d.ts.map +1 -1
- package/dist/esm/graphql/fetchNftHolders.js +1 -0
- package/dist/esm/graphql/fetchNftHolders.js.map +1 -1
- package/dist/esm/graphql/fetchReceipts.d.ts +1 -0
- package/dist/esm/graphql/fetchReceipts.d.ts.map +1 -1
- package/dist/esm/graphql/fetchReceipts.js +1 -0
- package/dist/esm/graphql/fetchReceipts.js.map +1 -1
- package/dist/esm/graphql/getMultiReceipts.d.ts +1 -0
- package/dist/esm/graphql/getMultiReceipts.d.ts.map +1 -1
- package/dist/esm/graphql/getMultiReceipts.js +1 -0
- package/dist/esm/graphql/getMultiReceipts.js.map +1 -1
- package/dist/esm/graphql/parseData.d.ts +1 -0
- package/dist/esm/graphql/parseData.d.ts.map +1 -1
- package/dist/esm/graphql/parseData.js +1 -0
- package/dist/esm/graphql/parseData.js.map +1 -1
- package/dist/esm/graphql/parseLockedTableId.d.ts +1 -0
- package/dist/esm/graphql/parseLockedTableId.d.ts.map +1 -1
- package/dist/esm/graphql/parseLockedTableId.js +1 -0
- package/dist/esm/graphql/parseLockedTableId.js.map +1 -1
- package/dist/esm/graphql/queries/getMultiReceipts.d.ts +1 -0
- package/dist/esm/graphql/queries/getMultiReceipts.d.ts.map +1 -1
- package/dist/esm/graphql/queries/getMultiReceipts.js +1 -0
- package/dist/esm/graphql/queries/getMultiReceipts.js.map +1 -1
- package/dist/esm/index.d.ts +3 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +4 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/sui-sdk/client.d.ts +5 -0
- package/dist/esm/sui-sdk/client.d.ts.map +1 -1
- package/dist/esm/sui-sdk/client.js +5 -0
- package/dist/esm/sui-sdk/client.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/fetchAirdropClaimEvent.d.ts +1 -0
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.js +1 -0
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +3 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js +3 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.d.ts +1 -0
- 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 +1 -0
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +1 -0
- 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 +1 -0
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.js +1 -0
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts +2 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js +2 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.d.ts +1 -0
- 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/parseData.d.ts +2 -0
- package/dist/esm/sui-sdk/events/parseData.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/parseData.js +2 -0
- package/dist/esm/sui-sdk/events/parseData.js.map +1 -1
- package/dist/esm/sui-sdk/functions/getPositionRange.d.ts +2 -0
- package/dist/esm/sui-sdk/functions/getPositionRange.d.ts.map +1 -1
- package/dist/esm/sui-sdk/functions/getPositionRange.js +2 -0
- package/dist/esm/sui-sdk/functions/getPositionRange.js.map +1 -1
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts +19 -0
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts.map +1 -1
- package/dist/esm/sui-sdk/functions/getReceipts.js +15 -0
- package/dist/esm/sui-sdk/functions/getReceipts.js.map +1 -1
- package/dist/esm/sui-sdk/transactions/fetchTransactions.d.ts +1 -0
- package/dist/esm/sui-sdk/transactions/fetchTransactions.d.ts.map +1 -1
- package/dist/esm/sui-sdk/transactions/fetchTransactions.js +1 -0
- package/dist/esm/sui-sdk/transactions/fetchTransactions.js.map +1 -1
- package/dist/esm/transactions/alpha.d.ts +2 -0
- package/dist/esm/transactions/alpha.d.ts.map +1 -1
- package/dist/esm/transactions/alpha.js +2 -0
- package/dist/esm/transactions/alpha.js.map +1 -1
- package/dist/esm/transactions/alphaVault.d.ts +8 -1
- package/dist/esm/transactions/alphaVault.d.ts.map +1 -1
- package/dist/esm/transactions/alphaVault.js +69 -5
- package/dist/esm/transactions/alphaVault.js.map +1 -1
- package/dist/esm/transactions/alphalend.d.ts +7 -0
- package/dist/esm/transactions/alphalend.d.ts.map +1 -1
- package/dist/esm/transactions/alphalend.js +7 -0
- package/dist/esm/transactions/alphalend.js.map +1 -1
- package/dist/esm/transactions/blueRewards.d.ts +4 -0
- package/dist/esm/transactions/blueRewards.d.ts.map +1 -1
- package/dist/esm/transactions/blueRewards.js +3 -0
- package/dist/esm/transactions/blueRewards.js.map +1 -1
- package/dist/esm/transactions/bluefin.d.ts +20 -0
- package/dist/esm/transactions/bluefin.d.ts.map +1 -1
- package/dist/esm/transactions/bluefin.js +170 -30
- package/dist/esm/transactions/bluefin.js.map +1 -1
- package/dist/esm/transactions/cetus.d.ts +6 -0
- package/dist/esm/transactions/cetus.d.ts.map +1 -1
- package/dist/esm/transactions/cetus.js +6 -0
- package/dist/esm/transactions/cetus.js.map +1 -1
- package/dist/esm/transactions/cetusSwap.d.ts +15 -0
- package/dist/esm/transactions/cetusSwap.d.ts.map +1 -0
- package/dist/esm/transactions/cetusSwap.js +72 -0
- package/dist/esm/transactions/cetusSwap.js.map +1 -0
- package/dist/esm/transactions/collect_rewards.d.ts +4 -0
- package/dist/esm/transactions/collect_rewards.d.ts.map +1 -1
- package/dist/esm/transactions/collect_rewards.js +351 -67
- package/dist/esm/transactions/collect_rewards.js.map +1 -1
- package/dist/esm/transactions/deposit.d.ts +6 -0
- package/dist/esm/transactions/deposit.d.ts.map +1 -1
- package/dist/esm/transactions/deposit.js +17 -6
- package/dist/esm/transactions/deposit.js.map +1 -1
- package/dist/esm/transactions/get_navi_rewards.d.ts +1 -0
- package/dist/esm/transactions/get_navi_rewards.d.ts.map +1 -1
- package/dist/esm/transactions/get_navi_rewards.js +1 -0
- package/dist/esm/transactions/get_navi_rewards.js.map +1 -1
- package/dist/esm/transactions/navi-looping.d.ts +13 -0
- package/dist/esm/transactions/navi-looping.d.ts.map +1 -1
- package/dist/esm/transactions/navi-looping.js +13 -0
- package/dist/esm/transactions/navi-looping.js.map +1 -1
- package/dist/esm/transactions/navi.d.ts.map +1 -1
- package/dist/esm/transactions/navi.js +725 -729
- package/dist/esm/transactions/navi.js.map +1 -1
- package/dist/esm/transactions/naviOracle.d.ts +1 -0
- package/dist/esm/transactions/naviOracle.d.ts.map +1 -1
- package/dist/esm/transactions/naviOracle.js +1 -0
- package/dist/esm/transactions/naviOracle.js.map +1 -1
- package/dist/esm/transactions/newZapDeposit.d.ts +4 -0
- package/dist/esm/transactions/newZapDeposit.d.ts.map +1 -1
- package/dist/esm/transactions/newZapDeposit.js +192 -346
- package/dist/esm/transactions/newZapDeposit.js.map +1 -1
- package/dist/esm/transactions/slush.d.ts +4 -0
- package/dist/esm/transactions/slush.d.ts.map +1 -1
- package/dist/esm/transactions/slush.js +126 -50
- package/dist/esm/transactions/slush.js.map +1 -1
- package/dist/esm/transactions/withdraw.d.ts +3 -0
- package/dist/esm/transactions/withdraw.d.ts.map +1 -1
- package/dist/esm/transactions/withdraw.js +14 -6
- package/dist/esm/transactions/withdraw.js.map +1 -1
- package/dist/esm/transactions/zapDeposit.d.ts.map +1 -1
- package/dist/esm/transactions/zapDeposit.js +32 -31
- package/dist/esm/transactions/zapDeposit.js.map +1 -1
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.d.ts +5 -0
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.d.ts.map +1 -1
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.js +5 -0
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.js.map +1 -1
- package/dist/esm/utils/prices.d.ts +4 -0
- package/dist/esm/utils/prices.d.ts.map +1 -1
- package/dist/esm/utils/prices.js +4 -0
- package/dist/esm/utils/prices.js.map +1 -1
- package/dist/esm/utils/simpleCache.d.ts +2 -0
- package/dist/esm/utils/simpleCache.d.ts.map +1 -1
- package/dist/esm/utils/simpleCache.js +2 -0
- package/dist/esm/utils/simpleCache.js.map +1 -1
- package/dist/esm/utils/userHoldings.d.ts +4 -0
- package/dist/esm/utils/userHoldings.d.ts.map +1 -1
- package/dist/esm/utils/userHoldings.js +4 -0
- package/dist/esm/utils/userHoldings.js.map +1 -1
- package/dist/esm/vaultFunctions.d.ts +3 -0
- package/dist/esm/vaultFunctions.d.ts.map +1 -1
- package/dist/esm/vaultFunctions.js +3 -0
- 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/addAirdropCoin.html +1 -1
- package/docs/functions/alphaLpBreakdown.html +1 -1
- package/docs/functions/cetusLpBreakdown.html +1 -1
- package/docs/functions/claimAirdropTx.html +1 -1
- package/docs/functions/claimRewardTxb.html +1 -1
- package/docs/functions/claimRewardsTxb.html +1 -1
- package/docs/functions/claimWithdrawAlphaTx.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/collectAndSwapRewardsLyf.html +1 -1
- package/docs/functions/collectAndSwapRewardsSingleLoop.html +1 -1
- package/docs/functions/collectRewardTxb.html +1 -1
- package/docs/functions/collectRewards.html +1 -1
- package/docs/functions/collectRewardsAndSwapSlush.html +1 -1
- package/docs/functions/collectUnsuppliedBalance.html +1 -1
- package/docs/functions/deposit.html +1 -1
- package/docs/functions/depositAlphaTx.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/fetchAirdropClaimEvents.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/fetchEvents.html +1 -1
- package/docs/functions/fetchLiquidityChangeEvents.html +1 -1
- package/docs/functions/fetchMultiCategoryEvents.html +1 -1
- 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/fetchRequiredPrices.html +1 -1
- package/docs/functions/fetchTVL.html +1 -1
- package/docs/functions/fetchTransactions.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/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/getRebalanceCap.html +1 -0
- 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/getSlushUserTotalXtokens.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/getTickSpacing.html +1 -1
- package/docs/functions/getTickToPrice.html +1 -1
- package/docs/functions/getTvls.html +1 -1
- package/docs/functions/getVaultBalance.html +1 -1
- package/docs/functions/getVaults.html +1 -1
- package/docs/functions/getWithdrawRequestsAndUnsuppliedAmount.html +1 -1
- package/docs/functions/initiateWithdrawAlpha.html +1 -1
- package/docs/functions/lastAutocompoundTime.html +1 -1
- package/docs/functions/liquidityToTokens.html +1 -1
- package/docs/functions/migrateBoostedToLoop.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/pendingRewardAmount.html +1 -1
- package/docs/functions/processWithdrawRequestsManual.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/slushDeposit.html +1 -1
- package/docs/functions/slushWithdraw.html +1 -1
- package/docs/functions/updateSingleTokenPrice.html +1 -0
- package/docs/functions/withdraw.html +1 -1
- package/docs/functions/withdrawAlphaTxb.html +1 -1
- package/docs/functions/withdrawTxb.html +1 -1
- package/docs/functions/zapDepositQuoteTxb.html +1 -1
- package/docs/functions/zapDepositTxb.html +1 -1
- package/docs/hierarchy.html +1 -1
- package/docs/index.html +8 -2
- package/docs/interfaces/Coin.html +6 -6
- package/docs/interfaces/CoinPair.html +2 -2
- package/docs/interfaces/CommonEventAttributes.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 +1 -1
- package/docs/types/AfterTransactionEventNode.html +1 -1
- package/docs/types/AirdropClaimEventNode.html +1 -1
- package/docs/types/Allocator.html +2 -2
- package/docs/types/AlphaFiDoubleAssetVault.html +2 -2
- package/docs/types/AlphaFiMultiVaultBalance.html +1 -1
- package/docs/types/AlphaFiSingleAssetVault.html +2 -2
- package/docs/types/AlphaFiVault.html +1 -1
- package/docs/types/AlphaFiVaultBalance.html +1 -1
- package/docs/types/AlphaLendInvestor.html +1 -1
- package/docs/types/AlphaPoolType.html +2 -2
- package/docs/types/AlphaReceipt.html +2 -2
- package/docs/types/AlphaReceiptFields.html +2 -2
- package/docs/types/AlphaVaultBalance.html +2 -2
- package/docs/types/AutoBalancePoolNames.html +1 -1
- package/docs/types/AutoCompoundingEventNode.html +1 -1
- package/docs/types/Bag.html +2 -2
- package/docs/types/BluefinInvestor.html +1 -1
- package/docs/types/BluefinLyfInvestor.html +1 -1
- package/docs/types/BluefinPoolType.html +2 -2
- package/docs/types/BucketInvestor.html +2 -2
- package/docs/types/CetusInvestor.html +2 -2
- package/docs/types/CetusPoolType.html +2 -2
- package/docs/types/CetusSwapOptions.html +1 -1
- package/docs/types/CoinAmounts.html +2 -2
- package/docs/types/CoinName.html +1 -1
- package/docs/types/CoinType.html +1 -1
- package/docs/types/CommonInvestorFields.html +2 -2
- package/docs/types/CreatePoolOptions.html +2 -2
- package/docs/types/Distributor.html +2 -2
- package/docs/types/DoubleAssetMultiVaultBalance.html +2 -2
- package/docs/types/DoubleAssetPoolNames.html +1 -1
- package/docs/types/DoubleAssetTokenHoldings.html +2 -2
- package/docs/types/DoubleAssetVaultBalance.html +2 -2
- package/docs/types/EventCategory.html +1 -1
- package/docs/types/EventNode.html +1 -1
- package/docs/types/GetHoldersParams.html +2 -2
- package/docs/types/GetTokenHoldingsParams.html +2 -2
- package/docs/types/GetUserTokensFromTransactionsParams.html +2 -2
- package/docs/types/GetUserTokensInUsdFromTransactionsParams.html +2 -2
- package/docs/types/GetVaultBalanceParams.html +1 -1
- package/docs/types/HoldingsObj.html +2 -2
- 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 +2 -2
- package/docs/types/LiquidityToUsdParams.html +2 -2
- package/docs/types/LoopingDebt.html +2 -2
- package/docs/types/LoopingPoolNames.html +1 -1
- package/docs/types/LpBreakdownType.html +2 -2
- package/docs/types/MemberPoolDataType.html +2 -2
- package/docs/types/MemberType.html +2 -2
- package/docs/types/MultiGetVaultBalancesParams.html +2 -2
- package/docs/types/NaviInvestor.html +2 -2
- package/docs/types/ObjectTable.html +1 -1
- package/docs/types/OtherReceiptFields.html +2 -2
- package/docs/types/PoolName.html +1 -1
- package/docs/types/PoolReceipt.html +1 -1
- package/docs/types/PoolType.html +2 -2
- package/docs/types/Receipt.html +2 -2
- package/docs/types/ReceiptGQL.html +2 -2
- package/docs/types/SingleAssetMultiVaultBalance.html +2 -2
- package/docs/types/SingleAssetPoolNames.html +1 -1
- package/docs/types/SingleAssetTokenHoldings.html +2 -2
- package/docs/types/SingleAssetVaultBalance.html +2 -2
- package/docs/types/SingleGetVaultBalancesParams.html +2 -2
- 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 +2 -2
- package/docs/types/TransactionBlockType.html +2 -2
- package/docs/types/UserPoolLiquidity.html +2 -2
- package/docs/types/UserPoolTokenHoldings.html +1 -1
- package/docs/types/UserUsdHoldings.html +2 -2
- package/docs/types/VaultBalance.html +1 -1
- package/docs/types/VecMap.html +2 -2
- package/docs/types/VoteCastEvent.html +1 -1
- package/docs/types/WithdrawV2EventNode.html +1 -1
- package/docs/variables/AUTOBALANCE_SUI_FIRST_POOLS.html +1 -1
- package/docs/variables/AUTOBALANCE_SUI_SECOND_POOLS.html +1 -1
- package/docs/variables/AUTOBALANCE_TYPE_1_POOLS.html +1 -1
- package/docs/variables/alphalendMarketIdMap.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/eventCategories.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/naviPriceFeedMap.html +1 -0
- 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 +2 -2
- package/scripts/testRun.ts +28 -14
- package/scripts/utils.ts +8 -4
- package/#package.json# +0 -98
- package/FETCH_OVERRIDE_FIX.md +0 -222
|
@@ -20,6 +20,7 @@ const maps_js_1 = require("../../common/maps.js");
|
|
|
20
20
|
const decimal_js_1 = require("decimal.js");
|
|
21
21
|
const client_js_1 = require("../client.js");
|
|
22
22
|
const simpleCache_js_1 = require("../../utils/simpleCache.js");
|
|
23
|
+
/** @deprecated */
|
|
23
24
|
function convertReceiptGQLToReceipt(receipts) {
|
|
24
25
|
const res = receipts.map((receipt) => {
|
|
25
26
|
return {
|
|
@@ -91,6 +92,7 @@ function convertReceiptGQLToReceipt(receipts) {
|
|
|
91
92
|
}
|
|
92
93
|
const receiptsCache = new simpleCache_js_1.SimpleCache(3600000);
|
|
93
94
|
const receiptsPromiseCache = new simpleCache_js_1.SimpleCache(3600000);
|
|
95
|
+
/** @deprecated */
|
|
94
96
|
async function getMultiReceipts(address) {
|
|
95
97
|
try {
|
|
96
98
|
const receiptMap = await (0, index_js_1.fetchMultiReceipts)(address);
|
|
@@ -121,6 +123,7 @@ async function getMultiReceipts(address) {
|
|
|
121
123
|
});
|
|
122
124
|
}
|
|
123
125
|
}
|
|
126
|
+
/** @deprecated */
|
|
124
127
|
async function getReceipts(poolName, address, ignoreCache) {
|
|
125
128
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
126
129
|
const receiptsCacheKey = `getReceipts-${maps_js_1.poolInfo[poolName].receiptName}-${address}`;
|
|
@@ -190,6 +193,7 @@ async function getReceipts(poolName, address, ignoreCache) {
|
|
|
190
193
|
}
|
|
191
194
|
const poolCache = new simpleCache_js_1.SimpleCache();
|
|
192
195
|
const poolPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
196
|
+
/** @deprecated */
|
|
193
197
|
async function getMultiPool() {
|
|
194
198
|
let pools = Object.keys(maps_js_1.poolInfo);
|
|
195
199
|
pools = pools.filter((pool) => {
|
|
@@ -226,6 +230,7 @@ async function getMultiPool() {
|
|
|
226
230
|
}
|
|
227
231
|
}
|
|
228
232
|
}
|
|
233
|
+
/** @deprecated */
|
|
229
234
|
async function getPool(poolName, ignoreCache) {
|
|
230
235
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
231
236
|
const cacheKey = `pool_${maps_js_1.poolInfo[poolName].poolId}`;
|
|
@@ -272,6 +277,7 @@ async function getPool(poolName, ignoreCache) {
|
|
|
272
277
|
}
|
|
273
278
|
const parentPoolCache = new simpleCache_js_1.SimpleCache();
|
|
274
279
|
const parentPoolPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
280
|
+
/** @deprecated */
|
|
275
281
|
async function getMultiParentPool() {
|
|
276
282
|
let pools = Object.keys(maps_js_1.poolInfo);
|
|
277
283
|
pools = pools.filter((pool) => {
|
|
@@ -310,6 +316,7 @@ async function getMultiParentPool() {
|
|
|
310
316
|
}
|
|
311
317
|
}
|
|
312
318
|
}
|
|
319
|
+
/** @deprecated */
|
|
313
320
|
async function getParentPool(poolName, ignoreCache) {
|
|
314
321
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
315
322
|
const cacheKey = `parentPool_${maps_js_1.poolInfo[poolName].parentPoolId}`;
|
|
@@ -361,6 +368,7 @@ async function getParentPool(poolName, ignoreCache) {
|
|
|
361
368
|
}
|
|
362
369
|
const cetusPoolCache = new simpleCache_js_1.SimpleCache();
|
|
363
370
|
const cetusPoolPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
371
|
+
/** @deprecated */
|
|
364
372
|
async function getMultiCetusPool() {
|
|
365
373
|
let pools = Object.keys(index_js_1.cetusPoolMap);
|
|
366
374
|
pools = pools.filter((pool) => {
|
|
@@ -396,6 +404,7 @@ async function getMultiCetusPool() {
|
|
|
396
404
|
}
|
|
397
405
|
}
|
|
398
406
|
}
|
|
407
|
+
/** @deprecated */
|
|
399
408
|
async function getCetusPool(poolName, ignoreCache) {
|
|
400
409
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
401
410
|
const cacheKey = `cetusPool_${index_js_1.cetusPoolMap[poolName]}`;
|
|
@@ -442,6 +451,7 @@ async function getCetusPool(poolName, ignoreCache) {
|
|
|
442
451
|
}
|
|
443
452
|
const investorCache = new simpleCache_js_1.SimpleCache();
|
|
444
453
|
const investorPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
454
|
+
/** @deprecated */
|
|
445
455
|
async function getMultiInvestor() {
|
|
446
456
|
let pools = Object.keys(maps_js_1.poolInfo);
|
|
447
457
|
pools = pools.filter((pool) => {
|
|
@@ -478,6 +488,7 @@ async function getMultiInvestor() {
|
|
|
478
488
|
}
|
|
479
489
|
}
|
|
480
490
|
}
|
|
491
|
+
/** @deprecated */
|
|
481
492
|
async function getInvestor(poolName, ignoreCache) {
|
|
482
493
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
483
494
|
const cacheKey = `investor_${maps_js_1.poolInfo[poolName].investorId}`;
|
|
@@ -556,6 +567,7 @@ async function getInvestor(poolName, ignoreCache) {
|
|
|
556
567
|
}
|
|
557
568
|
const distributorCache = new simpleCache_js_1.SimpleCache();
|
|
558
569
|
const distributorPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
570
|
+
/** @deprecated */
|
|
559
571
|
async function getDistributor(ignoreCache) {
|
|
560
572
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
561
573
|
const cacheKey = `distributor_${(0, index_js_1.getConf)().ALPHA_DISTRIBUTOR}`;
|
|
@@ -600,6 +612,7 @@ async function getDistributor(ignoreCache) {
|
|
|
600
612
|
distributorPromiseCache.set(cacheKey, distributorPromise);
|
|
601
613
|
return distributorPromise;
|
|
602
614
|
}
|
|
615
|
+
/** @deprecated */
|
|
603
616
|
async function getPoolExchangeRate(poolName, ignoreCache) {
|
|
604
617
|
let pool;
|
|
605
618
|
let xTokenSupply = new decimal_js_1.Decimal(0);
|
|
@@ -654,6 +667,7 @@ async function getPoolExchangeRate(poolName, ignoreCache) {
|
|
|
654
667
|
}
|
|
655
668
|
const naviVoloExchangeRateCache = new simpleCache_js_1.SimpleCache();
|
|
656
669
|
const naviVoloExchangeRatePromiseCache = new simpleCache_js_1.SimpleCache();
|
|
670
|
+
/** @deprecated */
|
|
657
671
|
async function fetchVoloExchangeRate(ignoreCache) {
|
|
658
672
|
const apiUrl = "https://open-api.naviprotocol.io/api/volo/stats";
|
|
659
673
|
let NaviVoloDetails;
|
|
@@ -721,6 +735,7 @@ async function fetchVoloExchangeRate(ignoreCache) {
|
|
|
721
735
|
}
|
|
722
736
|
return NaviVoloDetails;
|
|
723
737
|
}
|
|
738
|
+
/** @deprecated */
|
|
724
739
|
async function multiGetNaviInvestor(poolNames) {
|
|
725
740
|
const results = {};
|
|
726
741
|
const poolInvestorIds = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getReceipts.js","sourceRoot":"","sources":["../../../../src/sui-sdk/functions/getReceipts.ts"],"names":[],"mappings":";;AA8BA,gEAyEC;AAKD,4CAiCC;AAED,kCAwEC;AAKD,oCAmCC;AAED,0BAmDC;AAOD,gDAqCC;AAED,sCAqDC;AAOD,8CAiCC;AAED,oCAgDC;AAKD,4CAkCC;AAED,kCA2EC;AAOD,wCA+CC;AAED,kDAkEC;AAOD,sDAqEC;AAED,oDA8BC;AA10BD,6CAuBwB;AACxB,kDAAgD;AAChD,2CAAqC;AACrC,4CAA4C;AAC5C,+DAAyD;AAEzD,SAAgB,0BAA0B,CAAC,QAAsB;IAC/D,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACnC,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,OAAO;YACzB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE;gBACP,QAAQ,EAAE,YAAY,EAAE,2DAA2D;gBACnF,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI;gBAChC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,MAAM,EAAE;oBACN,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE;oBACpC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS;oBAC1C,0BAA0B,EAAE;wBAC1B,IAAI,EAAE,SAAS,EAAE,uBAAuB;wBACxC,MAAM,EAAE;4BACN,QAAQ,EACN,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,GAAG,CAC3D,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gCACT,IAAI,EAAE,SAAS,EAAE,uBAAuB;gCACxC,MAAM,EAAE;oCACN,KAAK,EAAE,IAAI,CAAC,KAAK;oCACjB,GAAG,EAAE;wCACH,IAAI,EAAE,SAAS,EAAE,uBAAuB;wCACxC,MAAM,EAAE;4CACN,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;yCACpB;qCACF;iCACF;6BACF,CAAC,CACH;yBACJ;qBACF;oBACD,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc;wBAClD,CAAC,CAAC;4BACE,IAAI,EAAE,SAAS,EAAE,uBAAuB;4BACxC,MAAM,EAAE;gCACN,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;gCAC/C,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE;gCACnD,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;gCAC/C,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;6BAChD;yBACF;wBACH,CAAC,CAAC,SAAS;oBACb,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI;oBAChC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK;oBAClC,eAAe,EAAE;wBACf,IAAI,EAAE,SAAS,EAAE,uBAAuB;wBACxC,MAAM,EAAE;4BACN,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAC1D,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gCACT,IAAI,EAAE,SAAS,EAAE,uBAAuB;gCACxC,MAAM,EAAE;oCACN,GAAG,EAAE;wCACH,IAAI,EAAE,SAAS,EAAE,uBAAuB;wCACxC,MAAM,EAAE;4CACN,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;yCACpB;qCACF;oCACD,KAAK,EAAE,IAAI,CAAC,KAAK;iCAClB;6BACF,CAAC,CACH;yBACF;qBACF;oBACD,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO;oBACtC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAClD,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,IAAI,SAAS;iBACtE;aACF;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,4BAAW,CAAY,OAAO,CAAC,CAAC;AAC1D,MAAM,oBAAoB,GAAG,IAAI,4BAAW,CAAqB,OAAO,CAAC,CAAC;AAEnE,KAAK,UAAU,gBAAgB,CAAC,OAAe;IACpD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,IAAA,6BAAkB,EAAC,OAAO,CAAC,CAAC;QACrD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAQ,CAAC,EAAE,CAAC;YACzC,MAAM,QAAQ,GAAG,eAAe,kBAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC;YACxE,IAAI,OAAO,GAAc,EAAE,CAAC;YAC5B,IACE,IAAI,KAAK,0BAA0B;gBACnC,UAAU,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAChD,CAAC;gBACD,OAAO,GAAG,0BAA0B,CAClC,UAAU,CAAC,GAAG,CAAC,gCAAgC,CAAiB,CACjE,CAAC;YACJ,CAAC;iBAAM,IAAI,UAAU,CAAC,GAAG,CAAC,kBAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtD,OAAO,GAAG,0BAA0B,CAClC,UAAU,CAAC,GAAG,CAAC,kBAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,CAAiB,CAC3D,CAAC;YACJ,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;QAC9D,4BAA4B;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAQ,CAAC,CAAC;QACpC,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACzC,OAAO,WAAW,CAAC,IAAgB,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACpD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAG,eAAe,kBAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC;YAChF,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,OAAe,EACf,WAAoB;IAEpB,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,gBAAgB,GAAG,eAAe,kBAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC;IACpF,IAAI,WAAW,EAAE,CAAC;QAChB,aAAa,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACvC,oBAAoB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3D,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,EAAE;IACF,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,aAAa,GAAG,oBAAoB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC/D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,CAAC,KAAK,IAAwB,EAAE;YAC9C,0DAA0D;YAC1D,IAAI,aAAa,GAA8B,IAAI,CAAC;YACpD,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,gBAAgB,GACpB,MAAM,SAAS,CAAC,eAAe,CAAC;oBAC9B,KAAK,EAAE,OAAO;oBACd,MAAM,EAAE,aAAa;oBACrB,MAAM,EAAE;wBACN,sDAAsD;wBACtD,UAAU,EAAE,kBAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW;qBAC3C;oBACD,OAAO,EAAE;wBACP,WAAW,EAAE,IAAI;qBAClB;iBACF,CAAC,CAAC;gBACL,yDAAyD;gBACzD,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBACpC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAe,CAAC;oBAC9B,IAAI,CAAC,EAAE,CAAC;wBACN,IACE,kBAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI;4BACxD,CAAC,QAAQ,KAAK,0BAA0B;gCACtC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,gCAAgC,CAAC,EAC7D,CAAC;4BACD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACf,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,+BAA+B;gBAC/B,IAAI,gBAAgB,CAAC,WAAW,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC;oBAChE,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,0BAA0B;oBAC1B,8CAA8C;oBAC9C,MAAM;gBACR,CAAC;YACH,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;YAC1C,oBAAoB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,oBAAoB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,gCAAgC;YAC/E,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QACH,oCAAoC;QACpC,6CAA6C;QAC7C,oBAAoB,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,SAAS,GAAG,IAAI,4BAAW,EAA4B,CAAC;AAC9D,MAAM,gBAAgB,GAAG,IAAI,4BAAW,EAAqC,CAAC;AAEvE,KAAK,UAAU,YAAY;IAChC,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAQ,CAAC,CAAC;IAClC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,OAAO,kBAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,OAAO,kBAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC/B,CAAC,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,6BAA6B;IAEnD,sCAAsC;IACtC,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,qBAAqB;IACrB,oDAAoD;IACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACnD,MAAM,YAAY,GAAa,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAmC;IACjE,CAAC;IACD,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAY,GAAE,CAAC,eAAe,CAAC;gBAC7C,GAAG,EAAE,YAAY;gBACjB,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAgC,CAAC;gBACvD,MAAM,QAAQ,GAAG,QAAQ,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAgB,EAChB,WAAoB;IAEpB,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,QAAQ,kBAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;IAErD,IAAI,WAAW,EAAE,CAAC;QAChB,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3B,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,4CAA4C;IAC5C,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,mDAAmD;IACnD,IAAI,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,4CAA4C;IAC5C,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;gBAClC,EAAE,EAAE,kBAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM;gBAC7B,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YAEH,MAAM,QAAQ,GACZ,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,IAAsB,CAAC,CAAC,CAAE,CAAC,CAAC,IAAiB,CAAC;YAE1E,wBAAwB;YACxB,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAClC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;YAC3D,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,sDAAsD;YACtD,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,oBAAoB;IACpB,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC5C,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,4BAAW,EAAmC,CAAC;AAC3E,MAAM,sBAAsB,GAAG,IAAI,4BAAW,EAE3C,CAAC;AAEG,KAAK,UAAU,kBAAkB;IACtC,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAQ,CAAC,CAAC;IAClC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,OAAO,kBAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACvC,OAAO,kBAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC;IACrC,CAAC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC9B,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,sCAAsC;IACtC,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,qBAAqB;IACrB,oDAAoD;IACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACnD,MAAM,YAAY,GAAa,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAmC;IACjE,CAAC;IAED,KAAK,MAAM,kBAAkB,IAAI,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAY,GAAE,CAAC,eAAe,CAAC;gBAC7C,GAAG,EAAE,kBAAkB;gBACvB,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAqB,CAAC;gBAClD,MAAM,QAAQ,GAAG,cAAc,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,WAAoB;IAEpB,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,cAAc,kBAAQ,CAAC,QAAQ,CAAC,CAAC,YAAY,EAAE,CAAC;IACjE,IAAI,WAAW,EAAE,CAAC;QAChB,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjC,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,4CAA4C;IAC5C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,mDAAmD;IACnD,IAAI,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7D,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IACD,4CAA4C;IAC5C,iBAAiB,GAAG,CAAC,KAAK,IAAI,EAAE;QAC9B,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,kBAAQ,CAAC,QAAQ,CAAC;gBAC3B,CAAC,CAAC,kBAAQ,CAAC,QAAQ,CAAC,CAAC,YAAY;gBACjC,CAAC,CAAC,uBAAY,CAAC,QAAQ,CAAC;oBACtB,CAAC,CAAC,uBAAY,CAAC,QAAQ,CAAC;oBACxB,CAAC,CAAC,yBAAc,CAAC,QAAQ,CAAC,CAAC;YAC/B,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;gBAClC,EAAE,EAAE,EAAE;gBACN,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,CAAC,CAAC,IAAuC,CAAC;YAE7D,wBAAwB;YACxB,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC1C,OAAO,UAAU,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC;YAChE,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,sDAAsD;YACtD,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,oBAAoB;IACpB,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IACxD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,4BAAW,EAAmC,CAAC;AAC1E,MAAM,qBAAqB,GAAG,IAAI,4BAAW,EAE1C,CAAC;AAEG,KAAK,UAAU,iBAAiB;IACrC,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAY,CAAC,CAAC;IACtC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,OAAO,uBAAY,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,OAAO,uBAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,sCAAsC;IACtC,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,oDAAoD;IACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACnD,MAAM,YAAY,GAAa,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAmC;IACjE,CAAC;IACD,KAAK,MAAM,iBAAiB,IAAI,OAAO,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAY,GAAE,CAAC,eAAe,CAAC;gBAC7C,GAAG,EAAE,iBAAiB;gBACtB,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5C,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAqB,CAAC;gBAC5C,MAAM,QAAQ,GAAG,aAAa,uBAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,QAAgB,EAChB,WAAoB;IAEpB,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,aAAa,uBAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvD,IAAI,WAAW,EAAE,CAAC;QAChB,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,4CAA4C;IAC5C,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,mDAAmD;IACnD,IAAI,gBAAgB,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3D,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IACD,4CAA4C;IAC5C,gBAAgB,GAAG,CAAC,KAAK,IAAI,EAAE;QAC7B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;gBAClC,EAAE,EAAE,uBAAY,CAAC,QAAQ,CAAC;gBAC1B,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,CAAC,CAAC,IAAqB,CAAC;YAE1C,wBAAwB;YACxB,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACxC,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;YAC/D,OAAO,SAAS,CAAC;QACnB,CAAC;gBAAS,CAAC;YACT,sDAAsD;YACtD,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,oBAAoB;IACpB,qBAAqB,CAAC,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IACtD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,4BAAW,EAAY,CAAC;AAClD,MAAM,oBAAoB,GAAG,IAAI,4BAAW,EAAqB,CAAC;AAE3D,KAAK,UAAU,gBAAgB;IACpC,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAQ,CAAC,CAAC;IAClC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,OAAO,kBAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACrC,OAAO,kBAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,sCAAsC;IACtC,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,qBAAqB;IACrB,oDAAoD;IACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACvD,MAAM,YAAY,GAAa,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAmC;IACjE,CAAC;IACD,KAAK,MAAM,gBAAgB,IAAI,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAY,GAAE,CAAC,eAAe,CAAC;gBAC7C,GAAG,EAAE,gBAAgB;gBACrB,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvD,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAgB,CAAC;gBAC3C,MAAM,QAAQ,GAAG,YAAY,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,WAAoB;IAEpB,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,YAAY,kBAAQ,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,CAAC;IAC7D,IAAI,WAAW,EAAE,CAAC;QAChB,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/B,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IACD,gDAAgD;IAChD,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,mDAAmD;IACnD,IAAI,oBAAoB,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,oBAAoB,EAAE,CAAC;QACzB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,4CAA4C;IAC5C,oBAAoB,GAAG,CAAC,KAAK,IAAI,EAAE;QACjC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;gBAClC,EAAE,EAAE,kBAAQ,CAAC,QAAQ,CAAC,CAAC,UAAU;gBACjC,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,IAAI,aAAuB,CAAC;YAC5B,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,IAAI,MAAM,EAAE,CAAC;gBACpD,aAAa,GAAG,CAAC,CAAC,IAA2C,CAAC;YAChE,CAAC;iBAAM,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,IAAI,QAAQ,EAAE,CAAC;gBAC7D,aAAa,GAAG,CAAC,CAAC,IAA6C,CAAC;YAClE,CAAC;iBAAM,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,IAAI,SAAS,EAAE,CAAC;gBAC9D,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,YAAY,KAAK,wBAAwB,EAAE,CAAC;oBACjE,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAa,CAAC;oBAChE,IAAI,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAe,CAAC;oBAC1D,IAAI,WAAW,GAAG;wBAChB,OAAO,EAAE;4BACP,MAAM,EAAE;gCACN,GAAG,eAAe,CAAC,MAAM;6BAC1B;yBACF;qBAC2C,CAAC;oBAC/C,aAAa,GAAG,WAAW,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,CAAC,CAAC,IAA8C,CAAC;gBACnE,CAAC;YACH,CAAC;iBAAM,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,IAAI,WAAW,EAAE,CAAC;gBAChE,aAAa,GAAG,CAAC,CAAC,IAAgD,CAAC;YACrE,CAAC;iBAAM,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,IAAI,OAAO,EAAE,CAAC;gBAC5D,aAAa,GAAG,CAAC,CAAC,IAA4C,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CACb,+BAA+B,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,EAAE,CACvE,CAAC;YACJ,CAAC;YAED,4BAA4B;YAC5B,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAC3C,OAAO,aAAa,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;YAC1D,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,sDAAsD;YACtD,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,oBAAoB;IACpB,oBAAoB,CAAC,GAAG,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACzD,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,MAAM,gBAAgB,GAAG,IAAI,4BAAW,EAAe,CAAC;AACxD,MAAM,uBAAuB,GAAG,IAAI,4BAAW,EAE5C,CAAC;AAEG,KAAK,UAAU,cAAc,CAClC,WAAoB;IAEpB,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,eAAe,IAAA,kBAAO,GAAE,CAAC,iBAAiB,EAAE,CAAC;IAC9D,IAAI,WAAW,EAAE,CAAC;QAChB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,uBAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IACD,mDAAmD;IACnD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzD,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,mDAAmD;IACnD,IAAI,kBAAkB,GAAG,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/D,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,4CAA4C;IAC5C,kBAAkB,GAAG,CAAC,KAAK,IAAI,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;gBAClC,EAAE,EAAE,IAAA,kBAAO,GAAE,CAAC,iBAAiB;gBAC/B,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,CAAC,CAAC,IAAmB,CAAC;YAE1C,+BAA+B;YAC/B,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC5C,OAAO,WAAW,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;gBAAS,CAAC;YACT,sDAAsD;YACtD,uBAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,oBAAoB;IACpB,uBAAuB,CAAC,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAC1D,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,QAAkB,EAClB,WAAoB;IAEpB,IAAI,IAA8B,CAAC;IACnC,IAAI,YAAY,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,cAAc,GAAG,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,CAAC;QACH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACpD,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAY,GAAE,CAAC,SAAS,CAAC;gBACvC,EAAE,EAAE,kBAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM;gBAC7B,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,cAAc,GAAG,IAAI,oBAAO,CACzB,CAAC,CAAC,IAAI,CAAC,OAAe,CAAC,MAAM,CAAC,cAAc,CAC9C,CAAC;YACF,YAAY,GAAG,IAAI,oBAAO,CACvB,CAAC,CAAC,IAAI,CAAC,OAAe,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAC1D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC5C,IACE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAC1C,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EACrC,CAAC;gBACD,YAAY,GAAG,IAAI,oBAAO,CACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAClE,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,IAAI,oBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC/D,CAAC;YACD,cAAc,GAAG,IAAI,oBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACjE,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;gBACxB,cAAc,GAAG,IAAI,oBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACnE,CAAC;iBAAM,IAAI,kBAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,IAAI,OAAO,EAAE,CAAC;gBAC5D,MAAM,QAAQ,GAAG,CAAC,MAAM,WAAW,CACjC,QAAQ,EACR,WAAW,CACZ,CAAyC,CAAC;gBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,IAAI,KAAK,CACb,2CAA2C,QAAQ,EAAE,CACtD,CAAC;gBACJ,CAAC;gBACD,cAAc,GAAG,IAAI,oBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACjE,OAAO,IAAI,oBAAO,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QACD,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1D,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CACT,4CAA4C,QAAQ,gBAAgB,GAAG,EAAE,CAC1E,CAAC;QACF,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,yBAAyB,GAAG,IAAI,4BAAW,EAAgB,CAAC;AAClE,MAAM,gCAAgC,GAAG,IAAI,4BAAW,EAErD,CAAC;AAEG,KAAK,UAAU,qBAAqB,CACzC,WAAoB;IAEpB,MAAM,MAAM,GAAG,iDAAiD,CAAC;IACjE,IAAI,eAA6B,CAAC;IAClC,IAAI,WAAW,EAAE,CAAC;QAChB,yBAAyB,CAAC,KAAK,EAAE,CAAC;QAClC,gCAAgC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,cAAc,GAAG,yBAAyB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,cAAc,EAAE,CAAC;QACnB,eAAe,GAAG,cAAc,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,MAAM,iBAAiB,GAAiB;YACtC,IAAI,EAAE;gBACJ,eAAe,EAAE,EAAE;gBACnB,cAAc,EAAE,EAAE;gBAClB,aAAa,EAAE,EAAE;gBACjB,gBAAgB,EAAE,GAAG;gBACrB,mBAAmB,EAAE,EAAE;gBACvB,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,EAAE;gBACf,gBAAgB,EAAE,EAAE;gBACpB,YAAY,EAAE,EAAE;gBAChB,UAAU,EAAE,EAAE;gBACd,YAAY,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,EAAE;gBACpC,WAAW,EAAE,EAAE;gBACf,GAAG,EAAE,EAAE;gBACP,gBAAgB,EAAE,CAAC,EAAE,CAAC;gBACtB,iBAAiB,EAAE,EAAE;gBACrB,eAAe,EAAE,EAAE;aACpB;YACD,IAAI,EAAE,CAAC;SACR,CAAC;QACF,IAAI,CAAC;YACH,IAAI,aAAa,GAAG,gCAAgC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAEjE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;qBAC1B,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;wBACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC5D,CAAC;oBACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC,CAAC,0BAA0B;oBAChF,yBAAyB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,qBAAqB;oBAClE,gCAAgC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,oCAAoC;oBACrF,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACf,gCAAgC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,yCAAyC;oBAC1F,MAAM,KAAK,CAAC;gBACd,CAAC,CAAC,CAAC;gBACL,gCAAgC,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;gBAC5D,eAAe,GAAG,MAAM,aAAa,CAAC;gBACtC,OAAO,aAAa,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,iBAAiB,CAAC;gBACpC,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAEnC,eAAe,GAAG,iBAAiB,CAAC;YACpC,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,SAAiC;IAC1E,MAAM,OAAO,GAIT,EAAE,CAAC;IACP,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,eAAe,CAAC,IAAI,CAAC,kBAAQ,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC;YAC9C,GAAG,EAAE,eAAe;YACpB,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;SAC/B,CAAC,CAAC;QACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAA2C,CAAC;YACxE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;QACnC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,SAAS;QACT,OAAO,CAAC,KAAK,CACX,6CAA6C,EAC7C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CACrB,CAAC;QACF,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AACD;;;EAGE;AACF,gFAAgF","sourcesContent":["import { PaginatedObjectsResponse } from \"@mysten/sui/client\";\nimport {\n AlphaPoolType,\n CetusInvestor,\n NaviInvestor,\n CommonInvestorFields,\n CetusPoolType,\n PoolName,\n PoolType,\n Receipt,\n NaviVoloData,\n Investor,\n BluefinInvestor,\n BucketInvestor,\n SingleAssetPoolNames,\n fetchMultiReceipts,\n ReceiptGQL,\n cetusPoolMap,\n bluefinPoolMap,\n Distributor,\n getConf,\n BluefinPoolType,\n AlphaLendInvestor,\n BluefinLyfInvestor,\n} from \"../../index.js\";\nimport { poolInfo } from \"../../common/maps.js\";\nimport { Decimal } from \"decimal.js\";\nimport { getSuiClient } from \"../client.js\";\nimport { SimpleCache } from \"../../utils/simpleCache.js\";\n\nexport function convertReceiptGQLToReceipt(receipts: ReceiptGQL[]): Receipt[] {\n const res = receipts.map((receipt) => {\n return {\n objectId: receipt.address,\n version: receipt.version,\n digest: receipt.digest,\n content: {\n dataType: \"moveObject\", // Assuming a fixed value as it's not available in ReceiptA\n type: receipt.contents.type.repr,\n hasPublicTransfer: receipt.hasPublicTransfer,\n fields: {\n id: { id: receipt.contents.json.id },\n image_url: receipt.contents.json.image_url,\n last_acc_reward_per_xtoken: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n contents:\n receipt.contents.json.last_acc_reward_per_xtoken.contents.map(\n (item) => ({\n type: \"unknown\", // Assuming fixed value\n fields: {\n value: item.value,\n key: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n name: item.key.name,\n },\n },\n },\n }),\n ),\n },\n },\n locked_balance: receipt.contents.json.locked_balance\n ? {\n type: \"unknown\", // Assuming fixed value\n fields: {\n head: receipt.contents.json.locked_balance.head,\n id: { id: receipt.contents.json.locked_balance.id },\n size: receipt.contents.json.locked_balance.size,\n tail: receipt.contents.json.locked_balance.tail,\n },\n }\n : undefined,\n name: receipt.contents.json.name,\n owner: receipt.contents.json.owner,\n pending_rewards: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n contents: receipt.contents.json.pending_rewards.contents.map(\n (item) => ({\n type: \"unknown\", // Assuming fixed value\n fields: {\n key: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n name: item.key.name,\n },\n },\n value: item.value,\n },\n }),\n ),\n },\n },\n pool_id: receipt.contents.json.pool_id,\n xTokenBalance: receipt.contents.json.xTokenBalance,\n unlocked_xtokens: receipt.contents.json.unlocked_xtokens ?? undefined,\n },\n },\n };\n });\n return res;\n}\n\nconst receiptsCache = new SimpleCache<Receipt[]>(3600000);\nconst receiptsPromiseCache = new SimpleCache<Promise<Receipt[]>>(3600000);\n\nexport async function getMultiReceipts(address: string) {\n try {\n const receiptMap = await fetchMultiReceipts(address);\n for (const pool of Object.keys(poolInfo)) {\n const cacheKey = `getReceipts-${poolInfo[pool].receiptName}-${address}`;\n let receipt: Receipt[] = [];\n if (\n pool === \"ALPHALEND-LOOP-SUI-STSUI\" &&\n receiptMap.has(\"AlphaFi-Navi SUI-STSUI Receipt\")\n ) {\n receipt = convertReceiptGQLToReceipt(\n receiptMap.get(\"AlphaFi-Navi SUI-STSUI Receipt\") as ReceiptGQL[],\n );\n } else if (receiptMap.has(poolInfo[pool].receiptName)) {\n receipt = convertReceiptGQLToReceipt(\n receiptMap.get(poolInfo[pool].receiptName) as ReceiptGQL[],\n );\n }\n receiptsCache.set(cacheKey, receipt);\n }\n } catch (error) {\n console.error(\"Error fetching receipts from graphQL:\", error);\n // get receipts individually\n const pools = Object.keys(poolInfo);\n const receiptPromises = pools.map((pool) => {\n return getReceipts(pool as PoolName, address, true);\n });\n const receipts = await Promise.all(receiptPromises);\n receipts.forEach((receipt, index) => {\n const cacheKey = `getReceipts-${poolInfo[pools[index]].receiptName}-${address}`;\n receiptsCache.set(cacheKey, receipt);\n });\n }\n}\n\nexport async function getReceipts(\n poolName: PoolName,\n address: string,\n ignoreCache: boolean,\n): Promise<Receipt[]> {\n const suiClient = getSuiClient();\n const receiptsCacheKey = `getReceipts-${poolInfo[poolName].receiptName}-${address}`;\n if (ignoreCache) {\n receiptsCache.delete(receiptsCacheKey);\n receiptsPromiseCache.delete(receiptsCacheKey);\n }\n const cachedResponse = receiptsCache.get(receiptsCacheKey);\n if (cachedResponse) {\n return cachedResponse;\n }\n //\n const nfts: Receipt[] = [];\n if (poolInfo[poolName].receiptType == \"\") {\n return nfts;\n }\n let cachedPromise = receiptsPromiseCache.get(receiptsCacheKey);\n if (!cachedPromise) {\n cachedPromise = (async (): Promise<Receipt[]> => {\n // const first_package = getConf().ALPHA_FIRST_PACKAGE_ID;\n let currentCursor: string | null | undefined = null;\n while (true) {\n const paginatedObjects: PaginatedObjectsResponse =\n await suiClient.getOwnedObjects({\n owner: address,\n cursor: currentCursor,\n filter: {\n // StructType: `${first_package}::${module}::Receipt`,\n StructType: poolInfo[poolName].receiptType,\n },\n options: {\n showContent: true,\n },\n });\n // Traverse the current page data and push to coins array\n paginatedObjects.data.forEach((obj) => {\n const o = obj.data as Receipt;\n if (o) {\n if (\n poolInfo[poolName].receiptName === o.content.fields.name ||\n (poolName === \"ALPHALEND-LOOP-SUI-STSUI\" &&\n o.content.fields.name === \"AlphaFi-Navi SUI-STSUI Receipt\")\n ) {\n nfts.push(o);\n }\n }\n });\n // Check if there's a next page\n if (paginatedObjects.hasNextPage && paginatedObjects.nextCursor) {\n currentCursor = paginatedObjects.nextCursor;\n } else {\n // No more pages available\n // console.log(\"No more receipts available.\");\n break;\n }\n }\n receiptsCache.set(receiptsCacheKey, nfts);\n receiptsPromiseCache.delete(receiptsCacheKey);\n return nfts;\n })().catch((error) => {\n receiptsPromiseCache.delete(receiptsCacheKey); // Remove the promise from cache\n throw error;\n });\n // const data = await cachedPromise;\n // console.log(\"received cached data\", data);\n receiptsPromiseCache.set(receiptsCacheKey, cachedPromise);\n }\n return cachedPromise;\n}\n\nconst poolCache = new SimpleCache<PoolType | AlphaPoolType>();\nconst poolPromiseCache = new SimpleCache<Promise<PoolType | AlphaPoolType>>();\n\nexport async function getMultiPool() {\n let pools = Object.keys(poolInfo);\n pools = pools.filter((pool) => {\n return poolInfo[pool].poolId !== \"\";\n });\n const poolIds = pools.map((pool) => {\n return poolInfo[pool].poolId;\n });\n const batchSize = 49; // Set the desired batch size\n\n // Create an array to hold the batches\n const batches: string[][] = [];\n //const batches = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < poolIds.length; i += batchSize) {\n const batchEntries: string[] = poolIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n for (const poolIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: poolIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < poolIdsBatch.length; i = i + 1) {\n const poolData = o[i].data as AlphaPoolType | PoolType;\n const cacheKey = `pool_${poolIdsBatch[i]}`;\n poolCache.set(cacheKey, poolData);\n }\n } catch (error) {\n console.error(`Error getting multiPools - ${error}`);\n }\n }\n}\n\nexport async function getPool(\n poolName: string,\n ignoreCache: boolean,\n): Promise<PoolType | AlphaPoolType> {\n const suiClient = getSuiClient();\n const cacheKey = `pool_${poolInfo[poolName].poolId}`;\n\n if (ignoreCache) {\n poolCache.delete(cacheKey);\n poolPromiseCache.delete(cacheKey);\n }\n\n // Check if the pool is already in the cache\n const cachedPool = poolCache.get(cacheKey);\n if (cachedPool) {\n return cachedPool;\n }\n\n // Check if there is already a promise in the cache\n let poolPromise = poolPromiseCache.get(cacheKey);\n if (poolPromise) {\n return poolPromise;\n }\n // If not, create a new promise and cache it\n poolPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: poolInfo[poolName].poolId,\n options: {\n showContent: true,\n },\n });\n\n const poolData =\n poolName === \"ALPHA\" ? (o.data as AlphaPoolType) : (o.data as PoolType);\n\n // Cache the pool object\n poolCache.set(cacheKey, poolData);\n return poolData;\n } catch (err) {\n console.error(`Error in getPool; poolName => ${poolName}`);\n throw err;\n } finally {\n // Remove the promise from the cache after it resolves\n poolPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n poolPromiseCache.set(cacheKey, poolPromise);\n return poolPromise;\n}\n\nconst parentPoolCache = new SimpleCache<CetusPoolType | BluefinPoolType>();\nconst parentPoolPromiseCache = new SimpleCache<\n Promise<CetusPoolType | BluefinPoolType>\n>();\n\nexport async function getMultiParentPool() {\n let pools = Object.keys(poolInfo);\n pools = pools.filter((pool) => {\n return poolInfo[pool].parentPoolId !== \"\";\n });\n const parentPoolIds = pools.map((pool) => {\n return poolInfo[pool].parentPoolId;\n });\n const poolsSet = new Set(parentPoolIds);\n const poolIds = [...poolsSet];\n const batchSize = 49;\n // Create an array to hold the batches\n const batches: string[][] = [];\n //const batches = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < poolIds.length; i += batchSize) {\n const batchEntries: string[] = poolIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n\n for (const parentPoolIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: parentPoolIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < parentPoolIdsBatch.length; i = i + 1) {\n const parentPoolData = o[i].data as CetusPoolType;\n const cacheKey = `parentPool_${parentPoolIdsBatch[i]}`;\n parentPoolCache.set(cacheKey, parentPoolData);\n }\n } catch (error) {\n console.error(`Error getting multiParentPools - ${error}`);\n }\n }\n}\n\nexport async function getParentPool(\n poolName: string,\n ignoreCache: boolean,\n): Promise<CetusPoolType | BluefinPoolType> {\n const suiClient = getSuiClient();\n const cacheKey = `parentPool_${poolInfo[poolName].parentPoolId}`;\n if (ignoreCache) {\n parentPoolCache.delete(cacheKey);\n parentPoolPromiseCache.delete(cacheKey);\n }\n\n // Check if the pool is already in the cache\n const cachedPool = parentPoolCache.get(cacheKey);\n if (cachedPool) {\n return cachedPool;\n }\n\n // Check if there is already a promise in the cache\n let parentPoolPromise = parentPoolPromiseCache.get(cacheKey);\n if (parentPoolPromise) {\n return parentPoolPromise;\n }\n // If not, create a new promise and cache it\n parentPoolPromise = (async () => {\n try {\n const id = poolInfo[poolName]\n ? poolInfo[poolName].parentPoolId\n : cetusPoolMap[poolName]\n ? cetusPoolMap[poolName]\n : bluefinPoolMap[poolName];\n const o = await suiClient.getObject({\n id: id,\n options: {\n showContent: true,\n },\n });\n const parentPool = o.data as CetusPoolType | BluefinPoolType;\n\n // Cache the pool object\n parentPoolCache.set(cacheKey, parentPool);\n return parentPool;\n } catch (err) {\n console.error(`getParentPool failed for poolName: ${poolName}`);\n throw err;\n } finally {\n // Remove the promise from the cache after it resolves\n parentPoolPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n parentPoolPromiseCache.set(cacheKey, parentPoolPromise);\n return parentPoolPromise;\n}\n\nconst cetusPoolCache = new SimpleCache<CetusPoolType | BluefinPoolType>();\nconst cetusPoolPromiseCache = new SimpleCache<\n Promise<CetusPoolType | BluefinPoolType | undefined>\n>();\n\nexport async function getMultiCetusPool() {\n let pools = Object.keys(cetusPoolMap);\n pools = pools.filter((pool) => {\n return cetusPoolMap[pool] !== \"\";\n });\n const poolIds = pools.map((pool) => {\n return cetusPoolMap[pool];\n });\n const batchSize = 49;\n // Create an array to hold the batches\n const batches: string[][] = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < poolIds.length; i += batchSize) {\n const batchEntries: string[] = poolIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n for (const cetusPoolIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: cetusPoolIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < pools.length; i = i + 1) {\n const poolData = o[i].data as CetusPoolType;\n const cacheKey = `cetusPool_${cetusPoolMap[pools[i]]}`;\n cetusPoolCache.set(cacheKey, poolData);\n }\n } catch (e) {\n console.error(`Error getting multiCetusPools`, e);\n }\n }\n}\n\nexport async function getCetusPool(\n poolName: string,\n ignoreCache: boolean,\n): Promise<CetusPoolType | BluefinPoolType | undefined> {\n const suiClient = getSuiClient();\n const cacheKey = `cetusPool_${cetusPoolMap[poolName]}`;\n if (ignoreCache) {\n cetusPoolCache.delete(cacheKey);\n cetusPoolPromiseCache.delete(cacheKey);\n }\n\n // Check if the pool is already in the cache\n const cachedPool = cetusPoolCache.get(cacheKey);\n if (cachedPool) {\n return cachedPool;\n }\n\n // Check if there is already a promise in the cache\n let cetusPoolPromise = cetusPoolPromiseCache.get(cacheKey);\n if (cetusPoolPromise) {\n return cetusPoolPromise;\n }\n // If not, create a new promise and cache it\n cetusPoolPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: cetusPoolMap[poolName],\n options: {\n showContent: true,\n },\n });\n const cetusPool = o.data as CetusPoolType;\n\n // Cache the pool object\n cetusPoolCache.set(cacheKey, cetusPool);\n return cetusPool;\n } catch {\n console.error(`getCetusPool failed for poolName: ${poolName}`);\n return undefined;\n } finally {\n // Remove the promise from the cache after it resolves\n cetusPoolPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n cetusPoolPromiseCache.set(cacheKey, cetusPoolPromise);\n return cetusPoolPromise;\n}\n\nconst investorCache = new SimpleCache<Investor>();\nconst investorPromiseCache = new SimpleCache<Promise<Investor>>();\n\nexport async function getMultiInvestor() {\n let pools = Object.keys(poolInfo);\n pools = pools.filter((pool) => {\n return poolInfo[pool].investorId !== \"\";\n });\n const investorIds = pools.map((pool) => {\n return poolInfo[pool].investorId;\n });\n const batchSize = 49;\n // Create an array to hold the batches\n const batches: string[][] = [];\n //const batches = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < investorIds.length; i += batchSize) {\n const batchEntries: string[] = investorIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n for (const investorIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: investorIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < investorIdsBatch.length; i = i + 1) {\n const investorData = o[i].data as Investor;\n const cacheKey = `investor_${investorIdsBatch[i]}`;\n investorCache.set(cacheKey, investorData);\n }\n } catch (error) {\n console.error(`Error getting multiInvestor - ${error}`);\n }\n }\n}\n\nexport async function getInvestor(\n poolName: PoolName,\n ignoreCache: boolean,\n): Promise<Investor> {\n const suiClient = getSuiClient();\n const cacheKey = `investor_${poolInfo[poolName].investorId}`;\n if (ignoreCache) {\n investorCache.delete(cacheKey);\n investorPromiseCache.delete(cacheKey);\n }\n // Check if the investor is already in the cache\n const cachedInvestor = investorCache.get(cacheKey);\n if (cachedInvestor) {\n return cachedInvestor;\n }\n\n // Check if there is already a promise in the cache\n let cetusInvestorPromise = investorPromiseCache.get(cacheKey);\n if (cetusInvestorPromise) {\n return cetusInvestorPromise;\n }\n // If not, create a new promise and cache it\n cetusInvestorPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: poolInfo[poolName].investorId,\n options: {\n showContent: true,\n },\n });\n let cetusInvestor: Investor;\n if (poolInfo[poolName].parentProtocolName == \"NAVI\") {\n cetusInvestor = o.data as NaviInvestor & CommonInvestorFields;\n } else if (poolInfo[poolName].parentProtocolName == \"BUCKET\") {\n cetusInvestor = o.data as BucketInvestor & CommonInvestorFields;\n } else if (poolInfo[poolName].parentProtocolName == \"BLUEFIN\") {\n if (poolInfo[poolName].strategyType === \"LEVERAGE-YIELD-FARMING\") {\n const pool = (await getPool(poolName, ignoreCache)) as PoolType;\n let lyfInvestorTemp = pool.content.fields.investor as any;\n let lyfInvestor = {\n content: {\n fields: {\n ...lyfInvestorTemp.fields,\n },\n },\n } as BluefinLyfInvestor & CommonInvestorFields;\n cetusInvestor = lyfInvestor;\n } else {\n cetusInvestor = o.data as BluefinInvestor & CommonInvestorFields;\n }\n } else if (poolInfo[poolName].parentProtocolName == \"ALPHALEND\") {\n cetusInvestor = o.data as AlphaLendInvestor & CommonInvestorFields;\n } else if (poolInfo[poolName].parentProtocolName == \"CETUS\") {\n cetusInvestor = o.data as CetusInvestor & CommonInvestorFields;\n } else {\n throw new Error(\n `Unexpected parent protocol: ${poolInfo[poolName].parentProtocolName}`,\n );\n }\n\n // Cache the investor object\n investorCache.set(cacheKey, cetusInvestor);\n return cetusInvestor;\n } catch (err) {\n console.error(`getInvestor failed for pool: ${poolName}`);\n throw err;\n } finally {\n // Remove the promise from the cache after it resolves\n investorPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n investorPromiseCache.set(cacheKey, cetusInvestorPromise);\n return cetusInvestorPromise;\n}\n\nconst distributorCache = new SimpleCache<Distributor>();\nconst distributorPromiseCache = new SimpleCache<\n Promise<Distributor | undefined>\n>();\n\nexport async function getDistributor(\n ignoreCache: boolean,\n): Promise<Distributor | undefined> {\n const suiClient = getSuiClient();\n const cacheKey = `distributor_${getConf().ALPHA_DISTRIBUTOR}`;\n if (ignoreCache) {\n distributorCache.delete(cacheKey);\n distributorPromiseCache.delete(cacheKey);\n }\n // Check if the distributor is already in the cache\n const cachedDistributor = distributorCache.get(cacheKey);\n if (cachedDistributor) {\n return cachedDistributor;\n }\n\n // Check if there is already a promise in the cache\n let distributorPromise = distributorPromiseCache.get(cacheKey);\n if (distributorPromise) {\n return distributorPromise;\n }\n\n // If not, create a new promise and cache it\n distributorPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: getConf().ALPHA_DISTRIBUTOR,\n options: {\n showContent: true,\n },\n });\n const distributor = o.data as Distributor;\n\n // Cache the distributor object\n distributorCache.set(cacheKey, distributor);\n return distributor;\n } catch {\n console.error(`getDistributor failed`);\n return undefined;\n } finally {\n // Remove the promise from the cache after it resolves\n distributorPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n distributorPromiseCache.set(cacheKey, distributorPromise);\n return distributorPromise;\n}\n\nexport async function getPoolExchangeRate(\n poolName: PoolName,\n ignoreCache: boolean,\n): Promise<Decimal> {\n let pool: PoolType | AlphaPoolType;\n let xTokenSupply = new Decimal(0);\n let tokensInvested = new Decimal(0);\n try {\n if (poolName.toString().includes(\"ALPHALEND-SLUSH\")) {\n const o = await getSuiClient().getObject({\n id: poolInfo[poolName].poolId,\n options: {\n showContent: true,\n },\n });\n if (!o.data) {\n throw new Error(`couldnt fetch pool object for pool: ${poolName}`);\n }\n tokensInvested = new Decimal(\n (o.data.content as any).fields.tokensInvested,\n );\n xTokenSupply = new Decimal(\n (o.data.content as any)?.fields.xTokenSupply.fields.value,\n );\n } else {\n pool = await getPool(poolName, ignoreCache);\n if (\n poolName.toString().includes(\"-FUNGIBLE-\") &&\n \"treasury_cap\" in pool.content.fields\n ) {\n xTokenSupply = new Decimal(\n pool.content.fields.treasury_cap.fields.total_supply.fields.value,\n );\n } else {\n xTokenSupply = new Decimal(pool.content.fields.xTokenSupply);\n }\n tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n if (poolName == \"ALPHA\") {\n tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n } else if (poolInfo[poolName].parentProtocolName == \"CETUS\") {\n const investor = (await getInvestor(\n poolName,\n ignoreCache,\n )) as CetusInvestor & CommonInvestorFields;\n if (!investor) {\n throw new Error(\n `couldnt fetch investor object for pool: ${poolName}`,\n );\n }\n tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n }\n }\n\n // Check for division by zero\n if (xTokenSupply.eq(0)) {\n console.error(\"Division by zero error: tokensInvested is zero.\");\n return new Decimal(0);\n }\n const poolExchangeRate = tokensInvested.div(xTokenSupply);\n return poolExchangeRate;\n } catch (err) {\n console.log(\n `getPoolExchangeRate failed for poolName: ${poolName}, with error ${err}`,\n );\n throw err;\n }\n}\n\nconst naviVoloExchangeRateCache = new SimpleCache<NaviVoloData>();\nconst naviVoloExchangeRatePromiseCache = new SimpleCache<\n Promise<NaviVoloData>\n>();\n\nexport async function fetchVoloExchangeRate(\n ignoreCache: boolean,\n): Promise<NaviVoloData> {\n const apiUrl = \"https://open-api.naviprotocol.io/api/volo/stats\";\n let NaviVoloDetails: NaviVoloData;\n if (ignoreCache) {\n naviVoloExchangeRateCache.clear();\n naviVoloExchangeRatePromiseCache.delete(apiUrl);\n }\n\n const cachedResponse = naviVoloExchangeRateCache.get(apiUrl);\n if (cachedResponse) {\n NaviVoloDetails = cachedResponse;\n } else {\n const default_volo_data: NaviVoloData = {\n data: {\n operatorBalance: \"\",\n collectableFee: \"\",\n pendingStakes: \"\",\n poolTotalRewards: \"0\",\n unstakeTicketSupply: \"\",\n totalStaked: \"\",\n activeStake: \"\",\n calcTotalRewards: \"\",\n currentEpoch: \"\",\n validators: {},\n exchangeRate: (1 / 0.973).toString(),\n totalSupply: \"\",\n apy: \"\",\n sortedValidators: [\"\"],\n maxInstantUnstake: \"\",\n maxNoFeeUnstake: \"\",\n },\n code: 0,\n };\n try {\n let cachedPromise = naviVoloExchangeRatePromiseCache.get(apiUrl);\n\n if (!cachedPromise) {\n cachedPromise = fetch(apiUrl)\n .then(async (response) => {\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n const data = (await response.json()) as NaviVoloData; // Parse the JSON response\n naviVoloExchangeRateCache.set(apiUrl, data); // Cache the response\n naviVoloExchangeRatePromiseCache.delete(apiUrl); // Remove the promise from the cache\n return data;\n })\n .catch((error) => {\n naviVoloExchangeRatePromiseCache.delete(apiUrl); // Ensure the promise is removed on error\n throw error;\n });\n naviVoloExchangeRatePromiseCache.set(apiUrl, cachedPromise);\n NaviVoloDetails = await cachedPromise;\n return cachedPromise;\n } else {\n NaviVoloDetails = default_volo_data;\n return Promise.resolve(default_volo_data);\n }\n } catch (error) {\n console.log(\"error in api\", error);\n\n NaviVoloDetails = default_volo_data;\n return Promise.resolve(default_volo_data);\n }\n }\n\n return NaviVoloDetails;\n}\n\nexport async function multiGetNaviInvestor(poolNames: SingleAssetPoolNames[]) {\n const results: {\n [poolName in SingleAssetPoolNames]?:\n | (NaviInvestor & CommonInvestorFields)\n | undefined;\n } = {};\n const poolInvestorIds: string[] = [];\n\n for (const poolName of poolNames) {\n poolInvestorIds.push(poolInfo[poolName].investorId);\n }\n try {\n const suiClient = getSuiClient();\n const objects = await suiClient.multiGetObjects({\n ids: poolInvestorIds,\n options: { showContent: true },\n });\n for (let i = 0; i < objects.length; i++) {\n const investor = objects[i].data as NaviInvestor & CommonInvestorFields;\n results[poolNames[i]] = investor;\n }\n return results;\n } catch (err) {\n //improve\n console.error(\n \"multiGetNaviInvestor failed for poolNames: \",\n poolNames.join(\", \"),\n );\n throw err;\n }\n}\n/*\nfor the missing pools, add a promise, each of those promises waits for there respective object from a map, that map is populated all at once, \nproblem with concurrency\n*/\n// ask how to deal with this kind of probem with high concurrency anf throughput\n"]}
|
|
1
|
+
{"version":3,"file":"getReceipts.js","sourceRoot":"","sources":["../../../../src/sui-sdk/functions/getReceipts.ts"],"names":[],"mappings":"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","sourcesContent":["import { PaginatedObjectsResponse } from \"@mysten/sui/client\";\nimport {\n AlphaPoolType,\n CetusInvestor,\n NaviInvestor,\n CommonInvestorFields,\n CetusPoolType,\n PoolName,\n PoolType,\n Receipt,\n NaviVoloData,\n Investor,\n BluefinInvestor,\n BucketInvestor,\n SingleAssetPoolNames,\n fetchMultiReceipts,\n ReceiptGQL,\n cetusPoolMap,\n bluefinPoolMap,\n Distributor,\n getConf,\n BluefinPoolType,\n AlphaLendInvestor,\n BluefinLyfInvestor,\n} from \"../../index.js\";\nimport { poolInfo } from \"../../common/maps.js\";\nimport { Decimal } from \"decimal.js\";\nimport { getSuiClient } from \"../client.js\";\nimport { SimpleCache } from \"../../utils/simpleCache.js\";\n\n/** @deprecated */\nexport function convertReceiptGQLToReceipt(receipts: ReceiptGQL[]): Receipt[] {\n const res = receipts.map((receipt) => {\n return {\n objectId: receipt.address,\n version: receipt.version,\n digest: receipt.digest,\n content: {\n dataType: \"moveObject\", // Assuming a fixed value as it's not available in ReceiptA\n type: receipt.contents.type.repr,\n hasPublicTransfer: receipt.hasPublicTransfer,\n fields: {\n id: { id: receipt.contents.json.id },\n image_url: receipt.contents.json.image_url,\n last_acc_reward_per_xtoken: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n contents:\n receipt.contents.json.last_acc_reward_per_xtoken.contents.map(\n (item) => ({\n type: \"unknown\", // Assuming fixed value\n fields: {\n value: item.value,\n key: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n name: item.key.name,\n },\n },\n },\n }),\n ),\n },\n },\n locked_balance: receipt.contents.json.locked_balance\n ? {\n type: \"unknown\", // Assuming fixed value\n fields: {\n head: receipt.contents.json.locked_balance.head,\n id: { id: receipt.contents.json.locked_balance.id },\n size: receipt.contents.json.locked_balance.size,\n tail: receipt.contents.json.locked_balance.tail,\n },\n }\n : undefined,\n name: receipt.contents.json.name,\n owner: receipt.contents.json.owner,\n pending_rewards: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n contents: receipt.contents.json.pending_rewards.contents.map(\n (item) => ({\n type: \"unknown\", // Assuming fixed value\n fields: {\n key: {\n type: \"unknown\", // Assuming fixed value\n fields: {\n name: item.key.name,\n },\n },\n value: item.value,\n },\n }),\n ),\n },\n },\n pool_id: receipt.contents.json.pool_id,\n xTokenBalance: receipt.contents.json.xTokenBalance,\n unlocked_xtokens: receipt.contents.json.unlocked_xtokens ?? undefined,\n },\n },\n };\n });\n return res;\n}\n\nconst receiptsCache = new SimpleCache<Receipt[]>(3600000);\nconst receiptsPromiseCache = new SimpleCache<Promise<Receipt[]>>(3600000);\n\n/** @deprecated */\nexport async function getMultiReceipts(address: string) {\n try {\n const receiptMap = await fetchMultiReceipts(address);\n for (const pool of Object.keys(poolInfo)) {\n const cacheKey = `getReceipts-${poolInfo[pool].receiptName}-${address}`;\n let receipt: Receipt[] = [];\n if (\n pool === \"ALPHALEND-LOOP-SUI-STSUI\" &&\n receiptMap.has(\"AlphaFi-Navi SUI-STSUI Receipt\")\n ) {\n receipt = convertReceiptGQLToReceipt(\n receiptMap.get(\"AlphaFi-Navi SUI-STSUI Receipt\") as ReceiptGQL[],\n );\n } else if (receiptMap.has(poolInfo[pool].receiptName)) {\n receipt = convertReceiptGQLToReceipt(\n receiptMap.get(poolInfo[pool].receiptName) as ReceiptGQL[],\n );\n }\n receiptsCache.set(cacheKey, receipt);\n }\n } catch (error) {\n console.error(\"Error fetching receipts from graphQL:\", error);\n // get receipts individually\n const pools = Object.keys(poolInfo);\n const receiptPromises = pools.map((pool) => {\n return getReceipts(pool as PoolName, address, true);\n });\n const receipts = await Promise.all(receiptPromises);\n receipts.forEach((receipt, index) => {\n const cacheKey = `getReceipts-${poolInfo[pools[index]].receiptName}-${address}`;\n receiptsCache.set(cacheKey, receipt);\n });\n }\n}\n\n/** @deprecated */\nexport async function getReceipts(\n poolName: PoolName,\n address: string,\n ignoreCache: boolean,\n): Promise<Receipt[]> {\n const suiClient = getSuiClient();\n const receiptsCacheKey = `getReceipts-${poolInfo[poolName].receiptName}-${address}`;\n if (ignoreCache) {\n receiptsCache.delete(receiptsCacheKey);\n receiptsPromiseCache.delete(receiptsCacheKey);\n }\n const cachedResponse = receiptsCache.get(receiptsCacheKey);\n if (cachedResponse) {\n return cachedResponse;\n }\n //\n const nfts: Receipt[] = [];\n if (poolInfo[poolName].receiptType == \"\") {\n return nfts;\n }\n let cachedPromise = receiptsPromiseCache.get(receiptsCacheKey);\n if (!cachedPromise) {\n cachedPromise = (async (): Promise<Receipt[]> => {\n // const first_package = getConf().ALPHA_FIRST_PACKAGE_ID;\n let currentCursor: string | null | undefined = null;\n while (true) {\n const paginatedObjects: PaginatedObjectsResponse =\n await suiClient.getOwnedObjects({\n owner: address,\n cursor: currentCursor,\n filter: {\n // StructType: `${first_package}::${module}::Receipt`,\n StructType: poolInfo[poolName].receiptType,\n },\n options: {\n showContent: true,\n },\n });\n // Traverse the current page data and push to coins array\n paginatedObjects.data.forEach((obj) => {\n const o = obj.data as Receipt;\n if (o) {\n if (\n poolInfo[poolName].receiptName === o.content.fields.name ||\n (poolName === \"ALPHALEND-LOOP-SUI-STSUI\" &&\n o.content.fields.name === \"AlphaFi-Navi SUI-STSUI Receipt\")\n ) {\n nfts.push(o);\n }\n }\n });\n // Check if there's a next page\n if (paginatedObjects.hasNextPage && paginatedObjects.nextCursor) {\n currentCursor = paginatedObjects.nextCursor;\n } else {\n // No more pages available\n // console.log(\"No more receipts available.\");\n break;\n }\n }\n receiptsCache.set(receiptsCacheKey, nfts);\n receiptsPromiseCache.delete(receiptsCacheKey);\n return nfts;\n })().catch((error) => {\n receiptsPromiseCache.delete(receiptsCacheKey); // Remove the promise from cache\n throw error;\n });\n // const data = await cachedPromise;\n // console.log(\"received cached data\", data);\n receiptsPromiseCache.set(receiptsCacheKey, cachedPromise);\n }\n return cachedPromise;\n}\n\nconst poolCache = new SimpleCache<PoolType | AlphaPoolType>();\nconst poolPromiseCache = new SimpleCache<Promise<PoolType | AlphaPoolType>>();\n\n/** @deprecated */\nexport async function getMultiPool() {\n let pools = Object.keys(poolInfo);\n pools = pools.filter((pool) => {\n return poolInfo[pool].poolId !== \"\";\n });\n const poolIds = pools.map((pool) => {\n return poolInfo[pool].poolId;\n });\n const batchSize = 49; // Set the desired batch size\n\n // Create an array to hold the batches\n const batches: string[][] = [];\n //const batches = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < poolIds.length; i += batchSize) {\n const batchEntries: string[] = poolIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n for (const poolIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: poolIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < poolIdsBatch.length; i = i + 1) {\n const poolData = o[i].data as AlphaPoolType | PoolType;\n const cacheKey = `pool_${poolIdsBatch[i]}`;\n poolCache.set(cacheKey, poolData);\n }\n } catch (error) {\n console.error(`Error getting multiPools - ${error}`);\n }\n }\n}\n\n/** @deprecated */\nexport async function getPool(\n poolName: string,\n ignoreCache: boolean,\n): Promise<PoolType | AlphaPoolType> {\n const suiClient = getSuiClient();\n const cacheKey = `pool_${poolInfo[poolName].poolId}`;\n\n if (ignoreCache) {\n poolCache.delete(cacheKey);\n poolPromiseCache.delete(cacheKey);\n }\n\n // Check if the pool is already in the cache\n const cachedPool = poolCache.get(cacheKey);\n if (cachedPool) {\n return cachedPool;\n }\n\n // Check if there is already a promise in the cache\n let poolPromise = poolPromiseCache.get(cacheKey);\n if (poolPromise) {\n return poolPromise;\n }\n // If not, create a new promise and cache it\n poolPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: poolInfo[poolName].poolId,\n options: {\n showContent: true,\n },\n });\n\n const poolData =\n poolName === \"ALPHA\" ? (o.data as AlphaPoolType) : (o.data as PoolType);\n\n // Cache the pool object\n poolCache.set(cacheKey, poolData);\n return poolData;\n } catch (err) {\n console.error(`Error in getPool; poolName => ${poolName}`);\n throw err;\n } finally {\n // Remove the promise from the cache after it resolves\n poolPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n poolPromiseCache.set(cacheKey, poolPromise);\n return poolPromise;\n}\n\nconst parentPoolCache = new SimpleCache<CetusPoolType | BluefinPoolType>();\nconst parentPoolPromiseCache = new SimpleCache<\n Promise<CetusPoolType | BluefinPoolType>\n>();\n\n/** @deprecated */\nexport async function getMultiParentPool() {\n let pools = Object.keys(poolInfo);\n pools = pools.filter((pool) => {\n return poolInfo[pool].parentPoolId !== \"\";\n });\n const parentPoolIds = pools.map((pool) => {\n return poolInfo[pool].parentPoolId;\n });\n const poolsSet = new Set(parentPoolIds);\n const poolIds = [...poolsSet];\n const batchSize = 49;\n // Create an array to hold the batches\n const batches: string[][] = [];\n //const batches = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < poolIds.length; i += batchSize) {\n const batchEntries: string[] = poolIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n\n for (const parentPoolIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: parentPoolIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < parentPoolIdsBatch.length; i = i + 1) {\n const parentPoolData = o[i].data as CetusPoolType;\n const cacheKey = `parentPool_${parentPoolIdsBatch[i]}`;\n parentPoolCache.set(cacheKey, parentPoolData);\n }\n } catch (error) {\n console.error(`Error getting multiParentPools - ${error}`);\n }\n }\n}\n\n/** @deprecated */\nexport async function getParentPool(\n poolName: string,\n ignoreCache: boolean,\n): Promise<CetusPoolType | BluefinPoolType> {\n const suiClient = getSuiClient();\n const cacheKey = `parentPool_${poolInfo[poolName].parentPoolId}`;\n if (ignoreCache) {\n parentPoolCache.delete(cacheKey);\n parentPoolPromiseCache.delete(cacheKey);\n }\n\n // Check if the pool is already in the cache\n const cachedPool = parentPoolCache.get(cacheKey);\n if (cachedPool) {\n return cachedPool;\n }\n\n // Check if there is already a promise in the cache\n let parentPoolPromise = parentPoolPromiseCache.get(cacheKey);\n if (parentPoolPromise) {\n return parentPoolPromise;\n }\n // If not, create a new promise and cache it\n parentPoolPromise = (async () => {\n try {\n const id = poolInfo[poolName]\n ? poolInfo[poolName].parentPoolId\n : cetusPoolMap[poolName]\n ? cetusPoolMap[poolName]\n : bluefinPoolMap[poolName];\n const o = await suiClient.getObject({\n id: id,\n options: {\n showContent: true,\n },\n });\n const parentPool = o.data as CetusPoolType | BluefinPoolType;\n\n // Cache the pool object\n parentPoolCache.set(cacheKey, parentPool);\n return parentPool;\n } catch (err) {\n console.error(`getParentPool failed for poolName: ${poolName}`);\n throw err;\n } finally {\n // Remove the promise from the cache after it resolves\n parentPoolPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n parentPoolPromiseCache.set(cacheKey, parentPoolPromise);\n return parentPoolPromise;\n}\n\nconst cetusPoolCache = new SimpleCache<CetusPoolType | BluefinPoolType>();\nconst cetusPoolPromiseCache = new SimpleCache<\n Promise<CetusPoolType | BluefinPoolType | undefined>\n>();\n\n/** @deprecated */\nexport async function getMultiCetusPool() {\n let pools = Object.keys(cetusPoolMap);\n pools = pools.filter((pool) => {\n return cetusPoolMap[pool] !== \"\";\n });\n const poolIds = pools.map((pool) => {\n return cetusPoolMap[pool];\n });\n const batchSize = 49;\n // Create an array to hold the batches\n const batches: string[][] = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < poolIds.length; i += batchSize) {\n const batchEntries: string[] = poolIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n for (const cetusPoolIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: cetusPoolIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < pools.length; i = i + 1) {\n const poolData = o[i].data as CetusPoolType;\n const cacheKey = `cetusPool_${cetusPoolMap[pools[i]]}`;\n cetusPoolCache.set(cacheKey, poolData);\n }\n } catch (e) {\n console.error(`Error getting multiCetusPools`, e);\n }\n }\n}\n\n/** @deprecated */\nexport async function getCetusPool(\n poolName: string,\n ignoreCache: boolean,\n): Promise<CetusPoolType | BluefinPoolType | undefined> {\n const suiClient = getSuiClient();\n const cacheKey = `cetusPool_${cetusPoolMap[poolName]}`;\n if (ignoreCache) {\n cetusPoolCache.delete(cacheKey);\n cetusPoolPromiseCache.delete(cacheKey);\n }\n\n // Check if the pool is already in the cache\n const cachedPool = cetusPoolCache.get(cacheKey);\n if (cachedPool) {\n return cachedPool;\n }\n\n // Check if there is already a promise in the cache\n let cetusPoolPromise = cetusPoolPromiseCache.get(cacheKey);\n if (cetusPoolPromise) {\n return cetusPoolPromise;\n }\n // If not, create a new promise and cache it\n cetusPoolPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: cetusPoolMap[poolName],\n options: {\n showContent: true,\n },\n });\n const cetusPool = o.data as CetusPoolType;\n\n // Cache the pool object\n cetusPoolCache.set(cacheKey, cetusPool);\n return cetusPool;\n } catch {\n console.error(`getCetusPool failed for poolName: ${poolName}`);\n return undefined;\n } finally {\n // Remove the promise from the cache after it resolves\n cetusPoolPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n cetusPoolPromiseCache.set(cacheKey, cetusPoolPromise);\n return cetusPoolPromise;\n}\n\nconst investorCache = new SimpleCache<Investor>();\nconst investorPromiseCache = new SimpleCache<Promise<Investor>>();\n\n/** @deprecated */\nexport async function getMultiInvestor() {\n let pools = Object.keys(poolInfo);\n pools = pools.filter((pool) => {\n return poolInfo[pool].investorId !== \"\";\n });\n const investorIds = pools.map((pool) => {\n return poolInfo[pool].investorId;\n });\n const batchSize = 49;\n // Create an array to hold the batches\n const batches: string[][] = [];\n //const batches = [];\n // Loop through the entries array and create batches\n for (let i = 0; i < investorIds.length; i += batchSize) {\n const batchEntries: string[] = investorIds.slice(i, i + batchSize);\n batches.push(batchEntries); // Convert to object before pushing\n }\n for (const investorIdsBatch of batches) {\n try {\n const o = await getSuiClient().multiGetObjects({\n ids: investorIdsBatch,\n options: {\n showContent: true,\n },\n });\n for (let i = 0; i < investorIdsBatch.length; i = i + 1) {\n const investorData = o[i].data as Investor;\n const cacheKey = `investor_${investorIdsBatch[i]}`;\n investorCache.set(cacheKey, investorData);\n }\n } catch (error) {\n console.error(`Error getting multiInvestor - ${error}`);\n }\n }\n}\n\n/** @deprecated */\nexport async function getInvestor(\n poolName: PoolName,\n ignoreCache: boolean,\n): Promise<Investor> {\n const suiClient = getSuiClient();\n const cacheKey = `investor_${poolInfo[poolName].investorId}`;\n if (ignoreCache) {\n investorCache.delete(cacheKey);\n investorPromiseCache.delete(cacheKey);\n }\n // Check if the investor is already in the cache\n const cachedInvestor = investorCache.get(cacheKey);\n if (cachedInvestor) {\n return cachedInvestor;\n }\n\n // Check if there is already a promise in the cache\n let cetusInvestorPromise = investorPromiseCache.get(cacheKey);\n if (cetusInvestorPromise) {\n return cetusInvestorPromise;\n }\n // If not, create a new promise and cache it\n cetusInvestorPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: poolInfo[poolName].investorId,\n options: {\n showContent: true,\n },\n });\n let cetusInvestor: Investor;\n if (poolInfo[poolName].parentProtocolName == \"NAVI\") {\n cetusInvestor = o.data as NaviInvestor & CommonInvestorFields;\n } else if (poolInfo[poolName].parentProtocolName == \"BUCKET\") {\n cetusInvestor = o.data as BucketInvestor & CommonInvestorFields;\n } else if (poolInfo[poolName].parentProtocolName == \"BLUEFIN\") {\n if (poolInfo[poolName].strategyType === \"LEVERAGE-YIELD-FARMING\") {\n const pool = (await getPool(poolName, ignoreCache)) as PoolType;\n let lyfInvestorTemp = pool.content.fields.investor as any;\n let lyfInvestor = {\n content: {\n fields: {\n ...lyfInvestorTemp.fields,\n },\n },\n } as BluefinLyfInvestor & CommonInvestorFields;\n cetusInvestor = lyfInvestor;\n } else {\n cetusInvestor = o.data as BluefinInvestor & CommonInvestorFields;\n }\n } else if (poolInfo[poolName].parentProtocolName == \"ALPHALEND\") {\n cetusInvestor = o.data as AlphaLendInvestor & CommonInvestorFields;\n } else if (poolInfo[poolName].parentProtocolName == \"CETUS\") {\n cetusInvestor = o.data as CetusInvestor & CommonInvestorFields;\n } else {\n throw new Error(\n `Unexpected parent protocol: ${poolInfo[poolName].parentProtocolName}`,\n );\n }\n\n // Cache the investor object\n investorCache.set(cacheKey, cetusInvestor);\n return cetusInvestor;\n } catch (err) {\n console.error(`getInvestor failed for pool: ${poolName}`);\n throw err;\n } finally {\n // Remove the promise from the cache after it resolves\n investorPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n investorPromiseCache.set(cacheKey, cetusInvestorPromise);\n return cetusInvestorPromise;\n}\n\nconst distributorCache = new SimpleCache<Distributor>();\nconst distributorPromiseCache = new SimpleCache<\n Promise<Distributor | undefined>\n>();\n\n/** @deprecated */\nexport async function getDistributor(\n ignoreCache: boolean,\n): Promise<Distributor | undefined> {\n const suiClient = getSuiClient();\n const cacheKey = `distributor_${getConf().ALPHA_DISTRIBUTOR}`;\n if (ignoreCache) {\n distributorCache.delete(cacheKey);\n distributorPromiseCache.delete(cacheKey);\n }\n // Check if the distributor is already in the cache\n const cachedDistributor = distributorCache.get(cacheKey);\n if (cachedDistributor) {\n return cachedDistributor;\n }\n\n // Check if there is already a promise in the cache\n let distributorPromise = distributorPromiseCache.get(cacheKey);\n if (distributorPromise) {\n return distributorPromise;\n }\n\n // If not, create a new promise and cache it\n distributorPromise = (async () => {\n try {\n const o = await suiClient.getObject({\n id: getConf().ALPHA_DISTRIBUTOR,\n options: {\n showContent: true,\n },\n });\n const distributor = o.data as Distributor;\n\n // Cache the distributor object\n distributorCache.set(cacheKey, distributor);\n return distributor;\n } catch {\n console.error(`getDistributor failed`);\n return undefined;\n } finally {\n // Remove the promise from the cache after it resolves\n distributorPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n distributorPromiseCache.set(cacheKey, distributorPromise);\n return distributorPromise;\n}\n\n/** @deprecated */\nexport async function getPoolExchangeRate(\n poolName: PoolName,\n ignoreCache: boolean,\n): Promise<Decimal> {\n let pool: PoolType | AlphaPoolType;\n let xTokenSupply = new Decimal(0);\n let tokensInvested = new Decimal(0);\n try {\n if (poolName.toString().includes(\"ALPHALEND-SLUSH\")) {\n const o = await getSuiClient().getObject({\n id: poolInfo[poolName].poolId,\n options: {\n showContent: true,\n },\n });\n if (!o.data) {\n throw new Error(`couldnt fetch pool object for pool: ${poolName}`);\n }\n tokensInvested = new Decimal(\n (o.data.content as any).fields.tokensInvested,\n );\n xTokenSupply = new Decimal(\n (o.data.content as any)?.fields.xTokenSupply.fields.value,\n );\n } else {\n pool = await getPool(poolName, ignoreCache);\n if (\n poolName.toString().includes(\"-FUNGIBLE-\") &&\n \"treasury_cap\" in pool.content.fields\n ) {\n xTokenSupply = new Decimal(\n pool.content.fields.treasury_cap.fields.total_supply.fields.value,\n );\n } else {\n xTokenSupply = new Decimal(pool.content.fields.xTokenSupply);\n }\n tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n if (poolName == \"ALPHA\") {\n tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n } else if (poolInfo[poolName].parentProtocolName == \"CETUS\") {\n const investor = (await getInvestor(\n poolName,\n ignoreCache,\n )) as CetusInvestor & CommonInvestorFields;\n if (!investor) {\n throw new Error(\n `couldnt fetch investor object for pool: ${poolName}`,\n );\n }\n tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n }\n }\n\n // Check for division by zero\n if (xTokenSupply.eq(0)) {\n console.error(\"Division by zero error: tokensInvested is zero.\");\n return new Decimal(0);\n }\n const poolExchangeRate = tokensInvested.div(xTokenSupply);\n return poolExchangeRate;\n } catch (err) {\n console.log(\n `getPoolExchangeRate failed for poolName: ${poolName}, with error ${err}`,\n );\n throw err;\n }\n}\n\nconst naviVoloExchangeRateCache = new SimpleCache<NaviVoloData>();\nconst naviVoloExchangeRatePromiseCache = new SimpleCache<\n Promise<NaviVoloData>\n>();\n\n/** @deprecated */\nexport async function fetchVoloExchangeRate(\n ignoreCache: boolean,\n): Promise<NaviVoloData> {\n const apiUrl = \"https://open-api.naviprotocol.io/api/volo/stats\";\n let NaviVoloDetails: NaviVoloData;\n if (ignoreCache) {\n naviVoloExchangeRateCache.clear();\n naviVoloExchangeRatePromiseCache.delete(apiUrl);\n }\n\n const cachedResponse = naviVoloExchangeRateCache.get(apiUrl);\n if (cachedResponse) {\n NaviVoloDetails = cachedResponse;\n } else {\n const default_volo_data: NaviVoloData = {\n data: {\n operatorBalance: \"\",\n collectableFee: \"\",\n pendingStakes: \"\",\n poolTotalRewards: \"0\",\n unstakeTicketSupply: \"\",\n totalStaked: \"\",\n activeStake: \"\",\n calcTotalRewards: \"\",\n currentEpoch: \"\",\n validators: {},\n exchangeRate: (1 / 0.973).toString(),\n totalSupply: \"\",\n apy: \"\",\n sortedValidators: [\"\"],\n maxInstantUnstake: \"\",\n maxNoFeeUnstake: \"\",\n },\n code: 0,\n };\n try {\n let cachedPromise = naviVoloExchangeRatePromiseCache.get(apiUrl);\n\n if (!cachedPromise) {\n cachedPromise = fetch(apiUrl)\n .then(async (response) => {\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n const data = (await response.json()) as NaviVoloData; // Parse the JSON response\n naviVoloExchangeRateCache.set(apiUrl, data); // Cache the response\n naviVoloExchangeRatePromiseCache.delete(apiUrl); // Remove the promise from the cache\n return data;\n })\n .catch((error) => {\n naviVoloExchangeRatePromiseCache.delete(apiUrl); // Ensure the promise is removed on error\n throw error;\n });\n naviVoloExchangeRatePromiseCache.set(apiUrl, cachedPromise);\n NaviVoloDetails = await cachedPromise;\n return cachedPromise;\n } else {\n NaviVoloDetails = default_volo_data;\n return Promise.resolve(default_volo_data);\n }\n } catch (error) {\n console.log(\"error in api\", error);\n\n NaviVoloDetails = default_volo_data;\n return Promise.resolve(default_volo_data);\n }\n }\n\n return NaviVoloDetails;\n}\n\n/** @deprecated */\nexport async function multiGetNaviInvestor(poolNames: SingleAssetPoolNames[]) {\n const results: {\n [poolName in SingleAssetPoolNames]?:\n | (NaviInvestor & CommonInvestorFields)\n | undefined;\n } = {};\n const poolInvestorIds: string[] = [];\n\n for (const poolName of poolNames) {\n poolInvestorIds.push(poolInfo[poolName].investorId);\n }\n try {\n const suiClient = getSuiClient();\n const objects = await suiClient.multiGetObjects({\n ids: poolInvestorIds,\n options: { showContent: true },\n });\n for (let i = 0; i < objects.length; i++) {\n const investor = objects[i].data as NaviInvestor & CommonInvestorFields;\n results[poolNames[i]] = investor;\n }\n return results;\n } catch (err) {\n //improve\n console.error(\n \"multiGetNaviInvestor failed for poolNames: \",\n poolNames.join(\", \"),\n );\n throw err;\n }\n}\n/*\nfor the missing pools, add a promise, each of those promises waits for there respective object from a map, that map is populated all at once, \nproblem with concurrency\n*/\n// ask how to deal with this kind of probem with high concurrency anf throughput\n"]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SuiTransactionBlockResponse } from "@mysten/sui/client";
|
|
2
2
|
import { FetchTransactionParams } from "./types.js";
|
|
3
|
+
/** @deprecated */
|
|
3
4
|
export declare function fetchTransactions(params: FetchTransactionParams): Promise<SuiTransactionBlockResponse[]>;
|
|
4
5
|
//# sourceMappingURL=fetchTransactions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchTransactions.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/fetchTransactions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,2BAA2B,EAAE,CAAC,CA2DxC"}
|
|
1
|
+
{"version":3,"file":"fetchTransactions.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/fetchTransactions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,kBAAkB;AAClB,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,2BAA2B,EAAE,CAAC,CA2DxC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.fetchTransactions = fetchTransactions;
|
|
4
4
|
const client_js_1 = require("../client.js");
|
|
5
|
+
/** @deprecated */
|
|
5
6
|
async function fetchTransactions(params) {
|
|
6
7
|
let transactionBlocks = [];
|
|
7
8
|
const suiClient = (0, client_js_1.getSuiClient)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchTransactions.js","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/fetchTransactions.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"fetchTransactions.js","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/fetchTransactions.ts"],"names":[],"mappings":";;AAKA,8CA6DC;AAlED,4CAA4C;AAI5C,kBAAkB;AACX,KAAK,UAAU,iBAAiB,CACrC,MAA8B;IAE9B,IAAI,iBAAiB,GAAkC,EAAE,CAAC;IAC1D,MAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;QAC5B,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC;YACE,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,IAAI;YACf,iBAAiB,EAAE,IAAI;SACxB,CAAC;IACN,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO;QACpC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAEzD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACnC,IAAI,WAAW,GAAY,IAAI,CAAC;QAChC,IAAI,UAAU,GAA8B,IAAI,CAAC;QACjD,OAAO,WAAW,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,sBAAsB,CAAC;gBACjD,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,MAAM;gBACd,OAAO;aACR,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,WAAqB,CAAC;gBAChD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAqB,CAAC;gBACjD,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;oBACzC,uBAAuB;oBACvB,WAAW,GAAG,KAAK,CAAC;oBACpB,MAAM;gBACR,CAAC;qBAAM,IAAI,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;oBAChD,uBAAuB;oBACvB,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;oBAC9B,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;oBAC5B,SAAS;gBACX,CAAC;qBAAM,CAAC;oBACN,kDAAkD;oBAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACzC,IACE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,SAAS;4BAClD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,OAAO,EAChD,CAAC;4BACD,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;wBACtC,CAAC;oBACH,CAAC;oBACD,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;oBAC9B,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;gBAC9B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,eAAe;gBACf,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvD,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;gBAC9B,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC","sourcesContent":["import { getSuiClient } from \"../client.js\";\nimport { SuiTransactionBlockResponse } from \"@mysten/sui/client\";\nimport { FetchTransactionParams } from \"./types.js\";\n\n/** @deprecated */\nexport async function fetchTransactions(\n params: FetchTransactionParams,\n): Promise<SuiTransactionBlockResponse[]> {\n let transactionBlocks: SuiTransactionBlockResponse[] = [];\n const suiClient = getSuiClient();\n const options = params.options\n ? params.options\n : {\n showEffects: true,\n showInput: true,\n showObjectChanges: true,\n };\n if (params.startTime >= params.endTime)\n throw new Error(\"startTime must be less than endTime\");\n\n for (const filter of params.filter) {\n let hasNextPage: boolean = true;\n let nextCursor: null | string | undefined = null;\n while (hasNextPage) {\n const res = await suiClient.queryTransactionBlocks({\n cursor: nextCursor,\n filter: filter,\n options,\n });\n if (res.data.length !== 0) {\n const lastTx = res.data[res.data.length - 1];\n const firstTx = res.data[0];\n const laterTime = firstTx.timestampMs as string;\n const earlierTime = lastTx.timestampMs as string;\n if (Number(laterTime) < params.startTime) {\n // Page beyond interval\n hasNextPage = false;\n break;\n } else if (Number(earlierTime) > params.endTime) {\n // Page beyond interval\n hasNextPage = res.hasNextPage;\n nextCursor = res.nextCursor;\n continue;\n } else {\n // page is partially or completely in the interval\n for (let i = 0; i < res.data.length; i++) {\n if (\n Number(res.data[i].timestampMs) > params.startTime &&\n Number(res.data[i].timestampMs) < params.endTime\n ) {\n transactionBlocks.push(res.data[i]);\n }\n }\n hasNextPage = res.hasNextPage;\n nextCursor = res.nextCursor;\n }\n } else {\n // Empty result\n transactionBlocks = transactionBlocks.concat(res.data);\n hasNextPage = res.hasNextPage;\n nextCursor = res.nextCursor;\n }\n }\n }\n\n return transactionBlocks;\n}\n"]}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
/** @deprecated */
|
|
2
3
|
export declare const depositAlphaTxb: (amount: string, address: string) => Promise<Transaction>;
|
|
4
|
+
/** @deprecated */
|
|
3
5
|
export declare const withdrawAlphaTxb: (xTokens: string, withdrawFromLocked: boolean, address: string) => Promise<Transaction>;
|
|
4
6
|
//# sourceMappingURL=alpha.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alpha.d.ts","sourceRoot":"","sources":["../../../src/transactions/alpha.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAKvD,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,EACd,SAAS,MAAM,KACd,OAAO,CAAC,WAAW,CAiFrB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,oBAAoB,OAAO,EAC3B,SAAS,MAAM,KACd,OAAO,CAAC,WAAW,CAwBrB,CAAC"}
|
|
1
|
+
{"version":3,"file":"alpha.d.ts","sourceRoot":"","sources":["../../../src/transactions/alpha.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAKvD,kBAAkB;AAClB,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,EACd,SAAS,MAAM,KACd,OAAO,CAAC,WAAW,CAiFrB,CAAC;AAEF,kBAAkB;AAClB,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,oBAAoB,OAAO,EAC3B,SAAS,MAAM,KACd,OAAO,CAAC,WAAW,CAwBrB,CAAC"}
|
|
@@ -4,6 +4,7 @@ exports.withdrawAlphaTxb = exports.depositAlphaTxb = void 0;
|
|
|
4
4
|
const transactions_1 = require("@mysten/sui/transactions");
|
|
5
5
|
const index_js_1 = require("../index.js");
|
|
6
6
|
// import { getEstimatedGasBudget } from "./deposit.js";
|
|
7
|
+
/** @deprecated */
|
|
7
8
|
const depositAlphaTxb = async (amount, address) => {
|
|
8
9
|
const suiClient = (0, index_js_1.getSuiClient)();
|
|
9
10
|
const txb = new transactions_1.Transaction();
|
|
@@ -78,6 +79,7 @@ const depositAlphaTxb = async (amount, address) => {
|
|
|
78
79
|
}
|
|
79
80
|
};
|
|
80
81
|
exports.depositAlphaTxb = depositAlphaTxb;
|
|
82
|
+
/** @deprecated */
|
|
81
83
|
const withdrawAlphaTxb = async (xTokens, withdrawFromLocked, address) => {
|
|
82
84
|
const txb = new transactions_1.Transaction();
|
|
83
85
|
const receipt = await (0, index_js_1.getReceipts)("ALPHA", address, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alpha.js","sourceRoot":"","sources":["../../../src/transactions/alpha.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAEvD,0CAA0E;AAC1E,wDAAwD;
|
|
1
|
+
{"version":3,"file":"alpha.js","sourceRoot":"","sources":["../../../src/transactions/alpha.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAEvD,0CAA0E;AAC1E,wDAAwD;AAExD,kBAAkB;AACX,MAAM,eAAe,GAAG,KAAK,EAClC,MAAc,EACd,OAAe,EACO,EAAE;IACxB,MAAM,SAAS,GAAG,IAAA,uBAAY,GAAE,CAAC;IACjC,MAAM,GAAG,GAAG,IAAI,0BAAW,EAAE,CAAC;IAE9B,IAAI,KAAK,GAAiB,EAAE,CAAC;IAE7B,MAAM,OAAO,GAAc,MAAM,IAAA,sBAAW,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAErE,IAAI,aAAa,GAA8B,IAAI,CAAC;IAEpD,GAAG,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC;YACxC,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,IAAA,kBAAO,GAAE,CAAC,eAAe;YACnC,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QAEH,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEpC,+BAA+B;QAC/B,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YAChD,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,8CAA8C;YAC9C,MAAM;QACR,CAAC;IACH,CAAC,QAAQ,IAAI,EAAE;IAEf,IAAI,IAAS,CAAC;IAEd,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,GAAG,CAAC,UAAU,CACZ,IAAI,EACJ,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CACjC,CAAC;QACF,MAAM,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAErC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;gBAC7B,MAAM,EAAE,mBAAmB;gBAC3B,aAAa,EAAE,CAAC,IAAA,kBAAO,GAAE,CAAC,kBAAkB,CAAC;gBAC7C,SAAS,EAAE,EAAE;aACd,CAAC,CAAC;YACH,GAAG,CAAC,QAAQ,CAAC;gBACX,MAAM,EAAE,GAAG,IAAA,kBAAO,GAAE,CAAC,uBAAuB,2BAA2B;gBACvE,aAAa,EAAE,CAAC,IAAA,kBAAO,GAAE,CAAC,eAAe,CAAC;gBAC1C,SAAS,EAAE;oBACT,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,OAAO,CAAC;oBAC7B,OAAO;oBACP,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,UAAU,CAAC;oBAChC,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,iBAAiB,CAAC;oBACvC,WAAW;oBACX,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,gBAAgB,CAAC;iBACvC;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;gBACjC,MAAM,EAAE,mBAAmB;gBAC3B,aAAa,EAAE,CAAC,IAAA,kBAAO,GAAE,CAAC,kBAAkB,CAAC;gBAC7C,SAAS,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;aAC7C,CAAC,CAAC;YACH,GAAG,CAAC,QAAQ,CAAC;gBACX,MAAM,EAAE,GAAG,IAAA,kBAAO,GAAE,CAAC,uBAAuB,2BAA2B;gBACvE,aAAa,EAAE,CAAC,IAAA,kBAAO,GAAE,CAAC,eAAe,CAAC;gBAC1C,SAAS,EAAE;oBACT,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,OAAO,CAAC;oBAC7B,WAAW;oBACX,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,UAAU,CAAC;oBAChC,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,iBAAiB,CAAC;oBACvC,WAAW;oBACX,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,gBAAgB,CAAC;iBACvC;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;AACH,CAAC,CAAC;AApFW,QAAA,eAAe,mBAoF1B;AAEF,kBAAkB;AACX,MAAM,gBAAgB,GAAG,KAAK,EACnC,OAAe,EACf,kBAA2B,EAC3B,OAAe,EACO,EAAE;IACxB,MAAM,GAAG,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAc,MAAM,IAAA,sBAAW,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,QAAQ,CAAC;YACX,MAAM,EAAE,GAAG,IAAA,kBAAO,GAAE,CAAC,uBAAuB,4BAA4B;YACxE,aAAa,EAAE,CAAC,IAAA,kBAAO,GAAE,CAAC,eAAe,CAAC;YAC1C,SAAS,EAAE;gBACT,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,OAAO,CAAC;gBAC7B,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC/B,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,UAAU,CAAC;gBAChC,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,iBAAiB,CAAC;gBACvC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;gBACrB,GAAG,CAAC,MAAM,CAAC,IAAA,kBAAO,GAAE,CAAC,gBAAgB,CAAC;gBACtC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;aAClC;SACF,CAAC,CAAC;QACH,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvB,wEAAwE;QACxE,gEAAgE;QAChE,OAAO,GAAG,CAAC;IACb,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;AACH,CAAC,CAAC;AA5BW,QAAA,gBAAgB,oBA4B3B","sourcesContent":["import { Transaction } from \"@mysten/sui/transactions\";\nimport { CoinStruct } from \"@mysten/sui/client\";\nimport { getConf, getReceipts, getSuiClient, Receipt } from \"../index.js\";\n// import { getEstimatedGasBudget } from \"./deposit.js\";\n\n/** @deprecated */\nexport const depositAlphaTxb = async (\n amount: string,\n address: string,\n): Promise<Transaction> => {\n const suiClient = getSuiClient();\n const txb = new Transaction();\n\n let coins: CoinStruct[] = [];\n\n const receipt: Receipt[] = await getReceipts(\"ALPHA\", address, true);\n\n let currentCursor: string | null | undefined = null;\n\n do {\n const response = await suiClient.getCoins({\n owner: address,\n coinType: getConf().ALPHA_COIN_TYPE,\n cursor: currentCursor,\n });\n\n coins = coins.concat(response.data);\n\n // Check if there's a next page\n if (response.hasNextPage && response.nextCursor) {\n currentCursor = response.nextCursor;\n } else {\n // No more pages available\n // console.log(\"No more receipts available.\");\n break;\n }\n } while (true);\n\n let coin: any;\n\n if (coins.length >= 1) {\n [coin] = txb.splitCoins(txb.object(coins[0].coinObjectId), [0]);\n txb.mergeCoins(\n coin,\n coins.map((c) => c.coinObjectId),\n );\n const [depositCoin] = txb.splitCoins(coin, [amount]);\n txb.transferObjects([coin], address);\n\n if (receipt.length == 0) {\n const [receipt] = txb.moveCall({\n target: `0x1::option::none`,\n typeArguments: [getConf().ALPHA_POOL_RECEIPT],\n arguments: [],\n });\n txb.moveCall({\n target: `${getConf().ALPHA_LATEST_PACKAGE_ID}::alphapool::user_deposit`,\n typeArguments: [getConf().ALPHA_COIN_TYPE],\n arguments: [\n txb.object(getConf().VERSION),\n receipt,\n txb.object(getConf().ALPHA_POOL),\n txb.object(getConf().ALPHA_DISTRIBUTOR),\n depositCoin,\n txb.object(getConf().CLOCK_PACKAGE_ID),\n ],\n });\n } else {\n const [someReceipt] = txb.moveCall({\n target: `0x1::option::some`,\n typeArguments: [getConf().ALPHA_POOL_RECEIPT],\n arguments: [txb.object(receipt[0].objectId)],\n });\n txb.moveCall({\n target: `${getConf().ALPHA_LATEST_PACKAGE_ID}::alphapool::user_deposit`,\n typeArguments: [getConf().ALPHA_COIN_TYPE],\n arguments: [\n txb.object(getConf().VERSION),\n someReceipt,\n txb.object(getConf().ALPHA_POOL),\n txb.object(getConf().ALPHA_DISTRIBUTOR),\n depositCoin,\n txb.object(getConf().CLOCK_PACKAGE_ID),\n ],\n });\n }\n return txb;\n } else {\n throw new Error(\"No Alpha Coins\");\n }\n};\n\n/** @deprecated */\nexport const withdrawAlphaTxb = async (\n xTokens: string,\n withdrawFromLocked: boolean,\n address: string,\n): Promise<Transaction> => {\n const txb = new Transaction();\n const receipt: Receipt[] = await getReceipts(\"ALPHA\", address, true);\n if (receipt.length > 0) {\n txb.moveCall({\n target: `${getConf().ALPHA_LATEST_PACKAGE_ID}::alphapool::user_withdraw`,\n typeArguments: [getConf().ALPHA_COIN_TYPE],\n arguments: [\n txb.object(getConf().VERSION),\n txb.object(receipt[0].objectId),\n txb.object(getConf().ALPHA_POOL),\n txb.object(getConf().ALPHA_DISTRIBUTOR),\n txb.pure.u64(xTokens),\n txb.object(getConf().CLOCK_PACKAGE_ID),\n txb.pure.bool(withdrawFromLocked),\n ],\n });\n txb.setSender(address);\n // const estimatedGasBudget = await getEstimatedGasBudget(txb, address);\n // if (estimatedGasBudget) txb.setGasBudget(estimatedGasBudget);\n return txb;\n } else {\n throw new Error(\"No receipt found!\");\n }\n};\n"]}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { Transaction } from "@mysten/sui/transactions";
|
|
2
2
|
import { SuiClient } from "@mysten/sui/client";
|
|
3
|
+
/** @deprecated */
|
|
3
4
|
export declare function depositAlphaTx(amount: string, address: string, suiClient: SuiClient): Promise<Transaction>;
|
|
5
|
+
/** @deprecated */
|
|
4
6
|
export declare function initiateWithdrawAlpha(amount: string, withdrawMax: boolean, address: string, suiClient: SuiClient): Promise<Transaction>;
|
|
5
|
-
|
|
7
|
+
/** @deprecated */
|
|
8
|
+
export declare function claimAirdropTx(address: string, suiClient: SuiClient, transferToWallet: boolean): Promise<Transaction>;
|
|
9
|
+
/** @deprecated */
|
|
6
10
|
export declare function claimWithdrawAlphaTx(ticketId: string, address: string, suiClient: SuiClient): Promise<Transaction>;
|
|
11
|
+
/** @deprecated */
|
|
7
12
|
export declare function getCoinFromWallet(tx: Transaction, suiClient: SuiClient, address: string, coinType: string): Promise<{
|
|
8
13
|
$kind: "NestedResult";
|
|
9
14
|
NestedResult: [number, number];
|
|
@@ -11,7 +16,9 @@ export declare function getCoinFromWallet(tx: Transaction, suiClient: SuiClient,
|
|
|
11
16
|
$kind: "GasCoin";
|
|
12
17
|
GasCoin: true;
|
|
13
18
|
}>;
|
|
19
|
+
/** @deprecated */
|
|
14
20
|
export declare function parseAlphaFiReceipt(query: any): AlphaFiReceiptType;
|
|
21
|
+
/** @deprecated */
|
|
15
22
|
export type AlphaFiReceiptType = {
|
|
16
23
|
id: string;
|
|
17
24
|
position_pool_map: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alphaVault.d.ts","sourceRoot":"","sources":["../../../src/transactions/alphaVault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,OAAO,EAAc,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"alphaVault.d.ts","sourceRoot":"","sources":["../../../src/transactions/alphaVault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,OAAO,EAAc,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAQ3D,kBAAkB;AAClB,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,WAAW,CAAC,CAqGtB;AAED,kBAAkB;AAClB,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,WAAW,CAAC,CAqCtB;AAqHD,kBAAkB;AAClB,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,WAAW,CAAC,CAqJtB;AAED,kBAAkB;AAClB,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,WAAW,CAAC,CAoBtB;AAED,kBAAkB;AAClB,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,WAAW,EACf,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM;;;;;;GAoCjB;AAyCD,kBAAkB;AAClB,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,kBAAkB,CAelE;AAED,kBAAkB;AAClB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,EAAE;QACjB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,CAAC;YAChB,cAAc,EAAE,MAAM,CAAC;SACxB,CAAC;KACH,EAAE,CAAC;IACJ,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC"}
|