@alphafi/alphafi-sdk 0.0.19 → 0.0.21
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 +14 -5
- package/dist/cjs/common/alphaTypes.d.ts.map +1 -0
- package/dist/cjs/common/alphaTypes.js +3 -0
- package/dist/cjs/common/alphaTypes.js.map +1 -0
- package/dist/cjs/common/cetus_mainnet_config.d.ts.map +1 -0
- package/dist/cjs/common/cetus_mainnet_config.js +50 -0
- package/dist/cjs/common/cetus_mainnet_config.js.map +1 -0
- package/dist/cjs/common/coins.d.ts.map +1 -0
- package/dist/cjs/common/coins.js +135 -0
- package/dist/cjs/common/coins.js.map +1 -0
- package/dist/cjs/common/constants.d.ts.map +1 -0
- package/dist/cjs/common/constants.js +465 -0
- package/dist/cjs/common/constants.js.map +1 -0
- package/dist/cjs/common/maps.d.ts.map +1 -0
- package/dist/cjs/common/maps.js +535 -0
- package/dist/cjs/common/maps.js.map +1 -0
- package/dist/cjs/common/pyth.d.ts.map +1 -0
- package/dist/cjs/common/pyth.js +3 -0
- package/dist/cjs/common/pyth.js.map +1 -0
- package/dist/cjs/common/types.d.ts.map +1 -0
- package/dist/cjs/common/types.js +18 -0
- package/dist/cjs/common/types.js.map +1 -0
- package/dist/cjs/example.d.ts.map +1 -0
- package/dist/cjs/example.js +42 -0
- package/dist/cjs/example.js.map +1 -0
- package/dist/cjs/getAirdropShare.d.ts.map +1 -0
- package/dist/cjs/getAirdropShare.js +9 -0
- package/dist/cjs/getAirdropShare.js.map +1 -0
- package/dist/cjs/getAllVaults.d.ts.map +1 -0
- package/dist/cjs/getAllVaults.js +32 -0
- package/dist/cjs/getAllVaults.js.map +1 -0
- package/dist/cjs/getAlphaUnlocks.d.ts.map +1 -0
- package/dist/cjs/getAlphaUnlocks.js +20 -0
- package/dist/cjs/getAlphaUnlocks.js.map +1 -0
- package/dist/cjs/getAprs.d.ts.map +1 -0
- package/dist/cjs/getAprs.js +56 -0
- package/dist/cjs/getAprs.js.map +1 -0
- package/dist/cjs/getHoldersFromTransactions.d.ts.map +1 -0
- package/dist/cjs/getHoldersFromTransactions.js +87 -0
- package/dist/cjs/getHoldersFromTransactions.js.map +1 -0
- package/dist/cjs/getLastAutoCompoundTime.d.ts.map +1 -0
- package/dist/cjs/getLastAutoCompoundTime.js +17 -0
- package/dist/cjs/getLastAutoCompoundTime.js.map +1 -0
- package/dist/cjs/getRebalanceHistory.d.ts.map +1 -0
- package/dist/cjs/getRebalanceHistory.js +24 -0
- package/dist/cjs/getRebalanceHistory.js.map +1 -0
- package/dist/cjs/getVaultBalances.d.ts.map +1 -0
- package/dist/cjs/getVaultBalances.js +132 -0
- package/dist/cjs/getVaultBalances.js.map +1 -0
- package/dist/cjs/getVaults.d.ts.map +1 -0
- package/dist/cjs/getVaults.js +31 -0
- package/dist/cjs/getVaults.js.map +1 -0
- package/dist/cjs/graphql/client.d.ts.map +1 -0
- package/dist/cjs/graphql/client.js +14 -0
- package/dist/cjs/graphql/client.js.map +1 -0
- package/dist/cjs/graphql/executeMutations.d.ts.map +1 -0
- package/dist/cjs/graphql/executeMutations.js +31 -0
- package/dist/cjs/graphql/executeMutations.js.map +1 -0
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.d.ts.map +1 -0
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.js +119 -0
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.js.map +1 -0
- package/dist/cjs/graphql/fetchData.d.ts.map +1 -0
- package/dist/cjs/graphql/fetchData.js +95 -0
- package/dist/cjs/graphql/fetchData.js.map +1 -0
- package/dist/cjs/graphql/fetchNftHolders.d.ts.map +1 -0
- package/dist/cjs/graphql/fetchNftHolders.js +34 -0
- package/dist/cjs/graphql/fetchNftHolders.js.map +1 -0
- package/dist/cjs/graphql/fetchReceipts.d.ts.map +1 -0
- package/dist/cjs/graphql/fetchReceipts.js +35 -0
- package/dist/cjs/graphql/fetchReceipts.js.map +1 -0
- package/dist/cjs/graphql/mutations.d.ts.map +1 -0
- package/dist/cjs/graphql/mutations.js +33 -0
- package/dist/cjs/graphql/mutations.js.map +1 -0
- package/dist/cjs/graphql/parseData.d.ts.map +1 -0
- package/dist/cjs/graphql/parseData.js +9 -0
- package/dist/cjs/graphql/parseData.js.map +1 -0
- package/dist/cjs/graphql/parseLockedTableId.d.ts.map +1 -0
- package/dist/cjs/graphql/parseLockedTableId.js +15 -0
- package/dist/cjs/graphql/parseLockedTableId.js.map +1 -0
- package/dist/cjs/graphql/queries/autoCompoundEvents.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/autoCompoundEvents.js +19 -0
- package/dist/cjs/graphql/queries/autoCompoundEvents.js.map +1 -0
- package/dist/cjs/graphql/queries/cetusPools.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/cetusPools.js +39 -0
- package/dist/cjs/graphql/queries/cetusPools.js.map +1 -0
- package/dist/cjs/graphql/queries/investors.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/investors.js +39 -0
- package/dist/cjs/graphql/queries/investors.js.map +1 -0
- package/dist/cjs/graphql/queries/lockedTableData.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/lockedTableData.js +30 -0
- package/dist/cjs/graphql/queries/lockedTableData.js.map +1 -0
- package/dist/cjs/graphql/queries/lockedTableDataFragment.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/lockedTableDataFragment.js +24 -0
- package/dist/cjs/graphql/queries/lockedTableDataFragment.js.map +1 -0
- package/dist/cjs/graphql/queries/nftHolders.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/nftHolders.js +23 -0
- package/dist/cjs/graphql/queries/nftHolders.js.map +1 -0
- package/dist/cjs/graphql/queries/pools.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/pools.js +57 -0
- package/dist/cjs/graphql/queries/pools.js.map +1 -0
- package/dist/cjs/graphql/queries/receiptData.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/receiptData.js +21 -0
- package/dist/cjs/graphql/queries/receiptData.js.map +1 -0
- package/dist/cjs/graphql/queries/userVaultBalances.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/userVaultBalances.js +62 -0
- package/dist/cjs/graphql/queries/userVaultBalances.js.map +1 -0
- package/dist/cjs/graphql/queries/userVaults.d.ts.map +1 -0
- package/dist/cjs/graphql/queries/userVaults.js +62 -0
- package/dist/cjs/graphql/queries/userVaults.js.map +1 -0
- package/dist/cjs/graphql/queries.d.ts.map +1 -0
- package/dist/cjs/graphql/queries.js +86 -0
- package/dist/cjs/graphql/queries.js.map +1 -0
- package/dist/cjs/graphql/types.d.ts.map +1 -0
- package/dist/cjs/graphql/types.js +3 -0
- package/dist/cjs/graphql/types.js.map +1 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +70 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/sui-sdk/client.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/client.js +69 -0
- package/dist/cjs/sui-sdk/client.js.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js +201 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.js +184 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.js.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.js +44 -0
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.js.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js +90 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js.map +1 -0
- package/dist/cjs/sui-sdk/events/parseData.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/parseData.js +31 -0
- package/dist/cjs/sui-sdk/events/parseData.js.map +1 -0
- package/dist/cjs/sui-sdk/events/types.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/types.js +3 -0
- package/dist/cjs/sui-sdk/events/types.js.map +1 -0
- package/dist/cjs/sui-sdk/functions/fetchTableData.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/functions/fetchTableData.js +77 -0
- package/dist/cjs/sui-sdk/functions/fetchTableData.js.map +1 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.js +82 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.js.map +1 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.js +45 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.js.map +1 -0
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.js +246 -0
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.js.map +1 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.js +375 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.js.map +1 -0
- package/dist/cjs/sui-sdk/transactions/constants.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/transactions/constants.js +90 -0
- package/dist/cjs/sui-sdk/transactions/constants.js.map +1 -0
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.js +88 -0
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.js.map +1 -0
- package/dist/cjs/sui-sdk/transactions/types.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/transactions/types.js +3 -0
- package/dist/cjs/sui-sdk/transactions/types.js.map +1 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils/clmm/prices.d.ts.map +1 -0
- package/dist/cjs/utils/clmm/prices.js +317 -0
- package/dist/cjs/utils/clmm/prices.js.map +1 -0
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.d.ts.map +1 -0
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.js +196 -0
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.js.map +1 -0
- package/dist/cjs/utils/clmm/types.d.ts.map +1 -0
- package/dist/cjs/utils/clmm/types.js +3 -0
- package/dist/cjs/utils/clmm/types.js.map +1 -0
- package/dist/cjs/utils/constants.d.ts.map +1 -0
- package/dist/cjs/utils/constants.js +104 -0
- package/dist/cjs/utils/constants.js.map +1 -0
- package/dist/cjs/utils/getHoldersFromTransactionsUtils.d.ts.map +1 -0
- package/dist/cjs/utils/getHoldersFromTransactionsUtils.js +132 -0
- package/dist/cjs/utils/getHoldersFromTransactionsUtils.js.map +1 -0
- package/dist/cjs/utils/getReceipts.d.ts.map +1 -0
- package/dist/cjs/utils/getReceipts.js +45 -0
- package/dist/cjs/utils/getReceipts.js.map +1 -0
- package/dist/cjs/utils/hop.d.ts.map +1 -0
- package/dist/cjs/utils/hop.js +125 -0
- package/dist/cjs/utils/hop.js.map +1 -0
- package/dist/cjs/utils/prices.d.ts.map +1 -0
- package/dist/cjs/utils/prices.js +231 -0
- package/dist/cjs/utils/prices.js.map +1 -0
- package/dist/cjs/utils/simpleCache.d.ts.map +1 -0
- package/dist/cjs/utils/simpleCache.js +43 -0
- package/dist/cjs/utils/simpleCache.js.map +1 -0
- package/dist/cjs/utils/types.d.ts.map +1 -0
- package/dist/cjs/utils/types.js +3 -0
- package/dist/cjs/utils/types.js.map +1 -0
- package/dist/cjs/utils/userHoldings.d.ts.map +1 -0
- package/dist/cjs/utils/userHoldings.js +202 -0
- package/dist/cjs/utils/userHoldings.js.map +1 -0
- package/dist/cjs/vaultFunctions.d.ts.map +1 -0
- package/dist/cjs/vaultFunctions.js +32 -0
- package/dist/cjs/vaultFunctions.js.map +1 -0
- package/dist/esm/common/alphaTypes.d.ts.map +1 -0
- package/dist/esm/common/alphaTypes.js +2 -0
- package/dist/esm/common/alphaTypes.js.map +1 -0
- package/dist/esm/common/cetus_mainnet_config.d.ts.map +1 -0
- package/dist/esm/common/cetus_mainnet_config.js +47 -0
- package/dist/esm/common/cetus_mainnet_config.js.map +1 -0
- package/dist/esm/common/coins.d.ts.map +1 -0
- package/dist/esm/common/coins.js +132 -0
- package/dist/esm/common/coins.js.map +1 -0
- package/dist/esm/common/constants.d.ts.map +1 -0
- package/dist/esm/common/constants.js +462 -0
- package/dist/esm/common/constants.js.map +1 -0
- package/dist/esm/common/maps.d.ts.map +1 -0
- package/dist/esm/common/maps.js +527 -0
- package/dist/esm/common/maps.js.map +1 -0
- package/dist/esm/common/pyth.d.ts.map +1 -0
- package/dist/esm/common/pyth.js +2 -0
- package/dist/esm/common/pyth.js.map +1 -0
- package/dist/esm/common/types.d.ts.map +1 -0
- package/dist/esm/common/types.js +16 -0
- package/dist/esm/common/types.js.map +1 -0
- package/dist/esm/example.d.ts.map +1 -0
- package/dist/esm/example.js +38 -0
- package/dist/esm/example.js.map +1 -0
- package/dist/esm/getAirdropShare.d.ts.map +1 -0
- package/dist/esm/getAirdropShare.js +6 -0
- package/dist/esm/getAirdropShare.js.map +1 -0
- package/dist/esm/getAllVaults.d.ts.map +1 -0
- package/dist/esm/getAllVaults.js +27 -0
- package/dist/esm/getAllVaults.js.map +1 -0
- package/dist/esm/getAlphaUnlocks.d.ts.map +1 -0
- package/dist/esm/getAlphaUnlocks.js +17 -0
- package/dist/esm/getAlphaUnlocks.js.map +1 -0
- package/dist/esm/getAprs.d.ts.map +1 -0
- package/dist/esm/getAprs.js +50 -0
- package/dist/esm/getAprs.js.map +1 -0
- package/dist/esm/getHoldersFromTransactions.d.ts.map +1 -0
- package/dist/esm/getHoldersFromTransactions.js +82 -0
- package/dist/esm/getHoldersFromTransactions.js.map +1 -0
- package/dist/esm/getLastAutoCompoundTime.d.ts.map +1 -0
- package/dist/esm/getLastAutoCompoundTime.js +14 -0
- package/dist/esm/getLastAutoCompoundTime.js.map +1 -0
- package/dist/esm/getRebalanceHistory.d.ts.map +1 -0
- package/dist/esm/getRebalanceHistory.js +20 -0
- package/dist/esm/getRebalanceHistory.js.map +1 -0
- package/dist/esm/getVaultBalances.d.ts.map +1 -0
- package/dist/esm/getVaultBalances.js +124 -0
- package/dist/esm/getVaultBalances.js.map +1 -0
- package/dist/esm/getVaults.d.ts.map +1 -0
- package/dist/esm/getVaults.js +26 -0
- package/dist/esm/getVaults.js.map +1 -0
- package/dist/esm/graphql/client.d.ts.map +1 -0
- package/dist/esm/graphql/client.js +12 -0
- package/dist/esm/graphql/client.js.map +1 -0
- package/dist/esm/graphql/executeMutations.d.ts.map +1 -0
- package/dist/esm/graphql/executeMutations.js +25 -0
- package/dist/esm/graphql/executeMutations.js.map +1 -0
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.d.ts.map +1 -0
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.js +116 -0
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.js.map +1 -0
- package/dist/esm/graphql/fetchData.d.ts.map +1 -0
- package/dist/esm/graphql/fetchData.js +81 -0
- package/dist/esm/graphql/fetchData.js.map +1 -0
- package/dist/esm/graphql/fetchNftHolders.d.ts.map +1 -0
- package/dist/esm/graphql/fetchNftHolders.js +30 -0
- package/dist/esm/graphql/fetchNftHolders.js.map +1 -0
- package/dist/esm/graphql/fetchReceipts.d.ts.map +1 -0
- package/dist/esm/graphql/fetchReceipts.js +31 -0
- package/dist/esm/graphql/fetchReceipts.js.map +1 -0
- package/dist/esm/graphql/mutations.d.ts.map +1 -0
- package/dist/esm/graphql/mutations.js +30 -0
- package/dist/esm/graphql/mutations.js.map +1 -0
- package/dist/esm/graphql/parseData.d.ts.map +1 -0
- package/dist/esm/graphql/parseData.js +6 -0
- package/dist/esm/graphql/parseData.js.map +1 -0
- package/dist/esm/graphql/parseLockedTableId.d.ts.map +1 -0
- package/dist/esm/graphql/parseLockedTableId.js +12 -0
- package/dist/esm/graphql/parseLockedTableId.js.map +1 -0
- package/dist/esm/graphql/queries/autoCompoundEvents.d.ts.map +1 -0
- package/dist/esm/graphql/queries/autoCompoundEvents.js +16 -0
- package/dist/esm/graphql/queries/autoCompoundEvents.js.map +1 -0
- package/dist/esm/graphql/queries/cetusPools.d.ts.map +1 -0
- package/dist/esm/graphql/queries/cetusPools.js +36 -0
- package/dist/esm/graphql/queries/cetusPools.js.map +1 -0
- package/dist/esm/graphql/queries/investors.d.ts.map +1 -0
- package/dist/esm/graphql/queries/investors.js +36 -0
- package/dist/esm/graphql/queries/investors.js.map +1 -0
- package/dist/esm/graphql/queries/lockedTableData.d.ts.map +1 -0
- package/dist/esm/graphql/queries/lockedTableData.js +27 -0
- package/dist/esm/graphql/queries/lockedTableData.js.map +1 -0
- package/dist/esm/graphql/queries/lockedTableDataFragment.d.ts.map +1 -0
- package/dist/esm/graphql/queries/lockedTableDataFragment.js +21 -0
- package/dist/esm/graphql/queries/lockedTableDataFragment.js.map +1 -0
- package/dist/esm/graphql/queries/nftHolders.d.ts.map +1 -0
- package/dist/esm/graphql/queries/nftHolders.js +20 -0
- package/dist/esm/graphql/queries/nftHolders.js.map +1 -0
- package/dist/esm/graphql/queries/pools.d.ts.map +1 -0
- package/dist/esm/graphql/queries/pools.js +54 -0
- package/dist/esm/graphql/queries/pools.js.map +1 -0
- package/dist/esm/graphql/queries/receiptData.d.ts.map +1 -0
- package/dist/esm/graphql/queries/receiptData.js +18 -0
- package/dist/esm/graphql/queries/receiptData.js.map +1 -0
- package/dist/esm/graphql/queries/userVaultBalances.d.ts.map +1 -0
- package/dist/esm/graphql/queries/userVaultBalances.js +59 -0
- package/dist/esm/graphql/queries/userVaultBalances.js.map +1 -0
- package/dist/esm/graphql/queries/userVaults.d.ts.map +1 -0
- package/dist/esm/graphql/queries/userVaults.js +59 -0
- package/dist/esm/graphql/queries/userVaults.js.map +1 -0
- package/dist/esm/graphql/queries.d.ts.map +1 -0
- package/dist/esm/graphql/queries.js +83 -0
- package/dist/esm/graphql/queries.js.map +1 -0
- package/dist/esm/graphql/types.d.ts.map +1 -0
- package/dist/esm/graphql/types.js +2 -0
- package/dist/esm/graphql/types.js.map +1 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/{index.d.ts → esm/index.js} +23 -19
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/sui-sdk/client.d.ts.map +1 -0
- package/dist/esm/sui-sdk/client.js +63 -0
- package/dist/esm/sui-sdk/client.js.map +1 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js +196 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js.map +1 -0
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/fetchEvents.js +181 -0
- package/dist/esm/sui-sdk/events/fetchEvents.js.map +1 -0
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.js +41 -0
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.js.map +1 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js +85 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js.map +1 -0
- package/dist/esm/sui-sdk/events/parseData.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/parseData.js +27 -0
- package/dist/esm/sui-sdk/events/parseData.js.map +1 -0
- package/dist/esm/sui-sdk/events/types.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/types.js +2 -0
- package/dist/esm/sui-sdk/events/types.js.map +1 -0
- package/dist/esm/sui-sdk/functions/fetchTableData.d.ts.map +1 -0
- package/dist/esm/sui-sdk/functions/fetchTableData.js +73 -0
- package/dist/esm/sui-sdk/functions/fetchTableData.js.map +1 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.d.ts.map +1 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.js +79 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.js.map +1 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaults.d.ts.map +1 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaults.js +42 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaults.js.map +1 -0
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.d.ts.map +1 -0
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.js +238 -0
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.js.map +1 -0
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts.map +1 -0
- package/dist/esm/sui-sdk/functions/getReceipts.js +364 -0
- package/dist/esm/sui-sdk/functions/getReceipts.js.map +1 -0
- package/dist/esm/sui-sdk/transactions/constants.d.ts.map +1 -0
- package/dist/esm/sui-sdk/transactions/constants.js +87 -0
- package/dist/esm/sui-sdk/transactions/constants.js.map +1 -0
- package/dist/esm/sui-sdk/transactions/fetchTransactions.d.ts.map +1 -0
- package/dist/esm/sui-sdk/transactions/fetchTransactions.js +85 -0
- package/dist/esm/sui-sdk/transactions/fetchTransactions.js.map +1 -0
- package/dist/esm/sui-sdk/transactions/types.d.ts.map +1 -0
- package/dist/esm/sui-sdk/transactions/types.js +2 -0
- package/dist/esm/sui-sdk/transactions/types.js.map +1 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/clmm/prices.d.ts.map +1 -0
- package/dist/esm/utils/clmm/prices.js +309 -0
- package/dist/esm/utils/clmm/prices.js.map +1 -0
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.d.ts.map +1 -0
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.js +188 -0
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.js.map +1 -0
- package/dist/esm/utils/clmm/types.d.ts.map +1 -0
- package/dist/esm/utils/clmm/types.js +2 -0
- package/dist/esm/utils/clmm/types.js.map +1 -0
- package/dist/esm/utils/constants.d.ts.map +1 -0
- package/dist/esm/utils/constants.js +101 -0
- package/dist/esm/utils/constants.js.map +1 -0
- package/dist/esm/utils/getHoldersFromTransactionsUtils.d.ts.map +1 -0
- package/dist/esm/utils/getHoldersFromTransactionsUtils.js +127 -0
- package/dist/esm/utils/getHoldersFromTransactionsUtils.js.map +1 -0
- package/dist/esm/utils/getReceipts.d.ts.map +1 -0
- package/dist/esm/utils/getReceipts.js +42 -0
- package/dist/esm/utils/getReceipts.js.map +1 -0
- package/dist/esm/utils/hop.d.ts.map +1 -0
- package/dist/esm/utils/hop.js +118 -0
- package/dist/esm/utils/hop.js.map +1 -0
- package/dist/esm/utils/prices.d.ts.map +1 -0
- package/dist/esm/utils/prices.js +226 -0
- package/dist/esm/utils/prices.js.map +1 -0
- package/dist/esm/utils/simpleCache.d.ts.map +1 -0
- package/dist/esm/utils/simpleCache.js +40 -0
- package/dist/esm/utils/simpleCache.js.map +1 -0
- package/dist/esm/utils/types.d.ts.map +1 -0
- package/dist/esm/utils/types.js +2 -0
- package/dist/esm/utils/types.js.map +1 -0
- package/dist/esm/utils/userHoldings.d.ts.map +1 -0
- package/dist/esm/utils/userHoldings.js +195 -0
- package/dist/esm/utils/userHoldings.js.map +1 -0
- package/dist/esm/vaultFunctions.d.ts.map +1 -0
- package/dist/esm/vaultFunctions.js +27 -0
- package/dist/esm/vaultFunctions.js.map +1 -0
- package/package.json +29 -13
- package/dist/common/alphaTypes.d.ts +0 -109
- package/dist/common/cetus_mainnet_config.d.ts +0 -2
- package/dist/common/coins.d.ts +0 -4
- package/dist/common/constants.d.ts +0 -401
- package/dist/common/maps.d.ts +0 -56
- package/dist/common/pyth.d.ts +0 -6
- package/dist/common/types.d.ts +0 -459
- package/dist/example.d.ts +0 -2
- package/dist/getAirdropShare.d.ts +0 -1
- package/dist/getAllVaults.d.ts +0 -3
- package/dist/getAlphaUnlocks.d.ts +0 -13
- package/dist/getAprs.d.ts +0 -5
- package/dist/getHoldersFromTransactions.d.ts +0 -8
- package/dist/getLastAutoCompoundTime.d.ts +0 -2
- package/dist/getRebalanceHistory.d.ts +0 -3
- package/dist/getVaultBalances.d.ts +0 -8
- package/dist/getVaults.d.ts +0 -4
- package/dist/graphql/client.d.ts +0 -3
- package/dist/graphql/executeMutations.d.ts +0 -3
- package/dist/graphql/fetchAutoCompoundingEventsGql.d.ts +0 -26
- package/dist/graphql/fetchData.d.ts +0 -10
- package/dist/graphql/fetchNftHolders.d.ts +0 -2
- package/dist/graphql/fetchReceipts.d.ts +0 -2
- package/dist/graphql/mutations.d.ts +0 -3
- package/dist/graphql/parseData.d.ts +0 -1
- package/dist/graphql/parseLockedTableId.d.ts +0 -6
- package/dist/graphql/queries.d.ts +0 -14
- package/dist/graphql/types.d.ts +0 -69
- package/dist/index.js +0 -3
- package/dist/index.js.LICENSE.txt +0 -48
- package/dist/index.js.map +0 -1
- package/dist/sui-sdk/client.d.ts +0 -30
- package/dist/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +0 -5
- package/dist/sui-sdk/events/fetchEvents.d.ts +0 -2
- package/dist/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +0 -2
- package/dist/sui-sdk/events/fetchRebalanceEvents.d.ts +0 -4
- package/dist/sui-sdk/events/parseData.d.ts +0 -3
- package/dist/sui-sdk/events/types.d.ts +0 -93
- package/dist/sui-sdk/functions/fetchTableData.d.ts +0 -49
- package/dist/sui-sdk/functions/fetchUserVaultBalances.d.ts +0 -2
- package/dist/sui-sdk/functions/fetchUserVaults.d.ts +0 -2
- package/dist/sui-sdk/functions/getPortfolioAmounts.d.ts +0 -32
- package/dist/sui-sdk/functions/getReceipts.d.ts +0 -10
- package/dist/sui-sdk/transactions/constants.d.ts +0 -3
- package/dist/sui-sdk/transactions/fetchTransactions.d.ts +0 -3
- package/dist/sui-sdk/transactions/types.d.ts +0 -7
- package/dist/types.d.ts +0 -212
- package/dist/utils/clmm/prices.d.ts +0 -19
- package/dist/utils/clmm/tokenAmountFromLiquidity.d.ts +0 -10
- package/dist/utils/clmm/types.d.ts +0 -24
- package/dist/utils/constants.d.ts +0 -2
- package/dist/utils/getHoldersFromTransactionsUtils.d.ts +0 -5
- package/dist/utils/getReceipts.d.ts +0 -3
- package/dist/utils/hop.d.ts +0 -15
- package/dist/utils/prices.d.ts +0 -6
- package/dist/utils/simpleCache.d.ts +0 -9
- package/dist/utils/types.d.ts +0 -4
- package/dist/utils/userHoldings.d.ts +0 -5
- package/dist/vaultFunctions.d.ts +0 -4
|
@@ -0,0 +1,375 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getReceipts = getReceipts;
|
|
4
|
+
exports.getPoolExchangeRate = getPoolExchangeRate;
|
|
5
|
+
exports.getCoinAmountsFromLiquidity = getCoinAmountsFromLiquidity;
|
|
6
|
+
exports.getPool = getPool;
|
|
7
|
+
exports.getCetusPool = getCetusPool;
|
|
8
|
+
exports.getCetusInvestor = getCetusInvestor;
|
|
9
|
+
exports.getNaviInvestor = getNaviInvestor;
|
|
10
|
+
exports.fetchVoloExchangeRate = fetchVoloExchangeRate;
|
|
11
|
+
const tslib_1 = require("tslib");
|
|
12
|
+
const maps_js_1 = require("../../common/maps.js");
|
|
13
|
+
const simpleCache_js_1 = require("../../utils/simpleCache.js");
|
|
14
|
+
const cetus_sui_clmm_sdk_1 = require("@cetusprotocol/cetus-sui-clmm-sdk");
|
|
15
|
+
const bn_js_1 = tslib_1.__importDefault(require("bn.js"));
|
|
16
|
+
const decimal_js_1 = require("decimal.js");
|
|
17
|
+
const client_js_1 = require("../client.js");
|
|
18
|
+
const receiptsCache = new simpleCache_js_1.SimpleCache();
|
|
19
|
+
const receiptsPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
20
|
+
async function getReceipts(poolName, address, ignoreCache = false) {
|
|
21
|
+
const suiClient = (0, client_js_1.getSuiClient)();
|
|
22
|
+
const receiptsCacheKey = `getReceipts-${poolName}-${address}`;
|
|
23
|
+
if (ignoreCache) {
|
|
24
|
+
receiptsCache.delete(receiptsCacheKey);
|
|
25
|
+
receiptsPromiseCache.delete(receiptsCacheKey);
|
|
26
|
+
}
|
|
27
|
+
const cachedResponse = receiptsCache.get(receiptsCacheKey);
|
|
28
|
+
if (cachedResponse) {
|
|
29
|
+
return cachedResponse;
|
|
30
|
+
}
|
|
31
|
+
const nfts = [];
|
|
32
|
+
let cachedPromise = receiptsPromiseCache.get(receiptsCacheKey);
|
|
33
|
+
if (!cachedPromise) {
|
|
34
|
+
cachedPromise = (async () => {
|
|
35
|
+
// const first_package = conf[CONF_ENV].ALPHA_FIRST_PACKAGE_ID;
|
|
36
|
+
let currentCursor = null;
|
|
37
|
+
/* eslint-disable-next-line no-constant-condition */
|
|
38
|
+
while (true) {
|
|
39
|
+
const paginatedObjects = await suiClient.getOwnedObjects({
|
|
40
|
+
owner: address,
|
|
41
|
+
cursor: currentCursor,
|
|
42
|
+
filter: {
|
|
43
|
+
// StructType: `${first_package}::${module}::Receipt`,
|
|
44
|
+
StructType: maps_js_1.poolInfo[poolName].receiptType,
|
|
45
|
+
},
|
|
46
|
+
options: {
|
|
47
|
+
showType: true,
|
|
48
|
+
showContent: true,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
// Traverse the current page data and push to coins array
|
|
52
|
+
paginatedObjects.data.forEach((obj) => {
|
|
53
|
+
const o = obj.data;
|
|
54
|
+
if (o) {
|
|
55
|
+
if (maps_js_1.poolInfo[poolName].receiptName === o.content.fields.name) {
|
|
56
|
+
nfts.push(o);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
// Check if there's a next page
|
|
61
|
+
if (paginatedObjects.hasNextPage && paginatedObjects.nextCursor) {
|
|
62
|
+
currentCursor = paginatedObjects.nextCursor;
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
// No more pages available
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
receiptsCache.set(receiptsCacheKey, nfts);
|
|
70
|
+
receiptsPromiseCache.delete(receiptsCacheKey);
|
|
71
|
+
return nfts;
|
|
72
|
+
})().catch((error) => {
|
|
73
|
+
// TODO: Jugaad
|
|
74
|
+
if (maps_js_1.poolInfo[poolName].parentProtocolName === "NAVI") {
|
|
75
|
+
return nfts;
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
receiptsPromiseCache.delete(receiptsCacheKey); // Remove the promise from cache
|
|
79
|
+
throw error;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
receiptsPromiseCache.set(receiptsCacheKey, cachedPromise);
|
|
83
|
+
}
|
|
84
|
+
return cachedPromise;
|
|
85
|
+
}
|
|
86
|
+
const poolExchangeRateCache = new simpleCache_js_1.SimpleCache();
|
|
87
|
+
async function getPoolExchangeRate(poolName, ignoreCache = false) {
|
|
88
|
+
const poolExchangeRateCacheKey = `getPoolExchangeRate-${poolName}`;
|
|
89
|
+
if (ignoreCache) {
|
|
90
|
+
poolExchangeRateCache.delete(poolExchangeRateCacheKey);
|
|
91
|
+
}
|
|
92
|
+
const cachedResponse = poolExchangeRateCache.get(poolExchangeRateCacheKey);
|
|
93
|
+
if (cachedResponse) {
|
|
94
|
+
return cachedResponse;
|
|
95
|
+
}
|
|
96
|
+
let pool = undefined;
|
|
97
|
+
try {
|
|
98
|
+
if (poolName === "ALPHA") {
|
|
99
|
+
pool = await getPool("ALPHA");
|
|
100
|
+
}
|
|
101
|
+
else if (poolName === "ALPHA-SUI" ||
|
|
102
|
+
poolName === "USDT-USDC" ||
|
|
103
|
+
poolName === "USDY-USDC" ||
|
|
104
|
+
poolName === "HASUI-SUI" ||
|
|
105
|
+
poolName === "USDC-SUI" ||
|
|
106
|
+
poolName === "WETH-USDC") {
|
|
107
|
+
pool = await getPool(poolName);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
pool = await getPool(poolName);
|
|
111
|
+
}
|
|
112
|
+
if (pool) {
|
|
113
|
+
const xTokenSupply = new decimal_js_1.Decimal(pool.content.fields.xTokenSupply);
|
|
114
|
+
let tokensInvested = new decimal_js_1.Decimal(pool.content.fields.tokensInvested);
|
|
115
|
+
if (poolName == "ALPHA") {
|
|
116
|
+
tokensInvested = new decimal_js_1.Decimal(pool.content.fields.alpha_bal);
|
|
117
|
+
}
|
|
118
|
+
// Check for division by zero
|
|
119
|
+
if (xTokenSupply.eq(0)) {
|
|
120
|
+
console.error("Division by zero error: tokensInvested is zero.");
|
|
121
|
+
return undefined;
|
|
122
|
+
}
|
|
123
|
+
const poolExchangeRate = tokensInvested.div(xTokenSupply);
|
|
124
|
+
poolExchangeRateCache.set(poolExchangeRateCacheKey, poolExchangeRate);
|
|
125
|
+
return poolExchangeRate;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
catch (e) {
|
|
129
|
+
console.error(`getPoolExchangeRate failed for poolName: ${poolName}`);
|
|
130
|
+
}
|
|
131
|
+
return undefined;
|
|
132
|
+
}
|
|
133
|
+
async function getCoinAmountsFromLiquidity(poolName, liquidity) {
|
|
134
|
+
const cetus_pool = await getCetusPool(poolName);
|
|
135
|
+
const cetusInvestor = await getCetusInvestor(poolName);
|
|
136
|
+
const upper_bound = 443636;
|
|
137
|
+
let lower_tick = Number(cetusInvestor.content.fields.lower_tick);
|
|
138
|
+
let upper_tick = Number(cetusInvestor.content.fields.upper_tick);
|
|
139
|
+
if (lower_tick > upper_bound) {
|
|
140
|
+
lower_tick = -~(lower_tick - 1);
|
|
141
|
+
}
|
|
142
|
+
if (upper_tick > upper_bound) {
|
|
143
|
+
upper_tick = -~(upper_tick - 1);
|
|
144
|
+
}
|
|
145
|
+
if (cetus_pool) {
|
|
146
|
+
const liquidityInt = Math.floor(liquidity);
|
|
147
|
+
const coin_amounts = cetus_sui_clmm_sdk_1.ClmmPoolUtil.getCoinAmountFromLiquidity(new bn_js_1.default(`${liquidityInt}`), new bn_js_1.default(cetus_pool.content.fields.current_sqrt_price), cetus_sui_clmm_sdk_1.TickMath.tickIndexToSqrtPriceX64(lower_tick), cetus_sui_clmm_sdk_1.TickMath.tickIndexToSqrtPriceX64(upper_tick), true);
|
|
148
|
+
return [coin_amounts.coinA.toNumber(), coin_amounts.coinB.toNumber()];
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
return [0, 0];
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
const poolCache = new simpleCache_js_1.SimpleCache();
|
|
155
|
+
const poolPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
156
|
+
async function getPool(poolName, ignoreCache = false) {
|
|
157
|
+
const cacheKey = `pool_${maps_js_1.poolInfo[poolName.toUpperCase()].poolId}`;
|
|
158
|
+
if (ignoreCache) {
|
|
159
|
+
poolCache.delete(cacheKey);
|
|
160
|
+
poolPromiseCache.delete(cacheKey);
|
|
161
|
+
}
|
|
162
|
+
// Check if the pool is already in the cache
|
|
163
|
+
const cachedPool = poolCache.get(cacheKey);
|
|
164
|
+
if (cachedPool) {
|
|
165
|
+
return cachedPool;
|
|
166
|
+
}
|
|
167
|
+
// Check if there is already a promise in the cache
|
|
168
|
+
let poolPromise = poolPromiseCache.get(cacheKey);
|
|
169
|
+
if (poolPromise) {
|
|
170
|
+
return poolPromise;
|
|
171
|
+
}
|
|
172
|
+
// If not, create a new promise and cache it
|
|
173
|
+
poolPromise = (async () => {
|
|
174
|
+
const suiClient = (0, client_js_1.getSuiClient)();
|
|
175
|
+
try {
|
|
176
|
+
const o = await suiClient.getObject({
|
|
177
|
+
id: maps_js_1.poolInfo[poolName].poolId,
|
|
178
|
+
options: {
|
|
179
|
+
showContent: true,
|
|
180
|
+
},
|
|
181
|
+
});
|
|
182
|
+
const poolData = poolName === "ALPHA" ? o.data : o.data;
|
|
183
|
+
// Cache the pool object
|
|
184
|
+
poolCache.set(cacheKey, poolData);
|
|
185
|
+
return poolData;
|
|
186
|
+
}
|
|
187
|
+
catch (e) {
|
|
188
|
+
console.error(`Error in getPool; poolName => ${poolName}`);
|
|
189
|
+
return undefined;
|
|
190
|
+
}
|
|
191
|
+
finally {
|
|
192
|
+
// Remove the promise from the cache after it resolves
|
|
193
|
+
poolPromiseCache.delete(cacheKey);
|
|
194
|
+
}
|
|
195
|
+
})();
|
|
196
|
+
// Cache the promise
|
|
197
|
+
poolPromiseCache.set(cacheKey, poolPromise);
|
|
198
|
+
return poolPromise;
|
|
199
|
+
}
|
|
200
|
+
const cetusPoolCache = new simpleCache_js_1.SimpleCache();
|
|
201
|
+
const cetusPoolPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
202
|
+
async function getCetusPool(poolName, ignoreCache = false) {
|
|
203
|
+
const cacheKey = `pool_${maps_js_1.cetusPoolMap[poolName.toUpperCase()]}`;
|
|
204
|
+
if (ignoreCache) {
|
|
205
|
+
cetusPoolCache.delete(cacheKey);
|
|
206
|
+
cetusPoolPromiseCache.delete(cacheKey);
|
|
207
|
+
}
|
|
208
|
+
// Check if the pool is already in the cache
|
|
209
|
+
const cachedPool = cetusPoolCache.get(cacheKey);
|
|
210
|
+
if (cachedPool) {
|
|
211
|
+
return cachedPool;
|
|
212
|
+
}
|
|
213
|
+
// Check if there is already a promise in the cache
|
|
214
|
+
let cetusPoolPromise = cetusPoolPromiseCache.get(cacheKey);
|
|
215
|
+
if (cetusPoolPromise) {
|
|
216
|
+
return cetusPoolPromise;
|
|
217
|
+
}
|
|
218
|
+
// If not, create a new promise and cache it
|
|
219
|
+
cetusPoolPromise = (async () => {
|
|
220
|
+
try {
|
|
221
|
+
const suiClient = (0, client_js_1.getSuiClient)();
|
|
222
|
+
const o = await suiClient.getObject({
|
|
223
|
+
id: maps_js_1.cetusPoolMap[poolName.toUpperCase()],
|
|
224
|
+
options: {
|
|
225
|
+
showContent: true,
|
|
226
|
+
},
|
|
227
|
+
});
|
|
228
|
+
const cetusPool = o.data;
|
|
229
|
+
// Cache the pool object
|
|
230
|
+
cetusPoolCache.set(cacheKey, cetusPool);
|
|
231
|
+
return cetusPool;
|
|
232
|
+
}
|
|
233
|
+
catch (e) {
|
|
234
|
+
console.error(`getCetusPool failed for poolName: ${poolName}`);
|
|
235
|
+
return undefined;
|
|
236
|
+
}
|
|
237
|
+
finally {
|
|
238
|
+
// Remove the promise from the cache after it resolves
|
|
239
|
+
cetusPoolPromiseCache.delete(cacheKey);
|
|
240
|
+
}
|
|
241
|
+
})();
|
|
242
|
+
// Cache the promise
|
|
243
|
+
cetusPoolPromiseCache.set(cacheKey, cetusPoolPromise);
|
|
244
|
+
return cetusPoolPromise;
|
|
245
|
+
}
|
|
246
|
+
const cetusInvestorCache = new simpleCache_js_1.SimpleCache();
|
|
247
|
+
const cetusInvestorPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
248
|
+
async function getCetusInvestor(poolName, ignoreCache = false) {
|
|
249
|
+
const cacheKey = `investor_${maps_js_1.poolInfo[poolName.toUpperCase()].investorId}`;
|
|
250
|
+
if (ignoreCache) {
|
|
251
|
+
cetusInvestorCache.delete(cacheKey);
|
|
252
|
+
cetusInvestorPromiseCache.delete(cacheKey);
|
|
253
|
+
}
|
|
254
|
+
// Check if the investor is already in the cache
|
|
255
|
+
const cachedInvestor = cetusInvestorCache.get(cacheKey);
|
|
256
|
+
if (cachedInvestor) {
|
|
257
|
+
return cachedInvestor;
|
|
258
|
+
}
|
|
259
|
+
// Check if there is already a promise in the cache
|
|
260
|
+
let cetusInvestorPromise = cetusInvestorPromiseCache.get(cacheKey);
|
|
261
|
+
if (cetusInvestorPromise) {
|
|
262
|
+
return cetusInvestorPromise;
|
|
263
|
+
}
|
|
264
|
+
// If not, create a new promise and cache it
|
|
265
|
+
cetusInvestorPromise = (async () => {
|
|
266
|
+
try {
|
|
267
|
+
const suiClient = (0, client_js_1.getSuiClient)();
|
|
268
|
+
const o = await suiClient.getObject({
|
|
269
|
+
id: maps_js_1.poolInfo[poolName.toUpperCase()].investorId,
|
|
270
|
+
options: {
|
|
271
|
+
showContent: true,
|
|
272
|
+
},
|
|
273
|
+
});
|
|
274
|
+
const cetus_investor = o.data;
|
|
275
|
+
// Cache the investor object
|
|
276
|
+
cetusInvestorCache.set(cacheKey, cetus_investor);
|
|
277
|
+
return cetus_investor;
|
|
278
|
+
}
|
|
279
|
+
catch (e) {
|
|
280
|
+
console.error(`getCetusInvestor failed for pool: ${poolName}`);
|
|
281
|
+
return undefined;
|
|
282
|
+
}
|
|
283
|
+
finally {
|
|
284
|
+
// Remove the promise from the cache after it resolves
|
|
285
|
+
cetusInvestorPromiseCache.delete(cacheKey);
|
|
286
|
+
}
|
|
287
|
+
})();
|
|
288
|
+
// Cache the promise
|
|
289
|
+
cetusInvestorPromiseCache.set(cacheKey, cetusInvestorPromise);
|
|
290
|
+
return cetusInvestorPromise;
|
|
291
|
+
}
|
|
292
|
+
const naviInvestorCache = new simpleCache_js_1.SimpleCache();
|
|
293
|
+
const naviInvestorPromiseCache = new simpleCache_js_1.SimpleCache();
|
|
294
|
+
async function getNaviInvestor(poolName, ignoreCache = false) {
|
|
295
|
+
const cacheKey = `investor_${maps_js_1.poolInfo[poolName.toUpperCase()].investorId}`;
|
|
296
|
+
if (ignoreCache) {
|
|
297
|
+
naviInvestorCache.delete(cacheKey);
|
|
298
|
+
naviInvestorPromiseCache.delete(cacheKey);
|
|
299
|
+
}
|
|
300
|
+
// Check if the investor is already in the cache
|
|
301
|
+
const cachedInvestor = naviInvestorCache.get(cacheKey);
|
|
302
|
+
if (cachedInvestor) {
|
|
303
|
+
return cachedInvestor;
|
|
304
|
+
}
|
|
305
|
+
// Check if there is already a promise in the cache
|
|
306
|
+
let naviInvestorPromise = naviInvestorPromiseCache.get(cacheKey);
|
|
307
|
+
if (naviInvestorPromise) {
|
|
308
|
+
return naviInvestorPromise;
|
|
309
|
+
}
|
|
310
|
+
// If not, create a new promise and cache it
|
|
311
|
+
naviInvestorPromise = (async () => {
|
|
312
|
+
try {
|
|
313
|
+
const suiClient = (0, client_js_1.getSuiClient)();
|
|
314
|
+
const o = await suiClient.getObject({
|
|
315
|
+
id: maps_js_1.poolInfo[poolName.toUpperCase()].investorId,
|
|
316
|
+
options: {
|
|
317
|
+
showContent: true,
|
|
318
|
+
},
|
|
319
|
+
});
|
|
320
|
+
const navi_investor = o.data;
|
|
321
|
+
// Cache the investor object
|
|
322
|
+
naviInvestorCache.set(cacheKey, navi_investor);
|
|
323
|
+
return navi_investor;
|
|
324
|
+
}
|
|
325
|
+
catch (e) {
|
|
326
|
+
console.error(`getNaviInvestor failed for pool: ${poolName}`);
|
|
327
|
+
return undefined;
|
|
328
|
+
}
|
|
329
|
+
finally {
|
|
330
|
+
// Remove the promise from the cache after it resolves
|
|
331
|
+
naviInvestorPromiseCache.delete(cacheKey);
|
|
332
|
+
}
|
|
333
|
+
})();
|
|
334
|
+
// Cache the promise
|
|
335
|
+
naviInvestorPromiseCache.set(cacheKey, naviInvestorPromise);
|
|
336
|
+
return naviInvestorPromise;
|
|
337
|
+
}
|
|
338
|
+
const naviVoloExchangeRateCache = new simpleCache_js_1.SimpleCache();
|
|
339
|
+
const naviVoloExchangeRatePromiseCache = new simpleCache_js_1.SimpleCache();
|
|
340
|
+
async function fetchVoloExchangeRate(ignoreCache = false) {
|
|
341
|
+
const apiUrl = "https://open-api.naviprotocol.io/api/volo/stats";
|
|
342
|
+
let NaviVoloDetails;
|
|
343
|
+
if (ignoreCache) {
|
|
344
|
+
naviVoloExchangeRateCache.clear();
|
|
345
|
+
naviVoloExchangeRatePromiseCache.delete(apiUrl);
|
|
346
|
+
}
|
|
347
|
+
const cachedResponse = naviVoloExchangeRateCache.get(apiUrl);
|
|
348
|
+
if (cachedResponse) {
|
|
349
|
+
NaviVoloDetails = cachedResponse;
|
|
350
|
+
}
|
|
351
|
+
else {
|
|
352
|
+
let cachedPromise = naviVoloExchangeRatePromiseCache.get(apiUrl);
|
|
353
|
+
if (!cachedPromise) {
|
|
354
|
+
cachedPromise = fetch(apiUrl)
|
|
355
|
+
.then(async (response) => {
|
|
356
|
+
if (!response.ok) {
|
|
357
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
358
|
+
}
|
|
359
|
+
const data = (await response.json()); // Parse the JSON response
|
|
360
|
+
naviVoloExchangeRateCache.set(apiUrl, data); // Cache the response
|
|
361
|
+
naviVoloExchangeRatePromiseCache.delete(apiUrl); // Remove the promise from the cache
|
|
362
|
+
return data;
|
|
363
|
+
})
|
|
364
|
+
.catch((error) => {
|
|
365
|
+
naviVoloExchangeRatePromiseCache.delete(apiUrl); // Ensure the promise is removed on error
|
|
366
|
+
throw error;
|
|
367
|
+
});
|
|
368
|
+
naviVoloExchangeRatePromiseCache.set(apiUrl, cachedPromise);
|
|
369
|
+
NaviVoloDetails = await cachedPromise;
|
|
370
|
+
}
|
|
371
|
+
return cachedPromise;
|
|
372
|
+
}
|
|
373
|
+
return NaviVoloDetails;
|
|
374
|
+
}
|
|
375
|
+
//# sourceMappingURL=getReceipts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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 CoinAmounts,\n PoolName,\n PoolType,\n Receipt,\n SingleAssetPoolNames,\n NaviVoloData,\n} from \"../../index.js\";\nimport { cetusPoolMap, poolInfo } from \"../../common/maps.js\";\nimport { SimpleCache } from \"../../utils/simpleCache.js\";\nimport { ClmmPoolUtil, TickMath } from \"@cetusprotocol/cetus-sui-clmm-sdk\";\nimport BN from \"bn.js\";\nimport { Decimal } from \"decimal.js\";\nimport { getSuiClient } from \"../client.js\";\n\nconst receiptsCache = new SimpleCache<Receipt[]>();\nconst receiptsPromiseCache = new SimpleCache<Promise<Receipt[]>>();\nexport async function getReceipts(\n poolName: string,\n address: string,\n ignoreCache: boolean = false,\n): Promise<Receipt[]> {\n const suiClient = getSuiClient();\n const receiptsCacheKey = `getReceipts-${poolName}-${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\n let cachedPromise = receiptsPromiseCache.get(receiptsCacheKey);\n if (!cachedPromise) {\n cachedPromise = (async (): Promise<Receipt[]> => {\n // const first_package = conf[CONF_ENV].ALPHA_FIRST_PACKAGE_ID;\n let currentCursor: string | null | undefined = null;\n /* eslint-disable-next-line no-constant-condition */\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 showType: true,\n showContent: true,\n },\n });\n // Traverse the current page data and push to coins array\n\n paginatedObjects.data.forEach((obj) => {\n const o = obj.data as Receipt;\n if (o) {\n if (poolInfo[poolName].receiptName === o.content.fields.name) {\n nfts.push(o);\n }\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 break;\n }\n }\n receiptsCache.set(receiptsCacheKey, nfts);\n receiptsPromiseCache.delete(receiptsCacheKey);\n return nfts;\n })().catch((error) => {\n // TODO: Jugaad\n if (poolInfo[poolName].parentProtocolName === \"NAVI\") {\n return nfts;\n } else {\n receiptsPromiseCache.delete(receiptsCacheKey); // Remove the promise from cache\n throw error;\n }\n });\n receiptsPromiseCache.set(receiptsCacheKey, cachedPromise);\n }\n return cachedPromise;\n}\n\nconst poolExchangeRateCache = new SimpleCache<Decimal>();\n\nexport async function getPoolExchangeRate(\n poolName: PoolName,\n ignoreCache: boolean = false,\n): Promise<Decimal | undefined> {\n const poolExchangeRateCacheKey = `getPoolExchangeRate-${poolName}`;\n if (ignoreCache) {\n poolExchangeRateCache.delete(poolExchangeRateCacheKey);\n }\n const cachedResponse = poolExchangeRateCache.get(poolExchangeRateCacheKey);\n if (cachedResponse) {\n return cachedResponse;\n }\n\n let pool = undefined;\n try {\n if (poolName === \"ALPHA\") {\n pool = await getPool(\"ALPHA\");\n } else if (\n poolName === \"ALPHA-SUI\" ||\n poolName === \"USDT-USDC\" ||\n poolName === \"USDY-USDC\" ||\n poolName === \"HASUI-SUI\" ||\n poolName === \"USDC-SUI\" ||\n poolName === \"WETH-USDC\"\n ) {\n pool = await getPool(poolName);\n } else {\n pool = await getPool(poolName);\n }\n if (pool) {\n const xTokenSupply = new Decimal(pool.content.fields.xTokenSupply);\n let tokensInvested = new Decimal(pool.content.fields.tokensInvested);\n if (poolName == \"ALPHA\") {\n tokensInvested = new Decimal(pool.content.fields.alpha_bal);\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 undefined;\n }\n const poolExchangeRate = tokensInvested.div(xTokenSupply);\n\n poolExchangeRateCache.set(poolExchangeRateCacheKey, poolExchangeRate);\n\n return poolExchangeRate;\n }\n } catch (e) {\n console.error(`getPoolExchangeRate failed for poolName: ${poolName}`);\n }\n\n return undefined;\n}\n\nexport async function getCoinAmountsFromLiquidity(\n poolName: PoolName,\n liquidity: number,\n): Promise<[number, number]> {\n const cetus_pool = await getCetusPool(poolName);\n const cetusInvestor = await getCetusInvestor(poolName);\n\n const upper_bound = 443636;\n let lower_tick = Number(cetusInvestor!.content.fields.lower_tick);\n let upper_tick = Number(cetusInvestor!.content.fields.upper_tick);\n\n if (lower_tick > upper_bound) {\n lower_tick = -~(lower_tick - 1);\n }\n if (upper_tick > upper_bound) {\n upper_tick = -~(upper_tick - 1);\n }\n\n if (cetus_pool) {\n const liquidityInt = Math.floor(liquidity);\n const coin_amounts: CoinAmounts = ClmmPoolUtil.getCoinAmountFromLiquidity(\n new BN(`${liquidityInt}`),\n new BN(cetus_pool.content.fields.current_sqrt_price),\n TickMath.tickIndexToSqrtPriceX64(lower_tick),\n TickMath.tickIndexToSqrtPriceX64(upper_tick),\n true,\n );\n\n return [coin_amounts.coinA.toNumber(), coin_amounts.coinB.toNumber()];\n } else {\n return [0, 0];\n }\n}\n\nconst poolCache = new SimpleCache<PoolType | AlphaPoolType>();\nconst poolPromiseCache = new SimpleCache<\n Promise<PoolType | AlphaPoolType | undefined>\n>();\n\nexport async function getPool(\n poolName: string,\n ignoreCache: boolean = false,\n): Promise<PoolType | AlphaPoolType | undefined> {\n const cacheKey = `pool_${poolInfo[poolName.toUpperCase()].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\n // If not, create a new promise and cache it\n poolPromise = (async () => {\n const suiClient = getSuiClient();\n\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 (e) {\n console.error(`Error in getPool; poolName => ${poolName}`);\n return undefined;\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 cetusPoolCache = new SimpleCache<CetusPoolType>();\nconst cetusPoolPromiseCache = new SimpleCache<\n Promise<CetusPoolType | undefined>\n>();\n\nexport async function getCetusPool(\n poolName: string,\n ignoreCache: boolean = false,\n): Promise<CetusPoolType | undefined> {\n const cacheKey = `pool_${cetusPoolMap[poolName.toUpperCase()]}`;\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\n // If not, create a new promise and cache it\n cetusPoolPromise = (async () => {\n try {\n const suiClient = getSuiClient();\n\n const o = await suiClient.getObject({\n id: cetusPoolMap[poolName.toUpperCase()],\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 (e) {\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 cetusInvestorCache = new SimpleCache<CetusInvestor>();\nconst cetusInvestorPromiseCache = new SimpleCache<\n Promise<CetusInvestor | undefined>\n>();\n\nexport async function getCetusInvestor(\n poolName: PoolName,\n ignoreCache: boolean = false,\n): Promise<CetusInvestor | undefined> {\n const cacheKey = `investor_${poolInfo[poolName.toUpperCase()].investorId}`;\n if (ignoreCache) {\n cetusInvestorCache.delete(cacheKey);\n cetusInvestorPromiseCache.delete(cacheKey);\n }\n // Check if the investor is already in the cache\n const cachedInvestor = cetusInvestorCache.get(cacheKey);\n if (cachedInvestor) {\n return cachedInvestor;\n }\n\n // Check if there is already a promise in the cache\n let cetusInvestorPromise = cetusInvestorPromiseCache.get(cacheKey);\n if (cetusInvestorPromise) {\n return cetusInvestorPromise;\n }\n\n // If not, create a new promise and cache it\n cetusInvestorPromise = (async () => {\n try {\n const suiClient = getSuiClient();\n\n const o = await suiClient.getObject({\n id: poolInfo[poolName.toUpperCase()].investorId,\n options: {\n showContent: true,\n },\n });\n const cetus_investor = o.data as CetusInvestor;\n\n // Cache the investor object\n cetusInvestorCache.set(cacheKey, cetus_investor);\n return cetus_investor;\n } catch (e) {\n console.error(`getCetusInvestor failed for pool: ${poolName}`);\n return undefined;\n } finally {\n // Remove the promise from the cache after it resolves\n cetusInvestorPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n cetusInvestorPromiseCache.set(cacheKey, cetusInvestorPromise);\n return cetusInvestorPromise;\n}\n\nconst naviInvestorCache = new SimpleCache<\n NaviInvestor & CommonInvestorFields\n>();\nconst naviInvestorPromiseCache = new SimpleCache<\n Promise<(NaviInvestor & CommonInvestorFields) | undefined>\n>();\n\nexport async function getNaviInvestor(\n poolName: SingleAssetPoolNames,\n ignoreCache: boolean = false,\n): Promise<(NaviInvestor & CommonInvestorFields) | undefined> {\n const cacheKey = `investor_${poolInfo[poolName.toUpperCase()].investorId}`;\n if (ignoreCache) {\n naviInvestorCache.delete(cacheKey);\n naviInvestorPromiseCache.delete(cacheKey);\n }\n // Check if the investor is already in the cache\n const cachedInvestor = naviInvestorCache.get(cacheKey);\n if (cachedInvestor) {\n return cachedInvestor;\n }\n\n // Check if there is already a promise in the cache\n let naviInvestorPromise = naviInvestorPromiseCache.get(cacheKey);\n if (naviInvestorPromise) {\n return naviInvestorPromise;\n }\n\n // If not, create a new promise and cache it\n naviInvestorPromise = (async () => {\n try {\n const suiClient = getSuiClient();\n\n const o = await suiClient.getObject({\n id: poolInfo[poolName.toUpperCase()].investorId,\n options: {\n showContent: true,\n },\n });\n const navi_investor = o.data as NaviInvestor & CommonInvestorFields;\n\n // Cache the investor object\n naviInvestorCache.set(cacheKey, navi_investor);\n return navi_investor;\n } catch (e) {\n console.error(`getNaviInvestor failed for pool: ${poolName}`);\n return undefined;\n } finally {\n // Remove the promise from the cache after it resolves\n naviInvestorPromiseCache.delete(cacheKey);\n }\n })();\n\n // Cache the promise\n naviInvestorPromiseCache.set(cacheKey, naviInvestorPromise);\n return naviInvestorPromise;\n}\n\nconst naviVoloExchangeRateCache = new SimpleCache<NaviVoloData>();\nconst naviVoloExchangeRatePromiseCache = new SimpleCache<\n Promise<NaviVoloData>\n>();\n\nexport async function fetchVoloExchangeRate(\n ignoreCache: boolean = false,\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 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 }\n return cachedPromise;\n }\n\n return NaviVoloDetails;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,eAAO,MAAM,sBAAsB,EAAE,iBAAiB,EA2ElD,CAAC;AAEL,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EAoB/C,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.alphaDepositFilters = exports.nonAlphaDepositFilters = void 0;
|
|
4
|
+
const constants_js_1 = require("../../common/constants.js");
|
|
5
|
+
exports.nonAlphaDepositFilters = (function () {
|
|
6
|
+
const alphafi_cetus_pool_1filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_PACKAGE_IDS.map((id) => {
|
|
7
|
+
return {
|
|
8
|
+
MoveFunction: {
|
|
9
|
+
function: "user_deposit",
|
|
10
|
+
module: "alphafi_cetus_pool",
|
|
11
|
+
package: id,
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
});
|
|
15
|
+
const alphafi_cetus_pool_2filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_2_PACKAGE_IDS.map((id) => {
|
|
16
|
+
return {
|
|
17
|
+
MoveFunction: {
|
|
18
|
+
function: "user_deposit",
|
|
19
|
+
module: "alphafi_cetus_pool",
|
|
20
|
+
package: id,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
});
|
|
24
|
+
const alphafi_cetus_sui_pool_1filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_PACKAGE_IDS.map((id) => {
|
|
25
|
+
return {
|
|
26
|
+
MoveFunction: {
|
|
27
|
+
function: "user_deposit",
|
|
28
|
+
module: "alphafi_cetus_sui_pool",
|
|
29
|
+
package: id,
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
const alphafi_cetus_sui_pool_2filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_2_PACKAGE_IDS.map((id) => {
|
|
34
|
+
return {
|
|
35
|
+
MoveFunction: {
|
|
36
|
+
function: "user_deposit",
|
|
37
|
+
module: "alphafi_cetus_sui_pool",
|
|
38
|
+
package: id,
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
const alphafi_cetus_pool_base_a_1filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_PACKAGE_IDS.map((id) => {
|
|
43
|
+
return {
|
|
44
|
+
MoveFunction: {
|
|
45
|
+
function: "user_deposit",
|
|
46
|
+
module: "alphafi_cetus_pool_base_a",
|
|
47
|
+
package: id,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
});
|
|
51
|
+
const alphafi_cetus_pool_base_a_2filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_2_PACKAGE_IDS.map((id) => {
|
|
52
|
+
return {
|
|
53
|
+
MoveFunction: {
|
|
54
|
+
function: "user_deposit",
|
|
55
|
+
module: "alphafi_cetus_pool_base_a",
|
|
56
|
+
package: id,
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
});
|
|
60
|
+
return [
|
|
61
|
+
...alphafi_cetus_pool_1filters,
|
|
62
|
+
...alphafi_cetus_pool_2filters,
|
|
63
|
+
...alphafi_cetus_sui_pool_1filters,
|
|
64
|
+
...alphafi_cetus_sui_pool_2filters,
|
|
65
|
+
...alphafi_cetus_pool_base_a_1filters,
|
|
66
|
+
...alphafi_cetus_pool_base_a_2filters,
|
|
67
|
+
];
|
|
68
|
+
})();
|
|
69
|
+
exports.alphaDepositFilters = (function () {
|
|
70
|
+
const alpha1filters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_PACKAGE_IDS.map((id) => {
|
|
71
|
+
return {
|
|
72
|
+
MoveFunction: {
|
|
73
|
+
function: "user_deposit",
|
|
74
|
+
module: "alphapool",
|
|
75
|
+
package: id,
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
const alpha2fliters = constants_js_1.conf[constants_js_1.CONF_ENV].ALPHA_2_PACKAGE_IDS.map((id) => {
|
|
80
|
+
return {
|
|
81
|
+
MoveFunction: {
|
|
82
|
+
function: "user_deposit",
|
|
83
|
+
module: "alphapool",
|
|
84
|
+
package: id,
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
});
|
|
88
|
+
return [...alpha1filters, ...alpha2fliters];
|
|
89
|
+
})();
|
|
90
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/constants.ts"],"names":[],"mappings":"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","sourcesContent":["import { TransactionFilter } from \"@mysten/sui/client\";\nimport { conf, CONF_ENV } from \"../../common/constants.js\";\n\nexport const nonAlphaDepositFilters: TransactionFilter[] = (function () {\n const alphafi_cetus_pool_1filters = conf[CONF_ENV].ALPHA_PACKAGE_IDS.map(\n (id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphafi_cetus_pool\",\n package: id,\n },\n };\n },\n );\n const alphafi_cetus_pool_2filters = conf[CONF_ENV].ALPHA_2_PACKAGE_IDS.map(\n (id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphafi_cetus_pool\",\n package: id,\n },\n };\n },\n );\n const alphafi_cetus_sui_pool_1filters = conf[CONF_ENV].ALPHA_PACKAGE_IDS.map(\n (id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphafi_cetus_sui_pool\",\n package: id,\n },\n };\n },\n );\n const alphafi_cetus_sui_pool_2filters = conf[\n CONF_ENV\n ].ALPHA_2_PACKAGE_IDS.map((id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphafi_cetus_sui_pool\",\n package: id,\n },\n };\n });\n const alphafi_cetus_pool_base_a_1filters = conf[\n CONF_ENV\n ].ALPHA_PACKAGE_IDS.map((id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphafi_cetus_pool_base_a\",\n package: id,\n },\n };\n });\n const alphafi_cetus_pool_base_a_2filters = conf[\n CONF_ENV\n ].ALPHA_2_PACKAGE_IDS.map((id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphafi_cetus_pool_base_a\",\n package: id,\n },\n };\n });\n return [\n ...alphafi_cetus_pool_1filters,\n ...alphafi_cetus_pool_2filters,\n ...alphafi_cetus_sui_pool_1filters,\n ...alphafi_cetus_sui_pool_2filters,\n ...alphafi_cetus_pool_base_a_1filters,\n ...alphafi_cetus_pool_base_a_2filters,\n ] as TransactionFilter[];\n})();\n\nexport const alphaDepositFilters: TransactionFilter[] = (function () {\n const alpha1filters = conf[CONF_ENV].ALPHA_PACKAGE_IDS.map((id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphapool\",\n package: id,\n },\n };\n });\n const alpha2fliters = conf[CONF_ENV].ALPHA_2_PACKAGE_IDS.map((id) => {\n return {\n MoveFunction: {\n function: \"user_deposit\",\n module: \"alphapool\",\n package: id,\n },\n };\n });\n return [...alpha1filters, ...alpha2fliters] as TransactionFilter[];\n})();\n"]}
|
|
@@ -0,0 +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,CAoFxC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchTransactions = fetchTransactions;
|
|
4
|
+
const client_js_1 = require("../client.js");
|
|
5
|
+
async function fetchTransactions(params) {
|
|
6
|
+
let transactionBlocks = [];
|
|
7
|
+
const suiClient = (0, client_js_1.getSuiClient)();
|
|
8
|
+
for (const filter of params.filter) {
|
|
9
|
+
let hasNextPage = true;
|
|
10
|
+
let nextCursor = null;
|
|
11
|
+
while (hasNextPage) {
|
|
12
|
+
const res = await suiClient.queryTransactionBlocks({
|
|
13
|
+
cursor: nextCursor,
|
|
14
|
+
filter: filter,
|
|
15
|
+
options: {
|
|
16
|
+
showEffects: true,
|
|
17
|
+
showInput: true,
|
|
18
|
+
showObjectChanges: true,
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
if (res.data.length !== 0) {
|
|
22
|
+
const lastTx = res.data[res.data.length - 1];
|
|
23
|
+
const firstTx = res.data[0];
|
|
24
|
+
const laterTime = firstTx.timestampMs;
|
|
25
|
+
const earlierTime = lastTx.timestampMs;
|
|
26
|
+
if (Number(laterTime) < params.startTime) {
|
|
27
|
+
// Page beyond interval
|
|
28
|
+
hasNextPage = false;
|
|
29
|
+
break;
|
|
30
|
+
}
|
|
31
|
+
else if (Number(earlierTime) > params.endTime) {
|
|
32
|
+
// Page beyond interval
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
else if (Number(laterTime) > params.startTime &&
|
|
36
|
+
Number(laterTime) < params.endTime &&
|
|
37
|
+
Number(earlierTime) < params.startTime) {
|
|
38
|
+
// Page spills from interval startTime
|
|
39
|
+
for (let i = 0; i < res.data.length; i++) {
|
|
40
|
+
if (Number(res.data[i].timestampMs) > params.startTime) {
|
|
41
|
+
transactionBlocks.push(res.data[i]);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else if (Number(laterTime) > params.endTime &&
|
|
49
|
+
Number(earlierTime) > params.startTime &&
|
|
50
|
+
Number(earlierTime) < params.endTime) {
|
|
51
|
+
// Page spills from interval endTIme
|
|
52
|
+
for (let i = res.data.length - 1; i >= 0; i--) {
|
|
53
|
+
if (Number(res.data[i].timestampMs) < params.endTime) {
|
|
54
|
+
transactionBlocks.push(res.data[i]);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else if (Number(laterTime) > params.endTime &&
|
|
62
|
+
Number(earlierTime) < params.startTime) {
|
|
63
|
+
// Page spills from interval both bounds
|
|
64
|
+
for (let i = 0; i < res.data.length; i++) {
|
|
65
|
+
if (Number(res.data[i].timestampMs) > params.startTime &&
|
|
66
|
+
Number(res.data[i].timestampMs) < params.endTime) {
|
|
67
|
+
transactionBlocks.push(res.data[i]);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
// Page is in the interval
|
|
73
|
+
transactionBlocks = transactionBlocks.concat(res.data);
|
|
74
|
+
hasNextPage = res.hasNextPage;
|
|
75
|
+
nextCursor = res.nextCursor;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
// Empty result
|
|
80
|
+
transactionBlocks = transactionBlocks.concat(res.data);
|
|
81
|
+
hasNextPage = res.hasNextPage;
|
|
82
|
+
nextCursor = res.nextCursor;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return transactionBlocks;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=fetchTransactions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchTransactions.js","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/fetchTransactions.ts"],"names":[],"mappings":"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","sourcesContent":["import { getSuiClient } from \"../client.js\";\nimport { SuiTransactionBlockResponse } from \"@mysten/sui/client\";\nimport { FetchTransactionParams } from \"./types.js\";\n\nexport async function fetchTransactions(\n params: FetchTransactionParams,\n): Promise<SuiTransactionBlockResponse[]> {\n let transactionBlocks: SuiTransactionBlockResponse[] = [];\n const suiClient = getSuiClient();\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 showEffects: true,\n showInput: true,\n showObjectChanges: true,\n },\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 continue;\n } else if (\n Number(laterTime) > params.startTime &&\n Number(laterTime) < params.endTime &&\n Number(earlierTime) < params.startTime\n ) {\n // Page spills from interval startTime\n for (let i = 0; i < res.data.length; i++) {\n if (Number(res.data[i].timestampMs) > params.startTime) {\n transactionBlocks.push(res.data[i]);\n } else {\n break;\n }\n }\n } else if (\n Number(laterTime) > params.endTime &&\n Number(earlierTime) > params.startTime &&\n Number(earlierTime) < params.endTime\n ) {\n // Page spills from interval endTIme\n for (let i = res.data.length - 1; i >= 0; i--) {\n if (Number(res.data[i].timestampMs) < params.endTime) {\n transactionBlocks.push(res.data[i]);\n } else {\n break;\n }\n }\n } else if (\n Number(laterTime) > params.endTime &&\n Number(earlierTime) < params.startTime\n ) {\n // Page spills from interval both bounds\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 } else {\n // Page is in the interval\n transactionBlocks = transactionBlocks.concat(res.data);\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"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,IAAI,EAAE,WAAW,GAAG,YAAY,CAAC;CAClC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/sui-sdk/transactions/types.ts"],"names":[],"mappings":"","sourcesContent":["import { TransactionFilter } from \"@mysten/sui/client\";\n\nexport type FetchTransactionParams = {\n startTime: number;\n endTime: number;\n filter: TransactionFilter[];\n sort: \"ascending\" | \"descending\";\n};\n"]}
|