@hinkal/common 0.2.30 → 0.2.32
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/API/API.cjs +1 -1
- package/API/API.d.ts +26 -11
- package/API/API.mjs +103 -88
- package/API/callMonitor.cjs +1 -1
- package/API/callMonitor.d.ts +8 -0
- package/API/callMonitor.mjs +2 -2
- package/API/callRelayer.d.ts +4 -1
- package/API/dashboardAccountCalls.cjs +1 -0
- package/API/dashboardAccountCalls.d.ts +24 -0
- package/API/dashboardAccountCalls.mjs +10 -0
- package/API/dashboardAccountMemberCalls.cjs +1 -0
- package/API/dashboardAccountMemberCalls.d.ts +34 -0
- package/API/dashboardAccountMemberCalls.mjs +16 -0
- package/API/dashboardBalanceCalls.cjs +1 -0
- package/API/dashboardBalanceCalls.d.ts +12 -0
- package/API/dashboardBalanceCalls.mjs +13 -0
- package/API/dashboardContactCalls.cjs +1 -0
- package/API/dashboardContactCalls.d.ts +9 -0
- package/API/dashboardContactCalls.mjs +13 -0
- package/API/dashboardPayoutCalls.cjs +1 -0
- package/API/dashboardPayoutCalls.d.ts +14 -0
- package/API/dashboardPayoutCalls.mjs +13 -0
- package/API/dashboardTransactionCalls.cjs +1 -0
- package/API/dashboardTransactionCalls.d.ts +3 -0
- package/API/dashboardTransactionCalls.mjs +10 -0
- package/API/enclaveRecipientInfoCalls.cjs +1 -0
- package/API/enclaveRecipientInfoCalls.d.ts +14 -0
- package/API/enclaveRecipientInfoCalls.mjs +7 -0
- package/API/enclaveSignatureCalls.cjs +1 -1
- package/API/enclaveSignatureCalls.d.ts +3 -8
- package/API/enclaveSignatureCalls.mjs +6 -8
- package/API/enclaveUtxoCalls.cjs +1 -1
- package/API/enclaveUtxoCalls.d.ts +8 -2
- package/API/enclaveUtxoCalls.mjs +5 -3
- package/API/fetchCommitmentsCache.cjs +1 -1
- package/API/fetchCommitmentsCache.d.ts +1 -19
- package/API/fetchCommitmentsCache.mjs +9 -22
- package/API/getAnyRecipientInfo.d.ts +1 -0
- package/API/getServerURL.cjs +1 -1
- package/API/getServerURL.d.ts +3 -0
- package/API/getServerURL.mjs +15 -32
- package/API/getWebsiteURL.cjs +1 -1
- package/API/getWebsiteURL.d.ts +3 -2
- package/API/getWebsiteURL.mjs +12 -5
- package/API/index.cjs +1 -1
- package/API/index.d.ts +2 -0
- package/API/index.mjs +2 -0
- package/API/kycCalls.cjs +1 -1
- package/API/kycCalls.d.ts +0 -5
- package/API/kycCalls.mjs +3 -10
- package/API/privateSendRecipientInfoCalls.cjs +1 -1
- package/API/privateSendRecipientInfoCalls.d.ts +0 -10
- package/API/privateSendRecipientInfoCalls.mjs +2 -2
- package/API/scheduled-transactions-calls.cjs +1 -1
- package/API/scheduled-transactions-calls.d.ts +8 -2
- package/API/scheduled-transactions-calls.mjs +5 -4
- package/API/tenderly.api.cjs +1 -1
- package/API/tenderly.api.d.ts +1 -1
- package/API/tenderly.api.mjs +1 -1
- package/constants/addresses.constants.cjs +1 -1
- package/constants/addresses.constants.d.ts +10 -7
- package/constants/addresses.constants.mjs +11 -8
- package/constants/assets.constants.cjs +1 -1
- package/constants/assets.constants.mjs +1 -1
- package/constants/auth.constants.cjs +1 -0
- package/constants/auth.constants.d.ts +2 -0
- package/constants/auth.constants.mjs +4 -0
- package/constants/backend.constants.cjs +1 -1
- package/constants/backend.constants.d.ts +0 -1
- package/constants/backend.constants.mjs +0 -1
- package/constants/bridging.constants.cjs +1 -1
- package/constants/bridging.constants.d.ts +2 -0
- package/constants/bridging.constants.mjs +7 -3
- package/constants/chains.constants.cjs +1 -1
- package/constants/chains.constants.d.ts +25 -8
- package/constants/chains.constants.mjs +168 -127
- package/constants/coingecko.constants.cjs +1 -1
- package/constants/coingecko.constants.d.ts +5 -3
- package/constants/coingecko.constants.mjs +8 -5
- package/constants/contracts.constants.cjs +1 -1
- package/constants/contracts.constants.mjs +0 -4
- package/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-arbMainnet.json.mjs +125 -850
- package/constants/deploy-data/deploy-data-arcTestnet.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-arcTestnet.json.mjs +97 -1013
- package/constants/deploy-data/deploy-data-base.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-base.json.mjs +132 -869
- package/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-ethMainnet.json.mjs +132 -871
- package/constants/deploy-data/deploy-data-localhost.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-localhost.json.mjs +6 -808
- package/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-optimism.json.mjs +132 -869
- package/constants/deploy-data/deploy-data-optimismTest.json.cjs +1 -0
- package/constants/deploy-data/deploy-data-optimismTest.json.mjs +3565 -0
- package/constants/deploy-data/deploy-data-polygon.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-polygon.json.mjs +132 -869
- package/constants/deploy-data/deploy-data-sepoliaTestnet.json.cjs +1 -0
- package/constants/deploy-data/deploy-data-sepoliaTestnet.json.mjs +3561 -0
- package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-solana.json.mjs +1 -1
- package/constants/deploy-data/deploy-data-tempo.json.cjs +1 -0
- package/constants/deploy-data/deploy-data-tempo.json.mjs +3563 -0
- package/constants/deploy-data/deploy-data-tronMainnet.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-tronMainnet.json.mjs +133 -870
- package/constants/deploy-data/deploy-data-tronNile.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-tronNile.json.mjs +133 -870
- package/constants/deploy-data/index.d.ts +4 -1
- package/constants/events.constants.cjs +1 -1
- package/constants/events.constants.mjs +4 -1
- package/constants/fees.constants.cjs +1 -1
- package/constants/fees.constants.d.ts +5 -1
- package/constants/fees.constants.mjs +9 -5
- package/constants/index.cjs +1 -1
- package/constants/index.d.ts +2 -1
- package/constants/index.mjs +6 -2
- package/constants/kyc.constants.cjs +1 -1
- package/constants/kyc.constants.d.ts +1 -1
- package/constants/kyc.constants.mjs +38 -37
- package/constants/lifi.constants.cjs +1 -1
- package/constants/lifi.constants.d.ts +2 -0
- package/constants/lifi.constants.mjs +7 -2
- package/constants/mediaUrls.constants.cjs +1 -1
- package/constants/mediaUrls.constants.d.ts +7 -1
- package/constants/mediaUrls.constants.mjs +9 -3
- package/constants/price-impact.constants.cjs +1 -0
- package/constants/price-impact.constants.d.ts +2 -0
- package/constants/price-impact.constants.mjs +4 -0
- package/constants/protocol.constants.cjs +1 -1
- package/constants/protocol.constants.d.ts +4 -1
- package/constants/protocol.constants.mjs +2 -2
- package/constants/reorg-depths.constants.cjs +1 -1
- package/constants/reorg-depths.constants.d.ts +3 -1
- package/constants/reorg-depths.constants.mjs +3 -1
- package/constants/save-depths.cjs +1 -1
- package/constants/save-depths.d.ts +3 -1
- package/constants/save-depths.mjs +3 -1
- package/constants/server.constants.cjs +1 -1
- package/constants/server.constants.d.ts +33 -8
- package/constants/server.constants.mjs +44 -24
- package/constants/token-data/ERC20Registry.cjs +1 -1
- package/constants/token-data/ERC20Registry.mjs +20 -9
- package/constants/token-data/arbMainnetRegistry.json.cjs +1 -1
- package/constants/token-data/arbMainnetRegistry.json.mjs +24 -24
- package/constants/token-data/arbMainnetRegistryFixed.json.cjs +1 -1
- package/constants/token-data/arbMainnetRegistryFixed.json.mjs +24 -24
- package/constants/token-data/arcTestnetRegistry.json.cjs +1 -1
- package/constants/token-data/arcTestnetRegistry.json.mjs +3 -3
- package/constants/token-data/baseRegistry.json.cjs +1 -1
- package/constants/token-data/baseRegistry.json.mjs +20 -12
- package/constants/token-data/baseRegistryFixed.json.cjs +1 -1
- package/constants/token-data/baseRegistryFixed.json.mjs +18 -10
- package/constants/token-data/ethMainnetRegistry.json.cjs +1 -1
- package/constants/token-data/ethMainnetRegistry.json.mjs +38 -38
- package/constants/token-data/ethMainnetRegistryFixed.json.cjs +1 -1
- package/constants/token-data/ethMainnetRegistryFixed.json.mjs +38 -38
- package/constants/token-data/localhostRegistry.json.cjs +1 -1
- package/constants/token-data/localhostRegistry.json.mjs +211 -211
- package/constants/token-data/optimismRegistry.json.cjs +1 -1
- package/constants/token-data/optimismRegistry.json.mjs +36 -28
- package/constants/token-data/optimismRegistryFixed.json.cjs +1 -1
- package/constants/token-data/optimismRegistryFixed.json.mjs +36 -28
- package/constants/token-data/polygonRegistry.json.cjs +1 -1
- package/constants/token-data/polygonRegistry.json.mjs +34 -26
- package/constants/token-data/polygonRegistryFixed.json.cjs +1 -1
- package/constants/token-data/polygonRegistryFixed.json.mjs +34 -26
- package/constants/token-data/sepoliaTestnetRegistry.json.cjs +1 -0
- package/constants/token-data/sepoliaTestnetRegistry.json.mjs +21 -0
- package/constants/token-data/solanaMainnetRegistry.json.cjs +1 -1
- package/constants/token-data/solanaMainnetRegistry.json.mjs +1 -1
- package/constants/token-data/tempoRegistry.json.cjs +1 -0
- package/constants/token-data/tempoRegistry.json.mjs +37 -0
- package/constants/token-data/tronMainnetRegistry.json.cjs +1 -1
- package/constants/token-data/tronMainnetRegistry.json.mjs +26 -15
- package/constants/token-data/tronNileRegistry.json.cjs +1 -1
- package/constants/token-data/tronNileRegistry.json.mjs +2 -2
- package/constants/tokens.constants.cjs +1 -1
- package/constants/tokens.constants.d.ts +1 -0
- package/constants/tokens.constants.mjs +10 -3
- package/constants/vite.constants.cjs +1 -1
- package/constants/vite.constants.mjs +23 -5
- package/constants/wallet.constants.cjs +1 -1
- package/constants/wallet.constants.d.ts +1 -1
- package/constants/wallet.constants.mjs +2 -18
- package/crypto/babyJub.d.ts +1 -1
- package/crypto/ecdh-dual-path.cjs +1 -0
- package/crypto/ecdh-dual-path.d.ts +13 -0
- package/crypto/ecdh-dual-path.mjs +39 -0
- package/crypto/ecdh-sealed-keys.cjs +1 -0
- package/crypto/ecdh-sealed-keys.d.ts +22 -0
- package/crypto/ecdh-sealed-keys.mjs +33 -0
- package/crypto/ecdh.cjs +1 -0
- package/crypto/ecdh.d.ts +2 -0
- package/crypto/ecdh.mjs +9 -0
- package/crypto/eddsa.cjs +1 -0
- package/crypto/eddsa.d.ts +8 -0
- package/crypto/eddsa.mjs +12 -0
- package/crypto/index.cjs +1 -1
- package/crypto/index.d.ts +4 -0
- package/crypto/index.mjs +4 -0
- package/crypto/preProcessing.cjs +1 -1
- package/crypto/preProcessing.d.ts +1 -1
- package/crypto/preProcessing.mjs +10 -8
- package/data-structures/AccountActions/AccountActions.cjs +1 -1
- package/data-structures/AccountActions/AccountActions.mjs +3 -2
- package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
- package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +2 -3
- package/data-structures/Hinkal/Hinkal.cjs +1 -1
- package/data-structures/Hinkal/Hinkal.d.ts +16 -21
- package/data-structures/Hinkal/Hinkal.mjs +144 -160
- package/data-structures/Hinkal/IHinkal.d.ts +13 -19
- package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
- package/data-structures/Hinkal/handleAutoDepositBack.mjs +15 -15
- package/data-structures/Hinkal/hinkalClaimUtxo.cjs +1 -1
- package/data-structures/Hinkal/hinkalClaimUtxo.d.ts +1 -2
- package/data-structures/Hinkal/hinkalClaimUtxo.mjs +49 -47
- package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalDeposit.d.ts +5 -3
- package/data-structures/Hinkal/hinkalDeposit.mjs +106 -50
- package/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositAndBridge.d.ts +1 -1
- package/data-structures/Hinkal/hinkalDepositAndBridge.mjs +94 -87
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +3 -2
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +48 -48
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +41 -63
- package/data-structures/Hinkal/hinkalPalEvmDeposit.cjs +1 -0
- package/data-structures/Hinkal/hinkalPalEvmDeposit.d.ts +9 -0
- package/data-structures/Hinkal/hinkalPalEvmDeposit.mjs +19 -0
- package/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.cjs +1 -0
- package/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.d.ts +9 -0
- package/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.mjs +18 -0
- package/data-structures/Hinkal/hinkalPalTronDepositPrepare.cjs +1 -0
- package/data-structures/Hinkal/hinkalPalTronDepositPrepare.d.ts +9 -0
- package/data-structures/Hinkal/hinkalPalTronDepositPrepare.mjs +17 -0
- package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
- package/data-structures/Hinkal/hinkalPrivateWallet.mjs +46 -50
- package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +4 -1
- package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +84 -128
- package/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -0
- package/data-structures/Hinkal/hinkalProoflessDeposit.utils.d.ts +7 -0
- package/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +51 -0
- package/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +1 -0
- package/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.d.ts +6 -0
- package/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +128 -0
- package/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaClaimUtxo.d.ts +2 -2
- package/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +68 -69
- package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +4 -3
- package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +96 -57
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +20 -2
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +114 -122
- package/data-structures/Hinkal/hinkalSolanaProoflessDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProoflessDeposit.d.ts +1 -1
- package/data-structures/Hinkal/hinkalSolanaProoflessDeposit.mjs +12 -17
- package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +38 -40
- package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +4 -3
- package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +68 -52
- package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaSwap.d.ts +2 -2
- package/data-structures/Hinkal/hinkalSolanaSwap.mjs +67 -72
- package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +2 -1
- package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +56 -61
- package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +38 -48
- package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSwap.mjs +32 -42
- package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
- package/data-structures/Hinkal/hinkalTransfer.mjs +41 -54
- package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalWithdraw.mjs +43 -56
- package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
- package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +87 -108
- package/data-structures/Hinkal/index.cjs +1 -1
- package/data-structures/Hinkal/index.d.ts +5 -0
- package/data-structures/Hinkal/index.mjs +5 -0
- package/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +1 -0
- package/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.d.ts +22 -0
- package/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +34 -0
- package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/data-structures/Hinkal/resetMerkleTrees.mjs +33 -40
- package/data-structures/IndexedDB/activity-db.cjs +1 -1
- package/data-structures/IndexedDB/activity-db.mjs +25 -24
- package/data-structures/IndexedDB/contact-db.cjs +1 -1
- package/data-structures/IndexedDB/contact-db.d.ts +1 -0
- package/data-structures/IndexedDB/contact-db.mjs +30 -16
- package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs +1 -1
- package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.d.ts +1 -1
- package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs +4 -4
- package/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
- package/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +37 -34
- package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
- package/data-structures/TokenDBs/EventsPublicTokensDB.d.ts +2 -0
- package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +65 -50
- package/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
- package/data-structures/TokenDBs/PrivateTokensDB.mjs +2 -1
- package/data-structures/WalletManager/WalletManager.cjs +1 -0
- package/data-structures/WalletManager/WalletManager.d.ts +51 -0
- package/data-structures/WalletManager/WalletManager.mjs +99 -0
- package/data-structures/WalletManager/index.cjs +1 -0
- package/data-structures/WalletManager/index.d.ts +1 -0
- package/data-structures/WalletManager/index.mjs +1 -0
- package/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
- package/data-structures/crypto-keys/decodeUTXO.d.ts +5 -3
- package/data-structures/crypto-keys/decodeUTXO.mjs +49 -46
- package/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
- package/data-structures/crypto-keys/encryptDecryptUtxo.mjs +32 -40
- package/data-structures/crypto-keys/keys.cjs +1 -1
- package/data-structures/crypto-keys/keys.d.ts +51 -24
- package/data-structures/crypto-keys/keys.mjs +104 -43
- package/data-structures/custom-token-registry/CustomTokenRegistry.cjs +1 -1
- package/data-structures/custom-token-registry/CustomTokenRegistry.mjs +2 -2
- package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +2 -2
- package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +4 -4
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +1 -1
- package/data-structures/event-service/helpers/ClientEventHelper.cjs +1 -1
- package/data-structures/event-service/helpers/ClientEventHelper.mjs +3 -3
- package/data-structures/event-service/helpers/PollingEventHelper.cjs +1 -1
- package/data-structures/event-service/helpers/PollingEventHelper.d.ts +2 -0
- package/data-structures/event-service/helpers/PollingEventHelper.mjs +7 -3
- package/data-structures/event-service/index.cjs +1 -1
- package/data-structures/event-service/index.d.ts +0 -3
- package/data-structures/event-service/index.mjs +0 -3
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +1 -1
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +2 -2
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +5 -5
- package/data-structures/index.cjs +1 -1
- package/data-structures/index.d.ts +1 -0
- package/data-structures/index.mjs +10 -10
- package/data-structures/merkle-tree/index.cjs +1 -1
- package/data-structures/merkle-tree/index.d.ts +0 -1
- package/data-structures/merkle-tree/index.mjs +0 -1
- package/data-structures/provider-adapter/IProviderAdapter.d.ts +6 -0
- package/data-structures/snapshot/SnapshotFetcherService.cjs +1 -1
- package/data-structures/snapshot/SnapshotFetcherService.d.ts +0 -2
- package/data-structures/snapshot/SnapshotFetcherService.mjs +0 -6
- package/data-structures/snapshot/index.cjs +1 -1
- package/data-structures/snapshot/index.d.ts +0 -3
- package/data-structures/snapshot/index.mjs +0 -3
- package/data-structures/utxo/Utxo.cjs +1 -1
- package/data-structures/utxo/Utxo.d.ts +16 -10
- package/data-structures/utxo/Utxo.mjs +40 -38
- package/error-handling/customErrors/HttpError.cjs +1 -0
- package/error-handling/customErrors/HttpError.d.ts +4 -0
- package/error-handling/customErrors/HttpError.mjs +8 -0
- package/error-handling/customErrors/index.cjs +1 -1
- package/error-handling/customErrors/index.d.ts +1 -0
- package/error-handling/customErrors/index.mjs +1 -0
- package/error-handling/error-codes.constants.cjs +1 -1
- package/error-handling/error-codes.constants.d.ts +11 -0
- package/error-handling/error-codes.constants.mjs +13 -2
- package/error-handling/index.cjs +1 -1
- package/error-handling/index.mjs +1 -0
- package/error-handling/retrySolanaError.cjs +1 -0
- package/error-handling/retrySolanaError.d.ts +1 -0
- package/error-handling/retrySolanaError.mjs +4 -0
- package/externalABIs/index.cjs +1 -1
- package/externalABIs/index.d.ts +1 -16
- package/externalABIs/index.mjs +4 -5
- package/functions/auto-deposit-back-helpers/get-gas-token-records.d.ts +1 -1
- package/functions/auto-deposit-back-helpers/get-tokens-to-deposit-back.d.ts +1 -1
- package/functions/index.cjs +1 -1
- package/functions/index.mjs +28 -19
- package/functions/kyc/checkTokenLimitsUSD.cjs +1 -1
- package/functions/kyc/checkTokenLimitsUSD.mjs +15 -15
- package/functions/kyc/index.cjs +1 -1
- package/functions/kyc/index.d.ts +0 -1
- package/functions/kyc/index.mjs +0 -1
- package/functions/pre-transaction/addressTableLookup.cjs +1 -1
- package/functions/pre-transaction/addressTableLookup.mjs +21 -18
- package/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -0
- package/functions/pre-transaction/buildCommitmentValidationData.d.ts +4 -0
- package/functions/pre-transaction/buildCommitmentValidationData.mjs +58 -0
- package/functions/pre-transaction/calculateSolanaNullifierCount.cjs +1 -0
- package/functions/pre-transaction/calculateSolanaNullifierCount.d.ts +2 -0
- package/functions/pre-transaction/calculateSolanaNullifierCount.mjs +23 -0
- package/functions/pre-transaction/constructAdminData.cjs +1 -1
- package/functions/pre-transaction/constructAdminData.mjs +4 -4
- package/functions/pre-transaction/index.cjs +1 -1
- package/functions/pre-transaction/index.d.ts +2 -3
- package/functions/pre-transaction/index.mjs +3 -4
- package/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
- package/functions/pre-transaction/outputUtxoProcessing.d.ts +1 -1
- package/functions/pre-transaction/outputUtxoProcessing.mjs +22 -19
- package/functions/pre-transaction/recipientUtxoProcessing.cjs +1 -1
- package/functions/pre-transaction/recipientUtxoProcessing.mjs +11 -9
- package/functions/pre-transaction/sendInitNullifiersTransaction.cjs +1 -1
- package/functions/pre-transaction/sendInitNullifiersTransaction.mjs +9 -9
- package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
- package/functions/pre-transaction/sendV0Transaction.mjs +45 -43
- package/functions/pre-transaction/solana-public-signals.cjs +1 -1
- package/functions/pre-transaction/solana-public-signals.d.ts +7 -6
- package/functions/pre-transaction/solana-public-signals.mjs +22 -19
- package/functions/pre-transaction/solana.cjs +1 -1
- package/functions/pre-transaction/solana.d.ts +0 -4
- package/functions/pre-transaction/solana.mjs +7 -27
- package/functions/pre-transaction/store-proof.cjs +1 -1
- package/functions/pre-transaction/store-proof.mjs +3 -3
- package/functions/private-wallet/emporium.helpers.cjs +1 -1
- package/functions/private-wallet/emporium.helpers.d.ts +14 -4
- package/functions/private-wallet/emporium.helpers.mjs +84 -74
- package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
- package/functions/private-wallet/emporium.swap.helpers.mjs +6 -6
- package/functions/snarkjs/common.snarkjs.cjs +1 -1
- package/functions/snarkjs/common.snarkjs.d.ts +8 -13
- package/functions/snarkjs/common.snarkjs.mjs +65 -74
- package/functions/snarkjs/constant.cjs +1 -1
- package/functions/snarkjs/constant.d.ts +146 -426
- package/functions/snarkjs/constant.mjs +149 -430
- package/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
- package/functions/snarkjs/constructGeneralZkProof.d.ts +2 -3
- package/functions/snarkjs/constructGeneralZkProof.mjs +74 -57
- package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
- package/functions/snarkjs/constructSolanaZkProof.d.ts +1 -2
- package/functions/snarkjs/constructSolanaZkProof.mjs +65 -37
- package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
- package/functions/snarkjs/fetchMerkleTreeSiblings.d.ts +1 -1
- package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +6 -10
- package/functions/snarkjs/fetchOnChainRootHashes.cjs +1 -1
- package/functions/snarkjs/fetchOnChainRootHashes.d.ts +0 -1
- package/functions/snarkjs/fetchOnChainRootHashes.mjs +22 -7
- package/functions/snarkjs/generateCircomData.cjs +1 -1
- package/functions/snarkjs/generateCircomData.d.ts +2 -2
- package/functions/snarkjs/generateCircomData.mjs +29 -31
- package/functions/snarkjs/generateZkProof.cjs +1 -1
- package/functions/snarkjs/generateZkProof.mjs +20 -10
- package/functions/snarkjs/generateZkProofEnclave.cjs +1 -1
- package/functions/snarkjs/generateZkProofEnclave.mjs +15 -18
- package/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
- package/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -9
- package/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +40 -94
- package/functions/snarkjs/getZKFiles.cjs +1 -1
- package/functions/snarkjs/getZKFiles.d.ts +1 -0
- package/functions/snarkjs/getZKFiles.mjs +2 -2
- package/functions/snarkjs/index.cjs +1 -1
- package/functions/snarkjs/index.d.ts +2 -1
- package/functions/snarkjs/index.mjs +2 -1
- package/functions/snarkjs/signedMessageHash.cjs +1 -0
- package/functions/snarkjs/signedMessageHash.d.ts +31 -0
- package/functions/snarkjs/signedMessageHash.mjs +49 -0
- package/functions/snarkjs/verifyCommitmentValidationData.cjs +1 -0
- package/functions/snarkjs/verifyCommitmentValidationData.d.ts +4 -0
- package/functions/snarkjs/verifyCommitmentValidationData.mjs +43 -0
- package/functions/utils/addresses.cjs +1 -1
- package/functions/utils/addresses.d.ts +2 -0
- package/functions/utils/addresses.mjs +12 -8
- package/functions/utils/aggregateTokenAmounts.cjs +1 -0
- package/functions/utils/aggregateTokenAmounts.d.ts +2 -0
- package/functions/utils/aggregateTokenAmounts.mjs +26 -0
- package/functions/utils/amounts.utils.cjs +1 -1
- package/functions/utils/amounts.utils.d.ts +0 -1
- package/functions/utils/amounts.utils.mjs +18 -18
- package/functions/utils/auth.utils.cjs +1 -0
- package/functions/utils/auth.utils.d.ts +5 -0
- package/functions/utils/auth.utils.mjs +7 -0
- package/functions/utils/bit.operations.cjs +1 -0
- package/functions/utils/bit.operations.d.ts +3 -0
- package/functions/utils/bit.operations.mjs +4 -0
- package/functions/utils/buildClaimableDepositPlan.cjs +1 -1
- package/functions/utils/buildClaimableDepositPlan.d.ts +3 -2
- package/functions/utils/buildClaimableDepositPlan.mjs +32 -24
- package/functions/utils/cacheFunctions.cjs +1 -1
- package/functions/utils/cacheFunctions.d.ts +0 -4
- package/functions/utils/cacheFunctions.mjs +33 -47
- package/functions/utils/create-provider.cjs +1 -1
- package/functions/utils/create-provider.d.ts +2 -3
- package/functions/utils/create-provider.mjs +9 -9
- package/functions/utils/customEnclaveFunctionsRegister.cjs +1 -0
- package/functions/utils/customEnclaveFunctionsRegister.d.ts +18 -0
- package/functions/utils/customEnclaveFunctionsRegister.mjs +8 -0
- package/functions/utils/deposit-claimable.utils.cjs +1 -0
- package/functions/utils/deposit-claimable.utils.d.ts +6 -0
- package/functions/utils/deposit-claimable.utils.mjs +106 -0
- package/functions/utils/dispatchBalanceRefreshes.cjs +1 -0
- package/functions/utils/dispatchBalanceRefreshes.d.ts +4 -0
- package/functions/utils/dispatchBalanceRefreshes.mjs +44 -0
- package/functions/utils/enclave-recipient-info-storage.cjs +1 -0
- package/functions/utils/enclave-recipient-info-storage.d.ts +2 -0
- package/functions/utils/enclave-recipient-info-storage.mjs +17 -0
- package/functions/utils/enclave-signature-storage.cjs +1 -1
- package/functions/utils/enclave-signature-storage.d.ts +1 -2
- package/functions/utils/enclave-signature-storage.mjs +6 -9
- package/functions/utils/enclave-utxo-storage.cjs +1 -1
- package/functions/utils/enclave-utxo-storage.d.ts +3 -2
- package/functions/utils/enclave-utxo-storage.mjs +18 -21
- package/functions/utils/encodeTokenWithId.cjs +1 -1
- package/functions/utils/encodeTokenWithId.mjs +1 -1
- package/functions/utils/encryptInputForEnclave.cjs +1 -1
- package/functions/utils/encryptInputForEnclave.mjs +17 -23
- package/functions/utils/enum.utils.cjs +1 -0
- package/functions/utils/enum.utils.mjs +12 -0
- package/functions/utils/erc20tokenFunctions.cjs +1 -1
- package/functions/utils/erc20tokenFunctions.d.ts +2 -0
- package/functions/utils/erc20tokenFunctions.mjs +26 -16
- package/functions/utils/evmNetworkFunctions.d.ts +1 -2
- package/functions/utils/fees.utils.cjs +1 -1
- package/functions/utils/fees.utils.d.ts +2 -1
- package/functions/utils/fees.utils.mjs +30 -16
- package/functions/utils/formatter.cjs +1 -0
- package/functions/utils/formatter.d.ts +1 -0
- package/functions/utils/formatter.mjs +15 -0
- package/functions/utils/getBlockExplorerUrl.cjs +1 -1
- package/functions/utils/getBlockExplorerUrl.mjs +1 -1
- package/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
- package/functions/utils/getRecipientInfoFromUserKeys.d.ts +2 -0
- package/functions/utils/getRecipientInfoFromUserKeys.mjs +14 -9
- package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
- package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -0
- package/functions/utils/getUtxosFromReceipt.utils.mjs +43 -27
- package/functions/utils/getUtxosFromReceiptSolana.cjs +1 -1
- package/functions/utils/getUtxosFromReceiptSolana.d.ts +1 -0
- package/functions/utils/getUtxosFromReceiptSolana.mjs +36 -21
- package/functions/utils/getWalletGroupKey.utils.cjs +1 -1
- package/functions/utils/getWalletGroupKey.utils.mjs +4 -1
- package/functions/utils/index.cjs +1 -1
- package/functions/utils/index.d.ts +14 -1
- package/functions/utils/index.mjs +21 -9
- package/functions/utils/lifi.utils.cjs +1 -0
- package/functions/utils/lifi.utils.d.ts +3 -0
- package/functions/utils/lifi.utils.mjs +30 -0
- package/functions/utils/mnemonics.cjs +1 -0
- package/functions/utils/mnemonics.d.ts +1 -0
- package/functions/utils/mnemonics.mjs +8 -0
- package/functions/utils/pay-routing.utils.cjs +1 -0
- package/functions/utils/pay-routing.utils.d.ts +4 -0
- package/functions/utils/pay-routing.utils.mjs +17 -0
- package/functions/utils/prepareHinkal.cjs +1 -1
- package/functions/utils/prepareHinkal.mjs +29 -29
- package/functions/utils/publicBalance.utils.cjs +1 -1
- package/functions/utils/publicBalance.utils.mjs +5 -5
- package/functions/utils/serialize-utxos.utils.cjs +1 -1
- package/functions/utils/serialize-utxos.utils.mjs +6 -2
- package/functions/utils/solana-memo.cjs +1 -0
- package/functions/utils/solana-memo.d.ts +3 -0
- package/functions/utils/solana-memo.mjs +15 -0
- package/functions/utils/solanaSendPreflight.utils.cjs +1 -0
- package/functions/utils/solanaSendPreflight.utils.d.ts +6 -0
- package/functions/utils/solanaSendPreflight.utils.mjs +21 -0
- package/functions/utils/string.utils.cjs +1 -1
- package/functions/utils/string.utils.mjs +1 -1
- package/functions/utils/time.utils.cjs +1 -1
- package/functions/utils/time.utils.d.ts +6 -0
- package/functions/utils/time.utils.mjs +23 -16
- package/functions/utils/token-check.utils.cjs +1 -1
- package/functions/utils/token-check.utils.d.ts +1 -0
- package/functions/utils/token-check.utils.mjs +9 -8
- package/functions/utils/transfer-claimable.utils.cjs +1 -0
- package/functions/utils/transfer-claimable.utils.d.ts +9 -0
- package/functions/utils/transfer-claimable.utils.mjs +93 -0
- package/functions/utils/tron.utils.cjs +1 -1
- package/functions/utils/tron.utils.d.ts +11 -1
- package/functions/utils/tron.utils.mjs +85 -40
- package/functions/utils/tx-confirmation.utils.cjs +1 -1
- package/functions/utils/tx-confirmation.utils.d.ts +1 -1
- package/functions/utils/tx-confirmation.utils.mjs +5 -5
- package/functions/utils/userAgent.cjs +1 -1
- package/functions/utils/userAgent.d.ts +1 -0
- package/functions/utils/userAgent.mjs +4 -1
- package/functions/web3/connectors.utils.cjs +1 -1
- package/functions/web3/connectors.utils.d.ts +1 -0
- package/functions/web3/connectors.utils.mjs +5 -2
- package/functions/web3/events/balanceChangedHandler.cjs +1 -1
- package/functions/web3/events/balanceChangedHandler.d.ts +2 -1
- package/functions/web3/events/balanceChangedHandler.mjs +3 -3
- package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
- package/functions/web3/events/getInputUtxoAndBalance.d.ts +1 -1
- package/functions/web3/events/getInputUtxoAndBalance.mjs +21 -20
- package/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
- package/functions/web3/events/getInputUtxosEnclave.d.ts +2 -1
- package/functions/web3/events/getInputUtxosEnclave.mjs +25 -18
- package/functions/web3/events/getShieldedBalance.cjs +1 -1
- package/functions/web3/events/getShieldedBalance.mjs +15 -17
- package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
- package/functions/web3/events/getTransactionLogEvents.d.ts +8 -5
- package/functions/web3/events/getTransactionLogEvents.mjs +1 -1
- package/functions/web3/events/index.cjs +1 -1
- package/functions/web3/events/index.d.ts +0 -2
- package/functions/web3/events/index.mjs +0 -2
- package/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
- package/functions/web3/functionCalls/constructBatchCall.d.ts +1 -0
- package/functions/web3/functionCalls/constructBatchCall.mjs +10 -2
- package/functions/web3/functionCalls/transactCallDirectTron.cjs +1 -1
- package/functions/web3/functionCalls/transactCallDirectTron.d.ts +4 -1
- package/functions/web3/functionCalls/transactCallDirectTron.mjs +89 -55
- package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
- package/functions/web3/functionCalls/transactCallRelayer.d.ts +5 -4
- package/functions/web3/functionCalls/transactCallRelayer.mjs +17 -13
- package/functions/web3/getContractMetadata.cjs +1 -1
- package/functions/web3/getContractMetadata.mjs +1 -1
- package/functions/web3/getTokenHolder.cjs +1 -1
- package/functions/web3/getTokenHolder.mjs +1 -1
- package/functions/web3/index.cjs +1 -1
- package/functions/web3/index.d.ts +0 -1
- package/functions/web3/index.mjs +0 -3
- package/functions/web3/lifiAPI.cjs +1 -1
- package/functions/web3/lifiAPI.mjs +28 -19
- package/functions/web3/oneInchAPI.cjs +1 -1
- package/functions/web3/oneInchAPI.mjs +1 -1
- package/index.cjs +1 -1
- package/index.mjs +331 -309
- package/package.json +5 -2
- package/providers/EthersProviderAdapter.cjs +1 -1
- package/providers/EthersProviderAdapter.mjs +1 -1
- package/providers/SolanaProviderAdapter.cjs +1 -1
- package/providers/SolanaProviderAdapter.d.ts +10 -1
- package/providers/SolanaProviderAdapter.mjs +38 -2
- package/providers/TronProviderAdapter.cjs +1 -1
- package/providers/TronProviderAdapter.mjs +2 -2
- package/providers/WagmiProviderAdapter.cjs +1 -1
- package/providers/WagmiProviderAdapter.d.ts +3 -1
- package/providers/WagmiProviderAdapter.mjs +62 -52
- package/providers/prepareSolanaHinkal.cjs +1 -1
- package/providers/prepareSolanaHinkal.mjs +3 -3
- package/types/admin.types.cjs +1 -1
- package/types/admin.types.d.ts +1 -8
- package/types/admin.types.mjs +1 -1
- package/types/cache.types.cjs +1 -1
- package/types/cache.types.d.ts +2 -1
- package/types/cache.types.mjs +1 -1
- package/types/chains.types.cjs +1 -0
- package/types/chains.types.d.ts +11 -0
- package/types/chains.types.mjs +8 -0
- package/types/circom-data.types.d.ts +13 -0
- package/types/commitments.types.d.ts +0 -6
- package/types/contacts.types.d.ts +1 -0
- package/types/dashboard-account.cjs +1 -0
- package/types/dashboard-account.d.ts +101 -0
- package/types/dashboard-account.mjs +8 -0
- package/types/dashboard-payout.types.cjs +1 -0
- package/types/dashboard-payout.types.d.ts +29 -0
- package/types/dashboard-payout.types.mjs +8 -0
- package/types/dashboard-transaction.types.d.ts +22 -0
- package/types/ethereum-network.types.cjs +1 -1
- package/types/ethereum-network.types.d.ts +15 -18
- package/types/ethereum-network.types.mjs +1 -1
- package/types/events.types.cjs +1 -1
- package/types/events.types.d.ts +2 -3
- package/types/events.types.mjs +1 -1
- package/types/external-action.types.cjs +1 -1
- package/types/external-action.types.d.ts +2 -1
- package/types/external-action.types.mjs +1 -1
- package/types/hinkal.types.cjs +1 -1
- package/types/hinkal.types.d.ts +6 -17
- package/types/hinkal.types.mjs +16 -18
- package/types/index.cjs +1 -1
- package/types/index.d.ts +6 -0
- package/types/index.mjs +3 -0
- package/types/pay-activities.types.d.ts +3 -0
- package/types/pay-routing.types.d.ts +9 -0
- package/types/scheduled-transactions.types.d.ts +7 -0
- package/types/solana.types.d.ts +5 -6
- package/types/token-prices.types.d.ts +4 -0
- package/types/transaction.types.d.ts +1 -3
- package/webworker/WorkerWrapper.cjs +1 -0
- package/webworker/WorkerWrapper.d.ts +9 -0
- package/webworker/WorkerWrapper.mjs +22 -0
- package/webworker/logError-fCJ4HXQz.js +22 -0
- package/webworker/package.json +112 -0
- package/webworker/performTaskWithWorker.cjs +1 -1
- package/webworker/performTaskWithWorker.mjs +4 -4
- package/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
- package/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
- package/webworker/snarkjsWorker/snarkjsWorkerLogic.d.ts +0 -3
- package/webworker/snarkjsWorker/snarkjsWorkerNode.d.ts +0 -0
- package/webworker/snarkjsWorkerNode.cjs +3 -0
- package/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLogic.d.ts +0 -3
- package/webworker/utxoWorker/utxoWorkerNode.d.ts +0 -0
- package/webworker/utxoWorkerNode.cjs +1 -0
- package/webworker/viteWorkerURL.constant.cjs +4 -4
- package/webworker/viteWorkerURL.constant.mjs +4 -4
- package/webworker/worker.registry.cjs +1 -1
- package/webworker/worker.registry.mjs +6 -3
- package/webworker/workerFactory.cjs +1 -1
- package/webworker/workerFactory.d.ts +4 -1
- package/webworker/workerFactory.mjs +31 -17
- package/webworker/workerProxy-BNBqYien.js +130 -0
- package/webworker/workerProxy.d.ts +1 -1
- package/webworker/workerThreadsPatch.d.ts +1 -0
- package/webworker/zkProofWorker/zkProofWorker.types.cjs +1 -1
- package/webworker/zkProofWorker/zkProofWorker.types.d.ts +3 -13
- package/webworker/zkProofWorker/zkProofWorker.types.mjs +1 -1
- package/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
- package/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
- package/webworker/zkProofWorker/zkProofWorkerLogic.d.ts +1 -5
- package/webworker/zkProofWorker/zkProofWorkerNode.d.ts +0 -0
- package/webworker/zkProofWorkerNode.cjs +1 -0
- package/API/solana-calls.cjs +0 -1
- package/API/solana-calls.d.ts +0 -38
- package/API/solana-calls.mjs +0 -8
- package/constants/non-circular-tokens.constants.cjs +0 -1
- package/constants/non-circular-tokens.constants.d.ts +0 -1
- package/constants/non-circular-tokens.constants.mjs +0 -4
- package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.cjs +0 -1
- package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.d.ts +0 -3
- package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.mjs +0 -15
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +0 -1
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.d.ts +0 -4
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +0 -18
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +0 -1
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +0 -35
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +0 -75
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +0 -1
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +0 -30
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +0 -81
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +0 -1
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +0 -35
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +0 -76
- package/data-structures/merkle-tree/getPatchedAccessTokenMerkleTree.cjs +0 -1
- package/data-structures/merkle-tree/getPatchedAccessTokenMerkleTree.d.ts +0 -2
- package/data-structures/merkle-tree/getPatchedAccessTokenMerkleTree.mjs +0 -13
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +0 -1
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.d.ts +0 -8
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +0 -29
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +0 -1
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.d.ts +0 -8
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +0 -30
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +0 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.d.ts +0 -8
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +0 -26
- package/externalABIs/transactionsProver.json.cjs +0 -1
- package/externalABIs/transactionsProver.json.mjs +0 -43
- package/functions/pre-transaction/getKycAndSignatureData.cjs +0 -1
- package/functions/pre-transaction/getKycAndSignatureData.d.ts +0 -5
- package/functions/pre-transaction/getKycAndSignatureData.mjs +0 -12
- package/functions/pre-transaction/getSignatureDataForTransact.cjs +0 -1
- package/functions/pre-transaction/getSignatureDataForTransact.d.ts +0 -3
- package/functions/pre-transaction/getSignatureDataForTransact.mjs +0 -6
- package/functions/pre-transaction/initTokenLimitIfNeeded.cjs +0 -1
- package/functions/pre-transaction/initTokenLimitIfNeeded.d.ts +0 -3
- package/functions/pre-transaction/initTokenLimitIfNeeded.mjs +0 -17
- package/functions/pre-transaction/outputApprovalDataProcessing.cjs +0 -1
- package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +0 -10
- package/functions/pre-transaction/outputApprovalDataProcessing.mjs +0 -22
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +0 -1
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +0 -6
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +0 -11
- package/functions/snarkjs/constructEmporiumProof.cjs +0 -1
- package/functions/snarkjs/constructEmporiumProof.d.ts +0 -13
- package/functions/snarkjs/constructEmporiumProof.mjs +0 -74
- package/functions/utils/processUseApprovalUtxoData.cjs +0 -1
- package/functions/utils/processUseApprovalUtxoData.d.ts +0 -3
- package/functions/utils/processUseApprovalUtxoData.mjs +0 -13
- package/functions/web3/events/balanceChangedCustomHandler.cjs +0 -1
- package/functions/web3/events/balanceChangedCustomHandler.d.ts +0 -2
- package/functions/web3/events/balanceChangedCustomHandler.mjs +0 -9
- package/functions/web3/events/getApprovedBalance.cjs +0 -1
- package/functions/web3/events/getApprovedBalance.d.ts +0 -6
- package/functions/web3/events/getApprovedBalance.mjs +0 -37
- package/functions/web3/functionCalls/accessTokenCalls.cjs +0 -1
- package/functions/web3/functionCalls/accessTokenCalls.d.ts +0 -2
- package/functions/web3/functionCalls/accessTokenCalls.mjs +0 -19
- package/functions/web3/tron-wagmi-adapter.cjs +0 -1
- package/functions/web3/tron-wagmi-adapter.d.ts +0 -8
- package/functions/web3/tron-wagmi-adapter.mjs +0 -27
- package/providers/CustomEthersProvider.d.ts +0 -10
- package/webworker/snarkjsWorker/snarkjsWorkerLogic.cjs +0 -1
- package/webworker/snarkjsWorker/snarkjsWorkerLogic.mjs +0 -30
- package/webworker/utxoWorker/utxoWorkerLogic.cjs +0 -1
- package/webworker/utxoWorker/utxoWorkerLogic.mjs +0 -69
- package/webworker/workerProxy.cjs +0 -1
- package/webworker/workerProxy.mjs +0 -33
- package/webworker/zkProofWorker/zkProofWorkerLogic.cjs +0 -1
- package/webworker/zkProofWorker/zkProofWorkerLogic.mjs +0 -45
|
@@ -1,41 +1,55 @@
|
|
|
1
1
|
import { caseInsensitiveEqual as e } from "../../functions/utils/caseInsensitive.utils.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { isValidOldStylePrivateAddress as t, isValidPrivateAddress as n } from "../../functions/utils/addresses.mjs";
|
|
3
|
+
import { Logger as r } from "../../error-handling/logger.mjs";
|
|
3
4
|
import "../../functions/index.mjs";
|
|
4
|
-
import { get as
|
|
5
|
-
var
|
|
5
|
+
import { get as i, update as a } from "idb-keyval";
|
|
6
|
+
var o = new class {
|
|
6
7
|
STORAGE_KEY = "contacts";
|
|
7
8
|
checkForDuplicate(e, t, n) {
|
|
8
9
|
if (e.find(({ ethereumAddress: e, nickname: r }) => (e === t.ethereumAddress || r === t.nickname) && e !== n) !== void 0) throw Error("Duplicate Contact attribute");
|
|
9
10
|
}
|
|
10
11
|
async createContact(e, t) {
|
|
11
12
|
let n = e.toLowerCase();
|
|
12
|
-
await
|
|
13
|
+
await a(this.STORAGE_KEY, (e) => {
|
|
13
14
|
let r = e ?? {}, i = r[n] ?? [];
|
|
14
15
|
return this.checkForDuplicate(i, t), i.push(t), r[n] = i, r;
|
|
15
16
|
});
|
|
16
17
|
}
|
|
17
18
|
async getContacts(e) {
|
|
18
19
|
try {
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
await this.removeOldStylePrivateAddressContacts(e);
|
|
21
|
+
let t = e.toLowerCase(), n = await i(this.STORAGE_KEY);
|
|
22
|
+
return !n || !n[t] ? [] : n[t];
|
|
21
23
|
} catch (e) {
|
|
22
|
-
return
|
|
24
|
+
return r.error("Error while getting contacts:", e), [];
|
|
23
25
|
}
|
|
24
26
|
}
|
|
25
|
-
async editContact(t, n,
|
|
26
|
-
let
|
|
27
|
-
await
|
|
28
|
-
let
|
|
29
|
-
if (!
|
|
30
|
-
this.checkForDuplicate(o,
|
|
27
|
+
async editContact(t, n, r) {
|
|
28
|
+
let i = t.toLowerCase();
|
|
29
|
+
await a(this.STORAGE_KEY, (t) => {
|
|
30
|
+
let a = t ?? {}, o = a[i];
|
|
31
|
+
if (!a || !o) throw Error("Contacts could not be fetched");
|
|
32
|
+
this.checkForDuplicate(o, r, n);
|
|
31
33
|
let s = o.findIndex(({ ethereumAddress: t }) => e(t, n));
|
|
32
34
|
if (s === -1) throw Error("Contact to be edited was not found");
|
|
33
|
-
return o[s] =
|
|
35
|
+
return o[s] = r, a[i] = o, a;
|
|
34
36
|
});
|
|
35
37
|
}
|
|
38
|
+
async removeOldStylePrivateAddressContacts(e) {
|
|
39
|
+
let r = e.toLowerCase(), i = 0;
|
|
40
|
+
return await a(this.STORAGE_KEY, (e) => {
|
|
41
|
+
let a = e ?? {}, o = a[r];
|
|
42
|
+
if (!o?.length) return a;
|
|
43
|
+
let s = o.filter((e) => {
|
|
44
|
+
let r = e.ethereumAddress;
|
|
45
|
+
return !t(r) || n(r) ? !0 : (i += 1, !1);
|
|
46
|
+
});
|
|
47
|
+
return i === 0 || (a[r] = s), a;
|
|
48
|
+
}), i;
|
|
49
|
+
}
|
|
36
50
|
async deleteContact(e, t) {
|
|
37
51
|
let n = e.toLowerCase();
|
|
38
|
-
await
|
|
52
|
+
await a(this.STORAGE_KEY, (e) => {
|
|
39
53
|
let r = e ?? {}, i = r[n];
|
|
40
54
|
if (!r || !i) throw Error("Contacts could not be fetched");
|
|
41
55
|
return r[n] = i.filter(({ ethereumAddress: e }) => e !== t), r;
|
|
@@ -43,4 +57,4 @@ var i = new class {
|
|
|
43
57
|
}
|
|
44
58
|
}();
|
|
45
59
|
//#endregion
|
|
46
|
-
export {
|
|
60
|
+
export { o as contactStorage };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/vite.constants.cjs`),t=require(`../crypto-keys/keys.cjs`),n=require(`../utxo/Utxo.cjs`),r=require(`../../webworker/worker.registry.cjs`),i=require(`../../webworker/performTaskWithWorker.cjs`),a=require(`../../webworker/utxoWorker/utxoWorker.types.cjs`);var o=class{NUM_WORKERS;NUM_WORKERS_BATCH_PROCESS;constructor(){e.isNode?(this.NUM_WORKERS=1,this.NUM_WORKERS_BATCH_PROCESS=1):(this.NUM_WORKERS=3,this.NUM_WORKERS_BATCH_PROCESS=Math.ceil(navigator.deviceMemory??4))}async createUtxoPromise(e){return await i.performTaskWithWorker({type:r.WorkerVariant.UTXO,payload:e})}async batchFilterUtxosWithNullifier(e,r){let i=this.sliceArrayIntoParts(e,this.NUM_WORKERS).map(e=>this.createUtxoPromise({type:a.UtxoWorkerActionType.BATCH_FILTER_UTXOS_WITH_NULLIFIER,data:{utxos:e.map(e=>e.getConstructableParams()),nullifiers:r}})),o=await Promise.all(i);return o.forEach(e=>{t.stealthPairCacheDevice.mergeWithSerialized(e.stealthPairCache),t.stealthAddressCacheDevice.mergeWithSerialized(e.stealthAddressCache)}),o.flatMap(e=>e.utxoConstructors).map(e=>new n.Utxo(e))}async buildBatchProcess(e,t,r){let i=this.sliceArrayIntoParts(e,this.NUM_WORKERS).map(e=>this.createUtxoPromise({type:a.UtxoWorkerActionType.BUILD_UTXOS,data:{signature:t.getSignature(),encryptedOutputs:e,chainId:r}}));return(await Promise.all(i)).flat().map(e=>new n.Utxo(e))}sliceArrayIntoParts(e,t){let n=Math.ceil(e.length/t);return Array.from({length:t},(t,r)=>e.slice(n*r,n*(r+1)))}findLastOutput(e,t){let n=t;return e.forEach(e=>{e!==t&&(n=e)}),n}async batchProcess(e,t,n,r){let i=this.sliceArrayIntoParts(e,this.NUM_WORKERS_BATCH_PROCESS),o=n.getSignature(),s=i.map(e=>{let n={type:a.UtxoWorkerActionType.DECIPHER_OUTPUTS,data:{encryptedOutputs:e,lastOutput:t,signature:o,chainId:r}};return this.createUtxoPromise(n)}),c=await Promise.all(s),l=c.map(({additionalEncryptedOutputs:e})=>e).flat(),u=new Set;return{additionalEncryptedOutputs:l.reduce((e,t)=>u.has(t.value)?e:(u.add(t.value),[...e,t]),[]),lastOutput:this.findLastOutput(c.map(e=>e.lastOutput),t)??t}}};exports.MultiThreadedUtxoUtils=
|
|
1
|
+
const e=require(`../../constants/vite.constants.cjs`),t=require(`../crypto-keys/keys.cjs`),n=require(`../utxo/Utxo.cjs`),r=require(`../../webworker/worker.registry.cjs`),i=require(`../../webworker/performTaskWithWorker.cjs`),a=require(`../../webworker/utxoWorker/utxoWorker.types.cjs`);var o=16,s=class{NUM_WORKERS;NUM_WORKERS_BATCH_PROCESS;constructor(){e.isNode?(this.NUM_WORKERS=1,this.NUM_WORKERS_BATCH_PROCESS=1):(this.NUM_WORKERS=3,this.NUM_WORKERS_BATCH_PROCESS=Math.min(o,Math.ceil(navigator.deviceMemory??4)))}async createUtxoPromise(e){return await i.performTaskWithWorker({type:r.WorkerVariant.UTXO,payload:e})}async batchFilterUtxosWithNullifier(e,r){let i=this.sliceArrayIntoParts(e,this.NUM_WORKERS).map(e=>this.createUtxoPromise({type:a.UtxoWorkerActionType.BATCH_FILTER_UTXOS_WITH_NULLIFIER,data:{utxos:e.map(e=>e.getConstructableParams()),nullifiers:r}})),o=await Promise.all(i);return o.forEach(e=>{t.stealthPairCacheDevice.mergeWithSerialized(e.stealthPairCache),t.stealthAddressCacheDevice.mergeWithSerialized(e.stealthAddressCache)}),o.flatMap(e=>e.utxoConstructors).map(e=>new n.Utxo(e))}async buildBatchProcess(e,t,r){let i=this.sliceArrayIntoParts(e,this.NUM_WORKERS).map(e=>this.createUtxoPromise({type:a.UtxoWorkerActionType.BUILD_UTXOS,data:{signature:t.getSignature(),encryptedOutputs:e,chainId:r}}));return(await Promise.all(i)).flat().map(e=>new n.Utxo(e))}sliceArrayIntoParts(e,t){let n=Math.ceil(e.length/t);return Array.from({length:t},(t,r)=>e.slice(n*r,n*(r+1))).filter(e=>e.length>0)}findLastOutput(e,t){let n=t;return e.forEach(e=>{e!==t&&(n=e)}),n}async batchProcess(e,t,n,r){let i=this.sliceArrayIntoParts(e,this.NUM_WORKERS_BATCH_PROCESS),o=n.getSignature(),s=i.map(e=>{let n={type:a.UtxoWorkerActionType.DECIPHER_OUTPUTS,data:{encryptedOutputs:e,lastOutput:t,signature:o,chainId:r}};return this.createUtxoPromise(n)}),c=await Promise.all(s),l=c.map(({additionalEncryptedOutputs:e})=>e).flat(),u=new Set;return{additionalEncryptedOutputs:l.reduce((e,t)=>u.has(t.value)?e:(u.add(t.value),[...e,t]),[]),lastOutput:this.findLastOutput(c.map(e=>e.lastOutput),t)??t}}};exports.MultiThreadedUtxoUtils=s;
|
|
@@ -14,7 +14,7 @@ export declare class MultiThreadedUtxoUtils implements IMultiThreadedUtxoUtils {
|
|
|
14
14
|
private createUtxoPromise;
|
|
15
15
|
batchFilterUtxosWithNullifier(allUtxos: Utxo[], nullifiers: Set<string>): Promise<Utxo[]>;
|
|
16
16
|
buildBatchProcess(encryptedOutputs: EncryptedOutputWithSign[], userKeys: UserKeys, chainId: number): Promise<Utxo[]>;
|
|
17
|
-
sliceArrayIntoParts
|
|
17
|
+
private sliceArrayIntoParts;
|
|
18
18
|
findLastOutput(lastOutputsArray: string[], lastOutput: string): string;
|
|
19
19
|
batchProcess(encryptedOutputs: EncryptedOutputWithSign[], lastOutput: string, userKeys: UserKeys, chainId: number): Promise<OutputsWithSignAndLast<boolean>>;
|
|
20
20
|
}
|
|
@@ -5,11 +5,11 @@ import { WorkerVariant as i } from "../../webworker/worker.registry.mjs";
|
|
|
5
5
|
import { performTaskWithWorker as a } from "../../webworker/performTaskWithWorker.mjs";
|
|
6
6
|
import { UtxoWorkerActionType as o } from "../../webworker/utxoWorker/utxoWorker.types.mjs";
|
|
7
7
|
//#region libs/shared/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.ts
|
|
8
|
-
var s = class {
|
|
8
|
+
var s = 16, c = class {
|
|
9
9
|
NUM_WORKERS;
|
|
10
10
|
NUM_WORKERS_BATCH_PROCESS;
|
|
11
11
|
constructor() {
|
|
12
|
-
e ? (this.NUM_WORKERS = 1, this.NUM_WORKERS_BATCH_PROCESS = 1) : (this.NUM_WORKERS = 3, this.NUM_WORKERS_BATCH_PROCESS = Math.ceil(navigator.deviceMemory ?? 4));
|
|
12
|
+
e ? (this.NUM_WORKERS = 1, this.NUM_WORKERS_BATCH_PROCESS = 1) : (this.NUM_WORKERS = 3, this.NUM_WORKERS_BATCH_PROCESS = Math.min(s, Math.ceil(navigator.deviceMemory ?? 4)));
|
|
13
13
|
}
|
|
14
14
|
async createUtxoPromise(e) {
|
|
15
15
|
return await a({
|
|
@@ -42,7 +42,7 @@ var s = class {
|
|
|
42
42
|
}
|
|
43
43
|
sliceArrayIntoParts(e, t) {
|
|
44
44
|
let n = Math.ceil(e.length / t);
|
|
45
|
-
return Array.from({ length: t }, (t, r) => e.slice(n * r, n * (r + 1)));
|
|
45
|
+
return Array.from({ length: t }, (t, r) => e.slice(n * r, n * (r + 1))).filter((e) => e.length > 0);
|
|
46
46
|
}
|
|
47
47
|
findLastOutput(e, t) {
|
|
48
48
|
let n = t;
|
|
@@ -70,4 +70,4 @@ var s = class {
|
|
|
70
70
|
}
|
|
71
71
|
};
|
|
72
72
|
//#endregion
|
|
73
|
-
export {
|
|
73
|
+
export { c as MultiThreadedUtxoUtils };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../types/cache.types.cjs`),r=require(`../http/HttpClient.cjs`);require(`../http/index.cjs`);const i=require(`../../functions/utils/caseInsensitive.utils.cjs`),a=require(`../../API/API.cjs`),o=require(`../../error-handling/logger.cjs`),
|
|
1
|
+
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../types/cache.types.cjs`),r=require(`../http/HttpClient.cjs`);require(`../http/index.cjs`);const i=require(`../../functions/utils/caseInsensitive.utils.cjs`),a=require(`../../API/API.cjs`),o=require(`../../functions/utils/erc20tokenFunctions.cjs`),s=require(`../../error-handling/logger.cjs`),c=require(`../../functions/utils/string.utils.cjs`),l=require(`./token-visibility-db.cjs`),u=require(`../../functions/utils/create-provider.cjs`),d=require(`../../functions/utils/publicBalance.utils.cjs`);let f=require(`@solana/web3.js`),p=require(`idb-keyval`),m=require(`@solana/spl-token`);var h=new class{fetchedTokens={};ALCHEMY_URLS={[e.chainIds.ethMainnet]:`eth-mainnet`,[e.chainIds.polygon]:`polygon-mainnet`,[e.chainIds.arbMainnet]:`arb-mainnet`,[e.chainIds.optimism]:`opt-mainnet`,[e.chainIds.optimismTest]:`opt-mainnet`,[e.chainIds.base]:`base-mainnet`,[e.chainIds.solanaMainnet]:`solana-mainnet`};KNOWN_GOOD_NFTS={[e.chainIds.base]:[`0x20bc8d248fe9c18a947406cea50d716828ab821f`],[e.chainIds.optimism]:[`0x3c3e0e73b53a19bcaf4178b8f9c9428fd2a2775e`]};isWhitelistedNFT(e,t){return this.KNOWN_GOOD_NFTS[t]?this.KNOWN_GOOD_NFTS[t].some(t=>i.caseInsensitiveEqual(e,t)):!1}async getPublicTokens(e,t){let r=c.getStateKey(t,e);return((await(0,p.get)(n.StorageKeys.ALCHEMY_PUBLIC_TOKENS))?.[r]||[]).map(t=>o.overlayTokenWithRegistryData(t,e))}getFetchedTokens(e,t){let n=c.getStateKey(t,e);return(this.fetchedTokens[n]||[]).map(t=>o.overlayTokenWithRegistryData(t,e))}fetchAndUpdatePublicTokens(t,n){return e.isSolanaLike(n)?this.fetchAndUpdateSolanaTokens(t,n):this.fetchAndUpdateEVMTokens(t,n)}async fetchAndUpdateSolanaTokens(e,t){let r=c.getStateKey(e,t),[o,s]=await Promise.all([this.getSolanaTokenAddresses(t,e),this.getNFTAddresses(t,e)]),u=Array.from(new Set([...o,...s]));if(!u.length)return;let d=(await a.API.tokensInfoCall(t,u)).filter(e=>!!e),f=await l.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(t,d),m=d.filter(e=>!i.lowerCaseIncludes(f,e.erc20TokenAddress));await(0,p.update)(n.StorageKeys.ALCHEMY_PUBLIC_TOKENS,(e={})=>{let t={...e,[r]:m};return this.fetchedTokens=t,t})}async getWalletTokenAddresses(t,n){return e.isSolanaLike(t)?this.getSolanaTokenAddresses(t,n):this.getEVMTokenAddresses(t,n)}async fetchAndUpdateEVMTokens(e,r){let o=c.getStateKey(e,r),s=await this.getEVMTokenAddresses(r,e),u=await this.getNFTTokens(r,e),d=u.map(e=>e.contractAddress),f=[...s,...d];if(!f.length)return;let m=(await a.API.tokensInfoCall(r,f)).map((e,n)=>{if(e)return e;let a=f[n],o=u.find(e=>i.caseInsensitiveEqual(e.contractAddress,a));return o&&o.tokenIds&&o.tokenIds.length>0&&this.isWhitelistedNFT(a,r)?{chainId:r,name:`Unknown NFT`,symbol:`NFT`,erc20TokenAddress:a,decimals:0,nftTokenType:t.TokenType.ERC721,tokenIds:o.tokenIds}:null}).filter(e=>!!e),h=await l.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(r,m),g=m.filter(e=>!i.lowerCaseIncludes(h,e.erc20TokenAddress)).map(e=>({...e,tokenIds:u.find(t=>i.caseInsensitiveEqual(t.contractAddress,e.erc20TokenAddress))?.tokenIds}));await(0,p.update)(n.StorageKeys.ALCHEMY_PUBLIC_TOKENS,(e={})=>{let t={...e,[o]:g};return this.fetchedTokens=t,t})}async getSolanaTokenAddresses(n,r){let{fetchRpcUrl:i}=e.networkRegistry[n];if(!i)throw Error(`RPC URL not found for the specified chain ID`);let a=u.createCustomSolanaConnection(i),o=await a.getBalance(new f.PublicKey(r)),[s,c]=await Promise.all([a.getParsedTokenAccountsByOwner(new f.PublicKey(r),{programId:m.TOKEN_PROGRAM_ID}),a.getParsedTokenAccountsByOwner(new f.PublicKey(r),{programId:m.TOKEN_2022_PROGRAM_ID})]),l=[...s.value,...c.value].filter(e=>{let{amount:t}=e.account.data.parsed.info.tokenAmount;return BigInt(t)>0n}).map(e=>e.account.data.parsed.info.mint);return o>0&&l.unshift(t.solanaNativeAddress),Array.from(new Set(l))}async getNFTAddresses(n,i){let{fetchRpcUrl:a}=e.networkRegistry[n];if(!a)throw Error(`RPC URL not found for the specified chain ID`);try{let e=[],n=1;do{let{items:o=[],page:s}=(await r.httpClient.post(a,{jsonrpc:`2.0`,id:1,method:`getAssetsByOwner`,params:{ownerAddress:i,page:n,limit:1e3,displayOptions:{showFungible:!1,showCollectionMetadata:!0}}})).result||{},c=o.filter(e=>e.interface&&t.SOLANA_NFT_INTERFACES.includes(e.interface)).map(e=>e.id);e.push(...c),n=s&&s>n?s:0}while(n>0);return e}catch(e){return s.Logger.error(`Failed to fetch NFTs from DAS API`,e),[]}}async getEVMTokenAddresses(n,i){let a=await d.getPublicBalanceByTokenAddress(n,i,t.zeroAddress),o=this.ALCHEMY_URLS[n];if(!o)throw Error(`Alchemy URL not found for the specified chain ID`);let s=`https://${o}.g.alchemy.com/v2/${e.ALCHEMY_API_KEY}`,c=[],l;do{let e=[i,`erc20`];l&&e.push({pageKey:l});let{result:t}=await r.httpClient.post(s,{jsonrpc:`2.0`,id:1,method:`alchemy_getTokenBalances`,params:e});c.push(...t?.tokenBalances??[]),l=t?.pageKey}while(l);a&&a>0n&&c.push({contractAddress:t.zeroAddress,tokenBalance:a.toString()});let u={};return c.forEach(e=>{(!u[e.contractAddress]||BigInt(e.tokenBalance)>0n)&&(u[e.contractAddress]=e)}),Object.keys(u)}async getNFTTokens(t,n){let i=`https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/nft/v3/${e.ALCHEMY_API_KEY}/getNFTsForOwner`,a=[],o;do{let e=new URLSearchParams({owner:n,withMetadata:`false`,pageSize:`100`});o&&e.append(`pageKey`,o);let{ownedNfts:t=[],pageKey:s}=await r.httpClient.get(`${i}?${e.toString()}`);a.push(...t),o=s}while(o);let s=a.filter(({contractAddress:e,tokenId:t})=>e&&t).reduce((e,{contractAddress:t,tokenId:n})=>{let r=t.toLowerCase();return e.has(r)||e.set(r,[]),e.get(r)?.push(n),e},new Map);return Array.from(s.entries()).map(([e,t])=>({contractAddress:e,tokenIds:t}))}};exports.alchemyPublicTokensDB=h;
|
|
@@ -5,23 +5,24 @@ import { httpClient as l } from "../http/HttpClient.mjs";
|
|
|
5
5
|
import "../http/index.mjs";
|
|
6
6
|
import { caseInsensitiveEqual as u, lowerCaseIncludes as d } from "../../functions/utils/caseInsensitive.utils.mjs";
|
|
7
7
|
import { API as f } from "../../API/API.mjs";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
|
|
8
|
+
import { overlayTokenWithRegistryData as p } from "../../functions/utils/erc20tokenFunctions.mjs";
|
|
9
|
+
import { Logger as m } from "../../error-handling/logger.mjs";
|
|
10
|
+
import { getStateKey as h } from "../../functions/utils/string.utils.mjs";
|
|
11
|
+
import { tokenVisibilityStorage as g } from "./token-visibility-db.mjs";
|
|
12
|
+
import { createCustomSolanaConnection as _ } from "../../functions/utils/create-provider.mjs";
|
|
13
|
+
import { getPublicBalanceByTokenAddress as v } from "../../functions/utils/publicBalance.utils.mjs";
|
|
14
|
+
import { PublicKey as y } from "@solana/web3.js";
|
|
15
|
+
import { get as b, update as x } from "idb-keyval";
|
|
16
|
+
import { TOKEN_2022_PROGRAM_ID as S, TOKEN_PROGRAM_ID as C } from "@solana/spl-token";
|
|
17
|
+
var w = new class {
|
|
17
18
|
fetchedTokens = {};
|
|
18
19
|
ALCHEMY_URLS = {
|
|
19
20
|
[t.ethMainnet]: "eth-mainnet",
|
|
20
21
|
[t.polygon]: "polygon-mainnet",
|
|
21
22
|
[t.arbMainnet]: "arb-mainnet",
|
|
22
23
|
[t.optimism]: "opt-mainnet",
|
|
24
|
+
[t.optimismTest]: "opt-mainnet",
|
|
23
25
|
[t.base]: "base-mainnet",
|
|
24
|
-
[t.avalanche]: "avax-mainnet",
|
|
25
26
|
[t.solanaMainnet]: "solana-mainnet"
|
|
26
27
|
};
|
|
27
28
|
KNOWN_GOOD_NFTS = {
|
|
@@ -32,21 +33,21 @@ var C = new class {
|
|
|
32
33
|
return this.KNOWN_GOOD_NFTS[t] ? this.KNOWN_GOOD_NFTS[t].some((t) => u(e, t)) : !1;
|
|
33
34
|
}
|
|
34
35
|
async getPublicTokens(e, t) {
|
|
35
|
-
let n =
|
|
36
|
-
return (await
|
|
36
|
+
let n = h(t, e);
|
|
37
|
+
return ((await b(c.ALCHEMY_PUBLIC_TOKENS))?.[n] || []).map((t) => p(t, e));
|
|
37
38
|
}
|
|
38
39
|
getFetchedTokens(e, t) {
|
|
39
|
-
let n =
|
|
40
|
-
return this.fetchedTokens[n] || [];
|
|
40
|
+
let n = h(t, e);
|
|
41
|
+
return (this.fetchedTokens[n] || []).map((t) => p(t, e));
|
|
41
42
|
}
|
|
42
43
|
fetchAndUpdatePublicTokens(e, t) {
|
|
43
44
|
return n(t) ? this.fetchAndUpdateSolanaTokens(e, t) : this.fetchAndUpdateEVMTokens(e, t);
|
|
44
45
|
}
|
|
45
46
|
async fetchAndUpdateSolanaTokens(e, t) {
|
|
46
|
-
let n =
|
|
47
|
+
let n = h(e, t), [r, i] = await Promise.all([this.getSolanaTokenAddresses(t, e), this.getNFTAddresses(t, e)]), a = Array.from(new Set([...r, ...i]));
|
|
47
48
|
if (!a.length) return;
|
|
48
|
-
let o = (await f.tokensInfoCall(t, a)).filter((e) => !!e), s = await
|
|
49
|
-
await
|
|
49
|
+
let o = (await f.tokensInfoCall(t, a)).filter((e) => !!e), s = await g.hideSpamsAndFetchHiddenTokensAddresses(t, o), l = o.filter((e) => !d(s, e.erc20TokenAddress));
|
|
50
|
+
await x(c.ALCHEMY_PUBLIC_TOKENS, (e = {}) => {
|
|
50
51
|
let t = {
|
|
51
52
|
...e,
|
|
52
53
|
[n]: l
|
|
@@ -58,7 +59,7 @@ var C = new class {
|
|
|
58
59
|
return n(e) ? this.getSolanaTokenAddresses(e, t) : this.getEVMTokenAddresses(e, t);
|
|
59
60
|
}
|
|
60
61
|
async fetchAndUpdateEVMTokens(e, t) {
|
|
61
|
-
let n =
|
|
62
|
+
let n = h(e, t), r = await this.getEVMTokenAddresses(t, e), i = await this.getNFTTokens(t, e), o = i.map((e) => e.contractAddress), s = [...r, ...o];
|
|
62
63
|
if (!s.length) return;
|
|
63
64
|
let l = (await f.tokensInfoCall(t, s)).map((e, n) => {
|
|
64
65
|
if (e) return e;
|
|
@@ -72,14 +73,14 @@ var C = new class {
|
|
|
72
73
|
nftTokenType: a.ERC721,
|
|
73
74
|
tokenIds: o.tokenIds
|
|
74
75
|
} : null;
|
|
75
|
-
}).filter((e) => !!e), p = await
|
|
76
|
+
}).filter((e) => !!e), p = await g.hideSpamsAndFetchHiddenTokensAddresses(t, l), m = l.filter((e) => !d(p, e.erc20TokenAddress)).map((e) => ({
|
|
76
77
|
...e,
|
|
77
78
|
tokenIds: i.find((t) => u(t.contractAddress, e.erc20TokenAddress))?.tokenIds
|
|
78
79
|
}));
|
|
79
|
-
await
|
|
80
|
+
await x(c.ALCHEMY_PUBLIC_TOKENS, (e = {}) => {
|
|
80
81
|
let t = {
|
|
81
82
|
...e,
|
|
82
|
-
[n]:
|
|
83
|
+
[n]: m
|
|
83
84
|
};
|
|
84
85
|
return this.fetchedTokens = t, t;
|
|
85
86
|
});
|
|
@@ -87,7 +88,7 @@ var C = new class {
|
|
|
87
88
|
async getSolanaTokenAddresses(e, t) {
|
|
88
89
|
let { fetchRpcUrl: n } = r[e];
|
|
89
90
|
if (!n) throw Error("RPC URL not found for the specified chain ID");
|
|
90
|
-
let i =
|
|
91
|
+
let i = _(n), a = await i.getBalance(new y(t)), [s, c] = await Promise.all([i.getParsedTokenAccountsByOwner(new y(t), { programId: C }), i.getParsedTokenAccountsByOwner(new y(t), { programId: S })]), l = [...s.value, ...c.value].filter((e) => {
|
|
91
92
|
let { amount: t } = e.account.data.parsed.info.tokenAmount;
|
|
92
93
|
return BigInt(t) > 0n;
|
|
93
94
|
}).map((e) => e.account.data.parsed.info.mint);
|
|
@@ -117,30 +118,32 @@ var C = new class {
|
|
|
117
118
|
} while (r > 0);
|
|
118
119
|
return e;
|
|
119
120
|
} catch (e) {
|
|
120
|
-
return
|
|
121
|
+
return m.error("Failed to fetch NFTs from DAS API", e), [];
|
|
121
122
|
}
|
|
122
123
|
}
|
|
123
124
|
async getEVMTokenAddresses(t, n) {
|
|
124
|
-
let r = await
|
|
125
|
+
let r = await v(t, n, s), i = this.ALCHEMY_URLS[t];
|
|
126
|
+
if (!i) throw Error("Alchemy URL not found for the specified chain ID");
|
|
127
|
+
let a = `https://${i}.g.alchemy.com/v2/${e}`, o = [], c;
|
|
125
128
|
do {
|
|
126
129
|
let e = [n, "erc20"];
|
|
127
|
-
|
|
128
|
-
let { result: t } = await l.post(
|
|
130
|
+
c && e.push({ pageKey: c });
|
|
131
|
+
let { result: t } = await l.post(a, {
|
|
129
132
|
jsonrpc: "2.0",
|
|
130
133
|
id: 1,
|
|
131
134
|
method: "alchemy_getTokenBalances",
|
|
132
135
|
params: e
|
|
133
136
|
});
|
|
134
|
-
|
|
135
|
-
} while (
|
|
136
|
-
r && r > 0n &&
|
|
137
|
+
o.push(...t?.tokenBalances ?? []), c = t?.pageKey;
|
|
138
|
+
} while (c);
|
|
139
|
+
r && r > 0n && o.push({
|
|
137
140
|
contractAddress: s,
|
|
138
141
|
tokenBalance: r.toString()
|
|
139
142
|
});
|
|
140
|
-
let
|
|
141
|
-
return
|
|
142
|
-
(!
|
|
143
|
-
}), Object.keys(
|
|
143
|
+
let u = {};
|
|
144
|
+
return o.forEach((e) => {
|
|
145
|
+
(!u[e.contractAddress] || BigInt(e.tokenBalance) > 0n) && (u[e.contractAddress] = e);
|
|
146
|
+
}), Object.keys(u);
|
|
144
147
|
}
|
|
145
148
|
async getNFTTokens(t, n) {
|
|
146
149
|
let r = `https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/nft/v3/${e}/getNFTsForOwner`, i = [], a;
|
|
@@ -165,4 +168,4 @@ var C = new class {
|
|
|
165
168
|
}
|
|
166
169
|
}();
|
|
167
170
|
//#endregion
|
|
168
|
-
export {
|
|
171
|
+
export { w as alchemyPublicTokensDB };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../types/cache.types.cjs`),n=require(`../../functions/utils/caseInsensitive.utils.cjs`),r=require(`../../API/API.cjs`),i=require(`../../functions/utils/erc20tokenFunctions.cjs`),a=require(`../../constants/events.constants.cjs`);require(`../../constants/index.cjs`);const o=require(`../../error-handling/logger.cjs`),s=require(`../../functions/utils/string.utils.cjs`),c=require(`./token-visibility-db.cjs`),l=require(`../../functions/utils/create-provider.cjs`);require(`../../functions/index.cjs`);let u=require(`async-mutex`),d=require(`ethers`),f=require(`idb-keyval`);var p=new class{fetchedTokens={};updateMutexes={};transferEventTopic=d.ethers.id(`Transfer(address,address,uint256)`);getMutex(e){return this.updateMutexes[e]||(this.updateMutexes[e]=new u.Mutex),this.updateMutexes[e]}async getPublicTokens(e,n){let r=s.getStateKey(n,e);return(await(0,f.get)(t.StorageKeys.EVENTS_PUBLIC_TOKENS))?.[r]||[]}getFetchedTokens(e,t){let n=s.getStateKey(t,e);return
|
|
1
|
+
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../types/cache.types.cjs`),n=require(`../../functions/utils/caseInsensitive.utils.cjs`),r=require(`../../API/API.cjs`),i=require(`../../functions/utils/erc20tokenFunctions.cjs`),a=require(`../../constants/events.constants.cjs`);require(`../../constants/index.cjs`);const o=require(`../../error-handling/logger.cjs`),s=require(`../../functions/utils/string.utils.cjs`),c=require(`./token-visibility-db.cjs`),l=require(`../../functions/utils/create-provider.cjs`);require(`../../functions/index.cjs`);let u=require(`async-mutex`),d=require(`ethers`),f=require(`idb-keyval`);var p=new class{fetchedTokens={};updateMutexes={};transferEventTopic=d.ethers.id(`Transfer(address,address,uint256)`);chunkSize=2e3;getMutex(e){return this.updateMutexes[e]||(this.updateMutexes[e]=new u.Mutex),this.updateMutexes[e]}withRegistryOverlay(e,t){let n=i.getERC20Token(e.erc20TokenAddress,t);return n?{...e,name:n.name,symbol:n.symbol,logoURI:n.logoURI,decimals:n.decimals}:e}async getPublicTokens(e,n){let r=s.getStateKey(n,e);return((await(0,f.get)(t.StorageKeys.EVENTS_PUBLIC_TOKENS))?.[r]||[]).map(t=>i.overlayTokenWithRegistryData(t,e))}getFetchedTokens(e,t){let n=s.getStateKey(t,e);return(this.fetchedTokens[n]||[]).map(t=>i.overlayTokenWithRegistryData(t,e))}async fetchAndUpdatePublicTokens(e,r){let i=s.getStateKey(e,r);await this.getMutex(i).runExclusive(async()=>{try{let a=(await this.getPublicTokens(r,e)).map(e=>e.erc20TokenAddress),{toEvents:o,fromEvents:s,latestBlock:l}=await this.getEvents(e,r),u=[...o,...s],{erc20Tokens:d}=await this.fetchPublicTokens(u,r,a),p=await c.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(r,d),m=d.filter(e=>!n.lowerCaseIncludes(p,e.erc20TokenAddress));await(0,f.update)(t.StorageKeys.EVENTS_PUBLIC_TOKENS,(e={})=>{let t=e[i]||[],r=t.map(e=>e.erc20TokenAddress),a=m.filter(e=>!n.lowerCaseIncludes(r,e.erc20TokenAddress));t.push(...a);let c=this.updateTokenIds(s,o,t),l={...e,[i]:c};return this.fetchedTokens=l,l}),l&&await this.updateLastProcessedBlock(r,e,l)}catch(e){o.Logger.error(`public tokens db error`,e)}})}async getLastProcessedBlock(e,n){return(await(0,f.get)(t.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS)||{})[s.getStateKey(n,e)]||a.EVENTS_INITIAL_BLOCKS[e]}async updateLastProcessedBlock(e,n,r){await(0,f.update)(t.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS,(t={})=>{let i=s.getStateKey(n,e);return{...t,[i]:r}})}async getEvents(e,t){try{let n=l.createJsonRpcProvider(t),r=await this.getLastProcessedBlock(t,e)+1,i=await n.getBlockNumber(),a=d.ethers.zeroPadValue(e.toLowerCase(),32),o=[],s=[];for(let e=r;e<=i;e+=this.chunkSize){let t=Math.min(e+this.chunkSize-1,i),r={topics:[this.transferEventTopic,null,a],fromBlock:e,toBlock:t},c={topics:[this.transferEventTopic,a,null],fromBlock:e,toBlock:t},[l,u]=await Promise.all([n.getLogs(r),n.getLogs(c)]);o.push(...l),s.push(...u)}return{toEvents:o,fromEvents:s,latestBlock:i}}catch(n){return o.Logger.error(`Error fetching events:`,n,`chainId`,t,`walletAddress`,e),{toEvents:[],fromEvents:[],latestBlock:void 0}}}updateTokenIds(e,t,n){let r=new Map;return n.forEach(e=>{if(i.isNFTToken(e)&&e.tokenIds){let t=e.erc20TokenAddress.toLowerCase();r.set(t,[...e.tokenIds])}}),t.forEach(e=>{if(e.topics.length<=3)return;let t=e.address.toLowerCase(),n=BigInt(e.topics[3]).toString();r.has(t)||r.set(t,[]),r.get(t)?.push(n)}),e.forEach(e=>{if(e.topics.length<=3)return;let t=e.address.toLowerCase(),n=r.get(t);if(n?.length){let t=BigInt(e.topics[3]).toString(),r=n.indexOf(t);r!==-1&&n.splice(r,1)}}),n.forEach(e=>{if(i.isNFTToken(e)){let t=e.erc20TokenAddress.toLowerCase(),n=r.get(t);e.tokenIds=n?.length&&n.length>0?n:void 0}}),n}async fetchPublicTokens(t,i,a){try{let o=[e.zeroAddress,...new Set(t.map(e=>e.address))].filter(e=>e&&!n.lowerCaseIncludes(a,e));return o.length?{erc20Tokens:(await r.API.tokensInfoCall(i,o)).filter(e=>!!e)}:{erc20Tokens:[]}}catch(e){return o.Logger.error(`Error fetching public tokens:`,e),{erc20Tokens:[]}}}};exports.eventsPublicTokensDB=p;
|
|
@@ -4,7 +4,9 @@ export declare class EventsPublicTokensDB implements IPublicTokensDB {
|
|
|
4
4
|
private fetchedTokens;
|
|
5
5
|
private updateMutexes;
|
|
6
6
|
private readonly transferEventTopic;
|
|
7
|
+
private readonly chunkSize;
|
|
7
8
|
private getMutex;
|
|
9
|
+
private withRegistryOverlay;
|
|
8
10
|
getPublicTokens(chainId: number, walletAddress: string): Promise<ERC20Token[]>;
|
|
9
11
|
getFetchedTokens(chainId: number, walletAddress: string): ERC20Token[];
|
|
10
12
|
fetchAndUpdatePublicTokens(walletAddress: string, chainId: number): Promise<void>;
|
|
@@ -2,57 +2,68 @@ import { zeroAddress as e } from "../../constants/protocol.constants.mjs";
|
|
|
2
2
|
import { StorageKeys as t } from "../../types/cache.types.mjs";
|
|
3
3
|
import { lowerCaseIncludes as n } from "../../functions/utils/caseInsensitive.utils.mjs";
|
|
4
4
|
import { API as r } from "../../API/API.mjs";
|
|
5
|
-
import {
|
|
6
|
-
import { EVENTS_INITIAL_BLOCKS as
|
|
5
|
+
import { getERC20Token as i, isNFTToken as a, overlayTokenWithRegistryData as o } from "../../functions/utils/erc20tokenFunctions.mjs";
|
|
6
|
+
import { EVENTS_INITIAL_BLOCKS as s } from "../../constants/events.constants.mjs";
|
|
7
7
|
import "../../constants/index.mjs";
|
|
8
|
-
import { Logger as
|
|
9
|
-
import { getStateKey as
|
|
10
|
-
import { tokenVisibilityStorage as
|
|
11
|
-
import {
|
|
8
|
+
import { Logger as c } from "../../error-handling/logger.mjs";
|
|
9
|
+
import { getStateKey as l } from "../../functions/utils/string.utils.mjs";
|
|
10
|
+
import { tokenVisibilityStorage as u } from "./token-visibility-db.mjs";
|
|
11
|
+
import { createJsonRpcProvider as d } from "../../functions/utils/create-provider.mjs";
|
|
12
12
|
import "../../functions/index.mjs";
|
|
13
|
-
import { Mutex as
|
|
14
|
-
import { ethers as
|
|
15
|
-
import { get as
|
|
16
|
-
var
|
|
13
|
+
import { Mutex as f } from "async-mutex";
|
|
14
|
+
import { ethers as p } from "ethers";
|
|
15
|
+
import { get as m, update as h } from "idb-keyval";
|
|
16
|
+
var g = new class {
|
|
17
17
|
fetchedTokens = {};
|
|
18
18
|
updateMutexes = {};
|
|
19
|
-
transferEventTopic =
|
|
19
|
+
transferEventTopic = p.id("Transfer(address,address,uint256)");
|
|
20
|
+
chunkSize = 2e3;
|
|
20
21
|
getMutex(e) {
|
|
21
|
-
return this.updateMutexes[e] || (this.updateMutexes[e] = new
|
|
22
|
+
return this.updateMutexes[e] || (this.updateMutexes[e] = new f()), this.updateMutexes[e];
|
|
23
|
+
}
|
|
24
|
+
withRegistryOverlay(e, t) {
|
|
25
|
+
let n = i(e.erc20TokenAddress, t);
|
|
26
|
+
return n ? {
|
|
27
|
+
...e,
|
|
28
|
+
name: n.name,
|
|
29
|
+
symbol: n.symbol,
|
|
30
|
+
logoURI: n.logoURI,
|
|
31
|
+
decimals: n.decimals
|
|
32
|
+
} : e;
|
|
22
33
|
}
|
|
23
34
|
async getPublicTokens(e, n) {
|
|
24
|
-
let r =
|
|
25
|
-
return (await
|
|
35
|
+
let r = l(n, e);
|
|
36
|
+
return ((await m(t.EVENTS_PUBLIC_TOKENS))?.[r] || []).map((t) => o(t, e));
|
|
26
37
|
}
|
|
27
38
|
getFetchedTokens(e, t) {
|
|
28
|
-
let n =
|
|
29
|
-
return this.fetchedTokens[n] || [];
|
|
39
|
+
let n = l(t, e);
|
|
40
|
+
return (this.fetchedTokens[n] || []).map((t) => o(t, e));
|
|
30
41
|
}
|
|
31
42
|
async fetchAndUpdatePublicTokens(e, r) {
|
|
32
|
-
let i =
|
|
43
|
+
let i = l(e, r);
|
|
33
44
|
await this.getMutex(i).runExclusive(async () => {
|
|
34
45
|
try {
|
|
35
|
-
let a = (await this.getPublicTokens(r, e)).map((e) => e.erc20TokenAddress), { toEvents: o, fromEvents: s, latestBlock:
|
|
36
|
-
await
|
|
37
|
-
let t = e[i] || [], r = t.map((e) => e.erc20TokenAddress), a =
|
|
46
|
+
let a = (await this.getPublicTokens(r, e)).map((e) => e.erc20TokenAddress), { toEvents: o, fromEvents: s, latestBlock: c } = await this.getEvents(e, r), l = [...o, ...s], { erc20Tokens: d } = await this.fetchPublicTokens(l, r, a), f = await u.hideSpamsAndFetchHiddenTokensAddresses(r, d), p = d.filter((e) => !n(f, e.erc20TokenAddress));
|
|
47
|
+
await h(t.EVENTS_PUBLIC_TOKENS, (e = {}) => {
|
|
48
|
+
let t = e[i] || [], r = t.map((e) => e.erc20TokenAddress), a = p.filter((e) => !n(r, e.erc20TokenAddress));
|
|
38
49
|
t.push(...a);
|
|
39
50
|
let c = this.updateTokenIds(s, o, t), l = {
|
|
40
51
|
...e,
|
|
41
52
|
[i]: c
|
|
42
53
|
};
|
|
43
54
|
return this.fetchedTokens = l, l;
|
|
44
|
-
}),
|
|
55
|
+
}), c && await this.updateLastProcessedBlock(r, e, c);
|
|
45
56
|
} catch (e) {
|
|
46
|
-
|
|
57
|
+
c.error("public tokens db error", e);
|
|
47
58
|
}
|
|
48
59
|
});
|
|
49
60
|
}
|
|
50
61
|
async getLastProcessedBlock(e, n) {
|
|
51
|
-
return (await
|
|
62
|
+
return (await m(t.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS) || {})[l(n, e)] || s[e];
|
|
52
63
|
}
|
|
53
64
|
async updateLastProcessedBlock(e, n, r) {
|
|
54
|
-
await
|
|
55
|
-
let i =
|
|
65
|
+
await h(t.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS, (t = {}) => {
|
|
66
|
+
let i = l(n, e);
|
|
56
67
|
return {
|
|
57
68
|
...t,
|
|
58
69
|
[i]: r
|
|
@@ -61,30 +72,34 @@ var m = new class {
|
|
|
61
72
|
}
|
|
62
73
|
async getEvents(e, t) {
|
|
63
74
|
try {
|
|
64
|
-
let n =
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
75
|
+
let n = d(t), r = await this.getLastProcessedBlock(t, e) + 1, i = await n.getBlockNumber(), a = p.zeroPadValue(e.toLowerCase(), 32), o = [], s = [];
|
|
76
|
+
for (let e = r; e <= i; e += this.chunkSize) {
|
|
77
|
+
let t = Math.min(e + this.chunkSize - 1, i), r = {
|
|
78
|
+
topics: [
|
|
79
|
+
this.transferEventTopic,
|
|
80
|
+
null,
|
|
81
|
+
a
|
|
82
|
+
],
|
|
83
|
+
fromBlock: e,
|
|
84
|
+
toBlock: t
|
|
85
|
+
}, c = {
|
|
86
|
+
topics: [
|
|
87
|
+
this.transferEventTopic,
|
|
88
|
+
a,
|
|
89
|
+
null
|
|
90
|
+
],
|
|
91
|
+
fromBlock: e,
|
|
92
|
+
toBlock: t
|
|
93
|
+
}, [l, u] = await Promise.all([n.getLogs(r), n.getLogs(c)]);
|
|
94
|
+
o.push(...l), s.push(...u);
|
|
95
|
+
}
|
|
81
96
|
return {
|
|
82
|
-
toEvents:
|
|
83
|
-
fromEvents:
|
|
97
|
+
toEvents: o,
|
|
98
|
+
fromEvents: s,
|
|
84
99
|
latestBlock: i
|
|
85
100
|
};
|
|
86
|
-
} catch (
|
|
87
|
-
return
|
|
101
|
+
} catch (n) {
|
|
102
|
+
return c.error("Error fetching events:", n, "chainId", t, "walletAddress", e), {
|
|
88
103
|
toEvents: [],
|
|
89
104
|
fromEvents: [],
|
|
90
105
|
latestBlock: void 0
|
|
@@ -94,7 +109,7 @@ var m = new class {
|
|
|
94
109
|
updateTokenIds(e, t, n) {
|
|
95
110
|
let r = /* @__PURE__ */ new Map();
|
|
96
111
|
return n.forEach((e) => {
|
|
97
|
-
if (
|
|
112
|
+
if (a(e) && e.tokenIds) {
|
|
98
113
|
let t = e.erc20TokenAddress.toLowerCase();
|
|
99
114
|
r.set(t, [...e.tokenIds]);
|
|
100
115
|
}
|
|
@@ -110,7 +125,7 @@ var m = new class {
|
|
|
110
125
|
r !== -1 && n.splice(r, 1);
|
|
111
126
|
}
|
|
112
127
|
}), n.forEach((e) => {
|
|
113
|
-
if (
|
|
128
|
+
if (a(e)) {
|
|
114
129
|
let t = e.erc20TokenAddress.toLowerCase(), n = r.get(t);
|
|
115
130
|
e.tokenIds = n?.length && n.length > 0 ? n : void 0;
|
|
116
131
|
}
|
|
@@ -121,9 +136,9 @@ var m = new class {
|
|
|
121
136
|
let o = [e, ...new Set(t.map((e) => e.address))].filter((e) => e && !n(a, e));
|
|
122
137
|
return o.length ? { erc20Tokens: (await r.tokensInfoCall(i, o)).filter((e) => !!e) } : { erc20Tokens: [] };
|
|
123
138
|
} catch (e) {
|
|
124
|
-
return
|
|
139
|
+
return c.error("Error fetching public tokens:", e), { erc20Tokens: [] };
|
|
125
140
|
}
|
|
126
141
|
}
|
|
127
142
|
}();
|
|
128
143
|
//#endregion
|
|
129
|
-
export {
|
|
144
|
+
export { g as eventsPublicTokensDB };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../types/cache.types.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../API/API.cjs`),r=require(`../../error-handling/logger.cjs`),i=require(`../../functions/utils/string.utils.cjs`),a=require(`./token-visibility-db.cjs`);let o=require(`idb-keyval`);var s=class{fetchedTokens={};initalFetched=!1;async updateFetchedTokens(){
|
|
1
|
+
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../types/cache.types.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../API/API.cjs`),r=require(`../../error-handling/logger.cjs`),i=require(`../../functions/utils/string.utils.cjs`),a=require(`./token-visibility-db.cjs`);let o=require(`idb-keyval`);var s=class{fetchedTokens={};initalFetched=!1;async updateFetchedTokens(){let t=await(0,o.get)(e.StorageKeys.PRIVATE_TOKENS);this.fetchedTokens=t??{},this.initalFetched=!0}async getPrivateTokens(t,n){let r=i.getStateKey(n,t);return(await(0,o.get)(e.StorageKeys.PRIVATE_TOKENS))?.[r]||[]}async fetchPrivateTokens(e,i,a){try{let r=[...new Set(i)].filter(e=>e&&!t.lowerCaseIncludes(a,e));if(!r.length)return[];let o=(await n.API.tokensInfoCall(e,r)).filter(e=>!!e),s=new Map;return o.forEach(e=>{s.set(e.erc20TokenAddress.toLowerCase(),e)}),Array.from(s.values())}catch(e){return r.Logger.error(`Error fetching private tokens:`,e),[]}}async fetchAndUpdatePrivateTokens(n,r,s,c){let l=(await this.getPrivateTokens(r,s)).map(e=>e.erc20TokenAddress),u=c??await this.fetchPrivateTokens(r,n,l),d=await a.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(r,u),f=i.getStateKey(s,r);await(0,o.update)(e.StorageKeys.PRIVATE_TOKENS,(e={})=>{let n=e?.[f]||[],r=n.map(e=>e.erc20TokenAddress),i=u.filter(e=>!t.lowerCaseIncludes(r,e.erc20TokenAddress));n.push(...i);let a=n.filter(e=>!t.lowerCaseIncludes(d,e.erc20TokenAddress)),o={...e,[f]:a};return this.fetchedTokens=o,o})}getFetchedTokens(e,t){let n=i.getStateKey(t,e);return this.fetchedTokens[n]||[]}},c=new s;exports.PrivateTokensDB=s,exports.privateTokensDB=c;
|
|
@@ -10,7 +10,8 @@ var c = class {
|
|
|
10
10
|
fetchedTokens = {};
|
|
11
11
|
initalFetched = !1;
|
|
12
12
|
async updateFetchedTokens() {
|
|
13
|
-
|
|
13
|
+
let t = await o(e.PRIVATE_TOKENS);
|
|
14
|
+
this.fetchedTokens = t ?? {}, this.initalFetched = !0;
|
|
14
15
|
}
|
|
15
16
|
async getPrivateTokens(t, n) {
|
|
16
17
|
let r = i(n, t);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../functions/utils/tron.utils.cjs`),n=require(`../../functions/web3/crypto.cjs`);let r=require(`ethers`),i=require(`@solana/web3.js`),a=require(`bs58`);a=e.__toESM(a);let o=require(`bip39`);var s=class{mainWallet=null;tronMainWallet=null;mnemonicPhrase=null;ethDerivationBasePath=`m/44'/60'/0'`;tronDerivationBasePath=`m/44'/195'/0'`;generateMnemonic(e=12){let t=e===24?32:16;return r.Mnemonic.fromEntropy(r.ethers.randomBytes(t)).phrase.split(` `)}isValidMnemonic(e){return r.Mnemonic.isValidMnemonic(e)}isValidWord(e){return r.ethers.wordlists.en.getWordIndex(e.toLowerCase())!==-1}createEvmWallet(e){if(!this.mainWallet)throw Error(`Main wallet not initialized. Call createMainWallet first.`);let t=new r.Wallet(this.mainWallet.derivePath(`0/${e}`).privateKey);return{address:t.address,privateKey:t.privateKey}}createTronWallet(e){if(!this.tronMainWallet)throw Error(`Main wallet not initialized. Call createMainWallet first.`);let n=new r.Wallet(this.tronMainWallet.derivePath(`0/${e}`).privateKey);return{address:t.evmHexToTronBase58Address(n.address),privateKey:n.privateKey}}async createSolanaAccount(e=0){if(!this.mnemonicPhrase)throw Error(`Main wallet not initialized. Call createMainWallet first.`);let t=(0,o.mnemonicToSeedSync)(this.mnemonicPhrase,``),n=`m/44'/501'/${e}'/0'`,r=await this.deriveEd25519Path(n,new Uint8Array(t)),s=i.Keypair.fromSeed(r);return{publicKey:s.publicKey.toBase58(),secretKey:a.default.encode(s.secretKey)}}async createChildWallet(e){let t=this.createEvmWallet(e),n=this.createTronWallet(e),r=await this.createSolanaAccount(e);return{ethereum:{address:t.address,privateKey:t.privateKey},tron:{address:n.address,privateKey:n.privateKey},solana:{publicKey:r.publicKey,secretKey:r.secretKey}}}async deriveEd25519Path(e,t){let r=e.split(`/`).slice(1).map(e=>{let t=e.endsWith(`'`),n=parseInt(e.replace(`'`,``),10);return t?n+2147483648:n}),i=await n.hmacSha512(`ed25519 seed`,t),a=i.slice(0,32),o=i.slice(32);for(let e of r){let t=new Uint8Array(37);t[0]=0,t.set(a,1),new DataView(t.buffer).setUint32(33,e,!1);let r=await n.hmacSha512(o,t);a=r.slice(0,32),o=r.slice(32)}return a}async createMainWallet(e){if(!this.isValidMnemonic(e))throw Error(`Invalid mnemonic phrase`);this.mnemonicPhrase=e,this.mainWallet=r.HDNodeWallet.fromPhrase(e,``,this.ethDerivationBasePath),this.tronMainWallet=r.HDNodeWallet.fromPhrase(e,``,this.tronDerivationBasePath);let{ethereum:t,tron:n,solana:i}=await this.createChildWallet(0);return{ethereum:{address:t.address,privateKey:t.privateKey},tron:{address:n.address,privateKey:n.privateKey},solana:{publicKey:i.publicKey,secretKey:i.secretKey}}}};exports.WalletManager=s;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
export declare class WalletManager {
|
|
2
|
+
private mainWallet;
|
|
3
|
+
private tronMainWallet;
|
|
4
|
+
private mnemonicPhrase;
|
|
5
|
+
private readonly ethDerivationBasePath;
|
|
6
|
+
private readonly tronDerivationBasePath;
|
|
7
|
+
generateMnemonic(wordCount?: 12 | 24): string[];
|
|
8
|
+
isValidMnemonic(mnemonic: string): boolean;
|
|
9
|
+
isValidWord(word: string): boolean;
|
|
10
|
+
createEvmWallet(index: number): {
|
|
11
|
+
address: string;
|
|
12
|
+
privateKey: string;
|
|
13
|
+
};
|
|
14
|
+
createTronWallet(index: number): {
|
|
15
|
+
address: string;
|
|
16
|
+
privateKey: string;
|
|
17
|
+
};
|
|
18
|
+
createSolanaAccount(accountIndex?: number): Promise<{
|
|
19
|
+
publicKey: string;
|
|
20
|
+
secretKey: string;
|
|
21
|
+
}>;
|
|
22
|
+
createChildWallet(index: number): Promise<{
|
|
23
|
+
ethereum: {
|
|
24
|
+
address: string;
|
|
25
|
+
privateKey: string;
|
|
26
|
+
};
|
|
27
|
+
tron: {
|
|
28
|
+
address: string;
|
|
29
|
+
privateKey: string;
|
|
30
|
+
};
|
|
31
|
+
solana: {
|
|
32
|
+
publicKey: string;
|
|
33
|
+
secretKey: string;
|
|
34
|
+
};
|
|
35
|
+
}>;
|
|
36
|
+
private deriveEd25519Path;
|
|
37
|
+
createMainWallet(mnemonic: string): Promise<{
|
|
38
|
+
ethereum: {
|
|
39
|
+
address: string;
|
|
40
|
+
privateKey: string;
|
|
41
|
+
};
|
|
42
|
+
tron: {
|
|
43
|
+
address: string;
|
|
44
|
+
privateKey: string;
|
|
45
|
+
};
|
|
46
|
+
solana: {
|
|
47
|
+
publicKey: string;
|
|
48
|
+
secretKey: string;
|
|
49
|
+
};
|
|
50
|
+
}>;
|
|
51
|
+
}
|